* Add offsets for Wii USA R0/R2, JPN, and PAL
Also fix an oopsie where l_pos and l_normal's offsets were swapped
* Allow loading Wii discs
* Change GameVersion::GcnJpn checks to isRegionJpn()
* Change GameVersion::GcnPal checks to isRegionPal()
* Add platformSelect and regionSelect templates, simplify a ton of code
* Add *_get() macros to simplify REL loads
* Actually accept Wii USA Rev. 2 discs
* Show the Wii USA revision in prelaunch's disc status
* l_normal isn't in Wii RELs, so I'll just hardcode it
* Account for various BLO differences
Fix crash when opening the map on Wii USA Rev 0 and Wii PAL
* Use the streamed version of the file select music
* Update language selection
* Fix the d-pad/cross button text for Wii PAL
Resizing panes that are already 120.0f wide is harmless, so I didn't bother with a GameVersion check
* Fix brightness check discrepancy, use IF_DUSK_BLOCK macros when ideal
* Update docs and the issue template
* Don't Use OSCalendarTime for Speedrun Timing
- Shouldn't rely on OSTicksToCalendarTime since it will be changed to handle time zone conversion, and that doesn't make sense on elapsed time
* Use OSGetSystemTime Extension
- Fixes desyncing issues with save file time and a couple other odd instances, particularly on mobile platforms that suspend apps
* Time revamp
* Update aurora
* Split IGT/RTA calculations
* Shift-Turbo to slow down
---------
Co-authored-by: SuperDude88 <82904174+SuperDude88@users.noreply.github.com>
* Change sight drawing flag to on in arrow logic
* Refactor setBowSight for PC targeting and reticle logic
* Add Aiming Reticle option to settings
Add option for Aiming Reticle in settings.
* Add aiming reticle setting to game preferences
* Add aiming reticle to user settings registration
* Add aimingReticle configuration variable
* Fix syntax error in settings.cpp
* Add aiming reticle check to bow charge condition
* Refactor bow charge sight position logic
Removed redundant sight position handling when aiming reticle is not displayed.
* Refactor setBowSight for Dusk targeting
* Clarify aiming reticle option description
* Refactor bow sight logic in setBowSight function
Removed dusk condition from bow sight check and adjusted sight drawing logic.
* Refactor sight drawing logic in d_a_alink_bow.inc
Remove redundant call to offDrawFlg() when aiming reticle is enabled.
* initial stage service ported from encounter's original impl
* Review cleanup
* initial stage service ported from encounter's original impl
---------
Co-authored-by: Luke Street <luke@street.dev>
Apple: mods are now MH_BUNDLE (.so) linked with -bundle_loader,
replacing the deprecated (on iOS) -undefined dynamic_lookup.
Windows: clang-cl mods link dusklight.exe directly; lld's mingw driver
synthesizes imports from the export table. cl still requires the
import library.
Starting with VS 18 / cl 14.51, MSVC's constant evaluator
rejects a pointer-to-member in a constant initializer that also
contains any computed data, a consteval call or even a copy of a
constexpr object (C2127).
Hook records are now aggregate-initialized from literals only: the
computed name bytes (vtable symbol + display name) are baked into
char... template arguments and sizes/kinds are spelled inline.
* Deduplicate Speedrun Overrides
Avoids issues where only one is updated + makes sense organizationally
* Move restore_from_speedrun_mode
I think it makes more sense to have this in the same place the overrides are set
* Camelcase nit
---------
Co-authored-by: Irastris <irastris15@gmail.com>