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)