Adds a new subheading under Input for gameplay-related settings.
It's at the bottom because players probably will want to configure their camera
more than they care about ornery gameplay details.
The one and only toggle there right now is to invert the function of the L-trigger
on the Item Wheel. It renders the on-screen text properly if inverted too,
meaning with it on the game does tell you that holding L will rotate
and moving the stick without holding L will direct select.
* Add a *ton* of const and constexpr around the codebase.
This makes the codebase compile without strings being cast to non-const char*. I also went through and added constexpr where appropriate for tons of static data.
* Make process definitions const too
Might as well
* Bug Form Formatting
- Space out yml more so it's easier to skim
- Add id to each section (GitHub says it does something but I'm mostly adding it for completeness)
- Tidy up some capitalization/punctuation for consistency
* Feature Request Form
- Add a simple feature request template that requires a feature description + marks it as the right type
- Set the matrix properly instead of multiplying based on the previous one
Fixes an issue where the snow would not fall when bonking if you had bloom disabled
* Change "verify your dump" instructions in readme
No need to do this manually as the game already does it. Instead let's link to a guide for dumping the game legitimately.
* Gotta shill
* 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
* wip: more info in player info window
* wip: 3d speed + vel vec + ui change
* wip: add epona velocity vec
* wip: remove dead code + add format indexing
* 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
alpha comparison mID is u16, but indexes into a 256-item table.
this causes MAT3 materials with an alpha comparison index of 0xFF crashes on linux
closes#1073closes#1531
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.
* linux: Fix Wayland window associations
`src/m_Do/m_Do_main.cpp` uses `SDL_SetAppMetadata("Dusklight", DUSK_VERSION_STRING, "dev.twilitrealm.dusk")` which results in the Wayland appId getting set to `dev.twilitrealm.dusk`. Wayland compositors associate Wayland windows to desktop files by comparing the window appId against installed desktop files by the name of the desktop files. For a given window with appId `dev.twilitrealm.dusk` it would look for `dev.twilitrealm.dusk.desktop`, and because the desktop file is not named that the compositor is unable to correctly associate the window which results in the default Wayland icon being shown for the window. It also results in windows not being associated with the given launcher if the desktop file is pinned to a task management widget of some kind.
Fix this by renaming the desktop file to `dev.twilitrealm.dusk.desktop`. Also while we're at it we can rename the icons as well to match the desktop file name, which isn't required but is a bit cleaner and will fit various packaging standards better.
Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>
* Use dev.twilitrealm.dusk instead
---------
Signed-off-by: Reilly Brogan <reilly@reillybrogan.com>
- Enabled the Android UI path for changing the data folder
- Added Android MANAGE_EXTERNAL_STORAGE permission
- Added an Android flow to request “All files access” before opening the folder picker
- Added code path to resume the folder selection flow after returning from Android settings
- Improved the Android write-probe error message to point users at the required permission
* ci: Try arm64 Linux/Windows builds
* Update aurora
* Explicitly set CMAKE_SYSTEM_PROCESSOR on Windows
* Update build-appimage.sh for aarch64
* Set Rust_RUSTUP_INSTALL_MISSING_TARGET=ON
* Use CMAKE_SYSTEM_PROCESSOR normalization for jpeg-turbo build too
* MSVC ARM64 support for freeverb
* "Mortal Edge" description nit
"Darkhammer" seems to be the more common rendering of the name.
* Add missing option descriptions
* Tighten spacing for version/disc info on mobile
* Graphics API init failure message nit