From cc270ca44df69c51b32ccf64f3ffae6edf0047d5 Mon Sep 17 00:00:00 2001 From: Kevin Cathcart Date: Mon, 19 Feb 2018 23:20:01 -0500 Subject: [PATCH] Misc fixes Fix offsets for madness+ modes. Bunny cannot reach back skull woods second section hole. --- Rom.py | 7 ++++--- Rules.py | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Rom.py b/Rom.py index 358150af..016239a4 100644 --- a/Rom.py +++ b/Rom.py @@ -316,9 +316,10 @@ def patch_rom(world, rom, hashtable, beep='normal', sprite=None): # Thanks to Zarby89 for originally finding these values # todo fix screen scrolling - if exit.name in ['Eastern Palace Exit', 'Tower of Hera Exit', 'Thieves Town Exit', 'Skull Woods Final Section Exit', 'Ice Palace Exit', 'Misery Mire Exit', - 'Palace of Darkness Exit', 'Swamp Palace Exit', 'Ganons Tower Exit', 'Desert Palace Exit (North)', 'Agahnims Tower Exit', 'Spiral Cave Exit (Top)', - 'Superbunny Cave Exit (Bottom)', 'Turtle Rock Ledge Exit (East)']: + if world.mode not in ['insanity', 'insanity_legacy', 'madness_legacy'] and \ + exit.name in ['Eastern Palace Exit', 'Tower of Hera Exit', 'Thieves Town Exit', 'Skull Woods Final Section Exit', 'Ice Palace Exit', 'Misery Mire Exit', + 'Palace of Darkness Exit', 'Swamp Palace Exit', 'Ganons Tower Exit', 'Desert Palace Exit (North)', 'Agahnims Tower Exit', 'Spiral Cave Exit (Top)', + 'Superbunny Cave Exit (Bottom)', 'Turtle Rock Ledge Exit (East)']: # For exits that connot be reached from another, no need to apply offset fixes. rom.write_int16_to_rom(0x15DB5 + 2 * offset, link_y) # same as final else elif room_id == 0x0059 and world.fix_skullwoods_exit: diff --git a/Rules.py b/Rules.py index 65924e44..d29c360b 100644 --- a/Rules.py +++ b/Rules.py @@ -159,6 +159,7 @@ def global_rules(world): set_rule(world.get_entrance('Brewery'), lambda state: state.has_Pearl()) # bomb required set_rule(world.get_entrance('Thieves Town'), lambda state: state.has_Pearl()) # bunny cannot pull set_rule(world.get_entrance('Skull Woods First Section Hole (North)'), lambda state: state.has_Pearl()) # bunny cannot lift bush + set_rule(world.get_entrance('Skull Woods Second Section Hole'), lambda state: state.has_Pearl()) # bunny cannot lift bush set_rule(world.get_entrance('Maze Race Mirror Spot'), lambda state: state.has_Mirror()) set_rule(world.get_entrance('Cave 45 Mirror Spot'), lambda state: state.has_Mirror()) set_rule(world.get_entrance('East Dark World Bridge'), lambda state: state.has_Pearl() and state.has('Hammer'))