* Clean up grayed out items in file select.
Tie personal notes saving to `OnExitGame()` to account for save scum resets.
Hide text input box (but not window) for personal notes when a save isn't loaded to prevent saving over a save's notes while in file select.
* Allow check tracker window to be visible and show the "Waiting for file load..." text in file select (ease of positioning).
* Fix key label text placement.
* Persist `areasSpoiled`, change trigger to `OnSceneTransition`.
Add `IsAreaSpoiled` for tie-in to Item Tracker.
Add `SetAreaSpoiled` to unify bitmagic.
* Add proper spoiling evaluation based on specific entrance IDs, or first check collection.
Add light yellow color for vanilla dungeon abbreviations to match the purple for MQ.
* Initialize `areasSpoiled` to 0, so 0 gets saved on file create.
* All new conditional statements around `GameInteractor::IsSaveLoaded()` were inverted. Fixed that.
* Change some c-style casts to `static_cast`.
* Few more cleanups, plus clarifying comment.
* Add `SohModalWindow` and `SohModal`. Runs as window, always "visible", but not drawing if no popups are registered.
Adds error catching for save file corruption (malformed json) that renames the file in question to prevent future loading issues and uses `SohModalWindow` to inform the user of the error.
* Apply suggestions from code review
---------
Co-authored-by: briaguya <70942617+briaguya-ai@users.noreply.github.com>
* Moves personal notes to the save file under a new itemTracker save section.
* Update soh/soh/Enhancements/randomizer/randomizer_item_tracker.cpp
---------
Co-authored-by: Archez <Archez@users.noreply.github.com>
* dont let k overflow
* Update soh/soh/z_scene_otr.cpp
Co-authored-by: Archez <Archez@users.noreply.github.com>
---------
Co-authored-by: Archez <Archez@users.noreply.github.com>
* Adds `FormatLocations` and `PRESET_ENTRY_TYPE_CPP_STRING` to allow for feeding `RandomizerCheck` values directly in presets instead of a string with magic numbers.
* Switch to concatenation with `std::to_string`.
* Forgot to remove <format> include XD
* add map palettes per pulse to leverage shader caching
* use unregister blended with kaleido maps
* use Gfx_TextureCacheDelete for KD lava
* bump lus
* add miss tex clears for KD
* Fix Fire Temple Boss Door Logic
* Update soh/soh/Enhancements/randomizer/3drando/location_access/locacc_fire_temple.cpp
Co-authored-by: Adam Bird <Archez@users.noreply.github.com>
---------
Co-authored-by: Adam Bird <Archez@users.noreply.github.com>
* Fix the calculation of `areaChecksGotten` to account for flags functionality setting invisible checks.
Change `areaChecksTotal` to dynamic calculation based on tracker visibility, now that all checks are being added to `checksByArea`.
Both are updated in realtime when either "Show all GS locations" or "Hide right side shop items" are toggled.
Reformat all remaining unencapsulated if statements.
* Changed helper variable change and call to `RecalculateAreaTotals()` to when the options are toggled instead of checking every frame.
Removed redundant if...else.
Clarified areaChecksGotten increment/decrement functionality based on current status and incoming status change.
* Removed unused code.