diff options
Diffstat (limited to 'Archipelago')
-rw-r--r-- | Archipelago/client.gd | 4 | ||||
-rw-r--r-- | Archipelago/load.gd | 16 |
2 files changed, 15 insertions, 5 deletions
diff --git a/Archipelago/client.gd b/Archipelago/client.gd index 905a0a1..5b4d81e 100644 --- a/Archipelago/client.gd +++ b/Archipelago/client.gd | |||
@@ -35,6 +35,7 @@ var _mentioned_paintings = [] | |||
35 | var _panel_ids_by_location = {} | 35 | var _panel_ids_by_location = {} |
36 | var _localdata_file = "" | 36 | var _localdata_file = "" |
37 | var _death_link = false | 37 | var _death_link = false |
38 | var _victory_condition = 0 # THE END, THE MASTER | ||
38 | 39 | ||
39 | var _map_loaded = false | 40 | var _map_loaded = false |
40 | var _held_items = [] | 41 | var _held_items = [] |
@@ -151,6 +152,9 @@ func _on_data(): | |||
151 | if _death_link: | 152 | if _death_link: |
152 | sendConnectUpdate(["DeathLink"]) | 153 | sendConnectUpdate(["DeathLink"]) |
153 | 154 | ||
155 | if _slot_data.has("victory_condition"): | ||
156 | _victory_condition = _slot_data["victory_condition"] | ||
157 | |||
154 | _localdata_file = "user://archipelago/%s_%d" % [_seed, _slot] | 158 | _localdata_file = "user://archipelago/%s_%d" % [_seed, _slot] |
155 | var ap_file = File.new() | 159 | var ap_file = File.new() |
156 | if ap_file.file_exists(_localdata_file): | 160 | if ap_file.file_exists(_localdata_file): |
diff --git a/Archipelago/load.gd b/Archipelago/load.gd index ca1269b..7b7e648 100644 --- a/Archipelago/load.gd +++ b/Archipelago/load.gd | |||
@@ -38,11 +38,17 @@ func _load(): | |||
38 | "answer_correct", location, "handle_correct" | 38 | "answer_correct", location, "handle_correct" |
39 | ) | 39 | ) |
40 | 40 | ||
41 | # Hardcode THE END as the goal for now. | 41 | # Hook up the goal panel. |
42 | var the_end = self.get_node("Decorations/EndPanel/Panel_end_end") | 42 | if apclient._victory_condition == 1: |
43 | the_end.get_node("Viewport/GUI/Panel/TextEdit").connect( | 43 | var the_master = self.get_node("Panels/Countdown Panels/Panel_master_master") |
44 | "answer_correct", apclient, "completedGoal" | 44 | the_master.get_node("Viewport/GUI/Panel/TextEdit").connect( |
45 | ) | 45 | "answer_correct", apclient, "completedGoal" |
46 | ) | ||
47 | else: | ||
48 | var the_end = self.get_node("Decorations/EndPanel/Panel_end_end") | ||
49 | the_end.get_node("Viewport/GUI/Panel/TextEdit").connect( | ||
50 | "answer_correct", apclient, "completedGoal" | ||
51 | ) | ||
46 | 52 | ||
47 | # Create the messages node. | 53 | # Create the messages node. |
48 | var messages_script = ResourceLoader.load("user://maps/Archipelago/messages.gd") | 54 | var messages_script = ResourceLoader.load("user://maps/Archipelago/messages.gd") |