summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGarrett Cox <garrettjcox@gmail.com>2024-09-24 12:56:56 -0500
committerGitHub <noreply@github.com>2024-09-24 10:56:56 -0700
commit4e4c1c4f8aab5d486ce622b1c990f4d5fd9caa92 (patch)
treed539c2c32db326c4b0785c70f4522f5c63f6e06a
parent0f022011082c953c2ecab0a4c07e393c76b9a0d1 (diff)
Handle ignoring 0x3F for navi talk skips (#4364)
-rw-r--r--soh/soh/Enhancements/timesaver_hook_handlers.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/soh/soh/Enhancements/timesaver_hook_handlers.cpp b/soh/soh/Enhancements/timesaver_hook_handlers.cpp
index 0682f4de1..77910d687 100644
--- a/soh/soh/Enhancements/timesaver_hook_handlers.cpp
+++ b/soh/soh/Enhancements/timesaver_hook_handlers.cpp
@@ -317,9 +317,11 @@ void TimeSaverOnVanillaBehaviorHandler(GIVanillaBehavior id, bool* should, void*
case VB_NAVI_TALK: {
if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.NoForcedDialog"), IS_RANDO)) {
ElfMsg* naviTalk = static_cast<ElfMsg*>(opt);
- Flags_SetSwitch(gPlayState, (naviTalk->actor.params >> 8) & 0x3F);
- Actor_Kill(&naviTalk->actor);
- *should = false;
+ if (((naviTalk->actor.params >> 8) & 0x3F) != 0x3F) {
+ Flags_SetSwitch(gPlayState, (naviTalk->actor.params >> 8) & 0x3F);
+ Actor_Kill(&naviTalk->actor);
+ *should = false;
+ }
}
break;
}