mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-26 03:12:18 -05:00
89ca2149b9
* Move Fishsanity hooks out of mods.cpp * Assign fish check flags. * Clean up location_list for fish * Prevent fishing from giving double items. * Remove no-longer-used mPendingFish * Override draw function for fishing This allows the draw functions in the source overlay to match the decomp. * Override draw function for EnFish * Overwrite grotto fish params based on respawn data This allows the randomizer to identify them automatically without any special logic. The catch (pun not intended) is that grotto fish don't respawn, and they were previously identified for such by a params value of 1, so the logic to take care of that needed to be duplicated. Thankfully it wasn't very much. * Add a VB for catching actors in bottles. * Clean up remaining code after conversion to VB This breaks fast FastDrops for bottle pickups, though readding it shouldn't be too hard with the VB hook. * Remove fishsanityParams from Fishing It was previously used to track exactly which fish would be released after a catch, but since both candidate fish would've been caught, they both wouldn't give checks anyways. * Update soh/soh/Enhancements/randomizer/hook_handlers.cpp Co-authored-by: Pepe20129 <72659707+Pepe20129@users.noreply.github.com> * Re-add FastDrops for bottle pickups. While this does diverge from the vanilla decomp, I'm uncertain of the order that hooks are run, so I put it back into z_player.c just to be safe. A future commit can do a more proper implementation using VB hooks. * Move initialisation of fishsanity hooks into hook_handlers * Change location constructor to take RandomizerInf instead of uint8_t This shouldn't have an effect as-is, but other changes can add additional randomizer flags that can end up pushing fishsanity check flags out of the range of a uint8_t, causing the cast to overflow and not be stored correctly. With this change, it could still overflow when writing to the flag field of Location, but said field is unused and the parameter is really only for setting the flag for the SpoilerCollectionCheck. * Render uncaught overworld fish as randomized item * Fix windows build by zeroing unused field * Fix scene parameter type This resolves a build error on Mac and Windows, but Linux instead buries it in the sea of warnings, meaning I can't see it until it fails CI. --------- Co-authored-by: Pepe20129 <72659707+Pepe20129@users.noreply.github.com> |
||
---|---|---|
.. | ||
assets | ||
CMake | ||
include | ||
macosx | ||
platform | ||
soh | ||
src | ||
.clang-format | ||
.clang-tidy | ||
.gitattributes | ||
.gitignore | ||
.gitrepo | ||
CMakeLists.txt | ||
fixbaserom.py | ||
format.sh | ||
icon.jpg | ||
properties.h.in | ||
resource.h | ||
Resource.rc | ||
SHIPOFHARKINIAN.ico | ||
SHIPOFHARKINIAN.manifest |