Fix LW/DW marking in copy_world

This commit is contained in:
codemann8
2021-08-03 20:36:10 -05:00
parent d71a246dc1
commit 8677a0313c
2 changed files with 11 additions and 8 deletions

View File

@@ -16,7 +16,7 @@ from OverworldGlitchRules import create_owg_connections
from PotShuffle import shuffle_pots
from Regions import create_regions, create_shops, mark_light_world_regions, mark_dark_world_regions, create_dungeon_regions, adjust_locations
from OWEdges import create_owedges
from OverworldShuffle import link_overworld, create_flute_exits
from OverworldShuffle import link_overworld, update_world_regions, create_flute_exits
from EntranceShuffle import link_entrances
from Rom import patch_rom, patch_race_rom, patch_enemizer, apply_rom_settings, LocalRom, JsonRom, get_hash_string
from Doors import create_doors
@@ -162,6 +162,7 @@ def main(args, seed=None, fish=None):
for player in range(1, world.players + 1):
link_overworld(world, player)
update_world_regions(world, player)
create_flute_exits(world, player)
logger.info(world.fish.translate("cli","cli","shuffling.world"))
@@ -421,6 +422,7 @@ def copy_world(world):
for player in range(1, world.players + 1):
create_regions(ret, player)
update_world_regions(ret, player)
create_flute_exits(ret, player)
create_dungeon_regions(ret, player)
create_shops(ret, player)

View File

@@ -135,13 +135,7 @@ def link_overworld(world, player):
assert len(swapped_edges) == 0
#move swapped regions to other world
if world.owSwap[player] == 'mixed':
for name in world.owswaps[player][1]:
region = world.get_region(name, player)
region.type = RegionType.DarkWorld
for name in world.owswaps[player][2]:
region = world.get_region(name, player)
region.type = RegionType.LightWorld
update_world_regions(world, player)
# make new connections
for owid in ow_connections.keys():
@@ -512,6 +506,13 @@ def create_flute_exits(world, player):
region.exits.append(exit)
world.initialize_regions()
def update_world_regions(world, player):
if world.owSwap[player] == 'mixed':
for name in world.owswaps[player][1]:
world.get_region(name, player).type = RegionType.DarkWorld
for name in world.owswaps[player][2]:
world.get_region(name, player).type = RegionType.LightWorld
test_connections = [
#('Links House ES', 'Octoballoon WS'),
#('Links House NE', 'Lost Woods Pass SW')