diff options
Diffstat (limited to 'engine/menus/intro_menu.asm')
-rw-r--r-- | engine/menus/intro_menu.asm | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/engine/menus/intro_menu.asm b/engine/menus/intro_menu.asm index 3fdc42cd..b00f72fb 100644 --- a/engine/menus/intro_menu.asm +++ b/engine/menus/intro_menu.asm @@ -839,6 +839,15 @@ Intro_PlaceChrisSprite: db 10 * 8 + 4, 9 * 8, 2 db 10 * 8 + 4, 10 * 8, 3 + + const_def + const TITLESCREENOPTION_MAIN_MENU + const TITLESCREENOPTION_DELETE_SAVE_DATA + const TITLESCREENOPTION_RESTART + const TITLESCREENOPTION_UNUSED + const TITLESCREENOPTION_RESET_CLOCK +NUM_TITLESCREENOPTIONS EQU const_value + IntroSequence: callfar Copyright_GameFreakPresents jr c, StartTitleScreen @@ -864,8 +873,8 @@ StartTitleScreen: ld b, SCGB_DIPLOMA call GetSGBLayout call UpdateTimePals - ld a, [wIntroSceneFrameCounter] - cp $5 + ld a, [wTitleScreenSelectedOption] + cp NUM_TITLESCREENOPTIONS jr c, .ok xor a .ok @@ -986,7 +995,7 @@ TitleScreenMain: ld a, [hl] and D_DOWN + B_BUTTON + SELECT cp D_DOWN + B_BUTTON + SELECT - jr z, .clock_reset + jr z, .reset_clock ; Press Start or A to start the game. ld a, [hl] @@ -995,14 +1004,14 @@ TitleScreenMain: ret .incave - ld a, 0 + ld a, TITLESCREENOPTION_MAIN_MENU jr .done .delete_save_data - ld a, 1 + ld a, TITLESCREENOPTION_DELETE_SAVE_DATA .done - ld [wIntroSceneFrameCounter], a + ld [wTitleScreenSelectedOption], a ; Return to the intro sequence. ld hl, wJumptableIndex @@ -1025,9 +1034,9 @@ TitleScreenMain: inc [hl] ret -.clock_reset - ld a, 4 - ld [wIntroSceneFrameCounter], a +.reset_clock + ld a, TITLESCREENOPTION_RESET_CLOCK + ld [wTitleScreenSelectedOption], a ; Return to the intro sequence. ld hl, wJumptableIndex @@ -1044,8 +1053,8 @@ TitleScreenEnd: and a ret nz - ld a, 2 - ld [wIntroSceneFrameCounter], a + ld a, TITLESCREENOPTION_RESTART + ld [wTitleScreenSelectedOption], a ; Back to the intro. ld hl, wJumptableIndex |