diff options
| author | Philip Dubé <serprex@users.noreply.github.com> | 2025-10-10 17:25:41 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-10 10:25:41 -0700 |
| commit | f253d24cdc021953bc8ddab94642d4c1f4b3efe4 (patch) | |
| tree | 9384c967c3a160858faeda34de9a869fe3c97cde | |
| parent | 52a8f6c2810df518dc853edefdacb829cf1863dd (diff) | |
Cheat: Disable Sandstorm (#5800)
* Cheat: Disable Sandstorm
Can also be considered an A11y feature,
tho it'll always be hard with the muted colors,
even if we added option to reduce fog
* extern C?
| -rw-r--r-- | soh/soh/Enhancements/DisableSandstorm.cpp | 16 | ||||
| -rw-r--r-- | soh/soh/SohGui/SohMenuEnhancements.cpp | 3 |
2 files changed, 19 insertions, 0 deletions
diff --git a/soh/soh/Enhancements/DisableSandstorm.cpp b/soh/soh/Enhancements/DisableSandstorm.cpp new file mode 100644 index 000000000..a13fd4fb5 --- /dev/null +++ b/soh/soh/Enhancements/DisableSandstorm.cpp @@ -0,0 +1,16 @@ +#include "soh/Enhancements/game-interactor/GameInteractor.h" +#include "soh/ShipInit.hpp" + +extern "C" PlayState* gPlayState; + +void DisableSandstormAfterTransition(int16_t sceneNum) { + if (sceneNum == SCENE_HAUNTED_WASTELAND) { + gPlayState->envCtx.sandstormState = SANDSTORM_OFF; + } +} + +void RegisterDisableSandstorm() { + COND_HOOK(OnTransitionEnd, CVarGetInteger(CVAR_CHEAT("DisableSandstorm"), 0), DisableSandstormAfterTransition); +} + +static RegisterShipInitFunc initFunc(RegisterDisableSandstorm, { CVAR_CHEAT("DisableSandstorm") }); diff --git a/soh/soh/SohGui/SohMenuEnhancements.cpp b/soh/soh/SohGui/SohMenuEnhancements.cpp index 2f37291af..2b660fb94 100644 --- a/soh/soh/SohGui/SohMenuEnhancements.cpp +++ b/soh/soh/SohGui/SohMenuEnhancements.cpp @@ -1746,6 +1746,9 @@ void SohMenu::AddMenuEnhancements() { .Options(CheckboxOptions().Tooltip( "Keese and Guay no longer target you and simply ignore you as if you were wearing the " "Skull Mask.")); + AddWidget(path, "Disable Haunted Wasteland Sandstorm", WIDGET_CVAR_CHECKBOX) + .CVar(CVAR_CHEAT("DisableSandstorm")) + .Options(CheckboxOptions().Tooltip("Disables sandstorm effect in Haunted Wasteland.")); AddWidget(path, "Glitch Aids", WIDGET_SEPARATOR_TEXT); AddWidget(path, "Easy Frame Advancing with Pause", WIDGET_CVAR_CHECKBOX) |
