From 5add48e21643321859783e069c9266b78245ab31 Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Wed, 5 Mar 2025 16:47:23 -0500 Subject: Sync solved panels with datastorage --- Archipelago/load.gd | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'Archipelago/load.gd') diff --git a/Archipelago/load.gd b/Archipelago/load.gd index ba350f6..8510008 100644 --- a/Archipelago/load.gd +++ b/Archipelago/load.gd @@ -569,6 +569,7 @@ func _load(): # Attach a script to every panel so that we can do things like conditionally # disable them. var panel_script = apclient.SCRIPT_panel + var panel_index = 0 for panel in gamedata.panels: var panel_node if panel["id"].begins_with("EndPanel"): @@ -578,11 +579,15 @@ func _load(): var script_instance = panel_script.new() script_instance.name = "AP_Panel" script_instance.data = panel + script_instance.solve_index = panel_index if apclient._panel_door_shuffle and gamedata.mentioned_panels.has(panel["id"]): script_instance.locked = true panel_node.add_child(script_instance) apclient.connect("evaluate_solvability", script_instance, "evaluate_solvability") + apclient._panelsBySolveIndex[panel_index] = panel["id"] + panel_index += 1 + # Hook up the goal panel. if apclient._victory_condition == apclient.kTHE_MASTER: var the_master = self.get_node("Panels/Countdown Panels/Panel_master_master") -- cgit 1.4.1