diff options
Diffstat (limited to 'apworld/client')
| -rw-r--r-- | apworld/client/main.gd | 10 | ||||
| -rw-r--r-- | apworld/client/manager.gd | 2 | ||||
| -rw-r--r-- | apworld/client/rteMenu.gd | 12 |
3 files changed, 22 insertions, 2 deletions
| diff --git a/apworld/client/main.gd b/apworld/client/main.gd index c90d6e7..8cac24c 100644 --- a/apworld/client/main.gd +++ b/apworld/client/main.gd | |||
| @@ -48,6 +48,7 @@ func _ready(): | |||
| 48 | installScriptExtension(runtime.load_script("panel.gd")) | 48 | installScriptExtension(runtime.load_script("panel.gd")) |
| 49 | installScriptExtension(runtime.load_script("pauseMenu.gd")) | 49 | installScriptExtension(runtime.load_script("pauseMenu.gd")) |
| 50 | installScriptExtension(runtime.load_script("player.gd")) | 50 | installScriptExtension(runtime.load_script("player.gd")) |
| 51 | installScriptExtension(runtime.load_script("rteMenu.gd")) | ||
| 51 | installScriptExtension(runtime.load_script("saver.gd")) | 52 | installScriptExtension(runtime.load_script("saver.gd")) |
| 52 | installScriptExtension(runtime.load_script("teleport.gd")) | 53 | installScriptExtension(runtime.load_script("teleport.gd")) |
| 53 | installScriptExtension(runtime.load_script("teleportListener.gd")) | 54 | installScriptExtension(runtime.load_script("teleportListener.gd")) |
| @@ -229,7 +230,11 @@ func startGame(): | |||
| 229 | Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED) | 230 | Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED) |
| 230 | global.user = ap.getSaveFileName() | 231 | global.user = ap.getSaveFileName() |
| 231 | global.universe = "lingo" | 232 | global.universe = "lingo" |
| 232 | global.map = "the_entry" | 233 | |
| 234 | if ap.daedalus_only: | ||
| 235 | global.map = "daedalus" | ||
| 236 | else: | ||
| 237 | global.map = "the_entry" | ||
| 233 | 238 | ||
| 234 | unlocks.resetCollectables() | 239 | unlocks.resetCollectables() |
| 235 | unlocks.resetData() | 240 | unlocks.resetData() |
| @@ -263,6 +268,7 @@ func startGame(): | |||
| 263 | clearResourceCache("res://objects/nodes/teleport.tscn") | 268 | clearResourceCache("res://objects/nodes/teleport.tscn") |
| 264 | clearResourceCache("res://objects/nodes/worldport.tscn") | 269 | clearResourceCache("res://objects/nodes/worldport.tscn") |
| 265 | clearResourceCache("res://objects/scenes/menus/pause_menu.tscn") | 270 | clearResourceCache("res://objects/scenes/menus/pause_menu.tscn") |
| 271 | clearResourceCache("res://objects/scenes/menus/rte_inner.tscn") | ||
| 266 | 272 | ||
| 267 | var paintings_dir = DirAccess.open("res://objects/meshes/paintings") | 273 | var paintings_dir = DirAccess.open("res://objects/meshes/paintings") |
| 268 | if paintings_dir: | 274 | if paintings_dir: |
| @@ -273,7 +279,7 @@ func startGame(): | |||
| 273 | clearResourceCache("res://objects/meshes/paintings/" + file_name) | 279 | clearResourceCache("res://objects/meshes/paintings/" + file_name) |
| 274 | file_name = paintings_dir.get_next() | 280 | file_name = paintings_dir.get_next() |
| 275 | 281 | ||
| 276 | switcher.switch_map.call_deferred("res://objects/scenes/the_entry.tscn") | 282 | switcher.switch_map.call_deferred("res://objects/scenes/%s.tscn" % global.map) |
| 277 | 283 | ||
| 278 | 284 | ||
| 279 | func connectionUnsuccessful(error_message): | 285 | func connectionUnsuccessful(error_message): |
| diff --git a/apworld/client/manager.gd b/apworld/client/manager.gd index 8c981f9..381a779 100644 --- a/apworld/client/manager.gd +++ b/apworld/client/manager.gd | |||
| @@ -64,6 +64,7 @@ const kEndingNameByVictoryValue = { | |||
| 64 | 64 | ||
| 65 | var apworld_version = [0, 0, 0] | 65 | var apworld_version = [0, 0, 0] |
| 66 | var cyan_door_behavior = kCYAN_DOOR_BEHAVIOR_H2 | 66 | var cyan_door_behavior = kCYAN_DOOR_BEHAVIOR_H2 |
| 67 | var daedalus_only = false | ||
| 67 | var daedalus_roof_access = false | 68 | var daedalus_roof_access = false |
| 68 | var enable_gift_maps = [] | 69 | var enable_gift_maps = [] |
| 69 | var enable_icarus = false | 70 | var enable_icarus = false |
| @@ -463,6 +464,7 @@ func _client_connected(slot_data): | |||
| 463 | 464 | ||
| 464 | # Read slot data. | 465 | # Read slot data. |
| 465 | cyan_door_behavior = int(slot_data.get("cyan_door_behavior", 0)) | 466 | cyan_door_behavior = int(slot_data.get("cyan_door_behavior", 0)) |
| 467 | daedalus_only = bool(slot_data.get("daedalus_only", false)) | ||
| 466 | daedalus_roof_access = bool(slot_data.get("daedalus_roof_access", false)) | 468 | daedalus_roof_access = bool(slot_data.get("daedalus_roof_access", false)) |
| 467 | enable_gift_maps = slot_data.get("enable_gift_maps", []) | 469 | enable_gift_maps = slot_data.get("enable_gift_maps", []) |
| 468 | enable_icarus = bool(slot_data.get("enable_icarus", false)) | 470 | enable_icarus = bool(slot_data.get("enable_icarus", false)) |
| diff --git a/apworld/client/rteMenu.gd b/apworld/client/rteMenu.gd new file mode 100644 index 0000000..5882d77 --- /dev/null +++ b/apworld/client/rteMenu.gd | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | extends "res://scripts/ui/rteMenu.gd" | ||
| 2 | |||
| 3 | |||
| 4 | func _readier(): | ||
| 5 | var ap = global.get_node("Archipelago") | ||
| 6 | if ap.daedalus_only: | ||
| 7 | get_node("rte_the_entry").hide() | ||
| 8 | get_node("rte_daedalus").show() | ||
| 9 | |||
| 10 | switcher.preload_map("res://objects/scenes/daedalus.tscn") | ||
| 11 | else: | ||
| 12 | super()._readier() | ||
