implement waves
This commit is contained in:
@@ -52,6 +52,17 @@ struct ConstructionSite
|
||||
Tick completesAt = 0; // 0 = queued but not yet started
|
||||
};
|
||||
|
||||
// Weapon state for stationary structures (defence stations).
|
||||
// Distinct from Ship::Weapon; stations have no movement intent.
|
||||
struct StationWeapon
|
||||
{
|
||||
float damage;
|
||||
float range;
|
||||
float fireRateHz;
|
||||
float cooldownTicks;
|
||||
std::optional<EntityId> currentTarget;
|
||||
};
|
||||
|
||||
// A fully constructed, operational building.
|
||||
struct Building
|
||||
{
|
||||
@@ -73,4 +84,7 @@ struct Building
|
||||
std::vector<Port> outputPorts;
|
||||
std::vector<Port> inputPorts; // perimeter tiles (minus output-port tiles),
|
||||
// direction pointing INTO building
|
||||
|
||||
// Set only for defence stations; nullopt for all other building types.
|
||||
std::optional<StationWeapon> weapon;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user