Resolve pending gameplay tickets

This commit is contained in:
Loïc Wisniewski 2026-09-02 13:43:56 +02:00
commit c2ebbfaa2d
28 changed files with 618 additions and 188 deletions

View file

@ -33,6 +33,7 @@ func _initialize() -> void:
game_state.buildings.clear()
game_state.extractors.clear()
game_state.reset_progression()
game_state.add_building(GameState.BUILDING_MOTHERSHIP, Vector2.ZERO)
main = load("res://world/Main.tscn").instantiate()
root.add_child(main)
current_scene = main
@ -92,9 +93,17 @@ func _process(delta: float) -> bool:
return _fail("the research panel still has an UnlockButton node")
print("the separate buy button is gone from the panel")
main.get_node("UI/SkillMenu").visible = true
tree_view.visible = true
tree_view.reset_scroll()
# Open through the menu's public API so research has the mothership as its
# payment site. Since fleet-held resources became location-aware, merely
# forcing the Control visible no longer represents a reachable game state.
var mothership_id: int = 0
for building in game_state.buildings:
if String(building.type) == GameState.BUILDING_MOTHERSHIP:
mothership_id = int(building.id)
break
if mothership_id == 0:
return _fail("the test has no mothership research site")
main.get_node("UI/SkillMenu").open_for(mothership_id)
game_state.unlocked.clear()
game_state.research_points = 99
game_state.bank_inventory.set_amount(GameState.RESOURCE_ORE, 500)