Fix Desert Wall pre-opened logic for the portal re-factor

This commit is contained in:
aerinon
2020-12-15 12:18:32 -07:00
parent 91b5380e3a
commit 2a05e94970
4 changed files with 6 additions and 2 deletions

View File

@@ -488,6 +488,7 @@ def connect_portal(portal, world, player):
chosen_door = world.get_door(portal_entrance.name, player) chosen_door = world.get_door(portal_entrance.name, player)
chosen_door.blocked = False chosen_door.blocked = False
connect_door_only(world, chosen_door, portal_region, player) connect_door_only(world, chosen_door, portal_region, player)
portal_entrance.parent_region.entrances.append(edit_entrance)
# todo: remove this? # todo: remove this?
@@ -505,6 +506,7 @@ def connect_portal_copy(portal, world, player):
chosen_door = world.get_door(portal_entrance.name, player) chosen_door = world.get_door(portal_entrance.name, player)
chosen_door.blocked = False chosen_door.blocked = False
connect_door_only(world, chosen_door, portal_region, player) connect_door_only(world, chosen_door, portal_region, player)
portal_entrance.parent_region.entrances.append(edit_entrance)
def find_portal_candidates(door_list, dungeon, need_passage=False, dead_end_allowed=False, crossed=False, bk_shuffle=False): def find_portal_candidates(door_list, dungeon, need_passage=False, dead_end_allowed=False, crossed=False, bk_shuffle=False):

View File

@@ -619,7 +619,7 @@ def stonewall_valid(stonewall):
return False # you can get stuck from an entrance return False # you can get stuck from an entrance
else: else:
door = entrance.door door = entrance.door
if door is not None and door != stonewall and not door.blocked and parent not in visited: if (door is None or (door != stonewall and not door.blocked)) and parent not in visited:
visited.add(parent) visited.add(parent)
queue.append(parent) queue.append(parent)
# we didn't find anything bad # we didn't find anything bad

View File

@@ -25,7 +25,7 @@ from Fill import distribute_items_cutoff, distribute_items_staleness, distribute
from ItemList import generate_itempool, difficulties, fill_prizes, fill_specific_items from ItemList import generate_itempool, difficulties, fill_prizes, fill_specific_items
from Utils import output_path, parse_player_names from Utils import output_path, parse_player_names
__version__ = '0.2.0.19u' __version__ = '0.2.0.20u'
class EnemizerError(RuntimeError): class EnemizerError(RuntimeError):
pass pass

View File

@@ -93,6 +93,8 @@ testing to verify logic is all good.
# Bug Fixes # Bug Fixes
* 2.0.20u
* Problem with Desert Wall not being pre-opened in intensity 3 fixed
* 2.0.19u * 2.0.19u
* Generation improvement * Generation improvement
* Possible fix for shop vram corruption * Possible fix for shop vram corruption