From 2c6777b5004dcf27b603ec2b3a9545642ed908bd Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Tue, 9 Sep 2025 16:47:05 -0400 Subject: [Client] Handle symbol shuffle --- client/Archipelago/manager.gd | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'client/Archipelago/manager.gd') diff --git a/client/Archipelago/manager.gd b/client/Archipelago/manager.gd index cd0654f..336f154 100644 --- a/client/Archipelago/manager.gd +++ b/client/Archipelago/manager.gd @@ -47,6 +47,7 @@ var keyholder_sanity = false var shuffle_control_center_colors = false var shuffle_doors = false var shuffle_letters = kSHUFFLE_LETTERS_VANILLA +var shuffle_symbols = false var victory_condition = -1 signal could_not_connect @@ -183,6 +184,11 @@ func _process_item(item, index, from, flags, amount): if not letter.has_level2() or not letter.get_level2(): _process_key_item(letter.get_key(), amount) + if gamedata.symbol_item_ids.has(item): + var player = get_tree().get_root().get_node_or_null("scene/player") + if player != null: + player.emit_signal("evaluate_solvability") + # Show a message about the item if it's new. if index != null and index > _last_new_item: _last_new_item = index @@ -356,6 +362,7 @@ func _client_connected(slot_data): shuffle_control_center_colors = bool(slot_data.get("shuffle_control_center_colors", false)) shuffle_doors = bool(slot_data.get("shuffle_doors", false)) shuffle_letters = int(slot_data.get("shuffle_letters", 0)) + shuffle_symbols = bool(slot_data.get("shuffle_symbols", false)) victory_condition = int(slot_data.get("victory_condition", 0)) # Set up item locks. -- cgit 1.4.1