about summary refs log tree commit diff stats
path: root/client
diff options
context:
space:
mode:
Diffstat (limited to 'client')
-rw-r--r--client/Archipelago/manager.gd2
-rw-r--r--client/Archipelago/player.gd20
-rw-r--r--client/README.md7
3 files changed, 20 insertions, 9 deletions
diff --git a/client/Archipelago/manager.gd b/client/Archipelago/manager.gd index 6eea2bd..25f68c1 100644 --- a/client/Archipelago/manager.gd +++ b/client/Archipelago/manager.gd
@@ -1,6 +1,6 @@
1extends Node 1extends Node
2 2
3const MOD_VERSION = 0 3const MOD_VERSION = 1
4 4
5var SCRIPT_client 5var SCRIPT_client
6var SCRIPT_keyboard 6var SCRIPT_keyboard
diff --git a/client/Archipelago/player.gd b/client/Archipelago/player.gd index 4b995bc..9de3e07 100644 --- a/client/Archipelago/player.gd +++ b/client/Archipelago/player.gd
@@ -190,11 +190,29 @@ func _ready():
190 warp_enter.rotation_degrees.y = 90 190 warp_enter.rotation_degrees.y = 90
191 get_parent().add_child.call_deferred(warp_enter) 191 get_parent().add_child.call_deferred(warp_enter)
192 192
193 # Remove door behind X1.
194 if global.map == "the_entry": 193 if global.map == "the_entry":
194 # Remove door behind X1.
195 var door_node = get_tree().get_root().get_node("/root/scene/Components/Doors/exit_1") 195 var door_node = get_tree().get_root().get_node("/root/scene/Components/Doors/exit_1")
196 door_node.handleTriggered() 196 door_node.handleTriggered()
197 197
198 # Display win condition.
199 var sign_prefab = preload("res://objects/nodes/sign.tscn")
200 var sign1 = sign_prefab.instantiate()
201 sign1.position = Vector3(-7, 5, -15.01)
202 sign1.text = "victory"
203 get_parent().add_child.call_deferred(sign1)
204
205 var sign2 = sign_prefab.instantiate()
206 sign2.position = Vector3(-7, 4, -15.01)
207 sign2.text = "%s ending" % kEndingNameByVictoryValue.get(ap.victory_condition, "?")
208
209 var sign2_color = kEndingNameByVictoryValue.get(ap.victory_condition, "coral").to_lower()
210 if sign2_color == "white":
211 sign2_color = "silver"
212
213 sign2.material = load("res://assets/materials/%s.material" % sign2_color)
214 get_parent().add_child.call_deferred(sign2)
215
198 super._ready() 216 super._ready()
199 217
200 await get_tree().process_frame 218 await get_tree().process_frame
diff --git a/client/README.md b/client/README.md index 1e94bdb..99589c5 100644 --- a/client/README.md +++ b/client/README.md
@@ -88,10 +88,3 @@ not recommended to load these save files outside of the randomizer.
88 88
89A connection to Archipelago is required to resume playing a multiworld. This is 89A connection to Archipelago is required to resume playing a multiworld. This is
90because the set of items you have received is not stored locally. 90because the set of items you have received is not stored locally.
91
92### What about wall snipes?
93
94"Wall sniping" refers to the fact that you are able to solve puzzles on the
95other side of opaque walls. The player is never expected to or required to do
96this in normal gameplay. This randomizer does not change how wall snipes work,
97but it will likewise never require the use of them.