From 7544b11c86fd597321a507747fbd0fe1491ccbd8 Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Wed, 22 Oct 2025 21:58:43 -0400 Subject: Implemented latched doors in the client --- apworld/client/manager.gd | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'apworld/client/manager.gd') diff --git a/apworld/client/manager.gd b/apworld/client/manager.gd index dac09b2..a17bee8 100644 --- a/apworld/client/manager.gd +++ b/apworld/client/manager.gd @@ -141,6 +141,7 @@ func _ready(): client.accessible_locations_updated.connect(_on_accessible_locations_updated) client.checked_locations_updated.connect(_on_checked_locations_updated) client.checked_worldports_updated.connect(_on_checked_worldports_updated) + client.door_latched.connect(_on_door_latched) client.could_not_connect.connect(_client_could_not_connect) client.connect_status.connect(_client_connect_status) @@ -376,6 +377,20 @@ func _on_checked_worldports_updated(): textclient_node.update_worldports() +func _on_door_latched(door_id): + var gamedata = global.get_node("Gamedata") + if gamedata.get_door_map_name(door_id) != global.map: + return + + var receivers = gamedata.get_door_receivers(door_id) + var scene = get_tree().get_root().get_node_or_null("scene") + if scene != null: + for receiver in receivers: + var rnode = scene.get_node_or_null(receiver) + if rnode != null: + rnode.handleTriggered() + + func _client_could_not_connect(message): could_not_connect.emit(message) -- cgit 1.4.1