diff --git a/BaseClasses.py b/BaseClasses.py index 65fff7e5..9920a710 100644 --- a/BaseClasses.py +++ b/BaseClasses.py @@ -1152,9 +1152,9 @@ class Door(object): elif self.type == DoorType.Open: base_address = { Direction.North: 0x13C500, - Direction.South: 0x13C533, - Direction.West: 0x13C566, - Direction.East: 0x13C581, + Direction.South: 0x13C521, + Direction.West: 0x13C542, + Direction.East: 0x13C55D, } return base_address[self.direction] + self.edge_id * 3 diff --git a/DoorShuffle.py b/DoorShuffle.py index b856a7d6..071cf422 100644 --- a/DoorShuffle.py +++ b/DoorShuffle.py @@ -102,7 +102,7 @@ def create_door_spoiler(world, player): for ext in next.exits: door_a = ext.door connect = ext.connected_region - if door_a and door_a.type in [DoorType.Normal, DoorType.SpiralStairs] and door_a not in done: + if door_a and door_a.type in [DoorType.Normal, DoorType.SpiralStairs, DoorType.Open] and door_a not in done: done.add(door_a) door_b = door_a.dest if door_b: diff --git a/Rom.py b/Rom.py index 30d70800..87283f44 100644 --- a/Rom.py +++ b/Rom.py @@ -604,7 +604,7 @@ def patch_rom(world, rom, player, team, enemized): if world.doorShuffle[player] == 'basic': rom.write_byte(0x139004, 1) for door in world.doors: - if door.dest is not None and door.player == player and door.type in [DoorType.Normal, DoorType.SpiralStairs]: + if door.dest is not None and door.player == player and door.type in [DoorType.Normal, DoorType.SpiralStairs, DoorType.Open]: rom.write_bytes(door.getAddress(), door.dest.getTarget(door)) for room in world.rooms: if room.player == player and room.modified: