diff options
| author | Star Rauchenberger <fefferburbia@gmail.com> | 2025-10-24 12:35:24 -0400 |
|---|---|---|
| committer | Star Rauchenberger <fefferburbia@gmail.com> | 2025-10-24 12:35:24 -0400 |
| commit | 10c762e26e430e0ec9509521380abe9bf8955aea (patch) | |
| tree | d44f3552edd93a695b769f747113c8c545341d19 | |
| parent | 488e35d6e2887aafbc506d543364684dfecafd2f (diff) | |
| download | lingo2-archipelago-10c762e26e430e0ec9509521380abe9bf8955aea.tar.gz lingo2-archipelago-10c762e26e430e0ec9509521380abe9bf8955aea.tar.bz2 lingo2-archipelago-10c762e26e430e0ec9509521380abe9bf8955aea.zip | |
The Stellar is playable now
| -rw-r--r-- | apworld/client/player.gd | 54 | ||||
| -rw-r--r-- | apworld/player_logic.py | 2 |
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 | ||
