diff options
| author | 2Tie <foxman95@ymail.com> | 2018-06-23 10:19:49 -0600 |
|---|---|---|
| committer | 2Tie <foxman95@ymail.com> | 2018-06-23 10:19:49 -0600 |
| commit | 0369ef51b4461cf516488c2e13b24ad6d5c13d65 (patch) | |
| tree | 68942d2a398044b2eba34ed09809c07386bfc8af /engine/menu | |
| parent | 26edac4db6b17102822aa67791178d5fe2505d36 (diff) | |
split the oak speeches and game setup into two files
Diffstat (limited to 'engine/menu')
| -rw-r--r-- | engine/menu/main_menu.asm | 797 |
1 files changed, 1 insertions, 796 deletions
diff --git a/engine/menu/main_menu.asm b/engine/menu/main_menu.asm index 4bd4a45..5cc6177 100644 --- a/engine/menu/main_menu.asm +++ b/engine/menu/main_menu.asm @@ -208,799 +208,4 @@ StartNewGame:: ; 555C call DebugSetUpPlayer jp IntroCleanup -DemoStart:: ; 558D - ld de, OakPic - lb bc, BANK(OakPic), $00 - call IntroDisplayPicCenteredOrUpperRight - call FadeInIntroPic - ld hl, OakSpeechDemo - call PrintText - call RotateThreePalettesRight - call ClearTileMap - ld de, ProtagonistPic - lb bc, BANK(ProtagonistPic), $00 - call IntroDisplayPicCenteredOrUpperRight - call MovePicLeft - ld a, %11010000 - ldh [rOBP0], a - call DemoSetUpPlayer - jp IntroCleanup - -GameStart:: ; 55BB - ld de, OakPic - lb bc, BANK(OakPic), $00 - call IntroDisplayPicCenteredOrUpperRight - call FadeInIntroPic - ld hl, OakSpeech1 - call PrintText - call RotateThreePalettesRight - call ClearTileMap - ld a, DEX_YADOKING - ld [wCurSpecies], a - ld [wMonDexIndex], a - call GetMonHeader - hlcoord 6, 4 - hlcoord 6, 4 - call PrepMonFrontpic - call MovePicLeft - ld hl, OakSpeech2 - call PrintText - ld a, DEX_YADOKING - call PlayCry - ld hl, OakSpeech3 - call PrintText - call RotateThreePalettesRight - call ClearTileMap - ld de, ProtagonistPic - lb bc, BANK(ProtagonistPic), $00 - call IntroDisplayPicCenteredOrUpperRight - call MovePicLeft - ld hl, OakSpeech4 - call PrintText - call ChoosePlayerName - call RotateThreePalettesRight - call ClearTileMap - ld de, RivalPic - lb bc, BANK(RivalPic), $00 - call IntroDisplayPicCenteredOrUpperRight - call FadeInIntroPic - ld hl, OakSpeech5 - call PrintText - call ChooseRivalName - call RotateThreePalettesRight - call ClearTileMap - ld de, OakPic - lb bc, BANK(OakPic), $00 - call IntroDisplayPicCenteredOrUpperRight - call FadeInIntroPic - ld hl, OakSpeech6 - call PrintText - callba SetClockDialog - call Function04ac - call RotateThreePalettesRight - call ClearTileMap - ld de, ProtagonistPic - lb bc, BANK(ProtagonistPic), $00 - call IntroDisplayPicCenteredOrUpperRight - call RotateThreePalettesLeft - ld hl, OakSpeech7 - call PrintText - ldh a, [hROMBank] - push af - ld a, $20 - ld [wMusicFade], a - ld de, MUSIC_NONE - ld a, e - ld [wMusicFadeIDLow], a - ld a, d - ld [wMusicFadeIDHigh], a - ld de, $000B ; should be a constant - shrink noise? - call PlaySFX - pop af - call Bankswitch - ld c, $04 - call DelayFrames - -IntroCleanup:: ; 568E - ld de, ShrinkPic1 - lb bc, BANK(ShrinkPic1), $00 - call IntroDisplayPicCenteredOrUpperRight - ld c, $04 - call DelayFrames - ld de, ShrinkPic2 - lb bc, BANK(ShrinkPic2), $00 - call IntroDisplayPicCenteredOrUpperRight - ld c, $14 - call DelayFrames - hlcoord 6, 5 - ld b, $07 - ld c, $07 - call ClearBox - ld c, $14 - call DelayFrames - call LoadStartingSprites - call LoadFontExtra - ld c, $32 - call DelayFrames - call RotateThreePalettesRight - call ClearTileMap - call Function0502 - ld a, $00 - ld [wd638], a - ld [wd637], a - -OverworldStart:: - call SetUpGameEntry - ld hl, wDebugFlags - bit CONTINUED_F, [hl] - call z, Function15b5 - ld hl, wd4a9 - set 0, [hl] - jp Function2a85 - -SetUpGameEntry:: ; 56E8 - ld a, $04 - ld [wd65e], a - ld a, $F2 - ldh [hMapEntryMethod], a - ld hl, wDebugFlags - bit CONTINUED_F, [hl] ; if we loaded a game - ret nz - ld a, $F1 - ldh [hMapEntryMethod], a - ld a, $00 - ld [wDebugWarpSelection], a - ld hl, GameStartPlacement - ld de, wMapGroup - ld bc, wd65e - wMapGroup - call CopyBytes - ret - -GameStartPlacement:: ; 570D - db $01 ; map group - db PLAYER_HOUSE_2F+1 ; map - dwcoord 15, 45 ; screen anchor - db $04 ; metatile x - db $04 ; metatile y - db $00 ; in-metatile x - db $01 ; in-metatile y - -DebugSetUpPlayer:: ; 5715 - call SetPlayerNamesDebug - ld a, $0F - ld [wd15d], a - ld a, $42 - ld [wd15e], a - ld a, $3F - ld [wd15f], a - ld a, $FF - ld [wd163], a - ld [wd164], a - call GiveRandomJohto - ld a, $03 - call AddRandomPokemonToBox - call FillTMs - ld de, DebugBagItems - call FillBagWithList - ld hl, wPokedexOwned - call DebugFillPokedex - ld hl, wPokedexSeen - call DebugFillPokedex - ld hl, wAnnonDex - ld [hl], $01 - call Function40fd - ret - -DebugFillPokedex:: ; 5755 - ld b, $1F - ld a, $FF -.loop - ld [hl+], a - dec b - jr nz, .loop - ld [hl], $07 - ret - -FillBagWithList:: ; 5760 - ld hl, wNumBagItems -.loop - ld a, [de] - cp $FF - jr z, .yump - ld [wCurItem], a - inc de - ld a, [de] - inc de - ld [wItemQuantity], a - call AddItemToInventory - jr .loop -.yump - ret - -DebugBagItems:: ; 5777 - db ITEM_IMPORTANT_BAG, $01 - db ITEM_BAG, $01 - db ITEM_TM_HOLDER, $01 - db ITEM_BALL_HOLDER, $01 - db ITEM_BICYCLE, $01 - db ITEM_MAIL, $06 - db ITEM_ULTRA_BALL, $1E - db ITEM_POKE_BALL, $63 - db ITEM_POTION, $1E - db ITEM_RARE_CANDY, $14 - db ITEM_MOON_STONE, $63 - db ITEM_FULL_HEAL, $63 - db ITEM_PROTEIN, $63 - db ITEM_QUICK_NEEDLE, $63 - db ITEM_SNAKESKIN, $63 - db ITEM_KINGS_ROCK, $63 - db ITEM_FLEE_FEATHER, $63 - db ITEM_FOCUS_ORB, $63 - db ITEM_SHARP_SCYTHE, $63 - db ITEM_DETECT_ORB, $63 - db $FF - -GiveRandomPokemon:: ; 57A0 - and a - ret z -.loop - push af - call RandomUnder246 - ld b, $0A - call GivePokemon - pop af - dec a - jr nz, .loop - ret - -GiveRandomJohto:: ; 57B0 -.loop - call Random - and $03 - jr z, .loop - dec a - ld b, a - add a, a - add a, b - add a, $98 ; maybe should be a constant - 152, aka the number of kanto pokes - ld b, $08 - call GivePokemon - ld a, $8D - ld [wPartyMon1 + 1], a - ret - -GiveKantoStarters:: ; 57C8 - ld a, $03 - ld b, $20 - call GivePokemon - ld a, $06 - ld b, $24 - call GivePokemon - ld a, $09 - ld b, $24 - call GivePokemon - ret - -GivePokemon:: ; 57DE - ld [wMonDexIndex], a - ld a, b - ld [wCurPartyLevel], a - ld a, $10 - call Predef - ret - -AddRandomPokemonToBox: ; 57EB - and a - ret z -.loop - push af - xor a - ld [wca44], a - call RandomUnder246 - ld [wcdd7], a - ld a, $05 - ld [wCurPartyLevel], a - callab AddPokemonToBox - ld a, [wcdd7] - ld [wMonDexIndex], a - callab Functiondd5c - pop af - dec a - jr nz, .loop - ret - -RandomUnder246:: ; 5818 -.loop - call Random - and a - jr z, .loop - cp $F6 - jr nc, .loop - ret - -FillTMs:: ; 5823 - ld b, $39 - ld a, $01 - ld hl, wTMsHMs -.loop - ld [hl+], a - dec b - jr nz, .loop - ret - -DebugGiveKeyItems:: ; 582F - ld hl, DebugKeyItemsList - ld de, wKeyItems - ld c, $FF -.loop - inc c - ld a, [hl+] - ld [de], a - inc de - cp $FF - jr nz, .loop - ld a, c - ld [wNumKeyItems], a - ret - -DebugKeyItemsList:: ; 5844 - db ITEM_TM_HOLDER - db ITEM_BALL_HOLDER - db ITEM_BAG - db ITEM_BICYCLE - db $FF - -DemoSetUpPlayer:: ; 5849 - ld hl, wPlayerName - ld de, DemoPlayerName - call CopyString - ld hl, wRivalName - ld de, DemoRivalName - call CopyString - call Function40fd - ld de, DemoItemList - call FillBagWithList - call GiveRandomJohto - ret - -DemoItemList:: ; 5868 - db ITEM_POKE_BALL, $05 - db ITEM_POTION, $0A - db ITEM_FULL_HEAL, $0A - db ITEM_STIMULUS_ORB, $01 - db ITEM_FOCUS_ORB, $01 - db $FF - -DemoPlayerName:: ; 5873 - db "サトシ@" - -DemoRivalName:: ; 5877 - db "シゲル@" - -OakSpeechDemo:: ; 587B - text "ようこそ" - line "ポケット モンスターの せかいへ!" - cont "ごぞんじ わしが オーキドじゃ!" - - para "きょう きみに きてもらったのは" - line "ほかでもない" - cont "あたらしい ずかんづくりを" - cont "てつだって ほしいのじゃ!" - - para "もちろん" - line "きみの パートナーとなる ポケモンと" - cont "りュックは ようい しておる" - - para "りュックの なかには" - line "キズぐすりと" - cont "モンスターボールが" - cont "はいっておるから あんしんじゃ!" - - para "すでに きみの ライバルは" - line "しゅっぱつ しとる" - - para "まけないよう がんばって くれい!" - prompt - -OakSpeech1:: ; 5956 - text "いやあ またせた!" - - para "ポケット モンスターの せかいへ" - line "ようこそ!" - - para "わたしの なまえは オーキド" - - para "みんなからは # はかせと" - line "したわれて おるよ" - prompt - -OakSpeech2:: ; 599F - text "きみも もちろん" - line "しっているとは おもうが" - - para "この せかいには" - line "ポケット モンスターと よばれる" - cont "いきもの たちが" - cont "いたるところに すんでいる!" - prompt - -OakSpeech3:: ; 59E8 - text "その # という いきものを" - line "ひとは ぺットに したり" - cont "しょうぶに つかったり" - cont "そして・・・" - - para "わたしは この #の" - line "けんきゅうを してる というわけだ" - prompt - -OakSpeech4:: ; 5A35 - text "では はじめに きみの なまえを" - line "おしえて もらおう!" - prompt - -OakSpeech5:: ; 5A52 - text "そして この しょうねんは" - line "きみの おさななじみであり" - cont"ライバルである" - - para "・・・えーと?" - line "なまえは なんて いったかな?" - prompt - -OakSpeech6:: ; 5A8F - text "さて きみの きねんすべき" - line "たびだちのひを" - cont "きろくしておこう!" - - para "じかんも なるべく せいかくにな!" - prompt - -OakSpeech7:: ; 5AC2 - text "<PLAYER>!" - - para "いよいよ これから" - line "きみの ものがたりの はじまりだ!" - - para "ゆめと ぼうけんと!" - line "ポケット モンスターの せかいへ!" - - para "レッツ ゴー!" - done - -SetPlayerNamesDebug:: ; 5B07 - ld hl, DebugPlayerName - ld de, wPlayerName - call CopyNameDebug - ld hl, DebugRivalName - ld de, wRivalName - -CopyNameDebug: - ld bc, PLAYER_NAME_LENGTH - call CopyBytes - ret - -DebugPlayerName: ; 5B1D - db "コージ@" - -DebugRivalName: ; 5B21 - db "レッド@" - -ChoosePlayerName:: ; 5B25 - call PanPortraitRight - ld hl, PlayerNameMenuHeader - call NamingWindow - ld a, [wMenuCursorY] - dec a - jr z, .loop - ld de, wPlayerName - call SaveCustomName - jr .farjump - -.loop - ld b, $01 - ld de, wPlayerName - callba Function113f4 - ld a, [wPlayerName] - cp "@" - jr z, .loop - - call RotateThreePalettesRight - call ClearTileMap - call LoadFontExtra - call WaitBGMap - ld de, $4D10 - ld bc, $1200 - call IntroDisplayPicCenteredOrUpperRight - call RotateThreePalettesLeft -.farjump - ld hl, ChoosePlayerNameEndText - call PrintText - ret - -ChoosePlayerNameEndText: ; 5B6F - text "ふむ・・・" - line "<PLAYER> と いうんだな!" - prompt - -PlayerNameMenuHeader: ; 5B81 - db MENU_BACKUP_TILES ; flags - menu_coords 00, 00, 10, 11 - dw PlayerNameMenuData - db 01 ; initial selection - -PlayerNameMenuData; 5B89 - db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B - db 04 ; items - db "じぶんできめる@" - db "ゴールド@" - db "サトシ@" - db "ジャック@" - db 3 ; x offset for the title string - db "なまえこうほ@" - -ChooseRivalName:: ; 5BA9 - call PanPortraitRight - ld hl, RivalNameMenuHeader - call NamingWindow - ld a, [wMenuCursorY] - dec a - jr z, .loop - ld de, wRivalName - call SaveCustomName - jr .farjump - -.loop - ld b, $02 - ld de, wRivalName - callba Function113f4 ; manual text entry box? - ld a, [wRivalName] - cp "@" - jr z, .loop - - call RotateThreePalettesRight - call ClearTileMap - call LoadFontExtra - call WaitBGMap - ld de, $4BD4 - ld bc, $1200 - call IntroDisplayPicCenteredOrUpperRight - call RotateThreePalettesLeft -.farjump - ld hl, ChooseRivalNameEndText - call PrintText - ret - -ChooseRivalNameEndText: ; 5BF3 - text "そうか そうだったな" - line "<RIVAL> という なまえだ" - prompt - -RivalNameMenuHeader: ; 5C0A - db MENU_BACKUP_TILES ; flags - menu_coords 00, 00, 10, 11 - dw RivalNameMenuData - db 01 ; initial selection - -RivalNameMenuData: ; 5C12 - db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B - db 04 ; items - db "じぶんできめる@" - db "シルバー@" - db "シゲル@" - db "ジョン@" - db 3 - db "なまえこうほ@" - -MomNamePrompt:: ; 5C31 - ld hl, MomNameMenuHeader - call NamingWindow - ld a, [wMenuCursorY] - dec a - jr z, .loop - ld de, wMomsName - call SaveCustomName - jr .escape - -.loop - ld b, $03 - ld de, wMomsName - callba Function113f4 - ld a, [wMomsName] - cp "@" - jr z, .loop - - call ClearPalettes - call ClearTileMap - callab Function140d9 - call LoadFontExtra - call GetMemSGBLayout - call WaitBGMap -.escape - ret - -MomNameMenuHeader: ; 5C71 - db MENU_BACKUP_TILES ; flags - menu_coords 00, 00, 10, 11 - dw .MomNameMenuData - db 01 ; initial selection - -.MomNameMenuData: ; 5C79 - db STATICMENU_CURSOR | STATICMENU_PLACE_TITLE | STATICMENU_DISABLE_B - db 04 ; items - db "じぶんで きめる@" - db "おかあさん@" - db "ママ@" - db "かあちゃん@" - db 3 - db "なまえこうほ@" - -NamingWindow:: ; 5C9B - ; loads the menu header put into hl - call LoadMenuHeader - call VerticalMenu - ld a, [wMenuCursorY] - dec a - call CopyNameFromMenu - call CloseWindow - ret - -SaveCustomName:: ; 5CAC - ld hl, wcd31 - ld bc, PLAYER_NAME_LENGTH - call CopyBytes - ret - -PanPortraitRight:: ; 5CB6 - hlcoord 5, 4 - ld d, $06 - ld e, $7E - ld b, d - ld c, e - ld d, $00 - add hl, de -.loop - xor a - ldh [hBGMapMode], a - push hl - push bc -.innerLoop - ;pans all the tiles onscreen to the right one - ld a, [hl+] - ld [hl-], a - dec hl - dec c - jr nz, .innerLoop - - call WaitBGMap - pop bc - pop hl - inc hl - dec b ; passed c - how many tiles right to pan? - jr nz, .loop - ret - -PanPortraitLeft:: ; 5CD7 - hlcoord 12, 4 - ld b, $06 - ld c, $7E -.loop - xor a - ldh [hBGMapMode], a - push hl - push bc -.innerloop - ld a, [hl-] - ld [hl+], a - inc hl - dec c - jr nz, .innerloop - - call WaitBGMap - pop bc - pop hl - inc hl - dec b - jr nz, .loop - ret - -MenuCallSettings:: ; 5CF3 - call SettingsScreen - ret - -FadeInIntroPic: ; 5CF7 - ld hl, IntroFadePalettes - ld b, 6 -.next - ld a, [hl+] - ldh [rBGP], a - ld c, 10 - call DelayFrames - dec b - jr nz, .next - ret - -IntroFadePalettes: - db %01010100 - db %10101000 - db %11111100 - db %11111000 - db %11110100 - db %11100100 - -MovePicLeft: ; 5D0E - ld a, 119 - ldh [hWX], a - call DelayFrame - - ld a, %11100100 - ldh [rBGP], a -.next - call DelayFrame - ldh a, [hWX] - sub 8 - cp $FF - ret z - ldh [hWX], a - jr .next - -IntroDisplayPicCenteredOrUpperRight:: ; 5D27 -; b = bank -; de = address of compressed pic -; c: 0 = centred, non-zero = upper-right - ld a, c - and a - hlcoord 13, 4 - jr nz, .skip - hlcoord 6, 4 -.skip - push hl - ld a, b - call UncompressSpriteFromDE - ld a, $00 - call OpenSRAM - ld hl, sSpriteBuffer1 - ld de, sSpriteBuffer0 - ld bc, DOUBLESPRITEBUFFERSIZE - call CopyBytes - call CloseSRAM - ld de, VRAM_Begin + $1000 - call InterlaceMergeSpriteBuffers - pop hl - xor a - ldh [hGraphicStartTile], a - ld bc, $0707 - predef PlaceGraphic - ret - -LoadStartingSprites: ; 5D5D - ld de, GoldSpriteGFX - lb bc, BANK(GoldSpriteGFX), $0C - ld hl, VRAM_Begin - call Request2bpp - ld hl, wVirtualOAM - ld de, GameStartSprites - ld c, $04 -.loop - ld a, [de] - inc de - ld [hl+], a - ld a, [de] - inc de - ld [hl+], a - ld a, [de] - inc de - ld [hl+], a - xor a - ld [hl+], a - dec c - jr nz, .loop - ret - -GameStartSprites: ; 5D80 - db $50, $48, $00 - db $50, $50, $01 - db $58, $48, $02 - db $58, $50, $03 - -; 5D8C
\ No newline at end of file +; 558D
\ No newline at end of file |
