mirror of
https://github.com/MarioSpore/Grinch-AP.git
synced 2025-10-21 12:11:33 -06:00
Fix issue with rom writing when agahnim fix is applied in simple dungeon shuffle rules, where we swap trock ledge east with mimic cave to put agahnim in LW.
This commit is contained in:
13
Main.py
13
Main.py
@@ -406,11 +406,24 @@ def patch_rom(world, rom):
|
|||||||
for exit in region.exits:
|
for exit in region.exits:
|
||||||
if exit.target is not None:
|
if exit.target is not None:
|
||||||
try:
|
try:
|
||||||
|
# ugly fix for agahnim fix in simple dungeon shuffle mode
|
||||||
|
if world.agahnim_fix_required and exit.name == 'Dark Death Mountain Ledge (East)':
|
||||||
|
write_byte(rom, door_addresses[exit.name][0], exit.target)
|
||||||
|
continue
|
||||||
|
|
||||||
|
# toDo consider aga tower fix
|
||||||
addresses = door_addresses[exit.name]
|
addresses = door_addresses[exit.name]
|
||||||
write_byte(rom, addresses[0], exit.target[0])
|
write_byte(rom, addresses[0], exit.target[0])
|
||||||
write_byte(rom, addresses[1], exit.target[1])
|
write_byte(rom, addresses[1], exit.target[1])
|
||||||
except KeyError:
|
except KeyError:
|
||||||
# probably cave
|
# probably cave
|
||||||
|
|
||||||
|
# ugly fix for agahnim fix in simple dungeon shuffle mode
|
||||||
|
if world.agahnim_fix_required and exit.name == 'Mimic Cave Mirror Spot':
|
||||||
|
write_byte(rom, single_doors[exit.name], exit.target[0])
|
||||||
|
write_byte(rom, door_addresses['Dark Death Mountain Ledge (East)'][1], exit.target[1])
|
||||||
|
continue
|
||||||
|
|
||||||
addresses = single_doors[exit.name]
|
addresses = single_doors[exit.name]
|
||||||
if not isinstance(addresses, tuple):
|
if not isinstance(addresses, tuple):
|
||||||
addresses = (addresses,)
|
addresses = (addresses,)
|
||||||
|
Reference in New Issue
Block a user