diff options
Diffstat (limited to 'src/engine')
-rw-r--r-- | src/engine/bank01.asm | 32 | ||||
-rw-r--r-- | src/engine/bank02.asm | 241 | ||||
-rw-r--r--[-rwxr-xr-x] | src/engine/bank03.asm | 1224 | ||||
-rw-r--r-- | src/engine/bank04.asm | 153 | ||||
-rw-r--r-- | src/engine/bank06.asm | 94 | ||||
-rw-r--r-- | src/engine/bank07.asm | 124 | ||||
-rw-r--r-- | src/engine/bank20.asm | 36 | ||||
-rw-r--r-- | src/engine/effect_functions.asm | 12 | ||||
-rw-r--r-- | src/engine/home.asm | 32 |
9 files changed, 1424 insertions, 524 deletions
diff --git a/src/engine/bank01.asm b/src/engine/bank01.asm index 081ae3a..9cdb098 100644 --- a/src/engine/bank01.asm +++ b/src/engine/bank01.asm @@ -510,7 +510,7 @@ OpenActivePokemonScreen: ; 4376 (1:4376) ; triggered by selecting the "Pkmn Power" item in the duel menu DuelMenu_PkmnPower: ; 438e (1:438e) - call $6431 + call Func_6431 jp c, DuelMainInterface call UseAttackOrPokemonPower jp DuelMainInterface @@ -1027,7 +1027,7 @@ EnergyDiscardCardListParameters: ; 46f3 (1:46f3) db 4 ; number of items selectable without scrolling db SYM_CURSOR_R ; cursor tile number db SYM_SPACE ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 ; triggered by selecting the "Attack" item in the duel menu DuelMenu_Attack: ; 46fc (1:46fc) @@ -1168,28 +1168,28 @@ AttackMenuParameters: ; 47e4 (1:47e4) db 2 ; number of items db SYM_CURSOR_R ; cursor tile number db SYM_SPACE ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 ; display the card page with id at wMovePageNumber of wLoadedCard1 -DisplayMovePage: ; $47ec (1:47ec) +DisplayMovePage: ; 47ec (1:47ec) ld a, [wMovePageNumber] ld hl, MovePageDisplayPointerTable jp JumpToFunctionInTable -MovePageDisplayPointerTable: ; $47f5 (1:47f5) +MovePageDisplayPointerTable: ; 47f5 (1:47f5) dw DisplayMovePage_Move1Page1 ; MOVEPAGE_MOVE1_1 dw DisplayMovePage_Move1Page2 ; MOVEPAGE_MOVE1_2 dw DisplayMovePage_Move2Page1 ; MOVEPAGE_MOVE2_1 dw DisplayMovePage_Move2Page2 ; MOVEPAGE_MOVE2_2 ; display MOVEPAGE_MOVE1_1 -DisplayMovePage_Move1Page1: ; $47fd (1:47fd) +DisplayMovePage_Move1Page1: ; 47fd (1:47fd) call DisplayCardPage_PokemonMove1Page1 jr SwitchMovePage ; display MOVEPAGE_MOVE1_2 if it exists. otherwise return in order ; to switch back to MOVEPAGE_MOVE1_1 and display it instead. -DisplayMovePage_Move1Page2: ; $4802 (1:4802) +DisplayMovePage_Move1Page2: ; 4802 (1:4802) ld hl, wLoadedCard1Move1Description + 2 ld a, [hli] or [hl] @@ -1198,13 +1198,13 @@ DisplayMovePage_Move1Page2: ; $4802 (1:4802) jr SwitchMovePage ; display MOVEPAGE_MOVE2_1 -DisplayMovePage_Move2Page1: ; $480d (1:480d) +DisplayMovePage_Move2Page1: ; 480d (1:480d) call DisplayCardPage_PokemonMove2Page1 jr SwitchMovePage ; display MOVEPAGE_MOVE2_2 if it exists. otherwise return in order ; to switch back to MOVEPAGE_MOVE2_1 and display it instead. -DisplayMovePage_Move2Page2: ; $4812 (1:4812) +DisplayMovePage_Move2Page2: ; 4812 (1:4812) ld hl, wLoadedCard1Move2Description + 2 ld a, [hli] or [hl] @@ -1214,7 +1214,7 @@ DisplayMovePage_Move2Page2: ; $4812 (1:4812) ; switch to MOVEPAGE_MOVE*_2 if in MOVEPAGE_MOVE*_1 and vice versa. ; sets the next move page to switch to if Right or Left are pressed. -SwitchMovePage: ; $481b (1:481b) +SwitchMovePage: ; 481b (1:481b) ld hl, wMovePageNumber ld a, $01 xor [hl] @@ -2152,7 +2152,7 @@ NoBasicPokemonCardListParameters: ; 4e37 (1:4e37) db 7 ; number of items selectable without scrolling db SYM_CURSOR_R ; cursor tile number db SYM_SPACE ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 ; used only during the practice duel with Sam. ; displays the list with the player's cards in hand, and the player's name above the list. @@ -2664,7 +2664,7 @@ DoPracticeDuelAction: ; 51e7 (1:51e7) jp JumpToFunctionInTable PracticeDuelActionTable: ; 51f8 (1:51f8) - dw $0000 + dw NULL dw PracticeDuel_DrawSevenCards dw PracticeDuel_PlayGoldeen dw PracticeDuel_PutStaryuInBench @@ -3484,7 +3484,7 @@ ItemSelectionMenuParameters: ; 5708 (1:5708) db 2 ; number of items db SYM_CURSOR_R ; cursor tile number db SYM_SPACE ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 CardListParameters: ; 5710 (1:5710) db 1, 3 ; cursor x, cursor y @@ -5709,7 +5709,7 @@ Func_6423: ; 6423 (1:6423) Func_6431: ; 6431 (1:6431) xor a ld [wSelectedDuelSubMenuItem], a - + Func_6435: call Func_64b0 ld hl, PlayAreaScreenMenuParameters_ActivePokemonIncluded @@ -8262,7 +8262,7 @@ Func_73d8: ; 73d8 (1:73d8) ld [hli], a ld [hl], a .asm_73ec - ld hl, $7408 + ld hl, Data_7408 call PlaceTextItems call DrawDuelistPortraitsAndNames ld a, [wOpponentDeckID] @@ -8272,8 +8272,8 @@ Func_73d8: ; 73d8 (1:73d8) lb bc, 15, 10 call WriteTwoByteNumberInTxSymbolFormat ret -; 0x7408 +Data_7408: ; 7408 (1:7408) INCROM $7408, $7415 Func_7415: ; 7415 (1:7415) diff --git a/src/engine/bank02.asm b/src/engine/bank02.asm index 1e6179b..c72af73 100644 --- a/src/engine/bank02.asm +++ b/src/engine/bank02.asm @@ -1379,8 +1379,8 @@ Func_8764: ; 8764 (2:4764) call LoadCursorTile ; reset ce5c and ce56 xor a - ld [$ce5c], a - ld [$ce56], a + ld [wce5c], a + ld [wce56], a ; draw play area screen for the turn player ldh a, [hWhoseTurn] @@ -1389,13 +1389,13 @@ Func_8764: ; 8764 (2:4764) call DrawYourOrOppPlayAreaScreen .swap - ld a, [$ce56] + ld a, [wce56] or a jr z, .draw_menu ; if ce56 != 0, swap turn call SwapTurn xor a - ld [$ce56], a + ld [wce56], a .draw_menu xor a @@ -1430,7 +1430,7 @@ Func_8764: ; 8764 (2:4764) ld l, a call DrawYourOrOppPlayAreaScreen xor a - ld [$ce56], a + ld [wce56], a .text call DrawWideTextBox @@ -1482,7 +1482,7 @@ PlayAreaMenuParameters: ; 8811 (2:4811) db 2 ; number of items db SYM_CURSOR_R ; cursor tile number db SYM_SPACE ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 Func_8819: ; 8819 (2:4819) ld a, [wPrizeCardCursorPosition] @@ -1506,7 +1506,7 @@ Func_8819: ; 8819 (2:4819) ld a, c add $40 - ld [$ce5c], a + ld [wce5c], a ld a, c add DUELVARS_PRIZE_CARDS call GetTurnDuelistVariable @@ -1524,7 +1524,7 @@ Func_8849: ; 8849 (2:4849) call CreateDeckCardList ret c ld a, %01111111 - ld [$ce5c], a + ld [wce5c], a ld a, [wDuelTempList] ; fallthrough @@ -1535,11 +1535,11 @@ Func_8849: ; 8849 (2:4849) ; with upper bit set if turn was swapped Func_8855: ; 8855 (2:4855) ld b, a - ld a, [$ce5c] + ld a, [wce5c] or a jr nz, .display ld a, b - ld [$ce5c], a + ld [wce5c], a .display ld a, b call LoadCardDataToBuffer1_FromDeckIndex @@ -1550,15 +1550,15 @@ Func_8855: ; 8855 (2:4855) pop af ; if ce56 != 0, swap turn - ld a, [$ce56] + ld a, [wce56] or a jr z, .dont_swap call SwapTurn - ld a, [$ce5c] + ld a, [wce5c] or %10000000 ret .dont_swap - ld a, [$ce5c] + ld a, [wce5c] ret Func_8883: ; 8883 (2:4883) @@ -1597,7 +1597,7 @@ Func_8883: ; 8883 (2:4883) call SwapTurn ld a, $01 - ld [$ce56], a + ld [wce56], a jp Func_8764.loop_2 Func_8764_TransitionTable: ; 88c2 (2:48c2) @@ -1866,13 +1866,13 @@ Func_8cd4: ; 8cd4 (2:4cd4) Func_8cf9: ; 8cf9 (2:4cf9) call EnableSRAM xor a - ld hl, $b703 + ld hl, sb703 ld [hli], a inc a ld [hli], a ld [hli], a ld [hl], a - ld [$b701], a + ld [sb701], a call DisableSRAM Func_8d0b: ; 8d0b (2:4d0b) ld hl, Unknown_8d15 @@ -2106,7 +2106,7 @@ Func_8f05: ; 8f05 (2:4f05) ret Func_8f38: ; 8f38 (2:4f38) - ld hl, $b701 + ld hl, sb701 call EnableSRAM ld a, [hli] ld h, [hl] @@ -2127,7 +2127,7 @@ Func_8f38: ; 8f38 (2:4f38) inc hl ld [hl], $20 inc hl - ld de, $c592 + ld de, wc592 ld a, [de] inc de ld [hli], a @@ -2138,7 +2138,7 @@ Func_8f38: ; 8f38 (2:4f38) ld [hli], a xor a ld [hl], a - ld hl, $b701 + ld hl, sb701 call EnableSRAM ld e, [hl] inc hl @@ -2447,17 +2447,17 @@ Func_9152: ; 9152 (2:5152) Func_9168: ; 9168 (2:5168) ld [hffb5], a call Func_8d56 - ld de, $0000 - ld bc, $1404 + lb de, 0, 0 + lb bc, 20, 4 call DrawRegularTextBox - ld de, $0003 - ld bc, $1404 + lb de, 0, 3 + lb bc, 20, 4 call DrawRegularTextBox - ld de, $0006 - ld bc, $1404 + lb de, 0, 6 + lb bc, 20, 4 call DrawRegularTextBox - ld de, $0009 - ld bc, $1404 + lb de, 0, 9 + lb bc, 20, 4 call DrawRegularTextBox ld hl, Unknown_9242 call PlaceTextItems @@ -2709,13 +2709,19 @@ CalculateOnesAndTensDigits: ; 98a6 (2:58a6) pop af ret - INCROM $98c7, $9e41 + INCROM $98c7, $9a6d + +Func_9a6d: ; 9a6d (2:5a6d) + INCROM $9a6d, $9e41 Func_9e41: ; 9e41 (2:5e41) INCROM $9e41, $a288 Func_a288: ; a288 (2:6288) - INCROM $a288, $b177 + INCROM $a288, $adfe + +Func_adfe: ; adfe (2:6dfe) + INCROM $adfe, $b177 Func_b177: ; b177 (2:7177) INCROM $b177, $b19d @@ -2728,20 +2734,20 @@ Func_b19d: ; b19d (2:719d) ld [hl], e inc hl ld [hl], d - call $7379 + call Func_b379 ld a, $3c ld [wd0a5], a xor a .asm_b1b3 - ld hl, $76fb - call $5a6d - call $7704 - call $7545 + ld hl, Unknown_b6fb + call Func_9a6d + call Func_b704 + call Func_b545 ldtx hl, PleaseSelectDeckText call DrawWideTextBox_PrintText ld de, $0224 ; PleaseSelectDeckText? - call $7285 - call $729f + call Func_b285 + call Func_b29f jr c, .asm_b1b3 cp $ff ret z @@ -2751,15 +2757,16 @@ Func_b19d: ; b19d (2:719d) ld [wd088], a call ResetCheckMenuCursorPositionAndBlink call DrawWideTextBox - ld hl, $7274 + ld hl, Unknown_b274 call PlaceTextItems +.asm_b1e7 call DoFrame call HandleCheckMenuInput - jp nc, $71e7 + jp nc, .asm_b1e7 cp $ff jr nz, .asm_b1fa ld a, [wd086] - jp $71b3 + jp .asm_b1b3 .asm_b1fa ld a, [wCheckMenuCursorYPosition] @@ -2768,66 +2775,108 @@ Func_b19d: ; b19d (2:719d) add [hl] or a jr nz, .asm_b22c - call $735b + call Func_b35b jr nc, .asm_b216 - call $7592 + call Func_b592 ld a, [wd086] - jp c, $71b3 + jp c, .asm_b1b3 jr .asm_b25e .asm_b216 - ld hl, $0272 + ldtx hl, OKIfFileDeletedText call YesOrNoMenuWithText ld a, [wd086] jr c, .asm_b1b3 - call $7592 + call Func_b592 ld a, [wd086] - jp c, $71b3 + jp c, .asm_b1b3 jr .asm_b25e .asm_b22c cp $1 jr nz, .asm_b24c - call $735b + call Func_b35b jr c, .asm_b240 - call $76ca + call Func_b6ca ld a, [wd086] - jp c, $71b3 + jp c, .asm_b1b3 jr .asm_b25e .asm_b240 ld hl, WaitForVBlank call DrawWideTextBox_WaitForInput ld a, [wd086] - jp $71b3 + jp .asm_b1b3 .asm_b24c cp $2 jr nz, .asm_b273 - call $735b + call Func_b35b jr c, .asm_b240 - call $77c6 + call Func_b7c6 ld a, [wd086] - jp nc, $71b3 + jp nc, .asm_b1b3 .asm_b25e ld a, [wd087] ld [wcea1], a - call $7379 - call $7704 - call $7545 + call Func_b379 + call Func_b704 + call Func_b545 ld a, [wd086] - jp $71b3 + jp .asm_b1b3 .asm_b273 ret -; 0xb274 - INCROM $b274, $ba04 +Unknown_b274: ; b274 (2:7274) + INCROM $b274, $b285 + +Func_b285: ; b285 (2:7285) + INCROM $b285, $b29f + +Func_b29f: ; b29f (2:729f) + INCROM $b29f, $b35b + +Func_b35b: ; b35b (2:735b) + INCROM $b35b, $b379 + +Func_b379: ; b379 (2:7379) + INCROM $b379, $b3fe + +Unknown_b3fe: ; b3fe (2:73fe) + INCROM $b3fe, $b545 + +Func_b545: ; b545 (2:7545) + INCROM $b545, $b592 + +Func_b592: ; b592 (2:7592) + INCROM $b592, $b625 + +Func_b625: ; b625 (2:7625) + INCROM $b625, $b644 + +Func_b644: ; b644 (2:7644) + INCROM $b644, $b653 + +Func_b653: ; b653 (2:7653) + INCROM $b653, $b6ca + +Func_b6ca: ; b6ca (2:76ca) + INCROM $b6ca, $b6fb + +Unknown_b6fb: ; b6fb (2:76fb) + INCROM $b6fb, $b704 + +Func_b704: ; b704 (2:7704) + INCROM $b704, $b7c6 + +Func_b7c6: ; b7c6 (2:77c6) + INCROM $b7c6, $ba04 Func_ba04: ; ba04 (2:7a04) ld a, [wd0a9] - ld hl, $7b83 + ld hl, Data_bb83 sla a ld c, a ld b, $0 @@ -2840,17 +2889,20 @@ Func_ba04: ; ba04 (2:7a04) ld [de], a xor a ld [wcea1], a - call $7b97 + call Func_bb97 ld a, $5 ld [wd0a5], a xor a - ld hl, $7b6e + ; fallthrough + +Func_ba25: ; ba25 (2:7a25) + ld hl, Func_bb6e call InitializeMenuParameters ldtx hl, PleaseSelectDeckText call DrawWideTextBox_PrintText ld a, $5 ld [wNamingScreenKeyboardHeight], a - ld hl, $73fe + ld hl, Unknown_b3fe ld d, h ld a, l ld hl, wcece @@ -2882,7 +2934,7 @@ Func_ba04: ; ba04 (2:7a04) ld b, $0 ld hl, wd00d add hl, bc - call $7653 + call Func_b653 ld a, [hli] ld h, [hl] ld l, a @@ -2893,19 +2945,19 @@ Func_ba04: ; ba04 (2:7a04) ld e, l ld a, [hl] pop hl - call $7644 + call Func_b644 or a jr z, .asm_ba40 ld a, $1 call PlaySFXConfirmOrCancel - call $7653 + call Func_b653 call Func_8e1f - call $7644 + call Func_b644 ld a, [wd087] ld [wcea1], a - call $7b97 + call Func_bb97 ld a, [wd086] - jp $7a25 + jp Func_ba25 .asm_baa3 call DrawCursor2 @@ -2915,21 +2967,22 @@ Func_ba04: ; ba04 (2:7a04) ld [wd086], a ldh a, [hCurMenuItem] cp $ff - jp z, $7b0d + jp z, .asm_bb0d ld [wd088], a call ResetCheckMenuCursorPositionAndBlink xor a ld [wce5e], a call DrawWideTextBox - ld hl, $7b76 + ld hl, Data_bb76 call PlaceTextItems +.asm_bacc call DoFrame - call $46ac - jp nc, $7acc + call HandleCheckMenuInput_YourOrOppPlayArea + jp nc, .asm_bacc cp $ff jr nz, .asm_badf ld a, [wd086] - jp $7a25 + jp Func_ba25 .asm_badf ld a, [wCheckMenuCursorYPosition] @@ -2938,20 +2991,21 @@ Func_ba04: ; ba04 (2:7a04) add [hl] or a jr nz, .asm_bb09 - call $7653 - call $77c6 - call $7644 + call Func_b653 + call Func_b7c6 + call Func_b644 ld a, [wd086] - jp nc, $7a25 + jp nc, Func_ba25 ld a, [wd087] ld [wcea1], a - call $7b97 + call Func_bb97 ld a, [wd086] - jp $7a25 + jp Func_ba25 .asm_bb09 cp $1 jr nz, .asm_bb12 +.asm_bb0d xor a ld [wd0a4], a ret @@ -2979,7 +3033,7 @@ Func_ba04: ; ba04 (2:7a04) ld a, [hl] ld [bc], a pop hl - call $7653 + call Func_b653 ld a, [hli] ld h, [hl] ld l, a @@ -2990,20 +3044,29 @@ Func_ba04: ; ba04 (2:7a04) ld e, l ld a, [hl] pop hl - call $7644 + call Func_b644 or a - jp z, $7a40 + jp z, .asm_ba40 ld a, $1 call PlaySFXConfirmOrCancel - call $7653 + call Func_b653 xor a - call $6dfe - call $7644 + call Func_adfe + call Func_b644 ld a, [wd087] ld [wcea1], a - call $7b97 + call Func_bb97 ld a, [wd086] - jp $7a25 -; 0xbb6e + jp Func_ba25 + +Func_bb6e: ; bb6e (2:7b6e) + INCROM $bb6e, $bb76 + +Data_bb76: ; bb76 (2:7b76) + INCROM $bb76, $bb83 + +Data_bb83: ; bb83 (2:7b83) + INCROM $bb83, $bb97 - INCROM $bb6e, $c000 +Func_bb97: ; bb97 (2:7b97) + INCROM $bb97, $c000 diff --git a/src/engine/bank03.asm b/src/engine/bank03.asm index 2e3f0d9..3608d97 100755..100644 --- a/src/engine/bank03.asm +++ b/src/engine/bank03.asm @@ -468,7 +468,16 @@ Func_c36a: ; c36a (3:436a) ret ; 0xc37a - INCROM $c37a, $c41c + INCROM $c37a, $c38f + +Func_c38f: ; c38f (3:438f) + INCROM $c38f, $c3ca + +Func_c3ca: ; c3ca (3:43ca) + INCROM $c3ca, $c3ee + +Func_c3ee: ; c3ee (3:43ee) + INCROM $c3ee, $c41c Func_c41c: ; c41c (3:441c) ld a, [wd332] @@ -1071,7 +1080,7 @@ PC_c7ea: ; c7ea (3:47ea) call DoFrameIfLCDEnabled ldtx hl, TurnedPCOnText call PrintScrollableText_NoTextBoxLabel - call $484e + call Func_c84e .asm_c801 ld a, $1 call Func_c29b @@ -1088,9 +1097,9 @@ PC_c7ea: ; c7ea (3:47ea) jr z, .asm_c82f call Func_c2a3 ld a, [wd0b9] - ld hl, $4846 + ld hl, PointerTable_c846 call JumpToFunctionInTable - ld hl, $484e + ld hl, Func_c84e call Func_c32b jr .asm_c801 .asm_c82f @@ -1103,9 +1112,27 @@ PC_c7ea: ; c7ea (3:47ea) ld [wd112], a call Func_39fc ret -; 0xc846 - INCROM $c846, $c891 +PointerTable_c846: ; c846 (3:4846) + dw Func_c859 + dw Func_c86d + dw Func_c872 + dw Func_c877 + +Func_c84e: ; c84e (3:484e) + INCROM $c84e, $c859 + +Func_c859: ; c859 (3:4859) + INCROM $c859, $c86d + +Func_c86d: ; c86d (3:486d) + INCROM $c86d, $c872 + +Func_c872: ; c872 (3:4872) + INCROM $c872, $c877 + +Func_c877: ; c877 (3:4877) + INCROM $c877, $c891 Func_c891: ; c891 (3:4891) push hl @@ -1161,7 +1188,7 @@ Func_c8ba: ; c8ba (3:48ba) call Func_c241 call Func_c915 call DoFrameIfLCDEnabled - call $2c62 + call PrintScrollableText_WithTextBoxLabel ret Func_c8ed: ; c8ed (3:48ed) @@ -1201,7 +1228,7 @@ Func_c915: ; c915 (3:4915) ld de, $000c ld bc, $1406 call AdjustCoordinatesForBGScroll - call $43ca + call Func_c3ca pop de pop bc ret @@ -1804,9 +1831,10 @@ SetScriptPointer: ; cc8b (3:4c8b) inc hl ld [hl], b ret -; 0xcc92 - INCROM $cc92, $cc96 +GetScriptArgs5AfterPointer: ; cc92 (3:4c92) + ld a, $5 + jr GetScriptArgsAfterPointer GetScriptArgs1AfterPointer: ; cc96 (3:4c96) ld a, $1 @@ -2397,7 +2425,11 @@ Func_cfd4: ; cfd4 (3:4fd4) jp IncreaseScriptPointerBy1 Data_d006: ; d006 (3:5006) - INCROM $d006, $d00b + db GRAVELER + db OMASTAR + db PARASECT + db RAPIDASH + db WEEZING Func_d00b: ; d00b (3:500b) sla c @@ -2549,11 +2581,11 @@ Func_d103: ; d103 (3:5103) ld [wTempNPC], a call FindLoadedNPC jr c, .asm_d119 - call $54d1 + call ScriptCommand_JumpIfFlagNonzero2.passTryJump jr .asm_d11c .asm_d119 - call $54e6 + call ScriptCommand_JumpIfFlagZero2.fail .asm_d11c pop af @@ -2581,7 +2613,7 @@ Func_d135: ; d135 (3:5135) rlca ld c, a ld b, $0 - ld hl, $5151 + ld hl, MapNames - 2 add hl, bc ld e, [hl] inc hl @@ -2592,7 +2624,19 @@ Func_d135: ; d135 (3:5135) ld [hl], d jp IncreaseScriptPointerBy2 - INCROM $d153, $d16b +MapNames: ; d153 (3:5153) + tx MasonLaboratoryMapNameText + tx MrIshiharasHouseMapNameText + tx FightingClubMapNameText + tx RockClubMapNameText + tx WaterClubMapNameText + tx LightningClubMapNameText + tx GrassClubMapNameText + tx PsychicClubMapNameText + tx ScienceClubMapNameText + tx FireClubMapNameText + tx ChallengeHallMapNameText + tx PokemonDomeMapNameText Func_d16b: ; d16b (3:516b) ld hl, wCurrentNPCNameTx @@ -2646,7 +2690,7 @@ Func_d1b3: ; d1b3 (3:51b3) ; fallthrough .asm_d1c3 - ld hl, $51dc + ld hl, TradeCardNames asm_d1c6: ld e, a add a @@ -2662,7 +2706,51 @@ asm_d1c6: ld [wTxRam2 + 1], a jp IncreaseScriptPointerBy1 - INCROM $d1dc, $d209 +TradeCardNames: ; d1dc (3:51dc) + db MEWTWO2 + tx MewtwoTradeCardName + + db MEW1 + tx MewTradeCardName + + db ARCANINE1 + tx ArcanineTradeCardName + + db PIKACHU3 + tx PikachuTradeCardName + + db PIKACHU4 + tx PikachuTradeCardName + + db SURFING_PIKACHU1 + tx SurfingPikachuTradeCardName + + db SURFING_PIKACHU2 + tx SurfingPikachuTradeCardName + + db ELECTABUZZ1 + tx ElectabuzzTradeCardName + + db SLOWPOKE1 + tx SlowpokeTradeCardName + + db MEWTWO3 + tx MewtwoTradeCardName + + db MEWTWO2 + tx MewtwoTradeCardName + + db MEW1 + tx MewTradeCardName + + db JIGGLYPUFF1 + tx JigglypuffTradeCardName + + db SUPER_ENERGY_RETRIEVAL + tx SuperEnergyRetrievalTradeCardName + + db FLYING_PIKACHU + tx FlyingPikachuTradeCardName Func_d209: ; d209 (3:5209) get_flag_value EVENT_FLAG_71 @@ -2696,13 +2784,16 @@ Func_d209: ; d209 (3:5209) LegendaryCards: ; d234 (3:5234) db ZAPDOS3 - tx Text03f0 + tx ZapdosLegendaryCardName + db MOLTRES2 - tx Text03f1 + tx MoltresLegendaryCardName + db ARTICUNO2 - tx Text03f2 + tx ArticunoLegendaryCardName + db DRAGONITE1 - tx Text03f3 + tx DragoniteLegendaryCardName Flags_d240: ; d240 (3:5240) db EVENT_FLAG_6D @@ -2726,39 +2817,37 @@ ScriptCommand_ChooseDeckToDuelAgainstMultichoice: ; d24c (3:524c) .multichoice_menu_args ; d25e dw NULL ; NPC title for textbox under menu - tx Text03f9 ; text for textbox under menu + tx SelectDeckToDuelText ; text for textbox under menu dw MultichoiceTextbox_ConfigTable_ChooseDeckToDuelAgainst ; location of table configuration in bank 4 db $03 ; the value to return when b is pressed dw wMultichoiceTextboxResult_ChooseDeckToDuelAgainst ; ram location to return result into dw .text_entries ; location of table containing text entries .text_entries ; d269 - tx Text03f6 - tx Text03f7 - tx Text03f8 + tx LightningAndFireDeckChoiceText + tx WaterAndFightingDeckChoiceText + tx GrassAndPsychicDeckChoiceText - INCROM $d26f, $d271 + dw NULL ScriptCommand_ChooseStarterDeckMultichoice: ; d271 (3:5271) ld hl, .multichoice_menu_args xor a call ShowMultichoiceTextbox jp IncreaseScriptPointerBy1 -; 0xd27b .multichoice_menu_args ; d27b dw NULL ; NPC title for textbox under menu - tx Text03fd ; text for textbox under menu + tx SelectDeckToTakeText ; text for textbox under menu dw MultichoiceTextbox_ConfigTable_ChooseDeckStarterDeck ; location of table configuration in bank 4 db $00 ; the value to return when b is pressed - dw $d693 ; ram location to return result into + dw wd693 ; ram location to return result into dw .text_entries ; location of table containing text entries .text_entries - tx Text03fa - tx Text03fb - tx Text03fc - + tx CharmanderAndFriendsDeckChoiceText + tx SquirtleAndFriendsDeckChoiceText + tx BulbasaurAndFriendsDeckChoiceText ; displays a textbox with multiple choices and a cursor. ; takes as an argument in h1 a pointer to a table @@ -2855,11 +2944,10 @@ ScriptCommand_ShowSamNormalMultichoice: ; d2f6 (3:52f6) xor a ld [wMultichoiceTextboxResult_Sam], a jp IncreaseScriptPointerBy1 -; 0xd30c .multichoice_menu_args ; d30c tx SamNPCName ; NPC title for textbox under menu - tx Text03fe ; text for textbox under menu + tx HowCanIHelpText ; text for textbox under menu dw SamNormalMultichoice_ConfigurationTable ; location of table configuration in bank 4 db $03 ; the value to return when b is pressed dw wMultichoiceTextboxResult_Sam ; ram location to return result into @@ -3002,9 +3090,9 @@ Func_d408: ; d408 (3:5408) ld [wd111], a jp IncreaseScriptPointerBy2 -Func_d40f: ; d40f (3:540f) +ScriptCommand_PlaySong: ; d40f (3:540f) ld a, c - call CallPlaySong + call ScriptPlaySong jp IncreaseScriptPointerBy2 ScriptCommand_PlaySFX: ; d416 (3:5416) @@ -3061,7 +3149,7 @@ ScriptCommand_JumpIfFlagZero1: ; d460 (3:5460) ld a, c call GetEventFlagValue or a - jr z, ScriptCommand_JumpIfFlagZero1.passTryJump + jr z, .passTryJump .fail call SetScriptControlByteFail @@ -3144,7 +3232,7 @@ ScriptCommand_JumpIfFlagNonzero2: ; d4ca (3:54ca) or a jr z, ScriptCommand_JumpIfFlagZero2.fail -.passTryJump: +.passTryJump call SetScriptControlBytePass call GetScriptArgs2AfterPointer jr z, .noJumpArgs @@ -3210,8 +3298,8 @@ MasonLaboratoryAfterDuel: ; d53b (3:553b) .after_duel_table db NPC_SAM db NPC_SAM - dw $568a - dw $569f + dw Script_BeatSam + dw Script_LostToSam db $00 MasonLabLoadMap: ; d549 (3:5549) @@ -3248,27 +3336,222 @@ ChallengeMachineObjectTable: ; d572 (3:5572) Script_ChallengeMachine: ; d57d (3:557d) start_script run_command Func_ccdc - tx Text05bd + tx ItsTheChallengeMachineText run_command Func_d43d quit_script_fully Script_Tech1: ; d583 (3:5583) - INCROM $d583, $d5ca + lb bc, 0, EnergyCardListEnd - EnergyCardList + ld hl, EnergyCardList +.count_loop + ld a, [hli] + call GetCardCountInCollection + add b + ld b, a + dec c + jr nz, .count_loop + ld a, b + cp 10 + jr c, .low_on_energies + + start_script + jump_if_flag_zero_2 EVENT_RECEIVED_LEGENDARY_CARD, NULL + print_variable_text Tech1MasterMedalExplanationText, Tech1AutoDeckMachineExplanationText + quit_script_fully + +.low_on_energies + ld c, EnergyCardListEnd - EnergyCardList + ld hl, EnergyCardList +.next_energy_card + ld b, 10 + ld a, [hli] +.add_loop + push af + call AddCardToCollection + pop af + dec b + jr nz, .add_loop + dec c + jr nz, .next_energy_card + + start_script + print_text_string Tech1FewEnergyCardsText + pause_song + play_song MUSIC_BOOSTER_PACK + print_text_string Tech1ReceivedEnergyCardsText + wait_for_song_to_finish + resume_song + print_text_quit_fully Tech1GoodbyeText + +EnergyCardList: ; d5c4 (3:55c4) + db GRASS_ENERGY + db FIRE_ENERGY + db WATER_ENERGY + db LIGHTNING_ENERGY + db FIGHTING_ENERGY + db PSYCHIC_ENERGY +EnergyCardListEnd: Script_Tech2: ; d5ca (3:55ca) - INCROM $d5ca, $d5d5 + start_script + jump_if_flag_zero_2 EVENT_RECEIVED_LEGENDARY_CARD, NULL + print_variable_text Tech2LegendaryCardsExplanationText, Tech2LegendaryCardsCongratsText + quit_script_fully Script_Tech3: ; d5d5 (3:55d5) - INCROM $d5d5, $d5e0 + start_script + jump_if_flag_zero_2 EVENT_RECEIVED_LEGENDARY_CARD, NULL + print_variable_text Tech3BoosterPackExplanationText, Tech3LegendaryCardsCongratsText + quit_script_fully Script_Tech4: ; d5e0 (3:55e0) - INCROM $d5e0, $d5f9 + start_script + jump_if_flag_zero_2 EVENT_RECEIVED_LEGENDARY_CARD, NULL + print_variable_text Tech4ClubsExplanationText, Tech4DefeatedTheGrandMastersText + quit_script_fully + +Preload_Tech5: ; d5eb (3:55eb) + get_flag_value EVENT_RECEIVED_LEGENDARY_CARD + or a + jr z, .skip + ld hl, wLoadNPCXPos + inc [hl] + inc [hl] +.skip + scf + ret Script_Tech5: ; d5f9 (3:55f9) - INCROM $d5f9, $d61d + start_script + jump_if_flag_zero_2 EVENT_RECEIVED_LEGENDARY_CARD, NULL + print_variable_text Tech5DiaryAndEmailExplanationText, Tech5ChallengeMachineExplanationText + quit_script_fully + +Preload_Sam: ; d604 (3:5604) + get_flag_value EVENT_FLAG_3E + cp $01 + jr nc, .skip + ld a, $0a + ld [wLoadNPCXPos], a + ld a, $08 + ld [wLoadNPCYPos], a + ld a, SOUTH + ld [wLoadNPCDirection], a +.skip + scf + ret Script_Sam: ; d61d (3:561d) - INCROM $d61d, $d727 + start_script + show_sam_normal_multichoice + close_text_box + jump_if_flag_equal EVENT_FLAG_75, $00, .ows_d63b + jump_if_flag_equal EVENT_FLAG_75, $02, Script_d6b0 + jump_if_flag_equal EVENT_FLAG_75, $03, .ows_d637 + print_text_string Text05cb + ask_question_jump Text05cc, .ows_d647 +.ows_d637 + print_text_string Text05cd + quit_script_fully + +.ows_d63b + print_text_string Text05ce + ask_question_jump Text05cf, .ows_d647 + print_text_string Text05d0 + quit_script_fully + +.ows_d647 + close_text_box + jump_if_player_coords_match 4, 12, .ows_above_sam + jump_if_player_coords_match 2, 14, .ows_left_of_sam +; ows_below_sam + set_player_direction WEST + move_player WEST, 1 + set_player_direction NORTH + move_player NORTH, 1 +.ows_left_of_sam + set_player_direction NORTH + move_player NORTH, 1 + set_player_direction EAST + move_player EAST, 1 +.ows_above_sam + set_player_direction EAST + move_player EAST, 1 + move_player EAST, 1 + move_player EAST, 1 + set_player_direction SOUTH + move_player SOUTH, 1 + set_player_direction WEST + move_active_npc NPCMovement_d889 + jump_if_flag_equal EVENT_FLAG_75, $00, .ows_d685 + start_battle PRIZES_2, SAMS_PRACTICE_DECK_ID, MUSIC_DUEL_THEME_1 + quit_script_fully + +.ows_d685 + start_battle PRIZES_2, SAMS_NORMAL_DECK_ID, MUSIC_DUEL_THEME_1 + quit_script_fully + +Script_BeatSam: ; d68a (3:568a) + start_script + jump_if_flag_equal EVENT_FLAG_3E, $01, Script_d82d + jump_if_flag_equal EVENT_FLAG_75, $01, Script_d6ad + print_text_string Text05d1 + give_booster_packs BOOSTER_ENERGY_RANDOM, NO_BOOSTER, NO_BOOSTER + print_text_quit_fully Text05d2 + +Script_LostToSam: ; d69f (3:569f) + start_script + jump_if_flag_equal EVENT_FLAG_3E, $01, Script_d82d + jump_if_flag_equal EVENT_FLAG_75, $01, Script_d6ad + print_text_quit_fully Text05d3 + +Script_d6ad: + print_text_quit_fully Text05d4 + +Script_d6b0: + print_text_string Text05d5 +.ows_d6b3 + close_text_box + show_sam_tutorial_multichoice + close_text_box + jump_if_flag_equal EVENT_FLAG_75, $07, Script_Sam.ows_d637 + jump_if_flag_equal EVENT_FLAG_75, $01, .ows_d6df + jump_if_flag_equal EVENT_FLAG_75, $02, .ows_d6e5 + jump_if_flag_equal EVENT_FLAG_75, $03, .ows_d6eb + jump_if_flag_equal EVENT_FLAG_75, $04, .ows_d6f1 + jump_if_flag_equal EVENT_FLAG_75, $05, .ows_d6f7 + jump_if_flag_equal EVENT_FLAG_75, $06, .ows_d6fd + print_text_string Text05d6 + script_jump .ows_d6b3 +.ows_d6df + print_text_string Text05d7 + script_jump .ows_d6b3 +.ows_d6e5 + print_text_string Text05d8 + script_jump .ows_d6b3 +.ows_d6eb + print_text_string Text05d9 + script_jump .ows_d6b3 +.ows_d6f1 + print_text_string Text05da + script_jump .ows_d6b3 +.ows_d6f7 + print_text_string Text05db + script_jump .ows_d6b3 +.ows_d6fd + print_text_string Text05dc + script_jump .ows_d6b3 + +Func_d703: ; d703 (3:5703) + get_flag_value EVENT_RECEIVED_LEGENDARY_CARD + or a + ret z + ld a, $0a + farcall Func_80ba4 + ret + +Preload_DrMason: ; d710 (3:5710) + INCROM $d710, $d727 Script_DrMason: ; d727 (3:5727) INCROM $d727, $d753 @@ -3381,9 +3664,12 @@ Script_d827: ; d827 (3:5827) start_script start_battle PRIZES_2, SAMS_PRACTICE_DECK_ID, MUSIC_DUEL_THEME_1 quit_script_fully -; 0xd82d - INCROM $d82d, $d834 +Script_d82d: + close_advanced_text_box + set_next_npc_and_script $01, AfterTutorialBattleScript + end_script_loop + ret AfterTutorialBattleScript: ; d834 (3:5834) start_script @@ -3414,8 +3700,7 @@ AfterTutorialBattleScript: ; d834 (3:5834) print_text_string Text05f4 close_text_box pause_song - run_command Func_d40f - try_give_medal_pc_packs + play_song MUSIC_BOOSTER_PACK run_command Func_ccdc tx Text05f5 wait_for_song_to_finish @@ -3440,6 +3725,7 @@ NPCMovement_d882: ; d882 (3:5882) db WEST db WEST db SOUTH +NPCMovement_d889: ; d889 (3:5889) db EAST | NO_MOVE db $ff @@ -3468,9 +3754,21 @@ NPCMovement_d896: ; d896 (3:5896) db EAST db SOUTH | NO_MOVE db $ff -; 0xd89f - INCROM $d89f, $d8bb +DeckMachineRoomAfterDuel: ; d89f (3:589f) + ld hl, .after_duel_table + call FindEndOfBattleScript + ret + +.after_duel_table + db NPC_AARON + db NPC_AARON + dw Script_BeatAaron + dw Script_LostToAaron + db $00 + +DeckMachineRoomCloseTextBox: ; d8ad (3:58ad) + INCROM $d8ad, $d8bb Script_Tech6: ; d8bb (3:58bb) INCROM $d8bb, $d8c6 @@ -3482,7 +3780,13 @@ Script_Tech8: ; d8d1 (3:58d1) INCROM $d8d1, $d8dd Script_Aaron: ; d8dd (3:58dd) - INCROM $d8dd, $d932 + INCROM $d8dd, $d903 + +Script_BeatAaron: ; d903 (3:5903) + INCROM $d903, $d92e + +Script_LostToAaron: ; d92e (3:592e) + INCROM $d92e, $d932 Script_d932: ; d932 (3:5932) start_script @@ -3494,9 +3798,33 @@ Script_d932: ; d932 (3:5932) .ows_d93c open_deck_machine $09 quit_script_fully -; 0xd93f - INCROM $d93f, $dadd +Script_d93f: ; d93f (3:593f) + INCROM $d93f, $d995 + +Script_d995: ; d995 (3:5995) + INCROM $d995, $d9c2 + +Script_d9c2: ; d9c2 (3:59c2) + INCROM $d9c2, $d9ef + +Script_d9ef: ; d9ef (3:59ef) + INCROM $d9ef, $da1c + +Script_da1c: ; da1c (3:5a1c) + INCROM $da1c, $da49 + +Script_da49: ; da49 (3:5a49) + INCROM $da49, $da76 + +Script_da76: ; da76 (3:5a76) + INCROM $da76, $daa3 + +Script_daa3: ; daa3 (3:5aa3) + INCROM $daa3, $dad0 + +Script_dad0: ; dad0 (3:5ad0) + INCROM $dad0, $dadd Preload_NikkiInIshiharasHouse: ; dadd (3:5add) get_flag_value EVENT_FLAG_35 @@ -3672,7 +4000,10 @@ FightingClubLobbyAfterDuel: ; dc68 (3:5c68) db $00 Script_Man1: ; dc76 (3:5c76) - INCROM $dc76, $dd0d + INCROM $dc76, $dceb + +Preload_ImakuniInFightingClubLobby: ; dceb (3:5ceb) + INCROM $dceb, $dd0d Script_Imakuni: ; dd0d (3:5d0d) start_script @@ -3692,7 +4023,7 @@ Script_Imakuni: ; dd0d (3:5d0d) Script_BeatImakuni: ; dd2d (3:5d2d) start_script jump_if_flag_equal EVENT_IMAKUNI_WIN_COUNT, $07, .giveBoosters - script_increment_flag_value EVENT_IMAKUNI_WIN_COUNT + increment_flag_value EVENT_IMAKUNI_WIN_COUNT jump_if_flag_equal EVENT_IMAKUNI_WIN_COUNT, $03, .threeWins jump_if_flag_equal EVENT_IMAKUNI_WIN_COUNT, $06, .sixWins .giveBoosters @@ -3752,41 +4083,40 @@ Script_Specs1: ; dd82 (3:5d82) INCROM $dd82, $dd8d Script_Butch: ; dd8d (3:5d8d) - INCROM $dd8d, $dd9f + INCROM $dd8d, $dd98 + +Preload_Granny1: ; dd98 (3:5d98) + INCROM $dd98, $dd9f Script_Granny1: ; dd9f (3:5d9f) INCROM $dd9f, $dda3 - FightingClubAfterDuel: ; dda3 (3:5da3) ld hl, .after_duel_table call FindEndOfBattleScript ret -; 0xddaa .after_duel_table db NPC_CHRIS db NPC_CHRIS - dw $5e69 - dw $5e75 + dw Script_BeatChrisInFightingClub + dw Script_LostToChrisInFightingClub db NPC_MICHAEL db NPC_MICHAEL - dw $5e95 - dw $5ea1 + dw Script_BeatMichaelInFightingClub + dw Script_LostToMichaelInFightingClub db NPC_JESSICA db NPC_JESSICA - dw $5ec1 - dw $5ecd + dw Script_BeatJessicaInFightingClub + dw Script_LostToJessicaInFightingClub db NPC_MITCH db NPC_MITCH dw Script_BeatMitch - dw Script_LoseToMitch - + dw Script_LostToMitch db $00 -; ddc3 Script_Mitch: ; ddc3 (3:5dc3) start_script @@ -3800,27 +4130,21 @@ Script_Mitch: ; ddc3 (3:5dc3) script_set_flag_value EVENT_FLAG_17, $01 script_set_flag_value EVENT_FLAG_20, $01 quit_script_fully -; 0xdde2 .three_pupils_remaining print_text_quit_fully Text0478 -; 0xdde5 .two_pupils_remaining print_text_quit_fully Text0479 -; 0xdde8 .one_pupil_remaining print_text_quit_fully Text047a -; 0xddeb .all_pupils_defeated print_text_string Text047b ask_question_jump Text047c, .do_battle print_text_string Text047d quit_script_fully -; 0xddf7 .do_battle print_text_string Text047e start_battle PRIZES_6, FIRST_STRIKE_DECK_ID, MUSIC_DUEL_THEME_2 quit_script_fully -; 0xddff Script_BeatMitch: ; ddff (3:5dff) start_script @@ -3836,38 +4160,57 @@ Script_BeatMitch: ; ddff (3:5dff) give_booster_packs BOOSTER_LABORATORY_NEUTRAL, BOOSTER_LABORATORY_NEUTRAL, NO_BOOSTER print_text_string Text0481 quit_script_fully -; 0xde19 -Script_LoseToMitch: ; de19 (3:5e19) +Script_LostToMitch: ; de19 (3:5e19) start_script jump_if_flag_nonzero_2 EVENT_FLAG_0F, Script_Mitch_PrintTrainHarderText print_text_quit_fully Text0482 -; 0xde21 -Script_Mitch_AlreadyHaveMedal: ; 0xde21 +Script_Mitch_AlreadyHaveMedal: ; de21 (3:5e21) print_text_string Text0483 ask_question_jump Text047c, .do_battle print_text_string Text0484 quit_script_fully -; 0xde2d .do_battle print_text_string Text0485 start_battle PRIZES_6, FIRST_STRIKE_DECK_ID, MUSIC_DUEL_THEME_2 quit_script_fully -; 0xde35 Script_Mitch_GiveBoosters: print_text_string Text0486 give_booster_packs BOOSTER_LABORATORY_NEUTRAL, BOOSTER_LABORATORY_NEUTRAL, NO_BOOSTER print_text_string Text0487 quit_script_fully -; 0xde40 Script_Mitch_PrintTrainHarderText: print_text_quit_fully Text0488 -; 0xde43 - INCROM $de43, $ded1 +Preload_ChrisInFightingClub: ; de43 (3:5e43) + INCROM $de43, $de69 + +Script_BeatChrisInFightingClub: ; de69 (3:5e69) + INCROM $de69, $de75 + +Script_LostToChrisInFightingClub: ; de75 (3:5e75) + INCROM $de75, $de79 + +Preload_MichaelInFightingClub: ; de79 (3:5e79) + INCROM $de79, $de95 + +Script_BeatMichaelInFightingClub: ; de95 (3:5e95) + INCROM $de95, $dea1 + +Script_LostToMichaelInFightingClub: ; dea1 (3:5ea1) + INCROM $dea1, $dea5 + +Preload_JessicaInFightingClub: ; dea5 (3:5ea5) + INCROM $dea5, $dec1 + +Script_BeatJessicaInFightingClub: ; dec1 (3:5ec1) + INCROM $dec1, $decd + +Script_LostToJessicaInFightingClub: ; decd (3:5ecd) + INCROM $decd, $ded1 Script_Clerk2: ; ded1 (3:5ed1) INCROM $ded1, $ded5 @@ -3876,56 +4219,108 @@ RockClubLobbyAfterDuel: ; ded5 (3:5ed5) ld hl, .after_duel_table call FindEndOfBattleScript ret -; 0xdedc .after_duel_table db NPC_CHRIS db NPC_CHRIS - dw $5f0c - dw $5f20 + dw Script_BeatChrisInRockClubLobby + dw Script_LostToChrisInRockClubLobby db NPC_MATTHEW db NPC_MATTHEW - dw $5f63 - dw $5f78 + dw Script_BeatMatthew + dw Script_LostToMatthew db $00 -; 0xdee9 +Preload_ChrisInRockClubLobby: ; dee9 (3:5ee9) INCROM $dee9, $def2 Script_Chris: ; def2 (3:5ef2) - INCROM $def2, $df39 + INCROM $def2, $df0c + +Script_BeatChrisInRockClubLobby: ; df0c (3:5f0c) + INCROM $df0c, $df20 + +Script_LostToChrisInRockClubLobby: ; df20 (3:5f20) + INCROM $df20, $df39 Script_Matthew: ; df39 (3:5f39) - INCROM $df39, $df83 + INCROM $df39, $df63 + +Script_BeatMatthew: ; df63 (3:5f63) + INCROM $df63, $df78 + +Script_LostToMatthew: ; df78 (3:5f78) + INCROM $df78, $df83 Script_Woman1: ; df83 (3:5f83) INCROM $df83, $dfc0 Script_Chap1: ; dfc0 (3:5fc0) - INCROM $dfc0, $dfd2 + INCROM $dfc0, $dfcb + +Preload_Lass3: ; dfcb (3:5fcb) + INCROM $dfcb, $dfd2 Script_Lass3: ; dfd2 (3:5fd2) - INCROM $dfd2, $dff0 + INCROM $dfd2, $dfd6 + +RockClubAfterDuel: ; dfd6 (3:5fd6) + ld hl, .after_duel_table + call FindEndOfBattleScript + ret + +.after_duel_table + db NPC_RYAN + db NPC_RYAN + dw Script_BeatRyan + dw Script_LostToRyan + + db NPC_ANDREW + db NPC_ANDREW + dw Script_BeatAndrew + dw Script_LostToAndrew + + db NPC_GENE + db NPC_GENE + dw Script_BeatGene + dw Script_LostToGene + db $00 Script_Ryan: ; dff0 (3:5ff0) - INCROM $dff0, $e017 + INCROM $dff0, $e007 + +Script_BeatRyan: ; e007 (3:6007) + INCROM $e007, $e013 + +Script_LostToRyan: ; e013 (3:6013) + INCROM $e013, $e017 Script_Andrew: ; e017 (3:6017) - INCROM $e017, $e03e + INCROM $e017, $e02e + +Script_BeatAndrew: ; e02e (3:602e) + INCROM $e02e, $e03a + +Script_LostToAndrew: ; e03a (3:603a) + INCROM $e03a, $e03e Script_Gene: ; e03e (3:603e) - INCROM $e03e, $e09e + INCROM $e03e, $e059 + +Script_BeatGene: ; e059 (3:6059) + INCROM $e059, $e073 + +Script_LostToGene: ; e073 (3:6073) + INCROM $e073, $e09e Script_Clerk3: ; e09e (3:609e) INCROM $e09e, $e0a2 - WaterClubLobbyAfterDuel: ; e0a2 (3:60a2) ld hl, .after_duel_table call FindEndOfBattleScript ret -; 0xe0a9 .after_duel_table db NPC_IMAKUNI @@ -3933,7 +4328,6 @@ WaterClubLobbyAfterDuel: ; e0a2 (3:60a2) dw Script_BeatImakuni dw Script_LostToImakuni db $00 -; 0xe0b0 Preload_ImakuniInWaterClubLobby: ; e0b0 (3:60b0) get_flag_value EVENT_IMAKUNI_STATE @@ -3957,35 +4351,35 @@ Script_Gal1: ; e0cf (3:60cf) start_script jump_if_flag_equal EVENT_FLAG_12, $02, .ows_e10e jump_if_flag_equal EVENT_FLAG_12, $00, NULL - print_variable_text Text041d, Text041e + print_variable_text Gal1WantToTrade1Text, Gal1WantToTrade2Text script_set_flag_value EVENT_FLAG_12, $01 - ask_question_jump Text041f, .ows_e0eb - print_text_string Text0420 + ask_question_jump Gal1WouldYouLikeToTradeText, .ows_e0eb + print_text_string Gal1DeclinedTradeText quit_script_fully .ows_e0eb jump_if_card_owned LAPRAS, .ows_e0f3 - print_text_string Text0421 + print_text_string Gal1DontOwnCardText quit_script_fully .ows_e0f3 jump_if_card_in_collection LAPRAS, .ows_e0fb - print_text_string Text0422 + print_text_string Gal1CardInDeckText quit_script_fully .ows_e0fb script_set_flag_value EVENT_FLAG_12, $02 - print_text_string Text0423 + print_text_string Gal1LetsTradeText run_command Func_ccdc - tx Text0424 + tx Gal1TradeCompleteText take_card LAPRAS give_card ARCANINE1 show_card_received_screen ARCANINE1 - print_text_string Text0425 + print_text_string Gal1ThanksText quit_script_fully .ows_e10e - print_text_quit_fully Text0426 + print_text_quit_fully Gal1AfterTradeText Script_Lass1: ; e111 (3:6111) start_script @@ -4003,7 +4397,7 @@ Script_Lass1: ; e111 (3:6111) .ows_e12d print_text_quit_fully Text0429 -Preload_Man2InWaterClubLobby: ; e130 (3:6130) +Preload_Man2: ; e130 (3:6130) get_flag_value EVENT_JOSHUA_STATE cp JOSHUA_BEATEN ret @@ -4028,7 +4422,7 @@ WaterClubMovePlayer: ; e13f (3:613f) ld bc, Script_NotReadyToSeeAmy jp SetNextNPCAndScript -WaterClubAfterDuel: ;e157 (3:6157) +WaterClubAfterDuel: ; e157 (3:6157) ld hl, .after_duel_table call FindEndOfBattleScript ret @@ -4192,7 +4586,7 @@ Script_Joshua: ; e21c (3:621c) print_variable_text Text0440, Text0441 quit_script_fully -.startDuel: +.startDuel print_text_string Text0442 try_give_pc_pack $04 start_battle PRIZES_4, SOUND_OF_THE_WAVES_DECK_ID, MUSIC_DUEL_THEME_1 @@ -4214,7 +4608,7 @@ Script_BeatJoshua: ; e26c (3:626c) jump_if_flag_not_equal EVENT_JOSHUA_STATE, JOSHUA_BEATEN, .firstJoshuaWin quit_script_fully -.firstJoshuaWin: +.firstJoshuaWin script_set_flag_value EVENT_JOSHUA_STATE, JOSHUA_BEATEN print_text_string Text0449 close_text_box @@ -4359,7 +4753,6 @@ ScriptJump_TalkToAmyAgain: ; e356 (3:6356) print_text_string Text0459 start_battle PRIZES_6, GO_GO_RAIN_DANCE_DECK_ID, MUSIC_DUEL_THEME_2 quit_script_fully -; 0xe369 Script_Clerk4: ; e369 (3:6369) INCROM $e369, $e36d @@ -4368,7 +4761,6 @@ LightningClubLobbyAfterDuel: ; e36d (3:636d) ld hl, .after_duel_table call FindEndOfBattleScript ret -; 0xe374 .after_duel_table db NPC_IMAKUNI @@ -4376,9 +4768,9 @@ LightningClubLobbyAfterDuel: ; e36d (3:636d) dw Script_BeatImakuni dw Script_LostToImakuni db $00 -; 0xe37B - INCROM $e37B, $e39a +Preload_ImakuniInLightningClubLobby: ; e37b (3:637b) + INCROM $e37b, $e39a Script_Chap2: ; e39a (3:639a) INCROM $e39a, $e3d9 @@ -4387,19 +4779,73 @@ Script_Lass4: ; e3d9 (3:63d9) INCROM $e3d9, $e3dd Script_Hood1: ; e3dd (3:63dd) - INCROM $e3dd, $e408 + INCROM $e3dd, $e3e8 + +LightningClubAfterDuel: ; e3e8 (3:63e8) + ld hl, .after_duel_table + call FindEndOfBattleScript + ret + +.after_duel_table + db NPC_JENNIFER + db NPC_JENNIFER + dw Script_BeatJennifer + dw Script_LostToJennifer + + db NPC_NICHOLAS + db NPC_NICHOLAS + dw Script_BeatNicholas + dw Script_LostToNicholas + + db NPC_BRANDON + db NPC_BRANDON + dw Script_BeatBrandon + dw Script_LostToBrandon + + db NPC_ISAAC + db NPC_ISAAC + dw Script_BeatIsaac + dw Script_LostToIsaac + db $00 Script_Jennifer: ; e408 (3:6408) - INCROM $e408, $e42f + INCROM $e408, $e41d + +Script_BeatJennifer: ; e41d (3:641d) + INCROM $e41d, $e42b + +Script_LostToJennifer: ; e42b (3:642b) + INCROM $e42b, $e42f Script_Nicholas: ; e42f (3:642f) - INCROM $e42f, $e456 + INCROM $e42f, $e444 + +Script_BeatNicholas: ; e444 (3:6444) + INCROM $e444, $e452 + +Script_LostToNicholas: ; e452 (3:6452) + INCROM $e452, $e456 Script_Brandon: ; e456 (3:6456) - INCROM $e456, $e4ad + INCROM $e456, $e480 + +Script_BeatBrandon: ; e480 (3:6480) + INCROM $e480, $e490 + +Script_LostToBrandon: ; e490 (3:6490) + INCROM $e490, $e494 + +Preload_Isaac: ; e494 (3:6494) + INCROM $e494, $e4ad Script_Isaac: ; e4ad (3:64ad) - INCROM $e4ad, $e525 + INCROM $e4ad, $e4e1 + +Script_BeatIsaac: ; e4e1 (3:64e1) + INCROM $e4e1, $e4fb + +Script_LostToIsaac: ; e4fb (3:64fb) + INCROM $e4fb, $e525 GrassClubEntranceAfterDuel: ; e525 (3:6525) ld hl, GrassClubEntranceAfterDuelTable @@ -4439,8 +4885,8 @@ FindEndOfBattleScript: ; e52c (3:652c) GrassClubEntranceAfterDuelTable: ; e553 (3:6553) db NPC_MICHAEL db NPC_MICHAEL - dw $6597 - dw $65ab + dw Script_BeatMichaelInGrassClubEntrance + dw Script_LostToMichaelInGrassClubEntrance db NPC_RONALD2 db NPC_RONALD2 @@ -4454,10 +4900,19 @@ GrassClubEntranceAfterDuelTable: ; e553 (3:6553) db $00 Script_Clerk5: ; e566 (3:6566) - INCROM $e566, $e573 + INCROM $e566, $e56a + +Preload_MichaelInGrassClubEntrance: ; e56a (3:656a) + INCROM $e56a, $e573 Script_Michael: ; e573 (3:6573) - INCROM $e573, $e5c4 + INCROM $e573, $e597 + +Script_BeatMichaelInGrassClubEntrance: ; e597 (3:6597) + INCROM $e597, $e5ab + +Script_LostToMichaelInGrassClubEntrance: ; e5ab (3:65ab) + INCROM $e5ab, $e5c4 GrassClubLobbyAfterDuel: ; e5c4 (3:65c4) ld hl, .after_duel_table @@ -4589,22 +5044,67 @@ Script_Lass2: ; e61f (3:661f) give_card BLASTOISE show_card_received_screen BLASTOISE print_text_quit_fully Text06f3 -; 0xe6d8 Script_Granny2: ; e6d8 (3:66d8) - INCROM $e6d8, $e6e3 + INCROM $e6d8, $e6dc + +Preload_Gal2: ; e6dc (3:66dc) + INCROM $e6dc, $e6e3 Script_Gal2: ; e6e3 (3:66e3) - INCROM $e6e3, $e701 + INCROM $e6e3, $e6e7 + +GrassClubAfterDuel: ; e6e7 (3:66e7) + ld hl, .after_duel_table + call FindEndOfBattleScript + ret + +.after_duel_table + db NPC_KRISTIN + db NPC_KRISTIN + dw Script_BeatKristin + dw Script_LostToKristin + + db NPC_HEATHER + db NPC_HEATHER + dw Script_BeatHeather + dw Script_LostToHeather + + db NPC_NIKKI + db NPC_NIKKI + dw Script_BeatNikki + dw Script_LostToNikki + db $00 Script_Kristin: ; e701 (3:6701) - INCROM $e701, $e745 + INCROM $e701, $e71c + +Script_BeatKristin: ; e71c (3:671c) + INCROM $e71c, $e741 + +Script_LostToKristin: ; e741 (3:6741) + INCROM $e741, $e745 Script_Heather: ; e745 (3:6745) - INCROM $e745, $e79e + INCROM $e745, $e760 + +Script_BeatHeather: ; e760 (3:6760) + INCROM $e760, $e78a + +Script_LostToHeather: ; e78a (3:678a) + INCROM $e78a, $e796 + +Preload_NikkiInGrassClub: ; e796 (3:6796) + INCROM $e796, $e79e Script_Nikki: ; e79e (3:679e) - INCROM $e79e, $e7f6 + INCROM $e79e, $e7d3 + +Script_BeatNikki: ; e7d3 (3:67d3) + INCROM $e7d3, $e7f2 + +Script_LostToNikki: ; e7f2 (3:67f2) + INCROM $e7f2, $e7f6 ClubEntranceAfterDuel: ; e7f6 (3:67f6) ld hl, .after_duel_table @@ -4640,7 +5140,7 @@ TryFirstRonaldEncounter: ; e813 (3:6813) TryFirstRonaldFight: ; e822 (3:6822) ld a, NPC_RONALD2 - ld [$d3ab], a + ld [wTempNPC], a call FindLoadedNPC ret c get_flag_value EVENT_FLAG_4C @@ -4651,7 +5151,7 @@ TryFirstRonaldFight: ; e822 (3:6822) TrySecondRonaldFight: ; e837 (3:6837) ld a, NPC_RONALD3 - ld [$d3ab], a + ld [wTempNPC], a call FindLoadedNPC ret c get_flag_value EVENT_FLAG_4D @@ -4659,13 +5159,15 @@ TrySecondRonaldFight: ; e837 (3:6837) ret nz ld bc, ScriptSecondRonaldFight jp SetNextNPCAndScript -; 0xe84c Script_Clerk6: ; e84c (3:684c) INCROM $e84c, $e850 Script_Lad3: ; e850 (3:6850) - INCROM $e850, $e862 + INCROM $e850, $e85b + +Preload_Ronald1InClubEntrance: ; e85b (3:685b) + INCROM $e85b, $e862 Script_FirstRonaldEncounter: ; e862 (3:6862) start_script @@ -4701,8 +5203,8 @@ NPCMovement_e894: ; e894 (3:6894) db SOUTH db SOUTH db $ff -; e89a +Preload_Ronald2InClubEntrance: ; e89a (3:689a) INCROM $e89a, $e8c0 Script_FirstRonaldFight: ; e8c0 (3:68c0) @@ -4711,9 +5213,10 @@ Script_FirstRonaldFight: ; e8c0 (3:68c0) do_frames $3c move_active_npc NPCMovement_e90d print_text_string Text064a - jump_if_player_coords_match $08, $02, $68d6 + jump_if_player_coords_match $08, $02, .ows_e8d6 set_player_direction WEST move_player WEST, 1 +.ows_e8d6 set_player_direction SOUTH move_player SOUTH, 1 move_player SOUTH, 1 @@ -4763,8 +5266,8 @@ NPCMovement_e90f: ; e90f (3:690f) db SOUTH db SOUTH db $ff -; e915 +Preload_Ronald3InClubEntrance: ; e915 (3:6915) INCROM $e915, $e91e ScriptSecondRonaldFight: ; e91e (3:691e) @@ -4804,58 +5307,105 @@ ScriptJump_FinishedSecondRonaldFight: ; e959 (3:6959) run_command Func_cdcb run_command Func_d41d quit_script_fully -; 0xe963 - PsychicClubLobbyAfterDuel: ; e963 (3:6963) ld hl, .after_duel_table call FindEndOfBattleScript ret -; 0xe96a .after_duel_table - db NPC_ROBERT db NPC_ROBERT - dw $6995 - dw $69a1 + dw Script_BeatRobert + dw Script_LostToRobert db $00 +PsychicClubLobbyLoadMap: ; e971 (3:6971) INCROM $e971, $e980 Script_Robert: ; e980 (3:6980) - INCROM $e980, $e9a5 + INCROM $e980, $e995 + +Script_BeatRobert: ; e995 (3:6995) + INCROM $e995, $e9a1 + +Script_LostToRobert: ; e9a1 (3:69a1) + INCROM $e9a1, $e9a5 Script_Pappy1: ; e9a5 (3:69a5) - INCROM $e9a5, $ea30 + INCROM $e9a5, $e9f7 + +Preload_Ronald1InPsychicClubLobby: ; e9f7 (3:69f7) + INCROM $e9f7, $ea30 Script_Gal3: ; ea30 (3:6a30) INCROM $ea30, $ea3b Script_Chap4: ; ea3b (3:6a3b) - INCROM $ea3b, $ea60 + INCROM $ea3b, $ea46 + +PsychicClubAfterDuel: ; ea46 (3:6a46) + ld hl, .after_duel_table + call FindEndOfBattleScript + ret + +.after_duel_table + db NPC_DANIEL + db NPC_DANIEL + dw Script_BeatDaniel + dw Script_LostToDaniel + + db NPC_STEPHANIE + db NPC_STEPHANIE + dw Script_BeatStephanie + dw Script_LostToStephanie + + db NPC_MURRAY1 + db NPC_MURRAY1 + dw Script_BeatMurray + dw Script_LostToMurray + db $00 Script_Daniel: ; ea60 (3:6a60) - INCROM $ea60, $eaa2 + INCROM $ea60, $ea92 + +Script_BeatDaniel: ; ea92 (3:6a92) + INCROM $ea92, $ea9e + +Script_LostToDaniel: ; ea9e (3:6a9e) + INCROM $ea9e, $eaa2 Script_Stephanie: ; eaa2 (3:6aa2) - INCROM $eaa2, $eadf + INCROM $eaa2, $eac0 + +Script_BeatStephanie: ; eac0 (3:6ac0) + INCROM $eac0, $eacc + +Script_LostToStephanie: ; eacc (3:6acc) + INCROM $eacc, $ead0 + +Preload_Murray2: ; ead0 (3:6ad0) + INCROM $ead0, $eada -Script_Murray2: ; eadf (3:6adf) - INCROM $eadf, $eadf +Preload_Murray1: ; eada (3:6ada) + INCROM $eada, $eadf -Script_Murray1: ; eadf (3:6adf) - INCROM $eadf, $eb53 +Script_Murray: ; eadf (3:6adf) + INCROM $eadf, $eb0f + +Script_BeatMurray: ; eb0f (3:6b0f) + INCROM $eb0f, $eb29 + +Script_LostToMurray: ; eb29 (3:6b29) + INCROM $eb29, $eb53 Script_Clerk7: ; eb53 (3:6b53) INCROM $eb53, $eb57 - ScienceClubLobbyAfterDuel:; eb57 (3:6b57) ld hl, .after_duel_table call FindEndOfBattleScript ret -; 0xeb5e .after_duel_table db NPC_IMAKUNI @@ -4863,8 +5413,8 @@ ScienceClubLobbyAfterDuel:; eb57 (3:6b57) dw Script_BeatImakuni dw Script_LostToImakuni db $00 -; 0xeb65 +Preload_ImakuniInScienceClubLobby: ; eb65 (3:6b65) INCROM $eb65, $eb84 Script_Lad1: ; eb84 (3:6b84) @@ -4877,19 +5427,73 @@ Script_Specs2: ; ebc5 (3:6bc5) INCROM $ebc5, $ebed Script_Specs3: ; ebed (3:6bed) - INCROM $ebed, $ec11 + INCROM $ebed, $ebf1 + +ScienceClubAfterDuel: ; ebf1 (3:6bf1) + ld hl, .after_duel_table + call FindEndOfBattleScript + ret + +.after_duel_table + db NPC_JOSEPH + db NPC_JOSEPH + dw Script_BeatJoseph + dw Script_LostToJoseph + + db NPC_DAVID + db NPC_DAVID + dw Script_BeatDavid + dw Script_LostToDavid + + db NPC_ERIK + db NPC_ERIK + dw Script_BeatErik + dw Script_LostToErik + + db NPC_RICK + db NPC_RICK + dw Script_BeatRick + dw Script_LostToRick + db $00 Script_David: ; ec11 (3:6c11) - INCROM $ec11, $ec42 + INCROM $ec11, $ec2f + +Script_BeatDavid: ; ec2f (3:6c2f) + INCROM $ec2f, $ec3e + +Script_LostToDavid: ; ec3e (3:6c3e) + INCROM $ec3e, $ec42 Script_Erik: ; ec42 (3:6c42) - INCROM $ec42, $ec67 + INCROM $ec42, $ec57 + +Script_BeatErik: ; ec57 (3:6c57) + INCROM $ec57, $ec63 + +Script_LostToErik: ; ec63 (3:6c63) + INCROM $ec63, $ec67 Script_Rick: ; ec67 (3:6c67) - INCROM $ec67, $ecdb + INCROM $ec67, $ec80 + +Script_BeatRick: ; ec80 (3:6c80) + INCROM $ec80, $ec9a + +Script_LostToRick: ; ec9a (3:6c9a) + INCROM $ec9a, $ecc4 + +Preload_Joseph: ; ecc4 (3:6cc4) + INCROM $ecc4, $ecdb Script_Joseph: ; ecdb (3:6cdb) - INCROM $ecdb, $ed45 + INCROM $ecdb, $ecf6 + +Script_BeatJoseph: ; ecf6 (3:6cf6) + INCROM $ecf6, $ed1c + +Script_LostToJoseph: ; ed1c (3:6d1c) + INCROM $ed1c, $ed45 Script_Clerk8: ; ed45 (3:6d45) INCROM $ed45, $ed49 @@ -4898,17 +5502,14 @@ FireClubLobbyAfterDuel: ; ed49 (3:6d49) ld hl, .after_duel_table call FindEndOfBattleScript ret -; 0xed50 .after_duel_table db NPC_JESSICA db NPC_JESSICA - dw $6dba - dw $6dce + dw Script_BeatJessicaInFireClubLobby + dw Script_LostToJessicaInFireClubLobby db $00 -; 0xed57 - FireClubPressedA: ; ed57 (3:6d57) ld hl, SlowpokePaintingObjectTable call FindExtraInteractableObjects @@ -4953,15 +5554,24 @@ FindExtraInteractableObjects: ; ed64 (3:6d64) call SetNextScript scf ret -; 0xed8d +Preload_JessicaInFireClubLobby: ; ed8d (3:6d8d) INCROM $ed8d, $ed96 Script_Jessica: ; ed96 (3:6d96) - INCROM $ed96, $ede8 + INCROM $ed96, $edba + +Script_BeatJessicaInFireClubLobby: ; edba (3:6dba) + INCROM $edba, $edce + +Script_LostToJessicaInFireClubLobby: ; edce (3:6dce) + INCROM $edce, $ede8 Script_Chap3: ; ede8 (3:6de8) - INCROM $ede8, $ee2c + INCROM $ede8, $ee25 + +Preload_Lad2: ; ee25 (3:6e25) + INCROM $ee25, $ee2c Script_Lad2: ; ee2c (3:6e2c) INCROM $ee2c, $ee76 @@ -4974,17 +5584,15 @@ Script_ee76: ; ee76 (3:6e76) .ows_ee7d script_set_flag_value EVENT_FLAG_21, $02 run_command Func_ccdc - tx Text06a2 + tx FoundLv9SlowpokeText give_card SLOWPOKE1 show_card_received_screen SLOWPOKE1 quit_script_fully -; 0xee88 Script_Mania: ; ee88 (3:6e88) INCROM $ee88, $ee93 - -FireClubAfterDuel: ;ee93 (3:6e93) +FireClubAfterDuel: ; ee93 (3:6e93) ld hl, .after_duel_table call FindEndOfBattleScript ret @@ -4992,35 +5600,51 @@ FireClubAfterDuel: ;ee93 (3:6e93) .after_duel_table db NPC_JOHN db NPC_JOHN - dw $6ec8 - dw $6ed4 + dw Script_BeatJohn + dw Script_LostToJohn db NPC_ADAM db NPC_ADAM - dw $6eed - dw $6ef9 + dw Script_BeatAdam + dw Script_LostToAdam db NPC_JONATHAN db NPC_JONATHAN - dw $6f12 - dw $6f1e + dw Script_BeatJonathan + dw Script_LostToJonathan db NPC_KEN db NPC_KEN dw Script_BeatKen - dw Script_LoseToKen - + dw Script_LostToKen db $00 -; 0xeeb3 Script_John: ; eeb3 (3:6eb3) - INCROM $eeb3, $eed8 + INCROM $eeb3, $eec8 + +Script_BeatJohn: ; eec8 (3:6ec8) + INCROM $eec8, $eed4 + +Script_LostToJohn: ; eed4 (3:6ed4) + INCROM $eed4, $eed8 Script_Adam: ; eed8 (3:6ed8) - INCROM $eed8, $eefd + INCROM $eed8, $eeed + +Script_BeatAdam: ; eeed (3:6eed) + INCROM $eeed, $eef9 + +Script_LostToAdam: ; eef9 (3:6ef9) + INCROM $eef9, $eefd Script_Jonathan: ; eefd (3:6efd) - INCROM $eefd, $ef22 + INCROM $eefd, $ef12 + +Script_BeatJonathan: ; ef12 (3:6f12) + INCROM $ef12, $ef1e + +Script_LostToJonathan: ; ef1e (3:6f1e) + INCROM $ef1e, $ef22 Script_Ken: ; ef22 (3:6f22) start_script @@ -5044,7 +5668,6 @@ Script_Ken: ; ef22 (3:6f22) print_text_string Text06c0 start_battle PRIZES_6, FIRE_CHARGE_DECK_ID, MUSIC_DUEL_THEME_2 quit_script_fully -; 0xef5e Script_BeatKen: ; ef5e (3:6f5e) start_script @@ -5061,16 +5684,12 @@ Script_BeatKen: ; ef5e (3:6f5e) give_booster_packs BOOSTER_MYSTERY_NEUTRAL, BOOSTER_MYSTERY_NEUTRAL, NO_BOOSTER print_text_string Text06c3 quit_script_fully -; 0xef78 - - -Script_LoseToKen: ; ef78 (3:6f78) +Script_LostToKen: ; ef78 (3:6f78) start_script jump_if_flag_zero_2 EVENT_FLAG_0A, NULL print_variable_text Text06c4, Text06c5 quit_script_fully -; 0xef83 Script_KenBattle_AlreadyHaveMedal: ; ef83 (3:6f83) print_text_string Text06c6 @@ -5080,7 +5699,6 @@ Script_KenBattle_AlreadyHaveMedal: ; ef83 (3:6f83) print_text_string Text06c7 start_battle PRIZES_6, FIRE_CHARGE_DECK_ID, MUSIC_DUEL_THEME_2 quit_script_fully -; 0xef96 Preload_Clerk9: ; ef96 (3:6f96) call TryGiveMedalPCPacks @@ -5211,7 +5829,7 @@ ChallengeHallLobbyLoadMap: ; f088 (3:7088) ld a, $02 ld [wTempNPC], a call FindLoadedNPC - ld bc, $7166 + ld bc, Script_f166 jp SetNextNPCAndScript Script_Pappy3: ; f09c (3:709c) @@ -5316,10 +5934,19 @@ Func_f121: ; f121 (3:7121) ret Unknown_f146: ; f146 (3:7146) - INCROM $f146, $f156 + db $01, $00, EVENT_FLAG_50, $01 + db $03, $03, EVENT_FLAG_51, $02 + db $07, $03, EVENT_FLAG_52, $03 + db $07, $00, EVENT_FLAG_53, $04 Unknown_f156: ; f156 (3:7156) - INCROM $f156, $f239 + db $01, $00, EVENT_FLAG_54, $05 + db $03, $03, EVENT_FLAG_55, $06 + db $07, $03, EVENT_FLAG_56, $07 + db $07, $00, EVENT_FLAG_57, $08 + +Script_f166: ; f166 (3:7166) + INCROM $f166, $f239 ChallengeHallAfterDuel: ; f239 (3:7239) ld c, $00 @@ -5460,7 +6087,6 @@ Script_Clerk12: ; f295 (3:7295) set_next_npc_and_script $4a, Script_f353 end_script_loop ret -; f349 NPCMovement_f349: ; f349 (3:7349) db NORTH @@ -5770,7 +6396,6 @@ ScriptJump_f4db: ; f4db (3:74db) set_next_npc_and_script NPC_CLERK12, Script_f3e9 end_script_loop ret -; f559 ; Loads the NPC to fight at the challenge hall Preload_ChallengeHallOpponent: ; f559 (3:7559) @@ -5796,50 +6421,87 @@ Preload_ChallengeHallOpponent: ; f559 (3:7559) Func_f580: ; f580 (3:7580) get_flag_value EVENT_FLAG_44 cp $3 - jr z, .asm_f596 + jr z, .pick_challenger_include_ronald get_flag_value EVENT_FLAG_45 cp $3 - ld d, $18 - jr nz, .asm_f598 - ld a, $2 - jr .asm_f5ac + ld d, ChallengeHallNPCsEnd - ChallengeHallNPCs - 1 ; discount Ronald + jr nz, .pick_challenger + ld a, NPC_RONALD1 + jr .force_ronald -.asm_f596 - ld d, $19 +.pick_challenger_include_ronald + ld d, ChallengeHallNPCsEnd - ChallengeHallNPCs -.asm_f598 +.pick_challenger ld a, d call Random ld c, a - call $75cc - jr c, .asm_f598 - call $75d4 + call Func_f5cc + jr c, .pick_challenger + call Func_f5d4 ld b, $0 - ld hl, $75b3 + ld hl, ChallengeHallNPCs add hl, bc ld a, [hl] -.asm_f5ac +.force_ronald ld [wTempNPC], a ld [wd696], a ret -; 0xf5b3 - INCROM $f5b3, $f5db +ChallengeHallNPCs: ; f5b3 (3:75b3) + db NPC_CHRIS + db NPC_MICHAEL + db NPC_JESSICA + db NPC_MATTHEW + db NPC_RYAN + db NPC_ANDREW + db NPC_SARA + db NPC_AMANDA + db NPC_JOSHUA + db NPC_JENNIFER + db NPC_NICHOLAS + db NPC_BRANDON + db NPC_BRITTANY + db NPC_KRISTIN + db NPC_HEATHER + db NPC_ROBERT + db NPC_DANIEL + db NPC_STEPHANIE + db NPC_JOSEPH + db NPC_DAVID + db NPC_ERIK + db NPC_JOHN + db NPC_ADAM + db NPC_JONATHAN + db NPC_RONALD1 +ChallengeHallNPCsEnd: + +Func_f5cc: ; f5cc (3:75cc) + INCROM $f5cc, $f5d4 + +Func_f5d4: ; f5d4 (3:75d4) + INCROM $f5d4, $f5db Func_f5db: ; f5db (3:75db) xor a - ld [$d698], a - ld [$d699], a - ld [$d69a], a - ld [$d69b], a + ld [wd698], a + ld [wd699], a + ld [wd69a], a + ld [wd69b], a ret ; 0xf5e9 INCROM $f5e9, $f602 Func_f602: ; f602 (3:7602) - INCROM $f602, $f631 + INCROM $f602, $f607 + +PokemonDomeEntranceLoadMap: ; f607 (3:7607) + INCROM $f607, $f62a + +PokemonDomeEntranceCloseTextBox: ; f62a (3:762a) + INCROM $f62a, $f631 Script_f631: ; f631 (3:7631) start_script @@ -5851,7 +6513,51 @@ Script_f631: ; f631 (3:7631) ret .ows_f63c - INCROM $f63c, $f71f + INCROM $f63c, $f6af + +Script_f6af: ; f6af (3:76af) + INCROM $f6af, $f6c6 + +PokemonDomeMovePlayer: ; f6c6 (3:76c6) + INCROM $f6c6, $f6e0 + +PokemonDomeAfterDuel: ; f6e0 (3:76e0) + ld hl, .after_duel_table + call FindEndOfBattleScript + ret + +.after_duel_table + db NPC_COURTNEY + db NPC_COURTNEY + dw Script_BeatCourtney + dw Script_LostToCourtney + + db NPC_STEVE + db NPC_STEVE + dw Script_BeatSteve + dw Script_LostToSteve + + db NPC_JACK + db NPC_JACK + dw Script_BeatJack + dw Script_LostToJack + + db NPC_ROD + db NPC_ROD + dw Script_BeatRod + dw Script_LostToRod + + db NPC_RONALD1 + db NPC_RONALD1 + dw Script_BeatRonald1InPokemonDome + dw Script_LostToRonald1InPokemonDome + db $00 + +PokemonDomeLoadMap: ; f706 (3:7706) + INCROM $f706, $f718 + +PokemonDomeCloseTextBox: ; f718 (3:7718) + INCROM $f718, $f71f Script_Courtney: ; f71f (3:771f) INCROM $f71f, $f72a @@ -5863,14 +6569,59 @@ Script_Jack: ; f735 (3:7735) INCROM $f735, $f740 Script_Rod: ; f740 (3:7740) - INCROM $f740, $fbdb + INCROM $f740, $f74b + +Preload_Courtney: ; f74b (3:774b) + INCROM $f74b, $f78c + +Preload_Steve: ; f78c (3:778c) + INCROM $f78c, $f7a3 + +Preload_Jack: ; f7a3 (3:77a3) + INCROM $f7a3, $f7ba + +Preload_Rod: ; f7ba (3:77ba) + INCROM $f7ba, $f7d6 + +Preload_Ronald1InPokemonDome: ; f7d6 (3:77d6) + INCROM $f7d6, $f93f + +Script_LostToCourtney: ; f93f (3:793f) + INCROM $f93f, $f95a + +Script_BeatCourtney: ; f95a (3:795a) + INCROM $f95a, $f9b7 + +Script_LostToSteve: ; f9b7 (3:79b7) + INCROM $f9b7, $f9c8 + +Script_BeatSteve: ; f9c8 (3:79c8) + INCROM $f9c8, $fa23 + +Script_LostToJack: ; fa23 (3:7a23) + INCROM $fa23, $fa34 + +Script_BeatJack: ; fa34 (3:7a34) + INCROM $fa34, $fa98 + +Script_LostToRod: ; fa98 (3:7a98) + INCROM $fa98, $faae + +Script_BeatRod: ; faae (3:7aae) + INCROM $faae, $fb48 + +Script_LostToRonald1InPokemonDome: ; fb48 (3:7b48) + INCROM $fb48, $fb53 + +Script_BeatRonald1InPokemonDome: ; fb53 (3:7b53) + INCROM $fb53, $fbdb HallOfHonorLoadMap: ; fbdb (3:7bdb) ld a, SFX_10 call PlaySFX ret -; 0xfbe1 +Script_fbe1: ; fbe1 (3:7be1) INCROM $fbe1, $fbf1 Script_fbf1: ; fbf1 (3:7bf1) @@ -5929,16 +6680,16 @@ Func_fc2b: ; fc2b (3:7c2b) ld c, [hl] inc hl ld b, [hl] - ld a, $b0 + ld a, LOW(ClerkNPCName_) ld [wCurrentNPCNameTx], a - ld a, $3 + ld a, HIGH(ClerkNPCName_) ld [wCurrentNPCNameTx+1], a jp SetNextScript PointerTable_fc4c: ; fc4c (3:7c4c) - dw Unknown_fc64 - dw Unknown_fc68 - dw Unknown_fc60 + dw Script_fc64 + dw Script_fc68 + dw Script_fc60 Script_fc52: ; fc52 (3:7c52) start_script @@ -5950,14 +6701,17 @@ Script_fc52: ; fc52 (3:7c52) run_command Func_cd76 quit_script_fully -Unknown_fc60: ; fc60 (3:7c60) - INCROM $fc60, $fc64 +Script_fc60: ; fc60 (3:7c60) + start_script + print_text_quit_fully Text06ca -Unknown_fc64: ; fc64 (3:7c64) - INCROM $fc64, $fc68 +Script_fc64: ; fc64 (3:7c64) + start_script + print_text_quit_fully Text06cb -Unknown_fc68: ; fc68 (3:7c68) - INCROM $fc68, $fc6c +Script_fc68: ; fc68 (3:7c68) + start_script + print_text_quit_fully Text06cc ; Clerk looks away from you if you can't use infrared ; This is one of the preloads that does not change whether or not they appear @@ -6036,7 +6790,7 @@ NPCMovement_fce1: ; fce1 (3:7ce1) NPCMovement_fce3: ; fce3 (3:7ce3) db NORTH | NO_MOVE db $ff -; fce5 +; 0xfce5 rept $31b db $ff diff --git a/src/engine/bank04.asm b/src/engine/bank04.asm index e4db318..db3ae26 100644 --- a/src/engine/bank04.asm +++ b/src/engine/bank04.asm @@ -28,13 +28,13 @@ Func_10031: ; 10031 (4:4031) push af ld a, $1 call BankswitchSRAM - call $4cbb + call Func_10cbb call DisableSRAM - call $4b28 + call Func_10b28 call FlushAllPalettes call EnableLCD call DoFrameIfLCDEnabled - call $4cea + call Func_10cea call FlushAllPalettes pop af call BankswitchSRAM @@ -45,7 +45,13 @@ Func_10059: ; 10059 (4:4059) INCROM $10059, $100a2 Func_100a2: ; 100a2 (4:40a2) - INCROM $100a2, $1029e + INCROM $100a2, $1010c + +Func_1010c: ; 1010c (4:410c) + INCROM $1010c, $10197 + +Func_10197: ; 10197 (4:4197) + INCROM $10197, $1029e Medal_1029e: ; 1029e (4:429e) sub $8 @@ -59,22 +65,22 @@ Medal_1029e: ; 1029e (4:429e) call PlaySong farcall Func_70000 call DisableLCD - call $4000 + call Func_10000 ld a, $fa ld [wd114], a - call $410c + call Func_1010c pop bc ld a, c add a ld c, a ld b, $0 - ld hl, Unknown_1030b + ld hl, MasterMedalNames add hl, bc ld a, [hli] ld [wTxRam2], a ld a, [hl] ld [wTxRam2 + 1], a - call $4031 + call Func_10031 ld a, MUSIC_MEDAL call PlaySong ld a, $ff @@ -86,7 +92,7 @@ Medal_1029e: ; 1029e (4:429e) ld [wd116], a and $f jr nz, .asm_102e2 - call $4197 + call Func_10197 ld a, [wd116] cp $e0 jr nz, .asm_102e2 @@ -98,8 +104,15 @@ Medal_1029e: ; 1029e (4:429e) ld [wd291], a ret -Unknown_1030b: ; 1030b (4:430b) - INCROM $1030b, $1031b +MasterMedalNames: ; 1030b (4:430b) + tx GrassClubMapNameText + tx ScienceClubMapNameText + tx FireClubMapNameText + tx WaterClubMapNameText + tx LightningClubMapNameText + tx PsychicClubMapNameText + tx RockClubMapNameText + tx FightingClubMapNameText BoosterPack_1031b: ; 1031b (4:431b) ld c, a @@ -107,25 +120,25 @@ BoosterPack_1031b: ; 1031b (4:431b) push af push bc call DisableLCD - call $4000 + call Func_10000 xor a ld [wTextBoxFrameType], a pop bc push bc ld b, $0 - ld hl, $43a5 + ld hl, Unknown_103a5 add hl, bc ld a, [hl] ld c, a add a add a ld c, a - ld hl, $43c2 + ld hl, Unknown_103c2 add hl, bc ld a, [hli] push hl ld bc, $0600 - call $70ca + call Func_130ca pop hl ld a, [hli] ld [wTxRam3], a @@ -135,7 +148,7 @@ BoosterPack_1031b: ; 1031b (4:431b) ld [wTxRam2], a ld a, [hl] ld [wTxRam2 + 1], a - call $4031 + call Func_10031 call PauseSong ld a, MUSIC_BOOSTER_PACK call PlaySong @@ -166,9 +179,12 @@ BoosterPack_1031b: ; 1031b (4:431b) pop af ld [wd291], a ret -; 0x103a5 - INCROM $103a5, $103d2 +Unknown_103a5: ; 103a5 (4:43a5) + INCROM $103a5, $103c2 + +Unknown_103c2: ; 103c2 (4:43c2) + INCROM $103c2, $103d2 Func_103d2: ; 103d2 (4:43d2) INCROM $103d2, $103d3 @@ -177,7 +193,7 @@ Duel_Init: ; 103d3 (4:43d3) ld a, [wd291] push af call DisableLCD - call $4000 + call Func_10000 ld a, $4 ld [wTextBoxFrameType], a lb de, 0, 12 @@ -188,7 +204,7 @@ Duel_Init: ; 103d3 (4:43d3) add a ld c, a ld b, $0 - ld hl, $445b + ld hl, Unknown_1045b add hl, bc ld a, [hli] ld [wTxRam2], a @@ -199,8 +215,8 @@ Duel_Init: ; 103d3 (4:43d3) ld [wTxRam2_b], a ld a, [wOpponentName + 1] ld [wTxRam2_b + 1], a - ld hl, $4451 - call $51b3 ; LoadDuelistName + ld hl, Unknown_10451 + call Func_111b3 ; LoadDuelistName pop hl ld a, [hli] ld [wTxRam2], a @@ -209,8 +225,8 @@ Duel_Init: ; 103d3 (4:43d3) ld [wTxRam2 + 1], a or c jr z, .asm_10425 - ld hl, $4456 - call $51b3 ; LoadDeckName + ld hl, Unknown_10456 + call Func_111b3 ; LoadDeckName .asm_10425 ld bc, $0703 @@ -218,7 +234,7 @@ Duel_Init: ; 103d3 (4:43d3) call Func_3e2a ; LoadDuelistPortrait ld a, [wMatchStartTheme] call PlaySong - call $4031 + call Func_10031 call DoFrameIfLCDEnabled lb bc, $2f, $1d ; cursor tile, tile behind cursor lb de, 18, 17 ; x, y @@ -229,9 +245,15 @@ Duel_Init: ; 103d3 (4:43d3) pop af ld [wd291], a ret -; 0x10451 - INCROM $10451, $10548 +Unknown_10451: ; 10451 (4:4451) + INCROM $10451, $10456 + +Unknown_10456: ; 10456 (4:4456) + INCROM $10456, $1045b + +Unknown_1045b: ; 1045b (4:445b) + INCROM $1045b, $10548 Func_10548: ; 10548 (4:4548) INCROM $10548, $10756 @@ -284,7 +306,10 @@ Func_10ab4: ; 10ab4 (4:4ab4) INCROM $10ab4, $10af9 Func_10af9: ; 10af9 (4:4af9) - INCROM $10af9, $10c96 + INCROM $10af9, $10b28 + +Func_10b28: ; 10b28 (4:4b28) + INCROM $10b28, $10c96 Func_10c96: ; 10c96 (4:4c96) ldh a, [hBankSRAM] @@ -292,13 +317,13 @@ Func_10c96: ; 10c96 (4:4c96) push bc ld a, $1 call BankswitchSRAM - call $4cbb + call Func_10cbb call Func_10ab4 pop bc ld a, c or a jr nz, .asm_10cb0 - call $4cea + call Func_10cea call Func_10af9 .asm_10cb0 @@ -307,15 +332,18 @@ Func_10c96: ; 10c96 (4:4c96) call BankswitchSRAM call DisableSRAM ret -; 0x10cbb - INCROM $10cbb, $10dba +Func_10cbb: ; 10cbb (4:4cbb) + INCROM $10cbb, $10cea + +Func_10cea: ; 10cea (4:4cea) + INCROM $10cea, $10dba Func_10dba: ; 10dba (4:4dba) ld a, $1 farcall Func_c29b ld a, [wd0ba] - ld hl, $4e17 + ld hl, Unknown_10e17 farcall Func_111e9 .asm_10dca call DoFrameIfLCDEnabled @@ -331,15 +359,18 @@ Func_10dba: ; 10dba (4:4dba) .asm_10ddd ld [wd10e], a push af - ld hl, $4df0 + ld hl, Unknown_10df0 call JumpToFunctionInTable farcall CloseTextBox call DoFrameIfLCDEnabled pop af ret -; 0x10df0 - INCROM $10df0, $10e28 +Unknown_10df0: ; 10df0 (4:4df0) + INCROM $10df0, $10e17 + +Unknown_10e17: ; 10e17 (4:4e17) + INCROM $10e17, $10e28 Func_10e28: ; 10e28 (4:4e28) INCROM $10e28, $10e55 @@ -788,12 +819,15 @@ Func_11184: ; 11184 (4:5184) ld hl, wd341 dec [hl] ret -; 0x111b3 +Func_111b3: ; 111b3 (4:51b3) INCROM $111b3, $111e9 Func_111e9: ; 111e9 (4:51e9) - INCROM $111e9, $1124d + INCROM $111e9, $11238 + +Func_11238: ; 11238 (4:5238) + INCROM $11238, $1124d Func_1124d: ; 1124d (4:524d) INCROM $1124d, $11320 @@ -830,7 +864,7 @@ Func_1157c: ; 1157c (4:557c) ld [wd32e], a .asm_1159f - call $5238 + call Func_11238 ret Func_115a3: ; 115a3 (4:55a3) @@ -1040,7 +1074,7 @@ OverworldScriptTable: ; 1217b (4:617b) dw Func_d3e0 dw Func_d3fe dw Func_d408 - dw Func_d40f + dw ScriptCommand_PlaySong dw ScriptCommand_PlaySFX dw ScriptCommand_PauseSong dw ScriptCommand_ResumeSong @@ -1078,11 +1112,11 @@ MultichoiceTextbox_ConfigTable_ChooseDeckToDuelAgainst: ;1224b db $04, $00 ; x, y to start drawing box db $10, $08 ; width, height of box db $06, $02 ; x, y coordinate to start printing next text - tx Text03f6 ; text id to print next + tx LightningAndFireDeckChoiceText ; text id to print next db $06, $04 ; x, y coordinate to start printing next text - tx Text03f7 ; text id to print next + tx WaterAndFightingDeckChoiceText ; text id to print next db $06, $06 ; x, y coordinate to start printing next text - tx Text03f8 ; text id to print next + tx GrassAndPsychicDeckChoiceText ; text id to print next db $ff ; marker byte -- end text entries db $05, $02 ; cursor starting x, y db $02 ; number of tiles the cursor moves per toggle @@ -1095,11 +1129,11 @@ MultichoiceTextbox_ConfigTable_ChooseDeckStarterDeck: ;12264 db $04, $00 ; x, y to start drawing box db $10, $08 ; width, height of box db $06, $02 ; x, y coordinate to start printing next text - tx Text03fa ; text id to print next + tx CharmanderAndFriendsDeckChoiceText ; text id to print next db $06, $04 ; x, y coordinate to start printing next text - tx Text03fb ; text id to print next + tx SquirtleAndFriendsDeckChoiceText ; text id to print next db $06, $06 ; x, y coordinate to start printing next text - tx Text03fc ; text id to print next + tx BulbasaurAndFriendsDeckChoiceText ; text id to print next db $ff ; marker byte -- end text entries db $05, $02 ; cursor starting x, y db $02 ; number of tiles the cursor moves per toggle @@ -1115,7 +1149,7 @@ SamNormalMultichoice_ConfigurationTable: ;1227d tx Text03ff ; text id to print next db $ff ; marker byte -- end text entries db $0b, $02 ; cursor starting x, y - db $02 ; number of tiles the cursor moves per toggle + db $02 ; number of tiles the cursor moves per toggle db $04 ; cursor max index db $0f ; cursor image @@ -1202,7 +1236,7 @@ MainMenu_ContinueFromDiary: ; 12741 (4:6741) farcall Func_70000 call EnableSRAM xor a - ld [$ba44], a + ld [sba44], a call DisableSRAM ld a, GAME_EVENT_OVERWORLD ld [wGameEvent], a @@ -1234,7 +1268,10 @@ MainMenu_ContinueDuel: ; 1277e (4:677e) ret ; 0x1279a - INCROM $1279a, $12871 + INCROM $1279a, $12863 + +Func_12863: ; 12863 (4:6863) + INCROM $12863, $12871 Func_12871: ; 12871 (4:6871) INCROM $12871, $1288c @@ -1393,10 +1430,12 @@ FillNewSpriteAnimBufferEntry: ; 129d9 (4:69d9) pop bc pop hl ret -; 0x129fa Func_129fa: ; 129fa (4:69fa) ld a, [wWhichSprite] + ; fallthrough + +Func_129fd: ; 129fd (4:69fd) push af ld a, [wd5d7] or a @@ -1836,7 +1875,13 @@ Func_12c5e: ; 12c5e (4:6c5e) INCROM $12c5e, $12c7f Func_12c7f: ; 12c7f (4:6c7f) - INCROM $12c7f, $131b3 + INCROM $12c7f, $12fc6 + +Func_12fc6: ; 12fc6 (4:6fc6) + INCROM $12fc6, $130ca + +Func_130ca: ; 130ca (4:70ca) + INCROM $130ca, $131b3 Func_131b3: ; 131b3 (4:71b3) INCROM $131b3, $131d3 @@ -1859,12 +1904,12 @@ Func_1344d: ; 1344d (4:744d) Func_13485: ; 13485 (4:7485) call EnableSRAM - ld a, [$ba68] + ld a, [sba68] or a ret z - ld a, [$ba56] + ld a, [sba56] ld [wTxRam3], a - ld a, [$ba57] + ld a, [sba57] ld [wTxRam3 + 1], a call DisableSRAM call PauseSong diff --git a/src/engine/bank06.asm b/src/engine/bank06.asm index 8eb6e9a..f314b48 100644 --- a/src/engine/bank06.asm +++ b/src/engine/bank06.asm @@ -923,26 +923,26 @@ glossary_entry: MACRO ENDM GlossaryData1: - glossary_entry 7, Text02fa, Text030c - glossary_entry 5, Text02fb, Text030d - glossary_entry 7, Text02fc, Text030e - glossary_entry 6, Text02fd, Text030f - glossary_entry 6, Text02fe, Text0310 - glossary_entry 4, Text02ff, Text0311 - glossary_entry 5, Text0300, Text0312 - glossary_entry 7, Text0301, Text0313 - glossary_entry 5, Text0302, Text0314 + glossary_entry 7, AboutTheDeckText, DeckDescriptionText + glossary_entry 5, AboutTheDiscardPileText, DiscardPileDescriptionText + glossary_entry 7, AboutTheHandText, HandDescriptionText + glossary_entry 6, AboutTheArenaText, ArenaDescriptionText + glossary_entry 6, AboutTheBenchText, BenchDescriptionText + glossary_entry 4, AboutTheActivePokemonText, ActivePokemonDescriptionText + glossary_entry 5, AboutBenchPokemonText, BenchPokemonDescriptionText + glossary_entry 7, AboutPrizesText, PrizesDescriptionText + glossary_entry 5, AboutDamageCountersText, DamageCountersDescriptionText GlossaryData2: - glossary_entry 5, Text0303, Text0315 - glossary_entry 5, Text0304, Text0316 - glossary_entry 5, Text0305, Text0317 - glossary_entry 5, Text0306, Text0318 - glossary_entry 6, Text0307, Text0319 - glossary_entry 5, Text0308, Text031a - glossary_entry 6, Text0309, Text031b - glossary_entry 6, Text030a, Text031c - glossary_entry 6, Text030b, Text031d + glossary_entry 5, AboutEnergyCardsText, EnergyCardsDescriptionText + glossary_entry 5, AboutTrainerCardsText, TrainerCardsDescriptionText + glossary_entry 5, AboutBasicPokemonText, BasicPokemonDescriptionText + glossary_entry 5, AboutEvolutionCardsText, EvolutionCardsDescriptionText + glossary_entry 6, AboutAttackingText, AttackingDescriptionText + glossary_entry 5, AboutPokemonPowerText, PokemonPowerDescriptionText + glossary_entry 6, AboutWeaknessText, WeaknessDescriptionText + glossary_entry 6, AboutResistanceText, ResistanceDescriptionText + glossary_entry 6, AboutRetreatingText, RetreatingDescriptionText Func_18661: ; 18661 (6:4661) xor a @@ -1077,7 +1077,7 @@ Func_18f9c: ; 18f9c (6:4f9c) ld a, DUEL_ANIM_SCREEN_MAIN_SCENE ld [wDuelAnimationScreen], a ld a, $01 - ld [$d4b3], a + ld [wd4b3], a xor a ld [wd4b0], a ld a, [de] @@ -1147,10 +1147,10 @@ Func_19014: ; 19014 (6:5014) ld a, $97 call Func_3b6a ld a, [wce81] - ld [$d4b3], a + ld [wd4b3], a push de ld hl, wce7f - ld de, $d4b1 + ld de, wd4b1 ld a, [hli] ld [de], a inc de @@ -1192,7 +1192,7 @@ Func_19014: ; 19014 (6:5014) Func_19079: ; 19079 (6:5079) ld a, [de] inc de - ld [$d4b3], a + ld [wd4b3], a ld a, [wce82] ld [wd4b0], a call Func_1909d @@ -1210,7 +1210,7 @@ PointerTable_006_508f: ; 1908f (6:508f) dw Func_19013 Func_1909d: ; 1909d (6:509d) - ld a, [$d4b3] + ld a, [wd4b3] cp $04 jr z, .asm_50ad cp $01 @@ -1265,7 +1265,7 @@ Func_1909d: ; 1909d (6:509d) ; this part is not perfectly analyzed. ; needs some fix. - ld a, [$d4b3] + ld a, [wd4b3] cp $04 jr z, Func_190fb.asm_510f Func_190fb: ; 190fb (6:50fb) @@ -1341,25 +1341,25 @@ Func_19168: ; 19168 (6:5168) jr z, .asm_5188 call LoadTxRam3 ld a, [wce81] - ld hl, $003a + ldtx hl, AttackDamageText and $06 ret z - ld hl, $0038 + ldtx hl, WeaknessMoreDamage2Text cp $06 ret z and $02 - ld hl, $0037 + ldtx hl, WeaknessMoreDamageText ret nz - ld hl, $0036 + ldtx hl, ResistanceLessDamageText ret .asm_5188 call CheckNoDamageOrEffect ret c - ld hl, $003b + ldtx hl, NoDamageText ld a, [wce81] and $04 ret z - ld hl, $0039 + ldtx hl, ResistanceNoDamageText ret ; needs analyze. @@ -1624,7 +1624,7 @@ Func_1a68d: ; 1a68d (6:668d) call SetupText bank1call InitAndDrawCardListScreenLayout ldtx hl, ChooseTheCardYouWishToExamineText - ldtx de, Text0196 + ldtx de, BoosterPackText bank1call SetCardListHeaderText ld a, A_BUTTON | START ld [wNoItemSelectionMenuKeys], a @@ -1684,12 +1684,12 @@ Func_1a6cd: ; 1a6cd (6:66cd) ld hl, $00a3 bank1call DrawWholeScreenTextBox ld a, $0a - ld [$0000], a + ld [MBC3SRamEnable], a xor a ldh [hBankSRAM], a - ld [$4000], a - ld [$a000], a - ld [$0000], a + ld [MBC3SRamBank], a + ld [MBC3RTC], a + ld [MBC3SRamEnable], a jp Reset ret @@ -1712,7 +1712,7 @@ Func_1a73a: ; 1a73a (6:673a) or b jr nz, .asm_6749 ld a, $0a - ld [$0000], a + ld [MBC3SRamEnable], a ld a, e ld [s0a00b], a pop bc @@ -1728,20 +1728,20 @@ WhatIsYourNameData: ; 1a75e (6:675e) ; without any bank description. ; That is, the developers hard-coded it. -_-;; Deck1Data: ; 1a763 (6:6763) - textitem 2, 1, Text022b - textitem 14, 1, Text0219 + textitem 2, 1, Deck1Text + textitem 14, 1, DeckText db $ff Deck2Data: ; 1a76c (6:676c) - textitem 2, 1, Text022c - textitem 14, 1, Text0219 + textitem 2, 1, Deck2Text + textitem 14, 1, DeckText db $ff Deck3Data: ; 1a775 (6:6775) - textitem 2, 1, Text022d - textitem 14, 1, Text0219 + textitem 2, 1, Deck3Text + textitem 14, 1, DeckText db $ff Deck4Data: ; 1a77e (6:677e) - textitem 2, 1, Text022e - textitem 14, 1, Text0219 + textitem 2, 1, Deck4Text + textitem 14, 1, DeckText db $ff ; set each byte zero from hl for b bytes. @@ -1938,7 +1938,7 @@ DrawNamingScreenBG: ; 1a892 (6:6892) ; print "End". ld hl, .data call PlaceTextItems - ldtx hl, Text0221 + ldtx hl, PlayerNameKeyboardText lb de, 2, 4 call InitTextPrinting call ProcessTextFromID @@ -2815,7 +2815,7 @@ Func_1ae99: ; 1ae99 (6:6e99) ld hl, DrawNamingScreenBG.data call PlaceTextItems ; print the keyboard characters. - ldtx hl, NamingScreenKeyboardText ; "A B C D..." + ldtx hl, DeckNameKeyboardText ; "A B C D..." lb de, 2, 4 call InitTextPrinting call ProcessTextFromID @@ -3297,7 +3297,7 @@ Func_1bae4: ; 1bae4 (6:7ae4) push af ld hl, wd088 ld b, [hl] - farcall $2, $7625 + farcall Func_b625 jr c, .asm_7af5 pop af ld [wd0a6], a diff --git a/src/engine/bank07.asm b/src/engine/bank07.asm index 614cb61..81356d3 100644 --- a/src/engine/bank07.asm +++ b/src/engine/bank07.asm @@ -112,7 +112,7 @@ Func_1c461: ; 1c461 (7:4461) ld a, b ld [hli], a ld [hl], c - call $46e3 + call Func_1c6e3 pop bc pop hl ret @@ -214,7 +214,7 @@ Func_1c50a: ; 1c50a (7:450a) ld a, [hl] or a jr z, .asm_1c52c - call $44fa + call Func_1c4fa jr nc, .asm_1c521 xor a ld [wd3b8], a @@ -223,7 +223,7 @@ Func_1c50a: ; 1c50a (7:450a) xor a ld [hli], a ld a, [hl] - farcall $4, $69fd + farcall Func_129fd ld hl, wd349 dec [hl] @@ -337,7 +337,7 @@ Func_1c5e9: ; 1c5e9 (7:45e9) ld l, LOADED_NPC_FIELD_07 call GetItemInLoadedNPCIndex ld a, [hl] - ld bc, $fffd + ld bc, -3 add hl, bc ld [hl], a call Func_1c58e @@ -346,6 +346,7 @@ Func_1c5e9: ; 1c5e9 (7:45e9) ret ; 0x1c5ff +Func_1c5ff: ; 1c5ff (7:45ff) INCROM $1c5ff, $1c610 Func_1c610: ; 1c610 (7:4610) @@ -382,7 +383,7 @@ Func_1c719: ; 1c719 (7:4719) ld b, a ld c, [hl] ld a, $40 - call $3937 + call UpdatePermissionOfMapPosition pop bc pop hl ret @@ -473,12 +474,12 @@ Func_1c78d: ; 1c78d (7:478d) inc hl ld [hl], b dec hl - call $39ea + call Func_39ea cp $f0 jr nc, .asm_1c7bb push af and $7f - call $45ff + call Func_1c5ff pop af bit 7, a jr z, .asm_1c7dc @@ -489,7 +490,7 @@ Func_1c78d: ; 1c78d (7:478d) cp $ff jr z, .asm_1c7d2 inc bc - call $39ea + call Func_39ea push hl ld l, a ld h, $0 @@ -551,8 +552,8 @@ Func_1c83d: ; 1c83d (7:483d) pop bc pop hl ret -; 0x1c858 +Func_1c858: ; 1c858 (7:4858) INCROM $1c858, $1c8bc Func_1c8bc: ; 1c8bc (7:48bc) @@ -841,7 +842,7 @@ Func_1ca31: ; 1ca31 (7:4a31) add %00001000 and %01111111 cp b - jp z, .asm_007_4a6b + jp z, .asm_1ca6b ld [hl], a ld b, $00 @@ -864,7 +865,7 @@ Func_1ca31: ; 1ca31 (7:4a31) ld a, [wd4be] ld [hl], a -.asm_007_4a6b +.asm_1ca6b pop bc pop hl ret @@ -998,7 +999,7 @@ Func_1cb18: ; 1cb18 (7:4b18) ld [wd4c0], a ld a, [wd42a] cp $ff - call nz, $4cd4 + call nz, Func_1ccd4 ld hl, wAnimationQueue ld c, $07 .asm_1cb3b @@ -1007,7 +1008,7 @@ Func_1cb18: ; 1cb18 (7:4b18) cp $ff jr z, .asm_1cb4b ld [wWhichSprite], a - farcall $4, $69fa + farcall Func_129fa ld a, $ff ld [hl], a .asm_1cb4b @@ -1159,7 +1160,7 @@ Func_1cc03: ; 1cc03 (7:4c03) ret ; 0x1cc2f -.Func_1cc2f +.Func_1cc2f ld a, $4e .loop inc a @@ -1274,6 +1275,7 @@ Func_1ccbc: ; 1ccbc (7:4cbc) ret ; 0x1ccd4 +Func_1ccd4: ; 1ccd4 (7:4cd4) INCROM $1ccd4, $1cce4 Func_1cce4: ; 1cce4 (7:4ce4) @@ -2240,8 +2242,8 @@ Func_1d078: ; 1d078 (7:5078) ld a, MUSIC_STOP call PlaySong call Func_3ca0 - call $5335 - call $53ce + call Func_1d335 + call Func_1d3ce xor a ld [wd635], a ld a, $3c @@ -2249,7 +2251,7 @@ Func_1d078: ; 1d078 (7:5078) .asm_1d095 call DoFrameIfLCDEnabled call UpdateRNGSources - call $5614 + call Func_1d614 ld hl, wd635 inc [hl] call AssertSongFinished @@ -2273,46 +2275,46 @@ Func_1d078: ; 1d078 (7:5078) farcall Func_10ab4 .asm_1d0c7 - call $50fa - call $511c + call Func_1d0fa + call Func_1d11c ld a, [wd628] cp $2 jr nz, .asm_1d0db - call $5289 + call Func_1d289 jr c, Func_1d078 jr .asm_1d0e7 .asm_1d0db ld a, [wd628] cp $1 jr nz, .asm_1d0e7 - call $52b8 + call Func_1d2b8 jr c, Func_1d078 .asm_1d0e7 ld a, [wd628] cp $0 jr nz, .asm_1d0f3 - call $52dd + call Func_1d2dd jr c, Func_1d078 .asm_1d0f3 call ResetDoFrameFunction call Func_3ca0 ret -; 0x1d0fa +Func_1d0fa: ; 1d0fa (7:50fa) INCROM $1d0fa, $1d11c Func_1d11c: ; 1d11c (7:511c) ld a, MUSIC_PC_MAIN_MENU call PlaySong call DisableLCD - farcall $4, $4000 + farcall Func_10000 lb de, $30, $8f call SetupText call Func_3ca0 xor a ld [wLineSeparation], a - call $51e1 - call $517f + call Func_1d1e1 + call Func_1d17f ld a, $ff ld [wd626], a ld a, [wd627] @@ -2325,13 +2327,13 @@ Func_1d11c: ; 1d11c (7:511c) .asm_1d14f ld hl, wd636 farcall Func_111e9 - farcall $4, $4031 + farcall Func_10031 .asm_1d15a call DoFrameIfLCDEnabled call UpdateRNGSources call HandleMenuInput push af - call $51e9 + call Func_1d1e9 pop af jr nc, .asm_1d15a ldh a, [hCurMenuItem] @@ -2347,12 +2349,30 @@ Func_1d11c: ; 1d11c (7:511c) ld a, e ld [wd628], a ret -; 0x1d17f - INCROM $1d17f, $1d306 +Func_1d17f: ; 1d17f (7:517f) + INCROM $1d17f, $1d1e1 + +Func_1d1e1: ; 1d1e1 (7:51e1) + INCROM $1d1e1, $1d1e9 + +Func_1d1e9: ; 1d1e9 (7:51e9) + INCROM $1d1e9, $1d289 + +Func_1d289: ; 1d289 (7:5289) + INCROM $1d289, $1d2b8 + +Func_1d2b8: ; 1d2b8 (7:52b8) + INCROM $1d2b8, $1d2dd + +Func_1d2dd: ; 1d2dd (7:52dd) + INCROM $1d2dd, $1d306 Func_1d306: ; 1d306 (7:5306) - INCROM $1d306, $1d386 + INCROM $1d306, $1d335 + +Func_1d335: ; 1d335 (7:5335) + INCROM $1d335, $1d386 Titlescreen_1d386: ; 1d386 (7:5386) call AssertSongFinished @@ -2372,7 +2392,10 @@ Titlescreen_1d386: ; 1d386 (7:5386) ret Func_1d3a9: ; 1d3a9 (7:53a9) - INCROM $1d3a9, $1d42e + INCROM $1d3a9, $1d3ce + +Func_1d3ce: ; 1d3ce (7:53ce) + INCROM $1d3ce, $1d42e Func_1d42e: ; 1d42e (7:542e) INCROM $1d42e, $1d519 @@ -2388,35 +2411,38 @@ Titlescreen_1d519: ; 1d519 (7:5519) INCROM $1d523, $1d59c Func_1d59c: ; 1d59c (7:559c) - INCROM $1d59c, $1d6ad + INCROM $1d59c, $1d614 + +Func_1d614: ; 1d614 (7:5614) + INCROM $1d614, $1d6ad Credits_1d6ad: ; 1d6ad (7:56ad) ld a, MUSIC_STOP call PlaySong - call $5705 - call $4858 + call Func_1d705 + call Func_1c858 xor a ld [wd324], a ld a, MUSIC_CREDITS call PlaySong - farcall $4, $4031 - call $57fc + farcall Func_10031 + call Func_1d7fc .asm_1d6c8 call DoFrameIfLCDEnabled - call $5765 - call $580b + call Func_1d765 + call Func_1d80b ld a, [wd633] cp $ff jr nz, .asm_1d6c8 call WaitForSongToFinish ld a, $8 - farcall $4, $6863 + farcall Func_12863 ld a, MUSIC_STOP call PlaySong farcall Func_10ab4 call Func_3ca4 call Set_WD_off - call $5758 + call Func_1d758 call EnableLCD call DoFrameIfLCDEnabled call DisableLCD @@ -2424,6 +2450,18 @@ Credits_1d6ad: ; 1d6ad (7:56ad) set 1, [hl] call ResetDoFrameFunction ret -; 0x1d705 - INCROM $1d705, $1e1c4 +Func_1d705: ; 1d705 (7:5705) + INCROM $1d705, $1d758 + +Func_1d758: ; 1d758 (7:5758) + INCROM $1d758, $1d765 + +Func_1d765: ; 1d765 (7:5765) + INCROM $1d765, $1d7fc + +Func_1d7fc: ; 1d7fc (7:57fc) + INCROM $1d7fc, $1d80b + +Func_1d80b: ; 1d80b (7:580b) + INCROM $1d80b, $1e1c4 diff --git a/src/engine/bank20.asm b/src/engine/bank20.asm index c2a8cdf..31e6d91 100644 --- a/src/engine/bank20.asm +++ b/src/engine/bank20.asm @@ -5,9 +5,9 @@ Func_80028: ; 80028 (20:4028) call Func_801f1 ld bc, $0000 call Func_80077 - farcall $3, $49c7 - call $41a1 - farcall $3, $43ee + farcall Func_c9c7 + call Func_801a1 + farcall Func_c3ee ret ; 0x8003d @@ -16,12 +16,12 @@ Func_80028: ; 80028 (20:4028) Func_80077: ; 80077 (20:4077) ld a, $1 ld [wd292], a - jr .asm_80082 + jr Func_80082 xor a ld [wd292], a -.asm_80082 +Func_80082: ; 80082 (20:4082) push hl push bc push de @@ -78,7 +78,7 @@ Func_800bd: ; 800bd (20:40bd) Func_800e0: ; 800e0 (20:40e0) push hl - ld hl, $d28e + ld hl, wd28e ld a, [wd12f] ld [hl], a ld a, [wd23c] @@ -99,7 +99,7 @@ Func_800e0: ; 800e0 (20:40e0) push bc push de ld b, $00 - ld a, [$d28e] + ld a, [wd28e] ld c, a ld de, wd23e call Func_3be4 @@ -138,17 +138,17 @@ Func_800e0: ; 800e0 (20:40e0) ret Func_80148: ; 80148 (20:4148) - ld a, [$d291] + ld a, [wd291] or a ret z - ld a, [$d23c] + ld a, [wd23c] or a jr z, .asm_80162 push hl push bc .asm_80155 push bc - ld a, [$d291] + ld a, [wd291] add [hl] ld [hli], a pop bc @@ -160,7 +160,7 @@ Func_80148: ; 80148 (20:4148) .asm_80162 push hl push bc - ld a, [$d291] + ld a, [wd291] .asm_80167 ld [hli], a dec b @@ -411,7 +411,7 @@ Func_803b9: ; 803b9 (20:43b9) call GetMapDataPointer call LoadGraphicsPointerFromHL ld a, [hl] - ld [$d239], a + ld [wd239], a ret ; 0x803c9 @@ -570,9 +570,9 @@ Func_80b89: ; 80b89 (20:4b89) push af ld c, a ld a, $01 - ld [$d292], a + ld [wd292], a ld b, $00 - ld hl, $d323 + ld hl, wd323 add hl, bc ld a, [hl] or a @@ -618,7 +618,7 @@ Func_80baa: ; 80baa (20:4baa) add a ld c, a ld b, $0 - ld hl, $4c21 + ld hl, Unknown_80c21 add hl, bc ld a, [hli] ld h, [hl] @@ -636,7 +636,7 @@ Func_80baa: ; 80baa (20:4baa) ld a, [hl] ld [wd131], a push bc - farcall $20, $4082 + farcall Func_80082 pop bc srl b ld a, c @@ -648,7 +648,7 @@ Func_80baa: ; 80baa (20:4baa) ld b, $0 ld hl, wBoosterViableCardList add hl, bc - farcall $3, $438f + farcall Func_c38f pop af ld [wd23b], a pop af @@ -665,8 +665,8 @@ Func_80baa: ; 80baa (20:4baa) pop bc pop hl ret -; 0x80c21 +Unknown_80c21: ; 80c21 (20:4c21) INCROM $80c21, $80e5a SpriteNullAnimationPointer: ; 80e5a (20:4e5a) diff --git a/src/engine/effect_functions.asm b/src/engine/effect_functions.asm index 63a3642..45e71a2 100644 --- a/src/engine/effect_functions.asm +++ b/src/engine/effect_functions.asm @@ -495,7 +495,7 @@ ApplyAndAnimateHPRecovery: ; 2c221 (b:4221) ld e, a ld a, 0 adc d - ld d, a + ld d, a ; de = damage dealt + current HP ; bc = max HP of card call CompareDEtoBC @@ -877,7 +877,7 @@ HandleDefendingPokemonAttackSelection: ; 2c391 (b:4391) db 2 ; number of items db SYM_CURSOR_R ; cursor tile number db SYM_SPACE ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 ; 0x2c3fc ; loads in hl the pointer to attack's name. @@ -1244,7 +1244,7 @@ HandleColorChangeScreen: ; 2c588 (b:4588) db MAX_PLAY_AREA_POKEMON ; number of items db SYM_CURSOR_R ; cursor tile number db SYM_SPACE ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 ; 0x2c5be .DrawScreen: ; 2c5be (b:45be) @@ -1444,7 +1444,7 @@ PlayAreaSelectionMenuParameters: ; 2c6e0 (b:46e0) db MAX_PLAY_AREA_POKEMON ; number of items db SYM_CURSOR_R ; cursor tile number db SYM_SPACE ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 ; 0x2c6e8 BenchSelectionMenuParameters: ; 2c6e8 (b:46e8) @@ -1453,7 +1453,7 @@ BenchSelectionMenuParameters: ; 2c6e8 (b:46e8) db MAX_PLAY_AREA_POKEMON ; number of items db SYM_CURSOR_R ; cursor tile number db SYM_SPACE ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 ; 0x2c6f0 SpitPoison_AIEffect: ; 2c6f0 (b:46f0) @@ -9097,7 +9097,7 @@ MorphEffect: ; 2eff6 (b:6ff6) .successful ld a, DUELVARS_ARENA_CARD_STAGE call GetTurnDuelistVariable - or a + or a jr z, .skip_discard_stage_below ; if this is a stage 1 Pokemon (in case it's used diff --git a/src/engine/home.asm b/src/engine/home.asm index c860dd3..8e5233b 100644 --- a/src/engine/home.asm +++ b/src/engine/home.asm @@ -7983,7 +7983,7 @@ NarrowTextBoxMenuParameters: ; 2a96 (0:2a96) db 1 ; number of items db SYM_CURSOR_D ; cursor tile number db SYM_BOX_BOTTOM ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 ; draw a 20x6 text box aligned to the bottom of the screen DrawWideTextBox: ; 2a9e (0:2a9e) @@ -8020,7 +8020,7 @@ WideTextBoxMenuParameters: ; 2ac8 (0:2ac8) db 1 ; number of items db SYM_CURSOR_D ; cursor tile number db SYM_BOX_BOTTOM ; tile behind cursor - dw $0000 ; function pointer if non-0 + dw NULL ; function pointer if non-0 ; display a two-item horizontal menu with custom text provided in hl and handle input TwoItemHorizontalMenu: ; 2ad0 (0:2ad0) @@ -8793,7 +8793,7 @@ LoadTxRam3: ; 2ec4 (0:2ec4) ; load data of card with text id of name at de to wLoadedCard1 LoadCardDataToBuffer1_FromName: ; 2ecd (0:2ecd) - ld hl, CardPointers + 2 ; skip first $0000 pointer + ld hl, CardPointers + 2 ; skip first NULL pointer ld a, BANK(CardPointers) call BankpushROM2 .find_card_loop @@ -9051,7 +9051,7 @@ CheckMatchingCommand: ; 2ffe (0:2ffe) ld a, l or h jr nz, .not_null_pointer - ; return carry if pointer is $0000 + ; return carry if pointer is NULL scf ret @@ -10639,7 +10639,7 @@ GameEvent_Duel: ; 38c0 (0:38c0) ld [wd112], a call EnableSRAM xor a - ld [$ba44], a + ld [sba44], a call DisableSRAM call Func_3a3b bank1call StartDuel @@ -10652,7 +10652,7 @@ GameEvent_ChallengeMachine: ; 38db (0:38db) call Func_39fc call EnableSRAM xor a - ld [$ba44], a + ld [sba44], a call DisableSRAM .asm_38ed farcall Func_131d3 @@ -10667,7 +10667,7 @@ GameEvent_ContinueDuel: ; 38fb (0:38fb) ld [wd112], a bank1call TryContinueDuel call EnableSRAM - ld a, [$ba44] + ld a, [sba44] call DisableSRAM cp $ff jr z, GameEvent_ChallengeMachine.asm_38ed @@ -11060,9 +11060,9 @@ RunOverworldScript: ; 3aed (0:3aed) Func_3b11: ; 3b11 (0:3b11) ldh a, [hBankROM] push af - ld a, $04 + ld a, BANK(_GameLoop) call BankswitchROM - call $66d1 + call _GameLoop pop af call BankswitchROM ret @@ -11126,7 +11126,7 @@ Func_3b6a: ; 3b6a (0:3b6a) push hl push bc push de - ld a, BANK(Func_1ca31) + ld a, BANK(Func_1ca31) ; BANK(Func_1c8ef) call BankswitchROM ld a, [wTempAnimation] cp $61 @@ -11191,7 +11191,7 @@ SetDoFrameFunction: ; 3bd2 (0:3bd2) ResetDoFrameFunction: ; 3bdb (0:3bdb) push hl - ld hl, $0000 + ld hl, NULL call SetDoFrameFunction pop hl ret @@ -11331,7 +11331,7 @@ DivideBCbyDE: ; 3c5a (0:3c5a) jr nz, .asm_3c63 ret -CallPlaySong: ; 3c83 (0:3c83) +ScriptPlaySong: ; 3c83 (0:3c83) call PlaySong ret @@ -11629,9 +11629,9 @@ Func_3e17: ; 3e17 (0:3e17) ld [wd131], a ldh a, [hBankROM] push af - ld a, $4 + ld a, BANK(Func_12fc6) call BankswitchROM - call $6fc6 + call Func_12fc6 pop af call BankswitchROM ret @@ -11646,9 +11646,9 @@ Func_3e31: ; 3e31 (0:3e31) ldh a, [hBankROM] push af call Func_3cb4 - ld a, $20 + ld a, BANK(Func_804d8) call BankswitchROM - call $44d8 + call Func_804d8 pop af call BankswitchROM ret |