Satisfactory: Fixed buildings missing from goal check (#5772)

This commit is contained in:
Jarno
2026-03-30 00:46:01 +02:00
committed by GitHub
parent 88dc135960
commit 2b46df90b4

View File

@@ -88,16 +88,19 @@ class SatisfactoryWorld(World):
self.items.build_item_pool(self.random, precollected_items, number_of_locations)
def set_rules(self) -> None:
resource_sink_goal: bool = "AWESOME Sink Points (total)" in self.options.goal_selection \
or "AWESOME Sink Points (per minute)" in self.options.goal_selection
required_parts = set(self.game_logic.space_elevator_phases[self.options.final_elevator_phase.value - 1].keys())
required_buildings = set()
if resource_sink_goal:
required_parts.union(self.game_logic.buildings["AWESOME Sink"].inputs)
if "Space Elevator Phase" in self.options.goal_selection:
required_buildings.add("Space Elevator")
if "AWESOME Sink Points (total)" in self.options.goal_selection \
or "AWESOME Sink Points (per minute)" in self.options.goal_selection:
required_buildings.add("AWESOME Sink")
self.multiworld.completion_condition[self.player] = \
lambda state: self.state_logic.can_produce_all(state, required_parts)
lambda state: self.state_logic.can_produce_all(state, required_parts) \
and self.state_logic.can_build_all(state, required_buildings)
def collect(self, state: CollectionState, item: Item) -> bool:
change = super().collect(state, item)