diff --git a/soh/soh/Enhancements/timesaver_hook_handlers.cpp b/soh/soh/Enhancements/timesaver_hook_handlers.cpp index 86e8c37e9..74a2f2138 100644 --- a/soh/soh/Enhancements/timesaver_hook_handlers.cpp +++ b/soh/soh/Enhancements/timesaver_hook_handlers.cpp @@ -340,11 +340,14 @@ void TimeSaverOnVanillaBehaviorHandler(GIVanillaBehavior id, bool* should, va_li if (ForcedDialogIsDisabled(FORCED_DIALOG_SKIP_NAVI)) { ElfMsg* naviTalk = va_arg(args, ElfMsg*); int32_t paramsHighByte = naviTalk->actor.params >> 8; - if ((paramsHighByte & 0x80) == 0 && (paramsHighByte & 0x3F) != 0x3F) { - Flags_SetSwitch(gPlayState, paramsHighByte & 0x3F); - Actor_Kill(&naviTalk->actor); - *should = false; + if ((paramsHighByte & 0x80) != 0) { + break; } + if ((paramsHighByte & 0x3F) != 0x3F) { + Flags_SetSwitch(gPlayState, paramsHighByte & 0x3F); + } + Actor_Kill(&naviTalk->actor); + *should = false; } break; }