Commit Graph
17 Commits
Author SHA1 Message Date
Kevin Cathcart d36dd4839a Update bank map 2018-03-06 12:06:12 -05:00
Kevin Cathcart 341f146cad Patch the right spot 2018-02-24 12:47:06 -05:00
Kevin Cathcart 6f33acb0e1 Fix 3 digit arrow count in non-retro mode 2018-02-23 19:57:58 -05:00
Kevin Cathcart e7a58b2ea8 Remove purple chest despawn code
The blind despawn fix makes this unnecessary. Dungeon Entrance event
hook retained for possible future use, but is commented out.
2018-02-23 19:57:58 -05:00
Kevin Cathcart a94e0e8012 Fixes for Tagalongs for ER
Fixes various tagalong issues that affect Entrance Randomizer, most
involving frog/blacksmith
2018-02-23 19:57:11 -05:00
Kevin Cathcart 8c151e0fc2 Add Quick Swap 2018-02-23 19:20:47 -05:00
Kevin Cathcart 5f25e50551 Fix graphics when throwing items to fairy
This hook will not work without another one that changes the data bank. Which apparently was never checked in due to green mail approach to fixing the freeze did not work out.
2018-02-23 11:50:18 -05:00
Kevin Cathcart 711866d9b3 Update HUD arrow drawing code
Draw arrows (in normal spot) in retro hud only if you have arrows and draw the specific
type you have
2018-02-21 20:22:19 -05:00
Kevin Cathcart 77db3a90da Pack more shops into SRAM 2018-02-15 23:50:07 -05:00
Kevin Cathcart 60eafcaf46 Fix the dark world
Restore fake world fix to previous position

Change how the FixBunnyOnExitToLightworld Code works, and where it is
called from
2018-02-10 22:05:44 -05:00
Kevin Cathcart 0c72ca9e0e Fix not being bunny after defeating aga2 w/o moon Pearl 2018-02-07 01:56:51 -05:00
Kevin Cathcart 16259ce158 Add light world check to more unbunny-ing code
This time the code that tries to unbunny you when leaving a dungeon.This
is needed to make ER's new cross world connects work properly.

Move the fake world fix to happen in time for this.
2018-02-07 01:56:50 -05:00
Kevin Cathcart 3764deb4d3 fix Alt Door frame table
(Apparently trailing commas break things)
2018-02-05 00:11:16 -05:00
Kevin Cathcart b3d8c23d89 Add door frame data for the multi-entrance caves. This will support
mixing single and multi-entrance caves.

I also added the alternate door frame table, which is needed for having
single entrance caves at
Sanctuary and Hyrule castle. (Added as a table rather than hard coding
the ids in order to be more friendly to level editors).

Updated the comments and function name to be clear that we are tracking
the overworld door
id, not the entrance id.

Remove the code that attempts to clear the entrance because the code is
broken (it lacked a needed ".w" suffix, so xkas miscompiled it) meaning
the value was never cleared, which has not caused any issues. Also
having the entrance ID around is generally useful.
2018-01-21 15:31:16 -05:00
Kevin Cathcart 29b44e4167 Create a flag to toggle off Fake Worlds
Add a new rom flag to disable fake Light/Dark worlds from occurring as a
result of underworld travel. (Other methods of fake worlds like YBA Fake
Flute are not changed).

Entrance Randomizer intends to use this flag to fix the Fake Light world
from traveling though sewers when Hyrule Castle is in the dark world, as
well as to implement new shuffle modes that involve deliberate
cross-world caves without needing to grant pearl and mirror like the
current insanity mode does.
2018-01-20 13:42:10 -05:00
Kevin Cathcart 55473a4d01 GT in Kakariko music fix
This fixes music stopping partway up GT when
the player encounters a "PsychoSoldier" (MathOnNapkin's name). Both types
of this sprite sharethe same audio code. They have code to play special
music if chasing link in Kakariko. That is fine in vanilla or item
rando, but if they try to play this music in a dungeon located in
kakariko, this will cause the music to just stop, because that song is
not avaiulable in the dungeon music bank.

This patch fixes this by adding an extra check to make sure we are in
the overworld before playing this song.
2018-01-20 11:21:00 -05:00
Kevin Cathcart bf2b119748 Fix music in Entrance Randomizer
This commit fixes the wrong music when leaving certain caves bug in
Entrance Randomizer.

The vanilla games decides what music to play when re-entering the
overworld in code in `PreOverworld_LoadProperties`. One of the main
things the game uses to decide the correct music is the overworld screen
being loaded. Obviously that is ideal. But it also sometimes bases its
decision on the underworld screen you are leaving.

Why would they do that? Well some screens can be re-entered from
houses/etc that play at half volume. Nintendo did not want to have the
music restart from the begining when leaving those locations, so they
explictly coded the non-half-volume locations to set the music for that
screen, and let the half music volume cases fall though, and get handled
by a special case later in the process.

There is a better apporach though. Simply determine what music should be
playing for this overworld screen, looking only at the overwold screen
index. Then see if "half-volume music" is the last played song command.
If so, check what the actual song playing is. If it matches song for the
overworld screen we are entering, then play the full volume command.
Otherwise play the song for the screen we are entering (which by virtue
of being a new song will always play full volume).

This patch implements that better approach. It basically moves the music
selection code from `PreOverworld_LoadProperties` into the custom code
bank, removes the checks for specific underworld locations, and makes
sure the last bit of code run before actually setting the music is the
one to handle half music, as described above.
2018-01-20 11:20:59 -05:00