about summary refs log tree commit diff stats
path: root/apworld
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2025-10-05 13:10:17 -0400
committerStar Rauchenberger <fefferburbia@gmail.com>2025-10-05 13:10:17 -0400
commita75545582b2bce63b6b1ee8d8799047ec05231dd (patch)
tree1ec78e5dc04bc614bf98284b40866bd3cf3f6da2 /apworld
parent797cf68fc2163c3996c44fdfc5fc9f6b6c6b6dd3 (diff)
downloadlingo2-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.gd29
-rw-r--r--apworld/client/player.gd2
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
612func 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