* Invert Air/Swim Axes
Apparently this is a setting in TPHD, so for parity's sake I'll throw it in here
* Invert Air Controls
Thanks @Abzol for knowing exactly where this is
* Array size UB fixes
* Fix ShieldD
* Remove (almost) all unsafe strcpy calls
Bunch of macros. C arrays are easy enough and just need a different call. For various cases where a char* is passed around bare, I've made a TEXT_SPAN macro that can store a length too for bounds checking.
* Move crash handling in safe string operations to separate TU
* strcat safe version
* sprintf made safe too
* Fix compile
When howling suns song near actors that arent howl stones, an empty howl tab was shown.
This fixes the issue by duplicating a check for sun's song howling into the relevant code branch.
* Add interpolation frame rate cap
* wip: reworked framelimiter
Based on my testing this is a bit more stable in frametimes.
* wip: efficiency improvement + windows build fix
Significantly improve efficiency by using a hybrid approach.
* wip: UI changes
* wip: end frame AFTER limiting
* wip: remove unused include
* wip: minor ui code change
Makes it easier to remove/add presets
* Simplify Limiter UI
- Change enableFrameInterpolation to an enum with off/capped/unlimited values
- Simplify the UI to use 2 settings (unlock framerate + a max value entry)
* wip: slight limiter simplification
* wip: implement review suggestions
* wip: fix syntax error
* wip: revert enum order + replace old checks
* Fix compile error
---------
Co-authored-by: SailorSnoW <sailorsnow@pm.me>
Co-authored-by: Loïs <49660929+SailorSnoW@users.noreply.github.com>
Co-authored-by: SuperDude88 <82904174+SuperDude88@users.noreply.github.com>
Co-authored-by: Luke Street <luke@street.dev>
* custom action framework and first person custom action
* add bind for midna call
* custom binding for opening dusklight menu
* turbo speed button action
* text descriptions
* fix not stopping default GC controller menu combo
* more explanation text
* block bind actions when in the dusklight menu
Some people asked about this, I think I've come around to their position (follow-up to #870 ).
I checked what TPHD does and its invert setting only changes the sticks
* Add roll fast cheat
* Corrected case on cheat name
* Addressed PR feedback
* Fixed whitespace
* Renamed cheat to be more consistent with other options
- Inverts first person aiming on either axis, for both stick and gyro controls
Could be separated from gyro if desirable, but I think it makes the most sense to have it apply to both
the game saves a flag when the player hits king bulblin at least once, which makes subsequent loads (including king bulblin 2) have 1 less "health" as lap_num for the boar is set to 1 during creation, as it checks the flag.