26 lines
460 B
Odin
26 lines
460 B
Odin
package main
|
|
|
|
import ecs "shoal/src"
|
|
import rl "vendor:raylib"
|
|
|
|
GridActorComponent :: struct {
|
|
position: rl.Vector2,
|
|
size: int,
|
|
speed: f32,
|
|
can_move: bool,
|
|
}
|
|
GridActor: ecs.Storage(GridActorComponent)
|
|
|
|
WeaponComponent :: struct {
|
|
dmg: i32,
|
|
rpm: f32,
|
|
cooldown: bool,
|
|
}
|
|
Weapon: ecs.Storage(WeaponComponent)
|
|
|
|
EnemyComponent :: struct {}
|
|
Enemy: ecs.Storage(EnemyComponent)
|
|
|
|
PlayerComponent :: struct {}
|
|
Player: ecs.Storage(PlayerComponent)
|