Provision transporters with hubs

This commit is contained in:
Loïc Wisniewski 2026-08-15 00:09:10 +02:00
commit d0a9f5b971
21 changed files with 309 additions and 588 deletions

View file

@ -86,13 +86,19 @@ func _process(delta: float) -> bool:
game_state.add_building(GameState.BUILDING_TRANSPORT_HUB, Vector2(100, 0))
game_state.add_extractor("Aurelia", Vector2(400, 0), "gas")
game_state.extractors[0].stock = game_state.transporter_load_limit()
game_state.transporters.append({"hub_id": 2, "state": GameState.TRANSPORTER_TO_EXTRACTOR,
"target_id": 0, "extractor_index": 0, "carrying": 0, "resource_type": "gas",
"progress": 1.0, "from": Vector2(100, 0), "to": Vector2(400, 0)})
game_state._arrive(game_state.transporters[0])
var transporter: Dictionary = game_state.transporters[0]
transporter.state = GameState.TRANSPORTER_TO_EXTRACTOR
transporter.target_id = 0
transporter.extractor_index = 0
transporter.carrying = 0
transporter.resource_type = "gas"
transporter.progress = 1.0
transporter.from = Vector2(100, 0)
transporter.to = Vector2(400, 0)
game_state._arrive(transporter)
if game_state.transporters[0].state != GameState.TRANSPORTER_TO_MOTHERSHIP_FROM_EXTRACTOR:
return _fail("transporter did not collect gas from the extractor")
game_state._arrive(game_state.transporters[0])
game_state._arrive(transporter)
if game_state.gas != game_state.transporter_load_limit() or game_state.rocks != 0:
return _fail("gas delivery banked gas=%d ore=%d" % [game_state.gas, game_state.rocks])
var mothership_id: int = int(game_state.buildings[0].id)