diff options
author | Star Rauchenberger <fefferburbia@gmail.com> | 2025-10-05 13:10:17 -0400 |
---|---|---|
committer | Star Rauchenberger <fefferburbia@gmail.com> | 2025-10-05 13:10:17 -0400 |
commit | a75545582b2bce63b6b1ee8d8799047ec05231dd (patch) | |
tree | 1ec78e5dc04bc614bf98284b40866bd3cf3f6da2 /apworld | |
parent | 797cf68fc2163c3996c44fdfc5fc9f6b6c6b6dd3 (diff) | |
download | lingo2-archipelago-a75545582b2bce63b6b1ee8d8799047ec05231dd.tar.gz lingo2-archipelago-a75545582b2bce63b6b1ee8d8799047ec05231dd.tar.bz2 lingo2-archipelago-a75545582b2bce63b6b1ee8d8799047ec05231dd.zip |
Update A Job Well Done sign
Diffstat (limited to 'apworld')
-rw-r--r-- | apworld/client/manager.gd | 29 | ||||
-rw-r--r-- | apworld/client/player.gd | 2 |
2 files changed, 31 insertions, 0 deletions
diff --git a/apworld/client/manager.gd b/apworld/client/manager.gd index b13c1bd..4f5018f 100644 --- a/apworld/client/manager.gd +++ b/apworld/client/manager.gd | |||
@@ -237,6 +237,9 @@ func _process_item(item, amount): | |||
237 | if player != null: | 237 | if player != null: |
238 | player.evaluate_solvability.emit() | 238 | player.evaluate_solvability.emit() |
239 | 239 | ||
240 | if item_id == gamedata.objects.get_special_ids()["A Job Well Done"]: | ||
241 | update_job_well_done_sign() | ||
242 | |||
240 | # Show a message about the item if it's new. | 243 | # Show a message about the item if it's new. |
241 | if int(item["index"]) > _last_new_item: | 244 | if int(item["index"]) > _last_new_item: |
242 | _last_new_item = int(item["index"]) | 245 | _last_new_item = int(item["index"]) |
@@ -604,3 +607,29 @@ func _process_key_item(key, level): | |||
604 | level += 1 | 607 | level += 1 |
605 | 608 | ||
606 | keyboard.collect_remote_letter(key, level) | 609 | keyboard.collect_remote_letter(key, level) |
610 | |||
611 | |||
612 | func update_job_well_done_sign(): | ||
613 | if global.map != "daedalus": | ||
614 | return | ||
615 | |||
616 | var gamedata = global.get_node("Gamedata") | ||
617 | var job_item = gamedata.objects.get_special_ids()["A Job Well Done"] | ||
618 | var jobs_done = client.getItemAmount(job_item) | ||
619 | |||
620 | var sign2 = get_tree().get_root().get_node_or_null("scene/Meshes/Miscellaneous/sign2") | ||
621 | var sign3 = get_tree().get_root().get_node_or_null("scene/Meshes/Miscellaneous/sign3") | ||
622 | |||
623 | if sign2 != null and sign3 != null: | ||
624 | if jobs_done == 0: | ||
625 | sign2.text = "what are you doing" | ||
626 | sign3.text = "?" | ||
627 | elif jobs_done == 1: | ||
628 | sign2.text = "a job well done" | ||
629 | sign3.text = "is its own reward" | ||
630 | else: | ||
631 | sign2.text = "%d jobs well done" % jobs_done | ||
632 | sign3.text = "are their own reward" | ||
633 | |||
634 | sign2.get_node("MeshInstance3D").mesh.text = sign2.text | ||
635 | sign3.get_node("MeshInstance3D").mesh.text = sign3.text | ||
diff --git a/apworld/client/player.gd b/apworld/client/player.gd index f387929..b73f61e 100644 --- a/apworld/client/player.gd +++ b/apworld/client/player.gd | |||
@@ -313,6 +313,8 @@ func _ready(): | |||
313 | entry1.get_parent().add_child.call_deferred(entry12) | 313 | entry1.get_parent().add_child.call_deferred(entry12) |
314 | entry1.queue_free() | 314 | entry1.queue_free() |
315 | 315 | ||
316 | ap.update_job_well_done_sign() | ||
317 | |||
316 | var minimap = ap.SCRIPT_minimap.new() | 318 | var minimap = ap.SCRIPT_minimap.new() |
317 | minimap.name = "Minimap" | 319 | minimap.name = "Minimap" |
318 | minimap.visible = ap.show_minimap | 320 | minimap.visible = ap.show_minimap |