mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-12-23 00:28:51 -05:00
Fix credits timing (#1254)
* Fix credits timing * Add documentation * Fix typo
This commit is contained in:
parent
d141876af4
commit
2c0ec96eff
@ -314,6 +314,8 @@ namespace GameMenuBar {
|
||||
CVar_SetS32("gCrouchStabHammerFix", 0);
|
||||
// Fix all crouch stab
|
||||
CVar_SetS32("gCrouchStabFix", 0);
|
||||
// Fix credits timing
|
||||
CVar_SetS32("gCreditsFix", 1);
|
||||
// Fix Gerudo Warrior's clothing colors
|
||||
CVar_SetS32("gGerudoWarriorClothingFix", 0);
|
||||
|
||||
@ -1166,6 +1168,8 @@ namespace GameMenuBar {
|
||||
UIWidgets::PaddedEnhancementCheckbox("Remove power crouch stab", "gCrouchStabFix", true, false);
|
||||
UIWidgets::Tooltip("Make crouch stabbing always do the same damage as a regular slash");
|
||||
}
|
||||
UIWidgets::PaddedEnhancementCheckbox("Fix credits timing", "gCreditsFix", true, false);
|
||||
UIWidgets::Tooltip("Extend certain credits scenes so the music lines up properly with the visuals");
|
||||
UIWidgets::PaddedEnhancementCheckbox("Fix Gerudo Warrior's clothing colors", "gGerudoWarriorClothingFix", true, false);
|
||||
UIWidgets::Tooltip("Prevent the Gerudo Warrior's clothes changing color when changing Link's tunic or using bombs in front of her");
|
||||
|
||||
|
@ -511,7 +511,54 @@ void Cutscene_Command_Terminator(PlayState* play, CutsceneContext* csCtx, CsCmdB
|
||||
temp = 1;
|
||||
}
|
||||
|
||||
if ((csCtx->frames == cmd->startFrame) || (temp != 0) || ((csCtx->frames > 20) && (randoCsSkip || debugCsSkip))) {
|
||||
bool playCutscene = false;
|
||||
if (!CVar_GetS32("gCreditsFix", 1) && (cmd->startFrame == csCtx->frames)) {
|
||||
playCutscene = true;
|
||||
} else if (CVar_GetS32("gCreditsFix", 1)) {
|
||||
u16 delay = 0;
|
||||
|
||||
// HACK: Align visual timing with audio during credits sequence
|
||||
switch (cmd->base) {
|
||||
case 55: // Gerudo fortress (second scene of credits roll)
|
||||
delay = 20;
|
||||
break;
|
||||
case 56: // Kakariko village
|
||||
delay = 40;
|
||||
break;
|
||||
case 57: // Death mountain trail
|
||||
delay = 20;
|
||||
break;
|
||||
case 58: // Goron city
|
||||
delay = 20;
|
||||
break;
|
||||
case 59: // Lake hylia
|
||||
delay = 20;
|
||||
break;
|
||||
case 62: // Kokiri forest (houses)
|
||||
delay = 40;
|
||||
break;
|
||||
case 63: // Kokiri forest (deku tree)
|
||||
delay = 40;
|
||||
break;
|
||||
case 74: // First gorons dancing
|
||||
delay = 100;
|
||||
break;
|
||||
case 75: // Magic carpet guy and old shop keepers
|
||||
delay = 180;
|
||||
break;
|
||||
case 77: // Sad mido and king zora (plays after scene 78)
|
||||
delay = 100;
|
||||
break;
|
||||
case 78: // Second gorons dancing
|
||||
delay = 160;
|
||||
break;
|
||||
}
|
||||
if (cmd->startFrame + delay == csCtx->frames) {
|
||||
playCutscene = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (playCutscene || (temp != 0) || ((csCtx->frames > 20) && (randoCsSkip || debugCsSkip))) {
|
||||
|
||||
csCtx->state = CS_STATE_UNSKIPPABLE_EXEC;
|
||||
Audio_SetCutsceneFlag(0);
|
||||
|
Loading…
Reference in New Issue
Block a user