implement ship modules
This commit is contained in:
@@ -14,6 +14,7 @@
|
||||
#include "ItemType.h"
|
||||
#include "Port.h"
|
||||
#include "Rotation.h"
|
||||
#include "ShipLayout.h"
|
||||
#include "Tick.h"
|
||||
|
||||
// Per-material input buffer for a production building.
|
||||
@@ -50,6 +51,7 @@ struct ConstructionSite
|
||||
BuildingType type = BuildingType::Miner;
|
||||
std::string recipeId; // may be configured before completion
|
||||
Tick completesAt = 0; // 0 = queued but not yet started
|
||||
std::optional<ShipLayoutConfig> shipLayout;
|
||||
};
|
||||
|
||||
// Weapon state for stationary structures (defence stations).
|
||||
@@ -85,6 +87,9 @@ struct Building
|
||||
std::vector<Port> inputPorts; // perimeter tiles (minus output-port tiles),
|
||||
// direction pointing INTO building
|
||||
|
||||
// Module layout for shipyards (REQ-MOD-LAYOUT).
|
||||
std::optional<ShipLayoutConfig> shipLayout;
|
||||
|
||||
// Set only for defence stations; nullopt for all other building types.
|
||||
std::optional<StationWeapon> weapon;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user