From 8431fa7756dace97413f4c35aaa44cd92cf5b6df Mon Sep 17 00:00:00 2001 From: "U-Daniel-PC\\Daniel" Date: Fri, 3 Jul 2015 14:58:50 -0500 Subject: TX_ASM --- engine/hidden_object_functions3.asm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'engine/hidden_object_functions3.asm') diff --git a/engine/hidden_object_functions3.asm b/engine/hidden_object_functions3.asm index c471c7bb..23254c11 100755 --- a/engine/hidden_object_functions3.asm +++ b/engine/hidden_object_functions3.asm @@ -60,7 +60,7 @@ BookshelfTileIDs: ; fb8b (3:7b8b) db $FF IndigoPlateauStatues: ; fbbf (3:7bbf) - db $08 ; asm + TX_ASM ld hl, IndigoPlateauStatuesText1 call PrintText ld a, [W_XCOORD] @@ -85,7 +85,7 @@ IndigoPlateauStatuesText3: ; fbe3 (3:7be3) db "@" BookOrSculptureText: ; fbe8 (3:7be8) - db $08 ; asm + TX_ASM ld hl, PokemonBooksText ld a, [W_CURMAPTILESET] cp MANSION ; Celadon Mansion tileset @@ -113,7 +113,7 @@ ElevatorText: ; fc0d (3:7c0d) TownMapText: ; fc12 (3:7c12) TX_FAR _TownMapText db $06 - db $08 ; asm + TX_ASM ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a ld hl, wd730 -- cgit v1.3.1-sl0p From f702fc7840e30f00c840ce619a1ea15d763438de Mon Sep 17 00:00:00 2001 From: dannye Date: Sat, 4 Jul 2015 00:44:12 -0500 Subject: Start using text predef macros also sprite direction constants --- data/hidden_objects.asm | 10 ++--- engine/game_corner_slots.asm | 6 +-- engine/game_corner_slots2.asm | 4 +- engine/hidden_object_functions14.asm | 14 +++--- engine/hidden_object_functions17.asm | 33 ++++++-------- engine/hidden_object_functions18.asm | 86 ++++++++++++++++++++---------------- engine/hidden_object_functions3.asm | 51 ++++++++++++++------- engine/hidden_object_functions7.asm | 38 +++++++--------- engine/menu/bills_pc.asm | 11 ++--- engine/overworld/card_key.asm | 4 +- engine/overworld/cut.asm | 16 +++---- engine/overworld/hidden_items.asm | 7 ++- engine/overworld/movement.asm | 36 +++++++-------- home.asm | 18 ++++---- home/overworld.asm | 6 +-- macros.asm | 2 +- main.asm | 4 +- scripts/battlecenterm.asm | 4 +- scripts/billshouse.asm | 7 +-- scripts/copycatshouse2f.asm | 6 +-- scripts/mansion1.asm | 2 +- scripts/mansion2.asm | 2 +- scripts/mansion3.asm | 2 +- scripts/mansion4.asm | 2 +- scripts/oakslab.asm | 7 +-- scripts/pallettown.asm | 2 +- scripts/pokemontower7.asm | 2 +- scripts/redshouse1f.asm | 6 +-- scripts/route11gateupstairs.asm | 6 +-- scripts/route12gateupstairs.asm | 16 +++---- scripts/route15gateupstairs.asm | 2 +- scripts/route16gateupstairs.asm | 4 +- scripts/route18gateupstairs.asm | 4 +- scripts/route22.asm | 14 +++--- scripts/safarizoneentrance.asm | 4 +- scripts/vermilioncity.asm | 6 +-- 36 files changed, 225 insertions(+), 219 deletions(-) (limited to 'engine/hidden_object_functions3.asm') diff --git a/data/hidden_objects.asm b/data/hidden_objects.asm index 74d053bb..0e36dbc4 100755 --- a/data/hidden_objects.asm +++ b/data/hidden_objects.asm @@ -233,10 +233,10 @@ ViridianPokecenterHiddenObjects: ; 46b93 (11:6b93) ViridianMartHiddenObjects: ; 46ba0 (11:6ba0) db $FF ViridianSchoolHiddenObjects: ; 46ba1 (11:6ba1) - db $04,$03,$20 ; ViridianSchoolNotebook + db $04,$03,(ViridianSchoolNotebook_id - TextPredefs) / 2 + 1 db Bank(PrintNotebookText) dw PrintNotebookText - db $00,$03,$21 ; ViridianSchoolBlackboard + db $00,$03,(ViridianSchoolBlackboard_id - TextPredefs) / 2 + 1 db BANK(PrintBlackboardLinkCableText) dw PrintBlackboardLinkCableText db $FF @@ -743,13 +743,13 @@ LavenderHouse1HiddenObjects: ; 46fc2 (11:6fc2) dw PrintMagazinesText db $FF CeladonMansion5HiddenObjects: ; 46fd5 (11:6fd5) - db $00,$03,$34 ; LinkCableHelp + db $00,$03,(LinkCableHelp_id - TextPredefs) / 2 + 1 db BANK(PrintBlackboardLinkCableText) dw PrintBlackboardLinkCableText - db $00,$04,$34 ; LinkCableHelp + db $00,$04,(LinkCableHelp_id - TextPredefs) / 2 + 1 db BANK(PrintBlackboardLinkCableText) dw PrintBlackboardLinkCableText - db $04,$03,$35 ; TMNotebook + db $04,$03,(TMNotebook_id - TextPredefs) / 2 + 1 db Bank(PrintNotebookText) dw PrintNotebookText db $FF diff --git a/engine/game_corner_slots.asm b/engine/game_corner_slots.asm index 52f61daf..01d42d21 100755 --- a/engine/game_corner_slots.asm +++ b/engine/game_corner_slots.asm @@ -27,13 +27,13 @@ StartSlotMachine: ; 37e2d (d:7e2d) call PromptUserToPlaySlots ret .printOutOfOrder - ld a, $28 + tx_pre_id GameCornerOutOfOrderText jr .printText .printOutToLunch - ld a, $29 + tx_pre_id GameCornerOutToLunchText jr .printText .printSomeonesKeys - ld a, $2a + tx_pre_id GameCornerSomeonesKeysText .printText push af call EnableAutoTextBoxDrawing diff --git a/engine/game_corner_slots2.asm b/engine/game_corner_slots2.asm index 66e51237..850b1f99 100755 --- a/engine/game_corner_slots2.asm +++ b/engine/game_corner_slots2.asm @@ -6,13 +6,13 @@ AbleToPlaySlotsCheck ; 2ff09 (b:7f09) predef IsItemInBag_ ; IsItemInBag_ ld a, b and a - ld b, $33 ; GameCornerCoinCaseText + ld b, (GameCornerCoinCaseText_id - TextPredefs) / 2 + 1 jr z, .printCoinCaseRequired ld hl, wPlayerCoins ld a, [hli] or [hl] jr nz, .done ; able to play - ld b, $32 ; GameCornerNoCoinsText + ld b, (GameCornerNoCoinsText_id - TextPredefs) / 2 + 1 .printCoinCaseRequired call EnableAutoTextBoxDrawing ld a, b diff --git a/engine/hidden_object_functions14.asm b/engine/hidden_object_functions14.asm index 5b97b815..e0ed973d 100755 --- a/engine/hidden_object_functions14.asm +++ b/engine/hidden_object_functions14.asm @@ -66,8 +66,7 @@ ViridianSchoolNotebookText4: ; 52a03 (14:6a03) PrintFightingDojoText2: ; 52a08 (14:6a08) call EnableAutoTextBoxDrawing - ld a, $37 - jp PrintPredefTextID + tx_pre_jump FightingDojoText_52a10 FightingDojoText_52a10: ; 52a10 (14:6a10) TX_FAR _FightingDojoText_52a10 @@ -75,8 +74,7 @@ FightingDojoText_52a10: ; 52a10 (14:6a10) PrintFightingDojoText3: ; 52a15 (14:6a15) call EnableAutoTextBoxDrawing - ld a, $38 - jp PrintPredefTextID + tx_pre_jump FightingDojoText_52a1d FightingDojoText_52a1d: ; 52a1d (14:6a1d) TX_FAR _FightingDojoText_52a1d @@ -84,8 +82,7 @@ FightingDojoText_52a1d: ; 52a1d (14:6a1d) PrintFightingDojoText: ; 52a22 (14:6a22) call EnableAutoTextBoxDrawing - ld a, $36 - jp PrintPredefTextID + tx_pre_jump FightingDojoText FightingDojoText: ; 52a2a (14:6a2a) TX_FAR _FightingDojoText @@ -93,11 +90,10 @@ FightingDojoText: ; 52a2a (14:6a2a) PrintIndigoPlateauHQText: ; 52a2f (14:6a2f) ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ret nz call EnableAutoTextBoxDrawing - ld a, $27 - jp PrintPredefTextID + tx_pre_jump IndigoPlateauHQText IndigoPlateauHQText: ; 52a3d (14:6a3d) TX_FAR _IndigoPlateauHQText diff --git a/engine/hidden_object_functions17.asm b/engine/hidden_object_functions17.asm index b7b2fa00..46140927 100755 --- a/engine/hidden_object_functions17.asm +++ b/engine/hidden_object_functions17.asm @@ -1,7 +1,6 @@ PrintRedsNESText: ; 5db79 (17:5b79) call EnableAutoTextBoxDrawing - ld a, $4 ; RedBedroomSNESText - jp PrintPredefTextID + tx_pre_jump RedBedroomSNESText RedBedroomSNESText: ; 5db81 (17:5b81) TX_FAR _RedBedroomSNESText @@ -9,19 +8,17 @@ RedBedroomSNESText: ; 5db81 (17:5b81) OpenRedsPC: ; 5db86 (17:5b86) call EnableAutoTextBoxDrawing - ld a, $3 - jp PrintPredefTextID + tx_pre_jump RedBedroomPCText -RedBedroomPC: ; 5db8e (17:5b8e) +RedBedroomPCText: ; 5db8e (17:5b8e) db $fc ; FuncTX_ItemStoragePC Route15GateLeftBinoculars: ; 5db8f (17:5b8f) ld a, [wSpriteStateData1 + 9] - cp $4 ; i + cp SPRITE_FACING_UP ret nz call EnableAutoTextBoxDrawing - ld a, $a ; text id Route15UpstairsBinocularsText - call PrintPredefTextID + tx_pre Route15UpstairsBinocularsText ld a, ARTICUNO ld [wcf91], a call PlayCry @@ -36,8 +33,7 @@ AerodactylFossil: ; 5dbad (17:5bad) ld [wcf91], a call DisplayMonFrontSpriteInBox call EnableAutoTextBoxDrawing - ld a, $9 - call PrintPredefTextID + tx_pre AerodactylFossilText ret AerodactylFossilText: ; 5dbbe (17:5bbe) @@ -49,8 +45,7 @@ KabutopsFossil: ; 5bdc3 (17:5bc3) ld [wcf91], a call DisplayMonFrontSpriteInBox call EnableAutoTextBoxDrawing - ld a, $b - call PrintPredefTextID + tx_pre KabutopsFossilText ret KabutopsFossilText: ; 5dbd4 (17:5bd4) @@ -307,8 +302,7 @@ ViridianBlackboardFrozenText: ; 5ddea (17:5dea) PrintTrashText: ; 5ddef (17:5def) call EnableAutoTextBoxDrawing - ld a, $26 - jp PrintPredefTextID + tx_pre_jump VermilionGymTrashText VermilionGymTrashText: ; 5ddf7 (17:5df7) TX_FAR _VermilionGymTrashText @@ -324,8 +318,7 @@ GymTrashScript: ; 5ddfc (17:5dfc) bit 0, a jr z, .ok - ld a, $26 ; DisplayTextID $26 = VermilionGymTrashText (nothing in the trash) - jp PrintPredefTextID + tx_pre_jump VermilionGymTrashText .ok bit 1, a @@ -337,7 +330,7 @@ GymTrashScript: ; 5ddfc (17:5dfc) cp b jr z, .openFirstLock - ld a, $26 ; DisplayTextID $26 = VermilionGymTrashText (nothing in the trash) + tx_pre_id VermilionGymTrashText jr .done .openFirstLock @@ -375,7 +368,7 @@ GymTrashScript: ; 5ddfc (17:5dfc) and $f ld [wd744], a - ld a, $3b ; DisplayTextID $3b = VermilionGymTrashSuccesText1 (first lock opened!) + tx_pre_id VermilionGymTrashSuccesText1 jr .done .trySecondLock @@ -393,7 +386,7 @@ GymTrashScript: ; 5ddfc (17:5dfc) and $e ld [wd743], a - ld a, $3e ; DisplayTextID $3e = VermilionGymTrashFailText (locks reset!) + tx_pre_id VermilionGymTrashFailText jr .done .openSecondLock @@ -403,7 +396,7 @@ GymTrashScript: ; 5ddfc (17:5dfc) ld hl, wd126 set 6, [hl] - ld a, $3d ; DisplayTextID $3d = VermilionGymTrashSuccesText3 (2nd lock opened!) + tx_pre_id VermilionGymTrashSuccesText3 .done jp PrintPredefTextID diff --git a/engine/hidden_object_functions18.asm b/engine/hidden_object_functions18.asm index 44be4c31..e293b0a0 100755 --- a/engine/hidden_object_functions18.asm +++ b/engine/hidden_object_functions18.asm @@ -1,31 +1,31 @@ GymStatues: ; 62419 (18:6419) -; if in a gym and have the corresponding badge, a = $D and jp PrintPredefTextID -; if in a gym and don’t have the corresponding badge, a = $C and jp PrintPredefTextID +; if in a gym and have the corresponding badge, a = GymStatueText2_id and jp PrintPredefTextID +; if in a gym and don’t have the corresponding badge, a = GymStatueText1_id and jp PrintPredefTextID ; else ret call EnableAutoTextBoxDrawing ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ret nz ld hl, .BadgeFlags ld a, [W_CURMAP] ld b, a -.asm_62429 +.loop ld a, [hli] cp $ff ret z cp b - jr z, .asm_62433 + jr z, .match inc hl - jr .asm_62429 -.asm_62433 + jr .loop +.match ld b, [hl] ld a, [wd72a] and b cp b - ld a, $d - jr z, .asm_6243f - ld a, $c -.asm_6243f + tx_pre_id GymStatueText2 + jr z, .haveBadge + tx_pre_id GymStatueText1 +.haveBadge jp PrintPredefTextID .BadgeFlags: ; 62442 (18:6442) @@ -49,41 +49,53 @@ GymStatueText2: ; 62458 (18:6458) PrintBenchGuyText: ; 6245d (18:645d) call EnableAutoTextBoxDrawing - ld hl, PokeCenterMapIDList + ld hl, BenchGuyTextPointers ld a, [W_CURMAP] ld b, a -.asm_62467 +.loop ld a, [hli] cp $ff ret z cp b - jr z, .asm_62472 + jr z, .match inc hl inc hl - jr .asm_62467 -.asm_62472 + jr .loop +.match ld a, [hli] ld b, a ld a, [wSpriteStateData1 + 9] cp b - jr nz, .asm_62467 + jr nz, .loop ; player isn't facing left at the bench guy ld a, [hl] jp PrintPredefTextID -; format: db map id, 08, text id of PredefTextIDPointerTable -PokeCenterMapIDList: ; 6247e (18:647e) - db VIRIDIAN_POKECENTER,$08,$0F - db PEWTER_POKECENTER,$08,$10 - db CERULEAN_POKECENTER,$08,$11 - db LAVENDER_POKECENTER,$08,$12 - db VERMILION_POKECENTER,$08,$13 - db CELADON_POKECENTER,$08,$14 - db CELADON_HOTEL,$08,$15 - db FUCHSIA_POKECENTER,$08,$16 - db CINNABAR_POKECENTER,$08,$17 - db SAFFRON_POKECENTER,$08,$18 - db MT_MOON_POKECENTER,$08,$19 - db ROCK_TUNNEL_POKECENTER,$08,$1A +; format: db map id, player sprite facing direction, text id of PredefTextIDPointerTable +BenchGuyTextPointers: ; 6247e (18:647e) + db VIRIDIAN_POKECENTER, SPRITE_FACING_LEFT + db (ViridianCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db PEWTER_POKECENTER, SPRITE_FACING_LEFT + db (PewterCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db CERULEAN_POKECENTER, SPRITE_FACING_LEFT + db (CeruleanCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db LAVENDER_POKECENTER, SPRITE_FACING_LEFT + db (LavenderCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db VERMILION_POKECENTER, SPRITE_FACING_LEFT + db (VermilionCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db CELADON_POKECENTER, SPRITE_FACING_LEFT + db (CeladonCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db CELADON_HOTEL, SPRITE_FACING_LEFT + db (CeladonCityHotelText_id - TextPredefs) / 2 + 1 + db FUCHSIA_POKECENTER, SPRITE_FACING_LEFT + db (FuchsiaCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db CINNABAR_POKECENTER, SPRITE_FACING_LEFT + db (CinnabarIslandPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db SAFFRON_POKECENTER, SPRITE_FACING_LEFT + db (SaffronCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db MT_MOON_POKECENTER, SPRITE_FACING_LEFT + db (MtMoonPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 + db ROCK_TUNNEL_POKECENTER,SPRITE_FACING_LEFT + db (RockTunnelPokecenterBenchGuyText_id - TextPredefs) / 2 + 1 db $FF ViridianCityPokecenterBenchGuyText: ; 624a3 (18:64a3) @@ -163,13 +175,12 @@ CeladonCityHotelText: ; 62502 (18:6502) ret -TerminatorText_62508: ; 62508 (18:6508) +UnusedPredefText: ; 62508 (18:6508) db "@" PrintBookcaseText: ; 6509 (18:6509) call EnableAutoTextBoxDrawing - ld a, $e ; BookcaseText - jp PrintPredefTextID + tx_pre_jump BookcaseText BookcaseText: ; 62511 (18:6511) TX_FAR _BookcaseText @@ -177,13 +188,12 @@ BookcaseText: ; 62511 (18:6511) OpenPokemonCenterPC: ; 62516 (18:6516) ld a, [wSpriteStateData1 + 9] - cp $4 ; check to see if player is facing up + cp SPRITE_FACING_UP ; check to see if player is facing up ret nz call EnableAutoTextBoxDrawing ld a, $1 ld [wAutoTextBoxDrawingControl], a - ld a, $1f ; PredefText1f - jp PrintPredefTextID + tx_pre_jump PokemonCenterPCText -PredefText1f: ; 62529 (18:6529) +PokemonCenterPCText: ; 62529 (18:6529) db $F9 ; FuncTX_PokemonCenterPC diff --git a/engine/hidden_object_functions3.asm b/engine/hidden_object_functions3.asm index 23254c11..c40073cb 100755 --- a/engine/hidden_object_functions3.asm +++ b/engine/hidden_object_functions3.asm @@ -40,23 +40,40 @@ PrintBookshelfText: ; fb50 (3:7b50) ; format: db tileset id, bookshelf tile id, text id BookshelfTileIDs: ; fb8b (3:7b8b) - db PLATEAU, $30, $3A - db HOUSE, $3D, $3F - db HOUSE, $1E, $40 - db MANSION, $32, $40 - db REDS_HOUSE_1, $32, $40 - db LAB, $28, $40 - db LOBBY, $16, $41 - db GYM, $1D, $40 - db DOJO, $1D, $40 - db GATE, $22, $40 - db MART, $54, $42 - db MART, $55, $42 - db POKECENTER, $54, $42 - db POKECENTER, $55, $42 - db LOBBY, $50, $42 - db LOBBY, $52, $42 - db SHIP, $36, $40 + db PLATEAU, $30 + db (IndigoPlateauStatues_id - TextPredefs) / 2 + 1 + db HOUSE, $3D + db (TownMapText_id - TextPredefs) / 2 + 1 + db HOUSE, $1E + db (BookOrSculptureText_id - TextPredefs) / 2 + 1 + db MANSION, $32 + db (BookOrSculptureText_id - TextPredefs) / 2 + 1 + db REDS_HOUSE_1, $32 + db (BookOrSculptureText_id - TextPredefs) / 2 + 1 + db LAB, $28 + db (BookOrSculptureText_id - TextPredefs) / 2 + 1 + db LOBBY, $16 + db (ElevatorText_id - TextPredefs) / 2 + 1 + db GYM, $1D + db (BookOrSculptureText_id - TextPredefs) / 2 + 1 + db DOJO, $1D + db (BookOrSculptureText_id - TextPredefs) / 2 + 1 + db GATE, $22 + db (BookOrSculptureText_id - TextPredefs) / 2 + 1 + db MART, $54 + db (PokemonStuffText_id - TextPredefs) / 2 + 1 + db MART, $55 + db (PokemonStuffText_id - TextPredefs) / 2 + 1 + db POKECENTER, $54 + db (PokemonStuffText_id - TextPredefs) / 2 + 1 + db POKECENTER, $55 + db (PokemonStuffText_id - TextPredefs) / 2 + 1 + db LOBBY, $50 + db (PokemonStuffText_id - TextPredefs) / 2 + 1 + db LOBBY, $52 + db (PokemonStuffText_id - TextPredefs) / 2 + 1 + db SHIP, $36 + db (BookOrSculptureText_id - TextPredefs) / 2 + 1 db $FF IndigoPlateauStatues: ; fbbf (3:7bbf) diff --git a/engine/hidden_object_functions7.asm b/engine/hidden_object_functions7.asm index b06f11ca..f29b0925 100755 --- a/engine/hidden_object_functions7.asm +++ b/engine/hidden_object_functions7.asm @@ -1,7 +1,6 @@ PrintNewBikeText: ; 1e94b (7:694b) call EnableAutoTextBoxDrawing - ld a, $39 - jp PrintPredefTextID + tx_pre_jump NewBicycleText NewBicycleText: ; 1e953 (7:6953) TX_FAR _NewBicycleText @@ -9,8 +8,7 @@ NewBicycleText: ; 1e953 (7:6953) DisplayOakLabLeftPoster: ; 1e958 (7:6958) call EnableAutoTextBoxDrawing - ld a, $05 ; PushStartText - jp PrintPredefTextID + tx_pre_jump PushStartText PushStartText: ; 1e960 (7:6960) TX_FAR _PushStartText @@ -23,10 +21,10 @@ DisplayOakLabRightPoster: ; 1e965 (7:6965) call CountSetBits ld a, [wd11e] cp $2 - ld a, $6 ; SaveOptionText - jr c, .asm_1e97b - ld a, $7 ; StrengthsAndWeaknessesText -.asm_1e97b + tx_pre_id SaveOptionText + jr c, .ownThreeOrMoreMon + tx_pre_id StrengthsAndWeaknessesText +.ownThreeOrMoreMon jp PrintPredefTextID SaveOptionText: ; 1e97e (7:697e) @@ -120,11 +118,10 @@ GameOverText: ; 1ea12 (7:6a12) PrintCinnabarQuiz: ; 1ea17 (7:6a17) ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ret nz call EnableAutoTextBoxDrawing - ld a, $31 - jp PrintPredefTextID + tx_pre_jump CinnabarGymQuiz CinnabarGymQuiz: ; 1ea25 (7:6a25) TX_ASM @@ -309,8 +306,7 @@ CinnabarGymGateCoords: ; 1eb48 (7:6b48) PrintMagazinesText: ; 1eb60 (7:6b60) call EnableAutoTextBoxDrawing - ld a, $30 - call PrintPredefTextID + tx_pre MagazinesText ret MagazinesText: ; 1eb69 (7:6b69) @@ -320,7 +316,7 @@ MagazinesText: ; 1eb69 (7:6b69) BillsHousePC: ; 1eb6e (7:6b6e) call EnableAutoTextBoxDrawing ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ret nz ld a, [wd7f2] bit 7, a @@ -330,13 +326,11 @@ BillsHousePC: ; 1eb6e (7:6b6e) bit 6, a jr nz, .asm_1eb8b .asm_1eb86 - ld a, $2d - jp PrintPredefTextID + tx_pre_jump BillsHouseMonitorText .asm_1eb8b ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a - ld a, $2e - call PrintPredefTextID + tx_pre BillsHouseInitiatedText ld c, 32 call DelayFrames ld a, (SFX_02_3c - SFX_Headers_02) / 3 @@ -364,8 +358,7 @@ BillsHousePC: ; 1eb6e (7:6b6e) .asm_1ebd2 ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a - ld a, $2f - call PrintPredefTextID + tx_pre BillsHousePokemonList ret BillsHouseMonitorText: ; 1ebdd (7:6bdd) @@ -459,11 +452,10 @@ BillsHousePokemonListText2: ; 1ecaa (7:6caa) DisplayOakLabEmailText: ; 1ecaf (7:6caf) ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ret nz call EnableAutoTextBoxDrawing - ld a, $8 ; OakLabEmailText - jp PrintPredefTextID + tx_pre_jump OakLabEmailText OakLabEmailText: ; 1ecbd (7:6cbd) TX_FAR _OakLabEmailText diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm index 3018529a..c9dd41b1 100644 --- a/engine/menu/bills_pc.asm +++ b/engine/menu/bills_pc.asm @@ -523,8 +523,7 @@ CableClubLeftGameboy:: ; 5824 (8:5825) .asm_2183a ld [wLinkState], a call EnableAutoTextBoxDrawing - ld a, $22 ; JustAMomentText - jp PrintPredefTextID + tx_pre_jump JustAMomentText CableClubRightGameboy:: ; 5845 (8:5845) ld a, [hSerialConnectionStatus] @@ -541,8 +540,7 @@ CableClubRightGameboy:: ; 5845 (8:5845) .asm_2185a ld [wLinkState], a call EnableAutoTextBoxDrawing - ld a, $22 ; JustAMomentText - jp PrintPredefTextID + tx_pre_jump JustAMomentText JustAMomentText:: ; 21865 (8:5865) TX_FAR _JustAMomentText @@ -552,9 +550,8 @@ JustAMomentText:: ; 21865 (8:5865) cp SPRITE_FACING_UP ret nz call EnableAutoTextBoxDrawing - ld a, $23 - jp PrintPredefTextID + tx_pre_jump OpenBillsPCText -PredefText23:: ; 21878 (8:5878) +OpenBillsPCText:: ; 21878 (8:5878) db $FD ; FuncTX_BillsPC diff --git a/engine/overworld/card_key.asm b/engine/overworld/card_key.asm index c4df0d51..94c1868c 100755 --- a/engine/overworld/card_key.asm +++ b/engine/overworld/card_key.asm @@ -27,7 +27,7 @@ PrintCardKeyText: ; 52673 (14:6673) jr z, .noCardKey call GetCoordsInFrontOfPlayer push de - ld a, $1 + tx_pre_id CardKeySuccessText ld [H_DOWNARROWBLINKCNT2], a call PrintPredefTextID pop de @@ -54,7 +54,7 @@ PrintCardKeyText: ; 52673 (14:6673) ld a, (SFX_1f_57 - SFX_Headers_1f) / 3 jp PlaySound .noCardKey - ld a, $2 + tx_pre_id CardKeyFailText ld [H_DOWNARROWBLINKCNT2], a jp PrintPredefTextID diff --git a/engine/overworld/cut.asm b/engine/overworld/cut.asm index 215bf103..26a65b5b 100755 --- a/engine/overworld/cut.asm +++ b/engine/overworld/cut.asm @@ -185,26 +185,26 @@ Func_f09f: ; f09f (3:709f) add hl, bc ld a, [wSpriteStateData1 + 9] and a - jr z, .asm_f0c7 - cp $4 - jr z, .asm_f0cf - cp $8 - jr z, .asm_f0d7 + jr z, .down + cp SPRITE_FACING_UP + jr z, .up + cp SPRITE_FACING_LEFT + jr z, .left ld a, [W_XBLOCKCOORD] and a jr z, .asm_f0e0 jr .asm_f0ec -.asm_f0c7 +.down ld a, [W_YBLOCKCOORD] and a jr z, .asm_f0e0 jr .asm_f0df -.asm_f0cf +.up ld a, [W_YBLOCKCOORD] and a jr z, .asm_f0e1 jr .asm_f0e0 -.asm_f0d7 +.left ld a, [W_XBLOCKCOORD] and a jr z, .asm_f0e6 diff --git a/engine/overworld/hidden_items.asm b/engine/overworld/hidden_items.asm index afe9e3c3..868f118f 100755 --- a/engine/overworld/hidden_items.asm +++ b/engine/overworld/hidden_items.asm @@ -16,8 +16,7 @@ HiddenItems: ; 76688 (1d:6688) ld a, [wWhichTrade] ; item ID ld [wd11e], a call GetItemName - ld a, $24 - jp PrintPredefTextID + tx_pre_jump FoundHiddenItemText INCLUDE "data/hidden_item_coords.asm" @@ -112,10 +111,10 @@ HiddenCoins: ; 76799 (1d:6799) ld a, [wPlayerCoins + 1] cp $99 jr nz, .RoomInCoinCase - ld a, $2c + tx_pre_id DroppedHiddenCoinsText jr .done .RoomInCoinCase - ld a, $2b + tx_pre_id FoundHiddenCoinsText .done jp PrintPredefTextID diff --git a/engine/overworld/movement.asm b/engine/overworld/movement.asm index 75b4f3ea..dac03f3a 100644 --- a/engine/overworld/movement.asm +++ b/engine/overworld/movement.asm @@ -27,34 +27,34 @@ UpdatePlayerSprite: ; 4e31 (1:4e31) jr nz, .asm_4e90 ld a, [wd528] bit 2, a - jr z, .asm_4e65 - xor a - jr .asm_4e86 -.asm_4e65 + jr z, .notDown + xor a ; ld a, SPRITE_FACING_DOWN + jr .done +.notDown bit 3, a - jr z, .asm_4e6d - ld a, $4 - jr .asm_4e86 -.asm_4e6d + jr z, .notUp + ld a, SPRITE_FACING_UP + jr .done +.notUp bit 1, a - jr z, .asm_4e75 - ld a, $8 - jr .asm_4e86 -.asm_4e75 + jr z, .notLeft + ld a, SPRITE_FACING_LEFT + jr .done +.notLeft bit 0, a - jr z, .asm_4e7d - ld a, $c - jr .asm_4e86 -.asm_4e7d + jr z, .notRight + ld a, SPRITE_FACING_RIGHT + jr .done +.notRight xor a ld [wSpriteStateData1 + 7], a ld [wSpriteStateData1 + 8], a jr .asm_4eab -.asm_4e86 +.done ld [wSpriteStateData1 + 9], a ld a, [wFontLoaded] bit 0, a - jr nz, .asm_4e7d + jr nz, .notRight .asm_4e90 ld a, [wd736] bit 7, a diff --git a/home.asm b/home.asm index f8d7752f..06a0aec3 100644 --- a/home.asm +++ b/home.asm @@ -4679,7 +4679,7 @@ SetMapTextPointer:: ; 3f0f (0:3f0f) TextPredefs:: add_tx_pre CardKeySuccessText ; 01 add_tx_pre CardKeyFailText ; 02 - add_tx_pre RedBedroomPC ; 03 + add_tx_pre RedBedroomPCText ; 03 add_tx_pre RedBedroomSNESText ; 04 add_tx_pre PushStartText ; 05 add_tx_pre SaveOptionText ; 06 @@ -4703,17 +4703,17 @@ TextPredefs:: add_tx_pre SaffronCityPokecenterBenchGuyText ; 18 add_tx_pre MtMoonPokecenterBenchGuyText ; 19 add_tx_pre RockTunnelPokecenterBenchGuyText ; 1A - add_tx_pre UnusedBenchGuyText1 ; 1B - add_tx_pre UnusedBenchGuyText2 ; 1C - add_tx_pre UnusedBenchGuyText3 ; 1D - add_tx_pre TerminatorText_62508 ; 1E - add_tx_pre PredefText1f ; 1F + add_tx_pre UnusedBenchGuyText1 ; 1B XXX unused + add_tx_pre UnusedBenchGuyText2 ; 1C XXX unused + add_tx_pre UnusedBenchGuyText3 ; 1D XXX unused + add_tx_pre UnusedPredefText ; 1E XXX unused + add_tx_pre PokemonCenterPCText ; 1F add_tx_pre ViridianSchoolNotebook ; 20 add_tx_pre ViridianSchoolBlackboard ; 21 add_tx_pre JustAMomentText ; 22 - add_tx_pre PredefText23 ; 23 + add_tx_pre OpenBillsPCText ; 23 add_tx_pre FoundHiddenItemText ; 24 - add_tx_pre HiddenItemBagFullText ; 25 + add_tx_pre HiddenItemBagFullText ; 25 XXX unused add_tx_pre VermilionGymTrashText ; 26 add_tx_pre IndigoPlateauHQText ; 27 add_tx_pre GameCornerOutOfOrderText ; 28 @@ -4736,7 +4736,7 @@ TextPredefs:: add_tx_pre NewBicycleText ; 39 add_tx_pre IndigoPlateauStatues ; 3A add_tx_pre VermilionGymTrashSuccesText1 ; 3B - add_tx_pre VermilionGymTrashSuccesText2 ; 3C + add_tx_pre VermilionGymTrashSuccesText2 ; 3C XXX unused add_tx_pre VermilionGymTrashSuccesText3 ; 3D add_tx_pre VermilionGymTrashFailText ; 3E add_tx_pre TownMapText ; 3F diff --git a/home/overworld.asm b/home/overworld.asm index 4aea2102..0e62a932 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -1120,7 +1120,7 @@ IsSpriteInFrontOfPlayer2:: ; 0b6d (0:0b6d) ld bc,$3c40 ; Y and X position of player sprite ld a,[wSpriteStateData1 + 9] ; direction the player is facing .checkIfPlayerFacingUp - cp a,$04 + cp SPRITE_FACING_UP jr nz,.checkIfPlayerFacingDown ; facing up ld a,b @@ -1129,7 +1129,7 @@ IsSpriteInFrontOfPlayer2:: ; 0b6d (0:0b6d) ld a,$08 jr .doneCheckingDirection .checkIfPlayerFacingDown - cp a,$00 + cp SPRITE_FACING_DOWN jr nz,.checkIfPlayerFacingRight ; facing down ld a,b @@ -1138,7 +1138,7 @@ IsSpriteInFrontOfPlayer2:: ; 0b6d (0:0b6d) ld a,$04 jr .doneCheckingDirection .checkIfPlayerFacingRight - cp a,$0c + cp SPRITE_FACING_RIGHT jr nz,.playerFacingLeft ; facing right ld a,c diff --git a/macros.asm b/macros.asm index a3ff2815..bf1b8a89 100644 --- a/macros.asm +++ b/macros.asm @@ -226,7 +226,7 @@ add_tx_pre: MACRO ENDM tx_pre_id: MACRO - ld a, (\1_id - TextPredefs) / 2 + ld a, (\1_id - TextPredefs) / 2 + 1 ENDM tx_pre: MACRO diff --git a/main.asm b/main.asm index 5ed4dacc..7372381a 100755 --- a/main.asm +++ b/main.asm @@ -2339,7 +2339,7 @@ _GetTileAndCoordsInFrontOfPlayer: ; c589 (3:4589) ld a, [W_XCOORD] ld e, a ld a, [wSpriteStateData1 + 9] ; player's sprite facing direction - and a + and a ; cp SPRITE_FACING_DOWN jr nz, .notFacingDown ; facing down aCoord 8, 11 @@ -2378,7 +2378,7 @@ GetTileTwoStepsInFrontOfPlayer: ; c5be (3:45be) ld d, a ld e, [hl] ld a, [wSpriteStateData1 + 9] ; player's sprite facing direction - and a + and a ; cp SPRITE_FACING_DOWN jr nz, .notFacingDown ; facing down ld hl, $ffdb diff --git a/scripts/battlecenterm.asm b/scripts/battlecenterm.asm index 997be7c1..dcb20d83 100755 --- a/scripts/battlecenterm.asm +++ b/scripts/battlecenterm.asm @@ -19,14 +19,14 @@ BattleCenterMScript: ; 4fd10 (13:7d10) ld [hli], a ld a, $a ld [hl], a - ld a, $8 + ld a, SPRITE_FACING_LEFT ld [wSpriteStateData1 + $19], a ld a, [$ffaa] cp $2 ret z ld a, $7 ld [wSpriteStateData2 + $15], a - ld a, $c + ld a, SPRITE_FACING_RIGHT ld [wSpriteStateData1 + $19], a ret diff --git a/scripts/billshouse.asm b/scripts/billshouse.asm index df608de3..1db6934a 100755 --- a/scripts/billshouse.asm +++ b/scripts/billshouse.asm @@ -17,11 +17,11 @@ BillsHouseScript0: ; 1e782 (7:6782) BillsHouseScript1: ; 1e783 (7:6783) ld a, [wSpriteStateData1 + 9] - and a + and a ; cp SPRITE_FACING_DOWN ld de, MovementData_1e79c - jr nz, .asm_1e78f + jr nz, .notDown ld de, MovementData_1e7a0 -.asm_1e78f +.notDown ld a, $1 ld [$ff8c], a call MoveSprite @@ -32,6 +32,7 @@ BillsHouseScript1: ; 1e783 (7:6783) MovementData_1e79c: ; 1e79c (7:679c) db $40,$40,$40,$FF +; make Bill walk around the player MovementData_1e7a0: ; 1e7a0 (7:67a0) db $C0,$40,$40,$80,$40,$FF diff --git a/scripts/copycatshouse2f.asm b/scripts/copycatshouse2f.asm index 6a9c2236..51a633b1 100755 --- a/scripts/copycatshouse2f.asm +++ b/scripts/copycatshouse2f.asm @@ -85,11 +85,11 @@ CopycatsHouse2FText6: ; 5ccfe (17:4cfe) CopycatsHouse2FText7: ; 5cd03 (17:4d03) TX_ASM ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ld hl, CopycatsHouse2FText_5cd1c - jr nz, .asm_399a4 + jr nz, .notUp ld hl, CopycatsHouse2FText_5cd17 -.asm_399a4 +.notUp call PrintText jp TextScriptEnd diff --git a/scripts/mansion1.asm b/scripts/mansion1.asm index e5c7eb0a..d658b425 100755 --- a/scripts/mansion1.asm +++ b/scripts/mansion1.asm @@ -48,7 +48,7 @@ Mansion1ReplaceBlock: ; 44310 (11:4310) Mansion1Script_Switches: ; 44316 (11:4316) ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ret nz xor a ld [hJoyHeld], a diff --git a/scripts/mansion2.asm b/scripts/mansion2.asm index 334753df..40827be1 100755 --- a/scripts/mansion2.asm +++ b/scripts/mansion2.asm @@ -44,7 +44,7 @@ Mansion2Script_5202f: ; 5202f (14:602f) Mansion2Script_Switches: ; 52037 (14:6037) ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ret nz xor a ld [hJoyHeld], a diff --git a/scripts/mansion3.asm b/scripts/mansion3.asm index d7c0d6ef..dfecde99 100755 --- a/scripts/mansion3.asm +++ b/scripts/mansion3.asm @@ -75,7 +75,7 @@ Mansion3Script_5225b: ; 5225b (14:625b) Mansion3Script_Switches: ; 5227a (14:627a) ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ret nz xor a ld [hJoyHeld], a diff --git a/scripts/mansion4.asm b/scripts/mansion4.asm index 4f1bd742..c23cb2d7 100755 --- a/scripts/mansion4.asm +++ b/scripts/mansion4.asm @@ -46,7 +46,7 @@ Mansion4Script_523cf: ; 523cf (14:63cf) Mansion4Script_Switches: ; 52420 (14:6420) ld a, [wSpriteStateData1 + 9] - cp $4 + cp SPRITE_FACING_UP ret nz xor a ld [hJoyHeld], a diff --git a/scripts/oakslab.asm b/scripts/oakslab.asm index ceb8a761..7c99d802 100755 --- a/scripts/oakslab.asm +++ b/scripts/oakslab.asm @@ -454,6 +454,7 @@ OaksLabScript14: ; 1ce6d (7:4e6d) ld a, $12 ld [W_OAKSLABCURSCRIPT], a jr .done +; make the player keep facing the rival as he walks away .asm_1ce8c ld a, [wcf0f] cp $5 @@ -461,17 +462,17 @@ OaksLabScript14: ; 1ce6d (7:4e6d) ld a, [W_XCOORD] cp $4 jr nz, .asm_1cea1 - ld a, $c + ld a, SPRITE_FACING_RIGHT ld [wSpriteStateData1 + 9], a jr .done .asm_1cea1 - ld a, $8 + ld a, SPRITE_FACING_LEFT ld [wSpriteStateData1 + 9], a jr .done .asm_1cea8 cp $4 ret nz - xor a + xor a ; ld a, SPRITE_FACING_DOWN ld [wSpriteStateData1 + 9], a .done ret diff --git a/scripts/pallettown.asm b/scripts/pallettown.asm index c05b87c1..d625a7be 100755 --- a/scripts/pallettown.asm +++ b/scripts/pallettown.asm @@ -97,7 +97,7 @@ PalletTownScript3: ; 18f12 (6:4f12) ld a,[wd730] bit 0,a ret nz - xor a + xor a ; ld a, SPRITE_FACING_DOWN ld [wSpriteStateData1 + 9],a ld a,1 ld [wcf0d],a diff --git a/scripts/pokemontower7.asm b/scripts/pokemontower7.asm index 4462fb78..ab96fd9b 100755 --- a/scripts/pokemontower7.asm +++ b/scripts/pokemontower7.asm @@ -69,7 +69,7 @@ PokemonTower7Script4: ; 60d86 (18:4d86) ld a, HS_POKEMONTOWER_7_MR_FUJI ld [wcc4d], a predef HideObject - ld a, $4 + ld a, SPRITE_FACING_UP ld [wSpriteStateData1 + 9], a ld a, LAVENDER_HOUSE_1 ld [H_DOWNARROWBLINKCNT1], a diff --git a/scripts/redshouse1f.asm b/scripts/redshouse1f.asm index b630fffe..0f5251b8 100755 --- a/scripts/redshouse1f.asm +++ b/scripts/redshouse1f.asm @@ -52,11 +52,11 @@ MomHealText2: ; 481c1 (12:41c1) RedsHouse1FText2: ; 0x481c6 TV TX_ASM ld a,[wSpriteStateData1 + 9] - cp 4 + cp SPRITE_FACING_UP ld hl,TVWrongSideText - jr nz,.done ; if player is not facing up + jr nz,.notUp ld hl,StandByMeText -.done +.notUp call PrintText jp TextScriptEnd diff --git a/scripts/route11gateupstairs.asm b/scripts/route11gateupstairs.asm index abea062c..eded4165 100755 --- a/scripts/route11gateupstairs.asm +++ b/scripts/route11gateupstairs.asm @@ -50,8 +50,8 @@ Route11GateUpstairsText_494a3: ; 494a3 (12:54a3) Route11GateUpstairsText3: ; 494a8 (12:54a8) TX_ASM ld a, [wSpriteStateData1 + 9] - cp $4 - jp nz, Route12GateUpstairsScript_495c9 + cp SPRITE_FACING_UP + jp nz, GateUpstairsScript_PrintIfFacingUp ld a, [wd7d8] bit 7, a ; fought snorlax? ld hl, BinocularsSnorlaxText @@ -72,7 +72,7 @@ BinocularsNoSnorlaxText: Route11GateUpstairsText4: ; 494ce (12:54ce) TX_ASM ld hl, Route11GateUpstairsText_494d5 - jp Route12GateUpstairsScript_495c9 + jp GateUpstairsScript_PrintIfFacingUp Route11GateUpstairsText_494d5: ; 494d5 (12:54d5) TX_FAR _Route11GateUpstairsText_494d5 diff --git a/scripts/route12gateupstairs.asm b/scripts/route12gateupstairs.asm index 6ec8cfe3..d4e8e983 100755 --- a/scripts/route12gateupstairs.asm +++ b/scripts/route12gateupstairs.asm @@ -50,7 +50,7 @@ TM39NoRoomText: ; 495ac (12:55ac) Route12GateUpstairsText2: ; 495b1 (12:55b1) TX_ASM ld hl, Route12GateUpstairsText_495b8 - jp Route12GateUpstairsScript_495c9 + jp GateUpstairsScript_PrintIfFacingUp Route12GateUpstairsText_495b8: ; 495b8 (12:55b8) TX_FAR _Route12GateUpstairsText_495b8 @@ -59,21 +59,21 @@ Route12GateUpstairsText_495b8: ; 495b8 (12:55b8) Route12GateUpstairsText3: ; 495bd (12:55bd) TX_ASM ld hl, Route12GateUpstairsText_495c4 - jp Route12GateUpstairsScript_495c9 + jp GateUpstairsScript_PrintIfFacingUp Route12GateUpstairsText_495c4: ; 495c4 (12:55c4) TX_FAR _Route12GateUpstairsText_495c4 db "@" -Route12GateUpstairsScript_495c9: ; 495c9 (12:55c9) +GateUpstairsScript_PrintIfFacingUp: ; 495c9 (12:55c9) ld a, [wSpriteStateData1 + 9] - cp $4 - jr z, .asm_495d4 + cp SPRITE_FACING_UP + jr z, .up ld a, $1 - jr .asm_495d8 -.asm_495d4 + jr .done +.up call PrintText xor a -.asm_495d8 +.done ld [wDoNotWaitForButtonPressAfterDisplayingText], a jp TextScriptEnd diff --git a/scripts/route15gateupstairs.asm b/scripts/route15gateupstairs.asm index 05bcbeea..8969fd74 100755 --- a/scripts/route15gateupstairs.asm +++ b/scripts/route15gateupstairs.asm @@ -39,7 +39,7 @@ Route15GateUpstairsText_4968c: ; 4968c (12:568c) Route15GateUpstairsText2: ; 49691 (12:5691) TX_ASM ld hl, Route15GateUpstairsText_49698 - jp Route12GateUpstairsScript_495c9 + jp GateUpstairsScript_PrintIfFacingUp Route15GateUpstairsText_49698: ; 49698 (12:5698) TX_FAR _Route15GateUpstairsText_49698 diff --git a/scripts/route16gateupstairs.asm b/scripts/route16gateupstairs.asm index 6027d57b..64b43e10 100755 --- a/scripts/route16gateupstairs.asm +++ b/scripts/route16gateupstairs.asm @@ -30,7 +30,7 @@ Route16GateUpstairsText_4982f: ; 4982f (12:582f) Route16GateUpstairsText3: ; 49834 (12:5834) TX_ASM ld hl, Route16GateUpstairsText_4983b - jp Route12GateUpstairsScript_495c9 + jp GateUpstairsScript_PrintIfFacingUp Route16GateUpstairsText_4983b: ; 4983b (12:583b) TX_FAR _Route16GateUpstairsText_4983b @@ -39,7 +39,7 @@ Route16GateUpstairsText_4983b: ; 4983b (12:583b) Route16GateUpstairsText4: ; 49840 (12:5840) TX_ASM ld hl, Route16GateUpstairsText_49847 - jp Route12GateUpstairsScript_495c9 + jp GateUpstairsScript_PrintIfFacingUp Route16GateUpstairsText_49847: ; 49847 (12:5847) TX_FAR _Route16GateUpstairsText_49847 diff --git a/scripts/route18gateupstairs.asm b/scripts/route18gateupstairs.asm index 7fc76eda..4e1014e0 100755 --- a/scripts/route18gateupstairs.asm +++ b/scripts/route18gateupstairs.asm @@ -16,7 +16,7 @@ Route18GateUpstairsText1: ; 4997e (12:597e) Route18GateUpstairsText2: ; 4998c (12:598c) TX_ASM ld hl, Route18GateUpstairsText_49993 - jp Route12GateUpstairsScript_495c9 + jp GateUpstairsScript_PrintIfFacingUp Route18GateUpstairsText_49993: ; 49993 (12:5993) TX_FAR _Route18GateUpstairsText_49993 @@ -25,7 +25,7 @@ Route18GateUpstairsText_49993: ; 49993 (12:5993) Route18GateUpstairsText3: ; 49998 (12:5998) TX_ASM ld hl, Route18GateUpstairsText_4999f - jp Route12GateUpstairsScript_495c9 + jp GateUpstairsScript_PrintIfFacingUp Route18GateUpstairsText_4999f: ; 4999f (12:599f) TX_FAR _Route18GateUpstairsText_4999f diff --git a/scripts/route22.asm b/scripts/route22.asm index 88f69bea..7d70924b 100755 --- a/scripts/route22.asm +++ b/scripts/route22.asm @@ -148,13 +148,13 @@ Route22Script2: ; 50fb5 (14:4fb5) cp $ff jp z, Route22Script_50ece ld a, [wSpriteStateData1 + 9] - and a - jr nz, .asm_50fc7 - ld a, $4 - jr .asm_50fc9 -.asm_50fc7 - ld a, $c -.asm_50fc9 + and a ; cp SPRITE_FACING_DOWN + jr nz, .notDown + ld a, SPRITE_FACING_UP + jr .done +.notDown + ld a, SPRITE_FACING_RIGHT +.done ld [$ff8d], a ld a, $1 ld [$ff8c], a diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm index 6b9029f6..b64868e5 100755 --- a/scripts/safarizoneentrance.asm +++ b/scripts/safarizoneentrance.asm @@ -24,7 +24,7 @@ SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9) ld [wJoyIgnore], a xor a ld [hJoyHeld], a - ld a, $c + ld a, SPRITE_FACING_RIGHT ld [wSpriteStateData1 + 9], a ld a, [wWhichTrade] cp $1 @@ -247,7 +247,7 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) .asm_7539c ld hl, .SafariZoneEntranceText_753c0 call PrintText - ld a, $4 + ld a, SPRITE_FACING_UP ld [wSpriteStateData1 + 9], a ld a, $40 ld c, $1 diff --git a/scripts/vermilioncity.asm b/scripts/vermilioncity.asm index 9fd05776..0f71a4d0 100755 --- a/scripts/vermilioncity.asm +++ b/scripts/vermilioncity.asm @@ -40,7 +40,7 @@ VermilionCityScriptPointers: ; 197dc (6:57dc) VermilionCityScript0: ; 197e6 (6:57e6) ld a, [wSpriteStateData1 + 9] - and a + and a ; cp SPRITE_FACING_DOWN ret nz ld hl, CoordsData_19823 call ArePlayerCoordsInArray @@ -54,7 +54,7 @@ VermilionCityScript0: ; 197e6 (6:57e6) ld a, [wd803] bit 2, a jr nz, .asm_19810 - ld b, $3f + ld b, S_S__TICKET predef IsItemInBag_ ld a, b and a @@ -162,7 +162,7 @@ VermilionCityText3: ; 198b1 (6:58b1) bit 2, a jr nz, .asm_198f6 ld a, [wSpriteStateData1 + 9] - cp $c + cp SPRITE_FACING_RIGHT jr z, .asm_198c8 ld hl, VermilionCityCoords1 call ArePlayerCoordsInArray -- cgit v1.3.1-sl0p From b509b48a7f5a9a80225b9c030d7334b26b521c62 Mon Sep 17 00:00:00 2001 From: dannye Date: Tue, 14 Jul 2015 00:21:03 -0500 Subject: Use more *Coord also town map code relabelling YamaArashi just did town map relabelling but oh well I aleady made the changes and don't feel like redoing it --- data/town_map_order.asm | 1 + engine/HoF_room_pc.asm | 23 ++--- engine/battle/animations.asm | 4 +- engine/battle/battle_transitions.asm | 10 +-- engine/battle/core.asm | 10 +-- engine/evos_moves.asm | 2 +- engine/hidden_object_functions17.asm | 10 +-- engine/hidden_object_functions3.asm | 2 +- engine/hidden_object_functions7.asm | 4 +- engine/intro.asm | 2 +- engine/menu/bills_pc.asm | 8 +- engine/menu/diploma.asm | 12 +-- engine/menu/main_menu.asm | 12 +-- engine/menu/naming_screen.asm | 2 +- engine/menu/players_pc.asm | 2 +- engine/menu/prize_menu.asm | 36 ++++---- engine/menu/start_sub_menus.asm | 2 +- engine/oak_speech2.asm | 4 +- engine/overworld/cinnabar_lab.asm | 2 +- engine/overworld/movement.asm | 2 +- engine/save.asm | 2 +- engine/slot_machine.asm | 4 +- engine/town_map.asm | 165 +++++++++++++++++------------------ engine/trade.asm | 2 +- home.asm | 10 +-- home/copy2.asm | 8 +- home/overworld.asm | 8 +- home/text.asm | 2 +- main.asm | 4 +- scripts/bikeshop.asm | 2 +- scripts/celadonmartroof.asm | 2 +- scripts/redshouse1f.asm | 2 +- 32 files changed, 182 insertions(+), 179 deletions(-) (limited to 'engine/hidden_object_functions3.asm') diff --git a/data/town_map_order.asm b/data/town_map_order.asm index 3bd8c223..4fb4f33b 100755 --- a/data/town_map_order.asm +++ b/data/town_map_order.asm @@ -46,3 +46,4 @@ TownMapOrder: ; 70f11 (1c:4f11) db VICTORY_ROAD_3 db INDIGO_PLATEAU db POWER_PLANT +TownMapOrderEnd: diff --git a/engine/HoF_room_pc.asm b/engine/HoF_room_pc.asm index c33e9141..de048ffe 100755 --- a/engine/HoF_room_pc.asm +++ b/engine/HoF_room_pc.asm @@ -14,10 +14,10 @@ HallOfFamePC: ; 7405c (1d:405c) ld bc, $10 ld a, $ff call FillMemory - ld hl, wTileMap - call Func_7417b + hlCoord 0, 0 + call FillFourRowsWithBlack hlCoord 0, 14 - call Func_7417b + call FillFourRowsWithBlack ld a, $c0 ld [rBGP], a call EnableLCD @@ -34,7 +34,7 @@ HallOfFamePC: ; 7405c (1d:405c) jp Credits Func_740ba: ; 740ba (1d:40ba) - ld hl, DataTable_74160 + ld hl, HoFGBPalettes ld b, $4 .asm_740bf ld a, [hli] @@ -123,8 +123,11 @@ Func_74152: ; 74152 (1d:4152) jr z, .asm_7415a ret -DataTable_74160: ; 74160 (1d:4160) - db $C0,$D0,$E0,$F0 +HoFGBPalettes: ; 74160 (1d:4160) + db %11000000 + db %11010000 + db %11100000 + db %11110000 Func_74164: ; 74164 (1d:4164) ld a, l @@ -145,14 +148,14 @@ Func_74171: ; 74171 (1d:4171) jr nz, Func_74171 ret -Func_7417b: ; 7417b (1d:417b) - ld bc, $50 +FillFourRowsWithBlack: ; 7417b (1d:417b) + ld bc, SCREEN_WIDTH * 4 ld a, $7e jp FillMemory FillMiddleOfScreenWithWhite: ; 74183 (1d:4183) hlCoord 0, 4 - ld bc, $c8 ; 10 rows of 20 tiles each + ld bc, SCREEN_WIDTH * 10 ld a, $7f ; blank white tile jp FillMemory @@ -254,5 +257,5 @@ INCLUDE "data/credits_order.asm" INCLUDE "text/credits_text.asm" -TheEndGfx: ; 7473e (1d:473e) ; 473E (473F on blue) +TheEndGfx: ; 7473e (1d:473e) (7473f on blue) INCBIN "gfx/theend.interleave.2bpp" diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index cdd28422..3321b738 100755 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -2184,7 +2184,7 @@ Func_7980c: ; 7980c (1e:580c) push bc ld e, a ld d, $0 - ld hl, wTileMap + hlCoord 0, 0 add hl, de ld bc, $707 call ClearScreenArea @@ -2206,7 +2206,7 @@ GetMonSpriteTileMapPointerFromRowCount: ; 79820 (1e:5820) .enemyTurn ld a, 12 .next - ld hl, wTileMap + hlCoord 0, 0 ld e, a ld d, 0 add hl, de diff --git a/engine/battle/battle_transitions.asm b/engine/battle/battle_transitions.asm index b231459d..3315b36a 100644 --- a/engine/battle/battle_transitions.asm +++ b/engine/battle/battle_transitions.asm @@ -231,7 +231,7 @@ BattleTransition_Spiral: ; 70a72 (1c:4a72) BattleTransition_InwardSpiral: ; 70aaa (1c:4aaa) ld a, $7 ld [wWhichTrade], a - ld hl, wTileMap + hlCoord 0, 0 ld c, $11 ld de, $14 call BattleTransition_InwardSpiral_ @@ -410,7 +410,7 @@ BattleTransition_Split: ; 70bca (1c:4bca) ld bc, $ffd8 call BattleTransition_CopyTiles1 hlCoord 0, 1 - ld de, wTileMap + deCoord 0, 0 ld bc, $28 call BattleTransition_CopyTiles1 hlCoord 18, 0 @@ -418,7 +418,7 @@ BattleTransition_Split: ; 70bca (1c:4bca) ld bc, $fffe call BattleTransition_CopyTiles2 hlCoord 1, 0 - ld de, wTileMap + deCoord 0, 0 ld bc, $2 call BattleTransition_CopyTiles2 call BattleTransition_TransferDelay3 @@ -514,7 +514,7 @@ BattleTransition_CopyTiles2: ; 70c3f (1c:4c3f) ; used for high level wild dungeon battles BattleTransition_VerticalStripes: ; 70c7e (1c:4c7e) ld c, $12 - ld hl, wTileMap + hlCoord 0, 0 deCoord 1, 17 xor a ld [H_AUTOBGTRANSFERENABLED], a @@ -553,7 +553,7 @@ BattleTransition_VerticalStripes_: ; 70caa (1c:4caa) ; used for low level wild dungeon battles BattleTransition_HorizontalStripes: ; 70cb4 (1c:4cb4) ld c, $14 - ld hl, wTileMap + hlCoord 0, 0 deCoord 19, 1 xor a ld [H_AUTOBGTRANSFERENABLED], a diff --git a/engine/battle/core.asm b/engine/battle/core.asm index ec67d094..52beca1a 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -117,7 +117,7 @@ SlidePlayerAndEnemySilhouettesOnScreen: ; 3c04c (f:404c) or c jr nz, .clearBackgroundLoop ; copy the work RAM tile map to VRAM - ld hl, wTileMap + hlCoord 0, 0 ld de, vBGMap0 ld b, 18 ; number of rows .copyRowLoop @@ -855,7 +855,7 @@ FaintEnemyPokemon: ; 0x3c567 hlCoord 12, 5 deCoord 12, 6 call SlideDownFaintedMonPic - ld hl, wTileMap + hlCoord 0, 0 ld bc, $40b call ClearScreenArea ld a, [W_ISINBATTLE] @@ -1214,7 +1214,7 @@ HandlePlayerBlackOut: ; 3c837 (f:4837) ld a, [W_CUROPPONENT] cp $c8 + SONY1 jr nz, .notSony1Battle - ld hl, wTileMap ; sony 1 battle + hlCoord 0, 0 ; sony 1 battle ld bc, $815 call ClearScreenArea call ScrollTrainerPicAfterBattle @@ -1489,7 +1489,7 @@ EnemySendOutFirstMon: ; 3c92a (f:492a) call LoadScreenTilesFromBuffer1 .next4 call ClearSprites - ld hl,wTileMap + hlCoord 0, 0 ld bc,$040B call ClearScreenArea ld b,1 @@ -1952,7 +1952,7 @@ DrawPlayerHUDAndHPBar: ; 3cd60 (f:4d60) DrawEnemyHUDAndHPBar: ; 3cdec (f:4dec) xor a ld [H_AUTOBGTRANSFERENABLED], a - ld hl, wTileMap + hlCoord 0, 0 ld bc, $40c call ClearScreenArea callab PlaceEnemyHUDTiles diff --git a/engine/evos_moves.asm b/engine/evos_moves.asm index bddaffe5..c4af3951 100755 --- a/engine/evos_moves.asm +++ b/engine/evos_moves.asm @@ -121,7 +121,7 @@ Evolution_PartyMonLoop: ; loop over party mons call DelayFrames xor a ld [H_AUTOBGTRANSFERENABLED], a - ld hl, wTileMap + hlCoord 0, 0 ld bc, $c14 call ClearScreenArea ld a, $1 diff --git a/engine/hidden_object_functions17.asm b/engine/hidden_object_functions17.asm index 46140927..a8b4f812 100755 --- a/engine/hidden_object_functions17.asm +++ b/engine/hidden_object_functions17.asm @@ -109,11 +109,11 @@ LinkCableHelp: ; 5dc29 (17:5c29) .asm_5c51 ld hl, wd730 set 6, [hl] - ld hl, wTileMap + hlCoord 0, 0 ld b, $8 ld c, $d call TextBoxBorder - ld hl, wTileMap + $2a + hlCoord 2, 2 ld de, HowToLinkText call PlaceString ld hl, LinkCableHelpText2 @@ -193,13 +193,13 @@ ViridianSchoolBlackboard: ; 5dced (17:5ced) .asm_5dd15 ld hl, wd730 set 6, [hl] - ld hl, wTileMap + hlCoord 0, 0 ld bc, $060a call TextBoxBorder - ld hl, wTileMap + $29 + hlCoord 1, 2 ld de, StatusAilmentText1 call PlaceString - ld hl, wTileMap + $2e + hlCoord 6, 2 ld de, StatusAilmentText2 call PlaceString ld hl, ViridianSchoolBlackboardText2 diff --git a/engine/hidden_object_functions3.asm b/engine/hidden_object_functions3.asm index c40073cb..8502cea8 100755 --- a/engine/hidden_object_functions3.asm +++ b/engine/hidden_object_functions3.asm @@ -107,7 +107,7 @@ BookOrSculptureText: ; fbe8 (3:7be8) ld a, [W_CURMAPTILESET] cp MANSION ; Celadon Mansion tileset jr nz, .asm_fbfd - ld a, [wTileMap + $80] + aCoord 8, 6 cp $38 jr nz, .asm_fbfd ld hl, DiglettSculptureText diff --git a/engine/hidden_object_functions7.asm b/engine/hidden_object_functions7.asm index f29b0925..3c3b2fb0 100755 --- a/engine/hidden_object_functions7.asm +++ b/engine/hidden_object_functions7.asm @@ -401,11 +401,11 @@ BillsHousePokemonList: ; 1ec05 (7:6c05) .asm_1ec2d ld hl, wd730 set 6, [hl] - ld hl, wTileMap + hlCoord 0, 0 ld b, $a ld c, $9 call TextBoxBorder - ld hl, wTileMap + $2a + hlCoord 2, 2 ld de, BillsMonListText call PlaceString ld hl, BillsHousePokemonListText2 diff --git a/engine/intro.asm b/engine/intro.asm index 2043771d..c306555d 100755 --- a/engine/intro.asm +++ b/engine/intro.asm @@ -330,7 +330,7 @@ PlayShootingStar: ; 4188a (10:588a) Func_418e9: ; 418e9 (10:58e9) call Func_417f0 - ld hl, wTileMap + hlCoord 0, 0 ld c, $50 call Func_41807 hlCoord 0, 14 diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm index c9dd41b1..b42a34f0 100644 --- a/engine/menu/bills_pc.asm +++ b/engine/menu/bills_pc.asm @@ -11,17 +11,17 @@ Func_213c8:: ; 213c8 (8:53c8) ld a, [wd5a2] and a jr nz, .asm_213f3 - ld hl, wTileMap + hlCoord 0, 0 ld b, $8 ld c, $e jr .asm_213fa .asm_213ea - ld hl, wTileMap + hlCoord 0, 0 ld b, $6 ld c, $e jr .asm_213fa .asm_213f3 - ld hl, wTileMap + hlCoord 0, 0 ld b, $a ld c, $e .asm_213fa @@ -122,7 +122,7 @@ BillsPCMenu: ld bc, (BANK(PokeballTileGraphics) << 8) + $01 call CopyVideoData call LoadScreenTilesFromBuffer2DisableBGTransfer - ld hl, wTileMap + hlCoord 0, 0 ld b, $a ld c, $c call TextBoxBorder diff --git a/engine/menu/diploma.asm b/engine/menu/diploma.asm index 067cd7d2..a1a0e526 100755 --- a/engine/menu/diploma.asm +++ b/engine/menu/diploma.asm @@ -12,7 +12,7 @@ DisplayDiploma: ; 566e2 (15:66e2) ld bc, $0010 ld a, BANK(CircleTile) call FarCopyData2 - ld hl, wTileMap + hlCoord 0, 0 ld bc, $1012 predef Diploma_TextBoxBorder ld hl, DiplomaTextPointersAndCoords @@ -77,15 +77,15 @@ Func_56777: ; 56777 (15:6777) DiplomaTextPointersAndCoords: ; 56784 (15:6784) dw DiplomaText - dw wTileMap + $2d + dwCoord 5, 2 dw DiplomaPlayer - dw wTileMap + $53 + dwCoord 3, 4 dw DiplomaEmptyText - dw wTileMap + $5f + dwCoord 15, 4 dw DiplomaCongrats - dw wTileMap + $7a + dwCoord 2, 6 dw DiplomaGameFreak - dw wTileMap + $149 + dwCoord 9, 16 DiplomaText: db $70,"Diploma",$70,"@" diff --git a/engine/menu/main_menu.asm b/engine/menu/main_menu.asm index f0628367..f6d3e127 100755 --- a/engine/menu/main_menu.asm +++ b/engine/menu/main_menu.asm @@ -363,23 +363,23 @@ ContinueGame: ; 5db5 (1:5db5) PrintSaveScreenText: ; 5def (1:5def) xor a ld [H_AUTOBGTRANSFERENABLED], a - ld hl, wTileMap + $4 + hlCoord 4, 0 ld b, $8 ld c, $e call TextBoxBorder call LoadTextBoxTilePatterns call UpdateSprites - ld hl, wTileMap + $2d + hlCoord 5, 2 ld de, SaveScreenInfoText call PlaceString - ld hl, wTileMap + $34 + hlCoord 12, 2 ld de, wPlayerName call PlaceString - ld hl, wTileMap + $61 + hlCoord 17, 4 call Func_5e2f - ld hl, wTileMap + $88 + hlCoord 16, 6 call Func_5e42 - ld hl, wTileMap + $ad + hlCoord 13, 8 call Func_5e55 ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a diff --git a/engine/menu/naming_screen.asm b/engine/menu/naming_screen.asm index bd1c39dd..a5a71b73 100755 --- a/engine/menu/naming_screen.asm +++ b/engine/menu/naming_screen.asm @@ -4,7 +4,7 @@ AskName: ; 64eb (1:64eb) push hl ld a, [W_ISINBATTLE] dec a - ld hl, wTileMap + hlCoord 0, 0 ld b, $4 ld c, $b call z, ClearScreenArea ; only if in wild batle diff --git a/engine/menu/players_pc.asm b/engine/menu/players_pc.asm index 147a27a4..e4973dd4 100755 --- a/engine/menu/players_pc.asm +++ b/engine/menu/players_pc.asm @@ -21,7 +21,7 @@ Func_790c: ; 790c (1:790c) ld hl, wFlags_0xcd60 set 5, [hl] call LoadScreenTilesFromBuffer2 - ld hl, wTileMap + hlCoord 0, 0 ld b, $8 ld c, $e call TextBoxBorder diff --git a/engine/menu/prize_menu.asm b/engine/menu/prize_menu.asm index d12308f8..acc18633 100755 --- a/engine/menu/prize_menu.asm +++ b/engine/menu/prize_menu.asm @@ -21,12 +21,12 @@ CeladonPrizeMenu: ; 5271b (14:671b) ld [wTopMenuItemY],a ld a,$01 ld [wTopMenuItemX],a - call PrintPrizePrice ; 687A + call PrintPrizePrice hlCoord 0, 2 ld b,$08 ld c,$10 call TextBoxBorder - call GetPrizeMenuId ;678E + call GetPrizeMenuId call UpdateSprites ld hl,WhichPrizeTextPtr call PrintText @@ -36,7 +36,7 @@ CeladonPrizeMenu: ; 5271b (14:671b) ld a,[wCurrentMenuItem] cp a,$03 ; "NO,THANKS" choice jr z,.NoChoice - call HandlePrizeChoice ; 14:68C6 + call HandlePrizeChoice .NoChoice ld hl,wd730 res 6,[hl] @@ -106,7 +106,7 @@ GetPrizeMenuId: ; 5278e (14:678e) hlCoord 2, 8 call PlaceString jr .putNoThanksText -.putMonName ; 14:67EC +.putMonName ld a,[W_PRIZE1] ld [wd11e],a call GetMonName @@ -122,7 +122,7 @@ GetPrizeMenuId: ; 5278e (14:678e) call GetMonName hlCoord 2, 8 call PlaceString -.putNoThanksText ; 14:6819 +.putNoThanksText hlCoord 2, 10 ld de,NoThanksText call PlaceString @@ -135,7 +135,7 @@ GetPrizeMenuId: ; 5278e (14:678e) ld c,(1 << 7 | 2) ; Function $15CD displays BCD value (same routine ; used by text-command $02) - call PrintBCDNumber ; Print_BCD + call PrintBCDNumber ld de,wd143 hlCoord 13, 7 ld c,(%1 << 7 | 2) @@ -165,10 +165,10 @@ PrintPrizePrice: ; 5287a (14:687a) call PrintBCDNumber ret -.CoinText ; 14:68A5 +.CoinText db "COIN@" -.SixSpacesText ; 14:68AA +.SixSpacesText db " @" LoadCoinsToSubtract: ; 528b1 (14:68b1) @@ -200,9 +200,9 @@ HandlePrizeChoice: ; 528c6 (14:68c6) jr nz,.GetMonName call GetItemName jr .GivePrize -.GetMonName ; 14:68E3 +.GetMonName call GetMonName -.GivePrize ; 14:68E6 +.GivePrize ld hl,SoYouWantPrizeTextPtr call PrintText call YesNoChoice ; yes/no textbox @@ -219,14 +219,14 @@ HandlePrizeChoice: ; 528c6 (14:68c6) ld b,a ld a,1 ld c,a - call GiveItem ; GiveItem + call GiveItem jr nc,.BagFull jr .SubtractCoins -.GiveMon ; 14:6912 +.GiveMon ld a,[wd11e] ld [wcf91],a push af - call GetPrizeMonLevel ; 14:6977 + call GetPrizeMonLevel ld c,a pop af ld b,a @@ -237,7 +237,7 @@ HandlePrizeChoice: ; 528c6 (14:68c6) call z,WaitForTextScrollButtonPress pop af ret nc -.SubtractCoins ; 14:692C +.SubtractCoins call LoadCoinsToSubtract ld hl,$FFA1 ld de,wPlayerCoins + 1 @@ -247,10 +247,10 @@ HandlePrizeChoice: ; 528c6 (14:68c6) .BagFull ld hl,PrizeRoomBagIsFullTextPtr jp PrintText -.NotEnoughCoins ; 14:6945 +.NotEnoughCoins ld hl,SorryNeedMoreCoinsText jp PrintText -.PrintOhFineThen ; 14:694B +.PrintOhFineThen ld hl,OhFineThenTextPtr jp PrintText @@ -286,13 +286,13 @@ GetPrizeMonLevel: ; 52977 (14:6977) ld a,[wcf91] ld b,a ld hl,PrizeMonLevelDictionary -.loop ; 14:697E +.loop ld a,[hli] cp b jr z,.matchFound inc hl jr .loop -.matchFound ; 14:6985 +.matchFound ld a,[hl] ld [W_CURENEMYLVL],a ret diff --git a/engine/menu/start_sub_menus.asm b/engine/menu/start_sub_menus.asm index b84657d5..487daa2d 100755 --- a/engine/menu/start_sub_menus.asm +++ b/engine/menu/start_sub_menus.asm @@ -713,7 +713,7 @@ SwitchPartyMon: ; 13613 (4:7613) SwitchPartyMon_OAM: ; 13625 (4:7625) push af - ld hl, wTileMap + hlCoord 0, 0 ld bc, $28 call AddNTimes ld c, $28 diff --git a/engine/oak_speech2.asm b/engine/oak_speech2.asm index d8043484..179de389 100755 --- a/engine/oak_speech2.asm +++ b/engine/oak_speech2.asm @@ -66,7 +66,7 @@ HisNameIsText: ; 69e7 (1:69e7) Func_69ec: ; 69ec (1:69ec) push de - ld hl, wTileMap + hlCoord 0, 0 ld bc, $c0b call ClearScreenArea ld c, 10 @@ -155,7 +155,7 @@ asm_6a19: ; 6a19 (1:6a19) DisplayIntroNameTextBox: ; 6a6c (1:6a6c) push de - ld hl, wTileMap + hlCoord 0, 0 ld b, $a ld c, $9 call TextBoxBorder diff --git a/engine/overworld/cinnabar_lab.asm b/engine/overworld/cinnabar_lab.asm index a23348db..e9bde496 100755 --- a/engine/overworld/cinnabar_lab.asm +++ b/engine/overworld/cinnabar_lab.asm @@ -20,7 +20,7 @@ GiveFossilToCinnabarLab: ; 61006 (18:5006) dec l ld b, l ld c, $d - ld hl, wTileMap + hlCoord 0, 0 call TextBoxBorder call UpdateSprites call Func_610c2 diff --git a/engine/overworld/movement.asm b/engine/overworld/movement.asm index dac03f3a..9854df61 100644 --- a/engine/overworld/movement.asm +++ b/engine/overworld/movement.asm @@ -694,7 +694,7 @@ getTileSpriteStandsOn: ; 5207 (1:5207) add $14 ; screen X tile + 20 ld d, $0 ld e, a - ld hl, wTileMap + hlCoord 0, 0 add hl, bc add hl, bc add hl, bc diff --git a/engine/save.asm b/engine/save.asm index cc5e6c4a..b4e343e3 100755 --- a/engine/save.asm +++ b/engine/save.asm @@ -426,7 +426,7 @@ Func_7393f: ; 7393f (1c:793f) and $7f ld [wCurrentMenuItem], a ld [wLastMenuItem], a - ld hl, wTileMap + hlCoord 0, 0 ld b, $2 ld c, $9 call TextBoxBorder diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm index 0b9f8bc9..c95e9d20 100755 --- a/engine/slot_machine.asm +++ b/engine/slot_machine.asm @@ -133,7 +133,7 @@ MainSlotMachineLoop: ; 37395 (d:7395) .skip2 ld hl, OneMoreGoSlotMachineText call PrintText - ld hl, wTileMap + $fe + hlCoord 14, 12 ld bc, $0d0f xor a ; YES_NO_MENU ld [wTwoOptionMenuID], a @@ -836,7 +836,7 @@ LoadSlotMachineTiles: ; 378a8 (d:78a8) ld a, BANK(SlotMachineTiles2) call FarCopyData2 ld hl, SlotMachineMap - ld de, wTileMap + deCoord 0, 0 ld bc, $00f0 call CopyData call EnableLCD diff --git a/engine/town_map.asm b/engine/town_map.asm index 0dd84226..2e0921a8 100755 --- a/engine/town_map.asm +++ b/engine/town_map.asm @@ -25,10 +25,10 @@ DisplayTownMap: ; 70e3e (1c:4e3e) xor a ld [wWhichTrade], a pop af - jr Func_70e92 + jr .enterLoop -Func_70e7e: ; 70e7e (1c:4e7e) - ld hl, wTileMap +.townMapLoop + hlCoord 0, 0 ld bc, $114 call ClearScreenArea ld hl, TownMapOrder @@ -37,13 +37,12 @@ Func_70e7e: ; 70e7e (1c:4e7e) ld b, $0 add hl, bc ld a, [hl] - -Func_70e92: ; 70e92 (1c:4e92) +.enterLoop ld de, wHPBarMaxHP - call Func_712f1 + call FindTownMapCoords ld a, [de] push hl - call Func_71258 + call SetTownMapOAMCoords ld a, $4 ld [wcd5b], a ld hl, wOAMBuffer + $10 @@ -63,46 +62,46 @@ Func_70e92: ; 70e92 (1c:4e92) ld de, wTileMapBackup + 16 ld bc, $10 call CopyData -.asm_70ec8 +.inputLoop call TownMapSpriteBlinkingAnimation call JoypadLowSensitivity ld a, [hJoy5] ld b, a - and $c3 - jr z, .asm_70ec8 + and A_BUTTON | B_BUTTON | D_UP | D_DOWN + jr z, .inputLoop ld a, (SFX_02_3c - SFX_Headers_02) / 3 call PlaySound bit 6, b - jr nz, .asm_70ef2 + jr nz, .upPressed bit 7, b - jr nz, .asm_70f01 + jr nz, .downPressed xor a ld [wTownMapSpriteBlinkingEnabled], a ld [hJoy7], a ld [wTownMapSpriteBlinkingCounter], a - call Func_711ab + call ExitTownMap pop hl pop af ld [hl], a ret -.asm_70ef2 +.upPressed ld a, [wWhichTrade] inc a - cp $2f - jr nz, .asm_70efb + cp TownMapOrderEnd - TownMapOrder ; number of list items + 1 + jr nz, .noOverflow xor a -.asm_70efb +.noOverflow ld [wWhichTrade], a - jp Func_70e7e -.asm_70f01 + jp .townMapLoop +.downPressed ld a, [wWhichTrade] dec a cp $ff - jr nz, .asm_70f0b - ld a, $2e -.asm_70f0b + jr nz, .noUnderflow + ld a, TownMapOrderEnd - TownMapOrder - 1 ; number of list items +.noUnderflow ld [wWhichTrade], a - jp Func_70e7e + jp .townMapLoop INCLUDE "data/town_map_order.asm" @@ -116,7 +115,7 @@ LoadTownMap_Nest: ; 70f60 (1c:4f60) push af ld [hl], $ff push hl - call Func_711ef + call DisplayWildLocations call GetMonName hlCoord 1, 0 call PlaceString @@ -125,7 +124,7 @@ LoadTownMap_Nest: ; 70f60 (1c:4f60) ld de, MonsNestText call PlaceString call WaitForTextScrollButtonPress - call Func_711ab + call ExitTownMap pop hl pop af ld [hl], a @@ -147,13 +146,13 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) ld hl, vChars1 + $6d0 ld bc, (BANK(TownMapUpArrow) << 8) + $01 call CopyVideoDataDouble - call Func_71070 + call SetupVisitedTownsList ld hl, wUpdateSpritesEnabled ld a, [hl] push af ld [hl], $ff push hl - ld hl, wTileMap + hlCoord 0, 0 ld de, ToText call PlaceString ld a, [W_CURMAP] @@ -184,25 +183,25 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) hlCoord 19, 0 ld [hl], $ee pop hl -.asm_71004 +.inputLoop push hl call DelayFrame call JoypadLowSensitivity ld a, [hJoy5] ld b, a pop hl - and $c3 - jr z, .asm_71004 + and A_BUTTON | B_BUTTON | D_UP | D_DOWN + jr z, .inputLoop bit 0, b - jr nz, .asm_71026 + jr nz, .aButtonPressed ld a, (SFX_02_3c - SFX_Headers_02) / 3 call PlaySound bit 6, b - jr nz, .asm_71042 + jr nz, .upPressed bit 7, b - jr nz, .asm_71058 - jr .asm_71037 -.asm_71026 + jr nz, .downPressed + jr .bButtonPressed +.aButtonPressed ld a, (SFX_02_3e - SFX_Headers_02) / 3 call PlaySound ld a, [hl] @@ -211,7 +210,7 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) set 3, [hl] inc hl set 7, [hl] -.asm_71037 +.bButtonPressed xor a ld [wTownMapSpriteBlinkingEnabled], a call GBPalWhiteOutWithDelay3 @@ -219,35 +218,35 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) pop af ld [hl], a ret -.asm_71042 +.upPressed deCoord 18, 0 inc hl ld a, [hl] cp $ff jr z, .asm_71052 cp $fe - jr z, .asm_71042 + jr z, .upPressed jp .townMapFlyLoop .asm_71052 ld hl, wTrainerEngageDistance jp .townMapFlyLoop -.asm_71058 +.downPressed deCoord 19, 0 dec hl ld a, [hl] cp $ff jr z, .asm_71068 cp $fe - jr z, .asm_71058 + jr z, .downPressed jp .townMapFlyLoop .asm_71068 ld hl, wcd49 - jr .asm_71058 + jr .downPressed ToText: ; 7106d (1c:506d) db "To@" -Func_71070: ; 71070 (1c:5070) +SetupVisitedTownsList: ; 71070 (1c:5070) ld hl, wWhichTrade ld [hl], $ff inc hl @@ -255,19 +254,19 @@ Func_71070: ; 71070 (1c:5070) ld e, a ld a, [W_TOWNVISITEDFLAG + 1] ld d, a - ld bc, $b -.asm_71081 + ld bc, SAFFRON_CITY + 1 +.loop srl d rr e ld a, $fe - jr nc, .asm_7108a + jr nc, .notVisited ld a, b -.asm_7108a +.notVisited ld [hl], a inc hl inc b dec c - jr nz, .asm_71081 + jr nz, .loop ld [hl], $ff ret @@ -278,7 +277,7 @@ LoadTownMap: ; 7109b (1c:509b) call GBPalWhiteOutWithDelay3 call ClearScreen call UpdateSprites - ld hl, wTileMap + hlCoord 0, 0 ld b, $12 ld c, $12 call TextBoxBorder @@ -293,12 +292,12 @@ LoadTownMap: ; 7109b (1c:509b) ld bc, $8 ld a, BANK(MonNestIcon) call FarCopyDataDouble - ld hl, wTileMap + hlCoord 0, 0 ld de, CompressedMap -.asm_710d3 +.nextTile ld a, [de] and a - jr z, .asm_710e9 + jr z, .done ld b, a and $f ld c, a @@ -306,13 +305,13 @@ LoadTownMap: ; 7109b (1c:509b) swap a and $f add $60 -.asm_710e2 +.uncompressTile ld [hli], a dec c - jr nz, .asm_710e2 + jr nz, .uncompressTile inc de - jr .asm_710d3 -.asm_710e9 + jr .nextTile +.done call EnableLCD ld b, $2 call GoPAL_SET @@ -328,7 +327,7 @@ CompressedMap: ; 71100 (1c:5100) ; you can decompress this file with the redrle program in the extras/ dir INCBIN "gfx/town_map.rle" -Func_711ab: ; 711ab (1c:51ab) +ExitTownMap: ; 711ab (1c:51ab) xor a ld [wTownMapSpriteBlinkingEnabled], a call GBPalWhiteOut @@ -345,10 +344,10 @@ Func_711c4: ; 711c4 (1c:51c4) ld [wcd5b], a pop af ld de, wHPBarMaxHP - call Func_712f1 + call FindTownMapCoords ld a, [de] push hl - call Func_71258 + call SetTownMapOAMCoords call Func_7126d pop hl ld de, wcd6d @@ -363,35 +362,35 @@ Func_711c4: ; 711c4 (1c:51c4) ld bc, $a0 jp CopyData -Func_711ef: ; 711ef (1c:51ef) +DisplayWildLocations: ; 711ef (1c:51ef) callba FindWildLocationsOfMon call Func_712d9 ld hl, wOAMBuffer ld de, wBuffer -.asm_71200 +.loop ld a, [de] cp $ff - jr z, .asm_7121d + jr z, .exitLoop and a - jr z, .asm_7121a + jr z, .next push hl - call Func_712f1 + call FindTownMapCoords pop hl ld a, [de] cp $19 - jr z, .asm_7121a - call Func_71258 - ld a, $4 + jr z, .next + call SetTownMapOAMCoords + ld a, $4 ; nest icon tile no. ld [hli], a xor a ld [hli], a -.asm_7121a +.next inc de - jr .asm_71200 -.asm_7121d + jr .loop +.exitLoop ld a, l and a - jr nz, .asm_71236 + jr nz, .locationKnown hlCoord 1, 7 ld b, $2 ld c, $f @@ -399,12 +398,12 @@ Func_711ef: ; 711ef (1c:51ef) hlCoord 2, 9 ld de, AreaUnknownText call PlaceString - jr .asm_7123e -.asm_71236 + jr .done +.locationKnown ld a, [W_CURMAP] ld b, $0 call Func_711c4 -.asm_7123e +.done ld hl, wOAMBuffer ld de, wTileMapBackup ld bc, $a0 @@ -413,7 +412,7 @@ Func_711ef: ; 711ef (1c:51ef) AreaUnknownText: ; 7124a (1c:524a) db " AREA UNKNOWN@" -Func_71258: ; 71258 (1c:5258) +SetTownMapOAMCoords: ; 71258 (1c:5258) push af and $f0 srl a @@ -541,27 +540,27 @@ Func_712d9: ; 712d9 (1c:52d9) inc hl jr .asm_712e4 -Func_712f1: ; 712f1 (1c:52f1) +FindTownMapCoords: ; 712f1 (1c:52f1) cp REDS_HOUSE_1F - jr c, .asm_71304 + jr c, .townOrRoute ld bc, $4 ld hl, InternalMapEntries -.asm_712fb +.loop cp [hl] - jr c, .asm_71301 + jr c, .match add hl, bc - jr .asm_712fb -.asm_71301 + jr .loop +.match inc hl - jr .asm_7130d -.asm_71304 + jr .done +.townOrRoute ld hl, ExternalMapEntries ld c, a ld b, $0 add hl, bc add hl, bc add hl, bc -.asm_7130d +.done ld a, [hli] ld [de], a ld a, [hli] diff --git a/engine/trade.asm b/engine/trade.asm index 6309e8d5..adf3d417 100755 --- a/engine/trade.asm +++ b/engine/trade.asm @@ -148,7 +148,7 @@ Trade_Delay80: ; 41191 (10:5191) jp DelayFrames Trade_ClearTileMap: ; 41196 (10:5196) - ld hl, wTileMap + hlCoord 0, 0 ld bc, 20 * 18 ld a, " " jp FillMemory diff --git a/home.asm b/home.asm index 06a0aec3..03e3842f 100644 --- a/home.asm +++ b/home.asm @@ -3171,7 +3171,7 @@ UncompressSpriteFromDE:: ; 36eb (0:36eb) SaveScreenTilesToBuffer2:: ; 36f4 (0:36f4) - ld hl, wTileMap + hlCoord 0, 0 ld de, wTileMapBackup2 ld bc, $168 call CopyData @@ -3188,13 +3188,13 @@ LoadScreenTilesFromBuffer2DisableBGTransfer:: ; 3709 (0:3709) xor a ld [H_AUTOBGTRANSFERENABLED], a ld hl, wTileMapBackup2 - ld de, wTileMap + deCoord 0, 0 ld bc, $168 call CopyData ret SaveScreenTilesToBuffer1:: ; 3719 (0:3719) - ld hl, wTileMap + hlCoord 0, 0 ld de, wTileMapBackup ld bc, $168 jp CopyData @@ -3203,7 +3203,7 @@ LoadScreenTilesFromBuffer1:: ; 3725 (0:3725) xor a ld [H_AUTOBGTRANSFERENABLED], a ld hl, wTileMapBackup - ld de, wTileMap + deCoord 0, 0 ld bc, $168 call CopyData ld a, $1 @@ -4032,7 +4032,7 @@ PlaceMenuCursor:: ; 3b7c (0:3b7c) ld a,[wTopMenuItemY] and a ; is the y coordinate 0? jr z,.adjustForXCoord - ld hl,wTileMap + hlCoord 0, 0 ld bc,SCREEN_WIDTH .topMenuItemLoop add hl,bc diff --git a/home/copy2.asm b/home/copy2.asm index 7b407cdc..e5f28383 100644 --- a/home/copy2.asm +++ b/home/copy2.asm @@ -184,17 +184,17 @@ CopyScreenTileBufferToVRAM:: ld c, 6 ld hl, $600 * 0 - ld de, wTileMap + 20 * 6 * 0 + deCoord 0, 6 * 0 call .setup call DelayFrame ld hl, $600 * 1 - ld de, wTileMap + 20 * 6 * 1 + deCoord 0, 6 * 1 call .setup call DelayFrame ld hl, $600 * 2 - ld de, wTileMap + 20 * 6 * 2 + deCoord 0, 6 * 2 call .setup jp DelayFrame @@ -217,7 +217,7 @@ ClearScreen:: ; for the bg map to update. ld bc, 20 * 18 inc b - ld hl, wTileMap + hlCoord 0, 0 ld a, $7f .loop ld [hli], a diff --git a/home/overworld.asm b/home/overworld.asm index 0e62a932..4197e2a3 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -1420,10 +1420,10 @@ LoadCurrentMapView:: ; 0caa (0:0caa) ld bc,$0002 add hl,bc .copyToVisibleAreaBuffer - ld de,wTileMap ; base address for the tiles that are directly transfered to VRAM during V-blank - ld b,$12 + deCoord 0, 0 ; base address for the tiles that are directly transfered to VRAM during V-blank + ld b, SCREEN_HEIGHT .rowLoop2 - ld c,$14 + ld c, SCREEN_WIDTH .rowInnerLoop2 ld a,[hli] ld [de],a @@ -2323,7 +2323,7 @@ LoadMapData:: ; 1241 (0:1241) call LoadTilesetTilePatternData call LoadCurrentMapView ; copy current map view to VRAM - ld hl,wTileMap + hlCoord 0, 0 ld de,vBGMap0 ld b,18 .vramCopyLoop diff --git a/home/text.asm b/home/text.asm index fabcd843..172a4eb2 100644 --- a/home/text.asm +++ b/home/text.asm @@ -207,7 +207,7 @@ MonsterNameCharsCommon:: ; 1a37 (0:1a37) ld de,wBattleMonNick ; player active monster name jr FinishDTE -.Enemy ; 1A40 +.Enemy ; print “Enemy ” ld de,Char5AText call PlaceString diff --git a/main.asm b/main.asm index 7372381a..c7a21243 100755 --- a/main.asm +++ b/main.asm @@ -1276,7 +1276,7 @@ GetTextBoxIDText: ; 7367 (1:7367) ; hl = address of upper left corner of text box GetAddressOfScreenCoords: ; 7375 (1:7375) push bc - ld hl,wTileMap + hlCoord 0, 0 ld bc,20 .loop ; loop to add d rows to the base address ld a,d @@ -2298,7 +2298,7 @@ PrintSafariZoneSteps: ; c52f (3:452f) ret c cp UNKNOWN_DUNGEON_2 ret nc - ld hl, wTileMap + hlCoord 0, 0 ld b, $3 ld c, $7 call TextBoxBorder diff --git a/scripts/bikeshop.asm b/scripts/bikeshop.asm index 4a8183ec..55ceb5cc 100755 --- a/scripts/bikeshop.asm +++ b/scripts/bikeshop.asm @@ -51,7 +51,7 @@ BikeShopText1: ; 1d745 (7:5745) ld [wTopMenuItemX], a ld hl, wd730 set 6, [hl] - ld hl, wTileMap + hlCoord 0, 0 ld b, $4 ld c, $f call TextBoxBorder diff --git a/scripts/celadonmartroof.asm b/scripts/celadonmartroof.asm index 07b26788..953b1583 100755 --- a/scripts/celadonmartroof.asm +++ b/scripts/celadonmartroof.asm @@ -63,7 +63,7 @@ CeladonMartRoofScript_4840c: ; 4840c (12:440c) dec l ld b, l ld c, $c - ld hl, wTileMap + hlCoord 0, 0 call TextBoxBorder call UpdateSprites call CeladonMartRoofScript_48532 diff --git a/scripts/redshouse1f.asm b/scripts/redshouse1f.asm index 0f5251b8..09ce97dc 100755 --- a/scripts/redshouse1f.asm +++ b/scripts/redshouse1f.asm @@ -5,7 +5,7 @@ RedsHouse1FTextPointers: ; 4816b (12:416b) dw RedsHouse1FText1 dw RedsHouse1FText2 -RedsHouse1FText1: ; 4816f (12:416f) ; 416F Mom +RedsHouse1FText1: ; 4816f (12:416f) Mom TX_ASM ld a, [wd72e] bit 3, a -- cgit v1.3.1-sl0p From 02bd91b7076165653a900a8e39c12a92a9bd2976 Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Sun, 19 Jul 2015 11:56:13 -0700 Subject: jpab/jpba macros --- engine/battle/core.asm | 76 ++++++----------------- engine/battle/init_battle_variables.asm | 4 +- engine/battle/moveEffects/focus_energy_effect.asm | 4 +- engine/battle/moveEffects/mist_effect.asm | 4 +- engine/battle/moveEffects/paralyze_effect.asm | 12 +--- engine/battle/moveEffects/substitute_effect.asm | 4 +- engine/hidden_object_functions3.asm | 4 +- engine/in_game_trades.asm | 4 +- engine/items/items.asm | 4 +- engine/menu/league_pc.asm | 4 +- engine/menu/naming_screen.asm | 4 +- engine/overworld/cable_club_npc.asm | 4 +- engine/overworld/saffron_guards.asm | 4 +- engine/titlescreen.asm | 4 +- engine/trade.asm | 4 +- home.asm | 48 ++++---------- home/overworld.asm | 12 +--- macros.asm | 12 ++++ scripts/celadonmartelevator.asm | 4 +- scripts/celadonmartroof.asm | 4 +- scripts/lab4.asm | 4 +- scripts/viridiangym.asm | 4 +- 22 files changed, 66 insertions(+), 162 deletions(-) (limited to 'engine/hidden_object_functions3.asm') diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 075bc179..93ccdef5 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -187,9 +187,7 @@ SlidePlayerAndEnemySilhouettesOnScreen: ; 3c04c (f:404c) ld b, $1 call GoPAL_SET call HideSprites - ld hl, PrintBeginningBattleText - ld b, BANK(PrintBeginningBattleText) - jp Bankswitch + jpab PrintBeginningBattleText ; when a battle is starting, silhouettes of the player's pic and the enemy's pic are slid onto the screen ; the lower of the player's pic (his body) is part of the background, but his head is a sprite @@ -359,9 +357,7 @@ EnemyRan: ; 3c202 (f:4202) call PlaySoundWaitForCurrent xor a ld [H_WHOSETURN], a - ld hl, AnimationSlideEnemyMonOut - ld b, BANK(AnimationSlideEnemyMonOut) - jp Bankswitch + jpab AnimationSlideEnemyMonOut WildRanText: ; 3c229 (f:4229) TX_FAR _WildRanText @@ -938,9 +934,7 @@ FaintEnemyPokemon: ; 0x3c567 jr nz, .gainExpFlagsLoop ld a, b ld [wPartyGainExpFlags], a - ld hl, GainExperience - ld b, BANK(GainExperience) - jp Bankswitch + jpab GainExperience EnemyMonFaintedText: ; 0x3c63e TX_FAR _EnemyMonFaintedText @@ -6462,14 +6456,10 @@ LoadPlayerBackPic: ; 3ec92 (f:6c92) ; does nothing since no stats are ever selected (barring glitches) DoubleOrHalveSelectedStats: ; 3ed02 (f:6d02) callab DoubleSelectedStats - ld hl, HalveSelectedStats - ld b, BANK(HalveSelectedStats) - jp Bankswitch + jpab HalveSelectedStats ScrollTrainerPicAfterBattle: ; 3ed12 (f:6d12) - ld hl, _ScrollTrainerPicAfterBattle - ld b, BANK(_ScrollTrainerPicAfterBattle) - jp Bankswitch + jpab _ScrollTrainerPicAfterBattle ApplyBurnAndParalysisPenaltiesToPlayer: ; 3ed1a (f:6d1a) ld a, $1 @@ -7372,9 +7362,7 @@ BadlyPoisonedText: ; 3f2e4 (f:72e4) db "@" DrainHPEffect: ; 3f2e9 (f:72e9) - ld hl, DrainHPEffect_ - ld b, BANK(DrainHPEffect_) - jp Bankswitch + jpab DrainHPEffect_ ExplodeEffect: ; 3f2f1 (f:72f1) ld hl, wBattleMonHP @@ -8209,9 +8197,7 @@ FlinchSideEffect: ; 3f85b (f:785b) ret OneHitKOEffect: ; 3f884 (f:7884) - ld hl, OneHitKOEffect_ - ld b, BANK(OneHitKOEffect_) - jp Bankswitch + jpab OneHitKOEffect_ ChargeEffect: ; 3f88c (f:788c) ld hl, W_PLAYERBATTSTATUS1 @@ -8321,19 +8307,13 @@ TrappingEffect: ; 3f917 (f:7917) ret MistEffect: ; 3f941 (f:7941) - ld hl, MistEffect_ - ld b, BANK(MistEffect_) - jp Bankswitch + jpab MistEffect_ FocusEnergyEffect: ; 3f949 (f:7949) - ld hl, FocusEnergyEffect_ - ld b, BANK(FocusEnergyEffect_) - jp Bankswitch + jpab FocusEnergyEffect_ RecoilEffect: ; 3f951 (f:7951) - ld hl, RecoilEffect_ - ld b, BANK(RecoilEffect_) - jp Bankswitch + jpab RecoilEffect_ ConfusionSideEffect: ; 3f959 (f:7959) call BattleRandom @@ -8387,14 +8367,10 @@ ConfusionEffectFailed: ; 3f9a6 (f:79a6) jp ConditionalPrintButItFailed ParalyzeEffect: ; 3f9b1 (f:79b1) - ld hl, ParalyzeEffect_ - ld b, BANK(ParalyzeEffect_) - jp Bankswitch + jpab ParalyzeEffect_ SubstituteEffect: ; 3f9b9 (f:79b9) - ld hl, SubstituteEffect_ - ld b, BANK(SubstituteEffect_) - jp Bankswitch + jpab SubstituteEffect_ HyperBeamEffect: ; 3f9c1 (f:79c1) ld hl, W_PLAYERBATTSTATUS2 @@ -8505,9 +8481,7 @@ MimicLearnedMoveText: ; 3fa77 (f:7a77) db "@" LeechSeedEffect: ; 3fa7c (f:7a7c) - ld hl, LeechSeedEffect_ - ld b, BANK(LeechSeedEffect_) - jp Bankswitch + jpab LeechSeedEffect_ SplashEffect: ; 3fa84 (f:7a84) call PlayCurrentMoveAnimation @@ -8601,34 +8575,22 @@ MoveWasDisabledText: ; 3fb09 (f:7b09) db "@" PayDayEffect: ; 3fb0e (f:7b0e) - ld hl, PayDayEffect_ - ld b, BANK(PayDayEffect_) - jp Bankswitch + jpab PayDayEffect_ ConversionEffect: ; 3fb16 (f:7b16) - ld hl, ConversionEffect_ - ld b, BANK(ConversionEffect_) - jp Bankswitch + jpab ConversionEffect_ HazeEffect: ; 3fb1e (f:7b1e) - ld hl, HazeEffect_ - ld b, BANK(HazeEffect_) - jp Bankswitch + jpab HazeEffect_ HealEffect: ; 3fb26 (f:7b26) - ld hl, HealEffect_ - ld b, BANK(HealEffect_) - jp Bankswitch + jpab HealEffect_ TransformEffect: ; 3fb2e (f:7b2e) - ld hl, TransformEffect_ - ld b, BANK(TransformEffect_) - jp Bankswitch + jpab TransformEffect_ ReflectLightScreenEffect: ; 3fb36 (f:7b36) - ld hl, ReflectLightScreenEffect_ - ld b, BANK(ReflectLightScreenEffect_) - jp Bankswitch + jpab ReflectLightScreenEffect_ NothingHappenedText: ; 3fb3e (f:7b3e) TX_FAR _NothingHappenedText diff --git a/engine/battle/init_battle_variables.asm b/engine/battle/init_battle_variables.asm index f10e9f5e..d5ee7816 100644 --- a/engine/battle/init_battle_variables.asm +++ b/engine/battle/init_battle_variables.asm @@ -35,6 +35,4 @@ InitBattleVariables: ; 525af (14:65af) ld a, $2 ; safari battle ld [W_BATTLETYPE], a .notSafariBattle - ld hl, PlayBattleMusic - ld b, BANK(PlayBattleMusic) - jp Bankswitch + jpab PlayBattleMusic diff --git a/engine/battle/moveEffects/focus_energy_effect.asm b/engine/battle/moveEffects/focus_energy_effect.asm index 20a0c07e..b8a783e4 100644 --- a/engine/battle/moveEffects/focus_energy_effect.asm +++ b/engine/battle/moveEffects/focus_energy_effect.asm @@ -14,9 +14,7 @@ FocusEnergyEffect_: ; 27f86 (9:7f86) .alreadyUsing ld c, 50 call DelayFrames - ld hl, PrintButItFailedText_ - ld b, BANK(PrintButItFailedText_) - jp Bankswitch + jpab PrintButItFailedText_ GettingPumpedText: ; 27fb3 (9:7fb3) db $0a diff --git a/engine/battle/moveEffects/mist_effect.asm b/engine/battle/moveEffects/mist_effect.asm index 8394eec1..1f8e40b0 100644 --- a/engine/battle/moveEffects/mist_effect.asm +++ b/engine/battle/moveEffects/mist_effect.asm @@ -12,9 +12,7 @@ MistEffect_: ; 33f2b (c:7f2b) ld hl, ShroudedInMistText jp PrintText .mistAlreadyInUse - ld hl, PrintButItFailedText_ - ld b, BANK(PrintButItFailedText_) - jp Bankswitch + jpab PrintButItFailedText_ ShroudedInMistText: ; 33f52 (c:7f52) TX_FAR _ShroudedInMistText diff --git a/engine/battle/moveEffects/paralyze_effect.asm b/engine/battle/moveEffects/paralyze_effect.asm index b88e6479..658b0c50 100644 --- a/engine/battle/moveEffects/paralyze_effect.asm +++ b/engine/battle/moveEffects/paralyze_effect.asm @@ -36,18 +36,12 @@ ParalyzeEffect_: ; 52601 (14:6601) ld c, 30 call DelayFrames callab PlayCurrentMoveAnimation - ld hl, PrintMayNotAttackText - ld b, BANK(PrintMayNotAttackText) - jp Bankswitch + jpab PrintMayNotAttackText .didntAffect ld c, 50 call DelayFrames - ld hl, PrintDidntAffectText - ld b, BANK(PrintDidntAffectText) - jp Bankswitch + jpab PrintDidntAffectText .doesntAffect ld c, 50 call DelayFrames - ld hl, PrintDoesntAffectText - ld b, BANK(PrintDoesntAffectText) - jp Bankswitch + jpab PrintDoesntAffectText diff --git a/engine/battle/moveEffects/substitute_effect.asm b/engine/battle/moveEffects/substitute_effect.asm index 444c755b..c72fffbe 100644 --- a/engine/battle/moveEffects/substitute_effect.asm +++ b/engine/battle/moveEffects/substitute_effect.asm @@ -55,9 +55,7 @@ SubstituteEffect_: ; 17dad (5:7dad) call Bankswitch ; jump to routine depending on animation setting ld hl, SubstituteText call PrintText - ld hl, DrawHUDsAndHPBars - ld b, BANK(DrawHUDsAndHPBars) - jp Bankswitch + jpab DrawHUDsAndHPBars .alreadyHasSubstitute ld hl, HasSubstituteText jr .printText diff --git a/engine/hidden_object_functions3.asm b/engine/hidden_object_functions3.asm index 8502cea8..80251b94 100755 --- a/engine/hidden_object_functions3.asm +++ b/engine/hidden_object_functions3.asm @@ -34,9 +34,7 @@ PrintBookshelfText: ; fb50 (3:7b50) .noMatch ld a, $ff ld [$ffdb], a - ld b, BANK(PrintCardKeyText) - ld hl, PrintCardKeyText - jp Bankswitch + jpba PrintCardKeyText ; format: db tileset id, bookshelf tile id, text id BookshelfTileIDs: ; fb8b (3:7b8b) diff --git a/engine/in_game_trades.asm b/engine/in_game_trades.asm index 6f1167d0..fffaedcf 100755 --- a/engine/in_game_trades.asm +++ b/engine/in_game_trades.asm @@ -159,9 +159,7 @@ InGameTrade_RestoreScreen: ; 71ca2 (1c:5ca2) call LoadGBPal ld c, 10 call DelayFrames - ld b, BANK(LoadWildData) - ld hl, LoadWildData - jp Bankswitch + jpba LoadWildData InGameTrade_PrepareTradeData: ; 71cc1 (1c:5cc1) ld hl, wTradedPlayerMonSpecies diff --git a/engine/items/items.asm b/engine/items/items.asm index 704e6034..f9f76278 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -499,9 +499,7 @@ ItemUseTownMap: ; d968 (3:5968) ld a,[W_ISINBATTLE] and a jp nz,ItemUseNotTime - ld b, BANK(DisplayTownMap) - ld hl, DisplayTownMap - jp Bankswitch ; display Town Map + jpba DisplayTownMap ItemUseBicycle: ; d977 (3:5977) ld a,[W_ISINBATTLE] diff --git a/engine/menu/league_pc.asm b/engine/menu/league_pc.asm index 06a7894c..1f5cf8e0 100755 --- a/engine/menu/league_pc.asm +++ b/engine/menu/league_pc.asm @@ -110,9 +110,7 @@ LeaguePCShowMon: ; 76610 (1d:6610) ld de, wHoFTeamNo ld bc, $0103 call PrintNumber - ld b, BANK(HoFDisplayMonInfo) - ld hl, HoFDisplayMonInfo - jp Bankswitch + jpba HoFDisplayMonInfo HallOfFameNoText: ; 76670 (1d:6670) db "HALL OF FAME No @" diff --git a/engine/menu/naming_screen.asm b/engine/menu/naming_screen.asm index 9a608491..6037329e 100755 --- a/engine/menu/naming_screen.asm +++ b/engine/menu/naming_screen.asm @@ -172,9 +172,7 @@ DisplayNamingScreen: ; 6596 (1:6596) ld a, [W_ISINBATTLE] and a jp z, LoadTextBoxTilePatterns - ld hl, LoadHudTilePatterns - ld b, BANK(LoadHudTilePatterns) - jp Bankswitch + jpab LoadHudTilePatterns .namingScreenButtonFunctions dw .dPadReturnPoint diff --git a/engine/overworld/cable_club_npc.asm b/engine/overworld/cable_club_npc.asm index b9e3102a..2a9b19fe 100755 --- a/engine/overworld/cable_club_npc.asm +++ b/engine/overworld/cable_club_npc.asm @@ -111,9 +111,7 @@ Func_72a8: ; 72a8 (1:72a8) xor a ld [hld], a ld [hl], a - ld hl, LinkMenu - ld b, BANK(LinkMenu) - jp Bankswitch + jpab LinkMenu CableClubNPCAreaReservedFor2FriendsLinkedByCableText: ; 72b3 (1:72b3) TX_FAR _CableClubNPCAreaReservedFor2FriendsLinkedByCableText diff --git a/engine/overworld/saffron_guards.asm b/engine/overworld/saffron_guards.asm index 8e584a2d..c0d6a985 100755 --- a/engine/overworld/saffron_guards.asm +++ b/engine/overworld/saffron_guards.asm @@ -10,9 +10,7 @@ RemoveGuardDrink: ; 5a59f (16:659f) call IsItemInBag pop hl jr z, .drinkLoop - ld b, BANK(RemoveItemByID) - ld hl, RemoveItemByID - jp Bankswitch + jpba RemoveItemByID GuardDrinksList: ; 5a5b7 (16:65b7) db FRESH_WATER, SODA_POP, LEMONADE, $00 diff --git a/engine/titlescreen.asm b/engine/titlescreen.asm index 729e16bb..84c0cdf7 100755 --- a/engine/titlescreen.asm +++ b/engine/titlescreen.asm @@ -262,9 +262,7 @@ ENDC jp MainMenu .doClearSaveDialogue - ld b, BANK(DoClearSaveDialogue) - ld hl, DoClearSaveDialogue - jp Bankswitch + jpba DoClearSaveDialogue TitleScreenPickNewMon: ; 4496 (1:4496) ld a, vBGMap0 / $100 diff --git a/engine/trade.asm b/engine/trade.asm index 68baaa16..ba8de4ff 100755 --- a/engine/trade.asm +++ b/engine/trade.asm @@ -199,9 +199,7 @@ LoadTradingGFXAndMonNames: ; 411a1 (10:51a1) Trade_LoadMonPartySpriteGfx: ; 4120b (10:520b) ld a, %11010000 ld [rOBP1], a - ld b, BANK(LoadMonPartySpriteGfx) - ld hl, LoadMonPartySpriteGfx - jp Bankswitch + jpba LoadMonPartySpriteGfx Trade_SwapNames: ; 41217 (10:5217) ld hl, wPlayerName diff --git a/home.asm b/home.asm index 69634a7c..b5165ebf 100644 --- a/home.asm +++ b/home.asm @@ -253,9 +253,7 @@ DrawHPBar:: ; 1336 (0:1336) ; wLoadedMon = base address of pokemon data ; W_MONHDEXNUM = base address of base stats LoadMonData:: ; 1372 (0:1372) - ld hl, LoadMonData_ - ld b, BANK(LoadMonData_) - jp Bankswitch + jpab LoadMonData_ OverwritewMoves:: ; 137a (0:137a) @@ -1317,9 +1315,7 @@ CountSetBits:: ; 2b7f (0:2b7f) ; subtracts the amount the player paid from their money ; sets carry flag if there is enough money and unsets carry flag if not SubtractAmountPaidFromMoney:: ; 2b96 (0:2b96) - ld b,BANK(SubtractAmountPaidFromMoney_) - ld hl,SubtractAmountPaidFromMoney_ - jp Bankswitch + jpba SubtractAmountPaidFromMoney_ ; adds the amount the player sold to their money AddAmountSoldToMoney:: ; 2b9e (0:2b9e) @@ -2077,9 +2073,7 @@ ReloadTilesetTilePatterns:: ; 3090 (0:3090) ChooseFlyDestination:: ; 30a9 (0:30a9) ld hl,wd72e res 4,[hl] - ld b, BANK(LoadTownMap_Fly) - ld hl, LoadTownMap_Fly - jp Bankswitch + jpba LoadTownMap_Fly ; causes the text box to close without waiting for a button press after displaying text DisableWaitingAfterTextDisplay:: ; 30b6 (0:30b6) @@ -2097,9 +2091,7 @@ DisableWaitingAfterTextDisplay:: ; 30b6 (0:30b6) ; 01: successful ; 02: not able to be used right now, no extra menu displayed (only certain items use this) UseItem:: ; 30bc (0:30bc) - ld b,BANK(UseItem_) - ld hl,UseItem_ - jp Bankswitch + jpba UseItem_ ; confirms the item toss and then tosses the item ; INPUT: @@ -2201,14 +2193,10 @@ RunNPCMovementScript:: ; 310e (0:310e) dw PewterMuseumGuyMovementScriptPointerTable dw PewterGymGuyMovementScriptPointerTable .playerStepOutFromDoor - ld b, BANK(PlayerStepOutFromDoor) - ld hl, PlayerStepOutFromDoor - jp Bankswitch + jpba PlayerStepOutFromDoor EndNPCMovementScript:: ; 314e (0:314e) - ld b, BANK(_EndNPCMovementScript) - ld hl, _EndNPCMovementScript - jp Bankswitch + jpba _EndNPCMovementScript EmptyFunc2:: ; 3156 (0:3156) ret @@ -2434,9 +2422,7 @@ ResetButtonPressedAndMapScript:: ; 32c1 (0:32c1) ; calls TrainerWalkUpToPlayer TrainerWalkUpToPlayer_Bank0:: ; 32cf (0:32cf) - ld b, BANK(TrainerWalkUpToPlayer) - ld hl, TrainerWalkUpToPlayer - jp Bankswitch + jpba TrainerWalkUpToPlayer ; sets opponent type and mon set/lvl based on the engaging trainer data InitBattleEnemyParameters:: ; 32d7 (0:32d7) @@ -2726,9 +2712,7 @@ IsItemInBag:: ; 3493 (0:3493) DisplayPokedex:: ; 349b (0:349b) ld [wd11e], a - ld b, BANK(_DisplayPokedex) - ld hl, _DisplayPokedex - jp Bankswitch + jpba _DisplayPokedex SetSpriteFacingDirectionAndDelay:: ; 34a6 (0:34a6) call SetSpriteFacingDirection @@ -2937,9 +2921,7 @@ GetTrainerInformation:: ; 3566 (0:3566) ret GetTrainerName:: ; 359e (0:359e) - ld b, BANK(GetTrainerName_) - ld hl, GetTrainerName_ - jp Bankswitch + jpba GetTrainerName_ HasEnoughMoney:: @@ -3604,9 +3586,7 @@ CopyDataUntil:: ; 3913 (0:3913) ; [wRemoveMonFromBox] == 0 specifies the party. ; [wRemoveMonFromBox] != 0 specifies the current box. RemovePokemon:: ; 391f (0:391f) - ld hl, _RemovePokemon - ld b, BANK(_RemovePokemon) - jp Bankswitch + jpab _RemovePokemon AddPartyMon:: ; 3927 (0:3927) push hl @@ -4590,9 +4570,7 @@ GivePokemon:: ld [W_CURENEMYLVL], a xor a ; PLAYER_PARTY_DATA ld [wMonDataLocation], a - ld b, BANK(_GivePokemon) - ld hl, _GivePokemon - jp Bankswitch + jpba _GivePokemon Random:: @@ -4613,9 +4591,7 @@ INCLUDE "home/predef.asm" Func_3ead:: ; 3ead (0:3ead) - ld b, BANK(CinnabarGymQuiz_1eb0a) - ld hl, CinnabarGymQuiz_1eb0a - jp Bankswitch + jpba CinnabarGymQuiz_1eb0a CheckForHiddenObjectOrBookshelfOrCardKeyDoor:: ; 3eb5 (0:3eb5) ld a, [H_LOADEDROMBANK] diff --git a/home/overworld.asm b/home/overworld.asm index 13cce7ee..5b8759dd 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -1,9 +1,7 @@ HandleMidJump:: ; Handle the player jumping down ; a ledge in the overworld. - ld b, BANK(_HandleMidJump) - ld hl, _HandleMidJump - jp Bankswitch + jpba _HandleMidJump EnterMap:: ; Load a new map. @@ -355,9 +353,7 @@ NewBattle:: ; 0683 (0:0683) ld a,[wd72e] bit 4,a jr nz,.noBattle - ld b, BANK(InitBattle) - ld hl, InitBattle - jp Bankswitch + jpba InitBattle .noBattle and a ret @@ -783,9 +779,7 @@ HandleFlyWarpOrDungeonWarp:: jp SpecialEnterMap LeaveMapAnim:: - ld b, BANK(_LeaveMapAnim) - ld hl, _LeaveMapAnim - jp Bankswitch + jpba _LeaveMapAnim LoadPlayerSpriteGraphics:: ; Load sprite graphics based on whether the player is standing, biking, or surfing. diff --git a/macros.asm b/macros.asm index ba83e73a..659b0722 100644 --- a/macros.asm +++ b/macros.asm @@ -53,6 +53,18 @@ callab: MACRO call Bankswitch ENDM +jpba: MACRO + ld b, BANK(\1) + ld hl, \1 + jp Bankswitch + ENDM + +jpab: MACRO + ld hl, \1 + ld b, BANK(\1) + jp Bankswitch + ENDM + bcd2: MACRO dn ((\1) / 1000) % 10, ((\1) / 100) % 10 dn ((\1) / 10) % 10, (\1) % 10 diff --git a/scripts/celadonmartelevator.asm b/scripts/celadonmartelevator.asm index a0aa576d..c8ff1a6d 100755 --- a/scripts/celadonmartelevator.asm +++ b/scripts/celadonmartelevator.asm @@ -55,9 +55,7 @@ CeldaonMartElevatorWarpMaps: ; 4864a (12:464a) db $02, CELADON_MART_5 CeladonMartElevatorScript_48654: ; 48654 (12:4654) - ld b, BANK(ShakeElevator) - ld hl, ShakeElevator - jp Bankswitch + jpba ShakeElevator CeladonMartElevatorTextPointers: ; 4865c (12:465c) dw CeladonMartElevatorText1 diff --git a/scripts/celadonmartroof.asm b/scripts/celadonmartroof.asm index b0afbee0..f83e466d 100755 --- a/scripts/celadonmartroof.asm +++ b/scripts/celadonmartroof.asm @@ -135,9 +135,7 @@ CeladonMartRoofScript_4840c: ; 4840c (12:440c) jp PrintText RemoveItemByIDBank12: ; 484e6 (12:44e6) - ld b, BANK(RemoveItemByID) - ld hl, RemoveItemByID - jp Bankswitch + jpba RemoveItemByID CeladonMartRoofText_484ee: ; 484ee (12:44ee) TX_FAR _CeladonMartRoofText_484ee diff --git a/scripts/lab4.asm b/scripts/lab4.asm index 6d4bd923..21fee0c6 100755 --- a/scripts/lab4.asm +++ b/scripts/lab4.asm @@ -112,6 +112,4 @@ Lab4Text2: ; 75dda (1d:5dda) jp TextScriptEnd LoadFossilItemAndMonNameBank1D: ; 75de8 (1d:5de8) - ld b, BANK(LoadFossilItemAndMonName) - ld hl, LoadFossilItemAndMonName - jp Bankswitch + jpba LoadFossilItemAndMonName diff --git a/scripts/viridiangym.asm b/scripts/viridiangym.asm index 7a577095..40484d21 100755 --- a/scripts/viridiangym.asm +++ b/scripts/viridiangym.asm @@ -128,9 +128,7 @@ ViridianGymScript4: ; 7496b (1d:496b) ld [W_CURMAPSCRIPT], a ret .asm_74980 - ld b, BANK(LoadSpinnerArrowTiles) - ld hl, LoadSpinnerArrowTiles - jp Bankswitch + jpba LoadSpinnerArrowTiles ViridianGymScript3: ; 74988 (1d:4988) ld a, [W_ISINBATTLE] -- cgit v1.3.1-sl0p