File tree Expand file tree Collapse file tree 1 file changed +8
-0
lines changed
Expand file tree Collapse file tree 1 file changed +8
-0
lines changed Original file line number Diff line number Diff line change @@ -925,6 +925,11 @@ def shuffle_random_entrances(worlds: list[World]) -> None:
925925
926926 all_placed_one_way_entrances [world .id ] = placed_one_way_entrances
927927
928+ # Reconnect remaining boss room savewarps to vanilla targets before determining shuffled targets
929+ for region in world .regions :
930+ if region .is_boss_room and region .savewarp and not region .savewarp .connected_region :
931+ region .savewarp .connect (world .get_region (region .savewarp .name .split (' -> ' )[1 ]))
932+
928933 # Determine boss save/death warp targets
929934 for pool_type , entrance_pool in entrance_pools .items ():
930935 for entrance in entrance_pool :
@@ -967,6 +972,9 @@ def shuffle_random_entrances(worlds: list[World]) -> None:
967972 savewarp_region = savewarp_target .parent_region
968973 savewarp_target = savewarp_target .reverse
969974 savewarp .replaces = savewarp_target
975+ if savewarp .connected_region :
976+ # Disconnect vanilla connection first before connecting to new target
977+ savewarp .disconnect ()
970978 savewarp .connect (savewarp_region )
971979
972980 # Determine blue warp targets
You can’t perform that action at this time.
0 commit comments