about summary refs log tree commit diff stats
path: root/apworld/client/manager.gd
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2026-02-08 09:28:23 -0500
committerStar Rauchenberger <fefferburbia@gmail.com>2026-02-08 09:28:23 -0500
commitb7900ade0309d3b8c13b830746ca1435141ffe26 (patch)
tree2edb8d9f5bb146749a52959ce45e2bf7717cdade /apworld/client/manager.gd
parentd591399e6a134d98d8e2095aa740dadd33e17b29 (diff)
downloadlingo2-archipelago-b7900ade0309d3b8c13b830746ca1435141ffe26.tar.gz
lingo2-archipelago-b7900ade0309d3b8c13b830746ca1435141ffe26.tar.bz2
lingo2-archipelago-b7900ade0309d3b8c13b830746ca1435141ffe26.zip
Added music shuffle
Diffstat (limited to 'apworld/client/manager.gd')
-rw-r--r--apworld/client/manager.gd11
1 files changed, 11 insertions, 0 deletions
diff --git a/apworld/client/manager.gd b/apworld/client/manager.gd index 00f03ea..e259708 100644 --- a/apworld/client/manager.gd +++ b/apworld/client/manager.gd
@@ -76,6 +76,7 @@ var endings_requirement = 0
76var fast_travel_access = 0 76var fast_travel_access = 0
77var keyholder_sanity = false 77var keyholder_sanity = false
78var masteries_requirement = 0 78var masteries_requirement = 0
79var music_mapping = {}
79var port_pairings = {} 80var port_pairings = {}
80var rte_mapping = [] 81var rte_mapping = []
81var shuffle_control_center_colors = false 82var shuffle_control_center_colors = false
@@ -84,6 +85,7 @@ var shuffle_gallery_paintings = false
84var shuffle_letters = kSHUFFLE_LETTERS_VANILLA 85var shuffle_letters = kSHUFFLE_LETTERS_VANILLA
85var shuffle_symbols = false 86var shuffle_symbols = false
86var shuffle_worldports = false 87var shuffle_worldports = false
88var slot_rng = null
87var strict_cyan_ending = false 89var strict_cyan_ending = false
88var strict_purple_ending = false 90var strict_purple_ending = false
89var victory_condition = -1 91var victory_condition = -1
@@ -514,6 +516,15 @@ func _client_connected(slot_data):
514 if slot_data.has("rte"): 516 if slot_data.has("rte"):
515 rte_mapping = slot_data.get("rte") 517 rte_mapping = slot_data.get("rte")
516 518
519 slot_rng = RandomNumberGenerator.new()
520 slot_rng.seed = int(slot_data.get("seed", 0))
521
522 music_mapping.clear()
523 if bool(slot_data.get("shuffle_music", false)):
524 for map_name in global.reserved_scenes:
525 var track_index = slot_rng.randi_range(0, musicPlayer.all_tracks.size() - 1)
526 music_mapping[map_name] = musicPlayer.all_tracks.keys()[track_index]
527
517 # Set up item locks. 528 # Set up item locks.
518 _item_locks = {} 529 _item_locks = {}
519 530