Fixed issue where some water regions are unreachable because they weren't ever checked

This commit is contained in:
codemann8
2022-05-05 07:50:08 -05:00
parent 1eefa5dbde
commit 82aa0b5d79

View File

@@ -288,7 +288,7 @@ def link_overworld(world, player):
trimmed_groups = remove_reserved(world, trimmed_groups, connected_edges, player) trimmed_groups = remove_reserved(world, trimmed_groups, connected_edges, player)
groups = reorganize_groups(world, trimmed_groups, player) groups = reorganize_groups(world, trimmed_groups, player)
tries = 10 tries = 20
valid_layout = False valid_layout = False
connected_edge_cache = connected_edges.copy() connected_edge_cache = connected_edges.copy()
while not valid_layout and tries > 0: while not valid_layout and tries > 0:
@@ -939,12 +939,10 @@ def validate_layout(world, player):
while unreachable_count != len(unreachable_regions): while unreachable_count != len(unreachable_regions):
# find unreachable regions # find unreachable regions
unreachable_regions = {} unreachable_regions = {}
flat_sectors = [[r for l in s for r in l] for s in world.owsectors[player]] for region_name in list(OWTileRegions.copy().keys()):
for sector in flat_sectors: if region_name not in explored_regions and region_name not in isolated_regions:
for region_name in sector: region = base_world.get_region(region_name, player)
if region_name not in explored_regions and region_name not in isolated_regions: unreachable_regions[region_name] = region
region = base_world.get_region(region_name, player)
unreachable_regions[region_name] = region
# loop thru unreachable regions to check if some can be excluded # loop thru unreachable regions to check if some can be excluded
unreachable_count = len(unreachable_regions) unreachable_count = len(unreachable_regions)