about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--apworld/client/player.gd54
-rw-r--r--apworld/player_logic.py2
2 files changed, 56 insertions, 0 deletions
diff --git a/apworld/client/player.gd b/apworld/client/player.gd index 8aee21a..789d1b7 100644 --- a/apworld/client/player.gd +++ b/apworld/client/player.gd
@@ -141,6 +141,37 @@ func _ready():
141 q_wpl.senders.append(NodePath("../QPanel")) 141 q_wpl.senders.append(NodePath("../QPanel"))
142 giftmap_parent.add_child.call_deferred(q_wpl) 142 giftmap_parent.add_child.call_deferred(q_wpl)
143 143
144 if ap.enable_gift_maps.has("The Stellar"):
145 var hatkirby_panel = panel_prefab.instantiate()
146 hatkirby_panel.name = "HatkirbyPanel"
147 hatkirby_panel.answer = "hatkirby"
148 hatkirby_panel.position = Vector3(33.5, -230, 5.5)
149 giftmap_panel.proxies.append(NodePath("../HatkirbyPanel"))
150 giftmap_parent.add_child.call_deferred(hatkirby_panel)
151
152 var kirby_panel = panel_prefab.instantiate()
153 kirby_panel.name = "KirbyPanel"
154 kirby_panel.answer = "kirby"
155 kirby_panel.position = Vector3(33.5, -240, 5.5)
156 giftmap_panel.proxies.append(NodePath("../KirbyPanel"))
157 giftmap_parent.add_child.call_deferred(kirby_panel)
158
159 var star_panel = panel_prefab.instantiate()
160 star_panel.name = "StarPanel"
161 star_panel.answer = "star"
162 star_panel.position = Vector3(33.5, -250, 5.5)
163 giftmap_panel.proxies.append(NodePath("../StarPanel"))
164 giftmap_parent.add_child.call_deferred(star_panel)
165
166 var stellar_wpl = wpl_prefab.instantiate()
167 stellar_wpl.name = "StellarWpl"
168 stellar_wpl.exit = "the_stellar"
169 stellar_wpl.senders.append(NodePath("../HatkirbyPanel"))
170 stellar_wpl.senders.append(NodePath("../KirbyPanel"))
171 stellar_wpl.senders.append(NodePath("../StarPanel"))
172 stellar_wpl.complete_at = 1
173 giftmap_parent.add_child.call_deferred(stellar_wpl)
174
144 giftmap_parent.add_child.call_deferred(giftmap_panel) 175 giftmap_parent.add_child.call_deferred(giftmap_panel)
145 176
146 var giftmap_tpl = tpl_prefab.instantiate() 177 var giftmap_tpl = tpl_prefab.instantiate()
@@ -364,6 +395,29 @@ func _ready():
364 saver.senderGroup.append(NodePath("/root/scene/Components/Collectables")) 395 saver.senderGroup.append(NodePath("/root/scene/Components/Collectables"))
365 get_node("/root/scene").add_child.call_deferred(saver) 396 get_node("/root/scene").add_child.call_deferred(saver)
366 397
398 # Add the mastery to The Stellar.
399 if global.map == "the_stellar":
400 var collectable_prefab = preload("res://objects/nodes/collectable.tscn")
401 var saver_prefab = preload("res://objects/nodes/saver.tscn")
402
403 var collectables = Node.new()
404 collectables.name = "Collectables"
405
406 var mastery = collectable_prefab.instantiate()
407 mastery.name = "collectable"
408 mastery.position = Vector3(2, 2, -31)
409 mastery.rotation_degrees = Vector3(0, 90, 0)
410 mastery.unlock_type = "smiley"
411 mastery.material_override = load("res://assets/materials/gold.material")
412 collectables.add_child.call_deferred(mastery)
413 get_node("/root/scene/Components").add_child.call_deferred(collectables)
414
415 var saver = saver_prefab.instantiate()
416 saver.name = "saver_collectables"
417 saver.type = "collectables"
418 saver.senderGroup.append(NodePath("/root/scene/Components/Collectables"))
419 get_node("/root/scene").add_child.call_deferred(saver)
420
367 ap.update_job_well_done_sign() 421 ap.update_job_well_done_sign()
368 422
369 # Set up door locations. 423 # Set up door locations.
diff --git a/apworld/player_logic.py b/apworld/player_logic.py index 5f4f1d7..67365b7 100644 --- a/apworld/player_logic.py +++ b/apworld/player_logic.py
@@ -241,6 +241,8 @@ class Lingo2PlayerLogic:
241 return "The Charismatic" in world.options.enable_gift_maps.value 241 return "The Charismatic" in world.options.enable_gift_maps.value
242 elif game_map.name == "the_crystalline": 242 elif game_map.name == "the_crystalline":
243 return "The Crystalline" in world.options.enable_gift_maps.value 243 return "The Crystalline" in world.options.enable_gift_maps.value
244 elif game_map.name == "the_stellar":
245 return "The Stellar" in world.options.enable_gift_maps.value
244 246
245 return False 247 return False
246 248