diff options
Diffstat (limited to 'Archipelago/load.gd')
-rw-r--r-- | Archipelago/load.gd | 5 |
1 files changed, 5 insertions, 0 deletions
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(): | |||
569 | # Attach a script to every panel so that we can do things like conditionally | 569 | # Attach a script to every panel so that we can do things like conditionally |
570 | # disable them. | 570 | # disable them. |
571 | var panel_script = apclient.SCRIPT_panel | 571 | var panel_script = apclient.SCRIPT_panel |
572 | var panel_index = 0 | ||
572 | for panel in gamedata.panels: | 573 | for panel in gamedata.panels: |
573 | var panel_node | 574 | var panel_node |
574 | if panel["id"].begins_with("EndPanel"): | 575 | if panel["id"].begins_with("EndPanel"): |
@@ -578,11 +579,15 @@ func _load(): | |||
578 | var script_instance = panel_script.new() | 579 | var script_instance = panel_script.new() |
579 | script_instance.name = "AP_Panel" | 580 | script_instance.name = "AP_Panel" |
580 | script_instance.data = panel | 581 | script_instance.data = panel |
582 | script_instance.solve_index = panel_index | ||
581 | if apclient._panel_door_shuffle and gamedata.mentioned_panels.has(panel["id"]): | 583 | if apclient._panel_door_shuffle and gamedata.mentioned_panels.has(panel["id"]): |
582 | script_instance.locked = true | 584 | script_instance.locked = true |
583 | panel_node.add_child(script_instance) | 585 | panel_node.add_child(script_instance) |
584 | apclient.connect("evaluate_solvability", script_instance, "evaluate_solvability") | 586 | apclient.connect("evaluate_solvability", script_instance, "evaluate_solvability") |
585 | 587 | ||
588 | apclient._panelsBySolveIndex[panel_index] = panel["id"] | ||
589 | panel_index += 1 | ||
590 | |||
586 | # Hook up the goal panel. | 591 | # Hook up the goal panel. |
587 | if apclient._victory_condition == apclient.kTHE_MASTER: | 592 | if apclient._victory_condition == apclient.kTHE_MASTER: |
588 | var the_master = self.get_node("Panels/Countdown Panels/Panel_master_master") | 593 | var the_master = self.get_node("Panels/Countdown Panels/Panel_master_master") |