From adfc639965b2bda776ceb0a20840438e31f82d58 Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Sun, 2 Nov 2025 12:29:29 -0500 Subject: Allow ignoring locations in tracker --- apworld/client/manager.gd | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'apworld/client/manager.gd') diff --git a/apworld/client/manager.gd b/apworld/client/manager.gd index 727d17a..b7bb5fd 100644 --- a/apworld/client/manager.gd +++ b/apworld/client/manager.gd @@ -29,6 +29,7 @@ var _inverse_item_locks = {} var _held_letters = {} var _letters_setup = false var _already_connected = false +var _ignored_locations = [] const kSHUFFLE_LETTERS_VANILLA = 0 const kSHUFFLE_LETTERS_UNLOCKED = 1 @@ -144,6 +145,7 @@ func _ready(): client.hint_received.connect(_process_hint_received) client.accessible_locations_updated.connect(_on_accessible_locations_updated) client.checked_locations_updated.connect(_on_checked_locations_updated) + client.ignored_locations_updated.connect(_on_ignored_locations_updated) client.checked_worldports_updated.connect(_on_checked_worldports_updated) client.door_latched.connect(_on_door_latched) @@ -384,6 +386,14 @@ func _on_checked_worldports_updated(): textclient_node.update_worldports() +func _on_ignored_locations_updated(locations): + _ignored_locations = locations + + var textclient_node = global.get_node("Textclient") + if textclient_node != null: + textclient_node.update_locations() + + func _on_door_latched(door_id): var gamedata = global.get_node("Gamedata") if gamedata.get_door_map_name(door_id) != global.map: @@ -677,3 +687,10 @@ func update_job_well_done_sign(): sign2.get_node("MeshInstance3D").mesh.text = sign2.text sign3.get_node("MeshInstance3D").mesh.text = sign3.text + + +func toggle_ignored_location(loc_id): + if loc_id in _ignored_locations: + client.removeIgnoredLocation(loc_id) + else: + client.addIgnoredLocation(loc_id) -- cgit 1.4.1