mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-12-12 11:12:20 -05:00
Fix OnePoint cutscenes, make Skip Glitch cutscenes into Exclude Glitch Cutscenes (#4575)
* Fix OnePoint chutscenes, make skip glitch cutscenes into exclude cutscenes * address comments
This commit is contained in:
parent
31120b7188
commit
d0f7d30c16
@ -263,7 +263,7 @@ void TimeSaverOnVanillaBehaviorHandler(GIVanillaBehavior id, bool* should, va_li
|
||||
// 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)){
|
||||
if (actor->params == 14848 && gPlayState->sceneNum == SCENE_JABU_JABU && CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.GlitchAiding"), 0)){
|
||||
break;
|
||||
}
|
||||
BgBdanSwitch* switchActor = (BgBdanSwitch*)actor;
|
||||
@ -280,18 +280,9 @@ void TimeSaverOnVanillaBehaviorHandler(GIVanillaBehavior id, bool* should, va_li
|
||||
RateLimitedSuccessChime();
|
||||
break;
|
||||
}
|
||||
case ACTOR_BG_HIDAN_FWBIG: {
|
||||
*should = false;
|
||||
break;
|
||||
}
|
||||
case ACTOR_EN_EX_ITEM: {
|
||||
*should = false;
|
||||
break;
|
||||
}
|
||||
case ACTOR_EN_DNT_NOMAL: {
|
||||
*should = false;
|
||||
break;
|
||||
}
|
||||
case ACTOR_BG_HIDAN_FWBIG:
|
||||
case ACTOR_EN_EX_ITEM:
|
||||
case ACTOR_EN_DNT_NOMAL:
|
||||
case ACTOR_EN_DNT_DEMO: {
|
||||
*should = false;
|
||||
break;
|
||||
@ -311,6 +302,8 @@ void TimeSaverOnVanillaBehaviorHandler(GIVanillaBehavior id, bool* should, va_li
|
||||
case ACTOR_BG_SPOT18_BASKET:
|
||||
case ACTOR_BG_HIDAN_CURTAIN:
|
||||
case ACTOR_BG_MORI_HINERI:
|
||||
case ACTOR_BG_MIZU_SHUTTER:
|
||||
case ACTOR_SHOT_SUN:
|
||||
*should = false;
|
||||
RateLimitedSuccessChime();
|
||||
break;
|
||||
@ -786,7 +779,7 @@ void TimeSaverOnActorInitHandler(void* actorRef) {
|
||||
// or poes from which the cutscene is triggered until we can have a "BeforeActorInit" hook.
|
||||
// So for now we're just going to set the flag before they get to the room the cutscene is in
|
||||
if (gPlayState->sceneNum == SCENE_FOREST_TEMPLE && actor->id == ACTOR_EN_ST && !Flags_GetSwitch(gPlayState, 0x1B)) {
|
||||
if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.GlitchAiding"), 0)) {
|
||||
if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.Story"), 0) && !CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.GlitchAiding"), 0)) {
|
||||
Flags_SetSwitch(gPlayState, 0x1B);
|
||||
}
|
||||
}
|
||||
@ -812,7 +805,7 @@ void TimeSaverOnActorInitHandler(void* actorRef) {
|
||||
|
||||
// Fire Temple Darunia cutscene
|
||||
if (actor->id == ACTOR_EN_DU && gPlayState->sceneNum == SCENE_FIRE_TEMPLE) {
|
||||
if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.GlitchAiding"), 0)) {
|
||||
if (CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.Story"), 0) && !CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.GlitchAiding"), 0)) {
|
||||
Flags_SetInfTable(INFTABLE_SPOKE_TO_DARUNIA_IN_FIRE_TEMPLE);
|
||||
Actor_Kill(actor);
|
||||
}
|
||||
|
@ -681,8 +681,8 @@ void DrawEnhancementsMenu() {
|
||||
UIWidgets::PaddedEnhancementCheckbox("Skip Owl Interactions", CVAR_ENHANCEMENT("TimeSavers.SkipOwlInteractions"), false, false, false, "", UIWidgets::CheckboxGraphics::Cross, IS_RANDO);
|
||||
UIWidgets::PaddedEnhancementCheckbox("Skip Misc Interactions", CVAR_ENHANCEMENT("TimeSavers.SkipMiscInteractions"), false, false, false, "", UIWidgets::CheckboxGraphics::Cross, IS_RANDO);
|
||||
UIWidgets::PaddedEnhancementCheckbox("Disable Title Card", CVAR_ENHANCEMENT("TimeSavers.DisableTitleCard"), false, false, false, "", UIWidgets::CheckboxGraphics::Cross, IS_RANDO);
|
||||
UIWidgets::PaddedEnhancementCheckbox("Skip Glitch-Aiding Cutscenes", CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.GlitchAiding"), false, false, false, "", UIWidgets::CheckboxGraphics::Cross, 0);
|
||||
UIWidgets::Tooltip("Skip cutscenes that are associated with useful glitches, currently this is only the Fire Temple Darunia CS and Forest Temple Poe Sisters CS");
|
||||
UIWidgets::PaddedEnhancementCheckbox("Exclude Glitch-Aiding Cutscenes", CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.GlitchAiding"), false, false, false, "", UIWidgets::CheckboxGraphics::Cross, 0);
|
||||
UIWidgets::Tooltip("Don't skip cutscenes that are associated with useful glitches, currently this is only the Fire Temple Darunia CS, Forest Temple Poe Sisters CS and the Box Skip One Point in Jabu");
|
||||
UIWidgets::PaddedEnhancementCheckbox("Skip Child Stealth", CVAR_ENHANCEMENT("TimeSavers.SkipChildStealth"), false, false, false, "", UIWidgets::CheckboxGraphics::Cross, false);
|
||||
UIWidgets::Tooltip("The crawlspace into Hyrule Castle goes straight to Zelda, skipping the guards.");
|
||||
UIWidgets::PaddedEnhancementCheckbox("Skip Tower Escape", CVAR_ENHANCEMENT("TimeSavers.SkipTowerEscape"), false, false, false, "", UIWidgets::CheckboxGraphics::Cross, false);
|
||||
|
Loading…
Reference in New Issue
Block a user