about summary refs log tree commit diff stats
path: root/client/Archipelago/manager.gd
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2025-09-09 16:47:05 -0400
committerStar Rauchenberger <fefferburbia@gmail.com>2025-09-09 16:47:05 -0400
commit2c6777b5004dcf27b603ec2b3a9545642ed908bd (patch)
treecaa884dd347a3f07e7a480cb1e1641d881134da3 /client/Archipelago/manager.gd
parent8de745f4d3350ac848c9362a33e223c0ff94fdcf (diff)
downloadlingo2-archipelago-2c6777b5004dcf27b603ec2b3a9545642ed908bd.tar.gz
lingo2-archipelago-2c6777b5004dcf27b603ec2b3a9545642ed908bd.tar.bz2
lingo2-archipelago-2c6777b5004dcf27b603ec2b3a9545642ed908bd.zip
[Client] Handle symbol shuffle
Diffstat (limited to 'client/Archipelago/manager.gd')
-rw-r--r--client/Archipelago/manager.gd7
1 files changed, 7 insertions, 0 deletions
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
47var shuffle_control_center_colors = false 47var shuffle_control_center_colors = false
48var shuffle_doors = false 48var shuffle_doors = false
49var shuffle_letters = kSHUFFLE_LETTERS_VANILLA 49var shuffle_letters = kSHUFFLE_LETTERS_VANILLA
50var shuffle_symbols = false
50var victory_condition = -1 51var victory_condition = -1
51 52
52signal could_not_connect 53signal could_not_connect
@@ -183,6 +184,11 @@ func _process_item(item, index, from, flags, amount):
183 if not letter.has_level2() or not letter.get_level2(): 184 if not letter.has_level2() or not letter.get_level2():
184 _process_key_item(letter.get_key(), amount) 185 _process_key_item(letter.get_key(), amount)
185 186
187 if gamedata.symbol_item_ids.has(item):
188 var player = get_tree().get_root().get_node_or_null("scene/player")
189 if player != null:
190 player.emit_signal("evaluate_solvability")
191
186 # Show a message about the item if it's new. 192 # Show a message about the item if it's new.
187 if index != null and index > _last_new_item: 193 if index != null and index > _last_new_item:
188 _last_new_item = index 194 _last_new_item = index
@@ -356,6 +362,7 @@ func _client_connected(slot_data):
356 shuffle_control_center_colors = bool(slot_data.get("shuffle_control_center_colors", false)) 362 shuffle_control_center_colors = bool(slot_data.get("shuffle_control_center_colors", false))
357 shuffle_doors = bool(slot_data.get("shuffle_doors", false)) 363 shuffle_doors = bool(slot_data.get("shuffle_doors", false))
358 shuffle_letters = int(slot_data.get("shuffle_letters", 0)) 364 shuffle_letters = int(slot_data.get("shuffle_letters", 0))
365 shuffle_symbols = bool(slot_data.get("shuffle_symbols", false))
359 victory_condition = int(slot_data.get("victory_condition", 0)) 366 victory_condition = int(slot_data.get("victory_condition", 0))
360 367
361 # Set up item locks. 368 # Set up item locks.