diff --git a/soh/soh/Enhancements/timesaver_hook_handlers.cpp b/soh/soh/Enhancements/timesaver_hook_handlers.cpp index 81c7d7727..0cd6ffb09 100644 --- a/soh/soh/Enhancements/timesaver_hook_handlers.cpp +++ b/soh/soh/Enhancements/timesaver_hook_handlers.cpp @@ -237,6 +237,12 @@ void TimeSaverOnVanillaBehaviorHandler(GIVanillaBehavior id, bool* should, void* break; } case ACTOR_BG_BDAN_SWITCH: { + // The switch in jabu that you are intended to press with a box to reach barrinade + // can be skipped by either a frame perfect roll open or with OI + // The One Point for that switch is used in common setups for the former and is required for the latter to work + if (actor->params == 14848 && gPlayState->sceneNum == SCENE_JABU_JABU && !CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.GlitchAiding"), 0)){ + break; + } BgBdanSwitch* switchActor = static_cast(opt); switchActor->unk_1D8 = 0; switchActor->unk_1DA = 0; @@ -297,7 +303,9 @@ void TimeSaverOnVanillaBehaviorHandler(GIVanillaBehavior id, bool* should, void* } break; case VB_WONDER_TALK: { - if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.NoForcedDialog"), IS_RANDO)) { + //We want to show the frog hint if it is on, regardless of cutscene settings + if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.NoForcedDialog"), IS_RANDO) && + !(gPlayState->sceneNum == SCENE_ZORAS_RIVER && IS_RANDO && RAND_GET_OPTION(RSK_FROGS_HINT))) { *should = false; } break;