diff options
| author | Star Rauchenberger <fefferburbia@gmail.com> | 2023-05-05 12:20:16 -0400 |
|---|---|---|
| committer | Star Rauchenberger <fefferburbia@gmail.com> | 2023-05-05 12:20:16 -0400 |
| commit | 46623fb9dc34c4e44859f437f752206e1889dbce (patch) | |
| tree | a5d30978ce3fc0e11edb8bf25e29a64f302a0735 | |
| parent | dfadb2b4a436c073438c7219ba7726ac9c760c2d (diff) | |
| download | lingo-archipelago-46623fb9dc34c4e44859f437f752206e1889dbce.tar.gz lingo-archipelago-46623fb9dc34c4e44859f437f752206e1889dbce.tar.bz2 lingo-archipelago-46623fb9dc34c4e44859f437f752206e1889dbce.zip | |
THE MASTER requirement can now be set by the player
| -rw-r--r-- | Archipelago/client.gd | 3 | ||||
| -rw-r--r-- | Archipelago/load.gd | 13 |
2 files changed, 16 insertions, 0 deletions
| diff --git a/Archipelago/client.gd b/Archipelago/client.gd index fc85f31..a3199ba 100644 --- a/Archipelago/client.gd +++ b/Archipelago/client.gd | |||
| @@ -80,6 +80,7 @@ var _door_shuffle = false | |||
| 80 | var _color_shuffle = false | 80 | var _color_shuffle = false |
| 81 | var _panel_shuffle = 0 # none, rearrange | 81 | var _panel_shuffle = 0 # none, rearrange |
| 82 | var _painting_shuffle = false | 82 | var _painting_shuffle = false |
| 83 | var _mastery_achievements = 21 | ||
| 83 | var _slot_seed = 0 | 84 | var _slot_seed = 0 |
| 84 | 85 | ||
| 85 | var _map_loaded = false | 86 | var _map_loaded = false |
| @@ -252,6 +253,8 @@ func _on_data(): | |||
| 252 | _slot_seed = _slot_data["seed"] | 253 | _slot_seed = _slot_data["seed"] |
| 253 | if _slot_data.has("painting_entrance_to_exit"): | 254 | if _slot_data.has("painting_entrance_to_exit"): |
| 254 | _paintings_mapping = _slot_data["painting_entrance_to_exit"] | 255 | _paintings_mapping = _slot_data["painting_entrance_to_exit"] |
| 256 | if _slot_data.has("mastery_achievements"): | ||
| 257 | _mastery_achievements = _slot_data["mastery_achievements"] | ||
| 255 | 258 | ||
| 256 | _localdata_file = "user://archipelago_data/%s_%d" % [_seed, _slot] | 259 | _localdata_file = "user://archipelago_data/%s_%d" % [_seed, _slot] |
| 257 | var ap_file = File.new() | 260 | var ap_file = File.new() |
| diff --git a/Archipelago/load.gd b/Archipelago/load.gd index 56991fb..c637ccb 100644 --- a/Archipelago/load.gd +++ b/Archipelago/load.gd | |||
| @@ -58,6 +58,19 @@ func _load(): | |||
| 58 | 58 | ||
| 59 | wanderer_achieve.translation = Vector3(-51, -33, 35) # way under the map | 59 | wanderer_achieve.translation = Vector3(-51, -33, 35) # way under the map |
| 60 | 60 | ||
| 61 | # Set up The Master to be variable. | ||
| 62 | var old_master_cdp = get_node("CountdownPanels/CountdownPanel_countdown_16") | ||
| 63 | var cdp_auto_scene = load("res://nodes/panel_countdown_auto.tscn") | ||
| 64 | var new_master_cdp = cdp_auto_scene.instance() | ||
| 65 | new_master_cdp.name = "AP_variable_master" | ||
| 66 | new_master_cdp.replace_with = old_master_cdp.replace_with | ||
| 67 | new_master_cdp.panels = "../../Panels/Countdown Panels" | ||
| 68 | new_master_cdp.maxlength = apclient._mastery_achievements | ||
| 69 | new_master_cdp.translation = old_master_cdp.translation | ||
| 70 | new_master_cdp.rotation = old_master_cdp.rotation | ||
| 71 | get_node("CountdownPanels").add_child(new_master_cdp) | ||
| 72 | old_master_cdp.queue_free() | ||
| 73 | |||
| 61 | # This is the best time to create the location nodes, since the map is now | 74 | # This is the best time to create the location nodes, since the map is now |
| 62 | # loaded but the panels haven't been solved from the save file yet. | 75 | # loaded but the panels haven't been solved from the save file yet. |
| 63 | var panels_parent = self.get_node("Panels") | 76 | var panels_parent = self.get_node("Panels") |
