* Some reason not working
* Fixes and formatting
Moved the LACS Stones to be before the Medallions in all instances to line up with the Bridge requirements and because it just makes sense
* Removed unnecessary space
* Missed one
* Add Checkbox in Extra Modes
Spawn Code in mods.cpp
Category Change for Clear Room Exclusion
Kill Actor if Mode is Disabled
* Fix non door scene changes and adds a delay to avoid misfiring or not firing on quick room changes like falling to B1 in Tree and Lost Woods loading triggers.
* Requested Updates
* Add brightness control and on/off toggle for tunic LED colors.
* Removed toggle, mentioned brightness of 0% for turning off LEDs.
* Set up grabbing tunic color values from Cosmetics Editor for cosmetics sync.
* Why these stupid differences between Windows and Linux compilers?
* Fix Mac build errors? Also try to move the color fetching back into the switch statements to lessen potential computational load.
* Real fix?
* Move "Customize Game Controls" button under "Controller Configuration" button under Settings -> Controller. Renamed "Controller Configuration" to "Configure Controller" and "Customize Game Controls" to "Customize In-game Controls"
* Added LEDColor and LEDColorSource enums for code clarity.
Moved controller LED brightness to new LED Colors group in "Customize In-game Controls" menu.
Added combobox to choose between vanilla tunics, cosmetics tunics, health, and custom as color sources.
Added critical health override checkbox to allow display of red when health is low even when other sources are selected.
Port color pickers have not been implemented yet, default color is white.
* Moved LED control to OTRControllerCallback and wrapped it in a check to `CanSetLed()`.
* Move settings to Port 1 tab in Customize In-game Controls and limited application of colors in `OTRControllerCallback` to port 1.
* UI clarity updates.
* Removed unnecessary LED color enum.
Added custom color picker to port 1 color settings.
* Changed Critical Health Override default to true.
* Modified logic to not do color fetching and instead default to {0,0,0,0} when brightness is off.
* Fix bad cvar string for custom color.
* Cleaning up some post-merge artifacts.
* Update soh/soh/Enhancements/controls/GameControlEditor.h
Co-authored-by: briaguya <70942617+briaguya-ai@users.noreply.github.com>
* Some name changes.
* idea for cleaning up controller callback stuff
* Rearranged color source checks to make sure criticalOverride is applied regardless of other settings.
---------
Co-authored-by: briaguya <70942617+briaguya-ai@users.noreply.github.com>
Co-authored-by: briaguya <briaguya@alice>
Move the code to change those values based on the child trade slot item to the selecting mask loop to not be setting them every frame just because you're in the inventory.
* Adds const specifiers to some appropriate functions.
* Implements move semantics for ReplaceStringInMessage.
Should result in much fewer allocations when rendering custom messages during a Randomizer playthrough.
* Implements some more move semantics.
* First pass on improved Custom Messages API.
This should allow for fewer allocations during randomizer seed generation and runtime, plus a couple of other enhancements that utilize custom messages. It does this by taking advantage of move semantics to prevent extraneous allocations when string literals are passed in. It also takes advantage of OOP to hopefully end up with a cleaner API.
* Additional API/allocation related improvements.
* Removes an unnecessary destructor and constructor.
* Updates documentation
* Adds a bit more documentation.
* Fixes switch build problem and minor syntax error
* Renames slightly unclear operator parameter
* Replaces magic numbers with LANGUAGE_MAX
Implemented subsectional saving (handled in the section's save function, and passed to the save function by & pointer). Default of "all" passed in from SaveFile for game saves.
Implemented subsectional saving for sohStats and entrances/scenes discovered.
Fixed check for game save registry by putting the check against the registry in the "all" section save code.
Fixed loading and saving of blank sceneTimestamps due to default construction of data structures during JSON loading making all "empty" entries have scene and room of 0.
Moved SoH stats initialization to `gameplaystats.cpp` via `SaveManager::AddInitFunction`.
Improved save file efficiency by adding code to not write any "empty" entries in `sceneTimestamps` (as determined by room and scene being 254) when saving, and initializing them to 254 if not loaded from the save file.