From 7cd1cc81754feb0b08e29468e91b64f79cf3d9c5 Mon Sep 17 00:00:00 2001 From: Reonu Date: Fri, 2 Jan 2026 23:52:38 +0000 Subject: [PATCH] Add a 1 second delay for skipping the intro (#36) * Add 1 second delay for skipping the intro * Give a better name to the intro frame counter var * Fix accidental formatting change --- patches/title_screen_patches.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/patches/title_screen_patches.c b/patches/title_screen_patches.c index 6a42129..ea55cfd 100644 --- a/patches/title_screen_patches.c +++ b/patches/title_screen_patches.c @@ -22,13 +22,18 @@ void func_80322318(Struct_core2_9B180_0*); int map_get(void); // @recomp Patched to always allow skipping the intro sequence. +u8 introFrameCounter = 0; RECOMP_PATCH void func_80322490(void) { Struct_core2_9B180_0 *i_ptr; + introFrameCounter++; if (D_80383330 != 0) { for(i_ptr = D_8036DE00; i_ptr != &D_8036DE00[6]; i_ptr++){ - // @recomp Always allow skipping the intro sequence. - if((i_ptr->unk4 != 0 || (i_ptr->unkC == func_80322318 && map_get() == MAP_1F_CS_START_RAREWARE)) && i_ptr->unkC != NULL){ + // @recomp Always allow skipping thex intro sequence, with a delay of 1 second to prevent + // issues with accidentally skipping the intro when navigating the launcher with a controller. + if((i_ptr->unk4 != 0 || (i_ptr->unkC == func_80322318 && map_get() == MAP_1F_CS_START_RAREWARE && introFrameCounter > 30)) + && i_ptr->unkC != NULL){ + introFrameCounter = 0; i_ptr->unkC(i_ptr); } }