From 1e664de67757459a696ab58068db289dbc74cb98 Mon Sep 17 00:00:00 2001 From: Sonic Dreamcaster Date: Sat, 24 May 2025 19:40:29 -0300 Subject: [PATCH] Skip credits by pressing the start button if it was seen at least once. --- src/overlays/ovl_ending/fox_end1.c | 12 ++++++++++++ src/overlays/ovl_ending/fox_end2.c | 10 +++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/overlays/ovl_ending/fox_end1.c b/src/overlays/ovl_ending/fox_end1.c index efdf3076..79223f92 100644 --- a/src/overlays/ovl_ending/fox_end1.c +++ b/src/overlays/ovl_ending/fox_end1.c @@ -1046,6 +1046,18 @@ void Ending_8018A8FC(void) { void Ending_Main(void) { gCsFrameCount++; gGameFrameCount++; + + if (gSaveFile.save.data.padEE[0] == 1) { + gControllerLock = 0; + if (gControllerPress[0].button & START_BUTTON) { + D_ending_80196D00 = 7; + D_ending_80196D04 = 7200; + D_ending_80192E70 = 7200; + } + } else { + gControllerLock = 10000; + } + switch (D_ending_80196D00) { case 0: // Ending Init gRadioState = 0; diff --git a/src/overlays/ovl_ending/fox_end2.c b/src/overlays/ovl_ending/fox_end2.c index bd32bfde..43d88173 100644 --- a/src/overlays/ovl_ending/fox_end2.c +++ b/src/overlays/ovl_ending/fox_end2.c @@ -820,6 +820,10 @@ void Ending_80191234(u32 arg0, AssetInfo* asset) { gBgColor = 0; gStarCount = 0; gControllerLock = 10; + + // @port: Ending seen at least once. + gSaveFile.save.data.padEE[0] = 1; + Save_Write(); } void Ending_80191294(u32 arg0, AssetInfo* asset) { @@ -1083,7 +1087,11 @@ void Ending_801924EC(u32 arg0) { } void Ending_801926D4(void) { - gControllerLock = 10000; + if (gSaveFile.save.data.padEE[0] == 1) { + gControllerLock = 0; + } else { + gControllerLock = 10000; + } Matrix_Push(&gGfxMatrix);