* Use Explicit Template Specialization
- Move migration of FrameInterpMode to use a unique specialization of loadFromJson
This avoids coding special cases into the main template, which I think is more sustainable in the long-run if we need to migrate other settings ever
* Error for Default Migration
- Add error message in the config log for default migration
Not a fatal, just a clear signal that you should handle your enum cases explicitly to make sure they're right
* More Magic Armor Options
- Add a 3rd option to lose rupees only on damage
* More Choices
- Add cosmetic and double defense options
These both have been requested a couple times
* Shorten Description
The description was very, very long before
* Web Editor Got Me
Fix my syntax
* Cape Texture Fix
- Load pos/norm/texcoord data directly from the REL
Before the hardcoded array was LE but being treated as BE, now we load it directly from the REL so treating it as BE is the correct behavior
* Fix Cape Tearing
- Update the cached textures when the cape is torn, reset the texture when creating the actor
* Add HUD scale setting
Adds a "HUD Scale" preference (50%–200%) that scales the gameplay HUD
(hearts, magic/lantern meter, light drops, rupees/keys, action buttons
and the mini-map) without affecting dialog boxes or menus.
Each HUD group is scaled around its own pane origin and nudged toward
its anchor corner (via dApplyHudCorner) so it stays put against the
screen edge instead of drifting toward the centre when shrunk. The
mini-map is scaled and shifted in d_meter_map so its bottom-left corner
stays anchored. The setting is clamped to a safe range and is a no-op on
non-PC targets. It is disabled in the menu while Minimal HUD is enabled.
Signed-off-by: kevin Lema <kevin.soesto@gmail.com>
* Scale remaining gameplay HUD elements with HUD scale
Extends the HUD Scale setting to the item ammo counters, the lantern oil
gauge and the small-key counter, and gives the oil/magic meter a reduced
horizontal anchor pull so it stays on-screen at small scales.
Signed-off-by: kevin Lema <kevin.soesto@gmail.com>
* Update settings.cpp
Signed-off-by: kevin Lema <kevin.soesto@gmail.com>
---------
Signed-off-by: kevin Lema <kevin.soesto@gmail.com>
* Slight dKankyo_housi_Packet documentation
* Optimize dKyr_drawHousi (twilight squares)
Now a single draw call rather than like 300
* Optimize dKyr_drawSnow
Snowpeak stonks rising
* Optimize dKyr_odour_draw
* Untie existing mouse logic from gyro
* A bit more mouse cleanup before I start building off it
* Rebase and last bit of cleanup
* Fix rebase mistake, don't apply invertFirstPerson to gyro or mouse input
* Remove the deprecated ImGui toast system
* Add Mouse Camera option in preparation for its use
* WIP, add mouse controls for the third-person camera
* Various helpText revisions
* Enable free camera on horseback
* Untie mouse camera and free camera options
Either being enabled now allows the underlying freecam logic to run
* Allow simultaneous C-stick and mouse input
* Combine mouse sensitivities for both aim and camera
* Add option for inverting mouse Y
* Refactor cursor visibility handling
* Tighten aim capture condition and constrain cursor to window region
* Tidying my trash
* Last bit of housekeeping so I'm satisfied
* Don't write code while sleep deprived
* Fix my sloppy merge and a few helpText updates
* Disable control stick aim when mouse aim is active
* Use same conditions for cursor grabbing as for capture