From f4a31b3e0b7ca89e14c4e3836f3d3ad15f38e5ce Mon Sep 17 00:00:00 2001 From: "U-Daniel-PC\\Daniel" Date: Fri, 3 Jul 2015 14:38:12 -0500 Subject: Rename/organize part 2 of 4 rename functions, clean up address/wram comments, other misc only broken up so that all changes are viewable on github --- scripts/daycarem.asm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index 1830d2c0..fdfca235 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -239,9 +239,9 @@ DayCareMText_56432: ; 56432 (15:6432) db "@" DayCareMText_56437: ; 56437 (15:6437) - TX_FAR _DayCareMText_56437 ; 0x8c000 + TX_FAR _DayCareMText_56437 DayCareMText_5643b: ; 5643b (15:643b) - TX_FAR _DayCareMText_5643b ; 0x8c013 + TX_FAR _DayCareMText_5643b db "@" DayCareMText_56440: ; 56440 (15:6440) -- cgit v1.3.1-sl0p 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/battle/common_text.asm | 16 +++++++-------- engine/battle/core.asm | 16 +++++++-------- engine/battle/experience.asm | 4 ++-- engine/hidden_object_functions14.asm | 2 +- engine/hidden_object_functions17.asm | 12 +++++------ engine/hidden_object_functions18.asm | 2 +- engine/hidden_object_functions3.asm | 6 +++--- engine/hidden_object_functions7.asm | 8 ++++---- engine/learn_move.asm | 2 +- engine/overworld/hidden_items.asm | 2 +- engine/slot_machine.asm | 2 +- home.asm | 4 ++-- macros.asm | 4 ++++ main.asm | 2 +- scripts/agatha.asm | 2 +- scripts/bikeshop.asm | 6 +++--- scripts/billshouse.asm | 6 +++--- scripts/bruno.asm | 2 +- scripts/celadoncity.asm | 4 ++-- scripts/celadondiner.asm | 2 +- scripts/celadongamecorner.asm | 16 +++++++-------- scripts/celadongym.asm | 16 +++++++-------- scripts/celadonmansion1.asm | 6 +++--- scripts/celadonmansion3.asm | 4 ++-- scripts/celadonmansion5.asm | 2 +- scripts/celadonmart3.asm | 2 +- scripts/celadonmartelevator.asm | 2 +- scripts/celadonmartroof.asm | 2 +- scripts/ceruleancity.asm | 8 ++++---- scripts/ceruleangym.asm | 8 ++++---- scripts/ceruleanhouse1.asm | 2 +- scripts/ceruleanhouse2.asm | 2 +- scripts/ceruleanhousetrashed.asm | 2 +- scripts/cinnabargym.asm | 18 ++++++++-------- scripts/copycatshouse1f.asm | 2 +- scripts/copycatshouse2f.asm | 4 ++-- scripts/daycarem.asm | 2 +- scripts/fanclub.asm | 10 ++++----- scripts/fightingdojo.asm | 14 ++++++------- scripts/fuchsiacity.asm | 12 +++++------ scripts/fuchsiagym.asm | 16 +++++++-------- scripts/fuchsiahouse2.asm | 4 ++-- scripts/fuchsiahouse3.asm | 2 +- scripts/gary.asm | 4 ++-- scripts/lab2.asm | 4 ++-- scripts/lab3.asm | 2 +- scripts/lab4.asm | 4 ++-- scripts/lance.asm | 4 ++-- scripts/lavenderhouse1.asm | 10 ++++----- scripts/lavenderhouse2.asm | 4 ++-- scripts/lavendermart.asm | 2 +- scripts/lavendertown.asm | 2 +- scripts/lorelei.asm | 2 +- scripts/mansion1.asm | 4 ++-- scripts/mansion2.asm | 4 ++-- scripts/mansion3.asm | 4 ++-- scripts/mansion4.asm | 4 ++-- scripts/mtmoon1.asm | 14 ++++++------- scripts/mtmoon3.asm | 14 ++++++------- scripts/mtmoonpokecenter.asm | 2 +- scripts/museum1f.asm | 10 ++++----- scripts/namerater.asm | 2 +- scripts/oakslab.asm | 34 +++++++++++++++---------------- scripts/pewtercity.asm | 6 +++--- scripts/pewtergym.asm | 6 +++--- scripts/pewterhouse1.asm | 2 +- scripts/pewtermart.asm | 4 ++-- scripts/pewterpokecenter.asm | 2 +- scripts/pokemontower2.asm | 2 +- scripts/pokemontower3.asm | 6 +++--- scripts/pokemontower4.asm | 6 +++--- scripts/pokemontower5.asm | 8 ++++---- scripts/pokemontower6.asm | 8 ++++---- scripts/pokemontower7.asm | 6 +++--- scripts/powerplant.asm | 20 +++++++++--------- scripts/rockethideout1.asm | 12 +++++------ scripts/rockethideout2.asm | 2 +- scripts/rockethideout3.asm | 4 ++-- scripts/rockethideout4.asm | 10 ++++----- scripts/rockethideoutelevator.asm | 2 +- scripts/rocktunnel1.asm | 14 ++++++------- scripts/rocktunnel2.asm | 16 +++++++-------- scripts/route1.asm | 2 +- scripts/route10.asm | 12 +++++------ scripts/route11.asm | 20 +++++++++--------- scripts/route11gateupstairs.asm | 8 ++++---- scripts/route12.asm | 14 ++++++------- scripts/route12gateupstairs.asm | 6 +++--- scripts/route12house.asm | 2 +- scripts/route13.asm | 20 +++++++++--------- scripts/route14.asm | 20 +++++++++--------- scripts/route15.asm | 20 +++++++++--------- scripts/route15gateupstairs.asm | 4 ++-- scripts/route16.asm | 12 +++++------ scripts/route16gate.asm | 2 +- scripts/route16gateupstairs.asm | 8 ++++---- scripts/route16house.asm | 4 ++-- scripts/route17.asm | 20 +++++++++--------- scripts/route18.asm | 6 +++--- scripts/route18gate.asm | 2 +- scripts/route18gateupstairs.asm | 6 +++--- scripts/route19.asm | 20 +++++++++--------- scripts/route20.asm | 20 +++++++++--------- scripts/route21.asm | 18 ++++++++-------- scripts/route22.asm | 4 ++-- scripts/route22gate.asm | 4 ++-- scripts/route23.asm | 16 +++++++-------- scripts/route24.asm | 14 ++++++------- scripts/route25.asm | 18 ++++++++-------- scripts/route2gate.asm | 2 +- scripts/route2house.asm | 2 +- scripts/route3.asm | 16 +++++++-------- scripts/route4.asm | 2 +- scripts/route5gate.asm | 2 +- scripts/route6.asm | 12 +++++------ scripts/route8.asm | 18 ++++++++-------- scripts/route9.asm | 18 ++++++++-------- scripts/safarizoneentrance.asm | 6 +++--- scripts/safarizonesecrethouse.asm | 2 +- scripts/saffrongym.asm | 18 ++++++++-------- scripts/saffronhouse1.asm | 2 +- scripts/saffronhouse2.asm | 2 +- scripts/seafoamislands5.asm | 4 ++-- scripts/silphco10.asm | 6 +++--- scripts/silphco11.asm | 8 ++++---- scripts/silphco2.asm | 10 ++++----- scripts/silphco3.asm | 6 +++--- scripts/silphco4.asm | 8 ++++---- scripts/silphco5.asm | 10 ++++----- scripts/silphco6.asm | 16 +++++++-------- scripts/silphco7.asm | 18 ++++++++-------- scripts/silphco8.asm | 8 ++++---- scripts/silphco9.asm | 8 ++++---- scripts/silphcoelevator.asm | 2 +- scripts/ssanne10.asm | 14 ++++++------- scripts/ssanne2.asm | 2 +- scripts/ssanne5.asm | 4 ++-- scripts/ssanne6.asm | 2 +- scripts/ssanne7.asm | 4 ++-- scripts/ssanne8.asm | 10 ++++----- scripts/ssanne9.asm | 22 ++++++++++---------- scripts/undergroundpathentranceroute5.asm | 2 +- scripts/unknowndungeon3.asm | 4 ++-- scripts/vermilioncity.asm | 6 +++--- scripts/vermiliongym.asm | 10 ++++----- scripts/vermilionhouse1.asm | 2 +- scripts/vermilionhouse2.asm | 2 +- scripts/vermilionhouse3.asm | 2 +- scripts/victoryroad1.asm | 4 ++-- scripts/victoryroad2.asm | 14 ++++++------- scripts/victoryroad3.asm | 8 ++++---- scripts/viridiancity.asm | 12 +++++------ scripts/viridianforest.asm | 6 +++--- scripts/viridiangym.asm | 20 +++++++++--------- scripts/viridianhouse.asm | 2 +- 155 files changed, 595 insertions(+), 591 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/engine/battle/common_text.asm b/engine/battle/common_text.asm index 6ba978b3..11309a86 100644 --- a/engine/battle/common_text.asm +++ b/engine/battle/common_text.asm @@ -139,22 +139,22 @@ PrintSendOutMonMessage: ; 58e59 (16:4e59) GoText: ; 58eae (16:4eae) TX_FAR _GoText - db $08 ; asm + TX_ASM jr PrintPlayerMon1Text DoItText: ; 58eb5 (16:4eb5) TX_FAR _DoItText - db $08 ; asm + TX_ASM jr PrintPlayerMon1Text GetmText: ; 58ebc (16:4ebc) TX_FAR _GetmText - db $08 ; asm + TX_ASM jr PrintPlayerMon1Text EnemysWeakText: ; 58ec3 (16:4ec3) TX_FAR _EnemysWeakText - db $08 ; asm + TX_ASM PrintPlayerMon1Text: ld hl, PlayerMon1Text @@ -170,7 +170,7 @@ RetreatMon: ; 58ed1 (16:4ed1) PlayerMon2Text: ; 58ed7 (16:4ed7) TX_FAR _PlayerMon2Text - db $08 ; asm + TX_ASM push de push bc ld hl, wEnemyMonHP + 1 @@ -216,17 +216,17 @@ PlayerMon2Text: ; 58ed7 (16:4ed7) EnoughText: ; 58f25 (16:4f25) TX_FAR _EnoughText - db $08 ; asm + TX_ASM jr PrintComeBackText OKExclamationText: ; 58f2c (16:4f2c) TX_FAR _OKExclamationText - db $08 ; asm + TX_ASM jr PrintComeBackText GoodText: ; 58f33 (16:4f33) TX_FAR _GoodText - db $08 ; asm + TX_ASM jr PrintComeBackText PrintComeBackText: ; 58f3a (16:4f3a) diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 352a4677..ec67d094 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -3773,7 +3773,7 @@ PrintMonName1Text: ; 3daf5 (f:5af5) ; but the functionality didn't get removed MonName1Text: ; 3dafb (f:5afb) TX_FAR _MonName1Text - db $08 ; asm + TX_ASM ld a, [H_WHOSETURN] and a ld a, [W_PLAYERMOVENUM] @@ -3798,12 +3798,12 @@ MonName1Text: ; 3dafb (f:5afb) Used1Text: ; 3db2d (f:5b2d) TX_FAR _Used1Text - db $08 ; asm + TX_ASM jr PrintInsteadText Used2Text: ; 3db34 (f:5b34) TX_FAR _Used2Text - db $08 ; asm + TX_ASM ; fall through PrintInsteadText: ; 3db39 (f:5b39) @@ -3815,7 +3815,7 @@ PrintInsteadText: ; 3db39 (f:5b39) InsteadText: ; 3db43 (f:5b43) TX_FAR _InsteadText - db $08 ; asm + TX_ASM ; fall through PrintMoveName: ; 3db48 (f:5b48) @@ -3824,7 +3824,7 @@ PrintMoveName: ; 3db48 (f:5b48) _PrintMoveName: ; 3db4c (f:5b4c) TX_FAR _CF4BText - db $08 ; asm + TX_ASM ld hl, ExclamationPointPointerTable ld a, [wd11e] ; exclamation point num add a @@ -7710,7 +7710,7 @@ PrintNothingHappenedText: ; 3f522 (f:7522) MonsStatsRoseText: ; 3f528 (f:7528) TX_FAR _MonsStatsRoseText - db $08 ; asm + TX_ASM ld hl, GreatlyRoseText ld a, [H_WHOSETURN] and a @@ -7912,7 +7912,7 @@ MoveMissed: ; 3f65a (f:765a) MonsStatsFellText: ; 3f661 (f:7661) TX_FAR _MonsStatsFellText - db $08 ; asm + TX_ASM ld hl, FellText ld a, [H_WHOSETURN] and a @@ -8246,7 +8246,7 @@ ChargeEffect: ; 3f88c (f:788c) ChargeMoveEffectText: ; 3f8c8 (f:78c8) TX_FAR _ChargeMoveEffectText - db $08 ; asm + TX_ASM ld a, [wWhichTrade] cp RAZOR_WIND ld hl, MadeWhirlwindText diff --git a/engine/battle/experience.asm b/engine/battle/experience.asm index 9bd67654..4e4d0f3c 100644 --- a/engine/battle/experience.asm +++ b/engine/battle/experience.asm @@ -341,7 +341,7 @@ BoostExp: ; 5549f (15:549f) GainedText: ; 554b2 (15:54b2) TX_FAR _GainedText - db $08 ; asm + TX_ASM ld a, [wBoostExpByExpAll] ld hl, WithExpAllText and a @@ -355,7 +355,7 @@ GainedText: ; 554b2 (15:54b2) WithExpAllText: ; 554cb (15:54cb) TX_FAR _WithExpAllText - db $08 ; asm + TX_ASM ld hl, ExpPointsText ret diff --git a/engine/hidden_object_functions14.asm b/engine/hidden_object_functions14.asm index a162c905..5b97b815 100755 --- a/engine/hidden_object_functions14.asm +++ b/engine/hidden_object_functions14.asm @@ -11,7 +11,7 @@ TMNotebook: ; 529a4 (14:69a4) db "@" ViridianSchoolNotebook: ; 529aa (14:69aa) - db $08 ; asm + TX_ASM ld hl, ViridianSchoolNotebookText1 call PrintText call TurnPageSchoolNotebook diff --git a/engine/hidden_object_functions17.asm b/engine/hidden_object_functions17.asm index 822f59a5..b7b2fa00 100755 --- a/engine/hidden_object_functions17.asm +++ b/engine/hidden_object_functions17.asm @@ -95,7 +95,7 @@ PrintBlackboardLinkCableText: ; 5dc1a (17:5c1a) ret LinkCableHelp: ; 5dc29 (17:5c29) - db $08 ; asm + TX_ASM call SaveScreenTilesToBuffer1 ld hl, LinkCableHelpText1 call PrintText @@ -179,7 +179,7 @@ LinkCableInfoText3: ; 5dce8 (17:5ce8) db "@" ViridianSchoolBlackboard: ; 5dced (17:5ced) - db $08 ; asm + TX_ASM call SaveScreenTilesToBuffer1 ld hl, ViridianSchoolBlackboardText1 call PrintText @@ -428,7 +428,7 @@ GymTrashCans: ; 5de7d (17:5e7d) VermilionGymTrashSuccesText1: ; 5dec8 (17:5ec8) TX_FAR _VermilionGymTrashSuccesText1 - db $08 ; asm + TX_ASM call WaitForSoundToFinish ld a, (SFX_02_49 - SFX_Headers_02) / 3 call PlaySound @@ -442,7 +442,7 @@ VermilionGymTrashSuccesText2: ; 5dedb (17:5edb) ; unused VermilionGymTrashSuccesPlaySfx: ; 5dee0 (17:5ee0) - db $08 ; asm + TX_ASM call WaitForSoundToFinish ld a, (SFX_02_49 - SFX_Headers_02) / 3 call PlaySound @@ -451,7 +451,7 @@ VermilionGymTrashSuccesPlaySfx: ; 5dee0 (17:5ee0) VermilionGymTrashSuccesText3: ; 5deef (17:5eef) TX_FAR _VermilionGymTrashSuccesText3 - db $08 ; asm + TX_ASM call WaitForSoundToFinish ld a, (SFX_02_57 - SFX_Headers_02) / 3 call PlaySound @@ -460,7 +460,7 @@ VermilionGymTrashSuccesText3: ; 5deef (17:5eef) VermilionGymTrashFailText: ; 5df02 (17:5f02) TX_FAR _VermilionGymTrashFailText - db $08 ; asm + TX_ASM call WaitForSoundToFinish ld a, (SFX_02_51 - SFX_Headers_02) / 3 call PlaySound diff --git a/engine/hidden_object_functions18.asm b/engine/hidden_object_functions18.asm index a378adcc..44be4c31 100755 --- a/engine/hidden_object_functions18.asm +++ b/engine/hidden_object_functions18.asm @@ -139,7 +139,7 @@ CinnabarIslandPokecenterBenchGuyText: ; 624df (18:64df) db "@" SaffronCityPokecenterBenchGuyText: ; 624e4 (18:64e4) - db $8 ; asm + TX_ASM ld a, [wd838] bit 7, a ld hl, SaffronCityPokecenterBenchGuyText2 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 diff --git a/engine/hidden_object_functions7.asm b/engine/hidden_object_functions7.asm index ce6d901f..b06f11ca 100755 --- a/engine/hidden_object_functions7.asm +++ b/engine/hidden_object_functions7.asm @@ -99,7 +99,7 @@ PrintSafariGameOverText: ; 1e9ed (7:69ed) jp PrintText SafariGameOverText: ; 1e9f7 (7:69f7) - db $08 ; asm + TX_ASM ld a, [W_NUMSAFARIBALLS] and a jr z, .asm_1ea04 @@ -127,7 +127,7 @@ PrintCinnabarQuiz: ; 1ea17 (7:6a17) jp PrintPredefTextID CinnabarGymQuiz: ; 1ea25 (7:6a25) - db $08 ; asm + TX_ASM xor a ld [wda38], a ld a, [wWhichTrade] @@ -375,7 +375,7 @@ BillsHouseMonitorText: ; 1ebdd (7:6bdd) BillsHouseInitiatedText: ; 1ebe2 (7:6be2) TX_FAR _BillsHouseInitiatedText db $06 - db $08 ; asm + TX_ASM ld a, $ff ld [wc0ee], a call PlaySound @@ -389,7 +389,7 @@ BillsHouseInitiatedText: ; 1ebe2 (7:6be2) jp TextScriptEnd BillsHousePokemonList: ; 1ec05 (7:6c05) - db $08 ; asm + TX_ASM call SaveScreenTilesToBuffer1 ld hl, BillsHousePokemonListText1 call PrintText diff --git a/engine/learn_move.asm b/engine/learn_move.asm index 75056edb..3c7663b2 100755 --- a/engine/learn_move.asm +++ b/engine/learn_move.asm @@ -206,7 +206,7 @@ TryingToLearnText: ; 6fc3 (1:6fc3) OneTwoAndText: ; 6fc8 (1:6fc8) TX_FAR _OneTwoAndText db $a - db $8 + TX_ASM ld a, (SFX_02_58 - SFX_Headers_02) / 3 call PlaySoundWaitForCurrent ld hl, PoofText diff --git a/engine/overworld/hidden_items.asm b/engine/overworld/hidden_items.asm index 0b9e316e..afe9e3c3 100755 --- a/engine/overworld/hidden_items.asm +++ b/engine/overworld/hidden_items.asm @@ -23,7 +23,7 @@ INCLUDE "data/hidden_item_coords.asm" FoundHiddenItemText: ; 7675b (1d:675b) TX_FAR _FoundHiddenItemText - db $8 + TX_ASM ld a, [wWhichTrade] ; item ID ld b, a ld c, 1 diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm index 7198f289..0b9f8bc9 100755 --- a/engine/slot_machine.asm +++ b/engine/slot_machine.asm @@ -456,7 +456,7 @@ SlotMachine_37588: ; 37588 (d:7588) jp .loop SlotsMachineText_37665: ; 37665 (d:7665) - db $08 ; asm + TX_ASM push bc call SlotMachine_37728 ld hl, LinedUpText diff --git a/home.asm b/home.asm index 07811175..3b8dab1b 100644 --- a/home.asm +++ b/home.asm @@ -971,7 +971,7 @@ PokeCenterSignText:: ; 24ef (0:24ef) Predef5CText:: ; 24f4 (0:24f4) ; XXX better label (what does predef $5C do?) - db $08 ; asm + TX_ASM predef PickupItem jp TextScriptEnd @@ -2584,7 +2584,7 @@ GetSavedEndBattleTextPointer:: ; 33b7 (0:33b7) TrainerEndBattleText:: ; 33cf (0:33cf) TX_FAR _TrainerNameText - db $08 + TX_ASM call GetSavedEndBattleTextPointer call TextCommandProcessor jp TextScriptEnd diff --git a/macros.asm b/macros.asm index b80f1442..a3ff2815 100644 --- a/macros.asm +++ b/macros.asm @@ -195,6 +195,10 @@ TX_BCD: MACRO db \2 ENDM +TX_ASM: MACRO + db $08 + ENDM + ; Predef macro. add_predef: MACRO \1Predef:: diff --git a/main.asm b/main.asm index bc1c5f15..5ed4dacc 100755 --- a/main.asm +++ b/main.asm @@ -2726,7 +2726,7 @@ PrintStrengthTxt: ; cd99 (3:4d99) UsedStrengthText: ; cdaa (3:4daa) TX_FAR _UsedStrengthText - db $08 ; asm + TX_ASM ld a, [wcf91] call PlayCry call Delay3 diff --git a/scripts/agatha.asm b/scripts/agatha.asm index dd83b22f..cc209553 100755 --- a/scripts/agatha.asm +++ b/scripts/agatha.asm @@ -135,7 +135,7 @@ AgathaTrainerHeader0: ; 76509 (1d:6509) db $ff AgathaText1: ; 76516 (1d:6516) - db $08 ; asm + TX_ASM ld hl, AgathaTrainerHeader0 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/bikeshop.asm b/scripts/bikeshop.asm index 2bf6b7e3..45c030d5 100755 --- a/scripts/bikeshop.asm +++ b/scripts/bikeshop.asm @@ -7,7 +7,7 @@ BikeShopTextPointers: ; 1d73f (7:573f) dw BikeShopText3 BikeShopText1: ; 1d745 (7:5745) - db $08 ; asm + TX_ASM ld a, [wd75f] bit 0, a jr z, .asm_260d4 @@ -120,7 +120,7 @@ BikeShopText_1d834: ; 1d834 (7:5834) db "@" BikeShopText2: ; 1d839 (7:5839) - db $08 ; asm + TX_ASM ld hl, BikeShopText_1d843 call PrintText jp TextScriptEnd @@ -130,7 +130,7 @@ BikeShopText_1d843: ; 1d843 (7:5843) db "@" BikeShopText3: ; 1d848 (7:5848) - db $08 ; asm + TX_ASM ld a, [wd75f] bit 0, a ld hl, BikeShopText_1d861 diff --git a/scripts/billshouse.asm b/scripts/billshouse.asm index 321e8808..df608de3 100755 --- a/scripts/billshouse.asm +++ b/scripts/billshouse.asm @@ -115,7 +115,7 @@ BillsHouseText4: ; 1e83c (7:683c) db $fd BillsHouseText1: ; 1e83d (7:683d) - db $8 + TX_ASM ld hl, BillsHouseText_1e865 call PrintText call YesNoChoice @@ -148,7 +148,7 @@ BillsHouseText_1e86f: ; 1e86f (7:686f) db "@" BillsHouseText2: ; 1e874 (7:6874) - db $08 ; asm + TX_ASM ld a, [wd7f2] bit 4, a jr nz, .asm_1e8a9 @@ -194,7 +194,7 @@ BillsHouseText_1e8cb: ; 1e8cb (7:68cb) db "@" BillsHouseText3: ; 1e8d0 (7:68d0) - db $08 ; asm + TX_ASM ld hl, BillsHouseText_1e8da call PrintText jp TextScriptEnd diff --git a/scripts/bruno.asm b/scripts/bruno.asm index 0e21fe7b..257a830b 100755 --- a/scripts/bruno.asm +++ b/scripts/bruno.asm @@ -132,7 +132,7 @@ BrunoTrainerHeader0: ; 763ac (1d:63ac) db $ff BrunoText1: ; 763b9 (1d:63b9) - db $08 ; asm + TX_ASM ld hl, BrunoTrainerHeader0 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/celadoncity.asm b/scripts/celadoncity.asm index 40834a3e..9107d254 100755 --- a/scripts/celadoncity.asm +++ b/scripts/celadoncity.asm @@ -44,7 +44,7 @@ CeladonCityText4: ; 19999 (6:5999) db "@" CeladonCityText5: ; 1999e (6:599e) - db $08 ; asm + TX_ASM ld a, [wd777] bit 0, a jr nz, .asm_7053f @@ -90,7 +90,7 @@ CeladonCityText6: ; 199e7 (6:59e7) CeladonCityText7: ; 199ec (6:59ec) TX_FAR _CeladonCityText7 - db $08 ; asm + TX_ASM ld a, POLIWRATH call PlayCry jp TextScriptEnd diff --git a/scripts/celadondiner.asm b/scripts/celadondiner.asm index 0c1dd4a0..f6db1606 100755 --- a/scripts/celadondiner.asm +++ b/scripts/celadondiner.asm @@ -26,7 +26,7 @@ CeladonDinerText4: ; 4916e (12:516e) db "@" CeladonDinerText5: ; 49173 (12:5173) - db $08 ; asm + TX_ASM ld a, [wd783] bit 0, a jr nz, .asm_eb14d diff --git a/scripts/celadongamecorner.asm b/scripts/celadongamecorner.asm index d1ee9951..1c80c458 100755 --- a/scripts/celadongamecorner.asm +++ b/scripts/celadongamecorner.asm @@ -124,7 +124,7 @@ CeladonGameCornerText1: ; 48ca4 (12:4ca4) db "@" CeladonGameCornerText2: ; 48ca9 (12:4ca9) - db $08 ; asm + TX_ASM call CeladonGameCornerScript_48f1e ld hl, CeladonGameCornerText_48d22 call PrintText @@ -213,7 +213,7 @@ CeladonGameCornerText4: ; 48d45 (12:4d45) db "@" CeladonGameCornerText5: ; 48d4a (12:4d4a) - db $08 ; asm + TX_ASM ld a, [wd77e] bit 2, a jr nz, .asm_48d89 @@ -272,7 +272,7 @@ CeladonGameCornerText6: ; 48db1 (12:4db1) db "@" CeladonGameCornerText7: ; 48db6 (12:4db6) - db $08 ; asm + TX_ASM ld a, [wd77c] bit 1, a ld hl, CeladonGameCornerText_48dca @@ -295,7 +295,7 @@ CeladonGameCornerText8: ; 48dd4 (12:4dd4) db "@" CeladonGameCornerText9: ; 48dd9 (12:4dd9) - db $08 ; asm + TX_ASM ld a, [wd77e] bit 4, a jr nz, .asm_48e13 @@ -348,7 +348,7 @@ CeladonGameCornerText_48e36: ; 48e36 (12:4e36) db "@" CeladonGameCornerText10: ; 48e3b (12:4e3b) - db $08 ; asm + TX_ASM ld a, [wd77e] bit 3, a jr nz, .asm_48e75 @@ -401,7 +401,7 @@ CeladonGameCornerText_48e98: ; 48e98 (12:4e98) db "@" CeladonGameCornerText11: ; 48e9d (12:4e9d) - db $08 ; asm + TX_ASM ld hl, CeladonGameCornerText_48ece call PrintText ld hl, wd72d @@ -435,7 +435,7 @@ CeladonGameCornerText13: ; 48ed8 (12:4ed8) db "@" CeladonGameCornerText12: ; 48edd (12:4edd) - db $08 ; asm + TX_ASM ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a ld hl, CeladonGameCornerText_48f09 @@ -454,7 +454,7 @@ CeladonGameCornerText12: ; 48edd (12:4edd) CeladonGameCornerText_48f09: ; 48f09 (12:4f09) TX_FAR _CeladonGameCornerText_48f09 - db $8 + TX_ASM ld a, (SFX_02_49 - SFX_Headers_02) / 3 call PlaySound call WaitForSoundToFinish diff --git a/scripts/celadongym.asm b/scripts/celadongym.asm index fab2063f..99c96110 100755 --- a/scripts/celadongym.asm +++ b/scripts/celadongym.asm @@ -156,7 +156,7 @@ CeladonGymTrainerHeader7: ; 48a04 (12:4a04) db $ff CeladonGymText1: ; 48a11 (12:4a11) - db $08 ; asm + TX_ASM ld a, [wd77c] bit 1, a jr z, .asm_48a2d @@ -217,7 +217,7 @@ TM21NoRoomText: ; 48a7c (12:4a7c) db "@" CeladonGymText2: ; 48a81 (12:4a81) - db $08 ; asm + TX_ASM ld hl, CeladonGymTrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -235,7 +235,7 @@ CeladonGymAfterBattleText2: ; 48a95 (12:4a95) db "@" CeladonGymText3: ; 48a9a (12:4a9a) - db $08 ; asm + TX_ASM ld hl, CeladonGymTrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -253,7 +253,7 @@ CeladonGymAfterBattleText3: ; 48aae (12:4aae) db "@" CeladonGymText4: ; 48ab3 (12:4ab3) - db $08 ; asm + TX_ASM ld hl, CeladonGymTrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -271,7 +271,7 @@ CeladonGymAfterBattleText4: ; 48ac7 (12:4ac7) db "@" CeladonGymText5: ; 48acc (12:4acc) - db $08 ; asm + TX_ASM ld hl, CeladonGymTrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -289,7 +289,7 @@ CeladonGymAfterBattleText5: ; 48ae0 (12:4ae0) db "@" CeladonGymText6: ; 48ae5 (12:4ae5) - db $08 ; asm + TX_ASM ld hl, CeladonGymTrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -307,7 +307,7 @@ CeladonGymAfterBattleText6: ; 48af9 (12:4af9) db "@" CeladonGymText7: ; 48afe (12:4afe) - db $08 ; asm + TX_ASM ld hl, CeladonGymTrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -325,7 +325,7 @@ CeladonGymAfterBattleText7: ; 48b12 (12:4b12) db "@" CeladonGymText8: ; 48b17 (12:4b17) - db $08 ; asm + TX_ASM ld hl, CeladonGymTrainerHeader7 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/celadonmansion1.asm b/scripts/celadonmansion1.asm index 14832dbe..857c2e42 100755 --- a/scripts/celadonmansion1.asm +++ b/scripts/celadonmansion1.asm @@ -14,7 +14,7 @@ CeladonMansion1_486a1: ; 486a1 (12:46a1) CeladonMansion1Text1: ; 486a7 (12:46a7) TX_FAR _CeladonMansion1Text1 - db $08 ; asm + TX_ASM ld a, MEOWTH jp CeladonMansion1_486a1 @@ -24,13 +24,13 @@ CeladonMansion1Text2: ; 486b1 (12:46b1) CeladonMansion1Text3: ; 486b6 (12:46b6) TX_FAR _CeladonMansion1Text3 - db $8 + TX_ASM ld a, CLEFAIRY jp CeladonMansion1_486a1 CeladonMansion1Text4: ; 486c0 (12:46c0) TX_FAR _CeladonMansion1Text4 - db $8 + TX_ASM ld a, NIDORAN_F jp CeladonMansion1_486a1 diff --git a/scripts/celadonmansion3.asm b/scripts/celadonmansion3.asm index 47190c92..0dadd20a 100755 --- a/scripts/celadonmansion3.asm +++ b/scripts/celadonmansion3.asm @@ -24,7 +24,7 @@ WriterText: ; 487ad (12:47ad) db "@" DirectorText: ; 487b2 (12:47b2) - db $08 ; asm + TX_ASM ; check pokédex ld hl, wPokedexOwned @@ -48,7 +48,7 @@ DirectorText: ; 487b2 (12:47b2) .CompletedDexText TX_FAR _CompletedDexText db $6 - db $8 ; asm + TX_ASM callab DisplayDiploma ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a diff --git a/scripts/celadonmansion5.asm b/scripts/celadonmansion5.asm index 7b2bb58d..f847759b 100755 --- a/scripts/celadonmansion5.asm +++ b/scripts/celadonmansion5.asm @@ -10,7 +10,7 @@ CeladonMansion5Text1: ; 1dd41 (7:5d41) db "@" CeladonMansion5Text2: ; 1dd46 (7:5d46) - db $08 ; asm + TX_ASM ld bc,(EEVEE << 8) | 25 call GivePokemon jr nc, .asm_24365 diff --git a/scripts/celadonmart3.asm b/scripts/celadonmart3.asm index 50496c85..46e58d8c 100755 --- a/scripts/celadonmart3.asm +++ b/scripts/celadonmart3.asm @@ -21,7 +21,7 @@ CeladonMart3TextPointers: ; 48228 (12:4228) dw CeladonMart3Text17 CeladonMart3Text1: ; 4824a (12:424a) - db $08 ; asm + TX_ASM ld a, [wd778] bit 7, a jr nz, .asm_a5463 diff --git a/scripts/celadonmartelevator.asm b/scripts/celadonmartelevator.asm index 049931e1..a0aa576d 100755 --- a/scripts/celadonmartelevator.asm +++ b/scripts/celadonmartelevator.asm @@ -63,7 +63,7 @@ CeladonMartElevatorTextPointers: ; 4865c (12:465c) dw CeladonMartElevatorText1 CeladonMartElevatorText1: ; 4865e (12:465e) - db $08 ; asm + TX_ASM call CeladonMartElevatorScript_48631 ld hl, CeldaonMartElevatorWarpMaps predef Func_1c9c6 diff --git a/scripts/celadonmartroof.asm b/scripts/celadonmartroof.asm index c656630c..07b26788 100755 --- a/scripts/celadonmartroof.asm +++ b/scripts/celadonmartroof.asm @@ -224,7 +224,7 @@ CeladonMartRoofText1: ; 48567 (12:4567) db "@" CeladonMartRoofText2: ; 4856c (12:456c) - db $08 ; asm + TX_ASM call CeladonMartRoofScript_483d8 ld a, [wcd37] and a diff --git a/scripts/ceruleancity.asm b/scripts/ceruleancity.asm index 32c4868a..81302a92 100755 --- a/scripts/ceruleancity.asm +++ b/scripts/ceruleancity.asm @@ -234,7 +234,7 @@ CeruleanCityTextPointers: ; 1962d (6:562d) dw CeruleanCityText17 CeruleanCityText1: ; 1964f (6:564f) - db $08 ; asm + TX_ASM ld a, [wd75a] ; rival battle flag bit 0, a ; do pre-battle text @@ -266,7 +266,7 @@ CeruleanCityText_19677: ; 19677 (6:5677) db "@" CeruleanCityText2: ; 1967c (6:567c) - db $8 + TX_ASM ld a, [wd75b] bit 7, a jr nz, .asm_4ca20 @@ -343,7 +343,7 @@ CeruleanCityText6: ; 19707 (6:5707) db "@" CeruleanCityText7: ; 1970c (6:570c) - db $08 ; asm + TX_ASM ldh a, [$d3] cp $b4 jr c, .asm_e9fc9 @@ -375,7 +375,7 @@ CeruleanCityText_1973a: ; 1973a (6:573a) db "@" CeruleanCityText8: ; 1973f (6:573f) - db $08 ; asm + TX_ASM ld a, [hRandomAdd] cp $b4 jr c, .asm_e28da diff --git a/scripts/ceruleangym.asm b/scripts/ceruleangym.asm index ba9d270d..2d158e96 100755 --- a/scripts/ceruleangym.asm +++ b/scripts/ceruleangym.asm @@ -105,7 +105,7 @@ CeruleanGymTrainerHeader1: ; 5c764 (17:4764) db $ff CeruleanGymText1: ; 5c771 (17:4771) - db $08 ; asm + TX_ASM ld a, [wd75e] bit 7, a jr z, .asm_5c78d @@ -166,7 +166,7 @@ CeruleanGymText_5c7d8: ; 5c7d8 (17:47d8) db $11, $6, "@" CeruleanGymText2: ; 5c7df (17:47df) - db $08 ; asm + TX_ASM ld hl, CeruleanGymTrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -184,7 +184,7 @@ CeruleanGymAfterBattleText1: ; 5c7f3 (17:47f3) db "@" CeruleanGymText3: ; 5c7f8 (17:47f8) - db $08 ; asm + TX_ASM ld hl, CeruleanGymTrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -202,7 +202,7 @@ CeruleanGymAfterBattleText2: ; 5c80c (17:480c) db "@" CeruleanGymText4: ; 5c811 (17:4811) - db $08 ; asm + TX_ASM ld a, [wd75e] bit 7, a jr nz, .asm_5c821 diff --git a/scripts/ceruleanhouse1.asm b/scripts/ceruleanhouse1.asm index 4b6a240a..e703d830 100755 --- a/scripts/ceruleanhouse1.asm +++ b/scripts/ceruleanhouse1.asm @@ -10,7 +10,7 @@ CeruleanHouse1Text1: ; 1d6fd (7:56fd) db "@" CeruleanHouse1Text2: ; 1d702 (7:5702) - db $08 ; asm + TX_ASM ld a, $6 ld [wWhichTrade], a predef DoInGameTradeDialogue diff --git a/scripts/ceruleanhouse2.asm b/scripts/ceruleanhouse2.asm index 9f7e4ddd..423c0209 100755 --- a/scripts/ceruleanhouse2.asm +++ b/scripts/ceruleanhouse2.asm @@ -9,7 +9,7 @@ CeruleanHouse2TextPointers: ; 74e13 (1d:4e13) dw CeruleanHouse2Text1 CeruleanHouse2Text1: ; 74e15 (1d:4e15) - db $8 + TX_ASM ld hl, CeruleanHouse2Text_74e77 call PrintText xor a diff --git a/scripts/ceruleanhousetrashed.asm b/scripts/ceruleanhousetrashed.asm index a78b3bb6..e0a194fe 100755 --- a/scripts/ceruleanhousetrashed.asm +++ b/scripts/ceruleanhousetrashed.asm @@ -8,7 +8,7 @@ CeruleanHouseTrashedTextPointers: ; 1d689 (7:5689) dw CeruleanHouseTrashedText3 CeruleanHouseTrashedText1: ; 1d68f (7:568f) - db $08 ; asm + TX_ASM ld b, $e4 predef IsItemInBag_ and b diff --git a/scripts/cinnabargym.asm b/scripts/cinnabargym.asm index b4955786..32043121 100755 --- a/scripts/cinnabargym.asm +++ b/scripts/cinnabargym.asm @@ -206,7 +206,7 @@ CinnabarGymScript_758b7: ; 758b7 (1d:58b7) jp TextScriptEnd CinnabarGymText1: ; 758df (1d:58df) - db $8 + TX_ASM ld a, [wd79a] bit 1, a jr z, .asm_d9332 @@ -258,7 +258,7 @@ TM38NoRoomText: ; 75934 (1d:5934) db "@" CinnabarGymText2: ; 75939 (1d:5939) - db $08 ; asm + TX_ASM call CinnabarGymScript_757a0 ld a, [wd79a] bit 2, a @@ -287,7 +287,7 @@ CinnabarGymText_75969: ; 75969 (1d:5969) db "@" CinnabarGymText3: ; 7596e (1d:596e) - db $08 ; asm + TX_ASM call CinnabarGymScript_757a0 ld a, [wd79a] bit 3, a @@ -316,7 +316,7 @@ CinnabarGymText_7599e: ; 7599e (1d:599e) db "@" CinnabarGymText4: ; 759a3 (1d:59a3) - db $08 ; asm + TX_ASM call CinnabarGymScript_757a0 ld a, [wd79a] bit 4, a @@ -345,7 +345,7 @@ CinnabarGymText_759d3: ; 759d3 (1d:59d3) db "@" CinnabarGymText5: ; 759d8 (1d:59d8) - db $08 ; asm + TX_ASM call CinnabarGymScript_757a0 ld a, [wd79a] bit 5, a @@ -374,7 +374,7 @@ CinnabarGymText_75a08: ; 75a08 (1d:5a08) db "@" CinnabarGymText6: ; 75a0d (1d:5a0d) - db $08 ; asm + TX_ASM call CinnabarGymScript_757a0 ld a, [wd79a] bit 6, a @@ -403,7 +403,7 @@ CinnabarGymText_75a3d: ; 75a3d (1d:5a3d) db "@" CinnabarGymText7: ; 75a42 (1d:5a42) - db $08 ; asm + TX_ASM call CinnabarGymScript_757a0 ld a, [wd79a] bit 7, a @@ -432,7 +432,7 @@ CinnabarGymText_75a72: ; 75a72 (1d:5a72) db "@" CinnabarGymText8: ; 75a77 (1d:5a77) - db $08 ; asm + TX_ASM call CinnabarGymScript_757a0 ld a, [wd79b] bit 0, a @@ -461,7 +461,7 @@ CinnabarGymText_75aa7: ; 75aa7 (1d:5aa7) db "@" CinnabarGymText9: ; 75aac (1d:5aac) - db $08 ; asm + TX_ASM ld a, [wd79a] bit 1, a jr nz, .asm_627d9 diff --git a/scripts/copycatshouse1f.asm b/scripts/copycatshouse1f.asm index 230a3ca3..bc76da1a 100755 --- a/scripts/copycatshouse1f.asm +++ b/scripts/copycatshouse1f.asm @@ -16,7 +16,7 @@ CopycatsHouse1FText2: ; 75ed1 (1d:5ed1) CopycatsHouse1FText3: ; 75ed6 (1d:5ed6) TX_FAR _CopycatsHouse1FText3 - db $8 + TX_ASM ld a, CHANSEY call PlayCry jp TextScriptEnd diff --git a/scripts/copycatshouse2f.asm b/scripts/copycatshouse2f.asm index 5bdb98b2..16b64e64 100755 --- a/scripts/copycatshouse2f.asm +++ b/scripts/copycatshouse2f.asm @@ -11,7 +11,7 @@ CopycatsHouse2FTextPointers: ; 5cc74 (17:4c74) dw CopycatsHouse2FText7 CopycatsHouse2FText1: ; 5cc82 (17:4c82) - db $08 ; asm + TX_ASM ld a, [wd7af] bit 0, a jr nz, .asm_7ccf3 @@ -83,7 +83,7 @@ CopycatsHouse2FText6: ; 5ccfe (17:4cfe) db "@" CopycatsHouse2FText7: ; 5cd03 (17:4d03) - db $08 ; asm + TX_ASM ld a, [wSpriteStateData1 + 9] cp $4 ld hl, CopycatsHouse2FText_5cd1c diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index fdfca235..3fa2d3b9 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -5,7 +5,7 @@ DayCareMTextPointers: ; 56252 (15:6252) dw DayCareMText1 DayCareMText1: ; 56254 (15:6254) - db $8 + TX_ASM call SaveScreenTilesToBuffer2 ld a, [W_DAYCARE_IN_USE] and a diff --git a/scripts/fanclub.asm b/scripts/fanclub.asm index f9a839fa..79621fce 100755 --- a/scripts/fanclub.asm +++ b/scripts/fanclub.asm @@ -24,7 +24,7 @@ FanClubTextPointers: ; 59b84 (16:5b84) FanClubText1: ; pikachu fan - db $08 ; asm + TX_ASM ld a, [wd771] bit 7, a jr nz, .mineisbetter @@ -51,7 +51,7 @@ FanClubText1: FanClubText2: ; seel fan - db $08 ; asm + TX_ASM ld a, [wd771] bit 6, a jr nz, .mineisbetter @@ -78,7 +78,7 @@ FanClubText2: FanClubText3: ; pikachu - db $8 + TX_ASM ld hl, .text call PrintText ld a, PIKACHU @@ -92,7 +92,7 @@ FanClubText3: FanClubText4: ; seel - db $08 ; asm + TX_ASM ld hl, .text call PrintText ld a, SEEL @@ -106,7 +106,7 @@ FanClubText4: FanClubText5: ; chair - db $08 ; asm + TX_ASM call FanClubBikeInBag jr nz, .nothingleft diff --git a/scripts/fightingdojo.asm b/scripts/fightingdojo.asm index 79647fe3..5ba6b150 100755 --- a/scripts/fightingdojo.asm +++ b/scripts/fightingdojo.asm @@ -134,7 +134,7 @@ FightingDojoTrainerHeader3: ; 5ce37 (17:4e37) db $ff FightingDojoText1: ; 5ce44 (17:4e44) - db $08 ; asm + TX_ASM ld a, [wd7b1] bit 0, a jp nz, .continue1 @@ -183,7 +183,7 @@ FightingDojoText_5ce9d: ; 5ce9d (17:4e9d) db "@" FightingDojoText2: ; 5cea2 (17:4ea2) - db $08 ; asm + TX_ASM ld hl, FightingDojoTrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -201,7 +201,7 @@ FightingDojoAfterBattleText1: ; 5ceb6 (17:4eb6) db "@" FightingDojoText3: ; 5cebb (17:4ebb) - db $08 ; asm + TX_ASM ld hl, FightingDojoTrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -219,7 +219,7 @@ FightingDojoAfterBattleText2: ; 5cecf (17:4ecf) db "@" FightingDojoText4: ; 5ced4 (17:4ed4) - db $08 ; asm + TX_ASM ld hl, FightingDojoTrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -237,7 +237,7 @@ FightingDojoAfterBattleText3: ; 5cee8 (17:4ee8) db "@" FightingDojoText5: ; 5ceed (17:4eed) - db $08 ; asm + TX_ASM ld hl, FightingDojoTrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -256,7 +256,7 @@ FightingDojoAfterBattleText4: ; 5cf01 (17:4f01) FightingDojoText6: ; 5cf06 (17:4f06) ; Hitmonlee Poké Ball - db $08 ; asm + TX_ASM ld a, [wd7b1] and %11000000 jr z, .GetMon @@ -294,7 +294,7 @@ WantHitmonleeText: ; 5cf49 (17:4f49) FightingDojoText7: ; 5cf4e (17:4f4e) ; Hitmonchan Poké Ball - db $08 ; asm + TX_ASM ld a, [wd7b1] and %11000000 jr z, .GetMon diff --git a/scripts/fuchsiacity.asm b/scripts/fuchsiacity.asm index 62372c9c..462e6084 100755 --- a/scripts/fuchsiacity.asm +++ b/scripts/fuchsiacity.asm @@ -74,7 +74,7 @@ FuchsiaCityText18: ; 19a8b (6:5a8b) db "@" FuchsiaCityText19: ; 19a90 (6:5a90) - db $08 ; asm + TX_ASM ld hl, FuchsiaCityChanseyText call PrintText ld a, CHANSEY @@ -86,7 +86,7 @@ FuchsiaCityChanseyText: ; 19a9f (6:5a9f) db "@" FuchsiaCityText20: ; 19aa4 (6:5aa4) - db $08 ; asm + TX_ASM ld hl, FuchsiaCityVoltorbText call PrintText ld a, VOLTORB @@ -98,7 +98,7 @@ FuchsiaCityVoltorbText: ; 19ab3 (6:5ab3) db "@" FuchsiaCityText21: ; 19ab8 (6:5ab8) - db $08 ; asm + TX_ASM ld hl, FuchsiaCityKangaskhanText call PrintText ld a, KANGASKHAN @@ -110,7 +110,7 @@ FuchsiaCityKangaskhanText: ; 19ac7 (6:5ac7) db "@" FuchsiaCityText22: ; 19acc (6:5acc) - db $08 ; asm + TX_ASM ld hl, FuchsiaCitySlowpokeText call PrintText ld a, SLOWPOKE @@ -122,7 +122,7 @@ FuchsiaCitySlowpokeText: ; 19adb (6:5adb) db "@" FuchsiaCityText23: ; 19ae0 (6:5ae0) - db $08 ; asm + TX_ASM ld hl, FuchsiaCityLaprasText call PrintText ld a, LAPRAS @@ -134,7 +134,7 @@ FuchsiaCityLaprasText: ; 19aef (6:5aef) db "@" FuchsiaCityText24: ; 19af4 (6:5af4) - db $08 ; asm + TX_ASM ld a, [wd7f6] bit 6, a jr nz, .asm_3b4e8 diff --git a/scripts/fuchsiagym.asm b/scripts/fuchsiagym.asm index 729192c6..e3c51015 100755 --- a/scripts/fuchsiagym.asm +++ b/scripts/fuchsiagym.asm @@ -145,7 +145,7 @@ FuchsiaGymTrainerHeader6: ; 75527 (1d:5527) db $ff FuchsiaGymText1: ; 75534 (1d:5534) - db $08 ; asm + TX_ASM ld a, [wd792] bit 1, a jr z, .asm_181b6 @@ -209,7 +209,7 @@ FuchsiaGymText11: ; 7559f (1d:559f) db "@" FuchsiaGymText2: ; 755a4 (1d:55a4) - db $08 ; asm + TX_ASM ld hl, FuchsiaGymTrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -227,7 +227,7 @@ FuchsiaGymAfterBattleText1: ; 755b8 (1d:55b8) db "@" FuchsiaGymText3: ; 755bd (1d:55bd) - db $08 ; asm + TX_ASM ld hl, FuchsiaGymTrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -245,7 +245,7 @@ FuchsiaGymAfterBattleText2: ; 755d1 (1d:55d1) db "@" FuchsiaGymText4: ; 755d6 (1d:55d6) - db $08 ; asm + TX_ASM ld hl, FuchsiaGymTrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -263,7 +263,7 @@ FuchsiaGymAfterBattleText3: ; 755ea (1d:55ea) db "@" FuchsiaGymText5: ; 755ef (1d:55ef) - db $08 ; asm + TX_ASM ld hl, FuchsiaGymTrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -281,7 +281,7 @@ FuchsiaGymAfterBattleText4: ; 75603 (1d:5603) db "@" FuchsiaGymText6: ; 75608 (1d:5608) - db $08 ; asm + TX_ASM ld hl, FuchsiaGymTrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -299,7 +299,7 @@ FuchsiaGymAfterBattleText5: ; 7561c (1d:561c) db "@" FuchsiaGymText7: ; 75621 (1d:5621) - db $08 ; asm + TX_ASM ld hl, FuchsiaGymTrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -317,7 +317,7 @@ FuchsiaGymAfterBattleText6: ; 75635 (1d:5635) db "@" FuchsiaGymText8: ; 7563a (1d:563a) - db $08 ; asm + TX_ASM ld a, [wd792] bit 1, a ld hl, FuchsiaGymText_75653 diff --git a/scripts/fuchsiahouse2.asm b/scripts/fuchsiahouse2.asm index 73ad188d..0eb0b990 100755 --- a/scripts/fuchsiahouse2.asm +++ b/scripts/fuchsiahouse2.asm @@ -9,7 +9,7 @@ FuchsiaHouse2TextPointers: ; 750b8 (1d:50b8) dw FuchsiaHouse2Text5 FuchsiaHouse2Text1: ; 750c2 (1d:50c2) - db $08 ; asm + TX_ASM ld a, [wd78e] bit 0, a jr nz, .subtract @@ -97,7 +97,7 @@ HM04NoRoomText: ; 7515e (1d:515e) FuchsiaHouse2Text5: ; 75163 (1d:5163) FuchsiaHouse2Text4: ; 75163 (1d:5163) - db $08 ; asm + TX_ASM ldh a, [$8c] cp $4 ld hl, FuchsiaHouse2Text_7517b diff --git a/scripts/fuchsiahouse3.asm b/scripts/fuchsiahouse3.asm index 31e5f76c..8c83b779 100755 --- a/scripts/fuchsiahouse3.asm +++ b/scripts/fuchsiahouse3.asm @@ -5,7 +5,7 @@ FuchsiaHouse3TextPointers: ; 5617f (15:617f) dw FuchsiaHouse3Text1 FuchsiaHouse3Text1: ; 56181 (15:6181) - db $08 ; asm + TX_ASM ld a, [wd728] bit 4, a jr nz, .after diff --git a/scripts/gary.asm b/scripts/gary.asm index f5d30528..c7766d5d 100755 --- a/scripts/gary.asm +++ b/scripts/gary.asm @@ -241,7 +241,7 @@ GaryTextPointers: ; 760d6 (1d:60d6) dw GaryText5 GaryText1: ; 760e0 (1d:60e0) - db $08 ; asm + TX_ASM ld a, [wd867] bit 1, a ld hl, GaryText_760f4 @@ -272,7 +272,7 @@ GaryText2: ; 76108 (1d:6108) db "@" GaryText3: ; 7610d (1d:610d) - db $8 + TX_ASM ld a, [W_PLAYERSTARTER] ld [wd11e], a call GetMonName diff --git a/scripts/lab2.asm b/scripts/lab2.asm index 8e490b14..4c3ab344 100755 --- a/scripts/lab2.asm +++ b/scripts/lab2.asm @@ -11,13 +11,13 @@ Lab2Text1: ; 75c2a (1d:5c2a) db "@" Lab2Text2: ; 75c2f (1d:5c2f) - db $8 + TX_ASM ld a, $7 ld [wWhichTrade], a jr Lab2DoTrade Lab2Text3: ; 75c37 (1d:5c37) - db $8 + TX_ASM ld a, $8 ld [wWhichTrade], a Lab2DoTrade: ; 75c3d (1d:5c3d) diff --git a/scripts/lab3.asm b/scripts/lab3.asm index 80a103ca..e91d36f3 100755 --- a/scripts/lab3.asm +++ b/scripts/lab3.asm @@ -9,7 +9,7 @@ Lab3TextPointers: ; 75c8a (1d:5c8a) dw Lab3Text5 Lab3Text1: ; 75c94 (1d:5c94) - db $08 ; asm + TX_ASM ld a, [wd7a1] bit 7, a jr nz, .asm_e551a diff --git a/scripts/lab4.asm b/scripts/lab4.asm index ee252cc1..6d4bd923 100755 --- a/scripts/lab4.asm +++ b/scripts/lab4.asm @@ -48,7 +48,7 @@ FossilsList: ; 75d68 (1d:5d68) db $00 Lab4Text1: ; 75d6c (1d:5d6c) - db $8 + TX_ASM ld a, [wd7a3] bit 0, a jr nz, .asm_75d96 @@ -105,7 +105,7 @@ Lab4Text_75dd5: ; 75dd5 (1d:5dd5) db "@" Lab4Text2: ; 75dda (1d:5dda) - db $08 ; asm + TX_ASM ld a, $3 ld [wWhichTrade], a predef DoInGameTradeDialogue diff --git a/scripts/lance.asm b/scripts/lance.asm index ce8c6cd7..8d1c790d 100755 --- a/scripts/lance.asm +++ b/scripts/lance.asm @@ -144,7 +144,7 @@ LanceTrainerHeader0: ; 5a397 (16:6397) db $ff LanceText1: ; 5a3a4 (16:63a4) - db $08 ; asm + TX_ASM ld hl, LanceTrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -159,7 +159,7 @@ LanceEndBattleText: ; 5a3b3 (16:63b3) LanceAfterBattleText: ; 5a3b8 (16:63b8) TX_FAR _LanceAfterBattleText - db $8 + TX_ASM ld hl, wd866 set 6, [hl] jp TextScriptEnd diff --git a/scripts/lavenderhouse1.asm b/scripts/lavenderhouse1.asm index ab6d13fd..9c812c71 100755 --- a/scripts/lavenderhouse1.asm +++ b/scripts/lavenderhouse1.asm @@ -11,7 +11,7 @@ LavenderHouse1TextPointers: ; 1d8ac (7:58ac) dw LavenderHouse1Text6 LavenderHouse1Text1: ; 1d8b8 (7:58b8) - db $08 ; asm + TX_ASM ld a, [wd7e0] bit 7, a jr nz, .asm_72e5d @@ -33,7 +33,7 @@ LavenderHouse1Text_1d8d6: ; 1d8d6 (7:58d6) db "@" LavenderHouse1Text2: ; 1d8db (7:58db) - db $08 ; asm + TX_ASM ld a, [wd7e0] bit 7, a jr nz, .asm_06470 @@ -56,20 +56,20 @@ LavenderHouse1Text_1d8f9: ; 1d8f9 (7:58f9) LavenderHouse1Text3: ; 1d8fe (7:58fe) TX_FAR _LavenderHouse1Text3 - db $8 + TX_ASM ld a, PSYDUCK call PlayCry jp TextScriptEnd LavenderHouse1Text4: ; 1d90b (7:590b) TX_FAR _LavenderHouse1Text4 - db $8 + TX_ASM ld a, NIDORINO call PlayCry jp TextScriptEnd LavenderHouse1Text5: ; 1d918 (7:5918) - db $08 ; asm + TX_ASM ld a, [wd76c] bit 0, a jr nz, .asm_15ac2 diff --git a/scripts/lavenderhouse2.asm b/scripts/lavenderhouse2.asm index b9de2663..4dc5c7b7 100755 --- a/scripts/lavenderhouse2.asm +++ b/scripts/lavenderhouse2.asm @@ -8,13 +8,13 @@ LavenderHouse2TextPointers: ; 1d9b2 (7:59b2) LavenderHouse2Text1: ; 1d9b6 (7:59b6) TX_FAR _LavenderHouse2Text1 - db $8 + TX_ASM ld a, CUBONE call PlayCry jp TextScriptEnd LavenderHouse2Text2: ; 1d9c3 (7:59c3) - db $08 ; asm + TX_ASM ld a, [wd7e0] bit 7, a jr nz, .asm_65711 diff --git a/scripts/lavendermart.asm b/scripts/lavendermart.asm index 1d60a127..53967cf2 100755 --- a/scripts/lavendermart.asm +++ b/scripts/lavendermart.asm @@ -11,7 +11,7 @@ LavenderMartText2: ; 5c935 (17:4935) db "@" LavenderMartText3: ; 5c93a (17:493a) - db $08 ; asm + TX_ASM ld a, [wd7e0] bit 7, a jr nz, .asm_c88d4 diff --git a/scripts/lavendertown.asm b/scripts/lavendertown.asm index 6ac56ba0..30c6d4e5 100755 --- a/scripts/lavendertown.asm +++ b/scripts/lavendertown.asm @@ -13,7 +13,7 @@ LavenderTownTextPointers: ; 4410e (11:410e) dw LavenderTownText9 LavenderTownText1: ; 44120 (11:4120) - db $08 ; asm + TX_ASM ld hl, LavenderTownText_4413c call PrintText call YesNoChoice diff --git a/scripts/lorelei.asm b/scripts/lorelei.asm index ee50849b..7e800467 100755 --- a/scripts/lorelei.asm +++ b/scripts/lorelei.asm @@ -132,7 +132,7 @@ LoreleiTrainerHeader0: ; 76255 (1d:6255) db $ff LoreleiText1: ; 76262 (1d:6262) - db $08 ; asm + TX_ASM ld hl, LoreleiTrainerHeader0 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/mansion1.asm b/scripts/mansion1.asm index 22a87366..e5c7eb0a 100755 --- a/scripts/mansion1.asm +++ b/scripts/mansion1.asm @@ -80,7 +80,7 @@ Mansion1TrainerHeader0: ; 44334 (11:4334) db $ff Mansion1Text1: ; 44341 (11:4341) - db $08 ; asm + TX_ASM ld hl, Mansion1TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -98,7 +98,7 @@ Mansion1AfterBattleText2: ; 44355 (11:4355) db "@" Mansion1Text4: ; 4435a (11:435a) - db $8 + TX_ASM ld hl, MansionSwitchText call PrintText call YesNoChoice diff --git a/scripts/mansion2.asm b/scripts/mansion2.asm index fdc1ec18..334753df 100755 --- a/scripts/mansion2.asm +++ b/scripts/mansion2.asm @@ -77,7 +77,7 @@ Mansion2TrainerHeader0: ; 52057 (14:6057) db $ff Mansion2Text1: ; 52064 (14:6064) - db $08 ; asm + TX_ASM ld hl, Mansion2TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -104,7 +104,7 @@ Mansion2Text4: ; 52082 (14:6082) Mansion3Text6: ; 52087 (14:6087) Mansion2Text5: ; 52087 (14:6087) - db $8 + TX_ASM ld hl, Mansion2Text_520c2 call PrintText call YesNoChoice diff --git a/scripts/mansion3.asm b/scripts/mansion3.asm index b0f82b88..d7c0d6ef 100755 --- a/scripts/mansion3.asm +++ b/scripts/mansion3.asm @@ -113,13 +113,13 @@ Mansion3TrainerHeader2: ; 522a2 (14:62a2) db $ff Mansion3Text1: ; 522af (14:62af) - db $08 ; asm + TX_ASM ld hl, Mansion3TrainerHeader0 call TalkToTrainer jp TextScriptEnd Mansion3Text2: ; 522b9 (14:62b9) - db $08 ; asm + TX_ASM ld hl, Mansion3TrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/mansion4.asm b/scripts/mansion4.asm index 765571d0..4f1bd742 100755 --- a/scripts/mansion4.asm +++ b/scripts/mansion4.asm @@ -92,13 +92,13 @@ Mansion4TrainerHeader2: ; 52454 (14:6454) db $ff Mansion4Text1: ; 52461 (14:6461) - db $08 ; asm + TX_ASM ld hl, Mansion4TrainerHeader0 call TalkToTrainer jp TextScriptEnd Mansion4Text2: ; 5246b (14:646b) - db $08 ; asm + TX_ASM ld hl, Mansion4TrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/mtmoon1.asm b/scripts/mtmoon1.asm index be46f624..6c9fcd88 100755 --- a/scripts/mtmoon1.asm +++ b/scripts/mtmoon1.asm @@ -95,43 +95,43 @@ MtMoon1TrainerHeader7: ; 49a45 (12:5a45) db $ff MtMoon1Text1: ; 49a52 (12:5a52) - db $08 ; asm + TX_ASM ld hl, MtMoon1TrainerHeader0 call TalkToTrainer jp TextScriptEnd MtMoon1Text2: ; 49a5c (12:5a5c) - db $08 ; asm + TX_ASM ld hl, MtMoon1TrainerHeader2 call TalkToTrainer jp TextScriptEnd MtMoon1Text3: ; 49a66 (12:5a66) - db $08 ; asm + TX_ASM ld hl, MtMoon1TrainerHeader3 call TalkToTrainer jp TextScriptEnd MtMoon1Text4: ; 49a70 (12:5a70) - db $08 ; asm + TX_ASM ld hl, MtMoon1TrainerHeader4 call TalkToTrainer jp TextScriptEnd MtMoon1Text5: ; 49a7a (12:5a7a) - db $08 ; asm + TX_ASM ld hl, MtMoon1TrainerHeader5 call TalkToTrainer jp TextScriptEnd MtMoon1Text6: ; 49a84 (12:5a84) - db $08 ; asm + TX_ASM ld hl, MtMoon1TrainerHeader6 call TalkToTrainer jp TextScriptEnd MtMoon1Text7: ; 49a8e (12:5a8e) - db $08 ; asm + TX_ASM ld hl, MtMoon1TrainerHeader7 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/mtmoon3.asm b/scripts/mtmoon3.asm index 0d9acb8a..5682a703 100755 --- a/scripts/mtmoon3.asm +++ b/scripts/mtmoon3.asm @@ -211,7 +211,7 @@ MtMoon3TrainerHeader4: ; 49e6c (12:5e6c) db $ff MtMoon3Text1: ; 49e79 (12:5e79) - db $08 ; asm + TX_ASM ld a, [wd7f6] bit 1, a jr z, .asm_49e8d @@ -244,31 +244,31 @@ MtMoon3Text1: ; 49e79 (12:5e79) jp TextScriptEnd MtMoon3Text2: ; 49ec1 (12:5ec1) - db $08 ; asm + TX_ASM ld hl, MtMoon3TrainerHeader0 call TalkToTrainer jp TextScriptEnd MtMoon3Text3: ; 49ecb (12:5ecb) - db $08 ; asm + TX_ASM ld hl, MtMoon3TrainerHeader2 call TalkToTrainer jp TextScriptEnd MtMoon3Text4: ; 49ed5 (12:5ed5) - db $08 ; asm + TX_ASM ld hl, MtMoon3TrainerHeader3 call TalkToTrainer jp TextScriptEnd MtMoon3Text5: ; 49edf (12:5edf) - db $08 ; asm + TX_ASM ld hl, MtMoon3TrainerHeader4 call TalkToTrainer jp TextScriptEnd MtMoon3Text6: ; 49ee9 (12:5ee9) - db $08 ; asm + TX_ASM ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a ld hl, MtMoon3Text_49f24 @@ -297,7 +297,7 @@ MtMoon3Text_49f24: ; 49f24 (12:5f24) db "@" MtMoon3Text7: ; 49f29 (12:5f29) - db $08 ; asm + TX_ASM ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a ld hl, MtMoon3Text_49f64 diff --git a/scripts/mtmoonpokecenter.asm b/scripts/mtmoonpokecenter.asm index 23e1b082..0920ecf3 100755 --- a/scripts/mtmoonpokecenter.asm +++ b/scripts/mtmoonpokecenter.asm @@ -22,7 +22,7 @@ MtMoonPokecenterText3: ; 492e7 (12:52e7) db "@" MtMoonPokecenterText4: ; 492ec (12:52ec) - db $08 ; asm + TX_ASM ld a, [wd7c6] add a jp c, .asm_49353 diff --git a/scripts/museum1f.asm b/scripts/museum1f.asm index 3b953c84..2e5835d0 100755 --- a/scripts/museum1f.asm +++ b/scripts/museum1f.asm @@ -39,7 +39,7 @@ Museum1FTextPointers: ; 5c12b (17:412b) dw Museum1FText5 Museum1FText1: ; 5c135 (17:4135) - db $8 + TX_ASM ld a, [W_YCOORD] cp $4 jr nz, .asm_8774b @@ -179,7 +179,7 @@ Museum1FText_5c242: ; 5c242 (17:4242) db "@" Museum1FText2: ; 5c247 (17:4247) - db $08 ; asm + TX_ASM ld hl, Museum1FText_5c251 call PrintText jp TextScriptEnd @@ -189,7 +189,7 @@ Museum1FText_5c251: ; 5c251 (17:4251) db "@" Museum1FText3: ; 5c256 (17:4256) - db $08 ; asm + TX_ASM ld a, [wd754] bit 1, a jr nz, .asm_5c285 @@ -231,7 +231,7 @@ Museum1FText_5c29e: ; 5c29e (17:429e) db "@" Museum1FText4: ; 5c2a3 (17:42a3) - db $08 ; asm + TX_ASM ld hl, Museum1FText_5c2ad call PrintText jp TextScriptEnd @@ -241,7 +241,7 @@ Museum1FText_5c2ad: ; 5c2ad (17:42ad) db "@" Museum1FText5: ; 5c2b2 (17:42b2) - db $08 ; asm + TX_ASM ld hl, Museum1FText_5c2bc call PrintText jp TextScriptEnd diff --git a/scripts/namerater.asm b/scripts/namerater.asm index e71db6ed..010dc0cd 100755 --- a/scripts/namerater.asm +++ b/scripts/namerater.asm @@ -41,7 +41,7 @@ NameRaterTextPointers: ; 1da54 (7:5a54) dw NameRaterText1 NameRaterText1: ; 1da56 (7:5a56) - db $8 + TX_ASM call SaveScreenTilesToBuffer2 ld hl, NameRaterText_1dab3 call NameRaterScript_1da15 diff --git a/scripts/oakslab.asm b/scripts/oakslab.asm index 464cd755..ceb8a761 100755 --- a/scripts/oakslab.asm +++ b/scripts/oakslab.asm @@ -734,7 +734,7 @@ OaksLabTextPointers: ; 1d082 (7:5082) OaksLabText28: ; 1d0ce (7:50ce) OaksLabText1: ; 1d0ce (7:50ce) - db $08 ; asm + TX_ASM ld a, [wd74b] bit 0, a jr nz, .asm_1d0de @@ -767,7 +767,7 @@ OaksLabText41: ; 1d0fd (7:50fd) OaksLabText29: ; 1d102 (7:5102) OaksLabText2: ; 1d102 (7:5102) - db $8 + TX_ASM ld a, STARTER2 ld [wWhichTrade], a ld a, $3 @@ -778,7 +778,7 @@ OaksLabText2: ; 1d102 (7:5102) OaksLabText30: ; 1d113 (7:5113) OaksLabText3: ; 1d113 (7:5113) - db $8 + TX_ASM ld a, STARTER3 ld [wWhichTrade], a ld a, $4 @@ -789,7 +789,7 @@ OaksLabText3: ; 1d113 (7:5113) OaksLabText31: ; 1d124 (7:5124) OaksLabText4: ; 1d124 (7:5124) - db $8 + TX_ASM ld a, STARTER1 ld [wWhichTrade], a ld a, $2 @@ -938,7 +938,7 @@ OaksLabLastMonText: ; 1d243 (7:5243) OaksLabText32: ; 1d248 (7:5248) OaksLabText5: ; 1d248 (7:5248) - db $08 ; asm + TX_ASM ld a, [wd747] bit 6, a jr nz, .asm_1d266 @@ -1054,7 +1054,7 @@ OaksLabText34: ; 1d322 (7:5322) OaksLabText33: ; 1d322 (7:5322) OaksLabText7: ; 1d322 (7:5322) OaksLabText6: ; 1d322 (7:5322) - db $08 ; asm + TX_ASM ld hl, OaksLabText_1d32c call PrintText jp TextScriptEnd @@ -1070,7 +1070,7 @@ OaksLabText8: ; 1d331 (7:5331) OaksLabText36: ; 1d336 (7:5336) OaksLabText9: ; 1d336 (7:5336) - db $08 ; asm + TX_ASM ld hl, OaksLabText_1d340 call PrintText jp TextScriptEnd @@ -1080,7 +1080,7 @@ OaksLabText_1d340: ; 1d340 (7:5340) db "@" OaksLabText17: ; 1d345 (7:5345) - db $8 + TX_ASM ld hl, OaksLabRivalWaitingText call PrintText jp TextScriptEnd @@ -1090,7 +1090,7 @@ OaksLabRivalWaitingText: ; 1d34f (7:534f) db "@" OaksLabText18: ; 1d354 (7:5354) - db $8 + TX_ASM ld hl, OaksLabChooseMonText call PrintText jp TextScriptEnd @@ -1100,7 +1100,7 @@ OaksLabChooseMonText: ; 1d35e (7:535e) db "@" OaksLabText19: ; 1d363 (7:5363) - db $8 + TX_ASM ld hl, OaksLabRivalInterjectionText call PrintText jp TextScriptEnd @@ -1110,7 +1110,7 @@ OaksLabRivalInterjectionText: ; 1d36d (7:536d) db "@" OaksLabText20: ; 1d372 (7:5372) - db $8 + TX_ASM ld hl, OaksLabBePatientText call PrintText jp TextScriptEnd @@ -1120,7 +1120,7 @@ OaksLabBePatientText: ; 1d37c (7:537c) db "@" OaksLabText12: ; 1d381 (7:5381) - db $8 + TX_ASM ld hl, OaksLabLeavingText call PrintText jp TextScriptEnd @@ -1130,7 +1130,7 @@ OaksLabLeavingText: ; 1d38b (7:538b) db "@" OaksLabText13: ; 1d390 (7:5390) - db $8 + TX_ASM ld hl, OaksLabRivalPickingMonText call PrintText jp TextScriptEnd @@ -1140,7 +1140,7 @@ OaksLabRivalPickingMonText: ; 1d39a (7:539a) db "@" OaksLabText14: ; 1d39f (7:539f) - db $8 + TX_ASM ld hl, OaksLabRivalReceivedMonText call PrintText jp TextScriptEnd @@ -1150,7 +1150,7 @@ OaksLabRivalReceivedMonText: ; 1d3a9 (7:53a9) db $11, "@" OaksLabText15: ; 1d3af (7:53af) - db $8 + TX_ASM ld hl, OaksLabRivalChallengeText call PrintText jp TextScriptEnd @@ -1168,7 +1168,7 @@ OaksLabText_1d3c3: ; 1d3c3 (7:53c3) db "@" OaksLabText16: ; 1d3c8 (7:53c8) - db $8 + TX_ASM ld hl, OaksLabRivalToughenUpText call PrintText jp TextScriptEnd @@ -1209,7 +1209,7 @@ OaksLabText38: ; 1d3fb (7:53fb) OaksLabText37: ; 1d3fb (7:53fb) OaksLabText11: ; 1d3fb (7:53fb) OaksLabText10: ; 1d3fb (7:53fb) - db $08 ; asm + TX_ASM ld hl, OaksLabText_1d405 call PrintText jp TextScriptEnd diff --git a/scripts/pewtercity.asm b/scripts/pewtercity.asm index 21d1c643..09447d9e 100755 --- a/scripts/pewtercity.asm +++ b/scripts/pewtercity.asm @@ -194,7 +194,7 @@ PewterCityText2: ; 193ac (6:53ac) db "@" PewterCityText3: ; 193b1 (6:53b1) - db $08 ; asm + TX_ASM ld hl, PewterCityText_193f1 call PrintText call YesNoChoice @@ -240,7 +240,7 @@ PewterCityText13: ; 19400 (6:5400) db "@" PewterCityText4: ; 19405 (6:5405) - db $8 + TX_ASM ld hl, PewterCityText_19427 call PrintText call YesNoChoice @@ -269,7 +269,7 @@ PewterCityText_19431: ; 19431 (6:5431) db "@" PewterCityText5: ; 19436 (6:5436) - db $08 ; asm + TX_ASM ld hl, PewterCityText_1945d call PrintText xor a diff --git a/scripts/pewtergym.asm b/scripts/pewtergym.asm index 39adaa32..aa7f9153 100755 --- a/scripts/pewtergym.asm +++ b/scripts/pewtergym.asm @@ -105,7 +105,7 @@ PewterGymTrainerHeader0: ; 5c441 (17:4441) db $ff PewterGymText1: ; 5c44e (17:444e) - db $08 ; asm + TX_ASM ld a, [wd755] bit 7, a jr z, .asm_5c46a @@ -170,7 +170,7 @@ PewterGymText_5c4bc: ; 5c4bc (17:44bc) db "@" PewterGymText2: ; 5c4c6 (17:44c6) - db $08 ; asm + TX_ASM ld hl, PewterGymTrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -188,7 +188,7 @@ PewterGymAfterBattleText1: ; 5c4da (17:44da) db "@" PewterGymText3: ; 5c4df (17:44df) - db $08 ; asm + TX_ASM ld a, [wd72a] bit 0, a jr nz, .asm_5c50c diff --git a/scripts/pewterhouse1.asm b/scripts/pewterhouse1.asm index 05d27a14..a670f23c 100755 --- a/scripts/pewterhouse1.asm +++ b/scripts/pewterhouse1.asm @@ -8,7 +8,7 @@ PewterHouse1TextPointers: ; 1d5f6 (7:55f6) PewterHouse1Text1: ; 1d5fc (7:55fc) TX_FAR _PewterHouse1Text1 - db $08 ; asm + TX_ASM ld a, NIDORAN_M call PlayCry call WaitForSoundToFinish diff --git a/scripts/pewtermart.asm b/scripts/pewtermart.asm index 8fe99d94..62831d1b 100755 --- a/scripts/pewtermart.asm +++ b/scripts/pewtermart.asm @@ -10,7 +10,7 @@ PewterMartTextPointers: ; 74cb6 (1d:4cb6) dw PewterMartText3 PewterMartText2: ; 74cbc (1d:4cbc) - db $08 ; asm + TX_ASM ld hl, PewterMartText_74cc6 call PrintText jp TextScriptEnd @@ -20,7 +20,7 @@ PewterMartText_74cc6: ; 74cc6 (1d:4cc6) db "@" PewterMartText3: ; 74ccb (1d:4ccb) - db $08 ; asm + TX_ASM ld hl, PewterMartText_74cd5 call PrintText jp TextScriptEnd diff --git a/scripts/pewterpokecenter.asm b/scripts/pewterpokecenter.asm index 8b2ac8f9..42bc3086 100755 --- a/scripts/pewterpokecenter.asm +++ b/scripts/pewterpokecenter.asm @@ -16,7 +16,7 @@ PewterPokecenterText2: ; 5c596 (17:4596) db "@" PewterPokecenterText3: ; 5c59b (17:459b) - db $8 + TX_ASM ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a ld hl, PewterPokecenterText5 diff --git a/scripts/pokemontower2.asm b/scripts/pokemontower2.asm index 1bde3ba6..cd86a494 100755 --- a/scripts/pokemontower2.asm +++ b/scripts/pokemontower2.asm @@ -115,7 +115,7 @@ PokemonTower2TextPointers: ; 605db (18:45db) dw PokemonTower2Text2 PokemonTower2Text1: ; 605df (18:45df) - db $08 ; asm + TX_ASM ld a, [wd764] bit 7, a jr z, .asm_16f24 diff --git a/scripts/pokemontower3.asm b/scripts/pokemontower3.asm index 78c53c2f..2cf58381 100755 --- a/scripts/pokemontower3.asm +++ b/scripts/pokemontower3.asm @@ -48,19 +48,19 @@ PokemonTower3TrainerHeader2: ; 60705 (18:4705) db $ff PokemonTower3Text1: ; 60712 (18:4712) - db $08 ; asm + TX_ASM ld hl, PokemonTower3TrainerHeader0 call TalkToTrainer jp TextScriptEnd PokemonTower3Text2: ; 6071c (18:471c) - db $08 ; asm + TX_ASM ld hl, PokemonTower3TrainerHeader1 call TalkToTrainer jp TextScriptEnd PokemonTower3Text3: ; 60726 (18:4726) - db $08 ; asm + TX_ASM ld hl, PokemonTower3TrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/pokemontower4.asm b/scripts/pokemontower4.asm index 3c48fdca..4f375657 100755 --- a/scripts/pokemontower4.asm +++ b/scripts/pokemontower4.asm @@ -51,19 +51,19 @@ PokemonTower4TrainerHeader2: ; 60833 (18:4833) db $ff PokemonTower4Text1: ; 60840 (18:4840) - db $08 ; asm + TX_ASM ld hl, PokemonTower4TrainerHeader0 call TalkToTrainer jp TextScriptEnd PokemonTower4Text2: ; 6084a (18:484a) - db $08 ; asm + TX_ASM ld hl, PokemonTower4TrainerHeader1 call TalkToTrainer jp TextScriptEnd PokemonTower4Text3: ; 60854 (18:4854) - db $08 ; asm + TX_ASM ld hl, PokemonTower4TrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/pokemontower5.asm b/scripts/pokemontower5.asm index 1c5e6c1e..34dd3204 100755 --- a/scripts/pokemontower5.asm +++ b/scripts/pokemontower5.asm @@ -104,7 +104,7 @@ PokemonTower5Text1: ; 609da (18:49da) db "@" PokemonTower5Text2: ; 609df (18:49df) - db $08 ; asm + TX_ASM ld hl, PokemonTower5TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -122,7 +122,7 @@ PokemonTower5AfterBattleText1: ; 609f3 (18:49f3) db "@" PokemonTower5Text3: ; 609f8 (18:49f8) - db $08 ; asm + TX_ASM ld hl, PokemonTower5TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -140,7 +140,7 @@ PokemonTower5AfterBattleText2: ; 60a0c (18:4a0c) db "@" PokemonTower5Text4: ; 60a11 (18:4a11) - db $08 ; asm + TX_ASM ld hl, PokemonTower5TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -158,7 +158,7 @@ PokemonTower5AfterBattleText3: ; 60a25 (18:4a25) db "@" PokemonTower5Text5: ; 60a2a (18:4a2a) - db $08 ; asm + TX_ASM ld hl, PokemonTower5TrainerHeader3 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/pokemontower6.asm b/scripts/pokemontower6.asm index 54171ddc..e0e75cb1 100755 --- a/scripts/pokemontower6.asm +++ b/scripts/pokemontower6.asm @@ -136,25 +136,25 @@ PokemonTower6TrainerHeader2: ; 60bd7 (18:4bd7) db $ff PokemonTower6Text1: ; 60be4 (18:4be4) - db $08 ; asm + TX_ASM ld hl, PokemonTower6TrainerHeader0 call TalkToTrainer jp TextScriptEnd PokemonTower6Text2: ; 60bee (18:4bee) - db $08 ; asm + TX_ASM ld hl, PokemonTower6TrainerHeader1 call TalkToTrainer jp TextScriptEnd PokemonTower6Text3: ; 60bf8 (18:4bf8) - db $08 ; asm + TX_ASM ld hl, PokemonTower6TrainerHeader2 call TalkToTrainer jp TextScriptEnd PokemonTower6Text7: ; 60c02 (18:4c02) - db $8 + TX_ASM ld hl, PokemonTower2Text_60c1f call PrintText ld a, MAROWAK diff --git a/scripts/pokemontower7.asm b/scripts/pokemontower7.asm index 32cd0e83..a5d10ca8 100755 --- a/scripts/pokemontower7.asm +++ b/scripts/pokemontower7.asm @@ -197,19 +197,19 @@ PokemonTower7TrainerHeader2: ; 60e5f (18:4e5f) db $ff PokemonTower7Text1: ; 60e6c (18:4e6c) - db $08 ; asm + TX_ASM ld hl, PokemonTower7TrainerHeader0 call TalkToTrainer jp TextScriptEnd PokemonTower7Text2: ; 60e76 (18:4e76) - db $08 ; asm + TX_ASM ld hl, PokemonTower7TrainerHeader1 call TalkToTrainer jp TextScriptEnd PokemonTower7Text3: ; 60e80 (18:4e80) - db $08 ; asm + TX_ASM ld hl, PokemonTower7TrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/powerplant.asm b/scripts/powerplant.asm index 4355c039..25597654 100755 --- a/scripts/powerplant.asm +++ b/scripts/powerplant.asm @@ -119,47 +119,47 @@ InitVoltorbBattle: ; 1e368 (7:6368) jp TextScriptEnd PowerPlantText1: ; 1e374 (7:6374) - db $8 ; asm + TX_ASM ld hl, PowerPlantTrainerHeader0 jr InitVoltorbBattle PowerPlantText2: ; 1e37a (7:637a) - db $8 ; asm + TX_ASM ld hl, PowerPlantTrainerHeader1 jr InitVoltorbBattle PowerPlantText3: ; 1e380 (7:6380) - db $8 ; asm + TX_ASM ld hl, PowerPlantTrainerHeader2 jr InitVoltorbBattle PowerPlantText4: ; 1e386 (7:6386) - db $8 ; asm + TX_ASM ld hl, PowerPlantTrainerHeader3 jr InitVoltorbBattle PowerPlantText5: ; 1e38c (7:638c) - db $8 ; asm + TX_ASM ld hl, PowerPlantTrainerHeader4 jr InitVoltorbBattle PowerPlantText6: ; 1e392 (7:6392) - db $8 ; asm + TX_ASM ld hl, PowerPlantTrainerHeader5 jr InitVoltorbBattle PowerPlantText7: ; 1e398 (7:6398) - db $8 ; asm + TX_ASM ld hl, PowerPlantTrainerHeader6 jr InitVoltorbBattle PowerPlantText8: ; 1e39e (7:639e) - db $8 ; asm + TX_ASM ld hl, PowerPlantTrainerHeader7 jr InitVoltorbBattle PowerPlantText9: ; 1e3a4 (7:63a4) - db $8 ; asm + TX_ASM ld hl, PowerPlantTrainerHeader8 jr InitVoltorbBattle @@ -169,7 +169,7 @@ VoltorbBattleText: ; 1e3aa (7:63aa) ZapdosBattleText: ; 1e3af (7:63af) TX_FAR _ZapdosBattleText - db $8 + TX_ASM ld a, ZAPDOS call PlayCry call WaitForSoundToFinish diff --git a/scripts/rockethideout1.asm b/scripts/rockethideout1.asm index f8b911fe..fe5a47e6 100755 --- a/scripts/rockethideout1.asm +++ b/scripts/rockethideout1.asm @@ -95,38 +95,38 @@ RocketHideout1TrainerHeader5: ; 44c52 (11:4c52) db $ff RocketHideout1Text1: ; 44c5f (11:4c5f) - db $08 ; asm + TX_ASM ld hl, RocketHideout1TrainerHeader0 call TalkToTrainer jp TextScriptEnd RocketHideout1Text2: ; 44c69 (11:4c69) - db $08 ; asm + TX_ASM ld hl, RocketHideout1TrainerHeader2 call TalkToTrainer jp TextScriptEnd RocketHideout1Text3: ; 44c73 (11:4c73) - db $08 ; asm + TX_ASM ld hl, RocketHideout1TrainerHeader3 call TalkToTrainer jp TextScriptEnd RocketHideout1Text4: ; 44c7d (11:4c7d) - db $08 ; asm + TX_ASM ld hl, RocketHideout1TrainerHeader4 call TalkToTrainer jp TextScriptEnd RocketHideout1Text5: ; 44c87 (11:4c87) - db $08 ; asm + TX_ASM ld hl, RocketHideout1TrainerHeader5 call TalkToTrainer jp TextScriptEnd RocketHideout1EndBattleText6: ; 44c91 (11:4c91) TX_FAR _RocketHideout1EndBattleText6 - db $8 + TX_ASM ld hl, wd815 set 5, [hl] ld hl, RocketHideout1Text_44c9f diff --git a/scripts/rockethideout2.asm b/scripts/rockethideout2.asm index 05bdc9b6..04e2c5d3 100755 --- a/scripts/rockethideout2.asm +++ b/scripts/rockethideout2.asm @@ -437,7 +437,7 @@ RocketHideout2TrainerHeader0: ; 450d1 (11:50d1) db $ff RocketHideout2Text1: ; 450de (11:50de) - db $08 ; asm + TX_ASM ld hl, RocketHideout2TrainerHeader0 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/rockethideout3.asm b/scripts/rockethideout3.asm index f94438e9..e7a7b63b 100755 --- a/scripts/rockethideout3.asm +++ b/scripts/rockethideout3.asm @@ -175,7 +175,7 @@ RocketHideout3TrainerHeader2: ; 4530e (11:530e) db $ff RocketHideout3Text1: ; 4531b (11:531b) - db $08 ; asm + TX_ASM ld hl, RocketHideout3TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -193,7 +193,7 @@ RocketHideout3AfterBattleTxt2: ; 4532f (11:532f) db "@" RocketHideout3Text2: ; 45334 (11:5334) - db $08 ; asm + TX_ASM ld hl, RocketHideout3TrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/rockethideout4.asm b/scripts/rockethideout4.asm index 98132f99..ff35aa5f 100755 --- a/scripts/rockethideout4.asm +++ b/scripts/rockethideout4.asm @@ -119,7 +119,7 @@ RocketHideout4TrainerHeader3: ; 4552d (11:552d) db $ff RocketHideout4Text1: ; 4553a (11:553a) - db $08 ; asm + TX_ASM ld a, [wd81b] bit 7, a jp nz, .asm_545571 @@ -160,7 +160,7 @@ RocketHideout4Text10: ; 45584 (11:5584) db "@" RocketHideout4Text2: ; 45589 (11:5589) - db $08 ; asm + TX_ASM ld hl, RocketHideout4TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -178,7 +178,7 @@ RocketHideout4AfterBattleText2: ; 4559d (11:559d) db "@" RocketHideout4Text3: ; 455a2 (11:55a2) - db $08 ; asm + TX_ASM ld hl, RocketHideout4TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -196,7 +196,7 @@ RocketHideout4AfterBattleText3: ; 455b6 (11:55b6) db "@" RocketHideout4Text4: ; 455bb (11:55bb) - db $08 ; asm + TX_ASM ld hl, RocketHideout4TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -210,7 +210,7 @@ RocketHideout4EndBattleText4: ; 455ca (11:55ca) db "@" RocketHideout4AfterBattleText4: ; 455cf (11:55cf) - db $8 + TX_ASM ld hl, RocketHideout4Text_455ec call PrintText ld hl, wd81b diff --git a/scripts/rockethideoutelevator.asm b/scripts/rockethideoutelevator.asm index 70564e7a..169b536b 100755 --- a/scripts/rockethideoutelevator.asm +++ b/scripts/rockethideoutelevator.asm @@ -62,7 +62,7 @@ RocketHideoutElevatorTextPointers: ; 4576b (11:576b) dw RocketHideoutElevatorText1 RocketHideoutElevatorText1: ; 4576d (11:576d) - db $08 ; asm + TX_ASM ld b, LIFT_KEY call IsItemInBag jr z, .asm_45782 diff --git a/scripts/rocktunnel1.asm b/scripts/rocktunnel1.asm index b5b840bf..72881e65 100755 --- a/scripts/rocktunnel1.asm +++ b/scripts/rocktunnel1.asm @@ -89,37 +89,37 @@ RockTunnel1TrainerHeader7: ; 4454d (11:454d) db $ff RockTunnel1Text1: ; 4455a (11:455a) - db $8 + TX_ASM ld hl, RockTunnel1TrainerHeader1 jr RockTunnel1TalkToTrainer RockTunnel1Text2: ; 44560 (11:4560) - db $8 + TX_ASM ld hl, RockTunnel1TrainerHeader2 jr RockTunnel1TalkToTrainer RockTunnel1Text3: ; 44566 (11:4566) - db $8 + TX_ASM ld hl, RockTunnel1TrainerHeader3 jr RockTunnel1TalkToTrainer RockTunnel1Text4: ; 4456c (11:456c) - db $8 + TX_ASM ld hl, RockTunnel1TrainerHeader4 jr RockTunnel1TalkToTrainer RockTunnel1Text5: ; 44572 (11:4572) - db $8 + TX_ASM ld hl, RockTunnel1TrainerHeader5 jr RockTunnel1TalkToTrainer RockTunnel1Text6: ; 44578 (11:4578) - db $8 + TX_ASM ld hl, RockTunnel1TrainerHeader6 jr RockTunnel1TalkToTrainer RockTunnel1Text7: ; 4457e (11:457e) - db $8 + TX_ASM ld hl, RockTunnel1TrainerHeader7 RockTunnel1TalkToTrainer: ; 44582 (11:4582) call TalkToTrainer diff --git a/scripts/rocktunnel2.asm b/scripts/rocktunnel2.asm index 173ede7c..832a244f 100755 --- a/scripts/rocktunnel2.asm +++ b/scripts/rocktunnel2.asm @@ -98,49 +98,49 @@ RockTunnel2TrainerHeader8: ; 46068 (11:6068) db $ff RockTunnel2Text1: ; 46075 (11:6075) - db $08 ; asm + TX_ASM ld hl, RockTunnel2TrainerHeader0 call TalkToTrainer jp TextScriptEnd RockTunnel2Text2: ; 4607f (11:607f) - db $08 ; asm + TX_ASM ld hl, RockTunnel2TrainerHeader2 call TalkToTrainer jp TextScriptEnd RockTunnel2Text3: ; 46089 (11:6089) - db $08 ; asm + TX_ASM ld hl, RockTunnel2TrainerHeader3 call TalkToTrainer jp TextScriptEnd RockTunnel2Text4: ; 46093 (11:6093) - db $08 ; asm + TX_ASM ld hl, RockTunnel2TrainerHeader4 call TalkToTrainer jp TextScriptEnd RockTunnel2Text5: ; 4609d (11:609d) - db $08 ; asm + TX_ASM ld hl, RockTunnel2TrainerHeader5 call TalkToTrainer jp TextScriptEnd RockTunnel2Text6: ; 460a7 (11:60a7) - db $08 ; asm + TX_ASM ld hl, RockTunnel2TrainerHeader6 call TalkToTrainer jp TextScriptEnd RockTunnel2Text7: ; 460b1 (11:60b1) - db $08 ; asm + TX_ASM ld hl, RockTunnel2TrainerHeader7 call TalkToTrainer jp TextScriptEnd RockTunnel2Text8: ; 460bb (11:60bb) - db $08 ; asm + TX_ASM ld hl, RockTunnel2TrainerHeader8 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route1.asm b/scripts/route1.asm index c5023134..74ac9605 100755 --- a/scripts/route1.asm +++ b/scripts/route1.asm @@ -7,7 +7,7 @@ Route1TextPointers: ; 1cab2 (7:4ab2) dw Route1Text3 Route1Text1: ; 1cab8 (7:4ab8) - db $08 ; asm + TX_ASM ld hl, wd7bf bit 0, [hl] set 0, [hl] diff --git a/scripts/route10.asm b/scripts/route10.asm index 3f7e99a3..fbc3b01a 100755 --- a/scripts/route10.asm +++ b/scripts/route10.asm @@ -82,7 +82,7 @@ Route10TrainerHeader5: ; 5939f (16:539f) db $ff Route10Text1: ; 593ac (16:53ac) - db $08 ; asm + TX_ASM ld hl, Route10TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -100,7 +100,7 @@ Route10AfterBattleText1: ; 593c0 (16:53c0) db "@" Route10Text2: ; 593c5 (16:53c5) - db $08 ; asm + TX_ASM ld hl, Route10TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -118,7 +118,7 @@ Route10AfterBattleText2: ; 593d9 (16:53d9) db "@" Route10Text3: ; 593de (16:53de) - db $08 ; asm + TX_ASM ld hl, Route10TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -136,7 +136,7 @@ Route10AfterBattleText3: ; 593f2 (16:53f2) db "@" Route10Text4: ; 593f7 (16:53f7) - db $08 ; asm + TX_ASM ld hl, Route10TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -154,7 +154,7 @@ Route10AfterBattleText4: ; 5940b (16:540b) db "@" Route10Text5: ; 59410 (16:5410) - db $08 ; asm + TX_ASM ld hl, Route10TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -172,7 +172,7 @@ Route10AfterBattleText5: ; 59424 (16:5424) db "@" Route10Text6: ; 59429 (16:5429) - db $08 ; asm + TX_ASM ld hl, Route10TrainerHeader5 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route11.asm b/scripts/route11.asm index 7607be9c..7a31232b 100755 --- a/scripts/route11.asm +++ b/scripts/route11.asm @@ -119,7 +119,7 @@ Route11TrainerHeader9: ; 594e7 (16:54e7) db $ff Route11Text1: ; 594f4 (16:54f4) - db $8 + TX_ASM ld hl, Route11TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -137,7 +137,7 @@ Route11AfterBattleText1: ; 59508 (16:5508) db "@" Route11Text2: ; 5950d (16:550d) - db $08 ; asm + TX_ASM ld hl, Route11TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -155,7 +155,7 @@ Route11AfterBattleText2: ; 59521 (16:5521) db "@" Route11Text3: ; 59526 (16:5526) - db $08 ; asm + TX_ASM ld hl, Route11TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -173,7 +173,7 @@ Route11AfterBattleText3: ; 5953a (16:553a) db "@" Route11Text4: ; 5953f (16:553f) - db $08 ; asm + TX_ASM ld hl, Route11TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -191,7 +191,7 @@ Route11AfterBattleText4: ; 59553 (16:5553) db "@" Route11Text5: ; 59558 (16:5558) - db $08 ; asm + TX_ASM ld hl, Route11TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -209,7 +209,7 @@ Route11AfterBattleText5: ; 5956c (16:556c) db "@" Route11Text6: ; 59571 (16:5571) - db $08 ; asm + TX_ASM ld hl, Route11TrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -227,7 +227,7 @@ Route11AfterBattleText6: ; 59585 (16:5585) db "@" Route11Text7: ; 5958a (16:558a) - db $08 ; asm + TX_ASM ld hl, Route11TrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -245,7 +245,7 @@ Route11AfterBattleText7: ; 5959e (16:559e) db "@" Route11Text8: ; 595a3 (16:55a3) - db $08 ; asm + TX_ASM ld hl, Route11TrainerHeader7 call TalkToTrainer jp TextScriptEnd @@ -263,7 +263,7 @@ Route11AfterBattleText8: ; 595b7 (16:55b7) db "@" Route11Text9: ; 595bc (16:55bc) - db $08 ; asm + TX_ASM ld hl, Route11TrainerHeader8 call TalkToTrainer jp TextScriptEnd @@ -281,7 +281,7 @@ Route11AfterBattleText9: ; 595d0 (16:55d0) db "@" Route11Text10: ; 595d5 (16:55d5) - db $08 ; asm + TX_ASM ld hl, Route11TrainerHeader9 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route11gateupstairs.asm b/scripts/route11gateupstairs.asm index 4fac2144..abea062c 100755 --- a/scripts/route11gateupstairs.asm +++ b/scripts/route11gateupstairs.asm @@ -8,7 +8,7 @@ Route11GateUpstairsTextPointers: ; 49457 (12:5457) dw Route11GateUpstairsText4 Route11GateUpstairsText1: ; 4945f (12:545f) - db $08 ; asm + TX_ASM xor a ld [wWhichTrade], a predef DoInGameTradeDialogue @@ -16,7 +16,7 @@ Route11GateUpstairsScriptEnd: ; 49469 (12:5469) jp TextScriptEnd Route11GateUpstairsText2: ; 4946c (12:546c) - db $8 + TX_ASM ld a, [wd7d6] add a jr c, .asm_4949b @@ -48,7 +48,7 @@ Route11GateUpstairsText_494a3: ; 494a3 (12:54a3) db "@" Route11GateUpstairsText3: ; 494a8 (12:54a8) - db $08 ; asm + TX_ASM ld a, [wSpriteStateData1 + 9] cp $4 jp nz, Route12GateUpstairsScript_495c9 @@ -70,7 +70,7 @@ BinocularsNoSnorlaxText: db "@" Route11GateUpstairsText4: ; 494ce (12:54ce) - db $8 + TX_ASM ld hl, Route11GateUpstairsText_494d5 jp Route12GateUpstairsScript_495c9 diff --git a/scripts/route12.asm b/scripts/route12.asm index af412d3a..eed676b3 100755 --- a/scripts/route12.asm +++ b/scripts/route12.asm @@ -157,7 +157,7 @@ Route12Text14: ; 596f0 (16:56f0) db "@" Route12Text2: ; 596f5 (16:56f5) - db $08 ; asm + TX_ASM ld hl, Route12TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -175,7 +175,7 @@ Route12AfterBattleText1: ; 59709 (16:5709) db "@" Route12Text3: ; 5970e (16:570e) - db $08 ; asm + TX_ASM ld hl, Route12TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -193,7 +193,7 @@ Route12AfterBattleText2: ; 59722 (16:5722) db "@" Route12Text4: ; 59727 (16:5727) - db $08 ; asm + TX_ASM ld hl, Route12TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -211,7 +211,7 @@ Route12AfterBattleText3: ; 5973b (16:573b) db "@" Route12Text5: ; 59740 (16:5740) - db $08 ; asm + TX_ASM ld hl, Route12TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -229,7 +229,7 @@ Route12AfterBattleText4: ; 59754 (16:5754) db "@" Route12Text6: ; 59759 (16:5759) - db $08 ; asm + TX_ASM ld hl, Route12TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -247,7 +247,7 @@ Route12AfterBattleText5: ; 5976d (16:576d) db "@" Route12Text7: ; 59772 (16:5772) - db $08 ; asm + TX_ASM ld hl, Route12TrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -265,7 +265,7 @@ Route12AfterBattleText6: ; 59786 (16:5786) db "@" Route12Text8: ; 5978b (16:578b) - db $08 ; asm + TX_ASM ld hl, Route12TrainerHeader6 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route12gateupstairs.asm b/scripts/route12gateupstairs.asm index 68f9cc68..6ec8cfe3 100755 --- a/scripts/route12gateupstairs.asm +++ b/scripts/route12gateupstairs.asm @@ -7,7 +7,7 @@ Route12GateUpstairsTextPointers: ; 49563 (12:5563) dw Route12GateUpstairsText3 Route12GateUpstairsText1: ; 49569 (12:5569) - db $08 ; asm + TX_ASM ld a, [wd7d7] rrca jr c, .asm_0ad3c @@ -48,7 +48,7 @@ TM39NoRoomText: ; 495ac (12:55ac) db "@" Route12GateUpstairsText2: ; 495b1 (12:55b1) - db $08 ; asm + TX_ASM ld hl, Route12GateUpstairsText_495b8 jp Route12GateUpstairsScript_495c9 @@ -57,7 +57,7 @@ Route12GateUpstairsText_495b8: ; 495b8 (12:55b8) db "@" Route12GateUpstairsText3: ; 495bd (12:55bd) - db $8 + TX_ASM ld hl, Route12GateUpstairsText_495c4 jp Route12GateUpstairsScript_495c9 diff --git a/scripts/route12house.asm b/scripts/route12house.asm index 733109da..6b3e17fc 100755 --- a/scripts/route12house.asm +++ b/scripts/route12house.asm @@ -5,7 +5,7 @@ Route12HouseTextPointers: ; 56482 (15:6482) dw Route12HouseText1 Route12HouseText1: ; 56484 (15:6484) - db $08 ; asm + TX_ASM ld a, [wd728] bit 5, a jr nz, .asm_b4cad diff --git a/scripts/route13.asm b/scripts/route13.asm index 38d80425..aed4745c 100755 --- a/scripts/route13.asm +++ b/scripts/route13.asm @@ -121,7 +121,7 @@ Route13TrainerHeader10: ; 558bd (15:58bd) db $ff Route13Text1: ; 558ca (15:58ca) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -139,7 +139,7 @@ Route13AfterBattleText2: ; 558de (15:58de) db "@" Route13Text2: ; 558e3 (15:58e3) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -157,7 +157,7 @@ Route13AfterBattleText3: ; 558f7 (15:58f7) db "@" Route13Text3: ; 558fc (15:58fc) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -175,7 +175,7 @@ Route13AfterBattleText4: ; 55910 (15:5910) db "@" Route13Text4: ; 55915 (15:5915) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -193,7 +193,7 @@ Route13AfterBattleText5: ; 55929 (15:5929) db "@" Route13Text5: ; 5592e (15:592e) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -211,7 +211,7 @@ Route13AfterBattleText6: ; 55942 (15:5942) db "@" Route13Text6: ; 55947 (15:5947) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -229,7 +229,7 @@ Route13AfterBattleText7: ; 5595b (15:595b) db "@" Route13Text7: ; 55960 (15:5960) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader7 call TalkToTrainer jp TextScriptEnd @@ -247,7 +247,7 @@ Route13AfterBattleText8: ; 55974 (15:5974) db "@" Route13Text8: ; 55979 (15:5979) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader8 call TalkToTrainer jp TextScriptEnd @@ -265,7 +265,7 @@ Route13AfterBattleText9: ; 5598d (15:598d) db "@" Route13Text9: ; 55992 (15:5992) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader9 call TalkToTrainer jp TextScriptEnd @@ -283,7 +283,7 @@ Route13AfterBattleText10: ; 559a6 (15:59a6) db "@" Route13Text10: ; 559ab (15:59ab) - db $08 ; asm + TX_ASM ld hl, Route13TrainerHeader10 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route14.asm b/scripts/route14.asm index 37b7df19..25a2cd85 100755 --- a/scripts/route14.asm +++ b/scripts/route14.asm @@ -119,7 +119,7 @@ Route14TrainerHeader9: ; 55a6e (15:5a6e) db $ff Route14Text1: ; 55a7b (15:5a7b) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -137,7 +137,7 @@ Route14AfterBattleText1: ; 55a8f (15:5a8f) db "@" Route14Text2: ; 55a94 (15:5a94) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -155,7 +155,7 @@ Route14AfterBattleText2: ; 55aa8 (15:5aa8) db "@" Route14Text3: ; 55aad (15:5aad) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -173,7 +173,7 @@ Route14AfterBattleText3: ; 55ac1 (15:5ac1) db "@" Route14Text4: ; 55ac6 (15:5ac6) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -191,7 +191,7 @@ Route14AfterBattleText4: ; 55ada (15:5ada) db "@" Route14Text5: ; 55adf (15:5adf) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -209,7 +209,7 @@ Route14AfterBattleText5: ; 55af3 (15:5af3) db "@" Route14Text6: ; 55af8 (15:5af8) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -227,7 +227,7 @@ Route14AfterBattleText6: ; 55b0c (15:5b0c) db "@" Route14Text7: ; 55b11 (15:5b11) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -245,7 +245,7 @@ Route14AfterBattleText7: ; 55b25 (15:5b25) db "@" Route14Text8: ; 55b2a (15:5b2a) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader7 call TalkToTrainer jp TextScriptEnd @@ -263,7 +263,7 @@ Route14AfterBattleText8: ; 55b3e (15:5b3e) db "@" Route14Text9: ; 55b43 (15:5b43) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader8 call TalkToTrainer jp TextScriptEnd @@ -281,7 +281,7 @@ Route14AfterBattleText9: ; 55b57 (15:5b57) db "@" Route14Text10: ; 55b5c (15:5b5c) - db $08 ; asm + TX_ASM ld hl, Route14TrainerHeader9 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route15.asm b/scripts/route15.asm index 8b2c38ec..3aa23bbb 100755 --- a/scripts/route15.asm +++ b/scripts/route15.asm @@ -120,52 +120,52 @@ Route15TrainerHeader9: ; 5984b (16:584b) db $ff Route15Text1: ; 59858 (16:5858) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader0 jr Route15TalkToTrainer Route15Text2: ; 5985e (16:585e) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader1 jr Route15TalkToTrainer Route15Text3: ; 59864 (16:5864) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader2 jr Route15TalkToTrainer Route15Text4: ; 5986a (16:586a) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader3 jr Route15TalkToTrainer Route15Text5: ; 59870 (16:5870) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader4 jr Route15TalkToTrainer Route15Text6: ; 59876 (16:5876) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader5 jr Route15TalkToTrainer Route15Text7: ; 5987c (16:587c) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader6 jr Route15TalkToTrainer Route15Text8: ; 59882 (16:5882) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader7 jr Route15TalkToTrainer Route15Text9: ; 59888 (16:5888) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader8 jr Route15TalkToTrainer Route15Text10: ; 5988e (16:588e) - db $8 ; asm + TX_ASM ld hl, Route15TrainerHeader9 Route15TalkToTrainer: ; 59892 (16:5892) call TalkToTrainer diff --git a/scripts/route15gateupstairs.asm b/scripts/route15gateupstairs.asm index 1e581cc3..05bcbeea 100755 --- a/scripts/route15gateupstairs.asm +++ b/scripts/route15gateupstairs.asm @@ -6,7 +6,7 @@ Route15GateUpstairsTextPointers: ; 4964d (12:564d) dw Route15GateUpstairsText2 Route15GateUpstairsText1: ; 49651 (12:5651) - db $8 + TX_ASM ld a, [wd7dd] bit 0, a jr nz, .asm_49683 @@ -37,7 +37,7 @@ Route15GateUpstairsText_4968c: ; 4968c (12:568c) db "@" Route15GateUpstairsText2: ; 49691 (12:5691) - db $8 + TX_ASM ld hl, Route15GateUpstairsText_49698 jp Route12GateUpstairsScript_495c9 diff --git a/scripts/route16.asm b/scripts/route16.asm index 6091e416..b6c49a96 100755 --- a/scripts/route16.asm +++ b/scripts/route16.asm @@ -134,7 +134,7 @@ Route16TrainerHeader5: ; 59a0b (16:5a0b) db $ff Route16Text1: ; 59a18 (16:5a18) - db $08 ; asm + TX_ASM ld hl, Route16TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -152,7 +152,7 @@ Route16AfterBattleText1: ; 59a2c (16:5a2c) db "@" Route16Text2: ; 59a31 (16:5a31) - db $08 ; asm + TX_ASM ld hl, Route16TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -170,7 +170,7 @@ Route16AfterBattleText2: ; 59a45 (16:5a45) db "@" Route16Text3: ; 59a4a (16:5a4a) - db $08 ; asm + TX_ASM ld hl, Route16TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -188,7 +188,7 @@ Route16AfterBattleText3: ; 59a5e (16:5a5e) db "@" Route16Text4: ; 59a63 (16:5a63) - db $08 ; asm + TX_ASM ld hl, Route16TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -206,7 +206,7 @@ Route16AfterBattleText4: ; 59a77 (16:5a77) db "@" Route16Text5: ; 59a7c (16:5a7c) - db $08 ; asm + TX_ASM ld hl, Route16TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -224,7 +224,7 @@ Route16AfterBattleText5: ; 59a90 (16:5a90) db "@" Route16Text6: ; 59a95 (16:5a95) - db $08 ; asm + TX_ASM ld hl, Route16TrainerHeader5 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route16gate.asm b/scripts/route16gate.asm index f631d0ec..d245e249 100755 --- a/scripts/route16gate.asm +++ b/scripts/route16gate.asm @@ -92,7 +92,7 @@ Route16GateTextPointers: ; 4975a (12:575a) dw Route16GateText3 Route16GateText1: ; 49760 (12:5760) - db $08 ; asm + TX_ASM call Route16GateScript_49755 jr z, .asm_0bdf3 ld hl, Route16GateText_4977c diff --git a/scripts/route16gateupstairs.asm b/scripts/route16gateupstairs.asm index 0515e8d9..6027d57b 100755 --- a/scripts/route16gateupstairs.asm +++ b/scripts/route16gateupstairs.asm @@ -8,7 +8,7 @@ Route16GateUpstairsTextPointers: ; 4980e (12:580e) dw Route16GateUpstairsText4 Route16GateUpstairsText1: ; 49816 (12:5816) - db $08 ; asm + TX_ASM ld hl, Route16GateUpstairsText_49820 call PrintText jp TextScriptEnd @@ -18,7 +18,7 @@ Route16GateUpstairsText_49820: ; 49820 (12:5820) db "@" Route16GateUpstairsText2: ; 49825 (12:5825) - db $08 ; asm + TX_ASM ld hl, Route16GateUpstairsText_4982f call PrintText jp TextScriptEnd @@ -28,7 +28,7 @@ Route16GateUpstairsText_4982f: ; 4982f (12:582f) db "@" Route16GateUpstairsText3: ; 49834 (12:5834) - db $8 + TX_ASM ld hl, Route16GateUpstairsText_4983b jp Route12GateUpstairsScript_495c9 @@ -37,7 +37,7 @@ Route16GateUpstairsText_4983b: ; 4983b (12:583b) db "@" Route16GateUpstairsText4: ; 49840 (12:5840) - db $8 + TX_ASM ld hl, Route16GateUpstairsText_49847 jp Route12GateUpstairsScript_495c9 diff --git a/scripts/route16house.asm b/scripts/route16house.asm index a3d61281..5035b190 100755 --- a/scripts/route16house.asm +++ b/scripts/route16house.asm @@ -6,7 +6,7 @@ Route16HouseTextPointers: ; 1e5fb (7:65fb) dw Route16HouseText2 Route16HouseText1: ; 1e5ff (7:65ff) - db $08 ; asm + TX_ASM ld a, [wd7e0] bit 6, a ld hl, HM02ExplanationText @@ -43,7 +43,7 @@ HM02NoRoomText: ; 1e63b (7:663b) db "@" Route16HouseText2: ; 1e640 (7:6640) - db $08 ; asm + TX_ASM ld hl, Route16HouseText_1e652 call PrintText ld a, FEAROW diff --git a/scripts/route17.asm b/scripts/route17.asm index f528f0d6..8de70c3b 100755 --- a/scripts/route17.asm +++ b/scripts/route17.asm @@ -124,7 +124,7 @@ Route17TrainerHeader9: ; 55c1f (15:5c1f) db $ff Route17Text1: ; 55c2c (15:5c2c) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -142,7 +142,7 @@ Route17AfterBattleText1: ; 55c40 (15:5c40) db "@" Route17Text2: ; 55c45 (15:5c45) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -160,7 +160,7 @@ Route17AfterBattleText2: ; 55c59 (15:5c59) db "@" Route17Text3: ; 55c5e (15:5c5e) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -178,7 +178,7 @@ Route17AfterBattleText3: ; 55c72 (15:5c72) db "@" Route17Text4: ; 55c77 (15:5c77) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -196,7 +196,7 @@ Route17AfterBattleText4: ; 55c8b (15:5c8b) db "@" Route17Text5: ; 55c90 (15:5c90) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -214,7 +214,7 @@ Route17AfterBattleText5: ; 55ca4 (15:5ca4) db "@" Route17Text6: ; 55ca9 (15:5ca9) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -232,7 +232,7 @@ Route17AfterBattleText6: ; 55cbd (15:5cbd) db "@" Route17Text7: ; 55cc2 (15:5cc2) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -250,7 +250,7 @@ Route17AfterBattleText7: ; 55cd6 (15:5cd6) db "@" Route17Text8: ; 55cdb (15:5cdb) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader7 call TalkToTrainer jp TextScriptEnd @@ -268,7 +268,7 @@ Route17AfterBattleText8: ; 55cef (15:5cef) db "@" Route17Text9: ; 55cf4 (15:5cf4) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader8 call TalkToTrainer jp TextScriptEnd @@ -286,7 +286,7 @@ Route17AfterBattleText9: ; 55d08 (15:5d08) db "@" Route17Text10: ; 55d0d (15:5d0d) - db $08 ; asm + TX_ASM ld hl, Route17TrainerHeader9 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route18.asm b/scripts/route18.asm index 85c58d4c..80242169 100755 --- a/scripts/route18.asm +++ b/scripts/route18.asm @@ -50,7 +50,7 @@ Route18TrainerHeader2: ; 59b02 (16:5b02) db $ff Route18Text1: ; 59b0f (16:5b0f) - db $08 ; asm + TX_ASM ld hl, Route18TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -68,7 +68,7 @@ Route18AfterBattleText1: ; 59b23 (16:5b23) db "@" Route18Text2: ; 59b28 (16:5b28) - db $08 ; asm + TX_ASM ld hl, Route18TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -86,7 +86,7 @@ Route18AfterBattleText2: ; 59b3c (16:5b3c) db "@" Route18Text3: ; 59b41 (16:5b41) - db $08 ; asm + TX_ASM ld hl, Route18TrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route18gate.asm b/scripts/route18gate.asm index fae15e7b..02f7b68c 100755 --- a/scripts/route18gate.asm +++ b/scripts/route18gate.asm @@ -87,7 +87,7 @@ Route18GateTextPointers: ; 4990d (12:590d) dw Route18GateText2 Route18GateText1: ; 49911 (12:5911) - db $08 ; asm + TX_ASM call Route16GateScript_49755 jr z, .asm_3c84d ld hl, Route18GateText_4992d diff --git a/scripts/route18gateupstairs.asm b/scripts/route18gateupstairs.asm index 8d0c3638..7fc76eda 100755 --- a/scripts/route18gateupstairs.asm +++ b/scripts/route18gateupstairs.asm @@ -7,14 +7,14 @@ Route18GateUpstairsTextPointers: ; 49978 (12:5978) dw Route18GateUpstairsText3 Route18GateUpstairsText1: ; 4997e (12:597e) - db $08 ; asm + TX_ASM ld a, $5 ld [wWhichTrade], a predef DoInGameTradeDialogue jp TextScriptEnd Route18GateUpstairsText2: ; 4998c (12:598c) - db $8 + TX_ASM ld hl, Route18GateUpstairsText_49993 jp Route12GateUpstairsScript_495c9 @@ -23,7 +23,7 @@ Route18GateUpstairsText_49993: ; 49993 (12:5993) db "@" Route18GateUpstairsText3: ; 49998 (12:5998) - db $8 + TX_ASM ld hl, Route18GateUpstairsText_4999f jp Route12GateUpstairsScript_495c9 diff --git a/scripts/route19.asm b/scripts/route19.asm index 6f8781b3..0265d2a3 100755 --- a/scripts/route19.asm +++ b/scripts/route19.asm @@ -119,61 +119,61 @@ Route19TrainerHeader9: ; 55ddf (15:5ddf) db $ff Route19Text1: ; 55dec (15:5dec) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader0 call TalkToTrainer jp TextScriptEnd Route19Text2: ; 55df6 (15:5df6) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader1 call TalkToTrainer jp TextScriptEnd Route19Text3: ; 55e00 (15:5e00) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader2 call TalkToTrainer jp TextScriptEnd Route19Text4: ; 55e0a (15:5e0a) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader3 call TalkToTrainer jp TextScriptEnd Route19Text5: ; 55e14 (15:5e14) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader4 call TalkToTrainer jp TextScriptEnd Route19Text6: ; 55e1e (15:5e1e) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader5 call TalkToTrainer jp TextScriptEnd Route19Text7: ; 55e28 (15:5e28) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader6 call TalkToTrainer jp TextScriptEnd Route19Text8: ; 55e32 (15:5e32) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader7 call TalkToTrainer jp TextScriptEnd Route19Text9: ; 55e3c (15:5e3c) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader8 call TalkToTrainer jp TextScriptEnd Route19Text10: ; 55e46 (15:5e46) - db $08 ; asm + TX_ASM ld hl, Route19TrainerHeader9 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route20.asm b/scripts/route20.asm index 0f8b9eae..085a6c18 100755 --- a/scripts/route20.asm +++ b/scripts/route20.asm @@ -175,61 +175,61 @@ Route20TrainerHeader10: ; 50da6 (14:4da6) db $ff Route20Text1: ; 50db3 (14:4db3) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader0 call TalkToTrainer jp TextScriptEnd Route20Text2: ; 50dbd (14:4dbd) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader2 call TalkToTrainer jp TextScriptEnd Route20Text3: ; 50dc7 (14:4dc7) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader3 call TalkToTrainer jp TextScriptEnd Route20Text4: ; 50dd1 (14:4dd1) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader4 call TalkToTrainer jp TextScriptEnd Route20Text5: ; 50ddb (14:4ddb) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader5 call TalkToTrainer jp TextScriptEnd Route20Text6: ; 50de5 (14:4de5) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader6 call TalkToTrainer jp TextScriptEnd Route20Text7: ; 50def (14:4def) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader7 call TalkToTrainer jp TextScriptEnd Route20Text8: ; 50df9 (14:4df9) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader8 call TalkToTrainer jp TextScriptEnd Route20Text9: ; 50e03 (14:4e03) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader9 call TalkToTrainer jp TextScriptEnd Route20Text10: ; 50e0d (14:4e0d) - db $08 ; asm + TX_ASM ld hl, Route20TrainerHeader10 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route21.asm b/scripts/route21.asm index d98c38c4..cbb5ea7b 100755 --- a/scripts/route21.asm +++ b/scripts/route21.asm @@ -108,55 +108,55 @@ Route21TrainerHeader8: ; 55f76 (15:5f76) db $ff Route21Text1: ; 55f83 (15:5f83) - db $08 ; asm + TX_ASM ld hl, Route21TrainerHeader0 call TalkToTrainer jp TextScriptEnd Route21Text2: ; 55f8d (15:5f8d) - db $08 ; asm + TX_ASM ld hl, Route21TrainerHeader1 call TalkToTrainer jp TextScriptEnd Route21Text3: ; 55f97 (15:5f97) - db $08 ; asm + TX_ASM ld hl, Route21TrainerHeader2 call TalkToTrainer jp TextScriptEnd Route21Text4: ; 55fa1 (15:5fa1) - db $08 ; asm + TX_ASM ld hl, Route21TrainerHeader3 call TalkToTrainer jp TextScriptEnd Route21Text5: ; 55fab (15:5fab) - db $08 ; asm + TX_ASM ld hl, Route21TrainerHeader4 call TalkToTrainer jp TextScriptEnd Route21Text6: ; 55fb5 (15:5fb5) - db $08 ; asm + TX_ASM ld hl, Route21TrainerHeader5 call TalkToTrainer jp TextScriptEnd Route21Text7: ; 55fbf (15:5fbf) - db $08 ; asm + TX_ASM ld hl, Route21TrainerHeader6 call TalkToTrainer jp TextScriptEnd Route21Text8: ; 55fc9 (15:5fc9) - db $08 ; asm + TX_ASM ld hl, Route21TrainerHeader7 call TalkToTrainer jp TextScriptEnd Route21Text9: ; 55fd3 (15:5fd3) - db $08 ; asm + TX_ASM ld hl, Route21TrainerHeader8 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route22.asm b/scripts/route22.asm index 66df3bb2..88f69bea 100755 --- a/scripts/route22.asm +++ b/scripts/route22.asm @@ -367,7 +367,7 @@ Route22TextPointers: ; 51175 (14:5175) dw Route22FrontGateText Route22Text1: ; 5117b (14:517b) - db $08 ; asm + TX_ASM ld a, [wd7eb] bit 5, a jr z, .asm_5118b @@ -381,7 +381,7 @@ Route22Text1: ; 5117b (14:517b) jp TextScriptEnd Route22Text2: ; 51194 (14:5194) - db $08 ; asm + TX_ASM ld a, [wd7eb] bit 6, a jr z, .asm_511a4 diff --git a/scripts/route22gate.asm b/scripts/route22gate.asm index 0d3c3489..4b099bb2 100755 --- a/scripts/route22gate.asm +++ b/scripts/route22gate.asm @@ -57,7 +57,7 @@ Route22GateTextPointers: ; 1e6df (7:66df) dw Route22GateText1 Route22GateText1: ; 1e6e1 (7:66e1) - db $8 + TX_ASM ld a, [W_OBTAINEDBADGES] bit 0, a jr nz, .asm_1e6f6 @@ -76,7 +76,7 @@ Route22GateText1: ; 1e6e1 (7:66e1) Route22GateText_1e704: ; 1e704 (7:6704) TX_FAR _Route22GateText_1e704 - db $8 + TX_ASM ld a, (SFX_02_51 - SFX_Headers_02) / 3 call PlaySoundWaitForCurrent call WaitForSoundToFinish diff --git a/scripts/route23.asm b/scripts/route23.asm index 937b5a26..aaa85822 100755 --- a/scripts/route23.asm +++ b/scripts/route23.asm @@ -146,43 +146,43 @@ Route23TextPointers: ; 512f7 (14:52f7) dw Route23Text8 Route23Text1: ; 51307 (14:5307) - db $08 ; asm + TX_ASM ld a, $6 call Route23Script_51346 jp TextScriptEnd Route23Text2: ; 51310 (14:5310) - db $08 ; asm + TX_ASM ld a, $5 call Route23Script_51346 jp TextScriptEnd Route23Text3: ; 51319 (14:5319) - db $08 ; asm + TX_ASM ld a, $4 call Route23Script_51346 jp TextScriptEnd Route23Text4: ; 51322 (14:5322) - db $08 ; asm + TX_ASM ld a, $3 call Route23Script_51346 jp TextScriptEnd Route23Text5: ; 5132b (14:532b) - db $08 ; asm + TX_ASM ld a, $2 call Route23Script_51346 jp TextScriptEnd Route23Text6: ; 51334 (14:5334) - db $08 ; asm + TX_ASM ld a, $1 call Route23Script_51346 jp TextScriptEnd Route23Text7: ; 5133d (14:533d) - db $8 + TX_ASM ld a, $0 call Route23Script_51346 jp TextScriptEnd @@ -223,7 +223,7 @@ Route23Script_51388: ; 51388 (14:5388) VictoryRoadGuardText1: ; 5138e (14:538e) TX_FAR _VictoryRoadGuardText1 - db $08 ; asm + TX_ASM ld a, (SFX_02_51 - SFX_Headers_02) / 3 call PlaySoundWaitForCurrent call WaitForSoundToFinish diff --git a/scripts/route24.asm b/scripts/route24.asm index abfea174..24866ed7 100755 --- a/scripts/route24.asm +++ b/scripts/route24.asm @@ -147,7 +147,7 @@ Route24TrainerHeader6: ; 51497 (14:5497) db $ff Route24Text1: ; 514a4 (14:54a4) - db $8 + TX_ASM ld hl, wd7f0 res 1, [hl] ld a, [wd7ef] @@ -218,37 +218,37 @@ Route24Text_51530: ; 51530 (14:5530) db "@" Route24Text2: ; 51535 (14:5535) - db $08 ; asm + TX_ASM ld hl, Route24TrainerHeader0 call TalkToTrainer jp TextScriptEnd Route24Text3: ; 5153f (14:553f) - db $08 ; asm + TX_ASM ld hl, Route24TrainerHeader2 call TalkToTrainer jp TextScriptEnd Route24Text4: ; 51549 (14:5549) - db $08 ; asm + TX_ASM ld hl, Route24TrainerHeader3 call TalkToTrainer jp TextScriptEnd Route24Text5: ; 51553 (14:5553) - db $08 ; asm + TX_ASM ld hl, Route24TrainerHeader4 call TalkToTrainer jp TextScriptEnd Route24Text6: ; 5155d (14:555d) - db $08 ; asm + TX_ASM ld hl, Route24TrainerHeader5 call TalkToTrainer jp TextScriptEnd Route24Text7: ; 51567 (14:5567) - db $08 ; asm + TX_ASM ld hl, Route24TrainerHeader6 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route25.asm b/scripts/route25.asm index 0c827802..383652c8 100755 --- a/scripts/route25.asm +++ b/scripts/route25.asm @@ -139,55 +139,55 @@ Route25TrainerHeader9: ; 5169e (14:569e) db $ff Route25Text1: ; 516ab (14:56ab) - db $08 ; asm + TX_ASM ld hl, Route25TrainerHeader0 call TalkToTrainer jp TextScriptEnd Route25Text2: ; 516b5 (14:56b5) - db $08 ; asm + TX_ASM ld hl, Route25TrainerHeader2 call TalkToTrainer jp TextScriptEnd Route25Text3: ; 516bf (14:56bf) - db $08 ; asm + TX_ASM ld hl, Route25TrainerHeader3 call TalkToTrainer jp TextScriptEnd Route25Text4: ; 516c9 (14:56c9) - db $08 ; asm + TX_ASM ld hl, Route25TrainerHeader4 call TalkToTrainer jp TextScriptEnd Route25Text5: ; 516d3 (14:56d3) - db $08 ; asm + TX_ASM ld hl, Route25TrainerHeader5 call TalkToTrainer jp TextScriptEnd Route25Text6: ; 516dd (14:56dd) - db $08 ; asm + TX_ASM ld hl, Route25TrainerHeader6 call TalkToTrainer jp TextScriptEnd Route25Text7: ; 516e7 (14:56e7) - db $08 ; asm + TX_ASM ld hl, Route25TrainerHeader7 call TalkToTrainer jp TextScriptEnd Route25Text8: ; 516f1 (14:56f1) - db $08 ; asm + TX_ASM ld hl, Route25TrainerHeader8 call TalkToTrainer jp TextScriptEnd Route25Text9: ; 516fb (14:56fb) - db $08 ; asm + TX_ASM ld hl, Route25TrainerHeader9 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route2gate.asm b/scripts/route2gate.asm index 9d29a311..7850cbc9 100755 --- a/scripts/route2gate.asm +++ b/scripts/route2gate.asm @@ -6,7 +6,7 @@ Route2GateTextPointers: ; 5d5d7 (17:55d7) dw Route2GateText2 Route2GateText1: ; 5d5db (17:55db) - db $08 ; asm + TX_ASM ld a, [wd7c2] bit 0, a jr nz, .asm_5d60d diff --git a/scripts/route2house.asm b/scripts/route2house.asm index ba13605b..d1312c91 100755 --- a/scripts/route2house.asm +++ b/scripts/route2house.asm @@ -10,7 +10,7 @@ Route2HouseText1: ; 1def4 (7:5ef4) db "@" Route2HouseText2: ; 1def9 (7:5ef9) - db $08 ; asm + TX_ASM ld a, $1 ld [wWhichTrade], a predef DoInGameTradeDialogue diff --git a/scripts/route3.asm b/scripts/route3.asm index 6f9d0e2c..c39a5435 100755 --- a/scripts/route3.asm +++ b/scripts/route3.asm @@ -104,7 +104,7 @@ Route3Text1: ; 55586 (15:5586) db "@" Route3Text2: ; 5558b (15:558b) - db $08 ; asm + TX_ASM ld hl, Route3TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -122,7 +122,7 @@ Route3AfterBattleText1: ; 5559f (15:559f) db "@" Route3Text3: ; 555a4 (15:55a4) - db $08 ; asm + TX_ASM ld hl, Route3TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -140,7 +140,7 @@ Route3AfterBattleText2: ; 555b8 (15:55b8) db "@" Route3Text4: ; 555bd (15:55bd) - db $08 ; asm + TX_ASM ld hl, Route3TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -158,7 +158,7 @@ Route3AfterBattleText3: ; 555d1 (15:55d1) db "@" Route3Text5: ; 555d6 (15:55d6) - db $08 ; asm + TX_ASM ld hl, Route3TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -176,7 +176,7 @@ Route3AfterBattleText4: ; 555ea (15:55ea) db "@" Route3Text6: ; 555ef (15:55ef) - db $08 ; asm + TX_ASM ld hl, Route3TrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -194,7 +194,7 @@ Route3AfterBattleText5: ; 55603 (15:5603) db "@" Route3Text7: ; 55608 (15:5608) - db $08 ; asm + TX_ASM ld hl, Route3TrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -212,7 +212,7 @@ Route3AfterBattleText6: ; 5561c (15:561c) db "@" Route3Text8: ; 55621 (15:5621) - db $08 ; asm + TX_ASM ld hl, Route3TrainerHeader7 call TalkToTrainer jp TextScriptEnd @@ -230,7 +230,7 @@ Route3AfterBattleText7: ; 55635 (15:5635) db "@" Route3Text9: ; 5563a (15:563a) - db $08 ; asm + TX_ASM ld hl, Route3TrainerHeader8 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route4.asm b/scripts/route4.asm index f9031ad8..c4a1e956 100755 --- a/scripts/route4.asm +++ b/scripts/route4.asm @@ -37,7 +37,7 @@ Route4Text1: ; 5568a (15:568a) db "@" Route4Text2: ; 5568f (15:568f) - db $08 ; asm + TX_ASM ld hl, Route4TrainerHeader0 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route5gate.asm b/scripts/route5gate.asm index 1a1c6b9c..72f226e7 100755 --- a/scripts/route5gate.asm +++ b/scripts/route5gate.asm @@ -69,7 +69,7 @@ Route8GateText1: ; 1dfaa (7:5faa) Route7GateText1: ; 1dfaa (7:5faa) Route6GateText1: ; 1dfaa (7:5faa) Route5GateText1: ; 1dfaa (7:5faa) - db $8 + TX_ASM ld a, [wd728] bit 6, a jr nz, .asm_88856 diff --git a/scripts/route6.asm b/scripts/route6.asm index 733c5eac..51116390 100755 --- a/scripts/route6.asm +++ b/scripts/route6.asm @@ -79,7 +79,7 @@ Route6TrainerHeader5: ; 59113 (16:5113) db $ff Route6Text1: ; 59120 (16:5120) - db $8 + TX_ASM ld hl, Route6TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -97,7 +97,7 @@ Route6AfterBattleText1: ; 59134 (16:5134) db "@" Route6Text2: ; 59139 (16:5139) - db $08 ; asm + TX_ASM ld hl, Route6TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -111,7 +111,7 @@ Route6EndBattleText2: ; 59148 (16:5148) db "@" Route6Text3: ; 5914d (16:514d) - db $08 ; asm + TX_ASM ld hl, Route6TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -129,7 +129,7 @@ Route6AfterBattleText3: ; 59161 (16:5161) db "@" Route6Text4: ; 59166 (16:5166) - db $08 ; asm + TX_ASM ld hl, Route6TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -147,7 +147,7 @@ Route6AfterBattleText4: ; 5917a (16:517a) db "@" Route6Text5: ; 5917f (16:517f) - db $08 ; asm + TX_ASM ld hl, Route6TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -165,7 +165,7 @@ Route6AfterBattleText5: ; 59193 (16:5193) db "@" Route6Text6: ; 59198 (16:5198) - db $08 ; asm + TX_ASM ld hl, Route6TrainerHeader5 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route8.asm b/scripts/route8.asm index 143af7cd..8d589c90 100755 --- a/scripts/route8.asm +++ b/scripts/route8.asm @@ -109,7 +109,7 @@ Route8TrainerHeader8: ; 59243 (16:5243) db $ff Route8Text1: ; 59250 (16:5250) - db $8 + TX_ASM ld hl, Route8TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -127,7 +127,7 @@ Route8AfterBattleText1: ; 59264 (16:5264) db "@" Route8Text2: ; 59269 (16:5269) - db $08 ; asm + TX_ASM ld hl, Route8TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -145,7 +145,7 @@ Route8AfterBattleText2: ; 5927d (16:527d) db "@" Route8Text3: ; 59282 (16:5282) - db $08 ; asm + TX_ASM ld hl, Route8TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -163,7 +163,7 @@ Route8AfterBattleText3: ; 59296 (16:5296) db "@" Route8Text4: ; 5929b (16:529b) - db $08 ; asm + TX_ASM ld hl, Route8TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -181,7 +181,7 @@ Route8AfterBattleText4: ; 592af (16:52af) db "@" Route8Text5: ; 592b4 (16:52b4) - db $08 ; asm + TX_ASM ld hl, Route8TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -199,7 +199,7 @@ Route8AfterBattleText5: ; 592c8 (16:52c8) db "@" Route8Text6: ; 592cd (16:52cd) - db $08 ; asm + TX_ASM ld hl, Route8TrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -217,7 +217,7 @@ Route8AfterBattleText6: ; 592e1 (16:52e1) db "@" Route8Text7: ; 592e6 (16:52e6) - db $08 ; asm + TX_ASM ld hl, Route8TrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -235,7 +235,7 @@ Route8AfterBattleText7: ; 592fa (16:52fa) db "@" Route8Text8: ; 592ff (16:52ff) - db $08 ; asm + TX_ASM ld hl, Route8TrainerHeader7 call TalkToTrainer jp TextScriptEnd @@ -253,7 +253,7 @@ Route8AfterBattleText8: ; 59313 (16:5313) db "@" Route8Text9: ; 59318 (16:5318) - db $08 ; asm + TX_ASM ld hl, Route8TrainerHeader8 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/route9.asm b/scripts/route9.asm index 67b04e9a..539e1a3f 100755 --- a/scripts/route9.asm +++ b/scripts/route9.asm @@ -110,47 +110,47 @@ Route9TrainerHeader9: ; 5574b (15:574b) db $ff Route9Text1: ; 55758 (15:5758) - db $8 ; asm + TX_ASM ld hl, Route9TrainerHeader0 jr Route9TalkToTrainer Route9Text2: ; 5575e (15:575e) - db $8 ; asm + TX_ASM ld hl, Route9TrainerHeader2 jr Route9TalkToTrainer Route9Text3: ; 55764 (15:5764) - db $8 ; asm + TX_ASM ld hl, Route9TrainerHeader3 jr Route9TalkToTrainer Route9Text4: ; 5576a (15:576a) - db $8 ; asm + TX_ASM ld hl, Route9TrainerHeader4 jr Route9TalkToTrainer Route9Text5: ; 55770 (15:5770) - db $8 ; asm + TX_ASM ld hl, Route9TrainerHeader5 jr Route9TalkToTrainer Route9Text6: ; 55776 (15:5776) - db $8 ; asm + TX_ASM ld hl, Route9TrainerHeader6 jr Route9TalkToTrainer Route9Text7: ; 5577c (15:577c) - db $8 ; asm + TX_ASM ld hl, Route9TrainerHeader7 jr Route9TalkToTrainer Route9Text8: ; 55782 (15:5782) - db $8 ; asm + TX_ASM ld hl, Route9TrainerHeader8 jr Route9TalkToTrainer Route9Text9: ; 55788 (15:5788) - db $8 ; asm + TX_ASM ld hl, Route9TrainerHeader9 Route9TalkToTrainer: ; 5578c (15:578c) call TalkToTrainer diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm index 5d350abe..6b9029f6 100755 --- a/scripts/safarizoneentrance.asm +++ b/scripts/safarizoneentrance.asm @@ -146,7 +146,7 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) .SafariZoneEntranceText4 TX_FAR SafariZoneEntranceText_9e6e4 - db $8 + TX_ASM ld a, $13 ld [wTextBoxID],a call DisplayTextBoxID @@ -226,7 +226,7 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) .SafariZoneEntranceText5 TX_FAR SafariZoneEntranceText_9e814 - db $8 + TX_ASM call YesNoChoice ld a,[wCurrentMenuItem] and a @@ -272,7 +272,7 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) db "@" .SafariZoneEntranceText2 - db $08 ; asm + TX_ASM ld hl,.FirstTimeQuestionText call PrintText call YesNoChoice diff --git a/scripts/safarizonesecrethouse.asm b/scripts/safarizonesecrethouse.asm index 2a91a1bb..b1dd95d3 100755 --- a/scripts/safarizonesecrethouse.asm +++ b/scripts/safarizonesecrethouse.asm @@ -5,7 +5,7 @@ SafariZoneSecretHouseTextPointers: ; 4a31a (12:631a) dw SafariZoneSecretHouseText1 SafariZoneSecretHouseText1: ; 4a31c (12:631c) - db $08 ; asm + TX_ASM ld a, [wd857] bit 0, a jr nz, .asm_20a9b diff --git a/scripts/saffrongym.asm b/scripts/saffrongym.asm index 4739466e..9c17a63c 100755 --- a/scripts/saffrongym.asm +++ b/scripts/saffrongym.asm @@ -157,7 +157,7 @@ SaffronGymTrainerHeader6: ; 5d10b (17:510b) db $ff SaffronGymText1: ; 5d118 (17:5118) - db $08 ; asm + TX_ASM ld a, [wd7b3] bit 1, a jr z, .asm_5d134 @@ -219,49 +219,49 @@ SaffronGymText12: ; 5d182 (17:5182) db "@" SaffronGymText2: ; 5d187 (17:5187) - db $08 ; asm + TX_ASM ld hl, SaffronGymTrainerHeader0 call TalkToTrainer jp TextScriptEnd SaffronGymText3: ; 5d191 (17:5191) - db $08 ; asm + TX_ASM ld hl, SaffronGymTrainerHeader1 call TalkToTrainer jp TextScriptEnd SaffronGymText4: ; 5d19b (17:519b) - db $08 ; asm + TX_ASM ld hl, SaffronGymTrainerHeader2 call TalkToTrainer jp TextScriptEnd SaffronGymText5: ; 5d1a5 (17:51a5) - db $08 ; asm + TX_ASM ld hl, SaffronGymTrainerHeader3 call TalkToTrainer jp TextScriptEnd SaffronGymText6: ; 5d1af (17:51af) - db $08 ; asm + TX_ASM ld hl, SaffronGymTrainerHeader4 call TalkToTrainer jp TextScriptEnd SaffronGymText7: ; 5d1b9 (17:51b9) - db $08 ; asm + TX_ASM ld hl, SaffronGymTrainerHeader5 call TalkToTrainer jp TextScriptEnd SaffronGymText8: ; 5d1c3 (17:51c3) - db $08 ; asm + TX_ASM ld hl, SaffronGymTrainerHeader6 call TalkToTrainer jp TextScriptEnd SaffronGymText9: ; 5d1cd (17:51cd) - db $08 ; asm + TX_ASM ld a, [wd7b3] bit 1, a jr nz, .asm_5d1dd diff --git a/scripts/saffronhouse1.asm b/scripts/saffronhouse1.asm index 39a70ebf..3aced3c5 100755 --- a/scripts/saffronhouse1.asm +++ b/scripts/saffronhouse1.asm @@ -13,7 +13,7 @@ SaffronHouse1Text1: ; 1dde8 (7:5de8) SaffronHouse1Text2: ; 1dded (7:5ded) TX_FAR _SaffronHouse1Text2 - db $8 + TX_ASM ld a, PIDGEY call PlayCry jp TextScriptEnd diff --git a/scripts/saffronhouse2.asm b/scripts/saffronhouse2.asm index 5c1e0e41..b7d8ed26 100755 --- a/scripts/saffronhouse2.asm +++ b/scripts/saffronhouse2.asm @@ -5,7 +5,7 @@ SaffronHouse2TextPointers: ; 1de3f (7:5e3f) dw SaffronHouse2Text1 SaffronHouse2Text1: ; 1de41 (7:5e41) - db $08 ; asm + TX_ASM ld a, [wd7bd] bit 0, a jr nz, .asm_9e72b diff --git a/scripts/seafoamislands5.asm b/scripts/seafoamislands5.asm index eff92886..cbed0276 100755 --- a/scripts/seafoamislands5.asm +++ b/scripts/seafoamislands5.asm @@ -154,7 +154,7 @@ SeafoamIslands5TrainerHeader0: ; 46886 (11:6886) db $ff SeafoamIslands5Text3: ; 46893 (11:6893) - db $08 ; asm + TX_ASM ld hl, SeafoamIslands5TrainerHeader0 call TalkToTrainer ld a, $4 @@ -163,7 +163,7 @@ SeafoamIslands5Text3: ; 46893 (11:6893) SeafoamIslands5BattleText2: ; 468a2 (11:68a2) TX_FAR _SeafoamIslands5BattleText2 - db $8 + TX_ASM ld a, ARTICUNO call PlayCry call WaitForSoundToFinish diff --git a/scripts/silphco10.asm b/scripts/silphco10.asm index 2a4afe72..46630014 100755 --- a/scripts/silphco10.asm +++ b/scripts/silphco10.asm @@ -70,19 +70,19 @@ SilphCo10TrainerHeader1: ; 5a19e (16:619e) db $ff SilphCo10Text1: ; 5a1ab (16:61ab) - db $08 ; asm + TX_ASM ld hl, SilphCo10TrainerHeader0 call TalkToTrainer jp TextScriptEnd SilphCo10Text2: ; 5a1b5 (16:61b5) - db $08 ; asm + TX_ASM ld hl, SilphCo10TrainerHeader1 call TalkToTrainer jp TextScriptEnd SilphCo10Text3: ; 5a1bf (16:61bf) - db $08 ; asm + TX_ASM ld a, [wd838] bit 7, a ld hl, SilphCo10Text_5a1d8 diff --git a/scripts/silphco11.asm b/scripts/silphco11.asm index f625d419..a0d85483 100755 --- a/scripts/silphco11.asm +++ b/scripts/silphco11.asm @@ -302,7 +302,7 @@ SilphCo11TrainerHeader1: ; 622cf (18:62cf) db $ff SilphCo11Text1: ; 622dc (18:62dc) - db $08 ; asm + TX_ASM ld a, [wd838] bit 5, a jp nz, .asm_62308 @@ -359,7 +359,7 @@ SilphCo11Text6: ; 62335 (18:6335) db "@" SilphCo11Text4: ; 6233a (18:633a) - db $08 ; asm + TX_ASM ld hl, SilphCo11TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -377,7 +377,7 @@ SilphCo11AfterBattleText1: ; 6234e (18:634e) db "@" SilphCo11Text5: ; 62353 (18:6353) - db $08 ; asm + TX_ASM ld hl, SilphCo11TrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -395,7 +395,7 @@ SilphCo11AfterBattleText2: ; 62367 (18:6367) db "@" SilphCo10Text_6236c: ; 6236c (18:636c) - db $8 + TX_ASM ld hl, SilphCo10Text_6237b call PrintText ld a, PORYGON diff --git a/scripts/silphco2.asm b/scripts/silphco2.asm index 906e4d56..ee0bd150 100755 --- a/scripts/silphco2.asm +++ b/scripts/silphco2.asm @@ -137,7 +137,7 @@ SilphCo2TrainerHeader3: ; 59db4 (16:5db4) db $ff SilphCo2Text1: ; 59dc1 (16:5dc1) - db $08 ; asm + TX_ASM ld a, [wd826] bit 7, a jr nz, .asm_59de4 @@ -174,25 +174,25 @@ TM36NoRoomText: ; 59dfd (16:5dfd) db "@" SilphCo2Text2: ; 59e02 (16:5e02) - db $08 ; asm + TX_ASM ld hl, SilphCo2TrainerHeader0 call TalkToTrainer jp TextScriptEnd SilphCo2Text3: ; 59e0c (16:5e0c) - db $08 ; asm + TX_ASM ld hl, SilphCo2TrainerHeader1 call TalkToTrainer jp TextScriptEnd SilphCo2Text4: ; 59e16 (16:5e16) - db $08 ; asm + TX_ASM ld hl, SilphCo2TrainerHeader2 call TalkToTrainer jp TextScriptEnd SilphCo2Text5: ; 59e20 (16:5e20) - db $08 ; asm + TX_ASM ld hl, SilphCo2TrainerHeader3 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/silphco3.asm b/scripts/silphco3.asm index 13eb9e84..bc36ed39 100755 --- a/scripts/silphco3.asm +++ b/scripts/silphco3.asm @@ -82,7 +82,7 @@ SilphCo3TrainerHeader1: ; 59fd8 (16:5fd8) db $ff SilphCo3Text1: ; 59fe5 (16:5fe5) - db $08 ; asm + TX_ASM ld a, [wd838] bit 7, a ld hl, SilphCo3Text_59ffe @@ -101,7 +101,7 @@ SilphCo3Text_59ffe: ; 59ffe (16:5ffe) db "@" SilphCo3Text2: ; 5a003 (16:6003) - db $08 ; asm + TX_ASM ld hl, SilphCo3TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -119,7 +119,7 @@ SilphCo3AfterBattleText1: ; 5a017 (16:6017) db "@" SilphCo3Text3: ; 5a01c (16:601c) - db $08 ; asm + TX_ASM ld hl, SilphCo3TrainerHeader1 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/silphco4.asm b/scripts/silphco4.asm index 18d56587..866afd54 100755 --- a/scripts/silphco4.asm +++ b/scripts/silphco4.asm @@ -130,7 +130,7 @@ SilphCo4TrainerHeader3: ; 19dc6 (6:5dc6) db $ff SilphCo4Text1: ; 19dd3 (6:5dd3) - db $08 ; asm + TX_ASM ld hl, SilphCo4Text_19de0 ld de, SilphCo4Text_19de5 call SilphCo6Script_1a22f @@ -145,7 +145,7 @@ SilphCo4Text_19de5: ; 19de5 (6:5de5) db "@" SilphCo4Text2: ; 19dea (6:5dea) - db $08 ; asm + TX_ASM ld hl, SilphCo4TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -163,7 +163,7 @@ SilphCo4AfterBattleText2: ; 19dfe (6:5dfe) db "@" SilphCo4Text3: ; 19e03 (6:5e03) - db $08 ; asm + TX_ASM ld hl, SilphCo4TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -181,7 +181,7 @@ SilphCo4AfterBattleText3: ; 19e17 (6:5e17) db "@" SilphCo4Text4: ; 19e1c (6:5e1c) - db $08 ; asm + TX_ASM ld hl, SilphCo4TrainerHeader3 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/silphco5.asm b/scripts/silphco5.asm index 4417466d..750072ab 100755 --- a/scripts/silphco5.asm +++ b/scripts/silphco5.asm @@ -121,7 +121,7 @@ Silphco5TrainerHeader4: ; 19ff6 (6:5ff6) db $ff SilphCo5Text1: ; 1a003 (6:6003) - db $08 ; asm + TX_ASM ld hl, SilphCo5Text_1a010 ld de, SilphCo5Text_1a015 call SilphCo6Script_1a22f @@ -136,7 +136,7 @@ SilphCo5Text_1a015: ; 1a015 (6:6015) db "@" SilphCo5Text2: ; 1a01a (6:601a) - db $08 ; asm + TX_ASM ld hl, Silphco5TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -154,7 +154,7 @@ SilphCo5AfterBattleText2: ; 1a02e (6:602e) db "@" SilphCo5Text3: ; 1a033 (6:6033) - db $08 ; asm + TX_ASM ld hl, Silphco5TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -172,7 +172,7 @@ SilphCo5AfterBattleText3: ; 1a047 (6:6047) db "@" SilphCo5Text4: ; 1a04c (6:604c) - db $08 ; asm + TX_ASM ld hl, Silphco5TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -190,7 +190,7 @@ SilphCo5AfterBattleText4: ; 1a060 (6:6060) db "@" SilphCo5Text5: ; 1a065 (6:6065) - db $08 ; asm + TX_ASM ld hl, Silphco5TrainerHeader4 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/silphco6.asm b/scripts/silphco6.asm index 63179fbb..0ff5ee50 100755 --- a/scripts/silphco6.asm +++ b/scripts/silphco6.asm @@ -95,7 +95,7 @@ SilphCo6Script_1a22f: ; 1a22f (6:622f) jp PrintText SilphCo6Text1: ; 1a23d (6:623d) - db $08 ; asm + TX_ASM ld hl, SilphCo6Text_1a24a ld de, SilphCo6Text_1a24f call SilphCo6Script_1a22f @@ -110,7 +110,7 @@ SilphCo6Text_1a24f: ; 1a24f (6:624f) db "@" SilphCo6Text2: ; 1a254 (6:6254) - db $08 ; asm + TX_ASM ld hl, SilphCo6Text_1a261 ld de, SilphCo6Text_1a266 call SilphCo6Script_1a22f @@ -125,7 +125,7 @@ SilphCo6Text_1a266: ; 1a266 (6:6266) db "@" SilphCo6Text3: ; 1a26b (6:626b) - db $08 ; asm + TX_ASM ld hl, SilphCo6Text_1a278 ld de, SilphCo6Text_1a27d call SilphCo6Script_1a22f @@ -140,7 +140,7 @@ SilphCo6Text_1a27d: ; 1a27d (6:627d) db "@" SilphCo6Text4: ; 1a282 (6:6282) - db $08 ; asm + TX_ASM ld hl, SilphCo6Text_1a28f ld de, SilphCo6Text_1a294 call SilphCo6Script_1a22f @@ -155,7 +155,7 @@ SilphCo6Text_1a294: ; 1a294 (6:6294) db "@" SilphCo6Text5: ; 1a299 (6:6299) - db $08 ; asm + TX_ASM ld hl, SilphCo6Text_1a2a6 ld de, SilphCo6Text_1a2ab call SilphCo6Script_1a22f @@ -170,7 +170,7 @@ SilphCo6Text_1a2ab: ; 1a2ab (6:62ab) db "@" SilphCo6Text6: ; 1a2b0 (6:62b0) - db $08 ; asm + TX_ASM ld hl, SilphCo6TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -188,7 +188,7 @@ SilphCo6AfterBattleText2: ; 1a2c4 (6:62c4) db "@" SilphCo6Text7: ; 1a2c9 (6:62c9) - db $08 ; asm + TX_ASM ld hl, SilphCo6TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -206,7 +206,7 @@ SilphCo6AfterBattleText3: ; 1a2dd (6:62dd) db "@" SilphCo6Text8: ; 1a2e2 (6:62e2) - db $08 ; asm + TX_ASM ld hl, SilphCo6TrainerHeader3 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/silphco7.asm b/scripts/silphco7.asm index e6d9bcac..1bb07824 100755 --- a/scripts/silphco7.asm +++ b/scripts/silphco7.asm @@ -307,7 +307,7 @@ SilphCo7TrainerHeader4: ; 51d81 (14:5d81) SilphCo7Text1: ; lapras guy - db $08 ; asm + TX_ASM ld a, [wd72e] bit 0, a ; got lapras? jr z, .givelapras @@ -355,7 +355,7 @@ SilphCo7Text1: db "@" SilphCo7Text2: - db $8 + TX_ASM ld a, [wd838] bit 7, a ; saved silph? jr nz, .savedsilph @@ -377,7 +377,7 @@ SilphCo7Text2: db "@" SilphCo7Text3: - db $08 ; asm + TX_ASM ld a, [wd838] bit 7, a ; saved silph? jr nz, .savedsilph @@ -399,7 +399,7 @@ SilphCo7Text3: db "@" SilphCo7Text4: - db $08 ; asm + TX_ASM ld a, [wd838] bit 7, a ; saved silph? jr nz, .savedsilph @@ -421,7 +421,7 @@ SilphCo7Text4: db "@" SilphCo7Text5: ; 51e50 (14:5e50) - db $08 ; asm + TX_ASM ld hl, SilphCo7TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -439,7 +439,7 @@ SilphCo7AfterBattleText1: ; 51e64 (14:5e64) db "@" SilphCo7Text6: ; 51e69 (14:5e69) - db $08 ; asm + TX_ASM ld hl, SilphCo7TrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -457,7 +457,7 @@ SilphCo7AfterBattleText2: ; 51e7d (14:5e7d) db "@" SilphCo7Text7: ; 51e82 (14:5e82) - db $08 ; asm + TX_ASM ld hl, SilphCo7TrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -475,7 +475,7 @@ SilphCo7AfterBattleText3: ; 51e96 (14:5e96) db "@" SilphCo7Text8: ; 51e9b (14:5e9b) - db $08 ; asm + TX_ASM ld hl, SilphCo7TrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -493,7 +493,7 @@ SilphCo7AfterBattleText4: ; 51eaf (14:5eaf) db "@" SilphCo7Text9: ; 51eb4 (14:5eb4) - db $08 ; asm + TX_ASM ld hl, SilphCo7Text_51ebe call PrintText jp TextScriptEnd diff --git a/scripts/silphco8.asm b/scripts/silphco8.asm index af7369b7..95a1096d 100755 --- a/scripts/silphco8.asm +++ b/scripts/silphco8.asm @@ -113,7 +113,7 @@ SilphCo8TrainerHeader2: ; 5659d (15:659d) db $ff SilphCo8Text1: ; 565aa (15:65aa) - db $08 ; asm + TX_ASM ld a, [wd838] bit 7, a ld hl, SilphCo8Text_565c3 @@ -132,19 +132,19 @@ SilphCo8Text_565c3: ; 565c3 (15:65c3) db "@" SilphCo8Text2: ; 565c8 (15:65c8) - db $08 ; asm + TX_ASM ld hl, SilphCo8TrainerHeader0 call TalkToTrainer jp TextScriptEnd SilphCo8Text3: ; 565d2 (15:65d2) - db $08 ; asm + TX_ASM ld hl, SilphCo8TrainerHeader1 call TalkToTrainer jp TextScriptEnd SilphCo8Text4: ; 565dc (15:65dc) - db $08 ; asm + TX_ASM ld hl, SilphCo8TrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/silphco9.asm b/scripts/silphco9.asm index 8f68b390..b19dbde4 100755 --- a/scripts/silphco9.asm +++ b/scripts/silphco9.asm @@ -157,7 +157,7 @@ SilphCo9TrainerHeader2: ; 5d8ab (17:58ab) db $ff SilphCo9Text1: ; 5d8b8 (17:58b8) - db $08 ; asm + TX_ASM ld a, [wd838] bit 7, a jr nz, .asm_5d8dc @@ -189,19 +189,19 @@ SilphCo9Text_5d8ef: ; 5d8ef (17:58ef) db "@" SilphCo9Text2: ; 5d8f4 (17:58f4) - db $08 ; asm + TX_ASM ld hl, SilphCo9TrainerHeader0 call TalkToTrainer jp TextScriptEnd SilphCo9Text3: ; 5d8fe (17:58fe) - db $08 ; asm + TX_ASM ld hl, SilphCo9TrainerHeader1 call TalkToTrainer jp TextScriptEnd SilphCo9Text4: ; 5d908 (17:5908) - db $08 ; asm + TX_ASM ld hl, SilphCo9TrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/silphcoelevator.asm b/scripts/silphcoelevator.asm index 746ad15d..161b5ece 100755 --- a/scripts/silphcoelevator.asm +++ b/scripts/silphcoelevator.asm @@ -70,7 +70,7 @@ SilphCoElevatorTextPointers: ; 45833 (11:5833) dw SilphCoElevatorText1 SilphCoElevatorText1: ; 45835 (11:5835) - db $08 ; asm + TX_ASM call SilphCoElevatorScript_457f1 ld hl, SilphCoElevatorWarpMaps predef Func_1c9c6 diff --git a/scripts/ssanne10.asm b/scripts/ssanne10.asm index 3a14f04d..4dee3bb7 100755 --- a/scripts/ssanne10.asm +++ b/scripts/ssanne10.asm @@ -83,44 +83,44 @@ SSAnne10TrainerHeader5: ; 61dc0 (18:5dc0) db $ff SSAnne10Text1: ; 61dcd (18:5dcd) - db $08 ; asm + TX_ASM ld hl, SSAnne10TrainerHeader0 call TalkToTrainer jp TextScriptEnd SSAnne10Text2: ; 61dd7 (18:5dd7) - db $08 ; asm + TX_ASM ld hl, SSAnne10TrainerHeader1 call TalkToTrainer jp TextScriptEnd SSAnne10Text3: ; 61de1 (18:5de1) - db $08 ; asm + TX_ASM ld hl, SSAnne10TrainerHeader2 call TalkToTrainer jp TextScriptEnd SSAnne10Text4: ; 61deb (18:5deb) - db $08 ; asm + TX_ASM ld hl, SSAnne10TrainerHeader3 call TalkToTrainer jp TextScriptEnd SSAnne10Text5: ; 61df5 (18:5df5) - db $08 ; asm + TX_ASM ld hl, SSAnne10TrainerHeader4 call TalkToTrainer jp TextScriptEnd SSAnne10Text6: ; 61dff (18:5dff) - db $08 ; asm + TX_ASM ld hl, SSAnne10TrainerHeader5 call TalkToTrainer jp TextScriptEnd SSAnne10Text8: ; 61e09 (18:5e09) TX_FAR _SSAnne10Text8 - db $08 ; asm + TX_ASM ld a, MACHOKE call PlayCry jp TextScriptEnd diff --git a/scripts/ssanne2.asm b/scripts/ssanne2.asm index c00c56f7..d540f41b 100755 --- a/scripts/ssanne2.asm +++ b/scripts/ssanne2.asm @@ -178,7 +178,7 @@ SSAnne2Text1: ; 614e1 (18:54e1) db "@" SSAnne2Text2: ; 614e6 (18:54e6) - db $8 + TX_ASM ld hl, SSAnneRivalBeforeBattleText call PrintText ld hl, wd72d diff --git a/scripts/ssanne5.asm b/scripts/ssanne5.asm index 206eadde..063ccbb8 100755 --- a/scripts/ssanne5.asm +++ b/scripts/ssanne5.asm @@ -53,7 +53,7 @@ SSAnne5Text3: ; 616f4 (18:56f4) db "@" SSAnne5Text4: ; 616f9 (18:56f9) - db $08 ; asm + TX_ASM ld hl, SSAnne5TrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -71,7 +71,7 @@ SSAnne5AfterBattleText1: ; 6170d (18:570d) db "@" SSAnne5Text5: ; 61712 (18:5712) - db $08 ; asm + TX_ASM ld hl, SSAnne5TrainerHeader1 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/ssanne6.asm b/scripts/ssanne6.asm index 822e5e38..ee8b6e14 100755 --- a/scripts/ssanne6.asm +++ b/scripts/ssanne6.asm @@ -36,7 +36,7 @@ SSAnne6Text6: ; 617de (18:57de) db "@" SSAnne6Text7: ; 617e3 (18:57e3) - db $08 ; asm + TX_ASM ld hl, SSAnne6Text_61807 call PrintText ldh a, [$d3] diff --git a/scripts/ssanne7.asm b/scripts/ssanne7.asm index 278f8e21..a1fd791a 100755 --- a/scripts/ssanne7.asm +++ b/scripts/ssanne7.asm @@ -16,7 +16,7 @@ SSAnne7TextPointers: ; 618a7 (18:58a7) dw SSAnne7Text3 SSAnne7Text1: ; 618ad (18:58ad) - db $08 ; asm + TX_ASM ld a, [wd803] bit 0, a jr nz, .asm_797c4 @@ -46,7 +46,7 @@ SSAnne7Text1: ; 618ad (18:58ad) SSAnne7RubText: ; 618ec (18:58ec) TX_FAR _SSAnne7RubText - db $8 + TX_ASM ld a, [wc0ef] cp BANK(Music1f_UpdateMusic) ld [wc0f0], a diff --git a/scripts/ssanne8.asm b/scripts/ssanne8.asm index a01c81b4..27c76a2f 100755 --- a/scripts/ssanne8.asm +++ b/scripts/ssanne8.asm @@ -65,32 +65,32 @@ SSAnne8TrainerHeader3: ; 619c9 (18:59c9) db $ff SSAnne8Text1: ; 619d6 (18:59d6) - db $08 ; asm + TX_ASM ld hl, SSAnne8TrainerHeader0 call TalkToTrainer jp TextScriptEnd SSAnne8Text2: ; 619e0 (18:59e0) - db $08 ; asm + TX_ASM ld hl, SSAnne8TrainerHeader1 call TalkToTrainer jp TextScriptEnd SSAnne8Text3: ; 619ea (18:59ea) - db $08 ; asm + TX_ASM ld hl, SSAnne8TrainerHeader2 call TalkToTrainer jp TextScriptEnd SSAnne8Text4: ; 619f4 (18:59f4) - db $08 ; asm + TX_ASM ld hl, SSAnne8TrainerHeader3 call TalkToTrainer jp TextScriptEnd SSAnne8Text8: ; 619fe (18:59fe) TX_FAR _SSAnne8Text8 - db $08 ; asm + TX_ASM ld a, WIGGLYTUFF call PlayCry jp TextScriptEnd diff --git a/scripts/ssanne9.asm b/scripts/ssanne9.asm index 25118b27..6e8b86c6 100755 --- a/scripts/ssanne9.asm +++ b/scripts/ssanne9.asm @@ -70,31 +70,31 @@ SSAnne9TrainerHeader3: ; 61ba8 (18:5ba8) db $ff SSAnne9Text1: ; 61bb5 (18:5bb5) - db $08 ; asm + TX_ASM ld hl, SSAnne9TrainerHeader0 call TalkToTrainer jp TextScriptEnd SSAnne9Text2: ; 61bbf (18:5bbf) - db $08 ; asm + TX_ASM ld hl, SSAnne9TrainerHeader1 call TalkToTrainer jp TextScriptEnd SSAnne9Text3: ; 61bc9 (18:5bc9) - db $08 ; asm + TX_ASM ld hl, SSAnne9TrainerHeader2 call TalkToTrainer jp TextScriptEnd SSAnne9Text4: ; 61bd3 (18:5bd3) - db $08 ; asm + TX_ASM ld hl, SSAnne9TrainerHeader3 call TalkToTrainer jp TextScriptEnd SSAnne9Text5: ; 61bdd (18:5bdd) - db $08 ; asm + TX_ASM call SaveScreenTilesToBuffer1 ld hl, SSAnne9Text_61bf2 call PrintText @@ -108,7 +108,7 @@ SSAnne9Text_61bf2: ; 61bf2 (18:5bf2) db "@" SSAnne9Text7: ; 61bf7 (18:5bf7) - db $08 ; asm + TX_ASM ld hl, SSAnne9Text_61c01 call PrintText jp TextScriptEnd @@ -118,7 +118,7 @@ SSAnne9Text_61c01: ; 61c01 (18:5c01) db "@" SSAnne9Text8: ; 61c06 (18:5c06) - db $08 ; asm + TX_ASM ld hl, SSAnne9Text_61c10 call PrintText jp TextScriptEnd @@ -128,7 +128,7 @@ SSAnne9Text_61c10: ; 61c10 (18:5c10) db "@" SSAnne9Text10: ; 61c15 (18:5c15) - db $08 ; asm + TX_ASM ld hl, SSAnne9Text_61c1f call PrintText jp TextScriptEnd @@ -138,7 +138,7 @@ SSAnne9Text_61c1f: ; 61c1f (18:5c1f) db "@" SSAnne9Text11: ; 61c24 (18:5c24) - db $08 ; asm + TX_ASM ld hl, SSAnne9Text_61c2e call PrintText jp TextScriptEnd @@ -148,7 +148,7 @@ SSAnne9Text_61c2e: ; 61c2e (18:5c2e) db "@" SSAnne9Text12: ; 61c33 (18:5c33) - db $08 ; asm + TX_ASM ld hl, SSAnne9Text_61c3d call PrintText jp TextScriptEnd @@ -158,7 +158,7 @@ SSAnne9Text_61c3d: ; 61c3d (18:5c3d) db "@" SSAnne9Text13: ; 61c42 (18:5c42) - db $08 ; asm + TX_ASM ld hl, SSAnne9Text_61c4c call PrintText jp TextScriptEnd diff --git a/scripts/undergroundpathentranceroute5.asm b/scripts/undergroundpathentranceroute5.asm index 03f1c35d..c93ab7b5 100755 --- a/scripts/undergroundpathentranceroute5.asm +++ b/scripts/undergroundpathentranceroute5.asm @@ -10,7 +10,7 @@ UndergroundPathEntranceRoute5TextPointers: ; 5d6b0 (17:56b0) dw UndergroundPathEntranceRoute5Text1 UndergroundPathEntranceRoute5Text1: ; 5d6b2 (17:56b2) - db $08 ; asm + TX_ASM ld a, $9 ld [wWhichTrade], a predef DoInGameTradeDialogue diff --git a/scripts/unknowndungeon3.asm b/scripts/unknowndungeon3.asm index f21e0c7f..055c9d0f 100755 --- a/scripts/unknowndungeon3.asm +++ b/scripts/unknowndungeon3.asm @@ -30,14 +30,14 @@ UnknownDungeon3TrainerHeader0: ; 45f0f (11:5f0f) db $ff UnknownDungeon3Text1: ; 45f1c (11:5f1c) - db $08 ; asm + TX_ASM ld hl, UnknownDungeon3TrainerHeader0 call TalkToTrainer jp TextScriptEnd UnknownDungeon3MewtwoText: ; 45f26 (11:5f26) TX_FAR _UnknownDungeon3MewtwoText - db $8 + TX_ASM ld a, MEWTWO call PlayCry call WaitForSoundToFinish diff --git a/scripts/vermilioncity.asm b/scripts/vermilioncity.asm index e11a5846..9fd05776 100755 --- a/scripts/vermilioncity.asm +++ b/scripts/vermilioncity.asm @@ -135,7 +135,7 @@ VermilionCityText1: ; 19889 (6:5889) db "@" VermilionCityText2: ; 1988e (6:588e) - db $08 ; asm + TX_ASM ld a, [wd803] bit 2, a jr nz, .asm_1989e @@ -157,7 +157,7 @@ VermilionCityText_198ac: ; 198ac (6:58ac) db "@" VermilionCityText3: ; 198b1 (6:58b1) - db $08 ; asm + TX_ASM ld a, [wd803] bit 2, a jr nz, .asm_198f6 @@ -225,7 +225,7 @@ VermilionCityText4: ; 1991d (6:591d) VermilionCityText5: ; 19922 (6:5922) TX_FAR _VermilionCityText5 - db $08 ; asm + TX_ASM ld a, MACHOP call PlayCry call WaitForSoundToFinish diff --git a/scripts/vermiliongym.asm b/scripts/vermiliongym.asm index 8c136314..81bd1588 100755 --- a/scripts/vermiliongym.asm +++ b/scripts/vermiliongym.asm @@ -135,7 +135,7 @@ VermilionGymTrainerHeader2: ; 5cb10 (17:4b10) db $ff VermilionGymText1: ; 5cb1d (17:4b1d) - db $08 ; asm + TX_ASM ld a, [wd773] bit 7, a jr z, .asm_5cb39 @@ -198,7 +198,7 @@ ReceivedThunderbadgeText: ; 5cb8b (17:4b8b) db "@" VermilionGymText2: ; 5cb90 (17:4b90) - db $08 ; asm + TX_ASM ld hl, VermilionGymTrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -216,7 +216,7 @@ VermilionGymAfterBattleText1: ; 5cba4 (17:4ba4) db "@" VermilionGymText3: ; 5cba9 (17:4ba9) - db $08 ; asm + TX_ASM ld hl, VermilionGymTrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -234,7 +234,7 @@ VermilionGymAfterBattleText2: ; 5cbbd (17:4bbd) db "@" VermilionGymText4: ; 5cbc2 (17:4bc2) - db $08 ; asm + TX_ASM ld hl, VermilionGymTrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -252,7 +252,7 @@ VermilionGymAfterBattleText3: ; 5cbd6 (17:4bd6) db "@" VermilionGymText5: ; 5cbdb (17:4bdb) - db $08 ; asm + TX_ASM ld a, [wd72a] bit 2, a jr nz, .asm_5cbeb diff --git a/scripts/vermilionhouse1.asm b/scripts/vermilionhouse1.asm index 4ead1af7..bfb3da5f 100755 --- a/scripts/vermilionhouse1.asm +++ b/scripts/vermilionhouse1.asm @@ -13,7 +13,7 @@ VermilionHouse1Text1: ; 1db06 (7:5b06) VermilionHouse1Text2: ; 1db0b (7:5b0b) TX_FAR _VermilionHouse1Text2 - db $08 ; asm + TX_ASM ld a, PIDGEY call PlayCry call WaitForSoundToFinish diff --git a/scripts/vermilionhouse2.asm b/scripts/vermilionhouse2.asm index 7fc5fbfc..775c32bb 100755 --- a/scripts/vermilionhouse2.asm +++ b/scripts/vermilionhouse2.asm @@ -5,7 +5,7 @@ VermilionHouse2TextPointers: ; 56073 (15:6073) dw VermilionHouse2Text1 VermilionHouse2Text1: ; 56075 (15:6075) - db $08 ; asm + TX_ASM ld a, [wd728] bit 3, a jr nz, .asm_03ef5 diff --git a/scripts/vermilionhouse3.asm b/scripts/vermilionhouse3.asm index 08e2e395..478979da 100755 --- a/scripts/vermilionhouse3.asm +++ b/scripts/vermilionhouse3.asm @@ -5,7 +5,7 @@ VermilionHouse3TextPointers: ; 19c15 (6:5c15) dw VermilionHouse3Text1 VermilionHouse3Text1: ; 19c17 (6:5c17) - db $08 ; asm + TX_ASM ld a, $4 ld [wWhichTrade], a predef DoInGameTradeDialogue diff --git a/scripts/victoryroad1.asm b/scripts/victoryroad1.asm index fccdf208..68a3502f 100755 --- a/scripts/victoryroad1.asm +++ b/scripts/victoryroad1.asm @@ -71,13 +71,13 @@ VictoryRoad1TrainerHeader1: ; 5da79 (17:5a79) db $ff VictoryRoad1Text1: ; 5da86 (17:5a86) - db $08 ; asm + TX_ASM ld hl, VictoryRoad1TrainerHeader0 call TalkToTrainer jp TextScriptEnd VictoryRoad1Text2: ; 5da90 (17:5a90) - db $08 ; asm + TX_ASM ld hl, VictoryRoad1TrainerHeader1 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/victoryroad2.asm b/scripts/victoryroad2.asm index 45196f74..1fc2af7e 100755 --- a/scripts/victoryroad2.asm +++ b/scripts/victoryroad2.asm @@ -143,44 +143,44 @@ VictoryRoad2TrainerHeader6: ; 51871 (14:5871) db $ff VictoryRoad2Text1: ; 5187e (14:587e) - db $08 ; asm + TX_ASM ld hl, VictoryRoad2TrainerHeader0 call TalkToTrainer jp TextScriptEnd VictoryRoad2Text2: ; 51888 (14:5888) - db $08 ; asm + TX_ASM ld hl, VictoryRoad2TrainerHeader2 call TalkToTrainer jp TextScriptEnd VictoryRoad2Text3: ; 51892 (14:5892) - db $08 ; asm + TX_ASM ld hl, VictoryRoad2TrainerHeader3 call TalkToTrainer jp TextScriptEnd VictoryRoad2Text4: ; 5189c (14:589c) - db $08 ; asm + TX_ASM ld hl, VictoryRoad2TrainerHeader4 call TalkToTrainer jp TextScriptEnd VictoryRoad2Text5: ; 518a6 (14:58a6) - db $08 ; asm + TX_ASM ld hl, VictoryRoad2TrainerHeader5 call TalkToTrainer jp TextScriptEnd VictoryRoad2Text6: ; 518b0 (14:58b0) - db $08 ; asm + TX_ASM ld hl, VictoryRoad2TrainerHeader6 call TalkToTrainer jp TextScriptEnd VictoryRoad2BattleText6: ; 518ba (14:58ba) TX_FAR _VictoryRoad2BattleText6 - db $8 + TX_ASM ld a, MOLTRES call PlayCry call WaitForSoundToFinish diff --git a/scripts/victoryroad3.asm b/scripts/victoryroad3.asm index 43767f48..20b3df85 100755 --- a/scripts/victoryroad3.asm +++ b/scripts/victoryroad3.asm @@ -130,25 +130,25 @@ VictoryRoad3TrainerHeader4: ; 44a5c (11:4a5c) db $ff VictoryRoad3Text1: ; 44a69 (11:4a69) - db $08 ; asm + TX_ASM ld hl, VictoryRoad3TrainerHeader0 call TalkToTrainer jp TextScriptEnd VictoryRoad3Text2: ; 44a73 (11:4a73) - db $08 ; asm + TX_ASM ld hl, VictoryRoad3TrainerHeader2 call TalkToTrainer jp TextScriptEnd VictoryRoad3Text3: ; 44a7d (11:4a7d) - db $08 ; asm + TX_ASM ld hl, VictoryRoad3TrainerHeader3 call TalkToTrainer jp TextScriptEnd VictoryRoad3Text4: ; 44a87 (11:4a87) - db $08 ; asm + TX_ASM ld hl, VictoryRoad3TrainerHeader4 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/viridiancity.asm b/scripts/viridiancity.asm index 90212f4a..ac7afb7c 100755 --- a/scripts/viridiancity.asm +++ b/scripts/viridiancity.asm @@ -149,7 +149,7 @@ ViridianCityText1: ; 19102 (6:5102) db "@" ViridianCityText2: ; 19107 (6:5107) - db $08 ; asm + TX_ASM ld a, [W_OBTAINEDBADGES] cp %01111111 ld hl, ViridianCityText_19127 @@ -171,7 +171,7 @@ ViridianCityText_19127: ; 19127 (6:5127) db "@" ViridianCityText3: ; 1912c (6:512c) - db $08 ; asm + TX_ASM ld hl, ViridianCityText_1914d call PrintText call YesNoChoice @@ -200,7 +200,7 @@ ViridianCityText_19157: ; 19157 (6:5157) db "@" ViridianCityText4: ; 1915c (6:515c) - db $08 ; asm + TX_ASM ld a, [wd74b] bit 5, a jr nz, .asm_83894 @@ -222,7 +222,7 @@ ViridianCityText_1917a: ; 1917a (6:517a) db "@" ViridianCityText5: ; 1917f (6:517f) - db $08 ; asm + TX_ASM ld hl, ViridianCityText_19191 call PrintText call ViridianCityScript_190cf @@ -235,7 +235,7 @@ ViridianCityText_19191: ; 19191 (6:5191) db "@" ViridianCityText6: ; 19196 (6:5196) - db $08 ; asm + TX_ASM ld a, [wd74c] bit 1, a jr nz, .asm_4e5a0 @@ -276,7 +276,7 @@ TM42NoRoomText: ; 191da (6:51da) db "@" ViridianCityText7: ; 191df (6:51df) - db $08 ; asm + TX_ASM ld hl, ViridianCityText_1920a call PrintText ld c, 2 diff --git a/scripts/viridianforest.asm b/scripts/viridianforest.asm index e0feb75f..124d3184 100755 --- a/scripts/viridianforest.asm +++ b/scripts/viridianforest.asm @@ -63,19 +63,19 @@ ViridianForestText1: ; 61167 (18:5167) db "@" ViridianForestText2: ; 6116c (18:516c) - db $08 ; asm + TX_ASM ld hl, ViridianForestTrainerHeader0 call TalkToTrainer jp TextScriptEnd ViridianForestText3: ; 61176 (18:5176) - db $08 ; asm + TX_ASM ld hl, ViridianForestTrainerHeader1 call TalkToTrainer jp TextScriptEnd ViridianForestText4: ; 61180 (18:5180) - db $08 ; asm + TX_ASM ld hl, ViridianForestTrainerHeader2 call TalkToTrainer jp TextScriptEnd diff --git a/scripts/viridiangym.asm b/scripts/viridiangym.asm index a05cff93..da797e87 100755 --- a/scripts/viridiangym.asm +++ b/scripts/viridiangym.asm @@ -275,7 +275,7 @@ ViridianGymTrainerHeader7: ; 74a5c (1d:4a5c) db $ff ViridianGymText1: ; 74a69 (1d:4a69) - db $08 ; asm + TX_ASM ld a, [wd751] bit 1, a jr z, .asm_6de66 @@ -346,7 +346,7 @@ ViridianGymText14: ; 74aee (1d:4aee) db "@" ViridianGymText2: ; 74af3 (1d:4af3) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader0 call TalkToTrainer jp TextScriptEnd @@ -364,7 +364,7 @@ ViridianGymAfterBattleText1: ; 74b07 (1d:4b07) db "@" ViridianGymText3: ; 74b0c (1d:4b0c) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader1 call TalkToTrainer jp TextScriptEnd @@ -382,7 +382,7 @@ ViridianGymAfterBattleText2: ; 74b20 (1d:4b20) db "@" ViridianGymText4: ; 74b25 (1d:4b25) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader2 call TalkToTrainer jp TextScriptEnd @@ -400,7 +400,7 @@ ViridianGymAfterBattleText3: ; 74b39 (1d:4b39) db "@" ViridianGymText5: ; 74b3e (1d:4b3e) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader3 call TalkToTrainer jp TextScriptEnd @@ -418,7 +418,7 @@ ViridianGymAfterBattleText4: ; 74b52 (1d:4b52) db "@" ViridianGymText6: ; 74b57 (1d:4b57) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader4 call TalkToTrainer jp TextScriptEnd @@ -436,7 +436,7 @@ ViridianGymAfterBattleText5: ; 74b6b (1d:4b6b) db "@" ViridianGymText7: ; 74b70 (1d:4b70) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader5 call TalkToTrainer jp TextScriptEnd @@ -454,7 +454,7 @@ ViridianGymAfterBattleText6: ; 74b84 (1d:4b84) db "@" ViridianGymText8: ; 74b89 (1d:4b89) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader6 call TalkToTrainer jp TextScriptEnd @@ -472,7 +472,7 @@ ViridianGymAfterBattleText7: ; 74b9d (1d:4b9d) db "@" ViridianGymText9: ; 74ba2 (1d:4ba2) - db $08 ; asm + TX_ASM ld hl, ViridianGymTrainerHeader7 call TalkToTrainer jp TextScriptEnd @@ -490,7 +490,7 @@ ViridianGymAfterBattleText8: ; 74bb6 (1d:4bb6) db "@" ViridianGymText10: ; 74bbb (1d:4bbb) - db $08 ; asm + TX_ASM ld a, [wd751] bit 1, a jr nz, .asm_1abd1 diff --git a/scripts/viridianhouse.asm b/scripts/viridianhouse.asm index ab8b6786..61920489 100755 --- a/scripts/viridianhouse.asm +++ b/scripts/viridianhouse.asm @@ -16,7 +16,7 @@ ViridianHouseText2: ; 1d59a (7:559a) db "@" ViridianHouseText3: ; 1d59f (7:559f) - db $08 ; asm + TX_ASM ld hl, ViridianHouseText_1d5b1 call PrintText ld a, SPEAROW -- cgit v1.3.1-sl0p From 4a8c9993ad182296131ef87111e1b6d6e2af4201 Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Sun, 12 Jul 2015 23:00:48 -0700 Subject: named wram variables --- constants/list_constants.asm | 6 +++ constants/misc_constants.asm | 8 +++ engine/battle/bank_e_misc.asm | 10 ++-- engine/battle/core.asm | 6 +-- engine/cable_club.asm | 18 +++---- engine/items/items.asm | 22 ++++---- engine/menu/bills_pc.asm | 6 +-- engine/menu/pc.asm | 2 +- engine/menu/players_pc.asm | 18 +++---- engine/menu/start_sub_menus.asm | 4 +- engine/oak_speech.asm | 2 +- engine/overworld/pokemart.asm | 112 +++++++++++++++++++++++----------------- engine/predefs7.asm | 2 +- home.asm | 69 +++++++++++++------------ home/overworld.asm | 2 +- hram.asm | 2 + main.asm | 63 +++++++++++----------- scripts/ceruleanhouse2.asm | 2 +- scripts/daycarem.asm | 6 +-- scripts/oakslab.asm | 2 +- wram.asm | 64 ++++++++++++++++++----- 21 files changed, 253 insertions(+), 173 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/constants/list_constants.asm b/constants/list_constants.asm index aab542ec..8027731d 100755 --- a/constants/list_constants.asm +++ b/constants/list_constants.asm @@ -12,3 +12,9 @@ ITEM_NAME EQU 4 PLAYEROT_NAME EQU 5 ENEMYOT_NAME EQU 6 TRAINER_NAME EQU 7 + +INIT_ENEMYOT_LIST EQU 1 +INIT_BAG_ITEM_LIST EQU 2 +INIT_OTHER_ITEM_LIST EQU 3 +INIT_PLAYEROT_LIST EQU 4 +INIT_MON_LIST EQU 5 \ No newline at end of file diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm index 3452a393..a96fc59f 100644 --- a/constants/misc_constants.asm +++ b/constants/misc_constants.asm @@ -58,6 +58,14 @@ TRADE_CANCEL_MENU EQU 5 HEAL_CANCEL_MENU EQU 6 NO_YES_MENU EQU 7 +; menu exit method constants for list menus and the buy/sell/quit menu +CHOSE_MENU_ITEM EQU 1 ; pressed A +CANCELLED_MENU EQU 2 ; pressed B + +; menu exit method constants for two-option menus +CHOSE_FIRST_ITEM EQU 1 +CHOSE_SECOND_ITEM EQU 2 + ; serial ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01 diff --git a/engine/battle/bank_e_misc.asm b/engine/battle/bank_e_misc.asm index 80fa971a..2f3944e9 100755 --- a/engine/battle/bank_e_misc.asm +++ b/engine/battle/bank_e_misc.asm @@ -53,29 +53,29 @@ FormatMovesString: ; 39b87 (e:5b87) ; XXX this is called in a few places, but it doesn't appear to do anything useful InitList: ; 39bd5 (e:5bd5) - ld a, [wd11b] - cp $1 + ld a, [wInitListType] + cp INIT_ENEMYOT_LIST jr nz, .notEnemy ld hl, wEnemyPartyCount ld de, wEnemyMonOT ld a, ENEMYOT_NAME jr .done .notEnemy - cp $4 + cp INIT_PLAYEROT_LIST jr nz, .notPlayer ld hl, wPartyCount ld de, wPartyMonOT ld a, PLAYEROT_NAME jr .done .notPlayer - cp $5 + cp INIT_MON_LIST jr nz, .notMonster ld hl, wStringBuffer2 + 11 ld de, MonsterNames ld a, MONSTER_NAME jr .done .notMonster - cp $2 + cp INIT_BAG_ITEM_LIST jr nz, .notBag ld hl, wNumBagItems ld de, ItemNames diff --git a/engine/battle/core.asm b/engine/battle/core.asm index bb7c4990..95242f5d 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -1142,8 +1142,8 @@ DoUseNextMonDialogue: ; 3c79b (f:479b) ld a, TWO_OPTION_MENU ld [wTextBoxID], a call DisplayTextBoxID - ld a, [wd12e] - cp $2 ; did the player choose NO? + ld a, [wMenuExitMethod] + cp CHOSE_SECOND_ITEM ; did the player choose NO? jr z, .tryRunning ; if the player chose NO, try running and a ; reset carry ret @@ -2296,7 +2296,7 @@ DisplayPlayerBag: DisplayBagMenu: xor a - ld [wcf93], a + ld [wPrintItemPrices], a ld a, ITEMLISTMENU ld [wListMenuID], a ld a, [wcc2c] diff --git a/engine/cable_club.asm b/engine/cable_club.asm index 3cbc0867..be403fa6 100755 --- a/engine/cable_club.asm +++ b/engine/cable_club.asm @@ -357,9 +357,9 @@ TradeCenter_SelectMon: dec a ld [wCurrentMenuItem], a .displayEnemyMonStats - ld a, $1 - ld [wd11b], a - callab InitList + ld a, INIT_ENEMYOT_LIST + ld [wInitListType], a + callab InitList ; the list isn't used ld hl, wEnemyMons call TradeCenter_DisplayStats jp .getNewInput @@ -416,9 +416,9 @@ TradeCenter_SelectMon: jr z, .playerMonMenu_ANotPressed jp .chosePlayerMon ; jump if A button pressed ; unreachable code - ld a, $4 - ld [wd11b], a - callab InitList + ld a, INIT_PLAYEROT_LIST + ld [wInitListType], a + callab InitList ; the list isn't used call TradeCenter_DisplayStats jp .getNewInput .playerMonMenu_ANotPressed @@ -511,9 +511,9 @@ TradeCenter_SelectMon: .displayPlayerMonStats pop af ld [wCurrentMenuItem], a - ld a, $4 - ld [wd11b], a - callab InitList + ld a, INIT_PLAYEROT_LIST + ld [wInitListType], a + callab InitList ; the list isn't used call TradeCenter_DisplayStats call LoadScreenTilesFromBuffer1 jp .playerMonMenu diff --git a/engine/items/items.asm b/engine/items/items.asm index ea4b7403..24ff544e 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -450,7 +450,7 @@ ItemUseBall: ; d687 (3:5687) ret nz ld hl,wNumBagItems inc a - ld [wcf96],a + ld [wItemQuantity],a jp RemoveItemFromInventory ItemUseBallText00: ; d937 (3:5937) ;"It dodged the thrown ball!" @@ -655,7 +655,7 @@ ItemUseEvoStone: ; da5b (3:5a5b) ld [wWhichPokemon],a ld hl,wNumBagItems ld a,1 ; remove 1 stone - ld [wcf96],a + ld [wItemQuantity],a jp RemoveItemFromInventory .noEffect call ItemUseNoEffect @@ -2193,7 +2193,7 @@ PrintItemUseTextAndRemoveItem: ; e563 (3:6563) RemoveUsedItem: ; e571 (3:6571) ld hl,wNumBagItems ld a,1 ; one item - ld [wcf96],a ; store quantity + ld [wItemQuantity],a jp RemoveItemFromInventory ItemUseNoEffect: ; e57c (3:657c) @@ -2464,7 +2464,7 @@ GetSelectedMoveOffset2: ; e6e9 (3:66e9) ; hl = address of inventory (either wNumBagItems or wNumBoxItems) ; [wcf91] = item ID ; [wWhichPokemon] = index of item within inventory -; [wcf96] = quantity to toss +; [wItemQuantity] = quantity to toss ; OUTPUT: ; clears carry flag if the item is tossed, sets carry flag if not TossItem_: ; e6f1 (3:66f1) @@ -2475,7 +2475,7 @@ TossItem_: ; e6f1 (3:66f1) jr c,.tooImportantToToss push hl call IsKeyItem_ - ld a,[wd124] + ld a,[wIsKeyItem] pop hl and a jr nz,.tooImportantToToss @@ -2491,11 +2491,11 @@ TossItem_: ; e6f1 (3:66f1) ld a,TWO_OPTION_MENU ld [wTextBoxID],a call DisplayTextBoxID ; yes/no menu - ld a,[wd12e] - cp a,2 + ld a,[wMenuExitMethod] + cp a,CHOSE_SECOND_ITEM pop hl scf - ret z + ret z ; return if the player chose No ; if the player chose Yes push hl ld a,[wWhichPokemon] @@ -2533,12 +2533,12 @@ TooImportantToTossText: ; e75f (3:675f) ; INPUT: ; [wcf91] = item ID ; OUTPUT: -; [wd124] = result +; [wIsKeyItem] = result ; 00: item is not key item ; 01: item is key item IsKeyItem_: ; e764 (3:6764) ld a,$01 - ld [wd124],a + ld [wIsKeyItem],a ld a,[wcf91] cp a,HM_01 ; is the item an HM or TM? jr nc,.checkIfItemIsHM @@ -2562,7 +2562,7 @@ IsKeyItem_: ; e764 (3:6764) call IsItemHM ret c xor a - ld [wd124],a + ld [wIsKeyItem],a ret INCLUDE "data/key_items.asm" diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm index c9dd41b1..b4ac3680 100644 --- a/engine/menu/bills_pc.asm +++ b/engine/menu/bills_pc.asm @@ -231,7 +231,7 @@ BillsPCDeposit: call PlaySoundWaitForCurrent ld a, $1 ld [wcf95], a - call Func_3a68 + call MoveMon xor a ld [wcf95], a call RemovePokemon @@ -283,7 +283,7 @@ Func_21618: ; 21618 (8:5618) call PlaySoundWaitForCurrent xor a ld [wcf95], a - call Func_3a68 + call MoveMon ld a, $1 ld [wcf95], a call RemovePokemon @@ -329,7 +329,7 @@ Func_216be: ; 216be (8:56be) ld a, h ld [wList + 1], a xor a - ld [wcf93], a + ld [wPrintItemPrices], a ld [wListMenuID], a inc a ; MONSTER_NAME ld [wNameListType], a diff --git a/engine/menu/pc.asm b/engine/menu/pc.asm index edc8a751..2b8b9e92 100755 --- a/engine/menu/pc.asm +++ b/engine/menu/pc.asm @@ -135,7 +135,7 @@ RemoveItemByID: ; 17f37 (5:7f37) jr .asm_17f40 .asm_17f4f ld a, $1 - ld [wcf96], a + ld [wItemQuantity], a ld a, [$ffdc] ld [wWhichPokemon], a ld hl, wNumBagItems diff --git a/engine/menu/players_pc.asm b/engine/menu/players_pc.asm index 147a27a4..9512cc6b 100755 --- a/engine/menu/players_pc.asm +++ b/engine/menu/players_pc.asm @@ -101,15 +101,15 @@ Func_79ab: ; 79ab (1:79ab) ld a, h ld [wList + 1], a xor a - ld [wcf93], a + ld [wPrintItemPrices], a ld a, $3 ld [wListMenuID], a call DisplayListMenuID jp c, Func_790c call IsKeyItem ld a, $1 - ld [wcf96], a - ld a, [wd124] + ld [wItemQuantity], a + ld a, [wIsKeyItem] and a jr nz, .asm_79e7 ld hl, DepositHowManyText @@ -155,15 +155,15 @@ Func_7a28: ; 7a28 (1:7a28) ld a, h ld [wList + 1], a xor a - ld [wcf93], a + ld [wPrintItemPrices], a ld a, $3 ld [wListMenuID], a call DisplayListMenuID jp c, Func_790c call IsKeyItem ld a, $1 - ld [wcf96], a - ld a, [wd124] + ld [wItemQuantity], a + ld a, [wIsKeyItem] and a jr nz, .asm_7a64 ld hl, WithdrawHowManyText @@ -209,7 +209,7 @@ Func_7aa5: ; 7aa5 (1:7aa5) ld a, h ld [wList + 1], a xor a - ld [wcf93], a + ld [wPrintItemPrices], a ld a, $3 ld [wListMenuID], a push hl @@ -220,8 +220,8 @@ Func_7aa5: ; 7aa5 (1:7aa5) call IsKeyItem pop hl ld a, $1 - ld [wcf96], a - ld a, [wd124] + ld [wItemQuantity], a + ld a, [wIsKeyItem] and a jr nz, .asm_7aef ld a, [wcf91] diff --git a/engine/menu/start_sub_menus.asm b/engine/menu/start_sub_menus.asm index b84657d5..0a940356 100755 --- a/engine/menu/start_sub_menus.asm +++ b/engine/menu/start_sub_menus.asm @@ -313,7 +313,7 @@ StartMenu_Item: ; 13302 (4:7302) ld [hli],a ld [hl],b ; store item bag pointer at wList (for DisplayListMenuID) xor a - ld [wcf93],a + ld [wPrintItemPrices],a ld a,ITEMLISTMENU ld [wListMenuID],a ld a,[wcc2c] @@ -423,7 +423,7 @@ StartMenu_Item: ; 13302 (4:7302) jp ItemMenuLoop .tossItem call IsKeyItem - ld a,[wd124] + ld a,[wIsKeyItem] and a jr nz,.skipAskingQuantity ld a,[wcf91] diff --git a/engine/oak_speech.asm b/engine/oak_speech.asm index 72ccc389..f333586d 100755 --- a/engine/oak_speech.asm +++ b/engine/oak_speech.asm @@ -46,7 +46,7 @@ OakSpeech: ; 6115 (1:6115) ld a,POTION ld [wcf91],a ld a,1 - ld [wcf96],a + ld [wItemQuantity],a call AddItemToInventory ; give one potion ld a,[W_ANIMATIONID] ld [wDestinationMap],a diff --git a/engine/overworld/pokemart.asm b/engine/overworld/pokemart.asm index fa93e1db..de18a1ab 100755 --- a/engine/overworld/pokemart.asm +++ b/engine/overworld/pokemart.asm @@ -1,30 +1,34 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) ld a,[wListScrollOffset] - ld [wd07e],a + ld [wSavedListScrollOffset],a call UpdateSprites xor a - ld [wcf0a],a ; flag that is set if something is sold or bought + ld [wBoughtOrSoldItemInMart],a .loop xor a ld [wListScrollOffset],a ld [wCurrentMenuItem],a ld [wPlayerMonNumber],a inc a - ld [wcf93],a + ld [wPrintItemPrices],a ld a,MONEY_BOX ld [wTextBoxID],a - call DisplayTextBoxID ; draw money text box + call DisplayTextBoxID ld a,BUY_SELL_QUIT_MENU ld [wTextBoxID],a - call DisplayTextBoxID ; do buy/sell/quit menu - ld hl,wd128 ; pointer to this pokemart's inventory + call DisplayTextBoxID + +; This code is useless. It copies the address of the pokemart's inventory to hl, +; but the address is never used. + ld hl,wItemListPointer ld a,[hli] ld l,[hl] - ld h,a ; hl = address of inventory - ld a,[wd12e] - cp a,$02 + ld h,a + + ld a,[wMenuExitMethod] + cp a,CANCELLED_MENU jp z,.done - ld a,[wd12d] ; ID of the chosen menu item + ld a,[wChosenMenuItem] and a ; buying? jp z,.buyMenu dec a ; selling? @@ -32,11 +36,14 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) dec a ; quitting? jp z,.done .sellMenu + +; the same variables are set again below, so this code has no effect xor a - ld [wcf93],a - ld a,$02 - ld [wd11b],a + ld [wPrintItemPrices],a + ld a,INIT_BAG_ITEM_LIST + ld [wInitListType],a callab InitList + ld a,[wNumBagItems] and a jp z,.bagEmpty @@ -54,15 +61,15 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) ld a,h ld [wList + 1],a xor a - ld [wcf93],a + ld [wPrintItemPrices],a ld [wCurrentMenuItem],a ld a,ITEMLISTMENU ld [wListMenuID],a call DisplayListMenuID jp c,.returnToMainPokemartMenu ; if the player closed the menu .confirmItemSale ; if the player is trying to sell a specific item - call IsKeyItem ; check if item is unsellable - ld a,[wd124] + call IsKeyItem + ld a,[wIsKeyItem] and a jr nz,.unsellableItem ld a,[wcf91] @@ -70,7 +77,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) jr c,.unsellableItem ld a,PRICEDITEMLISTMENU ld [wListMenuID],a - ld [$ff8e],a ; halve prices when selling + ld [hHalveItemPrices],a ; halve prices when selling call DisplayChooseQuantityMenu inc a jr z,.sellMenuLoop ; if the player closed the choose quantity menu with the B button @@ -82,18 +89,22 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) ld a,TWO_OPTION_MENU ld [wTextBoxID],a call DisplayTextBoxID ; yes/no menu - ld a,[wd12e] - cp a,$02 - jr z,.sellMenuLoop ; if the player pressed the B button - ld a,[wd12d] ; ID of the chosen menu item + ld a,[wMenuExitMethod] + cp a,CHOSE_SECOND_ITEM + jr z,.sellMenuLoop ; if the player chose No or pressed the B button + +; The following code is supposed to check if the player chose No, but the above +; check already catches it. + ld a,[wChosenMenuItem] dec a - jr z,.sellMenuLoop ; if the player chose No + jr z,.sellMenuLoop + .sellItem - ld a,[wcf0a] ; flag that is set if something is sold or bought + ld a,[wBoughtOrSoldItemInMart] and a jr nz,.skipSettingFlag1 inc a - ld [wcf0a],a + ld [wBoughtOrSoldItemInMart],a .skipSettingFlag1 call AddAmountSoldToMoney ld hl,wNumBagItems @@ -106,22 +117,25 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) .bagEmpty ld hl,PokemartItemBagEmptyText call PrintText - call SaveScreenTilesToBuffer1 ; save screen + call SaveScreenTilesToBuffer1 jp .returnToMainPokemartMenu .buyMenu - ld a,$01 - ld [wcf93],a - ld a,$03 - ld [wd11b],a + +; the same variables are set again below, so this code has no effect + ld a,1 + ld [wPrintItemPrices],a + ld a,INIT_OTHER_ITEM_LIST + ld [wInitListType],a callab InitList + ld hl,PokemartBuyingGreetingText call PrintText - call SaveScreenTilesToBuffer1 ; save screen + call SaveScreenTilesToBuffer1 .buyMenuLoop - call LoadScreenTilesFromBuffer1 ; restore saved screen + call LoadScreenTilesFromBuffer1 ld a,MONEY_BOX ld [wTextBoxID],a - call DisplayTextBoxID ; draw money text box + call DisplayTextBoxID ld hl,wStringBuffer2 + 11 ld a,l ld [wList],a @@ -130,15 +144,15 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) xor a ld [wCurrentMenuItem],a inc a - ld [wcf93],a + ld [wPrintItemPrices],a inc a ; a = 2 (PRICEDITEMLISTMENU) ld [wListMenuID],a call DisplayListMenuID jr c,.returnToMainPokemartMenu ; if the player closed the menu - ld a,$63 - ld [wcf97],a + ld a,99 + ld [wMaxItemQuantity],a xor a - ld [$ff8e],a + ld [hHalveItemPrices],a ; don't halve item prices when buying call DisplayChooseQuantityMenu inc a jr z,.buyMenuLoop ; if the player closed the choose quantity menu with the B button @@ -153,12 +167,16 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) ld a,TWO_OPTION_MENU ld [wTextBoxID],a call DisplayTextBoxID ; yes/no menu - ld a,[wd12e] - cp a,$02 - jp z,.buyMenuLoop ; if the player pressed the B button - ld a,[wd12d] ; ID of the chosen menu item + ld a,[wMenuExitMethod] + cp a,CHOSE_SECOND_ITEM + jp z,.buyMenuLoop ; if the player chose No or pressed the B button + +; The following code is supposed to check if the player chose No, but the above +; check already catches it. + ld a,[wChosenMenuItem] dec a - jr z,.buyMenuLoop ; if the player chose No + jr z,.buyMenuLoop + .buyItem call .isThereEnoughMoney jr c,.notEnoughMoney @@ -166,11 +184,11 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) call AddItemToInventory jr nc,.bagFull call SubtractAmountPaidFromMoney - ld a,[wcf0a] ; flag that is set if something is sold or bought + ld a,[wBoughtOrSoldItemInMart] and a jr nz,.skipSettingFlag2 - ld a,$01 - ld [wcf0a],a + ld a,1 + ld [wBoughtOrSoldItemInMart],a .skipSettingFlag2 ld a,(SFX_02_5a - SFX_Headers_02) / 3 call PlaySoundWaitForCurrent @@ -182,7 +200,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) call LoadScreenTilesFromBuffer1 ld a,MONEY_BOX ld [wTextBoxID],a - call DisplayTextBoxID ; draw money text box + call DisplayTextBoxID ld hl,PokemartAnythingElseText call PrintText jp .loop @@ -202,10 +220,10 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) .done ld hl,PokemartThankYouText call PrintText - ld a,$01 + ld a,1 ld [wUpdateSpritesEnabled],a call UpdateSprites - ld a,[wd07e] + ld a,[wSavedListScrollOffset] ld [wListScrollOffset],a ret diff --git a/engine/predefs7.asm b/engine/predefs7.asm index 9786c097..82a073dc 100755 --- a/engine/predefs7.asm +++ b/engine/predefs7.asm @@ -11,7 +11,7 @@ Func_1c9c6: ; 1c9c6 (7:49c6) xor a ld [wCurrentMenuItem], a ld [wListScrollOffset], a - ld [wcf93], a + ld [wPrintItemPrices], a ld a, $4 ld [wListMenuID], a call DisplayListMenuID diff --git a/home.asm b/home.asm index 06a0aec3..b9041fef 100644 --- a/home.asm +++ b/home.asm @@ -1201,8 +1201,8 @@ DisplayPokemartDialogue:: ; 2a2e (0:2a2e) pop hl inc hl call LoadItemList - ld a,$02 - ld [wListMenuID],a ; selects between subtypes of menus + ld a,PRICEDITEMLISTMENU + ld [wListMenuID],a ld a,[H_LOADEDROMBANK] push af ld a,Bank(DisplayPokemartDialogue_) @@ -1219,12 +1219,12 @@ PokemartGreetingText:: ; 2a55 (0:2a55) db "@" LoadItemList:: ; 2a5a (0:2a5a) - ld a,$01 + ld a,1 ld [wUpdateSpritesEnabled],a ld a,h - ld [wd128],a + ld [wItemListPointer],a ld a,l - ld [wd129],a + ld [wItemListPointer + 1],a ld de,wStringBuffer2 + 11 .loop ld a,[hli] @@ -1336,7 +1336,7 @@ AddAmountSoldToMoney:: ; 2b9e (0:2b9e) ; INPUT: ; HL = address of inventory (either wNumBagItems or wNumBoxItems) ; [wWhichPokemon] = index (within the inventory) of the item to remove -; [wcf96] = quantity to remove +; [wItemQuantity] = quantity to remove RemoveItemFromInventory:: ; 2bbb (0:2bbb) ld a,[H_LOADEDROMBANK] push af @@ -1353,7 +1353,7 @@ RemoveItemFromInventory:: ; 2bbb (0:2bbb) ; INPUT: ; HL = address of inventory (either wNumBagItems or wNumBoxItems) ; [wcf91] = item ID -; [wcf96] = item quantity +; [wItemQuantity] = item quantity ; sets carry flag if successful, unsets carry flag if unsuccessful AddItemToInventory:: ; 2bcf (0:2bcf) push bc @@ -1461,9 +1461,12 @@ DisplayListMenuIDLoop:: ; 2c53 (0:2c53) .buttonAPressed ld a,[wCurrentMenuItem] call PlaceUnfilledArrowMenuCursor + +; pointless because both values are overwritten before they are read ld a,$01 - ld [wd12e],a - ld [wd12d],a + ld [wMenuExitMethod],a + ld [wChosenMenuItem],a + xor a ld [wcc37],a ld a,[wCurrentMenuItem] @@ -1506,7 +1509,7 @@ DisplayListMenuIDLoop:: ; 2c53 (0:2c53) ; if it's an item menu inc hl ld a,[hl] ; a = item quantity - ld [wcf97],a + ld [wMaxItemQuantity],a .skipGettingQuantity ld a,[wcf91] ld [wd0b5],a @@ -1527,10 +1530,10 @@ DisplayListMenuIDLoop:: ; 2c53 (0:2c53) .storeChosenEntry ; store the menu entry that the player chose and return ld de,wcd6d call CopyStringToCF4B ; copy name to wcf4b - ld a,$01 - ld [wd12e],a + ld a,CHOSE_MENU_ITEM + ld [wMenuExitMethod],a ld a,[wCurrentMenuItem] - ld [wd12d],a + ld [wChosenMenuItem],a xor a ld [hJoy7],a ; joypad state update flag ld hl,wd730 @@ -1584,7 +1587,7 @@ DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) ld de,InitialQuantityText call PlaceString xor a - ld [wcf96],a ; initialize current quantity to 0 + ld [wItemQuantity],a ; initialize current quantity to 0 jp .incrementQuantity .waitForKeyPressLoop call JoypadLowSensitivity @@ -1599,10 +1602,10 @@ DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) jr nz,.decrementQuantity jr .waitForKeyPressLoop .incrementQuantity - ld a,[wcf97] ; max quantity + ld a,[wMaxItemQuantity] inc a ld b,a - ld hl,wcf96 ; current quantity + ld hl,wItemQuantity ; current quantity inc [hl] ld a,[hl] cp b @@ -1612,11 +1615,11 @@ DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) ld [hl],a jr .handleNewQuantity .decrementQuantity - ld hl,wcf96 ; current quantity + ld hl,wItemQuantity ; current quantity dec [hl] jr nz,.handleNewQuantity ; wrap to the max quantity if the player goes below 1 - ld a,[wcf97] ; max quantity + ld a,[wMaxItemQuantity] ld [hl],a .handleNewQuantity hlCoord 17, 10 @@ -1625,7 +1628,7 @@ DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) jr nz,.printQuantity .printPrice ld c,$03 - ld a,[wcf96] + ld a,[wItemQuantity] ld b,a ld hl,$ff9f ; total price ; initialize total price to 0 @@ -1641,7 +1644,7 @@ DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) pop bc dec b jr nz,.addLoop - ld a,[$ff8e] + ld a,[hHalveItemPrices] and a ; should the price be halved (for selling items)? jr z,.skipHalvingPrice xor a @@ -1666,7 +1669,7 @@ DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) call PrintBCDNumber hlCoord 9, 10 .printQuantity - ld de,wcf96 ; current quantity + ld de,wItemQuantity ; current quantity ld bc,$8102 ; print leading zeroes, 1 byte, 2 digits call PrintNumber jp .waitForKeyPressLoop @@ -1688,9 +1691,9 @@ SpacesBetweenQuantityAndPriceText:: ; 2e34 (0:2e34) ExitListMenu:: ; 2e3b (0:2e3b) ld a,[wCurrentMenuItem] - ld [wd12d],a - ld a,$02 - ld [wd12e],a + ld [wChosenMenuItem],a + ld a,CANCELLED_MENU + ld [wMenuExitMethod],a ld [wcc37],a xor a ld [hJoy7],a @@ -1775,7 +1778,7 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a) call PlaceString pop de pop hl - ld a,[wcf93] + ld a,[wPrintItemPrices] and a ; should prices be printed? jr z,.skipPrintingItemPrice .printItemPrice @@ -1839,7 +1842,7 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a) ld a,[wd11e] ld [wcf91],a call IsKeyItem ; check if item is unsellable - ld a,[wd124] + ld a,[wIsKeyItem] and a ; is the item unsellable? jr nz,.skipPrintingItemQuantity ; if so, don't print the quantity push hl @@ -1850,7 +1853,7 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a) ld a,[wd11e] push af ld a,[de] - ld [wcf97],a + ld [wMaxItemQuantity],a push de ld de,wd11e ld [de],a @@ -2101,7 +2104,7 @@ UseItem:: ; 30bc (0:30bc) ; hl = address of inventory (either wNumBagItems or wNumBoxItems) ; [wcf91] = item ID ; [wWhichPokemon] = index of item within inventory -; [wcf96] = quantity to toss +; [wItemQuantity] = quantity to toss ; OUTPUT: ; clears carry flag if the item is tossed, sets carry flag if not TossItem:: ; 30c4 (0:30c4) @@ -2121,7 +2124,7 @@ TossItem:: ; 30c4 (0:30c4) ; INPUT: ; [wcf91] = item ID ; OUTPUT: -; [wd124] = result +; [wIsKeyItem] = result ; 00: item is not key item ; 01: item is key item IsKeyItem:: ; 30d9 (0:30d9) @@ -3826,13 +3829,13 @@ AddEnemyMonToPlayerParty:: ; 3a53 (0:3a53) ld [MBC1RomBank], a ret -Func_3a68:: ; 3a68 (0:3a68) +MoveMon:: ; 3a68 (0:3a68) ld a, [H_LOADEDROMBANK] push af - ld a, BANK(MoveMon) + ld a, BANK(_MoveMon) ld [H_LOADEDROMBANK], a ld [MBC1RomBank], a - call MoveMon + call _MoveMon pop bc ld a, b ld [H_LOADEDROMBANK], a @@ -4568,7 +4571,7 @@ GiveItem:: ld [wd11e], a ld [wcf91], a ld a, c - ld [wcf96], a + ld [wItemQuantity], a ld hl,wNumBagItems call AddItemToInventory ret nc diff --git a/home/overworld.asm b/home/overworld.asm index 0e62a932..37daa0d0 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -301,7 +301,7 @@ OverworldLoopLessDelay:: and a jp nz,CheckWarpsNoCollision predef ApplyOutOfBattlePoisonDamage ; also increment daycare mon exp - ld a,[wd12d] + ld a,[wOutOfBattleBlackout] and a jp nz,HandleBlackOut ; if all pokemon fainted .newBattle diff --git a/hram.asm b/hram.asm index a6035b59..edfb5c73 100644 --- a/hram.asm +++ b/hram.asm @@ -26,6 +26,8 @@ hSpriteIndexOrTextID EQU $FF8C hPartyMonIndex EQU $FF8C +hHalveItemPrices EQU $FF8E + ; Multiplcation and division variables are meant ; to overlap for back-to-back usage. Big endian. diff --git a/main.asm b/main.asm index 7372381a..3a79bdd6 100755 --- a/main.asm +++ b/main.asm @@ -1457,7 +1457,7 @@ DoBuySellQuitMenu: ; 74ea (1:74ea) set 6, a ; no printing delay ld [wd730], a xor a - ld [wd12d], a + ld [wChosenMenuItem], a ld a, BUY_SELL_QUIT_MENU_TEMPLATE ld [wTextBoxID], a call DisplayTextBoxID @@ -1482,24 +1482,24 @@ DoBuySellQuitMenu: ; 74ea (1:74ea) jr nz, .pressedA bit 1, a ; was B pressed? (always true since only A/B are watched) jr z, .pressedA - ld a, $2 - ld [wd12e], a + ld a, CANCELLED_MENU + ld [wMenuExitMethod], a jr .quit .pressedA - ld a, $1 - ld [wd12e], a + ld a, CHOSE_MENU_ITEM + ld [wMenuExitMethod], a ld a, [wCurrentMenuItem] - ld [wd12d], a + ld [wChosenMenuItem], a ld b, a ld a, [wMaxMenuItem] cp b jr z, .quit ret .quit - ld a, $2 - ld [wd12e], a + ld a, CANCELLED_MENU + ld [wMenuExitMethod], a ld a, [wCurrentMenuItem] - ld [wd12d], a + ld [wChosenMenuItem], a scf ret @@ -1512,9 +1512,12 @@ DisplayTwoOptionMenu: ; 7559 (1:7559) ld a, [wd730] set 6, a ; no printing delay ld [wd730], a + +; pointless because both values are overwritten before they are read xor a - ld [wd12d], a - ld [wd12e], a + ld [wChosenMenuItem], a + ld [wMenuExitMethod], a + ld a, A_BUTTON | B_BUTTON ld [wMenuWatchedKeys], a ld a, $1 @@ -1614,23 +1617,23 @@ DisplayTwoOptionMenu: ; 7559 (1:7559) jr nz, .choseSecondMenuItem ; automatically choose the second option if B is pressed .pressedAButton ld a, [wCurrentMenuItem] - ld [wd12d], a + ld [wChosenMenuItem], a and a jr nz, .choseSecondMenuItem ; chose first menu item - ld a, $1 - ld [wd12e], a + ld a, CHOSE_FIRST_ITEM + ld [wMenuExitMethod], a ld c, 15 call DelayFrames call TwoOptionMenu_RestoreScreenTiles and a ret .choseSecondMenuItem - ld a, $1 + ld a, 1 ld [wCurrentMenuItem], a - ld [wd12d], a - ld a, $2 - ld [wd12e], a + ld [wChosenMenuItem], a + ld a, CHOSE_SECOND_ITEM + ld [wMenuExitMethod], a ld c, 15 call DelayFrames call TwoOptionMenu_RestoreScreenTiles @@ -2631,7 +2634,7 @@ ApplyOutOfBattlePoisonDamage: ; c69c (3:469c) .noBlackOut xor a .done - ld [wd12d], a + ld [wOutOfBattleBlackout], a ret LoadTilesetHeader: ; c754 (3:4754) @@ -2777,10 +2780,10 @@ CyclingIsFunText: ; cdff (3:4dff) ; INPUT: ; hl = address of inventory (either wNumBagItems or wNumBoxItems) ; [wcf91] = item ID -; [wcf96] = item quantity +; [wItemQuantity] = item quantity ; sets carry flag if successful, unsets carry flag if unsuccessful AddItemToInventory_: ; ce04 (3:4e04) - ld a,[wcf96] ; a = item quantity + ld a,[wItemQuantity] ; a = item quantity push af push bc push de @@ -2827,12 +2830,12 @@ AddItemToInventory_: ; ce04 (3:4e04) add hl,bc ; hl = address to store the item ld a,[wcf91] ld [hli],a ; store item ID - ld a,[wcf96] + ld a,[wItemQuantity] ld [hli],a ; store item quantity ld [hl],$ff ; store terminator jp .success .increaseItemQuantity ; increase the quantity of an item already in the inventory - ld a,[wcf96] + ld a,[wItemQuantity] ld b,a ; b = quantity to add ld a,[hl] ; a = existing item quantity add b ; a = new item quantity @@ -2841,7 +2844,7 @@ AddItemToInventory_: ; ce04 (3:4e04) ; if the new quantity is greater than or equal to 100, ; try to max out the current slot and add the rest in a new slot sub a,99 - ld [wcf96],a ; a = amount left over (to put in the new slot) + ld [wItemQuantity],a ; a = amount left over (to put in the new slot) ld a,d and a ; is there room for a new item slot? jr z,.increaseItemQuantityFailed @@ -2864,14 +2867,14 @@ AddItemToInventory_: ; ce04 (3:4e04) pop bc pop bc ld a,b - ld [wcf96],a ; restore the initial value from when the function was called + ld [wItemQuantity],a ; restore the initial value from when the function was called ret ; function to remove an item (in varying quantities) from the player's bag or PC box ; INPUT: ; hl = address of inventory (either wNumBagItems or wNumBoxItems) ; [wWhichPokemon] = index (within the inventory) of the item to remove -; [wcf96] = quantity to remove +; [wItemQuantity] = quantity to remove RemoveItemFromInventory_: ; ce74 (3:4e74) push hl inc hl @@ -2883,12 +2886,12 @@ RemoveItemFromInventory_: ; ce74 (3:4e74) inc h .noCarry inc hl - ld a,[wcf96] ; quantity being removed + ld a,[wItemQuantity] ; quantity being removed ld e,a ld a,[hl] ; a = current quantity sub e ld [hld],a ; store new quantity - ld [wcf97],a + ld [wMaxItemQuantity],a and a jr nz,.skipMovingUpSlots ; if the remaining quantity is 0, @@ -2909,7 +2912,7 @@ RemoveItemFromInventory_: ; ce74 (3:4e74) ld [wListScrollOffset],a ld [wCurrentMenuItem],a ld [wcc2c],a - ld [wd07e],a + ld [wSavedListScrollOffset],a pop hl ld a,[hl] ; a = number of items in inventory dec a ; decrement the number of items @@ -3863,7 +3866,7 @@ _AddEnemyMonToPlayerParty: ; f49d (3:749d) and a ret ; return success -MoveMon: ; f51e (3:751e) +_MoveMon: ; f51e (3:751e) ld a, [wcf95] and a jr z, .checkPartyMonSlots diff --git a/scripts/ceruleanhouse2.asm b/scripts/ceruleanhouse2.asm index 423c0209..2d012d70 100755 --- a/scripts/ceruleanhouse2.asm +++ b/scripts/ceruleanhouse2.asm @@ -26,7 +26,7 @@ CeruleanHouse2Text1: ; 74e15 (1d:4e15) ld a, h ld [wList + 1], a xor a - ld [wcf93], a + ld [wPrintItemPrices], a ld [wMenuItemToSwap], a ld a, SPECIALLISTMENU ld [wListMenuID], a diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index 3fa2d3b9..83b9b3a7 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -49,7 +49,7 @@ DayCareMText1: ; 56254 (15:6254) ld [W_DAYCARE_IN_USE], a ld a, $3 ld [wcf95], a - call Func_3a68 + call MoveMon xor a ld [wcf95], a call RemovePokemon @@ -158,14 +158,14 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) predef SubBCDPredef ld a, (SFX_02_5a - SFX_Headers_02) / 3 call PlaySoundWaitForCurrent - ld a, $13 + ld a, MONEY_BOX ld [wTextBoxID], a call DisplayTextBoxID ld hl, DayCareMText_5644f call PrintText ld a, $2 ld [wcf95], a - call Func_3a68 + call MoveMon ld a, [wDayCareMonSpecies] ld [wcf91], a ld a, [wPartyCount] diff --git a/scripts/oakslab.asm b/scripts/oakslab.asm index 7c99d802..1c255103 100755 --- a/scripts/oakslab.asm +++ b/scripts/oakslab.asm @@ -641,7 +641,7 @@ OaksLabScript_1d00a: ; 1d00a (7:500a) ld a, c ld [wWhichPokemon], a ld a, $1 - ld [wcf96], a + ld [wItemQuantity], a jp RemoveItemFromInventory OaksLabScript_1d02b: ; 1d02b (7:502b) diff --git a/wram.asm b/wram.asm index 83aa4e60..65681990 100755 --- a/wram.asm +++ b/wram.asm @@ -746,7 +746,13 @@ wAnimSoundID:: ; cf07 wcf08:: ds 1 ; used as a storage value for the bank to return to after a BankswitchHome (bankswitch in homebank) wcf09:: ds 1 ; used as a temp storage value for the bank to switch to -wcf0a:: ds 1 ; used as flags for Poke Mart + +wBoughtOrSoldItemInMart:: ; cf0a +; 0 = nothing bought or sold in pokemart +; 1 = bought or sold something in pokemart +; this value is not used for anything + ds 1 + wBattleResult:: ; cf0b ; $00 - win ; $01 - lose @@ -831,7 +837,9 @@ wWhichPokemon:: ; cf92 ; which pokemon you selected ds 1 -wcf93:: ds 1 ; used with lists +wPrintItemPrices:: ; cf93 +; if non-zero, then print item prices when displaying lists + ds 1 wHPBarType:: ; cf94 ; type of HP bar @@ -844,8 +852,12 @@ wListMenuID:: ; cf94 ds 1 wcf95:: ds 1 ; used with RemovePokemon (BoxMons, Daycare, Trades, etc.) -wcf96:: ds 1 ; used with removing items -wcf97:: ds 1 ; used with printing item quantities? + +wItemQuantity:: ; cf96 + ds 1 + +wMaxItemQuantity:: ; cf97 + ds 1 ; LoadMonData copies mon data here wLoadedMon:: party_struct wLoadedMon ; cf98 @@ -1126,7 +1138,13 @@ W_ANIMATIONID:: ; d07c ds 1 wd07d:: ds 1 ; used with naming functions and party display type -wd07e:: ds 3 ; used with mart and inventory + +wSavedListScrollOffset:: ; d07e +; used by the pokemart code to save the existing value of wListScrollOffset +; so that it can be restored when the player is done with the pokemart NPC + ds 1 + + ds 2 ; base coordinates of frame block W_BASECOORDX:: ; d081 @@ -1353,7 +1371,10 @@ wWalkBikeSurfStateCopy:: ; d11a ; wWalkBikeSurfState is sometimes copied here, but it doesn't seem to be used for anything ds 1 -wd11b:: ds 1 ; used with mart text box and cable club +wInitListType:: ; d11b +; the type of list for InitList to init + ds 1 + wd11c:: ds 1 ; temp storage value for catching pokemon wd11d:: ds 1 ; used with battle switchout and testing if the enemy mon fainted wd11e:: ds 1 ; used as a Pokemon and Item storage value. Also used as an output value for CountSetBits @@ -1365,7 +1386,7 @@ wNumRunAttempts:: wd121:: ds 1 ; used with evolving pokemon wd122:: ds 2 ; saved ROM bank number for vblank -wd124:: ds 1 ; used as an output value when determining if an item is a key item +wIsKeyItem:: ds 1 ; d124 wTextBoxID:: ; d125 ds 1 @@ -1375,16 +1396,35 @@ wd126:: ds 1 ; not exactly sure what this is used for, but it seems to be used a W_CURENEMYLVL:: ; d127 ds 1 -wd128:: ds 1 ; used as a pointer to displaying Poke Mart inventory, also used to store the pointer of LoadItemList (pointer to item list initially in hl) -wd129:: ds 1 ; second half of above mentioned pointer +wItemListPointer:: ; d128 +; pointer to list of items terminated by $FF + ds 2 + wd12a:: ds 1 ; Number of list entries for displaying a list wLinkState:: ; d12b ds 1 -wTwoOptionMenuID:: ds 1 -wd12d:: ds 1 ; used with item menus and pokemart menu, also used with testing if all Pokemon Fainted? -wd12e:: ds 1 ; used as an output value to determine if A or B was pressed in a yes/no box +wTwoOptionMenuID:: ; d12c + ds 1 + +wChosenMenuItem:: ; d12d +; the id of the menu item the player ultimately chose + +wOutOfBattleBlackout:: ; d12d +; non-zero when the whole party has fainted due to out-of-battle poison damage + ds 1 + +wMenuExitMethod:: ; d12e +; the way the user exited a menu +; for list menus and the buy/sell/quit menu: +; $01 = the user pressed A to choose a menu item +; $02 = the user pressed B to cancel +; for two-option menus: +; $01 = the user pressed A with the first menu item selected +; $02 = the user pressed B or pressed A with the second menu item selected + ds 1 + wd12f:: ds 1 ; used in some coordinatestuff, npc pathstuff, and game corner prize stuff wd130:: ds 1 ; saved value of screen Y coord of trainer sprite wd131:: ds 1 ; saved value of screen X coord of trainer sprite -- cgit v1.3.1-sl0p From bcfca2e267a6ee023271d90e27e4a7fde06f66fc Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Sun, 12 Jul 2015 23:36:56 -0700 Subject: movemon and removepokemon wram variables --- constants/misc_constants.asm | 6 +++++ engine/cable_club.asm | 2 +- engine/in_game_trades.asm | 2 +- engine/menu/bills_pc.asm | 16 ++++++------ home.asm | 4 +-- main.asm | 58 ++++++++++++++++++++++---------------------- scripts/daycarem.asm | 18 +++++++------- wram.asm | 11 ++++++++- 8 files changed, 66 insertions(+), 51 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm index a96fc59f..8aac849e 100644 --- a/constants/misc_constants.asm +++ b/constants/misc_constants.asm @@ -66,6 +66,12 @@ CANCELLED_MENU EQU 2 ; pressed B CHOSE_FIRST_ITEM EQU 1 CHOSE_SECOND_ITEM EQU 2 +; move mon constants +BOX_TO_PARTY EQU 0 +PARTY_TO_BOX EQU 1 +DAYCARE_TO_PARTY EQU 2 +PARTY_TO_DAYCARE EQU 3 + ; serial ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01 diff --git a/engine/cable_club.asm b/engine/cable_club.asm index be403fa6..c115ed4a 100755 --- a/engine/cable_club.asm +++ b/engine/cable_club.asm @@ -793,7 +793,7 @@ TradeCenter_Trade: ld a, [hl] ld [wTradedPlayerMonSpecies], a xor a - ld [wcf95], a + ld [wRemoveMonFromBox], a call RemovePokemon ld a, [wTradingWhichEnemyMon] ld c, a diff --git a/engine/in_game_trades.asm b/engine/in_game_trades.asm index 32b55002..3594a26e 100755 --- a/engine/in_game_trades.asm +++ b/engine/in_game_trades.asm @@ -131,7 +131,7 @@ InGameTrade_DoTrade: ; 71c07 (1c:5c07) ld [wcf91],a xor a ld [wcc49],a - ld [wcf95],a + ld [wRemoveMonFromBox],a call RemovePokemon ld a,$80 ld [wcc49],a diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm index b4ac3680..530ab961 100644 --- a/engine/menu/bills_pc.asm +++ b/engine/menu/bills_pc.asm @@ -229,11 +229,11 @@ BillsPCDeposit: ld a, [wcf91] call GetCryData call PlaySoundWaitForCurrent - ld a, $1 - ld [wcf95], a + ld a, PARTY_TO_BOX + ld [wMoveMonType], a call MoveMon xor a - ld [wcf95], a + ld [wRemoveMonFromBox], a call RemovePokemon call WaitForSoundToFinish ld hl, wWhichTrade @@ -281,11 +281,11 @@ Func_21618: ; 21618 (8:5618) ld a, [wcf91] call GetCryData call PlaySoundWaitForCurrent - xor a - ld [wcf95], a + xor a ; BOX_TO_PARTY + ld [wMoveMonType], a call MoveMon - ld a, $1 - ld [wcf95], a + ld a, 1 + ld [wRemoveMonFromBox], a call RemovePokemon call WaitForSoundToFinish ld hl, MonIsTakenOutText @@ -310,7 +310,7 @@ Func_21673: ; 21673 (8:5673) and a jr nz, .asm_21682 inc a - ld [wcf95], a + ld [wRemoveMonFromBox], a call RemovePokemon call WaitForSoundToFinish ld a, [wcf91] diff --git a/home.asm b/home.asm index b9041fef..51e10118 100644 --- a/home.asm +++ b/home.asm @@ -3599,8 +3599,8 @@ CopyDataUntil:: ; 3913 (0:3913) ; Function to remove a pokemon from the party or the current box. ; wWhichPokemon determines the pokemon. -; [wcf95] == 0 specifies the party. -; [wcf95] != 0 specifies the current box. +; [wRemoveMonFromBox] == 0 specifies the party. +; [wRemoveMonFromBox] != 0 specifies the current box. RemovePokemon:: ; 391f (0:391f) ld hl, _RemovePokemon ld b, BANK(_RemovePokemon) diff --git a/main.asm b/main.asm index 3a79bdd6..54440e60 100755 --- a/main.asm +++ b/main.asm @@ -1916,7 +1916,7 @@ INCLUDE "engine/menu/players_pc.asm" _RemovePokemon: ; 7b68 (1:7b68) ld hl, wPartyCount - ld a, [wcf95] + ld a, [wRemoveMonFromBox] and a jr z, .asm_7b74 ld hl, W_NUMINBOX @@ -1939,7 +1939,7 @@ _RemovePokemon: ; 7b68 (1:7b68) jr nz, .asm_7b81 ld hl, wPartyMonOT ld d, $5 - ld a, [wcf95] + ld a, [wRemoveMonFromBox] and a jr z, .asm_7b97 ld hl, wBoxMonOT @@ -1958,7 +1958,7 @@ _RemovePokemon: ; 7b68 (1:7b68) ld bc, $b add hl, bc ld bc, wPartyMonNicks - ld a, [wcf95] + ld a, [wRemoveMonFromBox] and a jr z, .asm_7bb8 ld bc, wBoxMonNicks @@ -1966,7 +1966,7 @@ _RemovePokemon: ; 7b68 (1:7b68) call CopyDataUntil ld hl, wPartyMons ld bc, wPartyMon2 - wPartyMon1 - ld a, [wcf95] + ld a, [wRemoveMonFromBox] and a jr z, .asm_7bcd ld hl, wBoxMons @@ -1976,7 +1976,7 @@ _RemovePokemon: ; 7b68 (1:7b68) call AddNTimes ld d, h ld e, l - ld a, [wcf95] + ld a, [wRemoveMonFromBox] and a jr z, .asm_7be4 ld bc, wBoxMon2 - wBoxMon1 @@ -1990,7 +1990,7 @@ _RemovePokemon: ; 7b68 (1:7b68) .asm_7beb call CopyDataUntil ld hl, wPartyMonNicks - ld a, [wcf95] + ld a, [wRemoveMonFromBox] and a jr z, .asm_7bfa ld hl, wBoxMonNicks @@ -2003,7 +2003,7 @@ _RemovePokemon: ; 7b68 (1:7b68) ld bc, $b add hl, bc ld bc, wPokedexOwned - ld a, [wcf95] + ld a, [wRemoveMonFromBox] and a jr z, .asm_7c15 ld bc, wBoxMonNicksEnd @@ -3867,12 +3867,12 @@ _AddEnemyMonToPlayerParty: ; f49d (3:749d) ret ; return success _MoveMon: ; f51e (3:751e) - ld a, [wcf95] + ld a, [wMoveMonType] and a jr z, .checkPartyMonSlots - cp $2 + cp DAYCARE_TO_PARTY jr z, .checkPartyMonSlots - cp $3 + cp PARTY_TO_DAYCARE ld hl, wDayCareMon jr z, .asm_f575 ld hl, W_NUMINBOX @@ -3892,17 +3892,17 @@ _MoveMon: ; f51e (3:751e) inc a ld [hl], a ; increment number of mons in party/box ld c, a - ld b, $0 + ld b, 0 add hl, bc - ld a, [wcf95] - cp $2 + ld a, [wMoveMonType] + cp DAYCARE_TO_PARTY ld a, [wDayCareMon] jr z, .asm_f556 ld a, [wcf91] .asm_f556 ld [hli], a ; write new mon ID ld [hl], $ff ; write new sentinel - ld a, [wcf95] + ld a, [wMoveMonType] dec a ld hl, wPartyMons ld bc, wPartyMon2 - wPartyMon1 ; $2c @@ -3918,12 +3918,12 @@ _MoveMon: ; f51e (3:751e) push hl ld e, l ld d, h - ld a, [wcf95] + ld a, [wMoveMonType] and a ld hl, wBoxMons ld bc, wBoxMon2 - wBoxMon1 ; $21 jr z, .asm_f591 - cp $2 + cp DAYCARE_TO_PARTY ld hl, wDayCareMon jr z, .asm_f597 ld hl, wPartyMons @@ -3938,10 +3938,10 @@ _MoveMon: ; f51e (3:751e) call CopyData pop de pop hl - ld a, [wcf95] + ld a, [wMoveMonType] and a jr z, .asm_f5b4 - cp $2 + cp DAYCARE_TO_PARTY jr z, .asm_f5b4 ld bc, wBoxMon2 - wBoxMon1 add hl, bc @@ -3951,8 +3951,8 @@ _MoveMon: ; f51e (3:751e) inc de ld [de], a .asm_f5b4 - ld a, [wcf95] - cp $3 + ld a, [wMoveMonType] + cp PARTY_TO_DAYCARE ld de, W_DAYCAREMONOT jr z, .asm_f5d3 dec a @@ -3968,11 +3968,11 @@ _MoveMon: ; f51e (3:751e) ld e, l .asm_f5d3 ld hl, wBoxMonOT - ld a, [wcf95] + ld a, [wMoveMonType] and a jr z, .asm_f5e6 ld hl, W_DAYCAREMONOT - cp $2 + cp DAYCARE_TO_PARTY jr z, .asm_f5ec ld hl, wPartyMonOT .asm_f5e6 @@ -3981,8 +3981,8 @@ _MoveMon: ; f51e (3:751e) .asm_f5ec ld bc, $b call CopyData - ld a, [wcf95] - cp $3 + ld a, [wMoveMonType] + cp PARTY_TO_DAYCARE ld de, W_DAYCAREMONNAME jr z, .asm_f611 dec a @@ -3998,11 +3998,11 @@ _MoveMon: ; f51e (3:751e) ld e, l .asm_f611 ld hl, wBoxMonNicks - ld a, [wcf95] + ld a, [wMoveMonType] and a jr z, .asm_f624 ld hl, W_DAYCAREMONNAME - cp $2 + cp DAYCARE_TO_PARTY jr z, .asm_f62a ld hl, wPartyMonNicks .asm_f624 @@ -4012,10 +4012,10 @@ _MoveMon: ; f51e (3:751e) ld bc, $b call CopyData pop hl - ld a, [wcf95] - cp $1 + ld a, [wMoveMonType] + cp PARTY_TO_BOX jr z, .asm_f664 - cp $3 + cp PARTY_TO_DAYCARE jr z, .asm_f664 push hl srl a diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index 83b9b3a7..f48584dc 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -45,13 +45,13 @@ DayCareMText1: ; 56254 (15:6254) call GetPartyMonName ld hl, DayCareMText_56419 call PrintText - ld a, $1 + ld a, 1 ld [W_DAYCARE_IN_USE], a - ld a, $3 - ld [wcf95], a + ld a, PARTY_TO_DAYCARE + ld [wMoveMonType], a call MoveMon xor a - ld [wcf95], a + ld [wRemoveMonFromBox], a call RemovePokemon ld a, [wcf91] call PlayCry @@ -163,21 +163,21 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) call DisplayTextBoxID ld hl, DayCareMText_5644f call PrintText - ld a, $2 - ld [wcf95], a + ld a, DAYCARE_TO_PARTY + ld [wMoveMonType], a call MoveMon ld a, [wDayCareMonSpecies] ld [wcf91], a ld a, [wPartyCount] dec a push af - ld bc, $002c + ld bc, wPartyMon2 - wPartyMon1 push bc ld hl, wPartyMon1Moves call AddNTimes ld d, h ld e, l - ld a, $1 + ld a, 1 ld [wHPBarMaxHP], a predef WriteMonMoves pop bc @@ -186,7 +186,7 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) call AddNTimes ld d, h ld e, l - ld bc, $0021 + ld bc, wPartyMon1MaxHP - wPartyMon1HP add hl, bc ld a, [hli] ld [de], a diff --git a/wram.asm b/wram.asm index 65681990..c5f06e53 100755 --- a/wram.asm +++ b/wram.asm @@ -851,7 +851,16 @@ wListMenuID:: ; cf94 ; ID used by DisplayListMenuID ds 1 -wcf95:: ds 1 ; used with RemovePokemon (BoxMons, Daycare, Trades, etc.) +wRemoveMonFromBox:: ; cf95 +; if non-zero, RemovePokemon will remove the mon from the current box, +; else it will remove the mon from the party + +wMoveMonType:: ; cf95 +; 0 = move from box to party +; 1 = move from party to box +; 2 = move from daycare to party +; 3 = move from party to daycare + ds 1 wItemQuantity:: ; cf96 ds 1 -- cgit v1.3.1-sl0p From 0066e09828265cc1cc83eca27e6be76911f187ec Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Mon, 13 Jul 2015 15:40:33 -0700 Subject: named party menu/naming screen wram variables --- constants/misc_constants.asm | 24 +++++++++++++++++++++ engine/battle/animations.asm | 4 ++-- engine/battle/core.asm | 16 +++++++------- engine/in_game_trades.asm | 4 ++-- engine/items/items.asm | 46 ++++++++++++++++++++--------------------- engine/menu/naming_screen.asm | 28 ++++++++++++------------- engine/menu/party_menu.asm | 16 +++++++------- engine/menu/start_sub_menus.asm | 14 ++++++------- engine/oak_speech2.asm | 8 +++---- home.asm | 2 +- main.asm | 4 ++-- scripts/daycarem.asm | 2 +- scripts/namerater.asm | 4 ++-- wram.asm | 8 ++++++- 14 files changed, 105 insertions(+), 75 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm index 323e2ab6..eca97408 100644 --- a/constants/misc_constants.asm +++ b/constants/misc_constants.asm @@ -85,6 +85,30 @@ SLOTSFISH EQU $0E0C SLOTSBIRD EQU $1210 SLOTSMOUSE EQU $1614 +; party menu types +NORMAL_PARTY_MENU EQU 0 +USE_ITEM_PARTY_MENU EQU 1 +BATTLE_PARTY_MENU EQU 2 +TMHM_PARTY_MENU EQU 3 +SWAP_MONS_PARTY_MENU EQU 4 +EVO_STONE_PARTY_MENU EQU 5 + +; party memu message IDs +ANTIDOTE_MSG EQU $F0 +BURN_HEAL_MSG EQU $F1 +ICE_HEAL_MSG EQU $F2 +AWAKENING_MSG EQU $F3 +PARALYZ_HEAL_MSG EQU $F4 +POTION_MSG EQU $F5 +FULL_HEAL_MSG EQU $F6 +REVIVE_MSG EQU $F7 +RARE_CANDY_MSG EQU $F8 + +; naming screen types +NAME_PLAYER_SCREEN EQU 0 +NAME_RIVAL_SCREEN EQU 1 +NAME_MON_SCREEN EQU 2 + ; serial ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01 diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index ea879e53..83590d4c 100755 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -336,14 +336,14 @@ LoadAnimationTileset: ; 781d2 (1e:41d2) ld d,0 add hl,de ld a,[hli] - ld [wd07d],a ; number of tiles + ld [wTempTilesetNumTiles],a ; number of tiles ld a,[hli] ld e,a ld a,[hl] ld d,a ; de = address of tileset ld hl,vSprites + $310 ld b, BANK(AnimationTileset1) ; ROM bank - ld a,[wd07d] + ld a,[wTempTilesetNumTiles] ld c,a ; number of tiles jp CopyVideoData ; load tileset diff --git a/engine/battle/core.asm b/engine/battle/core.asm index f37da950..a611864d 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -1162,8 +1162,8 @@ UseNextMonText: ; 3c7d3 (f:47d3) ; choose next player mon to send out ; stores whether enemy mon has no HP left in Z flag ChooseNextMon: ; 3c7d8 (f:47d8) - ld a, $2 - ld [wd07d], a + ld a, BATTLE_PARTY_MENU + ld [wPartyMenuTypeOrMessageID], a call DisplayPartyMenu .checkIfMonChosen jr nc, .monChosen @@ -1462,8 +1462,8 @@ EnemySendOutFirstMon: ; 3c92a (f:492a) ld a,[wCurrentMenuItem] and a jr nz,.next4 - ld a,2 - ld [wd07d],a + ld a,BATTLE_PARTY_MENU + ld [wPartyMenuTypeOrMessageID],a call DisplayPartyMenu .next9 ld a,1 @@ -2384,8 +2384,8 @@ PartyMenuOrRockOrRun: jp UseBagItem .partyMenuWasSelected call LoadScreenTilesFromBuffer1 - xor a - ld [wd07d], a + xor a ; NORMAL_PARTY_MENU + ld [wPartyMenuTypeOrMessageID], a ld [wMenuItemToSwap], a call DisplayPartyMenu .checkIfPartyMonWasSelected @@ -2403,8 +2403,8 @@ PartyMenuOrRockOrRun: ld bc, $81 ld a, $7f call FillMemory - xor a - ld [wd07d], a + xor a ; NORMAL_PARTY_MENU + ld [wPartyMenuTypeOrMessageID], a call GoBackToPartyMenu jr .checkIfPartyMonWasSelected .partyMonWasSelected diff --git a/engine/in_game_trades.asm b/engine/in_game_trades.asm index 3594a26e..7366996c 100755 --- a/engine/in_game_trades.asm +++ b/engine/in_game_trades.asm @@ -87,8 +87,8 @@ InGameTrade_GetMonName: ; 71b6a (1c:5b6a) INCLUDE "data/trades.asm" InGameTrade_DoTrade: ; 71c07 (1c:5c07) - xor a - ld [wd07d],a + xor a ; NORMAL_PARTY_MENU + ld [wPartyMenuTypeOrMessageID],a dec a ld [wUpdateSpritesEnabled],a call DisplayPartyMenu diff --git a/engine/items/items.asm b/engine/items/items.asm index 24ff544e..fae2a871 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -633,8 +633,8 @@ ItemUseEvoStone: ; da5b (3:5a5b) ld a,[wcf91] ld [wd156],a push af - ld a,$05 ; evolution stone party menu - ld [wd07d],a + ld a,EVO_STONE_PARTY_MENU + ld [wPartyMenuTypeOrMessageID],a ld a,$ff ld [wUpdateSpritesEnabled],a call DisplayPartyMenu @@ -678,8 +678,8 @@ ItemUseMedicine: ; dabb (3:5abb) push af ld a,[wcf91] push af - ld a,$01 - ld [wd07d],a ; item use party menu + ld a,USE_ITEM_PARTY_MENU + ld [wPartyMenuTypeOrMessageID],a ld a,$ff ld [wUpdateSpritesEnabled],a ld a,[wd152] @@ -737,22 +737,22 @@ ItemUseMedicine: ; dabb (3:5abb) ld bc,4 add hl,bc ; hl now points to status ld a,[wcf91] - ld bc,$f008 + ld bc, (ANTIDOTE_MSG << 8) | (1 << PSN) cp a,ANTIDOTE jr z,.checkMonStatus - ld bc,$f110 + ld bc, (BURN_HEAL_MSG << 8) | (1 << BRN) cp a,BURN_HEAL jr z,.checkMonStatus - ld bc,$f220 + ld bc, (ICE_HEAL_MSG << 8) | (1 << FRZ) cp a,ICE_HEAL jr z,.checkMonStatus - ld bc,$f307 + ld bc, (AWAKENING_MSG << 8) | SLP cp a,AWAKENING jr z,.checkMonStatus - ld bc,$f440 + ld bc, (PARALYZ_HEAL_MSG << 8) | (1 << PAR) cp a,PARLYZ_HEAL jr z,.checkMonStatus - ld bc,$f6ff ; Full Heal + ld bc, (FULL_HEAL_MSG << 8) | $ff ; Full Heal .checkMonStatus ld a,[hl] ; pokemon's status and c ; does the pokemon have a status ailment the item can cure? @@ -761,7 +761,7 @@ ItemUseMedicine: ; dabb (3:5abb) xor a ld [hl],a ; remove the status ailment in the party data ld a,b - ld [wd07d],a ; the message to display for the item used + ld [wPartyMenuTypeOrMessageID],a ; the message to display for the item used ld a,[wPlayerMonNumber] cp d ; is pokemon the item was used on active in battle? jp nz,.doneHealing @@ -1078,15 +1078,15 @@ ItemUseMedicine: ; dabb (3:5abb) ld a,[hFlags_0xFFF6] res 0,a ld [hFlags_0xFFF6],a - ld a,$f7 ; revived message - ld [wd07d],a + ld a,REVIVE_MSG + ld [wPartyMenuTypeOrMessageID],a ld a,[wcf91] cp a,REVIVE jr z,.showHealingItemMessage cp a,MAX_REVIVE jr z,.showHealingItemMessage - ld a,$f5 ; standard HP healed message - ld [wd07d],a + ld a,POTION_MSG + ld [wPartyMenuTypeOrMessageID],a jr .showHealingItemMessage .playStatusAilmentCuringSound ld a,(SFX_02_3e - SFX_Headers_02) / 3 ; status ailment curing sound @@ -1257,8 +1257,8 @@ ItemUseMedicine: ; dabb (3:5abb) ld a,[hl] adc b ld [hl],a - ld a,$f8 ; level up message - ld [wd07d],a + ld a,RARE_CANDY_MSG + ld [wPartyMenuTypeOrMessageID],a call RedrawPartyMenu pop de ld a,d @@ -1878,8 +1878,8 @@ ItemUsePPRestore: ; e31e (3:631e) .chooseMon xor a ld [wUpdateSpritesEnabled],a - ld a,$01 ; item use party menu - ld [wd07d],a + ld a,USE_ITEM_PARTY_MENU + ld [wPartyMenuTypeOrMessageID],a call DisplayPartyMenu jr nc,.chooseMove jp .itemNotUsed @@ -2118,8 +2118,8 @@ ItemUseTMHM: ; e479 (3:6479) call CopyData ld a,$ff ld [wUpdateSpritesEnabled],a - ld a,$03 ; teach TM/HM party menu - ld [wd07d],a + ld a,TMHM_PARTY_MENU + ld [wPartyMenuTypeOrMessageID],a call DisplayPartyMenu push af ld hl,wd036 @@ -2650,8 +2650,8 @@ SendNewMonToBox: ; e7a4 (3:67a4) jr nz, .asm_e817 .asm_e82a ld hl, wBoxMonNicks - ld a, $2 - ld [wd07d], a + ld a, NAME_MON_SCREEN + ld [wNamingScreenType], a predef AskName ld a, [W_NUMINBOX] dec a diff --git a/engine/menu/naming_screen.asm b/engine/menu/naming_screen.asm index f77f7331..9bdfbee2 100755 --- a/engine/menu/naming_screen.asm +++ b/engine/menu/naming_screen.asm @@ -27,8 +27,8 @@ AskName: ; 64eb (1:64eb) xor a ld [wUpdateSpritesEnabled], a push hl - ld a, $2 - ld [wd07d], a + ld a, NAME_MON_SCREEN + ld [wNamingScreenType], a call DisplayNamingScreen ld a, [W_ISINBATTLE] and a @@ -53,12 +53,12 @@ DoYouWantToNicknameText: ; 0x6557 TX_FAR _DoYouWantToNicknameText db "@" -Func_655c: ; 655c (1:655c) +DisplayNameRaterScreen: ; 655c (1:655c) ld hl, wHPBarMaxHP xor a ld [wUpdateSpritesEnabled], a - ld a, $2 - ld [wd07d], a + ld a, NAME_MON_SCREEN + ld [wNamingScreenType], a call DisplayNamingScreen call GBPalWhiteOutWithDelay3 call RestoreScreenTilesAndReloadTilePatterns @@ -236,8 +236,8 @@ DisplayNamingScreen: ; 6596 (1:6596) cp $e4 ld de, Handakutens jr z, .asm_66e3 - ld a, [wd07d] - cp $2 + ld a, [wNamingScreenType] + cp NAME_MON_SCREEN jr nc, .checkMonNameLength ld a, [wHPBarMaxHP] cp $7 ; max length of player/rival names @@ -377,8 +377,8 @@ Func_680e: ; 680e (1:680e) ld de, wcf4b call PlaceString hlCoord 10, 3 - ld a, [wd07d] - cp $2 + ld a, [wNamingScreenType] + cp NAME_MON_SCREEN jr nc, .asm_6835 ld b, $7 jr .asm_6837 @@ -390,8 +390,8 @@ Func_680e: ; 680e (1:680e) ld [hli], a dec b jr nz, .asm_6839 - ld a, [wd07d] - cp $2 + ld a, [wNamingScreenType] + cp NAME_MON_SCREEN ld a, [wHPBarMaxHP] jr nc, .asm_684b cp $7 @@ -405,8 +405,8 @@ Func_680e: ; 680e (1:680e) ld [wTopMenuItemX], a ld a, $5 ld [wCurrentMenuItem], a - ld a, [wd07d] - cp $2 + ld a, [wNamingScreenType] + cp NAME_MON_SCREEN ld a, $9 jr nc, .asm_6867 ld a, $6 @@ -462,7 +462,7 @@ CalcStringLength: ; 68eb (1:68eb) PrintNamingText: ; 68f8 (1:68f8) hlCoord 0, 1 - ld a, [wd07d] + ld a, [wNamingScreenType] ld de, YourTextString and a jr z, .notNickname diff --git a/engine/menu/party_menu.asm b/engine/menu/party_menu.asm index 6b365e2b..edd65a81 100755 --- a/engine/menu/party_menu.asm +++ b/engine/menu/party_menu.asm @@ -1,4 +1,4 @@ -; [wd07d] = menu type / message ID +; [wPartyMenuTypeOrMessageID] = menu type / message ID ; if less than $F0, it is a menu type ; menu types: ; 00: normal pokemon menu (e.g. Start menu) @@ -25,11 +25,11 @@ DrawPartyMenu_: ; 12cd2 (4:6cd2) callba LoadMonPartySpriteGfxWithLCDDisabled ; load pokemon icon graphics RedrawPartyMenu_: ; 12ce3 (4:6ce3) - ld a,[wd07d] - cp a,$04 + ld a,[wPartyMenuTypeOrMessageID] + cp a,SWAP_MONS_PARTY_MENU jp z,.printMessage call ErasePartyMenuCursors - callba SendBlkPacket_PartyMenu ; loads some data to wcf2e + callba SendBlkPacket_PartyMenu hlCoord 3, 0 ld de,wPartySpecies xor a @@ -75,10 +75,10 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) inc hl inc hl .skipUnfilledRightArrow - ld a,[wd07d] ; menu type - cp a,$03 + ld a,[wPartyMenuTypeOrMessageID] ; menu type + cp a,TMHM_PARTY_MENU jr z,.teachMoveMenu - cp a,$05 + cp a,EVO_STONE_PARTY_MENU jr z,.evolutionStoneMenu push hl ld bc,14 ; 14 columns to the right @@ -196,7 +196,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) push af push hl set 6,[hl] ; turn off letter printing delay - ld a,[wd07d] ; message ID + ld a,[wPartyMenuTypeOrMessageID] ; message ID cp a,$F0 jr nc,.printItemUseMessage add a diff --git a/engine/menu/start_sub_menus.asm b/engine/menu/start_sub_menus.asm index 0a940356..d97c3d99 100755 --- a/engine/menu/start_sub_menus.asm +++ b/engine/menu/start_sub_menus.asm @@ -12,14 +12,14 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) jp z,RedisplayStartMenu xor a ld [wMenuItemToSwap],a - ld [wd07d],a + ld [wPartyMenuTypeOrMessageID],a ld [wUpdateSpritesEnabled],a call DisplayPartyMenu jr .checkIfPokemonChosen .loop xor a ld [wMenuItemToSwap],a - ld [wd07d],a + ld [wPartyMenuTypeOrMessageID],a call GoBackToPartyMenu .checkIfPokemonChosen jr nc,.chosePokemon @@ -89,8 +89,8 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) cp a,2 ; is there more than one pokemon in the party? jp c,StartMenu_Pokemon ; if not, no switching call SwitchPartyMon_Stats - ld a,$04 ; swap pokemon positions menu - ld [wd07d],a + ld a,SWAP_MONS_PARTY_MENU + ld [wPartyMenuTypeOrMessageID],a call GoBackToPartyMenu jp .checkIfPokemonChosen .choseStats @@ -747,7 +747,7 @@ SwitchPartyMon_Stats: ; 13653 (4:7653) ret .asm_13661 xor a - ld [wd07d], a + ld [wPartyMenuTypeOrMessageID], a ld a, [wMenuItemToSwap] dec a ld b, a @@ -757,7 +757,7 @@ SwitchPartyMon_Stats: ; 13653 (4:7653) jr nz, .asm_1367b xor a ld [wMenuItemToSwap], a - ld [wd07d], a + ld [wPartyMenuTypeOrMessageID], a ret .asm_1367b ld a, b @@ -845,7 +845,7 @@ SwitchPartyMon_Stats: ; 13653 (4:7653) ld [wWhichTrade], a xor a ld [wMenuItemToSwap], a - ld [wd07d], a + ld [wPartyMenuTypeOrMessageID], a pop de pop hl ret diff --git a/engine/oak_speech2.asm b/engine/oak_speech2.asm index d8043484..49154d13 100755 --- a/engine/oak_speech2.asm +++ b/engine/oak_speech2.asm @@ -12,8 +12,8 @@ LoadDefaultNamesPlayer: ; 695d (1:695d) jr .asm_6999 .asm_697a ld hl, wPlayerName - xor a - ld [wd07d], a + xor a ; NAME_PLAYER_SCREEN + ld [wNamingScreenType], a call DisplayNamingScreen ld a, [wcf4b] cp $50 @@ -45,8 +45,8 @@ LoadDefaultNamesRival: ; 69a4 (1:69a4) jr .asm_69e1 .asm_69c1 ld hl, W_RIVALNAME - ld a, $1 - ld [wd07d], a + ld a, NAME_RIVAL_SCREEN + ld [wNamingScreenType], a call DisplayNamingScreen ld a, [wcf4b] cp $50 diff --git a/home.asm b/home.asm index f7da6e3a..b76713bf 100644 --- a/home.asm +++ b/home.asm @@ -456,7 +456,7 @@ HandlePartyMenuInput:: ; 145a (0:145a) callba ErasePartyMenuCursors xor a ld [wMenuItemToSwap],a - ld [wd07d],a + ld [wPartyMenuTypeOrMessageID],a call RedrawPartyMenu jr HandlePartyMenuInput .handleSwap diff --git a/main.asm b/main.asm index 3a1e0621..d3e2f404 100755 --- a/main.asm +++ b/main.asm @@ -3582,8 +3582,8 @@ _AddPartyMon: ; f2e5 (3:72e5) ld a, [$ffe4] dec a call SkipFixedLengthTextEntries - ld a, $2 - ld [wd07d], a + ld a, NAME_MON_SCREEN + ld [wNamingScreenType], a predef AskName .asm_f33f ld hl, wPartyMons diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index f48584dc..5e80a10f 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -25,7 +25,7 @@ DayCareMText1: ; 56254 (15:6254) call PrintText xor a ld [wUpdateSpritesEnabled], a - ld [wd07d], a + ld [wPartyMenuTypeOrMessageID], a ld [wMenuItemToSwap], a call DisplayPartyMenu push af diff --git a/scripts/namerater.asm b/scripts/namerater.asm index 010dc0cd..c2d028ef 100755 --- a/scripts/namerater.asm +++ b/scripts/namerater.asm @@ -49,7 +49,7 @@ NameRaterText1: ; 1da56 (7:5a56) ld hl, NameRaterText_1dab8 call PrintText xor a - ld [wd07d], a + ld [wPartyMenuTypeOrMessageID], a ld [wUpdateSpritesEnabled], a ld [wMenuItemToSwap], a call DisplayPartyMenu @@ -68,7 +68,7 @@ NameRaterText1: ; 1da56 (7:5a56) jr nz, .asm_1daae ld hl, NameRaterText_1dac2 call PrintText - callba Func_655c + callba DisplayNameRaterScreen jr c, .asm_1daae ld hl, NameRaterText_1dac7 .asm_1daa8 diff --git a/wram.asm b/wram.asm index c1002fcd..13853b55 100755 --- a/wram.asm +++ b/wram.asm @@ -1232,7 +1232,13 @@ W_ANIMATIONID:: ; d07c ; ID number of the current battle animation ds 1 -wd07d:: ds 1 ; used with naming functions and party display type +wNamingScreenType:: ; d07d + +wPartyMenuTypeOrMessageID:: ; d07d + +wTempTilesetNumTiles:: ; d07d +; temporary storage for the number of tiles in a tileset + ds 1 wSavedListScrollOffset:: ; d07e ; used by the pokemart code to save the existing value of wListScrollOffset -- cgit v1.3.1-sl0p From bd7d9815936decc5b636f4235c0ee745812dcb48 Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Wed, 15 Jul 2015 20:04:58 -0700 Subject: menu stuff --- constants/misc_constants.asm | 8 + engine/battle/bank_e_misc.asm | 4 +- engine/battle/core.asm | 22 +-- engine/battle/end_of_battle.asm | 2 +- engine/battle/experience.asm | 12 +- engine/battle/init_battle_variables.asm | 2 +- engine/battle/read_trainer_party.asm | 8 +- engine/evos_moves.asm | 15 +- engine/give_pokemon.asm | 2 +- engine/in_game_trades.asm | 6 +- engine/items/items.asm | 22 +-- engine/menu/bills_pc.asm | 309 ++++++++++++++++---------------- engine/menu/main_menu.asm | 34 ++-- engine/menu/pc.asm | 2 +- engine/menu/players_pc.asm | 140 ++++++++------- engine/menu/start_menu.asm | 2 +- engine/menu/start_sub_menus.asm | 93 +++++----- engine/menu/status_screen.asm | 20 ++- engine/save.asm | 12 +- home.asm | 30 ++-- hram.asm | 5 + main.asm | 97 +++++----- scripts/daycarem.asm | 8 +- scripts/oakslab.asm | 6 +- text.asm | 2 +- wram.asm | 63 ++++++- 26 files changed, 506 insertions(+), 420 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm index 2495f17f..a0cc1d0a 100644 --- a/constants/misc_constants.asm +++ b/constants/misc_constants.asm @@ -109,6 +109,14 @@ NAME_PLAYER_SCREEN EQU 0 NAME_RIVAL_SCREEN EQU 1 NAME_MON_SCREEN EQU 2 +; mon data locations +; Note that some values are not supported by all functions that use these values. +PLAYER_PARTY_DATA EQU 0 +ENEMY_PARTY_DATA EQU 1 +BOX_DATA EQU 2 +DAYCARE_DATA EQU 3 +BATTLE_MON_DATA EQU 4 + ; serial ESTABLISH_CONNECTION_WITH_INTERNAL_CLOCK EQU $01 diff --git a/engine/battle/bank_e_misc.asm b/engine/battle/bank_e_misc.asm index 47242057..f47087d8 100755 --- a/engine/battle/bank_e_misc.asm +++ b/engine/battle/bank_e_misc.asm @@ -102,10 +102,10 @@ InitList: ; 39bd5 (e:5bd5) ld [wItemPrices + 1], a ret -; get species of mon e in list [wcc49] for LoadMonData +; get species of mon e in list [wMonDataLocation] for LoadMonData GetMonSpecies: ; 39c37 (e:5c37) ld hl, wPartySpecies - ld a, [wcc49] + ld a, [wMonDataLocation] and a jr z, .getSpecies dec a diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 7b87be0e..bdb20bb0 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -1809,7 +1809,7 @@ SendOutMon: ; 3cc91 (f:4c91) predef LoadMonBackPic xor a ld [$ffe1], a - ld hl, wcc2d + ld hl, wBattleAndStartSavedMenuItem ld [hli], a ld [hl], a ld [wBoostExpByExpAll], a @@ -2123,7 +2123,7 @@ DisplayBattleMenu: ; 3ceb3 (f:4eb3) .oldManName db "OLD MAN@" .handleBattleMenuInput - ld a, [wcc2d] + ld a, [wBattleAndStartSavedMenuItem] ld [wCurrentMenuItem], a ld [wLastMenuItem], a sub 2 ; check if the cursor is in the left column @@ -2206,7 +2206,7 @@ DisplayBattleMenu: ; 3ceb3 (f:4eb3) ld a, [W_BATTLETYPE] cp $2 ; is it a Safari battle? ld a, [wCurrentMenuItem] - ld [wcc2d], a + ld [wBattleAndStartSavedMenuItem], a jr z, .handleMenuSelection ; not Safari battle ; swap the IDs of the item menu and party menu (this is probably because they swapped the positions @@ -2299,11 +2299,11 @@ DisplayBagMenu: ld [wPrintItemPrices], a ld a, ITEMLISTMENU ld [wListMenuID], a - ld a, [wcc2c] + ld a, [wBagSavedMenuItem] ld [wCurrentMenuItem], a call DisplayListMenuID ld a, [wCurrentMenuItem] - ld [wcc2c], a + ld [wBagSavedMenuItem], a ld a, $0 ld [wMenuWatchMovingOutOfBounds], a ld [wMenuItemToSwap], a @@ -2435,8 +2435,8 @@ PartyMenuOrRockOrRun: and a ; was Switch selected? jr z, .switchMon ; if so, jump ; Stats was selected - xor a - ld [wcc49], a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation], a ld hl, wPartyMon1 call ClearSprites ; display the two status screens @@ -2935,8 +2935,8 @@ PrintMenuItem: ; 3d4b6 (f:54b6) ; isn't actually selected (just pointed to by the cursor) ld a, [wPlayerMonNumber] ld [wWhichPokemon], a - ld a, $4 - ld [wcc49], a + ld a, BATTLE_MON_DATA + ld [wMonDataLocation], a callab GetMaxPP ld hl, wCurrentMenuItem ld c, [hl] @@ -8243,14 +8243,14 @@ ChargeEffect: ; 3f88c (f:788c) ld a, b call PlayBattleAnimation ld a, [de] - ld [wWhichTrade], a + ld [wChargeMoveNum], a ld hl, ChargeMoveEffectText jp PrintText ChargeMoveEffectText: ; 3f8c8 (f:78c8) TX_FAR _ChargeMoveEffectText TX_ASM - ld a, [wWhichTrade] + ld a, [wChargeMoveNum] cp RAZOR_WIND ld hl, MadeWhirlwindText jr z, .asm_3f8f8 diff --git a/engine/battle/end_of_battle.asm b/engine/battle/end_of_battle.asm index 0ca4b886..075cbeb1 100755 --- a/engine/battle/end_of_battle.asm +++ b/engine/battle/end_of_battle.asm @@ -54,7 +54,7 @@ EndOfBattle: ; 137aa (4:77aa) ld [wd11f], a ld [wNumRunAttempts], a ld [wEscapedFromBattle], a - ld hl, wcc2b + ld hl, wPartyAndBillsPCSavedMenuItem ld [hli], a ld [hli], a ld [hli], a diff --git a/engine/battle/experience.asm b/engine/battle/experience.asm index 4e4d0f3c..11a1e87c 100644 --- a/engine/battle/experience.asm +++ b/engine/battle/experience.asm @@ -148,8 +148,8 @@ GainExperience: ; 5524f (15:524f) call GetPartyMonName ld hl, GainedText call PrintText - xor a ; party mon data - ld [wcc49], a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation], a call LoadMonData pop hl ld bc, wPartyMon1Level - wPartyMon1Exp @@ -242,15 +242,15 @@ GainExperience: ; 5524f (15:524f) .printGrewLevelText ld hl, GrewLevelText call PrintText - xor a ; party mon data - ld [wcc49], a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation], a call LoadMonData ld d, $1 callab PrintStatsBox call WaitForTextScrollButtonPress call LoadScreenTilesFromBuffer1 - xor a - ld [wcc49], a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation], a ld a, [wd0b5] ld [wd11e], a predef LearnMoveFromLevelUp diff --git a/engine/battle/init_battle_variables.asm b/engine/battle/init_battle_variables.asm index 5f953046..74df62aa 100644 --- a/engine/battle/init_battle_variables.asm +++ b/engine/battle/init_battle_variables.asm @@ -4,7 +4,7 @@ InitBattleVariables: ; 525af (14:65af) xor a ld [wActionResultOrTookBattleTurn], a ld [wBattleResult], a - ld hl, wcc2b + ld hl, wPartyAndBillsPCSavedMenuItem ld [hli], a ld [hli], a ld [hli], a diff --git a/engine/battle/read_trainer_party.asm b/engine/battle/read_trainer_party.asm index e373ef93..4f72aea1 100755 --- a/engine/battle/read_trainer_party.asm +++ b/engine/battle/read_trainer_party.asm @@ -55,8 +55,8 @@ ReadTrainer: ; 39c53 (e:5c53) and a ; have we reached the end of the trainer data? jr z,.FinishUp ld [wcf91],a ; write species somewhere (XXX why?) - ld a,1 - ld [wcc49],a + ld a,ENEMY_PARTY_DATA + ld [wMonDataLocation],a push hl call AddPartyMon pop hl @@ -72,8 +72,8 @@ ReadTrainer: ; 39c53 (e:5c53) ld [W_CURENEMYLVL],a ld a,[hli] ld [wcf91],a - ld a,1 - ld [wcc49],a + ld a,ENEMY_PARTY_DATA + ld [wMonDataLocation],a push hl call AddPartyMon pop hl diff --git a/engine/evos_moves.asm b/engine/evos_moves.asm index b43fdcae..2b54108d 100755 --- a/engine/evos_moves.asm +++ b/engine/evos_moves.asm @@ -55,8 +55,8 @@ Evolution_PartyMonLoop: ; loop over party mons push hl ld a, [wcf91] push af - xor a - ld [wcc49], a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation], a call LoadMonData pop af ld [wcf91], a @@ -206,7 +206,7 @@ Evolution_PartyMonLoop: ; loop over party mons ld a, [wd0b5] ld [wd11e], a xor a - ld [wcc49], a + ld [wMonDataLocation], a call LearnMoveFromLevelUp pop hl predef SetPartyMonTypes @@ -345,12 +345,13 @@ LearnMoveFromLevelUp: ; 3af5b (e:6f5b) ld a, [hli] ; move ID jr nz, .learnSetLoop ld d, a ; ID of move to learn - ld a, [wcc49] + ld a, [wMonDataLocation] and a jr nz, .next -; if [wcc49] is 0, get the address of the mon's current moves -; there is no reason to make this conditional because the code wouldn't work properly without doing this -; every call to this function sets [wcc49] to 0 +; If [wMonDataLocation] is 0 (PLAYER_PARTY_DATA), get the address of the mon's +; current moves in party data. Every call to this function sets +; [wMonDataLocation] to 0 because other data locations are not supported. +; If it is not 0, this function will not work properly. ld hl, wPartyMon1Moves ld a, [wWhichPokemon] ld bc, wPartyMon2 - wPartyMon1 diff --git a/engine/give_pokemon.asm b/engine/give_pokemon.asm index 0d451bf6..45e88b9c 100755 --- a/engine/give_pokemon.asm +++ b/engine/give_pokemon.asm @@ -16,7 +16,7 @@ _GivePokemon: ; 4fda5 (13:7da5) call SetPokedexOwnedFlag callab SendNewMonToBox ld hl, wcf4b - ld a, [wd5a0] + ld a, [wCurrentBoxNum] and $7f cp 9 jr c, .asm_4fdec diff --git a/engine/in_game_trades.asm b/engine/in_game_trades.asm index fb263995..6f1167d0 100755 --- a/engine/in_game_trades.asm +++ b/engine/in_game_trades.asm @@ -130,11 +130,11 @@ InGameTrade_DoTrade: ; 71c07 (1c:5c07) ld a,[wInGameTradeReceiveMonSpecies] ld [wcf91],a xor a - ld [wcc49],a + ld [wMonDataLocation],a ; not used ld [wRemoveMonFromBox],a call RemovePokemon - ld a,$80 - ld [wcc49],a + ld a,$80 ; prevent the player from naming the mon + ld [wMonDataLocation],a call AddPartyMon call InGameTrade_CopyDataToReceivedMon callab EvolveTradeMon diff --git a/engine/items/items.asm b/engine/items/items.asm index 6ae4e228..b65e8f1e 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -423,8 +423,8 @@ ItemUseBall: ; d687 (3:5687) ld a,[wPartyCount] cp a,PARTY_LENGTH ;is party full? jr z,.sendToBox - xor a - ld [wcc49],a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation],a call ClearSprites call AddPartyMon ;add mon to Party jr .End @@ -1265,14 +1265,14 @@ ItemUseMedicine: ; dabb (3:5abb) ld [wWhichPokemon],a ld a,e ld [wd11e],a - xor a - ld [wcc49],a ; load from player's party + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation],a call LoadMonData ld d,$01 callab PrintStatsBox ; display new stats text box call WaitForTextScrollButtonPress ; wait for button press - xor a - ld [wcc49],a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation],a predef LearnMoveFromLevelUp ; learn level up move, if any xor a ld [wForceEvolution],a @@ -1963,8 +1963,8 @@ ItemUsePPRestore: ; e31e (3:631e) ; unsets zero flag if PP was restored, sets zero flag if not ; however, this is bugged for Max Ethers and Max Elixirs (see below) .restorePP - xor a - ld [wcc49],a ; party pokemon + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation],a call GetMaxPP ld hl,wPartyMon1Moves ld bc,44 @@ -2379,7 +2379,7 @@ AddBonusPP: ; e642 (3:6642) ; gets max PP of a pokemon's move (including PP from PP Ups) ; INPUT: ; [wWhichPokemon] = index of pokemon within party/box -; [wcc49] = pokemon source +; [wMonDataLocation] = pokemon source ; 00: player's party ; 01: enemy's party ; 02: current box @@ -2389,7 +2389,7 @@ AddBonusPP: ; e642 (3:6642) ; OUTPUT: ; [wd11e] = max PP GetMaxPP: ; e677 (3:6677) - ld a,[wcc49] + ld a,[wMonDataLocation] and a ld hl,wPartyMon1Moves ld bc,wPartyMon2 - wPartyMon1 @@ -2426,7 +2426,7 @@ GetMaxPP: ; e677 (3:6677) pop hl push bc ld bc,21 ; PP offset if not player's in-battle pokemon data - ld a,[wcc49] + ld a,[wMonDataLocation] cp a,4 ; player's in-battle pokemon? jr nz,.addPPOffset ld bc,17 ; PP offset if player's in-battle pokemon data diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm index 74d2fa82..e0b405e8 100644 --- a/engine/menu/bills_pc.asm +++ b/engine/menu/bills_pc.asm @@ -1,44 +1,44 @@ -Func_213c8:: ; 213c8 (8:53c8) +DisplayPCMainMenu:: ; 213c8 (8:53c8) xor a ld [H_AUTOBGTRANSFERENABLED], a call SaveScreenTilesToBuffer2 ld a, [wNumHoFTeams] and a - jr nz, .asm_213f3 + jr nz, .leaguePCAvailable ld a, [wd74b] - bit 5, a - jr z, .asm_213ea + bit 5, a ; received pokedex? + jr z, .noOaksPC ld a, [wNumHoFTeams] and a - jr nz, .asm_213f3 + jr nz, .leaguePCAvailable hlCoord 0, 0 - ld b, $8 - ld c, $e - jr .asm_213fa -.asm_213ea + ld b, 8 + ld c, 14 + jr .next +.noOaksPC hlCoord 0, 0 - ld b, $6 - ld c, $e - jr .asm_213fa -.asm_213f3 + ld b, 6 + ld c, 14 + jr .next +.leaguePCAvailable hlCoord 0, 0 - ld b, $a - ld c, $e -.asm_213fa + ld b, 10 + ld c, 14 +.next call TextBoxBorder call UpdateSprites - ld a, $3 + ld a, 3 ld [wMaxMenuItem], a ld a, [wd7f1] bit 0, a - jr nz, .asm_21414 + jr nz, .metBill hlCoord 2, 2 ld de, SomeonesPCText - jr .asm_2141a -.asm_21414 + jr .next2 +.metBill hlCoord 2, 2 ld de, BillsPCText -.asm_2141a +.next2 call PlaceString hlCoord 2, 4 ld de, wPlayerName @@ -48,43 +48,43 @@ Func_213c8:: ; 213c8 (8:53c8) ld de, PlayersPCText call PlaceString ld a, [wd74b] - bit 5, a - jr z, .asm_21462 + bit 5, a ; received pokedex? + jr z, .noOaksPC2 hlCoord 2, 6 ld de, OaksPCText call PlaceString ld a, [wNumHoFTeams] and a - jr z, .asm_2145a - ld a, $4 + jr z, .noLeaguePC + ld a, 4 ld [wMaxMenuItem], a hlCoord 2, 8 ld de, PKMNLeaguePCText call PlaceString hlCoord 2, 10 ld de, LogOffPCText - jr .asm_2146d -.asm_2145a + jr .next3 +.noLeaguePC hlCoord 2, 8 ld de, LogOffPCText - jr .asm_2146d -.asm_21462 + jr .next3 +.noOaksPC2 ld a, $2 ld [wMaxMenuItem], a hlCoord 2, 6 ld de, LogOffPCText -.asm_2146d +.next3 call PlaceString - ld a, $3 + ld a, A_BUTTON | B_BUTTON ld [wMenuWatchedKeys], a - ld a, $2 + ld a, 2 ld [wTopMenuItemY], a - ld a, $1 + ld a, 1 ld [wTopMenuItemX], a xor a ld [wCurrentMenuItem], a ld [wLastMenuItem], a - ld a, $1 + ld a, 1 ld [H_AUTOBGTRANSFERENABLED], a ret @@ -99,23 +99,23 @@ BillsPC_:: ; 0x214c2 ld hl, wd730 set 6, [hl] xor a - ld [wccd3], a + ld [wParentMenuItem], a inc a ; MONSTER_NAME ld [wNameListType], a call LoadHpBarAndStatusTilePatterns ld a, [wListScrollOffset] push af ld a, [wFlags_0xcd60] - bit 3, a + bit 3, a ; accessing Bill's PC through another PC? jr nz, BillsPCMenu +; accessing it directly ld a, $99 call PlaySound ld hl, SwitchOnText call PrintText -Func_214e8: ; 214e8 (8:54e8) -BillsPCMenu: - ld a, [wccd3] +BillsPCMenu: ; 214e8 (8:54e8) + ld a, [wParentMenuItem] ld [wCurrentMenuItem], a ld hl, vChars2 + $780 ld de, PokeballTileGraphics @@ -123,79 +123,81 @@ BillsPCMenu: call CopyVideoData call LoadScreenTilesFromBuffer2DisableBGTransfer hlCoord 0, 0 - ld b, $a - ld c, $c + ld b, 10 + ld c, 12 call TextBoxBorder hlCoord 2, 2 ld de, BillsPCMenuText call PlaceString ld hl, wTopMenuItemY - ld a, $2 - ld [hli], a + ld a, 2 + ld [hli], a ; wTopMenuItemY dec a - ld [hli], a + ld [hli], a ; wTopMenuItemX inc hl inc hl - ld a, $4 - ld [hli], a - ld a, $3 - ld [hli], a + ld a, 4 + ld [hli], a ; wMaxMenuItem + ld a, A_BUTTON | B_BUTTON + ld [hli], a ; wMenuWatchedKeys xor a - ld [hli], a - ld [hli], a + ld [hli], a ; wLastMenuItem + ld [hli], a ; wPartyAndBillsPCSavedMenuItem ld hl, wListScrollOffset - ld [hli], a - ld [hl], a + ld [hli], a ; wListScrollOffset + ld [hl], a ; wMenuWatchMovingOutOfBounds ld [wPlayerMonNumber], a ld hl, WhatText call PrintText hlCoord 9, 14 - ld b, $2 - ld c, $9 + ld b, 2 + ld c, 9 call TextBoxBorder - ld a, [wd5a0] + ld a, [wCurrentBoxNum] and $7f cp 9 - jr c, .asm_2154f + jr c, .singleDigitBoxNum +; two digit box num sub 9 hlCoord 17, 16 ld [hl], "1" add "0" - jr .asm_21551 -.asm_2154f + jr .next +.singleDigitBoxNum add "1" -.asm_21551 +.next Coorda 18, 16 hlCoord 10, 16 ld de, BoxNoPCText call PlaceString - ld a, $1 + ld a, 1 ld [H_AUTOBGTRANSFERENABLED], a call Delay3 call HandleMenuInput bit 1, a - jp nz, Func_21588 ; b button + jp nz, ExitBillsPC ; b button call PlaceUnfilledArrowMenuCursor ld a, [wCurrentMenuItem] - ld [wccd3], a + ld [wParentMenuItem], a and a - jp z, Func_21618 ; withdraw + jp z, BillsPCWithdraw ; withdraw cp $1 - jp z, Func_215ac ; deposit + jp z, BillsPCDeposit ; deposit cp $2 - jp z, Func_21673 ; release + jp z, BillsPCRelease ; release cp $3 - jp z, Func_216b3 ; change box + jp z, BillsPCChangeBox ; change box -Func_21588: ; 21588 (8:5588) +ExitBillsPC: ; 21588 (8:5588) ld a, [wFlags_0xcd60] - bit 3, a - jr nz, .asm_2159a + bit 3, a ; accessing Bill's PC through another PC? + jr nz, .next +; accessing it directly call LoadTextBoxTilePatterns ld a, $9a call PlaySound call WaitForSoundToFinish -.asm_2159a +.next ld hl, wFlags_0xcd60 res 5, [hl] call LoadScreenTilesFromBuffer2 @@ -205,26 +207,25 @@ Func_21588: ; 21588 (8:5588) res 6, [hl] ret -Func_215ac: ; 215ac (8:55ac) -BillsPCDeposit: +BillsPCDeposit: ; 215ac (8:55ac) ld a, [wPartyCount] dec a - jr nz, .asm_215bb + jr nz, .partyLargeEnough ld hl, CantDepositLastMonText call PrintText jp BillsPCMenu -.asm_215bb +.partyLargeEnough ld a, [W_NUMINBOX] cp MONS_PER_BOX - jr nz, .asm_215cb + jr nz, .boxNotFull ld hl, BoxFullText call PrintText jp BillsPCMenu -.asm_215cb +.boxNotFull ld hl, wPartyCount - call Func_216be + call DisplayMonListMenu jp c, BillsPCMenu - call Func_2174b + call DisplayDepositWithdrawMenu jp nc, BillsPCMenu ld a, [wcf91] call GetCryData @@ -236,45 +237,45 @@ BillsPCDeposit: ld [wRemoveMonFromBox], a call RemovePokemon call WaitForSoundToFinish - ld hl, wWhichTrade - ld a, [wd5a0] + ld hl, wBoxNumString + ld a, [wCurrentBoxNum] and $7f cp 9 - jr c, .asm_2160a + jr c, .singleDigitBoxNum sub 9 ld [hl], "1" inc hl add "0" - jr .asm_2160c -.asm_2160a + jr .next +.singleDigitBoxNum add "1" -.asm_2160c +.next ld [hli], a ld [hl], $50 ld hl, MonWasStoredText call PrintText jp BillsPCMenu -Func_21618: ; 21618 (8:5618) +BillsPCWithdraw: ; 21618 (8:5618) ld a, [W_NUMINBOX] and a - jr nz, .asm_21627 + jr nz, .boxNotEmpty ld hl, NoMonText call PrintText - jp Func_214e8 -.asm_21627 + jp BillsPCMenu +.boxNotEmpty ld a, [wPartyCount] cp PARTY_LENGTH - jr nz, .asm_21637 + jr nz, .partyNotFull ld hl, CantTakeMonText call PrintText - jp Func_214e8 -.asm_21637 + jp BillsPCMenu +.partyNotFull ld hl, W_NUMINBOX - call Func_216be - jp c, Func_214e8 - call Func_2174b - jp nc, Func_214e8 + call DisplayMonListMenu + jp c, BillsPCMenu + call DisplayDepositWithdrawMenu + jp nc, BillsPCMenu ld a, [wWhichPokemon] ld hl, wBoxMonNicks call GetPartyMonName @@ -290,25 +291,25 @@ Func_21618: ; 21618 (8:5618) call WaitForSoundToFinish ld hl, MonIsTakenOutText call PrintText - jp Func_214e8 + jp BillsPCMenu -Func_21673: ; 21673 (8:5673) +BillsPCRelease: ; 21673 (8:5673) ld a, [W_NUMINBOX] and a - jr nz, .asm_21682 + jr nz, .loop ld hl, NoMonText call PrintText - jp Func_214e8 -.asm_21682 + jp BillsPCMenu +.loop ld hl, W_NUMINBOX - call Func_216be - jp c, Func_214e8 + call DisplayMonListMenu + jp c, BillsPCMenu ld hl, OnceReleasedText call PrintText call YesNoChoice ld a, [wCurrentMenuItem] and a - jr nz, .asm_21682 + jr nz, .loop inc a ld [wRemoveMonFromBox], a call RemovePokemon @@ -317,13 +318,13 @@ Func_21673: ; 21673 (8:5673) call PlayCry ld hl, MonWasReleasedText call PrintText - jp Func_214e8 + jp BillsPCMenu -Func_216b3: ; 216b3 (8:56b3) +BillsPCChangeBox: ; 216b3 (8:56b3) callba ChangeBox - jp Func_214e8 + jp BillsPCMenu -Func_216be: ; 216be (8:56be) +DisplayMonListMenu: ; 216be (8:56be) ld a, l ld [wListPointer], a ld a, h @@ -333,11 +334,11 @@ Func_216be: ; 216be (8:56be) ld [wListMenuID], a inc a ; MONSTER_NAME ld [wNameListType], a - ld a, [wcc2b] + ld a, [wPartyAndBillsPCSavedMenuItem] ld [wCurrentMenuItem], a call DisplayListMenuID ld a, [wCurrentMenuItem] - ld [wcc2b], a + ld [wPartyAndBillsPCSavedMenuItem], a ret BillsPCMenuText: ; 216e1 (8:56e1) @@ -354,17 +355,19 @@ ENDC BoxNoPCText: ; 21713 (8:5713) db "BOX No.@" -Func_2171b:: ; 2171b (8:571b) +KnowsHMMove:: ; 2171b (8:571b) +; returns whether mon with party index [wWhichPokemon] knows an HM move ld hl, wPartyMon1Moves ld bc, wPartyMon2 - wPartyMon1 - jr .asm_21729 + jr .next +; unreachable ld hl, wBoxMon1Moves ld bc, wBoxMon2 - wBoxMon1 -.asm_21729 +.next ld a, [wWhichPokemon] call AddNTimes ld b, NUM_MOVES -.asm_21731 +.loop ld a, [hli] push hl push bc @@ -375,7 +378,7 @@ Func_2171b:: ; 2171b (8:571b) pop hl ret c dec b - jr nz, .asm_21731 + jr nz, .loop and a ret @@ -387,72 +390,72 @@ HMMoveArray: ; 21745 (8:5745) db FLASH db -1 -Func_2174b: ; 2174b (8:574b) +DisplayDepositWithdrawMenu: ; 2174b (8:574b) hlCoord 9, 10 - ld b, $6 - ld c, $9 + ld b, 6 + ld c, 9 call TextBoxBorder - ld a, [wccd3] - and a + ld a, [wParentMenuItem] + and a ; was the Deposit or Withdraw item selected in the parent menu? ld de, DepositPCText - jr nz, .asm_21761 + jr nz, .next ld de, WithdrawPCText -.asm_21761 +.next hlCoord 11, 12 call PlaceString hlCoord 11, 14 ld de, StatsCancelPCText call PlaceString ld hl, wTopMenuItemY - ld a, $c - ld [hli], a - ld a, $a - ld [hli], a + ld a, 12 + ld [hli], a ; wTopMenuItemY + ld a, 10 + ld [hli], a ; wTopMenuItemX xor a - ld [hli], a + ld [hli], a ; wCurrentMenuItem inc hl - ld a, $2 - ld [hli], a - ld a, $3 - ld [hli], a + ld a, 2 + ld [hli], a ; wMaxMenuItem + ld a, A_BUTTON | B_BUTTON + ld [hli], a ; wMenuWatchedKeys xor a - ld [hl], a + ld [hl], a ; wLastMenuItem ld hl, wListScrollOffset - ld [hli], a - ld [hl], a + ld [hli], a ; wListScrollOffset + ld [hl], a ; wMenuWatchMovingOutOfBounds ld [wPlayerMonNumber], a - ld [wcc2b], a -.asm_2178f + ld [wPartyAndBillsPCSavedMenuItem], a +.loop call HandleMenuInput - bit 1, a - jr nz, .asm_2179f + bit 1, a ; pressed B? + jr nz, .exit ld a, [wCurrentMenuItem] and a - jr z, .asm_217a1 + jr z, .choseDepositWithdraw dec a - jr z, .asm_217a3 -.asm_2179f + jr z, .viewStats +.exit and a ret -.asm_217a1 +.choseDepositWithdraw scf ret -.asm_217a3 +.viewStats call SaveScreenTilesToBuffer1 - ld a, [wccd3] + ld a, [wParentMenuItem] and a - ld a, $0 - jr nz, .asm_217b0 - ld a, $2 -.asm_217b0 - ld [wcc49], a + ld a, PLAYER_PARTY_DATA + jr nz, .next2 + ld a, BOX_DATA +.next2 + ld [wMonDataLocation], a predef StatusScreen predef StatusScreen2 call LoadScreenTilesFromBuffer1 call ReloadTilesetTilePatterns call GoPAL_SET_CF1C call LoadGBPal - jr .asm_2178f + jr .loop DepositPCText: db "DEPOSIT@" WithdrawPCText: db "WITHDRAW@" @@ -518,9 +521,9 @@ CableClubLeftGameboy:: ; 5824 (8:5825) ld a, [W_CURMAP] cp BATTLE_CENTER ld a, LINK_STATE_START_TRADE - jr z, .asm_2183a + jr z, .next inc a ; LINK_STATE_START_BATTLE -.asm_2183a +.next ld [wLinkState], a call EnableAutoTextBoxDrawing tx_pre_jump JustAMomentText @@ -535,9 +538,9 @@ CableClubRightGameboy:: ; 5845 (8:5845) ld a, [W_CURMAP] cp BATTLE_CENTER ld a, LINK_STATE_START_TRADE - jr z, .asm_2185a + jr z, .next inc a ; LINK_STATE_START_BATTLE -.asm_2185a +.next ld [wLinkState], a call EnableAutoTextBoxDrawing tx_pre_jump JustAMomentText diff --git a/engine/menu/main_menu.asm b/engine/menu/main_menu.asm index 55c559f5..14480b0a 100755 --- a/engine/menu/main_menu.asm +++ b/engine/menu/main_menu.asm @@ -16,7 +16,7 @@ MainMenu: ; 5af2 (1:5af2) call DelayFrames xor a ; LINK_STATE_NONE ld [wLinkState],a - ld hl,wcc2b + ld hl,wPartyAndBillsPCSavedMenuItem ld [hli],a ld [hli],a ld [hli],a @@ -457,7 +457,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) ld a,3 ; text speed cursor Y coordinate ld [wTopMenuItemY],a call SetCursorPositionsFromOptions - ld a,[wWhichTrade] ; text speed cursor X coordinate + ld a,[wOptionsTextSpeedCursorX] ; text speed cursor X coordinate ld [wTopMenuItemX],a ld a,$01 ld [H_AUTOBGTRANSFERENABLED],a ; enable auto background transfer @@ -507,7 +507,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) .downPressed cp a,16 ld b,-13 - ld hl,wWhichTrade + ld hl,wOptionsTextSpeedCursorX jr z,.updateMenuVariables ld b,5 cp a,3 @@ -522,7 +522,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) .upPressed cp a,8 ld b,-5 - ld hl,wWhichTrade + ld hl,wOptionsTextSpeedCursorX jr z,.updateMenuVariables cp a,13 inc hl @@ -541,17 +541,17 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) call PlaceUnfilledArrowMenuCursor jp .loop .cursorInBattleAnimation - ld a,[wTrainerEngageDistance] ; battle animation cursor X coordinate + ld a,[wOptionsBattleAnimCursorX] ; battle animation cursor X coordinate xor a,$0b ; toggle between 1 and 10 - ld [wTrainerEngageDistance],a + ld [wOptionsBattleAnimCursorX],a jp .eraseOldMenuCursor .cursorInBattleStyle - ld a,[wTrainerFacingDirection] ; battle style cursor X coordinate + ld a,[wOptionsBattleStyleCursorX] ; battle style cursor X coordinate xor a,$0b ; toggle between 1 and 10 - ld [wTrainerFacingDirection],a + ld [wOptionsBattleStyleCursorX],a jp .eraseOldMenuCursor .pressedLeftInTextSpeed - ld a,[wWhichTrade] ; text speed cursor X coordinate + ld a,[wOptionsTextSpeedCursorX] ; text speed cursor X coordinate cp a,1 jr z,.updateTextSpeedXCoord cp a,7 @@ -562,7 +562,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) sub a,7 jr .updateTextSpeedXCoord .pressedRightInTextSpeed - ld a,[wWhichTrade] ; text speed cursor X coordinate + ld a,[wOptionsTextSpeedCursorX] ; text speed cursor X coordinate cp a,14 jr z,.updateTextSpeedXCoord cp a,7 @@ -572,7 +572,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) .fromFastToMedium add a,6 .updateTextSpeedXCoord - ld [wWhichTrade],a ; text speed cursor X coordinate + ld [wOptionsTextSpeedCursorX],a ; text speed cursor X coordinate jp .eraseOldMenuCursor TextSpeedOptionText: ; 5fc0 (1:5fc0) @@ -593,7 +593,7 @@ OptionMenuCancelText: ; 6018 (1:6018) ; sets the options variable according to the current placement of the menu cursors in the options menu SetOptionsFromCursorPositions: ; 601f (1:601f) ld hl,TextSpeedOptionData - ld a,[wWhichTrade] ; text speed cursor X coordinate + ld a,[wOptionsTextSpeedCursorX] ; text speed cursor X coordinate ld c,a .loop ld a,[hli] @@ -604,7 +604,7 @@ SetOptionsFromCursorPositions: ; 601f (1:601f) .textSpeedMatchFound ld a,[hl] ld d,a - ld a,[wTrainerEngageDistance] ; battle animation cursor X coordinate + ld a,[wOptionsBattleAnimCursorX] ; battle animation cursor X coordinate dec a jr z,.battleAnimationOn .battleAnimationOff @@ -613,7 +613,7 @@ SetOptionsFromCursorPositions: ; 601f (1:601f) .battleAnimationOn res 7,d .checkBattleStyle - ld a,[wTrainerFacingDirection] ; battle style cursor X coordinate + ld a,[wOptionsBattleStyleCursorX] ; battle style cursor X coordinate dec a jr z,.battleStyleShift .battleStyleSet @@ -638,7 +638,7 @@ SetCursorPositionsFromOptions: ; 604c (1:604c) pop bc dec hl ld a,[hl] - ld [wWhichTrade],a ; text speed cursor X coordinate + ld [wOptionsTextSpeedCursorX],a ; text speed cursor X coordinate hlCoord 0, 3 call .placeUnfilledRightArrow sla c @@ -646,7 +646,7 @@ SetCursorPositionsFromOptions: ; 604c (1:604c) jr nc,.storeBattleAnimationCursorX ld a,10 ; Off .storeBattleAnimationCursorX - ld [wTrainerEngageDistance],a ; battle animation cursor X coordinate + ld [wOptionsBattleAnimCursorX],a ; battle animation cursor X coordinate hlCoord 0, 8 call .placeUnfilledRightArrow sla c @@ -654,7 +654,7 @@ SetCursorPositionsFromOptions: ; 604c (1:604c) jr nc,.storeBattleStyleCursorX ld a,10 .storeBattleStyleCursorX - ld [wTrainerFacingDirection],a ; battle style cursor X coordinate + ld [wOptionsBattleStyleCursorX],a ; battle style cursor X coordinate hlCoord 0, 13 call .placeUnfilledRightArrow ; cursor in front of Cancel diff --git a/engine/menu/pc.asm b/engine/menu/pc.asm index 2b8b9e92..8ee40c7c 100755 --- a/engine/menu/pc.asm +++ b/engine/menu/pc.asm @@ -10,7 +10,7 @@ ActivatePC: ; 17e2c (5:7e2c) call LoadScreenTilesFromBuffer2 call Delay3 PCMainMenu: ; 17e48 (5:7e48) - callba Func_213c8 + callba DisplayPCMainMenu ld hl, wFlags_0xcd60 set 5, [hl] call HandleMenuInput diff --git a/engine/menu/players_pc.asm b/engine/menu/players_pc.asm index b78ba5fb..f436ae24 100755 --- a/engine/menu/players_pc.asm +++ b/engine/menu/players_pc.asm @@ -5,18 +5,19 @@ PlayerPC: ; 78e6 (1:78e6) ld [wNameListType], a call SaveScreenTilesToBuffer1 xor a - ld [wcc2c], a - ld [wccd3], a + ld [wBagSavedMenuItem], a + ld [wParentMenuItem], a ld a, [wFlags_0xcd60] - bit 3, a - jr nz, Func_790c + bit 3, a ; accessing player's PC through another PC? + jr nz, PlayerPCMenu +; accessing it directly ld a, (SFX_02_45 - SFX_Headers_02) / 3 call PlaySound ld hl, TurnedOnPC2Text call PrintText -Func_790c: ; 790c (1:790c) - ld a, [wccd3] +PlayerPCMenu: ; 790c (1:790c) + ld a, [wParentMenuItem] ld [wCurrentMenuItem], a ld hl, wFlags_0xcd60 set 5, [hl] @@ -30,69 +31,69 @@ Func_790c: ; 790c (1:790c) ld de, PlayersPCMenuEntries call PlaceString ld hl, wTopMenuItemY - ld a, $2 - ld [hli], a + ld a, 2 + ld [hli], a ; wTopMenuItemY dec a - ld [hli], a + ld [hli], a ; wTopMenuItemX inc hl inc hl - ld a, $3 - ld [hli], a - ld a, $3 - ld [hli], a + ld a, 3 + ld [hli], a ; wMaxMenuItem + ld a, A_BUTTON | B_BUTTON + ld [hli], a ; wMenuWatchedKeys xor a ld [hl], a ld hl, wListScrollOffset - ld [hli], a - ld [hl], a + ld [hli], a ; wListScrollOffset + ld [hl], a ; wMenuWatchMovingOutOfBounds ld [wPlayerMonNumber], a ld hl, WhatDoYouWantText call PrintText call HandleMenuInput bit 1, a - jp nz, Func_796d + jp nz, ExitPlayerPC call PlaceUnfilledArrowMenuCursor ld a, [wCurrentMenuItem] - ld [wccd3], a + ld [wParentMenuItem], a and a - jp z, Func_7a12 + jp z, PlayerPCWithdraw dec a - jp z, Func_7995 + jp z, PlayerPCDeposit dec a - jp z, Func_7a8f + jp z, PlayerPCToss -Func_796d: ; 796d (1:796d) +ExitPlayerPC: ; 796d (1:796d) ld a, [wFlags_0xcd60] - bit 3, a - jr nz, .asm_797c + bit 3, a ; accessing player's PC through another PC? + jr nz, .next +; accessing it directly ld a, (SFX_02_46 - SFX_Headers_02) / 3 call PlaySound call WaitForSoundToFinish -.asm_797c +.next ld hl, wFlags_0xcd60 res 5, [hl] call LoadScreenTilesFromBuffer2 xor a ld [wListScrollOffset], a - ld [wcc2c], a + ld [wBagSavedMenuItem], a ld hl, wd730 res 6, [hl] xor a ld [wDoNotWaitForButtonPressAfterDisplayingText], a ret -Func_7995: ; 7995 (1:7995) +PlayerPCDeposit: ; 7995 (1:7995) xor a ld [wCurrentMenuItem], a ld [wListScrollOffset], a ld a, [wNumBagItems] and a - jr nz, Func_79ab + jr nz, .loop ld hl, NothingToDepositText call PrintText - jp Func_790c - -Func_79ab: ; 79ab (1:79ab) + jp PlayerPCMenu +.loop ld hl, WhatToDepositText call PrintText ld hl, wNumBagItems @@ -102,29 +103,30 @@ Func_79ab: ; 79ab (1:79ab) ld [wListPointer + 1], a xor a ld [wPrintItemPrices], a - ld a, $3 + ld a, ITEMLISTMENU ld [wListMenuID], a call DisplayListMenuID - jp c, Func_790c + jp c, PlayerPCMenu call IsKeyItem - ld a, $1 + ld a, 1 ld [wItemQuantity], a ld a, [wIsKeyItem] and a - jr nz, .asm_79e7 + jr nz, .next +; if it's not a key item, there can be more than one of the item ld hl, DepositHowManyText call PrintText call DisplayChooseQuantityMenu cp $ff - jp z, Func_79ab -.asm_79e7 + jp z, .loop +.next ld hl, wNumBoxItems call AddItemToInventory - jr c, .asm_79f8 + jr c, .roomAvailable ld hl, NoRoomToStoreText call PrintText - jp Func_79ab -.asm_79f8 + jp .loop +.roomAvailable ld hl, wNumBagItems call RemoveItemFromInventory call WaitForSoundToFinish @@ -133,20 +135,19 @@ Func_79ab: ; 79ab (1:79ab) call WaitForSoundToFinish ld hl, ItemWasStoredText call PrintText - jp Func_79ab + jp .loop -Func_7a12: ; 7a12 (1:7a12) +PlayerPCWithdraw: ; 7a12 (1:7a12) xor a ld [wCurrentMenuItem], a ld [wListScrollOffset], a ld a, [wNumBoxItems] and a - jr nz, Func_7a28 + jr nz, .loop ld hl, NothingStoredText call PrintText - jp Func_790c - -Func_7a28: ; 7a28 (1:7a28) + jp PlayerPCMenu +.loop ld hl, WhatToWithdrawText call PrintText ld hl, wNumBoxItems @@ -156,29 +157,30 @@ Func_7a28: ; 7a28 (1:7a28) ld [wListPointer + 1], a xor a ld [wPrintItemPrices], a - ld a, $3 + ld a, ITEMLISTMENU ld [wListMenuID], a call DisplayListMenuID - jp c, Func_790c + jp c, PlayerPCMenu call IsKeyItem - ld a, $1 + ld a, 1 ld [wItemQuantity], a ld a, [wIsKeyItem] and a - jr nz, .asm_7a64 + jr nz, .next +; if it's not a key item, there can be more than one of the item ld hl, WithdrawHowManyText call PrintText call DisplayChooseQuantityMenu cp $ff - jp z, Func_7a28 -.asm_7a64 + jp z, .loop +.next ld hl, wNumBagItems call AddItemToInventory - jr c, .asm_7a75 + jr c, .roomAvailable ld hl, CantCarryMoreText call PrintText - jp Func_7a28 -.asm_7a75 + jp .loop +.roomAvailable ld hl, wNumBoxItems call RemoveItemFromInventory call WaitForSoundToFinish @@ -187,20 +189,19 @@ Func_7a28: ; 7a28 (1:7a28) call WaitForSoundToFinish ld hl, WithdrewItemText call PrintText - jp Func_7a28 + jp .loop -Func_7a8f: ; 7a8f (1:7a8f) +PlayerPCToss: ; 7a8f (1:7a8f) xor a ld [wCurrentMenuItem], a ld [wListScrollOffset], a ld a, [wNumBoxItems] and a - jr nz, Func_7aa5 + jr nz, .loop ld hl, NothingStoredText call PrintText - jp Func_790c - -Func_7aa5: ; 7aa5 (1:7aa5) + jp PlayerPCMenu +.loop ld hl, WhatToTossText call PrintText ld hl, wNumBoxItems @@ -210,33 +211,34 @@ Func_7aa5: ; 7aa5 (1:7aa5) ld [wListPointer + 1], a xor a ld [wPrintItemPrices], a - ld a, $3 + ld a, ITEMLISTMENU ld [wListMenuID], a push hl call DisplayListMenuID pop hl - jp c, Func_790c + jp c, PlayerPCMenu push hl call IsKeyItem pop hl - ld a, $1 + ld a, 1 ld [wItemQuantity], a ld a, [wIsKeyItem] and a - jr nz, .asm_7aef + jr nz, .next ld a, [wcf91] call IsItemHM - jr c, .asm_7aef + jr c, .next +; if it's not a key item, there can be more than one of the item push hl ld hl, TossHowManyText call PrintText call DisplayChooseQuantityMenu pop hl cp $ff - jp z, Func_7aa5 -.asm_7aef - call TossItem - jp Func_7aa5 + jp z, .loop +.next + call TossItem ; disallows tossing key items + jp .loop PlayersPCMenuEntries: ; 7af5 (1:7af5) db "WITHDRAW ITEM" diff --git a/engine/menu/start_menu.asm b/engine/menu/start_menu.asm index 0db0d052..7aa09df7 100755 --- a/engine/menu/start_menu.asm +++ b/engine/menu/start_menu.asm @@ -54,7 +54,7 @@ RedisplayStartMenu:: ; 2adf (0:2adf) .buttonPressed ; A, B, or Start button pressed call PlaceUnfilledArrowMenuCursor ld a,[wCurrentMenuItem] - ld [wcc2d],a ; save current menu item ID + ld [wBattleAndStartSavedMenuItem],a ; save current menu selection ld a,b and a,%00001010 ; was the Start button or B button pressed? jp nz,CloseStartMenu diff --git a/engine/menu/start_sub_menus.asm b/engine/menu/start_sub_menus.asm index 762a3de1..11b7fa90 100755 --- a/engine/menu/start_sub_menus.asm +++ b/engine/menu/start_sub_menus.asm @@ -81,22 +81,22 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) jp z,.choseStats ld c,a ld b,0 - ld hl,wWhichTrade + ld hl,wFieldMoves add hl,bc jp .choseOutOfBattleMove .choseSwitch ld a,[wPartyCount] cp a,2 ; is there more than one pokemon in the party? jp c,StartMenu_Pokemon ; if not, no switching - call SwitchPartyMon_Stats + call SwitchPartyMon_InitVarOrSwapData ; init [wMenuItemToSwap] ld a,SWAP_MONS_PARTY_MENU ld [wPartyMenuTypeOrMessageID],a call GoBackToPartyMenu jp .checkIfPokemonChosen .choseStats call ClearSprites - xor a - ld [wcc49],a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation],a predef StatusScreen predef StatusScreen2 call ReloadMapData @@ -256,14 +256,14 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) ld a,[H_QUOTIENT + 2] sbc b jp nc,.notHealthyEnough - ld a,[wcc2b] + ld a,[wPartyAndBillsPCSavedMenuItem] push af ld a,POTION ld [wcf91],a ld [wd152],a call UseItem pop af - ld [wcc2b],a + ld [wPartyAndBillsPCSavedMenuItem],a jp .loop .notHealthyEnough ; if current HP is less than 1/5 of max HP ld hl,.notHealthyEnoughText @@ -316,11 +316,11 @@ StartMenu_Item: ; 13302 (4:7302) ld [wPrintItemPrices],a ld a,ITEMLISTMENU ld [wListMenuID],a - ld a,[wcc2c] + ld a,[wBagSavedMenuItem] ld [wCurrentMenuItem],a call DisplayListMenuID ld a,[wCurrentMenuItem] - ld [wcc2c],a + ld [wBagSavedMenuItem],a jr nc,.choseItem .exitMenu call LoadScreenTilesFromBuffer2 ; restore saved screen @@ -566,7 +566,7 @@ DrawTrainerInfo: ; 1349a (4:749a) ld de,vChars1 + $570 call TrainerInfo_FarCopyData call EnableLCD - ld hl,wWhichTrade + ld hl,wTrainerInfoTextBoxWidthPlus1 ld a,18 + 1 ld [hli],a dec a @@ -574,7 +574,7 @@ DrawTrainerInfo: ; 1349a (4:749a) ld [hl],1 hlCoord 0, 0 call TrainerInfo_DrawTextBox - ld hl,wWhichTrade + ld hl,wTrainerInfoTextBoxWidthPlus1 ld a,16 + 1 ld [hli],a dec a @@ -627,15 +627,15 @@ TrainerInfo_BadgesText: ; 13597 (4:7597) ; height is always 6 ; INPUT: ; hl = destination address -; [wWhichTrade] = width + 1 -; [wTrainerEngageDistance] = width -; [wTrainerFacingDirection] = distance from the end of a text box row to the start of the next +; [wTrainerInfoTextBoxWidthPlus1] = width +; [wTrainerInfoTextBoxWidth] = width - 1 +; [wTrainerInfoTextBoxNextRowOffset] = distance from the end of a text box row to the start of the next TrainerInfo_DrawTextBox: ; 135a0 (4:75a0) ld a,$79 ; upper left corner tile ID ld de,$7a7b ; top edge and upper right corner tile ID's call TrainerInfo_DrawHorizontalEdge ; draw top edge call TrainerInfo_NextTextBoxRow - ld a,[wWhichTrade] ; width of the text box plus one + ld a,[wTrainerInfoTextBoxWidthPlus1] ld e,a ld d,0 ld c,6 ; height of the text box @@ -651,7 +651,7 @@ TrainerInfo_DrawTextBox: ; 135a0 (4:75a0) TrainerInfo_DrawHorizontalEdge: ; 135c3 (4:75c3) ld [hli],a ; place left corner tile - ld a,[wTrainerEngageDistance] ; width of the text box + ld a,[wTrainerInfoTextBoxWidth] ld c,a ld a,d .loop @@ -663,7 +663,7 @@ TrainerInfo_DrawHorizontalEdge: ; 135c3 (4:75c3) ret TrainerInfo_NextTextBoxRow: ; 135d0 (4:75d0) - ld a,[wTrainerFacingDirection] ; distance to the start of the next row + ld a,[wTrainerInfoTextBoxNextRowOffset] ; distance to the start of the next row .loop inc hl dec a @@ -704,62 +704,65 @@ StartMenu_Option: ; 135f6 (4:75f6) jp RedisplayStartMenu SwitchPartyMon: ; 13613 (4:7613) - call SwitchPartyMon_Stats - ld a, [wWhichTrade] - call SwitchPartyMon_OAM + call SwitchPartyMon_InitVarOrSwapData ; swap data + ld a, [wSwappedMenuItem] + call SwitchPartyMon_ClearGfx ld a, [wCurrentMenuItem] - call SwitchPartyMon_OAM + call SwitchPartyMon_ClearGfx jp RedrawPartyMenu_ -SwitchPartyMon_OAM: ; 13625 (4:7625) +SwitchPartyMon_ClearGfx: ; 13625 (4:7625) push af hlCoord 0, 0 ld bc, SCREEN_WIDTH * 2 call AddNTimes ld c, SCREEN_WIDTH * 2 ld a, " " -.asm_13633 +.clearMonBGLoop ; clear the mon's row in the party menu ld [hli], a dec c - jr nz, .asm_13633 + jr nz, .clearMonBGLoop pop af ld hl, wOAMBuffer ld bc, $10 call AddNTimes ld de, $4 ld c, e -.asm_13645 +.clearMonOAMLoop ld [hl], $a0 add hl, de dec c - jr nz, .asm_13645 + jr nz, .clearMonOAMLoop call WaitForSoundToFinish ld a, (SFX_02_58 - SFX_Headers_02) / 3 jp PlaySound -SwitchPartyMon_Stats: ; 13653 (4:7653) +SwitchPartyMon_InitVarOrSwapData: ; 13653 (4:7653) +; This is used to initialise [wMenuItemToSwap] and to actually swap the data. ld a, [wMenuItemToSwap] - and a - jr nz, .asm_13661 + and a ; has [wMenuItemToSwap] been initialised yet? + jr nz, .pickedMonsToSwap +; If not, initialise [wMenuItemToSwap] so that it matches the current mon. ld a, [wWhichPokemon] - inc a + inc a ; [wMenuItemToSwap] counts from 1 ld [wMenuItemToSwap], a ret -.asm_13661 +.pickedMonsToSwap xor a ld [wPartyMenuTypeOrMessageID], a ld a, [wMenuItemToSwap] dec a ld b, a ld a, [wCurrentMenuItem] - ld [wWhichTrade], a - cp b - jr nz, .asm_1367b + ld [wSwappedMenuItem], a + cp b ; swapping a mon with itself? + jr nz, .swappingDifferentMons +; can't swap a mon with itself xor a ld [wMenuItemToSwap], a ld [wPartyMenuTypeOrMessageID], a ret -.asm_1367b +.swappingDifferentMons ld a, b ld [wMenuItemToSwap], a push hl @@ -770,20 +773,20 @@ SwitchPartyMon_Stats: ; 13653 (4:7653) ld a, [wCurrentMenuItem] add l ld l, a - jr nc, .asm_1368e + jr nc, .noCarry inc h -.asm_1368e +.noCarry ld a, [wMenuItemToSwap] add e ld e, a - jr nc, .asm_13696 + jr nc, .noCarry2 inc d -.asm_13696 +.noCarry2 ld a, [hl] - ld [H_DIVIDEND], a ; (aliases: H_PRODUCT, H_PASTLEADINGZEROES, H_QUOTIENT) + ld [hSwapTemp], a ld a, [de] ld [hl], a - ld a, [H_DIVIDEND] ; (aliases: H_PRODUCT, H_PASTLEADINGZEROES, H_QUOTIENT) + ld a, [hSwapTemp] ld [de], a ld hl, wPartyMons ld bc, wPartyMon2 - wPartyMon1 @@ -791,19 +794,19 @@ SwitchPartyMon_Stats: ; 13653 (4:7653) call AddNTimes push hl ld de, wSwitchPartyMonTempBuffer - ld bc, $2c + ld bc, wPartyMon2 - wPartyMon1 call CopyData ld hl, wPartyMons - ld bc, $2c + ld bc, wPartyMon2 - wPartyMon1 ld a, [wMenuItemToSwap] call AddNTimes pop de push hl - ld bc, $2c + ld bc, wPartyMon2 - wPartyMon1 call CopyData pop de ld hl, wSwitchPartyMonTempBuffer - ld bc, $2c + ld bc, wPartyMon2 - wPartyMon1 call CopyData ld hl, wPartyMonOT ld a, [wCurrentMenuItem] @@ -842,7 +845,7 @@ SwitchPartyMon_Stats: ; 13653 (4:7653) ld bc, $b call CopyData ld a, [wMenuItemToSwap] - ld [wWhichTrade], a + ld [wSwappedMenuItem], a xor a ld [wMenuItemToSwap], a ld [wPartyMenuTypeOrMessageID], a diff --git a/engine/menu/status_screen.asm b/engine/menu/status_screen.asm index 32cbf519..3f73a84f 100755 --- a/engine/menu/status_screen.asm +++ b/engine/menu/status_screen.asm @@ -65,9 +65,10 @@ DrawHP_: ; 128fb (4:68fb) ; Predef 0x37 StatusScreen: ; 12953 (4:6953) call LoadMonData - ld a, [wcc49] - cp $2 ; 2 means we're in a PC box + ld a, [wMonDataLocation] + cp BOX_DATA jr c, .DontRecalculate +; mon is in a box or daycare ld a, [wLoadedMonBoxLevel] ld [wLoadedMonLevel], a ld [W_CURENEMYLVL], a @@ -148,13 +149,13 @@ StatusScreen: ; 12953 (4:6953) hlCoord 11, 10 predef PrintMonType ld hl, NamePointers2 - call .asm_12a7e + call .GetStringPointer ld d, h ld e, l hlCoord 9, 1 call PlaceString ; Pokémon name ld hl, OTPointers - call .asm_12a7e + call .GetStringPointer ld d, h ld e, l hlCoord 12, 16 @@ -175,17 +176,18 @@ StatusScreen: ; 12953 (4:6953) pop af ld [hTilesetType], a ret -.asm_12a7e ; I don't know what this does, iterates over pointers? - ld a, [wcc49] + +.GetStringPointer + ld a, [wMonDataLocation] add a ld c, a - ld b, $0 + ld b, 0 add hl, bc ld a, [hli] ld h, [hl] ld l, a - ld a, [wcc49] - cp $3 + ld a, [wMonDataLocation] + cp DAYCARE_DATA ret z ld a, [wWhichPokemon] jp SkipFixedLengthTextEntries diff --git a/engine/save.asm b/engine/save.asm index ac97e6ba..6dc1a46c 100755 --- a/engine/save.asm +++ b/engine/save.asm @@ -309,7 +309,7 @@ Func_73863: ; 73863 (1c:7863) Func_7387b: ; 7387b (1c:787b) ld hl, PointerTable_73895 - ld a, [wd5a0] + ld a, [wCurrentBoxNum] and $7f cp NUM_BOXES / 2 ld b, $2 @@ -341,7 +341,7 @@ ChangeBox:: ; 738a1 (1c:78a1) ld a, [wCurrentMenuItem] and a ret nz ; return if No was chosen - ld hl, wd5a0 + ld hl, wCurrentBoxNum bit 7, [hl] call z, Func_73a29 call Func_7393f @@ -360,7 +360,7 @@ ChangeBox:: ; 738a1 (1c:78a1) call Func_7390e ld a, [wCurrentMenuItem] set 7, a - ld [wd5a0], a + ld [wCurrentBoxNum], a call Func_7387b ld de, W_NUMINBOX call Func_7390e @@ -422,7 +422,7 @@ Func_7393f: ; 7393f (1c:793f) ld [wTopMenuItemX], a xor a ld [wMenuWatchMovingOutOfBounds], a - ld a, [wd5a0] + ld a, [wCurrentBoxNum] and $7f ld [wCurrentMenuItem], a ld [wLastMenuItem], a @@ -443,7 +443,7 @@ Func_7393f: ; 7393f (1c:793f) call PlaceString ld hl, hFlags_0xFFF6 res 2, [hl] - ld a, [wd5a0] + ld a, [wCurrentBoxNum] and $7f cp 9 jr c, .asm_739a6 @@ -561,7 +561,7 @@ Func_73a84: ; 73a84 (1c:7a84) ld [MBC1SRamBankingMode], a ld [MBC1SRamEnable], a pop hl - ld a, [wd5a0] + ld a, [wCurrentBoxNum] and $7f ld c, a ld b, $0 diff --git a/home.asm b/home.asm index f2226eea..1230f07f 100644 --- a/home.asm +++ b/home.asm @@ -243,7 +243,7 @@ DrawHPBar:: ; 1336 (0:1336) ; loads base stats to W_MONHDEXNUM ; INPUT: ; [wWhichPokemon] = index of pokemon within party/box -; [wcc49] = source +; [wMonDataLocation] = source ; 00: player's party ; 01: enemy's party ; 02: current box @@ -376,15 +376,15 @@ PartyMenuInit:: ; 1420 (0:1420) call LoadHpBarAndStatusTilePatterns ld hl, wd730 set 6, [hl] ; turn off letter printing delay - xor a - ld [wcc49], a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation], a ld [wMenuWatchMovingOutOfBounds], a ld hl, wTopMenuItemY inc a ld [hli], a ; top menu item Y xor a ld [hli], a ; top menu item X - ld a, [wcc2b] + ld a, [wPartyAndBillsPCSavedMenuItem] push af ld [hli], a ; current menu item ID inc hl @@ -420,7 +420,7 @@ HandlePartyMenuInput:: ; 145a (0:145a) xor a ld [wd09b],a ld a,[wCurrentMenuItem] - ld [wcc2b],a + ld [wPartyAndBillsPCSavedMenuItem],a ld hl,wd730 res 6,[hl] ; turn on letter printing delay ld a,[wMenuItemToSwap] @@ -1803,11 +1803,11 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a) ld hl,wPartyCount ld a,[wListPointer] cp l ; is it a list of party pokemon or box pokemon? - ld a,$00 + ld a,PLAYER_PARTY_DATA jr z,.next - ld a,$02 + ld a,BOX_DATA .next - ld [wcc49],a + ld [wMonDataLocation],a ld hl,wWhichPokemon ld a,[hl] ld b,a @@ -1818,7 +1818,7 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a) add b ld [hl],a call LoadMonData ; load pokemon info - ld a,[wcc49] + ld a,[wMonDataLocation] and a ; is it a list of party pokemon or box pokemon? jr z,.skipCopyingLevel .copyLevel @@ -2751,7 +2751,7 @@ SetSpriteImageIndexAfterSettingFacingDirection:: ; 34b9 (0:34b9) ; INPUT: ; hl = address of array ; OUTPUT: -; [wWhichTrade] = if there is match, the matching array index +; [wCoordIndex] = if there is match, the matching array index ; sets carry if the coordinates are in the array, clears carry if not ArePlayerCoordsInArray:: ; 34bf (0:34bf) ld a,[W_YCOORD] @@ -2762,13 +2762,13 @@ ArePlayerCoordsInArray:: ; 34bf (0:34bf) CheckCoords:: ; 34c7 (0:34c7) xor a - ld [wWhichTrade],a + ld [wCoordIndex],a .loop ld a,[hli] cp a,$ff ; reached terminator? jr z,.notInArray push hl - ld hl,wWhichTrade + ld hl,wCoordIndex inc [hl] pop hl .compareYCoord @@ -2792,7 +2792,7 @@ CheckCoords:: ; 34c7 (0:34c7) ; hl = address of array ; [H_SPRITEINDEX] = index of boulder sprite ; OUTPUT: -; [wWhichTrade] = if there is match, the matching array index +; [wCoordIndex] = if there is match, the matching array index ; sets carry if the coordinates are in the array, clears carry if not CheckBoulderCoords:: ; 34e4 (0:34e4) push hl @@ -4586,8 +4586,8 @@ GivePokemon:: ld [wcf91], a ld a, c ld [W_CURENEMYLVL], a - xor a - ld [wcc49], a + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation], a ld b, BANK(_GivePokemon) ld hl, _GivePokemon jp Bankswitch diff --git a/hram.asm b/hram.asm index f3bacee1..acc66a65 100644 --- a/hram.asm +++ b/hram.asm @@ -44,6 +44,9 @@ hNPCMovementDirections2Index EQU $FF95 ; CalcPositionOfPlayerRelativeToNPC hNPCSpriteOffset EQU $FF95 +; temp value used when swapping bytes +hSwapTemp EQU $FF95 + ; Multiplcation and division variables are meant ; to overlap for back-to-back usage. Big endian. @@ -198,6 +201,8 @@ hTilesetType EQU $FFD7 H_CURRENTSPRITEOFFSET EQU $FFDA ; multiple of $10 +hNewPartyLength EQU $FFE4 + hDividend2 EQU $FFE5 hDivisor2 EQU $FFE6 hQuotient2 EQU $FFE7 diff --git a/main.asm b/main.asm index 4558f319..e982f72b 100755 --- a/main.asm +++ b/main.asm @@ -80,7 +80,7 @@ SonyText: db "SONY@" LoadMonData_: -; Load monster [wWhichPokemon] from list [wcc49]: +; Load monster [wWhichPokemon] from list [wMonDataLocation]: ; 0: partymon ; 1: enemymon ; 2: boxmon @@ -90,8 +90,8 @@ LoadMonData_: ld a, [wDayCareMonSpecies] ld [wcf91], a - ld a, [wcc49] - cp 3 + ld a, [wMonDataLocation] + cp DAYCARE_DATA jr z, .GetMonHeader ld a, [wWhichPokemon] @@ -105,8 +105,8 @@ LoadMonData_: ld hl, wPartyMons ld bc, wPartyMon2 - wPartyMon1 - ld a, [wcc49] - cp 1 + ld a, [wMonDataLocation] + cp ENEMY_PARTY_DATA jr c, .getMonEntry ld hl, wEnemyMons @@ -564,7 +564,7 @@ TestBattle: ld a, 20 ld [W_CURENEMYLVL], a xor a - ld [wcc49], a + ld [wMonDataLocation], a ld [W_CURMAP], a call AddPartyMon @@ -1090,7 +1090,7 @@ DrawStartMenu: ; 710b (1:710b) ld [wTopMenuItemY],a ; Y position of first menu choice ld a,$0b ld [wTopMenuItemX],a ; X position of first menu choice - ld a,[wcc2d] ; remembered menu selection from last time + ld a,[wBattleAndStartSavedMenuItem] ; remembered menu selection from last time ld [wCurrentMenuItem],a ld [wLastMenuItem],a xor a @@ -2926,7 +2926,7 @@ RemoveItemFromInventory_: ; ce74 (3:4e74) xor a ld [wListScrollOffset],a ld [wCurrentMenuItem],a - ld [wcc2c],a + ld [wBagSavedMenuItem],a ld [wSavedListScrollOffset],a pop hl ld a,[hl] ; a = number of items in inventory @@ -3553,36 +3553,40 @@ ResetBoulderPushFlags: ; f2dd (3:72dd) ret _AddPartyMon: ; f2e5 (3:72e5) +; Adds a new mon to the player's or enemy's party. +; [wMonDataLocation] is used in an unusual way in this function. +; If the lower nybble is 0, the mon is added to the player's party, else the enemy's. +; If the entire value is 0, then the player is allowed to name the mon. ld de, wPartyCount - ld a, [wcc49] + ld a, [wMonDataLocation] and $f - jr z, .asm_f2f2 + jr z, .next ld de, wEnemyPartyCount -.asm_f2f2 +.next ld a, [de] inc a cp PARTY_LENGTH + 1 - ret nc + ret nc ; return if the party is already full ld [de], a ld a, [de] - ld [$ffe4], a + ld [hNewPartyLength], a add e ld e, a - jr nc, .asm_f300 + jr nc, .noCarry inc d -.asm_f300 +.noCarry ld a, [wcf91] - ld [de], a + ld [de], a ; write species of new mon in party list inc de - ld a, $ff + ld a, $ff ; terminator ld [de], a ld hl, wPartyMonOT - ld a, [wcc49] + ld a, [wMonDataLocation] and $f - jr z, .asm_f315 + jr z, .next2 ld hl, wEnemyMonOT -.asm_f315 - ld a, [$ffe4] +.next2 + ld a, [hNewPartyLength] dec a call SkipFixedLengthTextEntries ld d, h @@ -3590,24 +3594,24 @@ _AddPartyMon: ; f2e5 (3:72e5) ld hl, wPlayerName ld bc, $b call CopyData - ld a, [wcc49] + ld a, [wMonDataLocation] and a - jr nz, .asm_f33f + jr nz, .skipNaming ld hl, wPartyMonNicks - ld a, [$ffe4] + ld a, [hNewPartyLength] dec a call SkipFixedLengthTextEntries ld a, NAME_MON_SCREEN ld [wNamingScreenType], a predef AskName -.asm_f33f +.skipNaming ld hl, wPartyMons - ld a, [wcc49] + ld a, [wMonDataLocation] and $f - jr z, .asm_f34c + jr z, .next3 ld hl, wEnemyMons -.asm_f34c - ld a, [$ffe4] +.next3 + ld a, [hNewPartyLength] dec a ld bc, wPartyMon2 - wPartyMon1 call AddNTimes @@ -3619,15 +3623,17 @@ _AddPartyMon: ; f2e5 (3:72e5) call GetMonHeader ld hl, W_MONHEADER ld a, [hli] - ld [de], a + ld [de], a ; species inc de pop hl push hl - ld a, [wcc49] + ld a, [wMonDataLocation] and $f ld a, $98 ; set enemy trainer mon IVs to fixed average values ld b, $88 - jr nz, .writeFreshMonData + jr nz, .next4 + +; If the mon is being added to the player's party, update the pokedex. ld a, [wcf91] ld [wd11e], a push de @@ -3650,24 +3656,29 @@ _AddPartyMon: ; f2e5 (3:72e5) pop bc ld hl, wPokedexSeen call FlagAction + pop hl push hl + ld a, [W_ISINBATTLE] - and a + and a ; is this a wild mon caught in battle? jr nz, .copyEnemyMonData + +; Not wild. call Random ; generate random IVs ld b, a call Random -.writeFreshMonData ; f3b3 + +.next4 push bc - ld bc, $1b + ld bc, wPartyMon1DVs - wPartyMon1 add hl, bc pop bc ld [hli], a ld [hl], b ; write IVs - ld bc, $fff4 + ld bc, (wPartyMon1HPExp - 1) - (wPartyMon1DVs + 1) add hl, bc - ld a, $1 + ld a, 1 ld c, a xor a ld b, a @@ -3679,13 +3690,13 @@ _AddPartyMon: ; f2e5 (3:72e5) ld [de], a inc de xor a - ld [de], a ; level (?) + ld [de], a ; box level inc de ld [de], a ; status ailments inc de jr .copyMonTypesAndMoves .copyEnemyMonData - ld bc, $1b + ld bc, wPartyMon1DVs - wPartyMon1 add hl, bc ld a, [wEnemyMonDVs] ; copy IVs from cur enemy mon ld [hli], a @@ -3698,7 +3709,7 @@ _AddPartyMon: ; f2e5 (3:72e5) ld [de], a inc de xor a - ld [de], a ; level (?) + ld [de], a ; box level inc de ld a, [wEnemyMonStatus] ; copy status ailments from cur enemy mon ld [de], a @@ -3711,7 +3722,7 @@ _AddPartyMon: ; f2e5 (3:72e5) ld a, [hli] ; type 2 ld [de], a inc de - ld a, [hli] ; unused (?) + ld a, [hli] ; catch rate (held item in gen 2) ld [de], a ld hl, W_MONHMOVES ld a, [hli] @@ -4035,7 +4046,7 @@ _MoveMon: ; f51e (3:751e) push hl srl a add $2 - ld [wcc49], a + ld [wMonDataLocation], a call LoadMonData callba CalcLevelFromExperience ld a, d @@ -4477,7 +4488,7 @@ START_MONEY EQU $3000 inc hl ld [hl], a - ld [wcc49], a + ld [wMonDataLocation], a ld hl, W_OBTAINEDBADGES ld [hli], a diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index 5e80a10f..2196e021 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -35,11 +35,11 @@ DayCareMText1: ; 56254 (15:6254) pop af ld hl, DayCareMText_56437 jp c, DayCareMScript_56409 - callab Func_2171b + callab KnowsHMMove ld hl, DayCareMText_5644a jp c, DayCareMScript_56409 xor a - ld [wcc2b], a + ld [wPartyAndBillsPCSavedMenuItem], a ld a, [wWhichPokemon] ld hl, wPartyMonNicks call GetPartyMonName @@ -62,8 +62,8 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) xor a ld hl, W_DAYCAREMONNAME call GetPartyMonName - ld a, $3 - ld [wcc49], a + ld a, DAYCARE_DATA + ld [wMonDataLocation], a call LoadMonData callab CalcLevelFromExperience ld a, d diff --git a/scripts/oakslab.asm b/scripts/oakslab.asm index b32647b5..73ad345d 100755 --- a/scripts/oakslab.asm +++ b/scripts/oakslab.asm @@ -898,9 +898,9 @@ OaksLabMonChoiceMenu: ; 1d1b3 (7:51b3) call PrintText ld hl, OaksLabReceivedMonText call PrintText - xor a - ld [wcc49], a - ld a, $5 + xor a ; PLAYER_PARTY_DATA + ld [wMonDataLocation], a + ld a, 5 ld [W_CURENEMYLVL], a ld a, [wcf91] ld [wd11e], a diff --git a/text.asm b/text.asm index 17067e57..28e4d400 100644 --- a/text.asm +++ b/text.asm @@ -1816,7 +1816,7 @@ _MonWasStoredText:: ; 0x8a159 TX_RAM wcf4b text " was" line "stored in Box @" - TX_RAM wWhichTrade + TX_RAM wBoxNumString text "." prompt diff --git a/wram.asm b/wram.asm index fa9305ef..18d16cc1 100755 --- a/wram.asm +++ b/wram.asm @@ -236,15 +236,32 @@ wLastMenuItem:: ; cc2a ; id of previously selected menu item ds 1 -; group these 3 addresses together because of an ld a,[hli] -wcc2b:: ds 1 ; used in party menu -wcc2c:: ds 1 ; used in item related menus (inventory, pc) -wcc2d:: ds 1 ; also used in inventory, supposed to save an item id +wPartyAndBillsPCSavedMenuItem:: ; cc2b +; It is mainly used by the party menu to remember the cursor position while the +; menu isn't active. +; It is also used to remember the cursor position of mon lists (for the +; withdraw/deposit/release actions) in Bill's PC so that it doesn't get lost +; when you choose a mon from the list and a sub-menu is shown. It's reset when +; you return to the main Bill's PC menu. + ds 1 + +wBagSavedMenuItem:: ; cc2c +; It is used by the bag list to remember the cursor position while the menu +; isn't active. + ds 1 + +wBattleAndStartSavedMenuItem:: ; cc2d +; It is used by the start menu to remember the cursor position while the menu +; isn't active. +; The battle menu uses it so that the cursor position doesn't get lost when +; a sub-menu is shown. It's reset at the start of each battle. + ds 1 wPlayerMoveListIndex:: ; cc2e ds 1 wPlayerMonNumber:: ; cc2f +; index in party of currently battling mon ds 1 wMenuCursorLocation:: ; cc30 @@ -326,7 +343,17 @@ wWhichTradeMonSelectionMenu:: ; cc49 ; $00 = player mons ; $01 = enemy mons -wcc49:: ds 1 ; used in some pokemon related stuff (some kind of species storage byte) +wMonDataLocation:: ; cc49 +; 0 = player's party +; 1 = enemy party +; 2 = current box +; 3 = daycare +; 4 = in-battle mon +; +; AddPartyMon uses it slightly differently. +; If the lower nybble is 0, the mon is added to the player's party, else the enemy's. +; If the entire value is 0, then the player is allowed to name the mon. + ds 1 wMenuWrappingEnabled:: ; cc4a ; set to 1 if you can go from the bottom to the top or top to bottom of a menu @@ -402,6 +429,8 @@ wSimulatedJoypadStatesEnd:: ; ccd3 ; the list starts above this address and extends downwards in memory until here ; overloaded with below labels +wParentMenuItem:: ; ccd3 + wccd3:: ds 1 ; used in battle, pokemon, PC and game corner stuff wForceEvolution:: wccd4:: ds 1 ; has a direct reference for simulated joypad stuff in vermillion and seafoam @@ -605,6 +634,18 @@ wOverrideSimulatedJoypadStatesMask:: ; cd3b ds 1 +wChargeMoveNum:: ; cd3d + +wCoordIndex:: ; cd3d + +wOptionsTextSpeedCursorX:: ; cd3d + +wBoxNumString:: ; cd3d + +wTrainerInfoTextBoxWidthPlus1:: ; cd3d + +wSwappedMenuItem:: ; cd3d + wHoFMonSpecies:: ; cd3d wFieldMoves:: ; cd3d @@ -648,6 +689,10 @@ wWhichTrade:: ; cd3d wTrainerSpriteOffset:: ; cd3d ds 1 +wOptionsBattleAnimCursorX:: ; cd3e + +wTrainerInfoTextBoxWidth:: ; cd3e + wHoFPartyMonIndex:: ; cd3e wNumCreditsMonsDisplayed:: ; cd3e @@ -676,6 +721,10 @@ wHiddenObjectFunctionRomBank:: ; cd3e wTrainerEngageDistance:: ; cd3e ds 1 +wOptionsBattleStyleCursorX:: ; cd3f + +wTrainerInfoTextBoxNextRowOffset:: ; cd3f + wHoFMonLevel:: ; cd3f wBadgeOrFaceTiles:: ; cd3f @@ -850,6 +899,7 @@ wRightGBMonSpecies:: ; cd5f wFlags_0xcd60:: ; cd60 ; bit 0: is player engaged by trainer (to avoid being engaged by multiple trainers simultaneously) ; bit 1: boulder dust animation (from using Strength) pending +; bit 3: using generic PC ; bit 5: don't play sound when A or B is pressed in menu ; bit 6: tried pushing against boulder once (you need to push twice before it will move) ds 1 @@ -1976,7 +2026,8 @@ wBoxItems:: ; d53b ds 50 * 2 ds 1 ; end -wd5a0:: ds 2 ; current box number +wCurrentBoxNum:: ; d5a0 + ds 2 wNumHoFTeams:: ; d5a2 ; number of HOF teams -- cgit v1.3.1-sl0p From 6931ce96259d366263c63e704dfaac6f241d8e4a Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Fri, 17 Jul 2015 01:21:40 -0700 Subject: money / coins hram constants --- engine/menu/prize_menu.asm | 8 +++---- engine/menu/vending_machine.asm | 6 ++--- engine/overworld/hidden_items.asm | 16 ++++++------- engine/overworld/pokemart.asm | 2 +- home.asm | 34 +++++++++++++------------- hram.asm | 6 +++++ main.asm | 28 +++++++++++----------- scripts/celadongamecorner.asm | 50 +++++++++++++++++++-------------------- scripts/daycarem.asm | 6 ++--- scripts/mtmoonpokecenter.asm | 6 ++--- scripts/museum1f.asm | 6 ++--- scripts/safarizoneentrance.asm | 6 ++--- text.asm | 10 ++++---- 13 files changed, 95 insertions(+), 89 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/engine/menu/prize_menu.asm b/engine/menu/prize_menu.asm index acc18633..fff8e4c4 100755 --- a/engine/menu/prize_menu.asm +++ b/engine/menu/prize_menu.asm @@ -179,11 +179,11 @@ LoadCoinsToSubtract: ; 528b1 (14:68b1) ld hl,wd141 ; first prize's price add hl,de ; get selected prize's price xor a - ld [$FF9F],a + ld [hCoins - 1],a ld a,[hli] - ld [$FFA0],a + ld [hCoins],a ld a,[hl] - ld [$FFA1],a + ld [hCoins + 1],a ret HandlePrizeChoice: ; 528c6 (14:68c6) @@ -239,7 +239,7 @@ HandlePrizeChoice: ; 528c6 (14:68c6) ret nc .SubtractCoins call LoadCoinsToSubtract - ld hl,$FFA1 + ld hl,hCoins + 1 ld de,wPlayerCoins + 1 ld c,$02 ; how many bytes predef SubBCDPredef ; subtract coins (BCD daa operations) diff --git a/engine/menu/vending_machine.asm b/engine/menu/vending_machine.asm index 0c585687..07cf8854 100755 --- a/engine/menu/vending_machine.asm +++ b/engine/menu/vending_machine.asm @@ -37,10 +37,10 @@ VendingMachineMenu: ; 74ee0 (1d:4ee0) cp 3 ; chose Cancel? jr z, .notThirsty xor a - ld [$ff9f], a - ld [$ffa1], a + ld [hMoney], a + ld [hMoney + 2], a ld a, $2 - ld [$ffa0], a + ld [hMoney + 1], a call HasEnoughMoney jr nc, .enoughMoney ld hl, VendingMachineText4 diff --git a/engine/overworld/hidden_items.asm b/engine/overworld/hidden_items.asm index 868f118f..910fcf04 100755 --- a/engine/overworld/hidden_items.asm +++ b/engine/overworld/hidden_items.asm @@ -67,9 +67,9 @@ HiddenCoins: ; 76799 (1d:6799) and a ret nz xor a - ld [$ff9f], a - ld [$ffa0], a - ld [$ffa1], a + ld [hCoins - 1], a + ld [hCoins], a + ld [hCoins + 1], a ld a, [wWhichTrade] sub COIN cp 10 @@ -81,22 +81,22 @@ HiddenCoins: ; 76799 (1d:6799) jr .bcd100 .bcd10 ld a, $10 - ld [$ffa1], a + ld [hCoins + 1], a jr .bcddone .bcd20 ld a, $20 - ld [$ffa1], a + ld [hCoins + 1], a jr .bcddone .bcd40 ; due to a typo, this is never used ld a, $40 - ld [$ffa1], a + ld [hCoins + 1], a jr .bcddone .bcd100 ld a, $1 - ld [$ffa0], a + ld [hCoins], a .bcddone ld de, wPlayerCoins + 1 - ld hl, $ffa1 + ld hl, hCoins + 1 ld c, $2 predef AddBCDPredef ld hl, wd6fe diff --git a/engine/overworld/pokemart.asm b/engine/overworld/pokemart.asm index 2caada1d..e6fdfc92 100755 --- a/engine/overworld/pokemart.asm +++ b/engine/overworld/pokemart.asm @@ -206,7 +206,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) jp .loop .isThereEnoughMoney ld de,wPlayerMoney - ld hl,$ff9f ; item price + ld hl,hMoney ld c,3 ; length of money in bytes jp StringCmp .notEnoughMoney diff --git a/home.asm b/home.asm index 430be975..38a95742 100644 --- a/home.asm +++ b/home.asm @@ -1630,15 +1630,15 @@ DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) ld c,$03 ld a,[wItemQuantity] ld b,a - ld hl,$ff9f ; total price + ld hl,hMoney ; total price ; initialize total price to 0 xor a ld [hli],a ld [hli],a ld [hl],a .addLoop ; loop to multiply the individual price by the quantity to get the total price - ld de,$ffa1 - ld hl,$ff8d + ld de,hMoney + 2 + ld hl,hItemPrice + 2 push bc predef AddBCDPredef ; add the individual price to the current sum pop bc @@ -1648,23 +1648,23 @@ DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) and a ; should the price be halved (for selling items)? jr z,.skipHalvingPrice xor a - ld [$ffa2],a - ld [$ffa3],a + ld [hDivideBCDDivisor],a + ld [hDivideBCDDivisor + 1],a ld a,$02 - ld [$ffa4],a + ld [hDivideBCDDivisor + 2],a predef DivideBCDPredef3 ; halves the price ; store the halved price - ld a,[$ffa2] - ld [$ff9f],a - ld a,[$ffa3] - ld [$ffa0],a - ld a,[$ffa4] - ld [$ffa1],a + ld a,[hDivideBCDQuotient] + ld [hMoney],a + ld a,[hDivideBCDQuotient + 1] + ld [hMoney + 1],a + ld a,[hDivideBCDQuotient + 2] + ld [hMoney + 2],a .skipHalvingPrice hlCoord 12, 10 ld de,SpacesBetweenQuantityAndPriceText call PlaceString - ld de,$ff9f ; total price + ld de,hMoney ; total price ld c,$a3 call PrintBCDNumber hlCoord 9, 10 @@ -2942,17 +2942,17 @@ GetTrainerName:: ; 359e (0:359e) HasEnoughMoney:: ; Check if the player has at least as much -; money as the 3-byte BCD value at $ff9f. +; money as the 3-byte BCD value at hMoney. ld de, wPlayerMoney - ld hl, $ff9f + ld hl, hMoney ld c, 3 jp StringCmp HasEnoughCoins:: ; Check if the player has at least as many -; coins as the 2-byte BCD value at $ffa0. +; coins as the 2-byte BCD value at hCoins. ld de, wPlayerCoins - ld hl, $ffa0 + ld hl, hCoins ld c, 2 jp StringCmp diff --git a/hram.asm b/hram.asm index ee71d4d6..b0d5a942 100644 --- a/hram.asm +++ b/hram.asm @@ -92,6 +92,12 @@ hNPCPlayerRelativePosPerspective EQU $FF9B ; 1 = target is to the west hNPCPlayerRelativePosFlags EQU $FF9D +hMoney EQU $FF9F ; 3-byte BCD number +hCoins EQU $FFA0 ; 2-byte BCD number + +hDivideBCDDivisor EQU $FFA2 ; 3-byte BCD number +hDivideBCDQuotient EQU $FFA2 ; 3-byte BCD number + hSerialReceivedNewData EQU $FFA9 ; $01 = using external clock diff --git a/main.asm b/main.asm index 1bff6a4e..3bc5989a 100755 --- a/main.asm +++ b/main.asm @@ -31,30 +31,30 @@ ResetStatusAndHalveMoneyOnBlackout:: ld [wNPCMovementScriptPointerTableNum], a ld [wFlags_0xcd60], a - ld [$ff9f], a - ld [$ff9f + 1], a - ld [$ff9f + 2], a + ld [hMoney], a + ld [hMoney + 1], a + ld [hMoney + 2], a call HasEnoughMoney jr c, .lostmoney ; never happens ; Halve the player's money. ld a, [wPlayerMoney] - ld [$ff9f], a + ld [hMoney], a ld a, [wPlayerMoney + 1] - ld [$ff9f + 1], a + ld [hMoney + 1], a ld a, [wPlayerMoney + 2] - ld [$ff9f + 2], a + ld [hMoney + 2], a xor a - ld [$ffa2], a - ld [$ffa3], a + ld [hDivideBCDDivisor], a + ld [hDivideBCDDivisor + 1], a ld a, 2 - ld [$ffa4], a + ld [hDivideBCDDivisor + 2], a predef DivideBCDPredef3 - ld a, [$ffa2] + ld a, [hDivideBCDQuotient] ld [wPlayerMoney], a - ld a, [$ffa2 + 1] + ld a, [hDivideBCDQuotient + 1] ld [wPlayerMoney + 1], a - ld a, [$ffa2 + 2] + ld a, [hDivideBCDQuotient + 2] ld [wPlayerMoney + 2], a .lostmoney @@ -789,12 +789,12 @@ INCLUDE "engine/oak_speech2.asm" ; sets carry flag if there is enough money and unsets carry flag if not SubtractAmountPaidFromMoney_: ; 6b21 (1:6b21) ld de,wPlayerMoney - ld hl,$ff9f ; total price of items + ld hl,hMoney ; total price of items ld c,3 ; length of money in bytes call StringCmp ret c ld de,wPlayerMoney + 2 - ld hl,$ffa1 ; total price of items + ld hl,hMoney + 2 ; total price of items ld c,3 ; length of money in bytes predef SubBCDPredef ; subtract total price from money ld a,MONEY_BOX diff --git a/scripts/celadongamecorner.asm b/scripts/celadongamecorner.asm index 9c6c4408..3bcdf3a3 100755 --- a/scripts/celadongamecorner.asm +++ b/scripts/celadongamecorner.asm @@ -151,31 +151,31 @@ CeladonGameCornerText2: ; 48ca9 (12:4ca9) call Has9990Coins jr nc, .asm_48d14 xor a - ld [$ff9f], a - ld [$ffa1], a + ld [hMoney], a + ld [hMoney + 2], a ld a, $10 - ld [$ffa0], a + ld [hMoney + 1], a call HasEnoughMoney jr nc, .asm_48cdb ld hl, CeladonGameCornerText_48d31 jr .asm_48d1c .asm_48cdb xor a - ld [$ff9f], a - ld [$ffa1], a + ld [hMoney], a + ld [hMoney + 2], a ld a, $10 - ld [$ffa0], a - ld hl, $ffa1 + ld [hMoney + 1], a + ld hl, hMoney + 2 ld de, wPlayerMoney + 2 ld c, $3 predef SubBCDPredef xor a - ld [$ff9f], a - ld [$ffa0], a + ld [hCoins - 1], a + ld [hCoins], a ld a, $50 - ld [$ffa1], a + ld [hCoins + 1], a ld de, wPlayerCoins + 1 - ld hl, $ffa1 + ld hl, hCoins + 1 ld c, $2 predef AddBCDPredef call CeladonGameCornerScript_48f1e @@ -238,12 +238,12 @@ CeladonGameCornerText5: ; 48d4a (12:4d4a) call Has9990Coins jr nc, .asm_48d8e xor a - ld [$ff9f], a - ld [$ffa0], a + ld [hCoins - 1], a + ld [hCoins], a ld a, $10 - ld [$ffa1], a + ld [hCoins + 1], a ld de, wPlayerCoins + 1 - ld hl, $ffa1 + ld hl, hCoins + 1 ld c, $2 predef AddBCDPredef ld hl, wd77e @@ -320,12 +320,12 @@ CeladonGameCornerText9: ; 48dd9 (12:4dd9) call Has9990Coins jr nc, .asm_48e18 xor a - ld [$ff9f], a - ld [$ffa0], a + ld [hCoins - 1], a + ld [hCoins], a ld a, $20 - ld [$ffa1], a + ld [hCoins + 1], a ld de, wPlayerCoins + 1 - ld hl, $ffa1 + ld hl, hCoins + 1 ld c, $2 predef AddBCDPredef ld hl, wd77e @@ -373,12 +373,12 @@ CeladonGameCornerText10: ; 48e3b (12:4e3b) call Has9990Coins jr z, .asm_48e7a xor a - ld [$ff9f], a - ld [$ffa0], a + ld [hCoins - 1], a + ld [hCoins], a ld a, $20 - ld [$ffa1], a + ld [hCoins + 1], a ld de, wPlayerCoins + 1 - ld hl, $ffa1 + ld hl, hCoins + 1 ld c, $2 predef AddBCDPredef ld hl, wd77e @@ -527,7 +527,7 @@ GameCornerBlankText2: ; 48f8d (12:4f8d) Has9990Coins: ; 48f95 (12:4f95) ld a, $99 - ld [$ffa0], a + ld [hCoins], a ld a, $90 - ld [$ffa1], a + ld [hCoins + 1], a jp HasEnoughCoins diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index 2196e021..330f2234 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -137,11 +137,11 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) and a jp nz, .asm_56403 ld hl, wTrainerFacingDirection - ld [$ff9f], a + ld [hMoney], a ld a, [hli] - ld [$ffa0], a + ld [hMoney + 1], a ld a, [hl] - ld [$ffa1], a + ld [hMoney + 2], a call HasEnoughMoney jr nc, .asm_56396 ld hl, DayCareMText_56454 diff --git a/scripts/mtmoonpokecenter.asm b/scripts/mtmoonpokecenter.asm index b06c4df0..bba73dbd 100755 --- a/scripts/mtmoonpokecenter.asm +++ b/scripts/mtmoonpokecenter.asm @@ -35,10 +35,10 @@ MtMoonPokecenterText4: ; 492ec (12:52ec) ld a, [wCurrentMenuItem] and a jp nz, .asm_4934e - ld [$ff9f], a - ld [$ffa1], a + ld [hMoney], a + ld [hMoney + 2], a ld a, $5 - ld [$ffa0], a + ld [hMoney + 1], a call HasEnoughMoney jr nc, .asm_faa09 ld hl, MtMoonPokecenterText_49366 diff --git a/scripts/museum1f.asm b/scripts/museum1f.asm index 38fddb26..26c7f02d 100755 --- a/scripts/museum1f.asm +++ b/scripts/museum1f.asm @@ -81,10 +81,10 @@ Museum1FText1: ; 5c135 (17:4135) and a jr nz, .asm_de133 xor a - ld [$ff9f], a - ld [$ffa0], a + ld [hMoney], a + ld [hMoney + 1], a ld a, $50 - ld [$ffa1], a + ld [hMoney + 2], a call HasEnoughMoney jr nc, .asm_0f3e3 ld hl, Museum1FText_5c229 diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm index 6cbb0925..2edbe61b 100755 --- a/scripts/safarizoneentrance.asm +++ b/scripts/safarizoneentrance.asm @@ -155,11 +155,11 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) and a jp nz,.PleaseComeAgain xor a - ld [$ff9f],a + ld [hMoney],a ld a,$05 - ld [$ffa0],a + ld [hMoney + 1],a ld a,$00 - ld [$ffa1],a + ld [hMoney + 2],a call HasEnoughMoney jr nc,.success ld hl,.NotEnoughMoneyText diff --git a/text.asm b/text.asm index ac53f65f..ecc3beea 100644 --- a/text.asm +++ b/text.asm @@ -15,7 +15,7 @@ POKEDEX_TEXT EQU $2b MOVE_NAMES EQU $2c INCLUDE "macros.asm" - +INCLUDE "hram.asm" SECTION "Text 1", ROMX, BANK[TEXT_1] @@ -1015,13 +1015,13 @@ _HiddenItemBagFullText:: ; 894e1 (22:54e1) _FoundHiddenCoinsText:: ; 8950b (22:550b) text $52, " found" line "@" - TX_BCD $ffa0, $c2 + TX_BCD hCoins, $c2 text " coins!@@" _FoundHiddenCoins2Text:: ; 89523 (22:5523) text $52, " found" line "@" - TX_BCD $ffa0, $c2 + TX_BCD hCoins, $c2 text " coins!@@" _DroppedHiddenCoinsText:: ; 8953b (22:553b) @@ -2635,7 +2635,7 @@ _PokemartTellBuyPriceText:: ; a2619 (28:6619) text "?" line "That will be" cont "¥@" - TX_BCD $ff9f, $c3 + TX_BCD hMoney, $c3 text ". OK?" done @@ -2662,7 +2662,7 @@ _PokemonSellingGreetingText:: ; a2690 (28:6690) _PokemartTellSellPriceText:: ; a26ae (28:66ae) text "I can pay you" line "¥@" - TX_BCD $ff9f, $c3 + TX_BCD hMoney, $c3 text " for that." done -- cgit v1.3.1-sl0p From c169073eed4f0362ef42170098a141a2fcbd71d0 Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Sat, 18 Jul 2015 20:49:52 -0700 Subject: misc --- constants/misc_constants.asm | 1 - engine/HoF_room_pc.asm | 2 +- engine/battle/animations.asm | 10 +- engine/battle/core.asm | 2 +- engine/battle/experience.asm | 2 +- engine/battle/init_battle_variables.asm | 2 +- engine/cable_club.asm | 2 +- engine/evolution.asm | 67 ++++++------ engine/evos_moves.asm | 68 +++++++----- engine/experience.asm | 84 ++++++++------- engine/game_corner_slots.asm | 2 +- engine/game_corner_slots2.asm | 4 +- engine/give_pokemon.asm | 25 +++-- engine/hidden_object_functions17.asm | 6 +- engine/hidden_object_functions7.asm | 2 +- engine/items/itemfinder.asm | 32 +++--- engine/items/items.asm | 36 +++---- engine/menu/league_pc.asm | 8 +- engine/menu/main_menu.asm | 120 +++++++++++---------- engine/menu/pokedex.asm | 18 ++-- engine/menu/prize_menu.asm | 10 +- engine/menu/status_screen.asm | 43 ++++---- engine/oak_speech.asm | 4 +- engine/oam_dma.asm | 2 +- engine/overworld/hidden_items.asm | 44 ++++---- engine/overworld/hidden_objects.asm | 10 +- engine/overworld/movement.asm | 17 ++- engine/palettes.asm | 46 ++++---- engine/predefs.asm | 8 +- engine/save.asm | 181 +++++++++++++++++--------------- engine/slot_machine.asm | 2 +- engine/titlescreen.asm | 2 +- home/init.asm | 16 +-- hram.asm | 4 + macros.asm | 2 +- main.asm | 8 +- scripts/agatha.asm | 2 +- scripts/bruno.asm | 2 +- scripts/ceruleancity.asm | 2 +- scripts/daycarem.asm | 144 +++++++++++++------------ scripts/lance.asm | 2 +- scripts/lorelei.asm | 2 +- scripts/mansion3.asm | 2 +- scripts/mtmoonpokecenter.asm | 36 +++---- scripts/museum1f.asm | 8 +- scripts/oakslab.asm | 20 ++-- scripts/pewterpokecenter.asm | 34 +++--- scripts/safarizoneentrance.asm | 2 +- scripts/seafoamislands1.asm | 4 +- scripts/seafoamislands2.asm | 4 +- scripts/seafoamislands3.asm | 4 +- scripts/seafoamislands4.asm | 4 +- scripts/seafoamislands5.asm | 4 +- scripts/silphco7.asm | 2 +- scripts/vermiliondock.asm | 47 +++++---- scripts/victoryroad2.asm | 2 +- scripts/victoryroad3.asm | 8 +- sram.asm | 8 +- text/maps/daycare_1.asm | 20 ++-- text/maps/daycare_2.asm | 14 +-- wram.asm | 86 +++++++++++++-- 61 files changed, 743 insertions(+), 612 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/constants/misc_constants.asm b/constants/misc_constants.asm index 5eecb38f..c06e7a65 100644 --- a/constants/misc_constants.asm +++ b/constants/misc_constants.asm @@ -10,7 +10,6 @@ HOF_MON EQU $10 HOF_TEAM EQU PARTY_LENGTH * HOF_MON HOF_TEAM_CAPACITY EQU 50 - A_BUTTON EQU %00000001 B_BUTTON EQU %00000010 SELECT EQU %00000100 diff --git a/engine/HoF_room_pc.asm b/engine/HoF_room_pc.asm index dc05814a..06c926db 100755 --- a/engine/HoF_room_pc.asm +++ b/engine/HoF_room_pc.asm @@ -29,7 +29,7 @@ HallOfFamePC: ; 7405c (1d:405c) ld c, 128 call DelayFrames xor a - ld [wWhichTrade], a + ld [wNumCreditsMonsDisplayed - 1], a ; not read ld [wNumCreditsMonsDisplayed], a jp Credits diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index 6803c38b..d21e07e5 100755 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -796,9 +796,9 @@ DoBallShakeSpecialEffects: ; 78f96 (1e:4f96) dec a ret nz ; if it's the end of the ball shaking subanimation, check if more shakes are left and restart the subanimation - ld a,[wWhichTrade] ; number of shakes + ld a,[wNumShakes] ; number of shakes dec a ; decrement number of shakes - ld [wWhichTrade],a + ld [wNumShakes],a ret z ; if there are shakes left, restart the subanimation ld a,[W_SUBANIMSUBENTRYADDR] @@ -1998,11 +1998,11 @@ AnimationWavyScreen: ; 79666 (1e:5666) ret Func_796ae: ; 796ae (1e:56ae) - ld a, [$ff41] + ld a, [rSTAT] and $3 jr nz, Func_796ae ld a, [hl] - ld [$ff43], a + ld [rSCX], a inc hl ld a, [hl] cp d @@ -2895,7 +2895,7 @@ TossBallAnimation: ; 79e16 (1e:5e16) ; store these for later ld a,b and a,$F - ld [wWhichTrade],a + ld [wNumShakes],a ld hl,.PokeBallAnimations ; choose which toss animation to use diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 5deeb4dc..3cf3c9e9 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -6298,7 +6298,7 @@ LoadEnemyMonData: ; 3eb01 (f:6b01) dec de dec de xor a - ld [wHPBarMaxHP], a + ld [wLearningMovesFromDayCare], a predef WriteMonMoves ; get moves based on current level .loadMovePPs ld hl, wEnemyMonMoves diff --git a/engine/battle/experience.asm b/engine/battle/experience.asm index 11a1e87c..6ec8c463 100644 --- a/engine/battle/experience.asm +++ b/engine/battle/experience.asm @@ -254,7 +254,7 @@ GainExperience: ; 5524f (15:524f) ld a, [wd0b5] ld [wd11e], a predef LearnMoveFromLevelUp - ld hl, wccd3 + ld hl, wCanEvolveFlags ld a, [wWhichPokemon] ld c, a ld b, $1 diff --git a/engine/battle/init_battle_variables.asm b/engine/battle/init_battle_variables.asm index 74df62aa..f10e9f5e 100644 --- a/engine/battle/init_battle_variables.asm +++ b/engine/battle/init_battle_variables.asm @@ -19,7 +19,7 @@ InitBattleVariables: ; 525af (14:65af) ld hl, wcf1d ld [hli], a ld [hl], a - ld hl, wccd3 + ld hl, wCanEvolveFlags ld b, $3c .loop ld [hli], a diff --git a/engine/cable_club.asm b/engine/cable_club.asm index fbdb6260..9ccffdbb 100755 --- a/engine/cable_club.asm +++ b/engine/cable_club.asm @@ -297,7 +297,7 @@ CallCurrentTradeCenterFunction: ld b, 0 ld a, [wTradeCenterPointerTableIndex] cp $ff - jp z, LoadTitlescreenGraphics + jp z, DisplayTitleScreen add a ld c, a add hl, bc diff --git a/engine/evolution.asm b/engine/evolution.asm index 9ed38c21..d110110a 100755 --- a/engine/evolution.asm +++ b/engine/evolution.asm @@ -20,11 +20,11 @@ EvolveMon: ; 7bde9 (1e:7de9) xor a ld [H_AUTOBGTRANSFERENABLED], a ld [hTilesetType], a - ld a, [wHPBarMaxHP] + ld a, [wEvoOldSpecies] ld [wcf1d], a ld c, $0 call EvolutionSetWholeScreenPalette - ld a, [wHPBarMaxHP + 1] + ld a, [wEvoNewSpecies] ld [wcf91], a ld [wd0b5], a call Evolution_LoadPic @@ -32,13 +32,13 @@ EvolveMon: ; 7bde9 (1e:7de9) ld hl, vBackPic ld bc, 7 * 7 call CopyVideoData - ld a, [wHPBarMaxHP] + ld a, [wEvoOldSpecies] ld [wcf91], a ld [wd0b5], a call Evolution_LoadPic ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a - ld a, [wHPBarMaxHP] + ld a, [wEvoOldSpecies] call PlayCry call WaitForSoundToFinish ld c, BANK(Music_SafariZone) @@ -49,23 +49,23 @@ EvolveMon: ; 7bde9 (1e:7de9) ld c, $1 call EvolutionSetWholeScreenPalette ld bc, $110 -.asm_7be63 +.animLoop push bc call Evolution_CheckForCancel jr c, .evolutionCancelled - call Func_7bec2 + call Evolution_BackAndForthAnim pop bc inc b dec c dec c - jr nz, .asm_7be63 + jr nz, .animLoop xor a - ld [wHPBarOldHP + 1], a + ld [wEvoCancelled], a ld a, $31 - ld [wHPBarOldHP], a - call Func_7bed6 - ld a, [wHPBarMaxHP + 1] -.afterCancellation + ld [wEvoMonTileOffset], a + call Evolution_ChangeMonPic ; show the new species pic + ld a, [wEvoNewSpecies] +.done ld [wcf1d], a ld a, $ff ld [wc0ee], a @@ -81,17 +81,17 @@ EvolveMon: ; 7bde9 (1e:7de9) pop bc pop de pop hl - ld a, [wHPBarOldHP + 1] + ld a, [wEvoCancelled] and a ret z scf ret .evolutionCancelled pop bc - ld a, $1 - ld [wHPBarOldHP + 1], a - ld a, [wHPBarMaxHP] - jr .afterCancellation + ld a, 1 + ld [wEvoCancelled], a + ld a, [wEvoOldSpecies] + jr .done EvolutionSetWholeScreenPalette: ; 7beb4 (1e:7eb4) ld b, $b @@ -102,37 +102,38 @@ Evolution_LoadPic: ; 7beb9 (1e:7eb9) coord hl, 7, 2 jp LoadFlippedFrontSpriteByMonIndex -Func_7bec2: ; 7bec2 (1e:7ec2) +Evolution_BackAndForthAnim: ; 7bec2 (1e:7ec2) +; show the mon change back and forth between the new and old species b times ld a, $31 - ld [wHPBarOldHP], a - call Func_7bed6 - ld a, $cf - ld [wHPBarOldHP], a - call Func_7bed6 + ld [wEvoMonTileOffset], a + call Evolution_ChangeMonPic + ld a, -$31 + ld [wEvoMonTileOffset], a + call Evolution_ChangeMonPic dec b - jr nz, Func_7bec2 + jr nz, Evolution_BackAndForthAnim ret -Func_7bed6: ; 7bed6 (1e:7ed6) +Evolution_ChangeMonPic: ; 7bed6 (1e:7ed6) push bc xor a ld [H_AUTOBGTRANSFERENABLED], a coord hl, 7, 2 - ld bc, $707 - ld de, $d -.asm_7bee3 + lb bc, 7, 7 + ld de, SCREEN_WIDTH - 7 +.loop push bc -.asm_7bee4 - ld a, [wHPBarOldHP] +.innerLoop + ld a, [wEvoMonTileOffset] add [hl] ld [hli], a dec c - jr nz, .asm_7bee4 + jr nz, .innerLoop pop bc add hl, de dec b - jr nz, .asm_7bee3 - ld a, $1 + jr nz, .loop + ld a, 1 ld [H_AUTOBGTRANSFERENABLED], a call Delay3 pop bc diff --git a/engine/evos_moves.asm b/engine/evos_moves.asm index 4a253c68..9a0f2d84 100755 --- a/engine/evos_moves.asm +++ b/engine/evos_moves.asm @@ -1,6 +1,6 @@ ; try to evolve the mon in [wWhichPokemon] TryEvolvingMon: ; 3ad0e (e:6d0e) - ld hl, wccd3 + ld hl, wCanEvolveFlags xor a ld [hl], a ld a, [wWhichPokemon] @@ -31,17 +31,17 @@ Evolution_PartyMonLoop: ; loop over party mons ld a, [hl] cp $ff ; have we reached the end of the party? jp z, .done - ld [wHPBarMaxHP], a + ld [wEvoOldSpecies], a push hl ld a, [wWhichPokemon] ld c, a - ld hl, wccd3 + ld hl, wCanEvolveFlags ld b, $2 call Evolution_FlagAction ld a, c and a ; is the mon's bit set? jp z, Evolution_PartyMonLoop ; if not, go to the next mon - ld a, [wHPBarMaxHP] + ld a, [wEvoOldSpecies] dec a ld b, 0 ld hl, EvosMovesPointerTable @@ -110,7 +110,7 @@ Evolution_PartyMonLoop: ; loop over party mons ld [wd121], a push hl ld a, [hl] - ld [wHPBarMaxHP + 1], a + ld [wEvoNewSpecies], a ld a, [wWhichPokemon] ld hl, wPartyMonNicks call GetPartyMonName @@ -122,7 +122,7 @@ Evolution_PartyMonLoop: ; loop over party mons xor a ld [H_AUTOBGTRANSFERENABLED], a coord hl, 0, 0 - ld bc, $c14 + lb bc, 12, 20 call ClearScreenArea ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a @@ -137,7 +137,7 @@ Evolution_PartyMonLoop: ; loop over party mons ld a, [hl] ld [wd0b5], a ld [wLoadedMonSpecies], a - ld [wHPBarMaxHP + 1], a + ld [wEvoNewSpecies], a ld a, MONSTER_NAME ld [wNameListType], a ld a, BANK(TrainerNames) ; bank is not used for monster names @@ -357,7 +357,7 @@ LearnMoveFromLevelUp: ; 3af5b (e:6f5b) ld bc, wPartyMon2 - wPartyMon1 call AddNTimes .next - ld b, $4 + ld b, NUM_MOVES .checkCurrentMovesLoop ; check if the move to learn is already known ld a, [hli] cp d @@ -377,14 +377,13 @@ LearnMoveFromLevelUp: ; 3af5b (e:6f5b) ; writes the moves a mon has at level [W_CURENEMYLVL] to [de] ; move slots are being filled up sequentially and shifted if all slots are full -; [wHPBarMaxHP]: (?) WriteMonMoves: ; 3afb8 (e:6fb8) call GetPredefRegisters push hl push de push bc ld hl, EvosMovesPointerTable - ld b, $0 + ld b, 0 ld a, [wcf91] ; cur mon ID dec a add a @@ -411,25 +410,30 @@ WriteMonMoves: ; 3afb8 (e:6fb8) ld a, [W_CURENEMYLVL] cp b jp c, .done ; mon level < move level (assumption: learnset is sorted by level) - ld a, [wHPBarMaxHP] + ld a, [wLearningMovesFromDayCare] and a jr z, .skipMinLevelCheck - ld a, [wWhichTrade] ; min move level) + ld a, [wDayCareStartLevel] cp b jr nc, .nextMove2 ; min level >= move level + .skipMinLevelCheck + +; check if the move is already known push de - ld c, $4 -.moveAlreadyLearnedCheckLoop + ld c, NUM_MOVES +.alreadyKnowsCheckLoop ld a, [de] inc de cp [hl] jr z, .nextMove dec c - jr nz, .moveAlreadyLearnedCheckLoop + jr nz, .alreadyKnowsCheckLoop + +; try to find an empty move slot pop de push de - ld c, $4 + ld c, NUM_MOVES .findEmptySlotLoop ld a, [de] and a @@ -437,47 +441,55 @@ WriteMonMoves: ; 3afb8 (e:6fb8) inc de dec c jr nz, .findEmptySlotLoop - pop de ; no empty move slots found + +; no empty move slots found + pop de push de push hl ld h, d ld l, e call WriteMonMoves_ShiftMoveData ; shift all moves one up (deleting move 1) - ld a, [wHPBarMaxHP] + ld a, [wLearningMovesFromDayCare] and a jr z, .writeMoveToSlot + +; shift PP as well if learning moves from day care push de - ld bc, $12 + ld bc, wPartyMon1PP - (wPartyMon1Moves + 3) add hl, bc ld d, h ld e, l call WriteMonMoves_ShiftMoveData ; shift all move PP data one up pop de + .writeMoveToSlot pop hl .writeMoveToSlot2 ld a, [hl] ld [de], a - ld a, [wHPBarMaxHP] + ld a, [wLearningMovesFromDayCare] and a jr z, .nextMove - push hl ; write move PP value + +; write move PP value if learning moves from day care + push hl ld a, [hl] - ld hl, $15 + ld hl, wPartyMon1PP - wPartyMon1Moves add hl, de push hl dec a ld hl, Moves - ld bc, $6 + ld bc, 6 call AddNTimes - ld de, wHPBarMaxHP + ld de, wBuffer ld a, BANK(Moves) call FarCopyData - ld a, [wHPBarNewHP + 1] + ld a, [wBuffer + 5] pop hl ld [hl], a pop hl jr .nextMove + .done pop bc pop de @@ -486,13 +498,13 @@ WriteMonMoves: ; 3afb8 (e:6fb8) ; shifts all move data one up (freeing 4th move slot) WriteMonMoves_ShiftMoveData: ; 3b04e (e:704e) - ld c, $3 -.asm_3b050 + ld c, NUM_MOVES - 1 +.loop inc de ld a, [de] ld [hli], a dec c - jr nz, .asm_3b050 + jr nz, .loop ret Evolution_FlagAction: ; 3b057 (e:7057) diff --git a/engine/experience.asm b/engine/experience.asm index 752536cf..b43fbcf9 100755 --- a/engine/experience.asm +++ b/engine/experience.asm @@ -10,15 +10,15 @@ CalcLevelFromExperience: ; 58f43 (16:4f43) push hl ld hl, wLoadedMonExp + 2 ; current exp ; compare exp needed for level d with current exp - ld a, [H_MULTIPLICAND + 2] + ld a, [hExperience + 2] ld c, a ld a, [hld] sub c - ld a, [H_MULTIPLICAND + 1] + ld a, [hExperience + 1] ld c, a ld a, [hld] sbc c - ld a, [H_MULTIPLICAND] + ld a, [hExperience] ld c, a ld a, [hl] sbc c @@ -33,7 +33,7 @@ CalcExperience: ; 58f6a (16:4f6a) add a add a ld c, a - ld b, $0 + ld b, 0 ld hl, GrowthRateTable add hl, bc call CalcDSquared @@ -50,96 +50,100 @@ CalcExperience: ; 58f6a (16:4f6a) ld [H_DIVISOR], a ld b, $4 call Divide - ld a, [H_MULTIPLICAND] ; (aliases: H_NUMTOPRINT) + ld a, [H_QUOTIENT + 1] push af - ld a, [H_MULTIPLICAND+1] + ld a, [H_QUOTIENT + 2] push af - ld a, [H_MULTIPLICAND+2] + ld a, [H_QUOTIENT + 3] push af call CalcDSquared ld a, [hl] and $7f ld [H_MULTIPLIER], a call Multiply - ld a, [H_MULTIPLICAND] ; (aliases: H_NUMTOPRINT) + ld a, [H_PRODUCT + 1] push af - ld a, [H_MULTIPLICAND+1] + ld a, [H_PRODUCT + 2] push af - ld a, [H_MULTIPLICAND+2] + ld a, [H_PRODUCT + 3] push af ld a, [hli] push af xor a ld [H_MULTIPLICAND], a - ld [H_MULTIPLICAND+1], a + ld [H_MULTIPLICAND + 1], a ld a, d - ld [H_MULTIPLICAND+2], a + ld [H_MULTIPLICAND + 2], a ld a, [hli] ld [H_MULTIPLIER], a call Multiply ld b, [hl] - ld a, [H_MULTIPLICAND+2] + ld a, [H_PRODUCT + 3] sub b - ld [H_MULTIPLICAND+2], a + ld [H_PRODUCT + 3], a ld b, $0 - ld a, [H_MULTIPLICAND+1] + ld a, [H_PRODUCT + 2] sbc b - ld [H_MULTIPLICAND+1], a - ld a, [H_MULTIPLICAND] + ld [H_PRODUCT + 2], a + ld a, [H_PRODUCT + 1] sbc b - ld [H_MULTIPLICAND], a + ld [H_PRODUCT + 1], a +; The difference of the linear term and the constant term consists of 3 bytes +; starting at H_PRODUCT + 1. Below, hExperience (an alias of that address) will +; be used instead for the further work of adding or subtracting the squared +; term and adding the cubed term. pop af and $80 jr nz, .subtractSquaredTerm ; check sign pop bc - ld a, [H_MULTIPLICAND+2] + ld a, [hExperience + 2] add b - ld [H_MULTIPLICAND+2], a + ld [hExperience + 2], a pop bc - ld a, [H_MULTIPLICAND+1] + ld a, [hExperience + 1] adc b - ld [H_MULTIPLICAND+1], a + ld [hExperience + 1], a pop bc - ld a, [H_MULTIPLICAND] + ld a, [hExperience] adc b - ld [H_MULTIPLICAND], a + ld [hExperience], a jr .addCubedTerm .subtractSquaredTerm pop bc - ld a, [H_MULTIPLICAND+2] + ld a, [hExperience + 2] sub b - ld [H_MULTIPLICAND+2], a + ld [hExperience + 2], a pop bc - ld a, [H_MULTIPLICAND+1] + ld a, [hExperience + 1] sbc b - ld [H_MULTIPLICAND+1], a + ld [hExperience + 1], a pop bc - ld a, [H_MULTIPLICAND] + ld a, [hExperience] sbc b - ld [H_MULTIPLICAND], a + ld [hExperience], a .addCubedTerm pop bc - ld a, [H_MULTIPLICAND+2] + ld a, [hExperience + 2] add b - ld [H_MULTIPLICAND+2], a + ld [hExperience + 2], a pop bc - ld a, [H_MULTIPLICAND+1] + ld a, [hExperience + 1] adc b - ld [H_MULTIPLICAND+1], a + ld [hExperience + 1], a pop bc - ld a, [H_MULTIPLICAND] + ld a, [hExperience] adc b - ld [H_MULTIPLICAND], a + ld [hExperience], a ret ; calculates d*d CalcDSquared: ; 59010 (16:5010) xor a - ld [H_MULTIPLICAND], a ; (aliases: H_NUMTOPRINT) - ld [H_MULTIPLICAND+1], a + ld [H_MULTIPLICAND], a + ld [H_MULTIPLICAND + 1], a ld a, d - ld [H_MULTIPLICAND+2], a - ld [H_MULTIPLIER], a ; (aliases: H_DIVISOR, H_REMAINDER, H_POWEROFTEN) + ld [H_MULTIPLICAND + 2], a + ld [H_MULTIPLIER], a jp Multiply ; each entry has the following scheme: diff --git a/engine/game_corner_slots.asm b/engine/game_corner_slots.asm index b3b2490c..ff17d4d3 100755 --- a/engine/game_corner_slots.asm +++ b/engine/game_corner_slots.asm @@ -7,7 +7,7 @@ StartSlotMachine: ; 37e2d (d:7e2d) cp $ff jr z, .printSomeonesKeys callba AbleToPlaySlotsCheck - ld a, [wHiddenObjectFunctionArgument] + ld a, [wCanPlaySlots] and a ret z ld a, [wLuckySlotHiddenObjectIndex] diff --git a/engine/game_corner_slots2.asm b/engine/game_corner_slots2.asm index 850b1f99..643536ea 100755 --- a/engine/game_corner_slots2.asm +++ b/engine/game_corner_slots2.asm @@ -1,4 +1,4 @@ -AbleToPlaySlotsCheck ; 2ff09 (b:7f09) +AbleToPlaySlotsCheck: ; 2ff09 (b:7f09) ld a, [wSpriteStateData1 + 2] and $8 jr z, .done ; not able @@ -19,7 +19,7 @@ AbleToPlaySlotsCheck ; 2ff09 (b:7f09) call PrintPredefTextID xor a .done - ld [wWhichTrade], a + ld [wCanPlaySlots], a ret GameCornerCoinCaseText: ; 2ff32 (b:7f32) diff --git a/engine/give_pokemon.asm b/engine/give_pokemon.asm index 45e88b9c..4b45631d 100755 --- a/engine/give_pokemon.asm +++ b/engine/give_pokemon.asm @@ -1,13 +1,16 @@ _GivePokemon: ; 4fda5 (13:7da5) +; returns success in carry +; and whether the mon was added to the party in [wAddedToParty] call EnableAutoTextBoxDrawing xor a - ld [wccd3], a + ld [wAddedToParty], a ld a, [wPartyCount] cp PARTY_LENGTH - jr c, .asm_4fe01 + jr c, .addToParty ld a, [W_NUMINBOX] cp MONS_PER_BOX - jr nc, .asm_4fdf9 + jr nc, .boxFull +; add to box xor a ld [W_ENEMYBATTSTATUS3], a ld a, [wcf91] @@ -19,32 +22,32 @@ _GivePokemon: ; 4fda5 (13:7da5) ld a, [wCurrentBoxNum] and $7f cp 9 - jr c, .asm_4fdec + jr c, .singleDigitBoxNum sub 9 ld [hl], "1" inc hl add "0" - jr .asm_4fdee -.asm_4fdec + jr .next +.singleDigitBoxNum add "1" -.asm_4fdee +.next ld [hli], a ld [hl], "@" ld hl, SetToBoxText call PrintText scf ret -.asm_4fdf9 +.boxFull ld hl, BoxIsFullText call PrintText and a ret -.asm_4fe01 +.addToParty call SetPokedexOwnedFlag call AddPartyMon - ld a, $1 + ld a, 1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a - ld [wccd3], a + ld [wAddedToParty], a scf ret diff --git a/engine/hidden_object_functions17.asm b/engine/hidden_object_functions17.asm index 841929b8..44941d36 100755 --- a/engine/hidden_object_functions17.asm +++ b/engine/hidden_object_functions17.asm @@ -55,7 +55,7 @@ KabutopsFossilText: ; 5dbd4 (17:5bd4) DisplayMonFrontSpriteInBox: ; 5dbd9 (17:5bd9) ; Displays a pokemon's front sprite in a pop-up window. ; [wcf91] = pokemon interal id number - ld a, $1 + ld a, 1 ld [H_AUTOBGTRANSFERENABLED], a call Delay3 xor a @@ -85,7 +85,7 @@ PrintBlackboardLinkCableText: ; 5dc1a (17:5c1a) call EnableAutoTextBoxDrawing ld a, $1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a - ld a, [wWhichTrade] + ld a, [wHiddenObjectFunctionArgument] call PrintPredefTextID ret @@ -310,7 +310,7 @@ VermilionGymTrashText: ; 5ddf7 (17:5df7) GymTrashScript: ; 5ddfc (17:5dfc) call EnableAutoTextBoxDrawing - ld a, [wWhichTrade] + ld a, [wHiddenObjectFunctionArgument] ld [wcd5b], a ; Don't do the trash can puzzle if it's already been done. diff --git a/engine/hidden_object_functions7.asm b/engine/hidden_object_functions7.asm index 31ae17a4..8e8b27b1 100755 --- a/engine/hidden_object_functions7.asm +++ b/engine/hidden_object_functions7.asm @@ -128,7 +128,7 @@ CinnabarGymQuiz: ; 1ea25 (7:6a25) TX_ASM xor a ld [wda38], a - ld a, [wWhichTrade] + ld a, [wHiddenObjectFunctionArgument] push af and $f ld [$ffdb], a diff --git a/engine/items/itemfinder.asm b/engine/items/itemfinder.asm index 96abecd3..51277632 100755 --- a/engine/items/itemfinder.asm +++ b/engine/items/itemfinder.asm @@ -1,14 +1,14 @@ HiddenItemNear: ; 7481f (1d:481f) ld hl, HiddenItemCoords - ld b, $0 -.asm_74824 - ld de, $0003 + ld b, 0 +.loop + ld de, 3 ld a, [W_CURMAP] call IsInRestOfArray ret nc ; return if current map has no hidden items push bc push hl - ld hl, wd6f0 + ld hl, wObtainedHiddenItemsFlags ld c, b ld b, $2 predef FlagActionPredef @@ -22,28 +22,30 @@ HiddenItemNear: ; 7481f (1d:481f) inc hl ld e, [hl] inc hl - jr nz, .asm_74824 + jr nz, .loop ; if the item has already been obtained +; check if the item is within 4-5 tiles (depending on the direction of item) ld a, [W_YCOORD] - call Func_7486b + call Sub5ClampTo0 cp d - jr nc, .asm_74824 + jr nc, .loop ld a, [W_YCOORD] - add $4 + add 4 cp d - jr c, .asm_74824 + jr c, .loop ld a, [W_XCOORD] - call Func_7486b + call Sub5ClampTo0 cp e - jr nc, .asm_74824 + jr nc, .loop ld a, [W_XCOORD] - add $5 + add 5 cp e - jr c, .asm_74824 + jr c, .loop scf ret -Func_7486b: ; 7486b (1d:486b) - sub $5 +Sub5ClampTo0: ; 7486b (1d:486b) +; subtract 5 but clamp to 0 + sub 5 cp $f0 ret c xor a diff --git a/engine/items/items.asm b/engine/items/items.asm index fe2d71c8..bc8d16fa 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -1216,11 +1216,11 @@ ItemUseMedicine: ; dabb (3:5abb) ld bc,-19 add hl,bc ; hl now points to experience ; update experience to minimum for new level - ld a,[$ff96] + ld a,[hExperience] ld [hli],a - ld a,[$ff97] + ld a,[hExperience + 1] ld [hli],a - ld a,[$ff98] + ld a,[hExperience + 2] ld [hl],a pop hl ld a,[wWhichPokemon] @@ -1618,8 +1618,8 @@ ItemUsePokeflute: ; e140 (3:6140) jp PrintText .inBattle xor a - ld [wWhichTrade],a ; initialize variable that indicates if any pokemon were woken up to zero - ld b,~SLP & $FF + ld [wWereAnyMonsAsleep],a + ld b,~SLP & $ff ld hl,wPartyMon1Status call WakeUpEntireParty ld a,[W_ISINBATTLE] @@ -1638,7 +1638,7 @@ ItemUsePokeflute: ; e140 (3:6140) and b ; remove Sleep status ld [hl],a call LoadScreenTilesFromBuffer2 ; restore saved screen - ld a,[wWhichTrade] + ld a,[wWereAnyMonsAsleep] and a ; were any pokemon asleep before playing the flute? ld hl,PlayedFluteNoEffectText jp z,PrintText ; if no pokemon were asleep @@ -1662,9 +1662,9 @@ ItemUsePokeflute: ; e140 (3:6140) ; INPUT: ; hl must point to status of first pokemon in party (player's or enemy's) ; b must equal ~SLP -; [wWhichTrade] should be initialized to 0 +; [wWereAnyMonsAsleep] should be initialized to 0 ; OUTPUT: -; [wWhichTrade]: set to 1 if any pokemon were asleep +; [wWereAnyMonsAsleep]: set to 1 if any pokemon were asleep WakeUpEntireParty: ; e1e5 (3:61e5) ld de,44 ld c,6 @@ -1674,7 +1674,7 @@ WakeUpEntireParty: ; e1e5 (3:61e5) and a,SLP ; is pokemon asleep? jr z,.notAsleep ld a,1 - ld [wWhichTrade],a ; indicate that a pokemon had to be woken up + ld [wWereAnyMonsAsleep],a ; indicate that a pokemon had to be woken up .notAsleep pop af and b ; remove Sleep status @@ -1874,7 +1874,7 @@ ItemUsePPRestore: ; e31e (3:631e) ld a,[wWhichPokemon] push af ld a,[wcf91] - ld [wWhichTrade],a + ld [wPPRestoreItem],a .chooseMon xor a ld [wUpdateSpritesEnabled],a @@ -1884,13 +1884,13 @@ ItemUsePPRestore: ; e31e (3:631e) jr nc,.chooseMove jp .itemNotUsed .chooseMove - ld a,[wWhichTrade] + ld a,[wPPRestoreItem] cp a,ELIXER jp nc,.useElixir ; if Elixir or Max Elixir ld a,$02 ld [wMoveMenuType],a ld hl,RaisePPWhichTechniqueText - ld a,[wWhichTrade] + ld a,[wPPRestoreItem] cp a,ETHER ; is it a PP Up? jr c,.printWhichTechniqueMessage ; if so, print the raise PP message ld hl,RestorePPWhichTechniqueText ; otherwise, print the restore PP message @@ -1911,7 +1911,7 @@ ItemUsePPRestore: ; e31e (3:631e) call GetMoveName call CopyStringToCF4B ; copy name to wcf4b pop hl - ld a,[wWhichTrade] + ld a,[wPPRestoreItem] cp a,ETHER jr nc,.useEther ; if Ether or Max Ether .usePPUp @@ -1973,7 +1973,7 @@ ItemUsePPRestore: ; e31e (3:631e) add hl,bc ; hl now points to move's PP ld a,[wd11e] ld b,a ; b = max PP - ld a,[wWhichTrade] + ld a,[wPPRestoreItem] cp a,MAX_ETHER jr z,.fullyRestorePP ld a,[hl] ; move PP @@ -2005,7 +2005,7 @@ ItemUsePPRestore: ; e31e (3:631e) jr .storeNewAmount .useElixir ; decrement the item ID so that ELIXER becomes ETHER and MAX_ELIXER becomes MAX_ETHER - ld hl,wWhichTrade + ld hl,wPPRestoreItem dec [hl] dec [hl] xor a @@ -2701,13 +2701,13 @@ SendNewMonToBox: ; e7a4 (3:67a4) ld d, a callab CalcExperience pop de - ld a, [H_NUMTOPRINT] ; (aliases: H_MULTIPLICAND) + ld a, [hExperience] ld [de], a inc de - ld a, [$ff97] + ld a, [hExperience + 1] ld [de], a inc de - ld a, [$ff98] + ld a, [hExperience + 2] ld [de], a inc de xor a diff --git a/engine/menu/league_pc.asm b/engine/menu/league_pc.asm index 560ed421..06a7894c 100755 --- a/engine/menu/league_pc.asm +++ b/engine/menu/league_pc.asm @@ -12,7 +12,7 @@ PKMNLeaguePC: ; 0x7657e ld [hTilesetType], a ld [W_SPRITEFLIPPED], a ld [wUpdateSpritesEnabled], a - ld [wTrainerScreenX], a + ld [wHoFTeamIndex2], a ld [wHoFTeamNo], a ld a, [wNumHoFTeams] ld b, a @@ -27,13 +27,13 @@ PKMNLeaguePC: ; 0x7657e ld hl, wHoFTeamNo inc [hl] push bc - ld a, [wTrainerScreenX] - ld [wHoFMonSpecies], a + ld a, [wHoFTeamIndex2] + ld [wHoFTeamIndex], a callba LoadHallOfFameTeams call LeaguePCShowTeam pop bc jr c, .doneShowingTeams - ld hl, wTrainerScreenX + ld hl, wHoFTeamIndex2 inc [hl] ld a, [hl] cp b diff --git a/engine/menu/main_menu.asm b/engine/menu/main_menu.asm index 9e160f81..5dc6e61f 100755 --- a/engine/menu/main_menu.asm +++ b/engine/menu/main_menu.asm @@ -1,17 +1,16 @@ MainMenu: ; 5af2 (1:5af2) ; Check save file - call Func_5bff + call InitOptions xor a - ld [wd08a],a + ld [wOptionsInitialized],a inc a - ld [wd088],a - call Func_609e - jr nc,.next0 + ld [wSaveFileStatus],a + call CheckForPlayerNameInSRAM + jr nc,.mainMenuLoop - ; Predef 52 loads the save from SRAM to RAM predef LoadSAV -.next0 +.mainMenuLoop ld c,20 call DelayFrames xor a ; LINK_STATE_NONE @@ -30,9 +29,10 @@ MainMenu: ; 5af2 (1:5af2) call LoadFontTilePatterns ld hl,wd730 set 6,[hl] - ld a,[wd088] + ld a,[wSaveFileStatus] cp a,1 - jr z,.next1 + jr z,.noSaveFile +; there's a save file coord hl, 0, 0 ld b,6 ld c,13 @@ -41,7 +41,7 @@ MainMenu: ; 5af2 (1:5af2) ld de,ContinueText call PlaceString jr .next2 -.next1 +.noSaveFile coord hl, 0, 0 ld b,4 ld c,13 @@ -63,31 +63,33 @@ MainMenu: ; 5af2 (1:5af2) ld [wTopMenuItemY],a ld a,$B ld [wMenuWatchedKeys],a - ld a,[wd088] + ld a,[wSaveFileStatus] ld [wMaxMenuItem],a call HandleMenuInput - bit 1,a - jp nz,LoadTitlescreenGraphics ; load title screen (gfx and arrangement) + bit 1,a ; pressed B? + jp nz,DisplayTitleScreen ; if so, go back to the title screen ld c,20 call DelayFrames ld a,[wCurrentMenuItem] ld b,a - ld a,[wd088] + ld a,[wSaveFileStatus] cp a,2 - jp z,.next3 - inc b ; adjust MenuArrow_Counter -.next3 + jp z,.skipInc +; If there's no save file, increment the current menu item so that the numbers +; are the same whether or not there's a save file. + inc b +.skipInc ld a,b and a - jr z,.next4 ; if press_A on Continue + jr z,.choseContinue cp a,1 - jp z,Func_5d52 ; if press_A on NewGame - call DisplayOptionMenu ; if press_a on Options + jp z,StartNewGame + call DisplayOptionMenu ld a,1 - ld [wd08a],a - jp .next0 -.next4 - call ContinueGame + ld [wOptionsInitialized],a + jp .mainMenuLoop +.choseContinue + call DisplayContinueGameInfo ld hl,wd126 set 5,[hl] .inputLoop @@ -100,7 +102,7 @@ MainMenu: ; 5af2 (1:5af2) bit 0,a jr nz,.pressedA bit 1,a - jp nz,.next0 ; pressedB + jp nz,.mainMenuLoop ; pressed B jr .inputLoop .pressedA call GBPalWhiteOutWithDelay3 @@ -122,10 +124,10 @@ MainMenu: ; 5af2 (1:5af2) call SpecialWarpIn jp SpecialEnterMap -Func_5bff: ; 5bff (1:5bff) - ld a,1 +InitOptions: ; 5bff (1:5bff) + ld a,1 ; no delay ld [wLetterPrintingDelayFlags],a - ld a,3 + ld a,3 ; medium speed ld [W_OPTIONS],a ret @@ -301,7 +303,7 @@ LinkCanceledText: ; 5d4d (1:5d4d) TX_FAR _LinkCanceledText db "@" -Func_5d52: ; 5d52 (1:5d52) +StartNewGame: ; 5d52 (1:5d52) ld hl, wd732 res 1, [hl] call OakSpeech @@ -337,12 +339,12 @@ CableClubOptionsText: ; 5d97 (1:5d97) db "COLOSSEUM", $4e db "CANCEL@" -ContinueGame: ; 5db5 (1:5db5) +DisplayContinueGameInfo: ; 5db5 (1:5db5) xor a ld [H_AUTOBGTRANSFERENABLED], a coord hl, 4, 7 - ld b, $8 - ld c, $e + ld b, 8 + ld c, 14 call TextBoxBorder coord hl, 5, 9 ld de, SaveScreenInfoText @@ -351,12 +353,12 @@ ContinueGame: ; 5db5 (1:5db5) ld de, wPlayerName call PlaceString coord hl, 17, 11 - call Func_5e2f + call PrintNumBadges coord hl, 16, 13 - call Func_5e42 + call PrintNumOwnedMons coord hl, 13, 15 - call Func_5e55 - ld a, $1 + call PrintPlayTime + ld a, 1 ld [H_AUTOBGTRANSFERENABLED], a ld c, 30 jp DelayFrames @@ -377,17 +379,17 @@ PrintSaveScreenText: ; 5def (1:5def) ld de, wPlayerName call PlaceString coord hl, 17, 4 - call Func_5e2f + call PrintNumBadges coord hl, 16, 6 - call Func_5e42 + call PrintNumOwnedMons coord hl, 13, 8 - call Func_5e55 + call PrintPlayTime ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a ld c, 30 jp DelayFrames -Func_5e2f: ; 5e2f (1:5e2f) +PrintNumBadges: ; 5e2f (1:5e2f) push hl ld hl, W_OBTAINEDBADGES ld b, $1 @@ -397,7 +399,7 @@ Func_5e2f: ; 5e2f (1:5e2f) ld bc, $102 jp PrintNumber -Func_5e42: ; 5e42 (1:5e42) +PrintNumOwnedMons: ; 5e42 (1:5e42) push hl ld hl, wPokedexOwned ld b, wPokedexOwnedEnd - wPokedexOwned @@ -407,7 +409,7 @@ Func_5e42: ; 5e42 (1:5e42) ld bc, $103 jp PrintNumber -Func_5e55: ; 5e55 (1:5e55) +PrintPlayTime: ; 5e55 (1:5e55) ld de, W_PLAYTIMEHOURS + 1 ld bc, $103 call PrintNumber @@ -678,28 +680,32 @@ TextSpeedOptionData: ; 6096 (1:6096) db 7 ; default X coordinate (Medium) db $ff ; terminator -Func_609e: ; 609e (1:609e) - ld a, $a - ld [$0], a +CheckForPlayerNameInSRAM: ; 609e (1:609e) +; Check if the player name data in SRAM has a string terminator character +; (indicating that a name may have been saved there) and return whether it does +; in carry. + ld a, SRAM_ENABLE + ld [MBC1SRamEnable], a ld a, $1 - ld [$6000], a - ld [$4000], a + ld [MBC1SRamBankingMode], a + ld [MBC1SRamBank], a ld b, $b - ld hl, $a598 -.asm_60b0 + ld hl, sPlayerName +.loop ld a, [hli] - cp $50 - jr z, .asm_60c1 + cp "@" + jr z, .found dec b - jr nz, .asm_60b0 + jr nz, .loop +; not found xor a - ld [$0], a - ld [$6000], a + ld [MBC1SRamEnable], a + ld [MBC1SRamBankingMode], a and a ret -.asm_60c1 +.found xor a - ld [$0], a - ld [$6000], a + ld [MBC1SRamEnable], a + ld [MBC1SRamBankingMode], a scf ret diff --git a/engine/menu/pokedex.asm b/engine/menu/pokedex.asm index 08ce0da9..4e173bc0 100755 --- a/engine/menu/pokedex.asm +++ b/engine/menu/pokedex.asm @@ -71,8 +71,8 @@ HandlePokedexSideMenu: ; 4006d (10:406d) ld [wd11e],a ld a,[wd11e] push af - ld a,[wWhichTrade] - push af + ld a,[wDexMaxSeenMon] + push af ; this doesn't need to be preserved ld hl,wPokedexSeen call IsPokemonBitSet ld b,2 @@ -108,7 +108,7 @@ HandlePokedexSideMenu: ; 4006d (10:406d) ld b,1 .exitSideMenu pop af - ld [wWhichTrade],a + ld [wDexMaxSeenMon],a pop af ld [wd11e],a pop af @@ -207,7 +207,7 @@ HandlePokedexListMenu: ; 40111 (10:4111) jr .maxSeenPokemonLoop .storeMaxSeenPokemon ld a,b - ld [wWhichTrade],a ; max seen pokemon + ld [wDexMaxSeenMon],a .loop xor a ld [H_AUTOBGTRANSFERENABLED],a @@ -218,7 +218,7 @@ HandlePokedexListMenu: ; 40111 (10:4111) ld a,[wListScrollOffset] ld [wd11e],a ld d,7 - ld a,[wWhichTrade] + ld a,[wDexMaxSeenMon] cp a,7 jr nc,.printPokemonLoop ld d,a @@ -294,9 +294,9 @@ HandlePokedexListMenu: ; 40111 (10:4111) bit 7,a ; was Down pressed? jr z,.checkIfRightPressed .downPressed ; scroll down one row - ld a,[wWhichTrade] + ld a,[wDexMaxSeenMon] cp a,7 - jp c,.loop + jp c,.loop ; can't if the list is shorter than 7 sub a,7 ld b,a ld a,[wListScrollOffset] @@ -309,9 +309,9 @@ HandlePokedexListMenu: ; 40111 (10:4111) bit 4,a ; was Right pressed? jr z,.checkIfLeftPressed .rightPressed ; scroll down 7 rows - ld a,[wWhichTrade] + ld a,[wDexMaxSeenMon] cp a,7 - jp c,.loop + jp c,.loop ; can't if the list is shorter than 7 sub a,6 ld b,a ld a,[wListScrollOffset] diff --git a/engine/menu/prize_menu.asm b/engine/menu/prize_menu.asm index d1fa0c72..b1b751b9 100755 --- a/engine/menu/prize_menu.asm +++ b/engine/menu/prize_menu.asm @@ -231,18 +231,24 @@ HandlePrizeChoice: ; 528c6 (14:68c6) pop af ld b,a call GivePokemon + +; If either the party or box was full, wait after displaying message. push af - ld a,[wccd3] ; XXX is there room? + ld a,[wAddedToParty] and a call z,WaitForTextScrollButtonPress pop af + +; If the mon couldn't be given to the player (because both the party and box +; were full), return without subtracting coins. ret nc + .SubtractCoins call LoadCoinsToSubtract ld hl,hCoins + 1 ld de,wPlayerCoins + 1 ld c,$02 ; how many bytes - predef SubBCDPredef ; subtract coins (BCD daa operations) + predef SubBCDPredef jp PrintPrizePrice .BagFull ld hl,PrizeRoomBagIsFullTextPtr diff --git a/engine/menu/status_screen.asm b/engine/menu/status_screen.asm index 75de182b..3bf3464a 100755 --- a/engine/menu/status_screen.asm +++ b/engine/menu/status_screen.asm @@ -297,8 +297,8 @@ StatusScreen2: ; 12b57 (4:6b57) push af xor a ld [hTilesetType], a - ld [$ffba], a - ld bc, $0005 + ld [H_AUTOBGTRANSFERENABLED], a + ld bc, NUM_MOVES + 1 ld hl, wMoves call FillMemory ld hl, wLoadedMonMoves @@ -307,13 +307,13 @@ StatusScreen2: ; 12b57 (4:6b57) call CopyData callab FormatMovesString coord hl, 9, 2 - ld bc, $050a + lb bc, 5, 10 call ClearScreenArea ; Clear under name coord hl, 19, 3 ld [hl], $78 coord hl, 0, 8 - ld b, $8 - ld c, $12 + ld b, 8 + ld c, 18 call TextBoxBorder ; Draw move container coord hl, 2, 9 ld de, wMovesString @@ -387,9 +387,9 @@ StatusScreen2: ; 12b57 (4:6b57) jr nz, .PrintPP .PPDone coord hl, 9, 3 - ld de, EXPPointsText + ld de, StatusScreenExpText call PlaceString - ld a, [wLoadedMonLevel] ; level + ld a, [wLoadedMonLevel] push af cp MAX_LEVEL jr z, .Level100 @@ -407,11 +407,11 @@ StatusScreen2: ; 12b57 (4:6b57) coord hl, 12, 4 ld bc, $0307 call PrintNumber ; exp - call .asm_12c86 + call CalcExpToLevelUp ld de, wLoadedMonExp coord hl, 7, 6 ld bc, $0307 - call PrintNumber + call PrintNumber ; exp needed to level up coord hl, 9, 0 call StatusScreen_ClearName coord hl, 9, 1 @@ -422,7 +422,7 @@ StatusScreen2: ; 12b57 (4:6b57) coord hl, 9, 1 call PlaceString ld a, $1 - ld [$ffba], a + ld [H_AUTOBGTRANSFERENABLED], a call Delay3 call WaitForTextScrollButtonPress ; wait for button pop af @@ -433,25 +433,26 @@ StatusScreen2: ; 12b57 (4:6b57) ld [$ff24], a call GBPalWhiteOut jp ClearScreen -.asm_12c86 ; This does some magic with lvl/exp? - ld a, [wLoadedMonLevel] ; Load level + +CalcExpToLevelUp: ; 12c86 (4:6c86) + ld a, [wLoadedMonLevel] cp MAX_LEVEL - jr z, .asm_12ca7 ; If 100 + jr z, .atMaxLevel inc a ld d, a callab CalcExperience ld hl, wLoadedMonExp + 2 - ld a, [$ff98] + ld a, [hExperience + 2] sub [hl] ld [hld], a - ld a, [$ff97] + ld a, [hExperience + 1] sbc [hl] ld [hld], a - ld a, [$ff96] + ld a, [hExperience] sbc [hl] ld [hld], a ret -.asm_12ca7 +.atMaxLevel ld hl, wLoadedMonExp xor a ld [hli], a @@ -459,11 +460,9 @@ StatusScreen2: ; 12b57 (4:6b57) ld [hl], a ret -EXPPointsText: ; 12caf (4:6caf) - db "EXP POINTS", $4e - -LevelUpText: ; 12cba (4:6cba) - db "LEVEL UP@" +StatusScreenExpText: ; 12caf (4:6caf) + db "EXP POINTS" + next "LEVEL UP@" StatusScreen_ClearName: ; 12cc3 (4:6cc3) ld bc, 10 diff --git a/engine/oak_speech.asm b/engine/oak_speech.asm index c7b2f4d6..9b9b1c7e 100755 --- a/engine/oak_speech.asm +++ b/engine/oak_speech.asm @@ -19,9 +19,9 @@ SetDefaultNames: ; 60ca (1:60ca) ld [W_OPTIONS], a pop af ld [wLetterPrintingDelayFlags], a - ld a, [wd08a] + ld a, [wOptionsInitialized] and a - call z, Func_5bff + call z, InitOptions ld hl, NintenText ld de, wPlayerName ld bc, $b diff --git a/engine/oam_dma.asm b/engine/oam_dma.asm index bd89677a..7326445e 100644 --- a/engine/oam_dma.asm +++ b/engine/oam_dma.asm @@ -15,7 +15,7 @@ WriteDMACodeToHRAM: DMARoutine: ; initiate DMA ld a, wOAMBuffer / $100 - ld [$ff46], a + ld [rDMA], a ; wait for DMA to finish ld a, $28 diff --git a/engine/overworld/hidden_items.asm b/engine/overworld/hidden_items.asm index 910fcf04..3fb4ffca 100755 --- a/engine/overworld/hidden_items.asm +++ b/engine/overworld/hidden_items.asm @@ -1,9 +1,9 @@ HiddenItems: ; 76688 (1d:6688) ld hl, HiddenItemCoords - call Func_76857 - ld [wTrainerScreenX], a - ld hl, wd6f0 - ld a, [wTrainerScreenX] + call FindHiddenItemOrCoinsIndex + ld [wHiddenItemOrCoinsIndex], a + ld hl, wObtainedHiddenItemsFlags + ld a, [wHiddenItemOrCoinsIndex] ld c, a ld b, $2 predef FlagActionPredef @@ -11,9 +11,9 @@ HiddenItems: ; 76688 (1d:6688) and a ret nz call EnableAutoTextBoxDrawing - ld a, $1 + ld a, 1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a - ld a, [wWhichTrade] ; item ID + ld a, [wHiddenObjectFunctionArgument] ; item ID ld [wd11e], a call GetItemName tx_pre_jump FoundHiddenItemText @@ -23,12 +23,12 @@ INCLUDE "data/hidden_item_coords.asm" FoundHiddenItemText: ; 7675b (1d:675b) TX_FAR _FoundHiddenItemText TX_ASM - ld a, [wWhichTrade] ; item ID + ld a, [wHiddenObjectFunctionArgument] ; item ID ld b, a ld c, 1 call GiveItem jr nc, .BagFull - ld hl, wd6f0 + ld hl, wObtainedHiddenItemsFlags ld a, [wTrainerScreenX] ld c, a ld b, $1 @@ -56,10 +56,10 @@ HiddenCoins: ; 76799 (1d:6799) and a ret z ld hl, HiddenCoinCoords - call Func_76857 - ld [wTrainerScreenX], a - ld hl, wd6fe - ld a, [wTrainerScreenX] + call FindHiddenItemOrCoinsIndex + ld [wHiddenItemOrCoinsIndex], a + ld hl, wObtainedHiddenCoinsFlags + ld a, [wHiddenItemOrCoinsIndex] ld c, a ld b, $2 predef FlagActionPredef @@ -70,7 +70,7 @@ HiddenCoins: ; 76799 (1d:6799) ld [hCoins - 1], a ld [hCoins], a ld [hCoins + 1], a - ld a, [wWhichTrade] + ld a, [wHiddenObjectFunctionArgument] sub COIN cp 10 jr z, .bcd10 @@ -99,7 +99,7 @@ HiddenCoins: ; 76799 (1d:6799) ld hl, hCoins + 1 ld c, $2 predef AddBCDPredef - ld hl, wd6fe + ld hl, wObtainedHiddenCoinsFlags ld a, [wTrainerScreenX] ld c, a ld b, $1 @@ -130,31 +130,31 @@ DroppedHiddenCoinsText: ; 7684d (1d:684d) TX_FAR _DroppedHiddenCoinsText db "@" -Func_76857: ; 76857 (1d:6857) - ld a, [wTrainerScreenY] +FindHiddenItemOrCoinsIndex: ; 76857 (1d:6857) + ld a, [wHiddenObjectY] ld d, a - ld a, [wTrainerScreenX] + ld a, [wHiddenObjectX] ld e, a ld a, [W_CURMAP] ld b, a - ld c, $ff + ld c, -1 .loop inc c ld a, [hli] cp $ff ; end of the list? ret z ; if so, we're done here cp b - jr nz, .asm_76877 + jr nz, .next1 ld a, [hli] cp d - jr nz, .asm_76878 + jr nz, .next2 ld a, [hli] cp e jr nz, .loop ld a, c ret -.asm_76877 +.next1 inc hl -.asm_76878 +.next2 inc hl jr .loop diff --git a/engine/overworld/hidden_objects.asm b/engine/overworld/hidden_objects.asm index ae67aeed..cabfc093 100755 --- a/engine/overworld/hidden_objects.asm +++ b/engine/overworld/hidden_objects.asm @@ -1,4 +1,4 @@ -Func_46981: ; 46981 (11:6981) +IsPlayerOnDungeonWarp: ; 46981 (11:6981) xor a ld [wWhichDungeonWarp], a ld a, [wd72d] @@ -6,7 +6,7 @@ Func_46981: ; 46981 (11:6981) ret nz call ArePlayerCoordsInArray ret nc - ld a, [wWhichTrade] + ld a, [wCoordIndex] ld [wWhichDungeonWarp], a ld hl, wd72d set 4, [hl] @@ -58,7 +58,7 @@ CheckForHiddenObject: ; 469a0 (11:69a0) ld [wHiddenObjectX], a ld c, a call CheckIfCoordsInFrontOfPlayerMatch - ld a, [$ffea] + ld a, [hCoordsInFrontOfPlayerMatch] and a jr z, .foundMatchingObject inc hl @@ -85,7 +85,7 @@ CheckForHiddenObject: ; 469a0 (11:69a0) ret ; checks if the coordinates in front of the player's sprite match Y in b and X in c -; [$ffea] = $00 if they match, $ff if they don't match +; [hCoordsInFrontOfPlayerMatch] = $00 if they match, $ff if they don't match CheckIfCoordsInFrontOfPlayerMatch: ; 46a01 (11:6a01) ld a, [wSpriteStateData1 + 9] ; player's sprite facing direction cp SPRITE_FACING_UP @@ -127,7 +127,7 @@ CheckIfCoordsInFrontOfPlayerMatch: ; 46a01 (11:6a01) .didNotMatch ld a, $ff .done - ld [$ffea], a + ld [hCoordsInFrontOfPlayerMatch], a ret INCLUDE "data/hidden_objects.asm" diff --git a/engine/overworld/movement.asm b/engine/overworld/movement.asm index 89b09bba..f618261e 100644 --- a/engine/overworld/movement.asm +++ b/engine/overworld/movement.asm @@ -210,9 +210,8 @@ UpdateNPCSprite: ; 4ed1 (1:4ed1) .moveDown ld de, 2*SCREEN_WIDTH add hl, de ; move tile pointer two rows down - ld de, $100 - - ld bc, $400 + lb de, 1, 0 + lb bc, 4, SPRITE_FACING_DOWN jr TryWalking .notDown cp $80 ; $40 <= a < $80: up (or right) @@ -223,8 +222,8 @@ UpdateNPCSprite: ; 4ed1 (1:4ed1) .moveUp ld de, -2*SCREEN_WIDTH add hl, de ; move tile pointer two rows up - ld de, $ff00 - ld bc, $804 + lb de, -1, 0 + lb bc, 8, SPRITE_FACING_UP jr TryWalking .notUp cp $c0 ; $80 <= a < $c0: left (or up) @@ -235,8 +234,8 @@ UpdateNPCSprite: ; 4ed1 (1:4ed1) .moveLeft dec hl dec hl ; move tile pointer two columns left - ld de, $ff - ld bc, $208 + lb de, 0, -1 + lb bc, 2, SPRITE_FACING_LEFT jr TryWalking .notLeft ; $c0 <= a: right (or down) ld a, [wCurSpriteMovement2] @@ -245,8 +244,8 @@ UpdateNPCSprite: ; 4ed1 (1:4ed1) .moveRight inc hl inc hl ; move tile pointer two columns right - ld de, $1 - ld bc, $10c + lb de, 0, 1 + lb bc, 1, SPRITE_FACING_RIGHT jr TryWalking ; changes facing direction by zeroing the movement delta and calling TryWalking diff --git a/engine/palettes.asm b/engine/palettes.asm index a9160d21..a325e0a3 100755 --- a/engine/palettes.asm +++ b/engine/palettes.asm @@ -328,10 +328,10 @@ SendSGBPacket: ; 71feb (1c:5feb) ld [$fff9],a ; send RESET signal (P14=LOW, P15=LOW) xor a - ld [$ff00],a + ld [rJOYP],a ; set P14=HIGH, P15=HIGH ld a,$30 - ld [$ff00],a + ld [rJOYP],a ;load length of packets (16 bytes) ld b,$10 .nextByte @@ -348,10 +348,10 @@ SendSGBPacket: ; 71feb (1c:5feb) ; else (if 0th bit is zero) set P14=LOW,P15=HIGH (send bit 0) ld a,$20 .next0 - ld [$ff00],a + ld [rJOYP],a ; must set P14=HIGH,P15=HIGH between each "pulse" ld a,$30 - ld [$ff00],a + ld [rJOYP],a ; rotation will put next bit in 0th position (so we can always use command ; "bit 0,d" to fetch the bit that has to be sent) rr d @@ -362,10 +362,10 @@ SendSGBPacket: ; 71feb (1c:5feb) jr nz,.nextByte ; send bit 1 as a "stop bit" (end of parameter data) ld a,$20 - ld [$ff00],a + ld [rJOYP],a ; set P14=HIGH,P15=HIGH ld a,$30 - ld [$ff00],a + ld [rJOYP],a xor a ld [$fff9],a ; wait for about 70000 cycles @@ -448,38 +448,38 @@ CheckSGB: ; 7209b (1c:609b) ld [$fff9], a ei call Wait7000 - ld a, [rJOYP] ; $ff0 + ld a, [rJOYP] and $3 cp $3 jr nz, .asm_720fd ld a, $20 - ld [rJOYP], a ; $ff0 - ld a, [rJOYP] ; $ff0 - ld a, [rJOYP] ; $ff0 + ld [rJOYP], a + ld a, [rJOYP] + ld a, [rJOYP] call Wait7000 call Wait7000 ld a, $30 - ld [rJOYP], a ; $ff0 + ld [rJOYP], a call Wait7000 call Wait7000 ld a, $10 - ld [rJOYP], a ; $ff0 - ld a, [rJOYP] ; $ff0 - ld a, [rJOYP] ; $ff0 - ld a, [rJOYP] ; $ff0 - ld a, [rJOYP] ; $ff0 - ld a, [rJOYP] ; $ff0 - ld a, [rJOYP] ; $ff0 + ld [rJOYP], a + ld a, [rJOYP] + ld a, [rJOYP] + ld a, [rJOYP] + ld a, [rJOYP] + ld a, [rJOYP] + ld a, [rJOYP] call Wait7000 call Wait7000 ld a, $30 - ld [rJOYP], a ; $ff0 - ld a, [rJOYP] ; $ff0 - ld a, [rJOYP] ; $ff0 - ld a, [rJOYP] ; $ff0 + ld [rJOYP], a + ld a, [rJOYP] + ld a, [rJOYP] + ld a, [rJOYP] call Wait7000 call Wait7000 - ld a, [rJOYP] ; $ff0 + ld a, [rJOYP] and $3 cp $3 jr nz, .asm_720fd diff --git a/engine/predefs.asm b/engine/predefs.asm index 17f94b73..73a22ad9 100755 --- a/engine/predefs.asm +++ b/engine/predefs.asm @@ -111,7 +111,7 @@ PredefPointers:: ; 4fe79 (13:7e79) add_predef InternalClockTradeAnim add_predef TrainerEngage add_predef IndexToPokedex - add_predef DisplayPicCenteredOrUpperRight; 3B display pic? + add_predef DisplayPicCenteredOrUpperRight add_predef UsedCut add_predef ShowPokedexData add_predef WriteMonMoves @@ -128,15 +128,15 @@ PredefPointers:: ; 4fe79 (13:7e79) add_predef DrawEnemyHUDAndHPBar add_predef LoadTownMap_Nest add_predef PrintMonType - add_predef EmotionBubble; 4C player exclamation + add_predef EmotionBubble add_predef EmptyFunc3; return immediately add_predef AskName add_predef PewterGuys add_predef SaveSAVtoSRAM2 - add_predef LoadSAVCheckSum2 + add_predef LoadSAV2 add_predef LoadSAV add_predef SaveSAVtoSRAM1 - add_predef DoInGameTradeDialogue ; 54 initiate trade + add_predef DoInGameTradeDialogue add_predef HallOfFamePC add_predef DisplayDexRating dbw $1E, _LeaveMapAnim ; wrong bank diff --git a/engine/save.asm b/engine/save.asm index 56468595..7265fa3c 100755 --- a/engine/save.asm +++ b/engine/save.asm @@ -4,11 +4,11 @@ LoadSAV: ; 735e8 (1c:75e8) call ClearScreen call LoadFontTilePatterns call LoadTextBoxTilePatterns - call LoadSAVCheckSum + call LoadSAV0 jr c, .badsum - call LoadSAVCheckSum1 + call LoadSAV1 jr c, .badsum - call LoadSAVCheckSum2 + call LoadSAV2 jr c, .badsum ld a, $2 ; good checksum jr .goodsum @@ -24,14 +24,14 @@ LoadSAV: ; 735e8 (1c:75e8) res 6, [hl] ld a, $1 ; bad checksum .goodsum - ld [wd088], a ; checksum flag + ld [wSaveFileStatus], a ret FileDataDestroyedText: ; 7361e (1c:761e) TX_FAR _FileDataDestroyedText db "@" -LoadSAVCheckSum: ; 73623 (1c:7623) +LoadSAV0: ; 73623 (1c:7623) ld a, SRAM_ENABLE ld [MBC1SRamEnable], a ld a, $1 @@ -43,7 +43,9 @@ LoadSAVCheckSum: ; 73623 (1c:7623) ld c, a ld a, [sMainDataCheckSum] ; SAV's checksum cp c - jp z, .Func_73652 + jp z, .checkSumsMatched + +; If the computed checksum didn't match the saved on, try again. ld hl, sPlayerName ld bc, sMainDataCheckSum - sPlayerName call SAVCheckSum @@ -52,7 +54,7 @@ LoadSAVCheckSum: ; 73623 (1c:7623) cp c jp nz, SAVBadCheckSum -.Func_73652 ; 73652 (1c:7652) +.checkSumsMatched ld hl, sPlayerName ld de, wPlayerName ld bc, 11 @@ -76,7 +78,7 @@ LoadSAVCheckSum: ; 73623 (1c:7623) and a jp SAVGoodChecksum -LoadSAVCheckSum1: ; 73690 (1c:7690) +LoadSAV1: ; 73690 (1c:7690) ld a, SRAM_ENABLE ld [MBC1SRamEnable], a ld a, $1 @@ -96,7 +98,7 @@ LoadSAVCheckSum1: ; 73690 (1c:7690) and a jp SAVGoodChecksum -LoadSAVCheckSum2: ; 736bd (1c:76bd) +LoadSAV2: ; 736bd (1c:76bd) ld a, SRAM_ENABLE ld [MBC1SRamEnable], a ld a, $1 @@ -129,10 +131,11 @@ SAVGoodChecksum: ; 736f8 (1c:76f8) ld [MBC1SRamEnable], a ret -Func_73701: ; 73701 (1c:7701) - call LoadSAVCheckSum - call LoadSAVCheckSum1 - jp LoadSAVCheckSum2 +LoadSAVIgnoreBadCheckSum: ; 73701 (1c:7701) +; unused function that loads save data and ignores bad checksums + call LoadSAV0 + call LoadSAV1 + jp LoadSAV2 SaveSAV: ; 7370a (1c:770a) callba PrintSaveScreenText @@ -140,7 +143,7 @@ SaveSAV: ; 7370a (1c:770a) call SaveSAVConfirm and a ;|0 = Yes|1 = No| ret nz - ld a,[wd088] + ld a,[wSaveFileStatus] dec a jr z,.save call SAVCheckRandomID @@ -270,14 +273,14 @@ SaveSAVtoSRAM2: ; 7380f (1c:780f) SaveSAVtoSRAM: ; 73848 (1c:7848) ld a, $2 - ld [wd088], a + ld [wSaveFileStatus], a call SaveSAVtoSRAM0 call SaveSAVtoSRAM1 jp SaveSAVtoSRAM2 SAVCheckSum: ; 73856 (1c:7856) ;Check Sum (result[1 byte] is complemented) - ld d, $0 + ld d, 0 .loop ld a, [hli] add d @@ -290,11 +293,11 @@ SAVCheckSum: ; 73856 (1c:7856) cpl ret -Func_73863: ; 73863 (1c:7863) +CalcIndividualBoxCheckSums: ; 73863 (1c:7863) ld hl, sBox1 ; sBox7 - ld de, sBoxes1CheckSum2 ; sBoxes2CheckSum2 + ld de, sBank2IndividualBoxChecksums ; sBank3IndividualBoxChecksums ld b, NUM_BOXES / 2 -.asm_7386b +.loop push bc push de ld bc, wBoxMonNicksEnd - W_NUMINBOX @@ -304,21 +307,23 @@ Func_73863: ; 73863 (1c:7863) inc de pop bc dec b - jr nz, .asm_7386b + jr nz, .loop ret -Func_7387b: ; 7387b (1c:787b) - ld hl, PointerTable_73895 +GetBoxSRAMLocation: ; 7387b (1c:787b) +; in: a = box num +; out: b = box SRAM bank, hl = pointer to start of box + ld hl, BoxSRAMPointerTable ld a, [wCurrentBoxNum] and $7f cp NUM_BOXES / 2 - ld b, $2 - jr c, .asm_7388c + ld b, 2 + jr c, .next inc b sub NUM_BOXES / 2 -.asm_7388c +.next ld e, a - ld d, $0 + ld d, 0 add hl, de add hl, de ld a, [hli] @@ -326,7 +331,7 @@ Func_7387b: ; 7387b (1c:787b) ld l, a ret -PointerTable_73895: ; 73895 (1c:7895) +BoxSRAMPointerTable: ; 73895 (1c:7895) dw sBox1 ; sBox7 dw sBox2 ; sBox8 dw sBox3 ; sBox9 @@ -342,9 +347,9 @@ ChangeBox:: ; 738a1 (1c:78a1) and a ret nz ; return if No was chosen ld hl, wCurrentBoxNum - bit 7, [hl] - call z, Func_73a29 - call Func_7393f + bit 7, [hl] ; is it the first time player is changing the box? + call z, EmptyAllSRAMBoxes ; if so, empty all boxes in SRAM + call DisplayChangeBoxMenu call UpdateSprites ld hl, hFlags_0xFFF6 set 1, [hl] @@ -353,17 +358,17 @@ ChangeBox:: ; 738a1 (1c:78a1) res 1, [hl] bit 1, a ret nz - call Func_7387b + call GetBoxSRAMLocation ld e, l ld d, h ld hl, W_NUMINBOX - call Func_7390e + call CopyBoxToOrFromSRAM ; copy old box from WRAM to SRAM ld a, [wCurrentMenuItem] set 7, a ld [wCurrentBoxNum], a - call Func_7387b + call GetBoxSRAMLocation ld de, W_NUMINBOX - call Func_7390e + call CopyBoxToOrFromSRAM ; copy new box from SRAM to WRAM ld hl, W_MAPTEXTPTR ld de, wChangeBoxSavedMapTextPointer ld a, [hli] @@ -384,7 +389,8 @@ WhenYouChangeBoxText: ; 73909 (1c:7909) TX_FAR _WhenYouChangeBoxText db "@" -Func_7390e: ; 7390e (1c:790e) +CopyBoxToOrFromSRAM: ; 7390e (1c:790e) +; copy an entire box from hl to de with b as the SRAM bank push hl ld a, SRAM_ENABLE ld [MBC1SRamEnable], a @@ -395,30 +401,33 @@ Func_7390e: ; 7390e (1c:790e) ld bc, wBoxMonNicksEnd - W_NUMINBOX call CopyData pop hl + +; mark the memory that the box was copied from as am empty box xor a ld [hli], a dec a ld [hl], a + ld hl, sBox1 ; sBox7 - ld bc, sBoxes1CheckSum - sBox1 + ld bc, sBank2AllBoxesChecksum - sBox1 call SAVCheckSum - ld [sBoxes1CheckSum], a ; sBoxes2CheckSum - call Func_73863 + ld [sBank2AllBoxesChecksum], a ; sBank3AllBoxesChecksum + call CalcIndividualBoxCheckSums xor a ld [MBC1SRamBankingMode], a ld [MBC1SRamEnable], a ret -Func_7393f: ; 7393f (1c:793f) +DisplayChangeBoxMenu: ; 7393f (1c:793f) xor a ld [H_AUTOBGTRANSFERENABLED], a - ld a, $3 + ld a, A_BUTTON | B_BUTTON ld [wMenuWatchedKeys], a - ld a, $b + ld a, 11 ld [wMaxMenuItem], a - ld a, $1 + ld a, 1 ld [wTopMenuItemY], a - ld a, $c + ld a, 12 ld [wTopMenuItemX], a xor a ld [wMenuWatchMovingOutOfBounds], a @@ -427,14 +436,14 @@ Func_7393f: ; 7393f (1c:793f) ld [wCurrentMenuItem], a ld [wLastMenuItem], a coord hl, 0, 0 - ld b, $2 - ld c, $9 + ld b, 2 + ld c, 9 call TextBoxBorder ld hl, ChooseABoxText call PrintText coord hl, 11, 0 - ld b, $c - ld c, $7 + ld b, 12 + ld c, 7 call TextBoxBorder ld hl, hFlags_0xFFF6 set 2, [hl] @@ -446,37 +455,37 @@ Func_7393f: ; 7393f (1c:793f) ld a, [wCurrentBoxNum] and $7f cp 9 - jr c, .asm_739a6 + jr c, .singleDigitBoxNum sub 9 coord hl, 8, 2 ld [hl], "1" add "0" - jr .asm_739a8 -.asm_739a6 + jr .next +.singleDigitBoxNum add "1" -.asm_739a8 +.next Coorda 9, 2 coord hl, 1, 2 ld de, BoxNoText call PlaceString - call Func_73a84 + call GetMonCountsForAllBoxes coord hl, 18, 1 - ld de, wWhichTrade + ld de, wBoxMonCounts ld bc, SCREEN_WIDTH ld a, $c -.asm_739c2 +.loop push af ld a, [de] - and a - jr z, .asm_739c9 - ld [hl], $78 -.asm_739c9 + and a ; is the box empty? + jr z, .skipPlacingPokeball + ld [hl], $78 ; place pokeball tile next to box name if box not empty +.skipPlacingPokeball add hl, bc inc de pop af dec a - jr nz, .asm_739c2 - ld a, $1 + jr nz, .loop + ld a, 1 ld [H_AUTOBGTRANSFERENABLED], a ret @@ -501,51 +510,54 @@ BoxNames: ; 739d9 (1c:79d9) BoxNoText: ; 73a21 (1c:7a21) db "BOX No.@" -Func_73a29: ; 73a29 (1c:7a29) +EmptyAllSRAMBoxes: ; 73a29 (1c:7a29) +; marks all boxes in SRAM as empty (initialisation for the first time the +; player changes the box) ld a, SRAM_ENABLE ld [MBC1SRamEnable], a ld a, $1 ld [MBC1SRamBankingMode], a - ld a, $2 + ld a, 2 ld [MBC1SRamBank], a - call Func_73a4b - ld a, $3 + call EmptySRAMBoxesInBank + ld a, 3 ld [MBC1SRamBank], a - call Func_73a4b + call EmptySRAMBoxesInBank xor a ld [MBC1SRamBankingMode], a ld [MBC1SRamEnable], a ret -Func_73a4b: ; 73a4b (1c:7a4b) +EmptySRAMBoxesInBank: ; 73a4b (1c:7a4b) +; marks every box in the current SRAM bank as empty ld hl, sBox1 ; sBox7 - call Func_73a7f + call EmptySRAMBox ld hl, sBox2 ; sBox8 - call Func_73a7f + call EmptySRAMBox ld hl, sBox3 ; sBox9 - call Func_73a7f + call EmptySRAMBox ld hl, sBox4 ; sBox10 - call Func_73a7f + call EmptySRAMBox ld hl, sBox5 ; sBox11 - call Func_73a7f + call EmptySRAMBox ld hl, sBox6 ; sBox12 - call Func_73a7f + call EmptySRAMBox ld hl, sBox1 ; sBox7 - ld bc, sBoxes1CheckSum - sBox1 + ld bc, sBank2AllBoxesChecksum - sBox1 call SAVCheckSum - ld [sBoxes1CheckSum], a ; sBoxes2CheckSum - call Func_73863 + ld [sBank2AllBoxesChecksum], a ; sBank3AllBoxesChecksum + call CalcIndividualBoxCheckSums ret -Func_73a7f: ; 73a7f (1c:7a7f) +EmptySRAMBox: ; 73a7f (1c:7a7f) xor a ld [hli], a dec a ld [hl], a ret -Func_73a84: ; 73a84 (1c:7a84) - ld hl, wWhichTrade +GetMonCountsForAllBoxes: ; 73a84 (1c:7a84) + ld hl, wBoxMonCounts push hl ld a, SRAM_ENABLE ld [MBC1SRamEnable], a @@ -553,24 +565,27 @@ Func_73a84: ; 73a84 (1c:7a84) ld [MBC1SRamBankingMode], a ld a, $2 ld [MBC1SRamBank], a - call Func_73ab8 + call GetMonCountsForBoxesInBank ld a, $3 ld [MBC1SRamBank], a - call Func_73ab8 + call GetMonCountsForBoxesInBank xor a ld [MBC1SRamBankingMode], a ld [MBC1SRamEnable], a pop hl + +; copy the count for the current box from WRAM ld a, [wCurrentBoxNum] and $7f ld c, a - ld b, $0 + ld b, 0 add hl, bc ld a, [W_NUMINBOX] ld [hl], a + ret -Func_73ab8: ; 73ab8 (1c:7ab8) +GetMonCountsForBoxesInBank: ; 73ab8 (1c:7ab8) ld a, [sBox1] ; sBox7 ld [hli], a ld a, [sBox2] ; sBox8 @@ -646,7 +661,7 @@ SaveHallOfFameTeams: ; 73b0d (1c:7b0d) LoadHallOfFameTeams: ; 73b3f (1c:7b3f) ld hl, sHallOfFame ld bc, HOF_TEAM - ld a, [wWhichTrade] + ld a, [wHoFTeamIndex] call AddNTimes ld de, wcc5b ld bc, HOF_TEAM diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm index ea1eb315..cf6ad3d5 100755 --- a/engine/slot_machine.asm +++ b/engine/slot_machine.asm @@ -867,7 +867,7 @@ LoadSlotMachineTiles: ; 378a8 (d:78a8) ld bc, $00f0 call CopyData call EnableLCD - ld hl, wTrainerEngageDistance + ld hl, wSlotMachineWheel1Offset ld a, $1c ld [hli], a ld [hli], a diff --git a/engine/titlescreen.asm b/engine/titlescreen.asm index 3a4e2e4c..5acdd2c9 100755 --- a/engine/titlescreen.asm +++ b/engine/titlescreen.asm @@ -21,7 +21,7 @@ SetDefaultNamesBeforeTitlescreen: ; 42b7 (1:42b7) ld [wc0ef], a ld [wc0f0], a -LoadTitlescreenGraphics: ; 42dd (1:42dd) +DisplayTitleScreen: ; 42dd (1:42dd) call GBPalWhiteOut ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a diff --git a/home/init.asm b/home/init.asm index 932797ac..3e8d1d2b 100644 --- a/home/init.asm +++ b/home/init.asm @@ -23,17 +23,17 @@ rLCDC_DEFAULT EQU %11100011 xor a ld [rIF], a ld [rIE], a - ld [$ff43], a - ld [$ff42], a + ld [rSCX], a + ld [rSCY], a ld [rSB], a ld [rSC], a ld [rWX], a - ld [$ff4a], a - ld [$ff06], a - ld [$ff07], a + ld [rWY], a + ld [rTMA], a + ld [rTAC], a ld [rBGP], a ld [rOBP0], a - ld [$ff49], a + ld [rOBP1], a ld a, rLCDC_ENABLE_MASK ld [rLCDC], a @@ -66,10 +66,10 @@ rLCDC_DEFAULT EQU %11100011 xor a ld [hTilesetType], a - ld [$ff41], a + ld [rSTAT], a ld [hSCX], a ld [hSCY], a - ld [$ff0f], a + ld [rIF], a ld a, 1 << VBLANK + 1 << TIMER + 1 << SERIAL ld [rIE], a diff --git a/hram.asm b/hram.asm index a05f3d18..8bbf7150 100644 --- a/hram.asm +++ b/hram.asm @@ -90,6 +90,8 @@ hNPCSpriteOffset EQU $FF95 ; temp value used when swapping bytes hSwapTemp EQU $FF95 +hExperience EQU $FF96 ; 3 bytes, big endian + ; Multiplcation and division variables are meant ; to overlap for back-to-back usage. Big endian. @@ -261,6 +263,8 @@ hQuotient2 EQU $FFE7 hSpriteVRAMSlotAndFacing EQU $FFE9 +hCoordsInFrontOfPlayerMatch EQU $FFEA + hSpriteAnimFrameCounter EQU $FFEA H_WHOSETURN EQU $FFF3 ; 0 on player’s turn, 1 on enemy’s turn diff --git a/macros.asm b/macros.asm index 5f1deaf6..ba83e73a 100644 --- a/macros.asm +++ b/macros.asm @@ -14,7 +14,7 @@ dex EQUS "db $5f, $50" ; End a Pokedex entry. percent EQUS "* $ff / 100" lb: MACRO ; r, hi, lo - ld \1, (\2) << 8 + (\3) + ld \1, (\2) << 8 + ((\3) & $ff) ENDM diff --git a/main.asm b/main.asm index 08747a5a..c90f5436 100755 --- a/main.asm +++ b/main.asm @@ -3743,7 +3743,7 @@ _AddPartyMon: ; f2e5 (3:72e5) dec de dec de xor a - ld [wHPBarMaxHP], a + ld [wLearningMovesFromDayCare], a predef WriteMonMoves pop de ld a, [wPlayerID] ; set trainer ID to player ID @@ -3758,13 +3758,13 @@ _AddPartyMon: ; f2e5 (3:72e5) callab CalcExperience pop de inc de - ld a, [H_MULTIPLICAND] ; write experience + ld a, [hExperience] ; write experience ld [de], a inc de - ld a, [H_MULTIPLICAND+1] + ld a, [hExperience + 1] ld [de], a inc de - ld a, [H_MULTIPLICAND+2] + ld a, [hExperience + 2] ld [de], a xor a ld b, $a diff --git a/scripts/agatha.asm b/scripts/agatha.asm index e65b1fa2..850cc0bb 100755 --- a/scripts/agatha.asm +++ b/scripts/agatha.asm @@ -67,7 +67,7 @@ AgathaScript0: ; 76490 (1d:6490) ld [hJoyHeld], a ld [wSimulatedJoypadStatesEnd], a ld [wSimulatedJoypadStatesIndex], a - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $3 jr c, .asm_764b4 ld hl, wd865 diff --git a/scripts/bruno.asm b/scripts/bruno.asm index bd28917c..76a5919a 100755 --- a/scripts/bruno.asm +++ b/scripts/bruno.asm @@ -67,7 +67,7 @@ BrunoScript0: ; 76339 (1d:6339) ld [hJoyHeld], a ld [wSimulatedJoypadStatesEnd], a ld [wSimulatedJoypadStatesIndex], a - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $3 jr c, .asm_7635d ld hl, wd864 diff --git a/scripts/ceruleancity.asm b/scripts/ceruleancity.asm index 20873a81..2c7bd449 100755 --- a/scripts/ceruleancity.asm +++ b/scripts/ceruleancity.asm @@ -42,7 +42,7 @@ CeruleanCityScript0: ; 194c8 (6:54c8) ld hl, CeruleanCityCoords1 call ArePlayerCoordsInArray jr nc, .asm_194f7 - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $1 ld a, $8 ld b, SPRITE_FACING_DOWN diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index 330f2234..794d681e 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -9,19 +9,19 @@ DayCareMText1: ; 56254 (15:6254) call SaveScreenTilesToBuffer2 ld a, [W_DAYCARE_IN_USE] and a - jp nz, DayCareMScript_562e1 - ld hl, DayCareMText_5640f + jp nz, .daycareInUse + ld hl, DayCareIntroText call PrintText call YesNoChoice ld a, [wCurrentMenuItem] and a - ld hl, DayCareMText_5643b - jp nz, DayCareMScript_56409 + ld hl, DayCareComeAgainText + jp nz, .done ld a, [wPartyCount] dec a - ld hl, DayCareMText_56445 - jp z, DayCareMScript_56409 - ld hl, DayCareMText_56414 + ld hl, DayCareOnlyHaveOneMonText + jp z, .done + ld hl, DayCareWhichMonText call PrintText xor a ld [wUpdateSpritesEnabled], a @@ -33,17 +33,17 @@ DayCareMText1: ; 56254 (15:6254) call RestoreScreenTilesAndReloadTilePatterns call LoadGBPal pop af - ld hl, DayCareMText_56437 - jp c, DayCareMScript_56409 + ld hl, DayCareAllRightThenText + jp c, .done callab KnowsHMMove - ld hl, DayCareMText_5644a - jp c, DayCareMScript_56409 + ld hl, DayCareCantAcceptMonWithHMText + jp c, .done xor a ld [wPartyAndBillsPCSavedMenuItem], a ld a, [wWhichPokemon] ld hl, wPartyMonNicks call GetPartyMonName - ld hl, DayCareMText_56419 + ld hl, DayCareWillLookAfterMonText call PrintText ld a, 1 ld [W_DAYCARE_IN_USE], a @@ -55,10 +55,10 @@ DayCareMText1: ; 56254 (15:6254) call RemovePokemon ld a, [wcf91] call PlayCry - ld hl, DayCareMText_5641e - jp DayCareMScript_56409 + ld hl, DayCareComeSeeMeInAWhileText + jp .done -DayCareMScript_562e1: ; 562e1 (15:62e1) +.daycareInUse xor a ld hl, W_DAYCAREMONNAME call GetPartyMonName @@ -68,40 +68,41 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) callab CalcLevelFromExperience ld a, d cp MAX_LEVEL - jr c, .asm_56315 + jr c, .skipCalcExp + ld d, MAX_LEVEL callab CalcExperience ld hl, wDayCareMonExp - ld a, [H_NUMTOPRINT] + ld a, [hExperience] ld [hli], a - ld a, [$ff97] + ld a, [hExperience + 1] ld [hli], a - ld a, [$ff98] + ld a, [hExperience + 2] ld [hl], a ld d, MAX_LEVEL -.asm_56315 +.skipCalcExp xor a - ld [wTrainerEngageDistance], a + ld [wDayCareNumLevelsGrown], a ld hl, wDayCareMonBoxLevel ld a, [hl] - ld [wTrainerSpriteOffset], a + ld [wDayCareStartLevel], a cp d ld [hl], d - ld hl, DayCareMText_56432 - jr z, .asm_56333 - ld a, [wTrainerSpriteOffset] + ld hl, DayCareMonNeedsMoreTimeText + jr z, .next + ld a, [wDayCareStartLevel] ld b, a ld a, d sub b - ld [wTrainerEngageDistance], a - ld hl, DayCareMText_56423 + ld [wDayCareNumLevelsGrown], a + ld hl, DayCareMonHasGrownText -.asm_56333 +.next call PrintText ld a, [wPartyCount] cp PARTY_LENGTH - ld hl, DayCareMText_56440 + ld hl, DayCareNoRoomForMonText jp z, .asm_56403 ld de, wTrainerFacingDirection xor a @@ -112,7 +113,7 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) ld a, $1 ld [hli], a ld [hl], $0 - ld a, [wTrainerEngageDistance] + ld a, [wDayCareNumLevelsGrown] inc a ld b, a ld c, $2 @@ -126,13 +127,13 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) pop hl dec b jr nz, .asm_56357 - ld hl, DayCareMText_56428 + ld hl, DayCareOweMoneyText call PrintText ld a, $13 ld [wTextBoxID], a call DisplayTextBoxID call YesNoChoice - ld hl, DayCareMText_56437 + ld hl, DayCareAllRightThenText ld a, [wCurrentMenuItem] and a jp nz, .asm_56403 @@ -144,13 +145,13 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) ld [hMoney + 2], a call HasEnoughMoney jr nc, .asm_56396 - ld hl, DayCareMText_56454 + ld hl, DayCareNotEnoughMoneyText jp .asm_56403 .asm_56396 xor a ld [W_DAYCARE_IN_USE], a - ld hl, wTrainerEngageDistance + ld hl, wDayCareNumLevelsGrown ld [hli], a inc hl ld de, wPlayerMoney + 2 @@ -161,7 +162,7 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) ld a, MONEY_BOX ld [wTextBoxID], a call DisplayTextBoxID - ld hl, DayCareMText_5644f + ld hl, DayCareHeresYourMonText call PrintText ld a, DAYCARE_TO_PARTY ld [wMoveMonType], a @@ -178,10 +179,12 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) ld d, h ld e, l ld a, 1 - ld [wHPBarMaxHP], a + ld [wLearningMovesFromDayCare], a predef WriteMonMoves pop bc pop af + +; set mon's HP to max ld hl, wPartyMon1HP call AddNTimes ld d, h @@ -193,73 +196,74 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) inc de ld a, [hl] ld [de], a + ld a, [wcf91] call PlayCry - ld hl, DayCareMText_5642d - jr DayCareMScript_56409 + ld hl, DayCareGotMonBackText + jr .done .asm_56403 - ld a, [wTrainerSpriteOffset] + ld a, [wDayCareStartLevel] ld [wDayCareMonBoxLevel], a -DayCareMScript_56409: ; 56409 (15:6409) +.done call PrintText jp TextScriptEnd -DayCareMText_5640f: ; 5640f (15:640f) - TX_FAR _DayCareMText_5640f +DayCareIntroText: ; 5640f (15:640f) + TX_FAR _DayCareIntroText db "@" -DayCareMText_56414: ; 56414 (15:6414) - TX_FAR _DayCareMText_56414 +DayCareWhichMonText: ; 56414 (15:6414) + TX_FAR _DayCareWhichMonText db "@" -DayCareMText_56419: ; 56419 (15:6419) - TX_FAR _DayCareMText_56419 +DayCareWillLookAfterMonText: ; 56419 (15:6419) + TX_FAR _DayCareWillLookAfterMonText db "@" -DayCareMText_5641e: ; 5641e (15:641e) - TX_FAR _DayCareMText_5641e +DayCareComeSeeMeInAWhileText: ; 5641e (15:641e) + TX_FAR _DayCareComeSeeMeInAWhileText db "@" -DayCareMText_56423: ; 56423 (15:6423) - TX_FAR _DayCareMText_56423 +DayCareMonHasGrownText: ; 56423 (15:6423) + TX_FAR _DayCareMonHasGrownText db "@" -DayCareMText_56428: ; 56428 (15:6428) - TX_FAR _DayCareMText_56428 +DayCareOweMoneyText: ; 56428 (15:6428) + TX_FAR _DayCareOweMoneyText db "@" -DayCareMText_5642d: ; 5642d (15:642d) - TX_FAR _DayCareMText_5642d +DayCareGotMonBackText: ; 5642d (15:642d) + TX_FAR _DayCareGotMonBackText db "@" -DayCareMText_56432: ; 56432 (15:6432) - TX_FAR _DayCareMText_56432 +DayCareMonNeedsMoreTimeText: ; 56432 (15:6432) + TX_FAR _DayCareMonNeedsMoreTimeText db "@" -DayCareMText_56437: ; 56437 (15:6437) - TX_FAR _DayCareMText_56437 -DayCareMText_5643b: ; 5643b (15:643b) - TX_FAR _DayCareMText_5643b +DayCareAllRightThenText: ; 56437 (15:6437) + TX_FAR _DayCareAllRightThenText +DayCareComeAgainText: ; 5643b (15:643b) + TX_FAR _DayCareComeAgainText db "@" -DayCareMText_56440: ; 56440 (15:6440) - TX_FAR _DayCareMText_56440 +DayCareNoRoomForMonText: ; 56440 (15:6440) + TX_FAR _DayCareNoRoomForMonText db "@" -DayCareMText_56445: ; 56445 (15:6445) - TX_FAR _DayCareMText_56445 +DayCareOnlyHaveOneMonText: ; 56445 (15:6445) + TX_FAR _DayCareOnlyHaveOneMonText db "@" -DayCareMText_5644a: ; 5644a (15:644a) - TX_FAR _DayCareMText_5644a +DayCareCantAcceptMonWithHMText: ; 5644a (15:644a) + TX_FAR _DayCareCantAcceptMonWithHMText db "@" -DayCareMText_5644f: ; 5644f (15:644f) - TX_FAR _DayCareMText_5644f +DayCareHeresYourMonText: ; 5644f (15:644f) + TX_FAR _DayCareHeresYourMonText db "@" -DayCareMText_56454: ; 56454 (15:6454) - TX_FAR _DayCareMText_56454 +DayCareNotEnoughMoneyText: ; 56454 (15:6454) + TX_FAR _DayCareNotEnoughMoneyText db "@" diff --git a/scripts/lance.asm b/scripts/lance.asm index e335914b..a4089be4 100755 --- a/scripts/lance.asm +++ b/scripts/lance.asm @@ -60,7 +60,7 @@ LanceScript0: ; 5a305 (16:6305) jp nc, CheckFightingMapTrainers xor a ld [hJoyHeld], a - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $3 jr nc, .asm_5a325 ld a, $1 diff --git a/scripts/lorelei.asm b/scripts/lorelei.asm index 1f1fcde0..eb6c3e7d 100755 --- a/scripts/lorelei.asm +++ b/scripts/lorelei.asm @@ -68,7 +68,7 @@ LoreleiScript0: ; 761e2 (1d:61e2) ld [hJoyHeld], a ld [wSimulatedJoypadStatesEnd], a ld [wSimulatedJoypadStatesIndex], a - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $3 jr c, .asm_76206 ld hl, wd863 diff --git a/scripts/mansion3.asm b/scripts/mansion3.asm index fa31718f..c22bf761 100755 --- a/scripts/mansion3.asm +++ b/scripts/mansion3.asm @@ -65,7 +65,7 @@ Mansion3Script_5225b: ; 5225b (14:625b) ret nz call ArePlayerCoordsInArray ret nc - ld a, [wWhichTrade] + ld a, [wCoordIndex] ld [wWhichDungeonWarp], a ld hl, wd72d set 4, [hl] diff --git a/scripts/mtmoonpokecenter.asm b/scripts/mtmoonpokecenter.asm index bba73dbd..d4996b4b 100755 --- a/scripts/mtmoonpokecenter.asm +++ b/scripts/mtmoonpokecenter.asm @@ -25,51 +25,51 @@ MtMoonPokecenterText4: ; 492ec (12:52ec) TX_ASM ld a, [wd7c6] add a - jp c, .asm_49353 + jp c, .alreadyBoughtMagikarp ld hl, MtMoonPokecenterText_4935c call PrintText - ld a, $13 + ld a, MONEY_BOX ld [wTextBoxID], a call DisplayTextBoxID call YesNoChoice ld a, [wCurrentMenuItem] and a - jp nz, .asm_4934e + jp nz, .choseNo ld [hMoney], a ld [hMoney + 2], a ld a, $5 ld [hMoney + 1], a call HasEnoughMoney - jr nc, .asm_faa09 + jr nc, .enoughMoney ld hl, MtMoonPokecenterText_49366 - jr .asm_49356 -.asm_faa09 + jr .printText +.enoughMoney ld bc,(MAGIKARP << 8) | 5 call GivePokemon - jr nc, .asm_49359 + jr nc, .done xor a - ld [wWhichTrade], a - ld [wTrainerFacingDirection], a + ld [wPriceTemp], a + ld [wPriceTemp + 2], a ld a, $5 - ld [wTrainerEngageDistance], a - ld hl, wTrainerFacingDirection + ld [wPriceTemp + 1], a + ld hl, wPriceTemp + 2 ld de, wPlayerMoney + 2 ld c, $3 predef SubBCDPredef - ld a, $13 + ld a, MONEY_BOX ld [wTextBoxID], a call DisplayTextBoxID ld hl, wd7c6 set 7, [hl] - jr .asm_49359 -.asm_4934e + jr .done +.choseNo ld hl, MtMoonPokecenterText_49361 - jr .asm_49356 -.asm_49353 + jr .printText +.alreadyBoughtMagikarp ld hl, MtMoonPokecenterText_4936b -.asm_49356 +.printText call PrintText -.asm_49359 +.done jp TextScriptEnd MtMoonPokecenterText_4935c: ; 4935c (12:535c) diff --git a/scripts/museum1f.asm b/scripts/museum1f.asm index 38c3f717..f4d7de10 100755 --- a/scripts/museum1f.asm +++ b/scripts/museum1f.asm @@ -96,11 +96,11 @@ Museum1FText1: ; 5c135 (17:4135) ld hl, wd754 set 0, [hl] xor a - ld [wMuseumPriceTemp], a - ld [wMuseumPriceTemp + 1], a + ld [wPriceTemp], a + ld [wPriceTemp + 1], a ld a, $50 - ld [wMuseumPriceTemp + 2], a - ld hl, wMuseumPriceTemp + 2 + ld [wPriceTemp + 2], a + ld hl, wPriceTemp + 2 ld de, wPlayerMoney + 2 ld c, $3 predef SubBCDPredef diff --git a/scripts/oakslab.asm b/scripts/oakslab.asm index 5463b879..226c2d2d 100755 --- a/scripts/oakslab.asm +++ b/scripts/oakslab.asm @@ -307,7 +307,7 @@ OaksLabScript9: ; 1cd00 (7:4d00) ld a, $d ld [hSpriteIndexOrTextID], a call DisplayTextID - ld a, [wTrainerEngageDistance] + ld a, [wRivalStarterBallSpriteIndex] cp $2 jr nz, .asm_1cd28 ld a, HS_STARTER_BALL_1 @@ -323,7 +323,7 @@ OaksLabScript9: ; 1cd00 (7:4d00) ld [wcc4d], a predef HideObject call Delay3 - ld a, [wWhichTrade] + ld a, [wRivalStarterTemp] ld [W_RIVALSTARTER], a ld [wcf91], a ld [wd11e], a @@ -806,9 +806,9 @@ OaksLabText29: ; 1d102 (7:5102) OaksLabText2: ; 1d102 (7:5102) TX_ASM ld a, STARTER2 - ld [wWhichTrade], a + ld [wRivalStarterTemp], a ld a, $3 - ld [wTrainerEngageDistance], a + ld [wRivalStarterBallSpriteIndex], a ld a, STARTER1 ld b, $2 jr OaksLabScript_1d133 @@ -817,9 +817,9 @@ OaksLabText30: ; 1d113 (7:5113) OaksLabText3: ; 1d113 (7:5113) TX_ASM ld a, STARTER3 - ld [wWhichTrade], a + ld [wRivalStarterTemp], a ld a, $4 - ld [wTrainerEngageDistance], a + ld [wRivalStarterBallSpriteIndex], a ld a, STARTER2 ld b, $3 jr OaksLabScript_1d133 @@ -828,9 +828,9 @@ OaksLabText31: ; 1d124 (7:5124) OaksLabText4: ; 1d124 (7:5124) TX_ASM ld a, STARTER1 - ld [wWhichTrade], a + ld [wRivalStarterTemp], a ld a, $2 - ld [wTrainerEngageDistance], a + ld [wRivalStarterBallSpriteIndex], a ld a, STARTER3 ld b, $4 @@ -858,13 +858,13 @@ OaksLabScript_1d157: ; 1d157 (7:5157) ld a, $9 ld [H_SPRITEDATAOFFSET], a call GetPointerWithinSpriteStateData1 - ld [hl], $0 + ld [hl], SPRITE_FACING_DOWN ld a, $1 ld [H_SPRITEINDEX], a ld a, $9 ld [H_SPRITEDATAOFFSET], a call GetPointerWithinSpriteStateData1 - ld [hl], $c + ld [hl], SPRITE_FACING_RIGHT ld hl, wd730 set 6, [hl] predef StarterDex ; StarterDex diff --git a/scripts/pewterpokecenter.asm b/scripts/pewterpokecenter.asm index 42bc3086..584878eb 100755 --- a/scripts/pewterpokecenter.asm +++ b/scripts/pewterpokecenter.asm @@ -26,39 +26,45 @@ PewterPokecenterText3: ; 5c59b (17:459b) ld c, 32 call DelayFrames ld hl, JigglypuffFacingDirections - ld de, wTrainerFacingDirection - ld bc, $0004 + ld de, wJigglypuffFacingDirections + ld bc, 4 call CopyData - ld a, [wSpriteStateData1 + $32] - ld hl, wTrainerFacingDirection -.asm_5c5c3 + + ld a, [wSpriteStateData1 + 3 * $10 + $2] + ld hl, wJigglypuffFacingDirections +.findMatchingFacingDirectionLoop cp [hl] inc hl - jr nz, .asm_5c5c3 + jr nz, .findMatchingFacingDirectionLoop dec hl push hl ld c, BANK(Music_JigglypuffSong) ld a, MUSIC_JIGGLYPUFF_SONG call PlayMusic pop hl -.asm_5c5d1 +.loop ld a, [hl] - ld [wSpriteStateData1 + $32], a + ld [wSpriteStateData1 + 3 * $10 + $2], a + +; rotate the array push hl - ld hl, wTrainerFacingDirection - ld de, wTrainerEngageDistance - ld bc, $0004 + ld hl, wJigglypuffFacingDirections + ld de, wJigglypuffFacingDirections - 1 + ld bc, 4 call CopyData - ld a, [wTrainerEngageDistance] - ld [wcd42], a + ld a, [wJigglypuffFacingDirections - 1] + ld [wJigglypuffFacingDirections + 3], a pop hl + ld c, 24 call DelayFrames + ld a, [wc026] ld b, a ld a, [wc027] or b - jr nz, .asm_5c5d1 + jr nz, .loop + ld c, 48 call DelayFrames call PlayDefaultMusic diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm index e89630fc..2e5b55f7 100755 --- a/scripts/safarizoneentrance.asm +++ b/scripts/safarizoneentrance.asm @@ -26,7 +26,7 @@ SafariZoneEntranceScriptPointers: ; 751d9 (1d:51d9) ld [hJoyHeld], a ld a, SPRITE_FACING_RIGHT ld [wSpriteStateData1 + 9], a - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $1 jr z, .asm_7520f ld a, $2 diff --git a/scripts/seafoamislands1.asm b/scripts/seafoamislands1.asm index 6a8b23ea..f71fc648 100755 --- a/scripts/seafoamislands1.asm +++ b/scripts/seafoamislands1.asm @@ -10,7 +10,7 @@ SeafoamIslands1Script: ; 447e9 (11:47e9) call CheckBoulderCoords ret nc ld hl, wd7e8 - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $1 jr nz, .asm_44819 set 6, [hl] @@ -36,7 +36,7 @@ SeafoamIslands1Script: ; 447e9 (11:47e9) ld a, $9f ld [wDungeonWarpDestinationMap], a ld hl, Seafoam1HolesCoords - jp Func_46981 + jp IsPlayerOnDungeonWarp Seafoam1HolesCoords: ; 44846 (11:4846) db $06,$11 diff --git a/scripts/seafoamislands2.asm b/scripts/seafoamislands2.asm index 44e92bd0..a62d6bda 100755 --- a/scripts/seafoamislands2.asm +++ b/scripts/seafoamislands2.asm @@ -8,7 +8,7 @@ SeafoamIslands2Script: ; 46315 (11:6315) call CheckBoulderCoords ret nc ld hl, wd87f - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $1 jr nz, .asm_46340 set 0, [hl] @@ -34,7 +34,7 @@ SeafoamIslands2Script: ; 46315 (11:6315) ld a, $a0 ld [wDungeonWarpDestinationMap], a ld hl, Seafoam2HolesCoords - jp Func_46981 + jp IsPlayerOnDungeonWarp Seafoam2HolesCoords: ; 4636d (11:636d) db $06,$12 diff --git a/scripts/seafoamislands3.asm b/scripts/seafoamislands3.asm index 882553ab..0b650135 100755 --- a/scripts/seafoamislands3.asm +++ b/scripts/seafoamislands3.asm @@ -8,7 +8,7 @@ SeafoamIslands3Script: ; 46451 (11:6451) call CheckBoulderCoords ret nc ld hl, wd880 - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $1 jr nz, .asm_4647c set 0, [hl] @@ -34,7 +34,7 @@ SeafoamIslands3Script: ; 46451 (11:6451) ld a, $a1 ld [wDungeonWarpDestinationMap], a ld hl, Seafoam3HolesCoords - jp Func_46981 + jp IsPlayerOnDungeonWarp Seafoam3HolesCoords: ; 464a9 (11:64a9) db $06,$13 diff --git a/scripts/seafoamislands4.asm b/scripts/seafoamislands4.asm index 8009e221..f16ab2c6 100755 --- a/scripts/seafoamislands4.asm +++ b/scripts/seafoamislands4.asm @@ -8,7 +8,7 @@ SeafoamIslands4Script: ; 4658d (11:658d) call CheckBoulderCoords ret nc ld hl, wd881 - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $1 jr nz, .asm_465b8 set 0, [hl] @@ -35,7 +35,7 @@ SeafoamIslands4Script: ; 4658d (11:658d) ld a, $a2 ld [wDungeonWarpDestinationMap], a ld hl, Seafoam4HolesCoords - call Func_46981 + call IsPlayerOnDungeonWarp ld a, [wd732] bit 4, a ret nz diff --git a/scripts/seafoamislands5.asm b/scripts/seafoamislands5.asm index 47583600..ab303728 100755 --- a/scripts/seafoamislands5.asm +++ b/scripts/seafoamislands5.asm @@ -34,7 +34,7 @@ SeafoamIslands5Script0: ; 467c7 (11:67c7) ld hl, CoordsData_467fe call ArePlayerCoordsInArray ret nc - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $3 jr nc, .asm_467e6 ld a, $40 @@ -81,7 +81,7 @@ SeafoamIslands5Script2: ; 46816 (11:6816) call ArePlayerCoordsInArray ld a, $0 jr nc, .asm_46849 - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $1 jr nz, .asm_46837 ld de, RLEMovementData_46859 diff --git a/scripts/silphco7.asm b/scripts/silphco7.asm index 8538d37f..5043b947 100755 --- a/scripts/silphco7.asm +++ b/scripts/silphco7.asm @@ -142,7 +142,7 @@ SilphCo7Script0: ; 51c23 (14:5c23) ld [H_SPRITEINDEX], a call SetSpriteMovementBytesToFF ld de, MovementData_51c7d - ld a, [wWhichTrade] + ld a, [wCoordIndex] ld [wcf0d], a cp $1 jr z, .asm_51c6c diff --git a/scripts/vermiliondock.asm b/scripts/vermiliondock.asm index a8cf3b8d..adae2e91 100755 --- a/scripts/vermiliondock.asm +++ b/scripts/vermiliondock.asm @@ -57,15 +57,15 @@ VermilionDock_1db9b: ; 1db9b (7:5b9b) ld bc, $0078 ld a, $14 call FillMemory - ld a, $1 - ld [$ffba], a + ld a, 1 + ld [H_AUTOBGTRANSFERENABLED], a call Delay3 xor a - ld [$ffba], a - ld [wWhichTrade], a - ld [$ff49], a - ld a, $58 - ld [wTrainerEngageDistance], a + ld [H_AUTOBGTRANSFERENABLED], a + ld [wSSAnneSmokeDriftAmount], a + ld [rOBP1], a + ld a, 88 + ld [wSSAnneSmokeX], a ld hl, wMapViewVRAMPointer ld c, [hl] inc hl @@ -88,11 +88,11 @@ VermilionDock_1db9b: ; 1db9b (7:5b9b) push hl push de call ScheduleEastColumnRedraw - call VermilionDock_1dc59 + call VermilionDock_EmitSmokePuff pop de ld b, $10 .asm_1dc11 - call VermilionDock_1dc42 + call VermilionDock_AnimSmokePuffDriftRight ld c, $8 .asm_1dc16 call VermilionDock_1dc7c @@ -105,7 +105,7 @@ VermilionDock_1db9b: ; 1db9b (7:5b9b) dec e jr nz, .asm_1dbfa xor a - ld [$ff4a], a + ld [rWY], a ld [hWY], a call VermilionDock_1dc94 ld a, $90 @@ -122,33 +122,34 @@ VermilionDock_1db9b: ; 1db9b (7:5b9b) dec [hl] ret -VermilionDock_1dc42: ; 1dc42 (7:5c42) +VermilionDock_AnimSmokePuffDriftRight: ; 1dc42 (7:5c42) push bc push de ld hl, wOAMBuffer + $11 - ld a, [wWhichTrade] + ld a, [wSSAnneSmokeDriftAmount] swap a ld c, a - ld de, $0004 -.asm_1dc50 + ld de, 4 +.loop inc [hl] inc [hl] add hl, de dec c - jr nz, .asm_1dc50 + jr nz, .loop pop de pop bc ret -VermilionDock_1dc59: ; 1dc59 (7:5c59) - ld a, [wTrainerEngageDistance] - sub $10 - ld [wTrainerEngageDistance], a +VermilionDock_EmitSmokePuff: ; 1dc59 (7:5c59) +; new smoke puff above the S.S. Anne's front smokestack + ld a, [wSSAnneSmokeX] + sub 16 + ld [wSSAnneSmokeX], a ld c, a - ld b, $64 - ld a, [wWhichTrade] + ld b, 100 ; Y + ld a, [wSSAnneSmokeDriftAmount] inc a - ld [wWhichTrade], a + ld [wSSAnneSmokeDriftAmount], a ld a, $1 ld de, VermilionDockOAMBlock call WriteOAMBlock @@ -171,7 +172,7 @@ VermilionDock_1dc7c: ; 1dc7c (7:5c7c) cp l jr nz, .asm_1dc86 ld a, h - ld [$ff43], a + ld [rSCX], a .asm_1dc8e ld a, [rLY] cp h diff --git a/scripts/victoryroad2.asm b/scripts/victoryroad2.asm index 51346032..fd095638 100755 --- a/scripts/victoryroad2.asm +++ b/scripts/victoryroad2.asm @@ -49,7 +49,7 @@ VictoryRoad2Script0: ; 517f1 (14:57f1) call CheckBoulderCoords jp nc, CheckFightingMapTrainers ld hl, wd7ee - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $2 jr z, .asm_5180b bit 0, [hl] diff --git a/scripts/victoryroad3.asm b/scripts/victoryroad3.asm index 9aeb1d18..14b6895d 100755 --- a/scripts/victoryroad3.asm +++ b/scripts/victoryroad3.asm @@ -34,7 +34,7 @@ VictoryRoad3Script0: ; 449b7 (11:49b7) ld hl, .coordsData_449f9 call CheckBoulderCoords jp nc, .asm_449fe - ld a, [wWhichTrade] + ld a, [wCoordIndex] cp $1 jr nz, .asm_449dc ld hl, wd126 @@ -60,11 +60,11 @@ VictoryRoad3Script0: ; 449b7 (11:49b7) db $FF .asm_449fe - ld a, $c2 + ld a, VICTORY_ROAD_2 ld [wDungeonWarpDestinationMap], a ld hl, .coordsData_449f9 - call Func_46981 - ld a, [wWhichTrade] + call IsPlayerOnDungeonWarp + ld a, [wCoordIndex] cp $1 jr nz, .asm_44a1b ld hl, wd72d diff --git a/sram.asm b/sram.asm index 9d498df9..f0cf6fac 100644 --- a/sram.asm +++ b/sram.asm @@ -29,8 +29,8 @@ sBox3:: ds wBoxMonNicksEnd - W_NUMINBOX ; a8c4 sBox4:: ds wBoxMonNicksEnd - W_NUMINBOX ; ad26 sBox5:: ds wBoxMonNicksEnd - W_NUMINBOX ; b188 sBox6:: ds wBoxMonNicksEnd - W_NUMINBOX ; b5ea -sBoxes1CheckSum:: ds 1 ; ba4c -sBoxes1CheckSum2:: ds 6 ; ba4d +sBank2AllBoxesChecksum:: ds 1 ; ba4c +sBank2IndividualBoxChecksums:: ds 6 ; ba4d SECTION "Saved Boxes 2", SRAM, BANK[3] @@ -41,5 +41,5 @@ sBox9:: ds wBoxMonNicksEnd - W_NUMINBOX ; a8c4 sBox10:: ds wBoxMonNicksEnd - W_NUMINBOX ; ad26 sBox11:: ds wBoxMonNicksEnd - W_NUMINBOX ; b188 sBox12:: ds wBoxMonNicksEnd - W_NUMINBOX ; b5ea -sBoxes2CheckSum:: ds 1 ; ba4c -sBoxes2CheckSum2:: ds 6 ; ba4d +sBank3AllBoxesChecksum:: ds 1 ; ba4c +sBank3IndividualBoxChecksums:: ds 6 ; ba4d diff --git a/text/maps/daycare_1.asm b/text/maps/daycare_1.asm index a4182351..a42e3cf2 100644 --- a/text/maps/daycare_1.asm +++ b/text/maps/daycare_1.asm @@ -1,16 +1,16 @@ -_DayCareMText_5640f:: ; 8ab95 (22:6b95) +_DayCareIntroText:: ; 8ab95 (22:6b95) text "I run a DAYCARE." line "Would you like me" cont "to raise one of" cont "your #MON?" done -_DayCareMText_56414:: ; 8abd4 (22:6bd4) +_DayCareWhichMonText:: ; 8abd4 (22:6bd4) text "Which #MON" line "should I raise?" prompt -_DayCareMText_56419:: ; 8abf0 (22:6bf0) +_DayCareWillLookAfterMonText:: ; 8abf0 (22:6bf0) text "Fine, I'll look" line "after @" TX_RAM wcd6d @@ -18,12 +18,12 @@ _DayCareMText_56419:: ; 8abf0 (22:6bf0) cont "for a while." prompt -_DayCareMText_5641e:: ; 8ac19 (22:6c19) +_DayCareComeSeeMeInAWhileText:: ; 8ac19 (22:6c19) text "Come see me in" line "a while." done -_DayCareMText_56423:: ; 8ac32 (22:6c32) +_DayCareMonHasGrownText:: ; 8ac32 (22:6c32) text "Your @" TX_RAM wcd6d db $0 @@ -31,15 +31,13 @@ _DayCareMText_56423:: ; 8ac32 (22:6c32) para "By level, it's" line "grown by @" - -DayCareMText_8ac67:: ; 8ac67 (22:6c67) - TX_NUM wTrainerEngageDistance,$1,$3 + TX_NUM wDayCareNumLevelsGrown,$1,$3 text "!" para "Aren't I great?" prompt -_DayCareMText_56428:: ; 8ac7d (22:6c7d) +_DayCareOweMoneyText:: ; 8ac7d (22:6c7d) text "You owe me ¥@" TX_BCD wcd3f, $c2 db $0 @@ -47,14 +45,14 @@ _DayCareMText_56428:: ; 8ac7d (22:6c7d) cont "of this #MON." done -_DayCareMText_5642d:: ; 8acae (22:6cae) +_DayCareGotMonBackText:: ; 8acae (22:6cae) text $52, " got" line "@" TX_RAM W_DAYCAREMONNAME text " back!" done -_DayCareMText_56432:: ; 8acc1 (22:6cc1) +_DayCareMonNeedsMoreTimeText:: ; 8acc1 (22:6cc1) text "Back already?" line "Your @" TX_RAM wcd6d diff --git a/text/maps/daycare_2.asm b/text/maps/daycare_2.asm index c6478a76..b5104e60 100644 --- a/text/maps/daycare_2.asm +++ b/text/maps/daycare_2.asm @@ -1,8 +1,8 @@ -_DayCareMText_56437:: ; 8c000 (23:4000) +_DayCareAllRightThenText:: ; 8c000 (23:4000) text "All right then," line "@@" -_DayCareMText_5643b:: ; 8c013 (23:4013) +_DayCareComeAgainText:: ; 8c013 (23:4013) IF DEF(_YELLOW) text "Come again." ELSE @@ -10,28 +10,28 @@ ELSE ENDC done -_DayCareMText_56440:: ; 8c020 (23:4020) +_DayCareNoRoomForMonText:: ; 8c020 (23:4020) text "You have no room" line "for this #MON!" done -_DayCareMText_56445:: ; 8c041 (23:4041) +_DayCareOnlyHaveOneMonText:: ; 8c041 (23:4041) text "You only have one" line "#MON with you." done -_DayCareMText_5644a:: ; 8c063 (23:4063) +_DayCareCantAcceptMonWithHMText:: ; 8c063 (23:4063) text "I can't accept a" line "#MON that" cont "knows an HM move." done -_DayCareMText_5644f:: ; 8c090 (23:4090) +_DayCareHeresYourMonText:: ; 8c090 (23:4090) text "Thank you! Here's" line "your #MON!" prompt -_DayCareMText_56454:: ; 8c0ad (23:40ad) +_DayCareNotEnoughMoneyText:: ; 8c0ad (23:40ad) text "Hey, you don't" line "have enough ¥!" done diff --git a/wram.asm b/wram.asm index 8633e732..f089352b 100755 --- a/wram.asm +++ b/wram.asm @@ -424,6 +424,10 @@ wNumStepsToTake:: ; cca1 wRLEByteCount:: ; ccd2 ds 1 +wAddedToParty:: ; ccd3 +; 0 = not added +; 1 = added + wSimulatedJoypadStatesEnd:: ; ccd3 ; this is the end of the joypad states ; the list starts above this address and extends downwards in memory until here @@ -431,7 +435,13 @@ wSimulatedJoypadStatesEnd:: ; ccd3 wParentMenuItem:: ; ccd3 -wccd3:: ds 1 ; used in battle, pokemon, PC and game corner stuff +wCanEvolveFlags:: ; ccd3 +; 1 flag for each party member indicating whether it can evolve +; The purpose of these flags is to track which mons levelled up during the +; current battle at the end of the battle when evolution occurs. +; Other methods of evolution simply set it by calling TryEvolvingMon. + ds 1 + wForceEvolution:: wccd4:: ds 1 ; has a direct reference for simulated joypad stuff in vermillion and seafoam @@ -634,9 +644,33 @@ wOverrideSimulatedJoypadStatesMask:: ; cd3b ds 1 +wHoFTeamIndex:: ; cd3d + +wSSAnneSmokeDriftAmount:: ; cd3d +; multiplied by 16 to get the number of times to go right by 2 pixels + +wRivalStarterTemp:: ; cd3d + +wBoxMonCounts:: ; cd3d +; 12 bytes +; array of the number of mons in each box + +wDexMaxSeenMon:: ; cd3d + +wPPRestoreItem:: ; cd3d + +wWereAnyMonsAsleep:: ; cd3d + +wCanPlaySlots:: ; cd3d + +wNumShakes:: ; cd3d + +wDayCareStartLevel:: ; cd3d +; the level of the mon at the time it entered day care + wWhichBadge:: ; cd3d -wMuseumPriceTemp:: ; cd3d +wPriceTemp:: ; cd3d ; 3-byte BCD number wTitleMonSpecies:: ; cd3d @@ -701,6 +735,12 @@ wWhichTrade:: ; cd3d wTrainerSpriteOffset:: ; cd3d ds 1 +wSSAnneSmokeX:: ; cd3e + +wRivalStarterBallSpriteIndex:: ; cd3e + +wDayCareNumLevelsGrown:: ; cd3e + wOptionsBattleAnimCursorX:: ; cd3e wTrainerInfoTextBoxWidth:: ; cd3e @@ -733,6 +773,8 @@ wHiddenObjectFunctionRomBank:: ; cd3e wTrainerEngageDistance:: ; cd3e ds 1 +wJigglypuffFacingDirections:: ; cd3f + wOptionsBattleStyleCursorX:: ; cd3f wTrainerInfoTextBoxNextRowOffset:: ; cd3f @@ -774,6 +816,10 @@ wHiddenObjectY:: ; cd40 wTrainerScreenY:: ; cd40 ds 1 +wHoFTeamIndex2:: ; cd41 + +wHiddenItemOrCoinsIndex:: ; cd41 + wTradedPlayerMonOT:: ; cd41 wHiddenObjectX:: ; cd41 @@ -962,16 +1008,32 @@ wTileMapBackup2:: ; cd81 ; second buffer for temporarily saving and restoring current screen's tiles (e.g. if menus are drawn on top) ds 20 * 18 +wEvoOldSpecies:: ; cee9 + wBuffer:: ; cee9 ; Temporary storage area of 30 bytes. wTownMapCoords:: ; cee9 ; lower nybble is x, upper nybble is y +wLearningMovesFromDayCare:: ; cee9 +; whether WriteMonMoves is being used to make a mon learn moves from day care +; non-zero if so + wHPBarMaxHP:: ; cee9 - ds 2 + ds 1 + +wEvoNewSpecies:: ; ceea + ds 1 + +wEvoMonTileOffset:: ; ceeb + wHPBarOldHP:: ; ceeb - ds 2 + ds 1 + +wEvoCancelled:: ; ceec + ds 1 + wHPBarNewHP:: ; ceed ds 2 wHPBarDelta:: ; ceef @@ -1453,7 +1515,10 @@ W_SUBANIMCOUNTER:: ; d087 ; counts the number of subentries left in the current subanimation ds 1 -wd088:: ds 1 ; savefile checksum (if file is corrupted) +wSaveFileStatus:: +; 1 = no save file or save file is corrupted +; 2 = save file exists and no corruption has been detected + ds 1 W_NUMFBTILES:: ; d089 ; number of tiles in current battle animation frame block @@ -1462,6 +1527,8 @@ W_NUMFBTILES:: ; d089 wTradedMonMovingRight:: ; d08a ; $01 if mon is moving from left gameboy to right gameboy; $00 if vice versa +wOptionsInitialized:: ; d08a + wd08a:: ds 1 ; used with sprites and displaying the option menu on the main menu screen? wAnimCounter:: ; d08b @@ -2079,6 +2146,8 @@ wBoxItems:: ; d53b ds 1 ; end wCurrentBoxNum:: ; d5a0 +; bits 0-6: box number +; bit 7: whether the player has changed boxes before ds 2 wNumHoFTeams:: ; d5a2 @@ -2319,8 +2388,11 @@ W_ROUTE18GATECURSCRIPT:: ; d669 ds 134 -wd6f0:: ds 14 ; flags for hidden items? -wd6fe:: ds 2 ; flags for hidden coins? +wObtainedHiddenItemsFlags:: + ds 14 + +wObtainedHiddenCoinsFlags:: + ds 2 wWalkBikeSurfState:: ; d700 ; $00 = walking -- cgit v1.3.1-sl0p From ea9cc86949cecc3508aeac06b807372b6b0134d8 Mon Sep 17 00:00:00 2001 From: dannye Date: Sun, 19 Jul 2015 03:46:12 -0500 Subject: Name sound effects --- audio.asm | 16 +- constants/music_constants.asm | 176 +++++++++++++++++ engine/battle/animations.asm | 350 ++++++++++++++++----------------- engine/battle/common_text.asm | 2 +- engine/battle/core.asm | 10 +- engine/battle/trainer_ai.asm | 2 +- engine/evolution.asm | 2 +- engine/evos_moves.asm | 2 +- engine/gamefreak.asm | 2 +- engine/hidden_object_functions17.asm | 8 +- engine/hidden_object_functions7.asm | 16 +- engine/intro.asm | 20 +- engine/items/items.asm | 24 +-- engine/learn_move.asm | 2 +- engine/menu/main_menu.asm | 2 +- engine/menu/naming_screen.asm | 2 +- engine/menu/pc.asm | 12 +- engine/menu/players_pc.asm | 8 +- engine/menu/start_menu.asm | 2 +- engine/menu/start_sub_menus.asm | 2 +- engine/menu/vending_machine.asm | 2 +- engine/oak_speech.asm | 2 +- engine/overworld/cable_club_npc.asm | 2 +- engine/overworld/card_key.asm | 2 +- engine/overworld/cut.asm | 2 +- engine/overworld/elevator.asm | 4 +- engine/overworld/healing_machine.asm | 2 +- engine/overworld/hidden_items.asm | 2 +- engine/overworld/ledges.asm | 2 +- engine/overworld/player_animations.asm | 12 +- engine/overworld/pokemart.asm | 2 +- engine/save.asm | 4 +- engine/slot_machine.asm | 10 +- engine/titlescreen.asm | 4 +- engine/town_map.asm | 6 +- engine/trade.asm | 4 +- home.asm | 6 +- home/overworld.asm | 12 +- home/text.asm | 14 +- main.asm | 8 +- scripts/celadongamecorner.asm | 4 +- scripts/cinnabargym.asm | 2 +- scripts/daycarem.asm | 2 +- scripts/lance.asm | 2 +- scripts/mansion1.asm | 2 +- scripts/mansion2.asm | 2 +- scripts/museum1f.asm | 2 +- scripts/rockethideout1.asm | 2 +- scripts/rockethideout2.asm | 2 +- scripts/rockethideout3.asm | 2 +- scripts/rockethideout4.asm | 2 +- scripts/route22gate.asm | 2 +- scripts/route23.asm | 2 +- scripts/vermiliondock.asm | 4 +- scripts/vermiliongym.asm | 2 +- scripts/viridiangym.asm | 2 +- 56 files changed, 487 insertions(+), 311 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/audio.asm b/audio.asm index aaf4f8ed..27570b93 100644 --- a/audio.asm +++ b/audio.asm @@ -538,7 +538,7 @@ INCLUDE "audio/engine_2.asm" Music_PokeFluteInBattle:: ; 22306 (8:6306) - ld a, (SFX_08_46 - SFX_Headers_08) / 3 ; PokeFlute outside of battle + ld a, SFX_BATTLE_06 ; PokeFlute outside of battle call PlaySoundWaitForCurrent ld hl, wc00e ld de, SFX_08_PokeFlute_Ch1 @@ -583,13 +583,13 @@ PlayPokedexRatingSfx:: ; 7d13b (1f:513b) jp PlayDefaultMusic PokedexRatingSfxPointers: ; 7d162 (1f:5162) - db (SFX_1f_51 - SFX_Headers_1f) / 3, BANK(SFX_1f_51) - db (SFX_02_41 - SFX_Headers_02) / 3, BANK(SFX_02_41) - db (SFX_02_3a - SFX_Headers_02) / 3, BANK(SFX_02_3a) - db (SFX_08_46 - SFX_Headers_08) / 3, BANK(SFX_08_46) - db (SFX_08_3a - SFX_Headers_08) / 3, BANK(SFX_08_3a) - db (SFX_02_42 - SFX_Headers_02) / 3, BANK(SFX_02_42) - db (SFX_02_3b - SFX_Headers_02) / 3, BANK(SFX_02_3b) + db SFX_DENIED, BANK(SFX_1f_51) + db SFX_POKEDEX_RATING, BANK(SFX_02_41) + db SFX_GET_ITEM_1, BANK(SFX_02_3a) + db SFX_BATTLE_06, BANK(SFX_08_46) + db SFX_LEVEL_UP, BANK(SFX_08_3a) + db SFX_GET_KEY_ITEM, BANK(SFX_02_42) + db SFX_GET_ITEM_2, BANK(SFX_02_3b) OwnedMonValues: ; 7d170 (1f:5170) db 10, 40, 60, 90, 120, 150, $ff diff --git a/constants/music_constants.asm b/constants/music_constants.asm index 30d11543..260ccd39 100644 --- a/constants/music_constants.asm +++ b/constants/music_constants.asm @@ -4,6 +4,7 @@ music_const: MACRO \1 EQUS "((\2 - SFX_Headers_02) / 3)" ENDM + ; AUDIO_1 music_const MUSIC_PALLET_TOWN, Music_PalletTown music_const MUSIC_POKECENTER, Music_Pokecenter music_const MUSIC_GYM, Music_Gym @@ -25,6 +26,7 @@ ENDM music_const MUSIC_ROUTES4, Music_Routes4 music_const MUSIC_INDIGO_PLATEAU, Music_IndigoPlateau + ; AUDIO_2 music_const MUSIC_GYM_LEADER_BATTLE, Music_GymLeaderBattle music_const MUSIC_TRAINER_BATTLE, Music_TrainerBattle music_const MUSIC_WILD_BATTLE, Music_WildBattle @@ -33,6 +35,7 @@ ENDM music_const MUSIC_DEFEATED_WILD_MON, Music_DefeatedWildMon music_const MUSIC_DEFEATED_GYM_LEADER, Music_DefeatedGymLeader + ; AUDIO_3 music_const MUSIC_TITLE_SCREEN, Music_TitleScreen music_const MUSIC_CREDITS, Music_Credits music_const MUSIC_HALL_OF_FAME, Music_HallOfFame @@ -52,3 +55,176 @@ ENDM music_const MUSIC_MEET_FEMALE_TRAINER, Music_MeetFemaleTrainer music_const MUSIC_MEET_MALE_TRAINER, Music_MeetMaleTrainer + ; AUDIO_1 AUDIO_2 AUDIO_3 + music_const SFX_SNARE_1, SFX_02_01 + music_const SFX_SNARE_2, SFX_02_02 + music_const SFX_SNARE_3, SFX_02_03 + music_const SFX_SNARE_4, SFX_02_04 + music_const SFX_SNARE_5, SFX_02_05 + music_const SFX_TRIANGLE_1, SFX_02_06 + music_const SFX_TRIANGLE_2, SFX_02_07 + music_const SFX_SNARE_6, SFX_02_08 + music_const SFX_SNARE_7, SFX_02_09 + music_const SFX_SNARE_8, SFX_02_0a + music_const SFX_SNARE_9, SFX_02_0b + music_const SFX_CYMBAL_1, SFX_02_0c + music_const SFX_CYMBAL_2, SFX_02_0d + music_const SFX_CYMBAL_3, SFX_02_0e + music_const SFX_MUTED_SNARE_1, SFX_02_0f + music_const SFX_TRIANGLE_3, SFX_02_10 + music_const SFX_MUTED_SNARE_2, SFX_02_11 + music_const SFX_MUTED_SNARE_3, SFX_02_12 + music_const SFX_MUTED_SNARE_4, SFX_02_13 + music_const SFX_CRY_00, SFX_02_14 + music_const SFX_CRY_01, SFX_02_15 + music_const SFX_CRY_02, SFX_02_16 + music_const SFX_CRY_03, SFX_02_17 + music_const SFX_CRY_04, SFX_02_18 + music_const SFX_CRY_05, SFX_02_19 + music_const SFX_CRY_06, SFX_02_1a + music_const SFX_CRY_07, SFX_02_1b + music_const SFX_CRY_08, SFX_02_1c + music_const SFX_CRY_09, SFX_02_1d + music_const SFX_CRY_0A, SFX_02_1e + music_const SFX_CRY_0B, SFX_02_1f + music_const SFX_CRY_0C, SFX_02_20 + music_const SFX_CRY_0D, SFX_02_21 + music_const SFX_CRY_0E, SFX_02_22 + music_const SFX_CRY_0F, SFX_02_23 + music_const SFX_CRY_10, SFX_02_24 + music_const SFX_CRY_11, SFX_02_25 + music_const SFX_CRY_12, SFX_02_26 + music_const SFX_CRY_13, SFX_02_27 + music_const SFX_CRY_14, SFX_02_28 + music_const SFX_CRY_15, SFX_02_29 + music_const SFX_CRY_16, SFX_02_2a + music_const SFX_CRY_17, SFX_02_2b + music_const SFX_CRY_18, SFX_02_2c + music_const SFX_CRY_19, SFX_02_2d + music_const SFX_CRY_1A, SFX_02_2e + music_const SFX_CRY_1B, SFX_02_2f + music_const SFX_CRY_1C, SFX_02_30 + music_const SFX_CRY_1D, SFX_02_31 + music_const SFX_CRY_1E, SFX_02_32 + music_const SFX_CRY_1F, SFX_02_33 + music_const SFX_CRY_20, SFX_02_34 + music_const SFX_CRY_21, SFX_02_35 + music_const SFX_CRY_22, SFX_02_36 + music_const SFX_CRY_23, SFX_02_37 + music_const SFX_CRY_24, SFX_02_38 + music_const SFX_CRY_25, SFX_02_39 + + music_const SFX_GET_ITEM_2, SFX_02_3b + music_const SFX_TINK, SFX_02_3c + music_const SFX_HEAL_HP, SFX_02_3d + music_const SFX_HEAL_AILMENT, SFX_02_3e + music_const SFX_START_MENU, SFX_02_3f + music_const SFX_PRESS_AB, SFX_02_40 + + ; AUDIO_1 AUDIO_3 + music_const SFX_GET_ITEM_1, SFX_02_3a + + music_const SFX_POKEDEX_RATING, SFX_02_41 + music_const SFX_GET_KEY_ITEM, SFX_02_42 + music_const SFX_POISONED, SFX_02_43 + music_const SFX_TRADE_MACHINE, SFX_02_44 + music_const SFX_TURN_ON_PC, SFX_02_45 + music_const SFX_TURN_OFF_PC, SFX_02_46 + music_const SFX_ENTER_PC, SFX_02_47 + music_const SFX_SHRINK, SFX_02_48 + music_const SFX_SWITCH, SFX_02_49 + music_const SFX_HEALING_MACHINE, SFX_02_4a + music_const SFX_TELEPORT_1, SFX_02_4b + music_const SFX_TELEPORT_2, SFX_02_4c + music_const SFX_TELEPORT_3, SFX_02_4d + music_const SFX_LEDGE, SFX_02_4e + music_const SFX_FLY_1, SFX_02_4f + music_const SFX_FLY_2, SFX_02_50 + music_const SFX_DENIED, SFX_02_51 + music_const SFX_ARROW_TILES, SFX_02_52 + music_const SFX_PUSH_BOULDER, SFX_02_53 + music_const SFX_SS_ANNE_HORN, SFX_02_54 + music_const SFX_WITHDRAW_DEPOSIT, SFX_02_55 + music_const SFX_CUT, SFX_02_56 + music_const SFX_GO_INSIDE, SFX_02_57 + music_const SFX_SWAP, SFX_02_58 + music_const SFX_59, SFX_02_59 ; unused, sounds similar to SFX_SLOTS_STOP_WHEEL + music_const SFX_PURCHASE, SFX_02_5a + music_const SFX_COLLISION, SFX_02_5b + music_const SFX_GO_OUTSIDE, SFX_02_5c + music_const SFX_SAVE, SFX_02_5d + + ; AUDIO_1 + music_const SFX_POKEFLUE, SFX_02_5e + music_const SFX_SAFARI_ZONE_PA, SFX_02_5f + + ; AUDIO_2 + music_const SFX_LEVEL_UP, SFX_08_3a + + music_const SFX_BATTLE_01, SFX_08_41 + music_const SFX_BATTLE_02, SFX_08_42 + music_const SFX_BATTLE_03, SFX_08_43 + music_const SFX_BATTLE_04, SFX_08_44 + music_const SFX_BATTLE_05, SFX_08_45 + music_const SFX_BATTLE_06, SFX_08_46 + music_const SFX_BATTLE_07, SFX_08_47 + music_const SFX_BATTLE_08, SFX_08_48 + music_const SFX_BATTLE_09, SFX_08_49 + music_const SFX_BATTLE_0A, SFX_08_4a + music_const SFX_BATTLE_0B, SFX_08_4b + music_const SFX_BATTLE_0C, SFX_08_4c + music_const SFX_BATTLE_0D, SFX_08_4d + music_const SFX_BATTLE_0E, SFX_08_4e + music_const SFX_BATTLE_0F, SFX_08_4f + music_const SFX_BATTLE_10, SFX_08_50 + music_const SFX_BATTLE_11, SFX_08_51 + music_const SFX_BATTLE_12, SFX_08_52 + music_const SFX_BATTLE_13, SFX_08_53 + music_const SFX_BATTLE_14, SFX_08_54 + music_const SFX_BATTLE_15, SFX_08_55 + music_const SFX_BATTLE_16, SFX_08_56 ; unused? + music_const SFX_BATTLE_17, SFX_08_57 + music_const SFX_BATTLE_18, SFX_08_58 + music_const SFX_BATTLE_19, SFX_08_59 + music_const SFX_BATTLE_1A, SFX_08_5a + music_const SFX_BATTLE_1B, SFX_08_5b + music_const SFX_BATTLE_1C, SFX_08_5c + music_const SFX_BATTLE_1D, SFX_08_5d + music_const SFX_BATTLE_1E, SFX_08_5e + music_const SFX_BATTLE_1F, SFX_08_5f + music_const SFX_BATTLE_20, SFX_08_60 + music_const SFX_BATTLE_21, SFX_08_61 + music_const SFX_BATTLE_22, SFX_08_62 + music_const SFX_BATTLE_23, SFX_08_63 + music_const SFX_BATTLE_24, SFX_08_64 + music_const SFX_BATTLE_25, SFX_08_65 + music_const SFX_BATTLE_26, SFX_08_66 + music_const SFX_BATTLE_27, SFX_08_67 + music_const SFX_BATTLE_28, SFX_08_68 + music_const SFX_BATTLE_29, SFX_08_69 + music_const SFX_BATTLE_2A, SFX_08_6a + music_const SFX_BATTLE_2B, SFX_08_6b + music_const SFX_BATTLE_2C, SFX_08_6c + music_const SFX_BATTLE_2D, SFX_08_6d + music_const SFX_BATTLE_2E, SFX_08_6e + music_const SFX_BATTLE_2F, SFX_08_6f + music_const SFX_BATTLE_30, SFX_08_70 + music_const SFX_BATTLE_31, SFX_08_71 + music_const SFX_BATTLE_32, SFX_08_72 + music_const SFX_BATTLE_33, SFX_08_73 + music_const SFX_BATTLE_34, SFX_08_74 + music_const SFX_BATTLE_35, SFX_08_75 + music_const SFX_BATTLE_36, SFX_08_76 + music_const SFX_BATTLE_37, SFX_08_77 + + ; AUDIO_3 + music_const SFX_INTRO_LUNGE, SFX_1f_5e + music_const SFX_INTRO_HIP, SFX_1f_5f + music_const SFX_INTRO_HOP, SFX_1f_60 + music_const SFX_INTRO_RAISE, SFX_1f_61 + music_const SFX_INTRO_CRASH, SFX_1f_62 + music_const SFX_INTRO_WHOOSH, SFX_1f_63 + music_const SFX_SLOTS_STOP_WHEEL, SFX_1f_64 + music_const SFX_SLOTS_REWARD, SFX_1f_65 + music_const SFX_SLOTS_NEW_SPIN, SFX_1f_66 + music_const SFX_SHOOTING_STAR, SFX_1f_67 diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index 6803c38b..19625b15 100755 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -741,7 +741,7 @@ DoBallTossSpecialEffects: ; 78f3e (1e:4f3e) cp a,11 ; is it the beginning of the subanimation? jr nz,.skipPlayingSound ; if it is the beginning of the subanimation, play a sound - ld a,(SFX_08_41 - SFX_Headers_08) / 3 + ld a,SFX_BATTLE_01 call PlaySound .skipPlayingSound ld a,[W_ISINBATTLE] @@ -787,7 +787,7 @@ DoBallShakeSpecialEffects: ; 78f96 (1e:4f96) cp a,4 ; is it the beginning of a shake? jr nz,.skipPlayingSound ; if it is the beginning of a shake, play a sound and wait 2/3 of a second - ld a,(SFX_08_3c - SFX_Headers_08) / 3 + ld a,SFX_TINK call PlaySound ld c,40 call DelayFrames @@ -820,7 +820,7 @@ DoPoofSpecialEffects: ; 78fce (1e:4fce) ld a,[W_SUBANIMCOUNTER] cp a,5 ret nz - ld a,(SFX_08_42 - SFX_Headers_08) / 3 + ld a,SFX_BATTLE_02 jp PlaySound DoRockSlideSpecialEffects: ; 78fd9 (1e:4fd9) @@ -921,7 +921,7 @@ TradeShakePokeball: ; 7904c (1e:504c) jr .loop .done call AnimationCleanOAM - ld a,(SFX_02_44 - SFX_Headers_02) / 3 + ld a,SFX_TRADE_MACHINE jp PlaySound BallMoveDistances1: ; 79078 (1e:5078) @@ -952,7 +952,7 @@ TradeJumpPokeball: ; 507C cp a,$ff jr nz,.skipPlayingSound .playSound ; play sound if next move distance is 12 or this is the last one - ld a,(SFX_08_58 - SFX_Headers_08) / 3 + ld a,SFX_BATTLE_18 call PlaySound .skipPlayingSound push bc @@ -2329,172 +2329,172 @@ IsCryMove: ; 798ad (1e:58ad) ret MoveSoundTable: ; 798bc (1e:58bc) - db (SFX_08_4a - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_4c - SFX_Headers_08) / 3,$10,$80 - db (SFX_08_5d - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_4b - SFX_Headers_08) / 3,$01,$80 - db (SFX_08_4d - SFX_Headers_08) / 3,$00,$40 - db (SFX_08_77 - SFX_Headers_08) / 3,$00,$ff - db (SFX_08_4d - SFX_Headers_08) / 3,$10,$60 - db (SFX_08_4d - SFX_Headers_08) / 3,$20,$80 - db (SFX_08_4d - SFX_Headers_08) / 3,$00,$a0 - db (SFX_08_50 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_4f - SFX_Headers_08) / 3,$20,$40 - db (SFX_08_4f - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_4e - SFX_Headers_08) / 3,$00,$a0 - db (SFX_08_51 - SFX_Headers_08) / 3,$10,$c0 - db (SFX_08_51 - SFX_Headers_08) / 3,$00,$a0 - db (SFX_08_52 - SFX_Headers_08) / 3,$00,$c0 - db (SFX_08_52 - SFX_Headers_08) / 3,$10,$a0 - db (SFX_08_53 - SFX_Headers_08) / 3,$00,$e0 - db (SFX_08_51 - SFX_Headers_08) / 3,$20,$c0 - db (SFX_08_54 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_62 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_55 - SFX_Headers_08) / 3,$01,$80 - db (SFX_08_60 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_57 - SFX_Headers_08) / 3,$f0,$40 - db (SFX_08_5a - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_57 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_61 - SFX_Headers_08) / 3,$10,$80 - db (SFX_08_5b - SFX_Headers_08) / 3,$01,$a0 - db (SFX_08_58 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_5e - SFX_Headers_08) / 3,$00,$60 - db (SFX_08_5e - SFX_Headers_08) / 3,$01,$40 - db (SFX_08_5f - SFX_Headers_08) / 3,$00,$a0 - db (SFX_08_5a - SFX_Headers_08) / 3,$10,$a0 - db (SFX_08_60 - SFX_Headers_08) / 3,$00,$c0 - db (SFX_08_54 - SFX_Headers_08) / 3,$10,$60 - db (SFX_08_5a - SFX_Headers_08) / 3,$00,$a0 - db (SFX_08_62 - SFX_Headers_08) / 3,$11,$c0 - db (SFX_08_5a - SFX_Headers_08) / 3,$20,$c0 - db (SFX_08_61 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_5b - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_5b - SFX_Headers_08) / 3,$20,$c0 - db (SFX_08_59 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_71 - SFX_Headers_08) / 3,$ff,$40 - db (SFX_08_5e - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_4b - SFX_Headers_08) / 3,$00,$c0 - db (SFX_08_4b - SFX_Headers_08) / 3,$00,$40 - db (SFX_08_75 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_67 - SFX_Headers_08) / 3,$40,$60 - db (SFX_08_67 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_67 - SFX_Headers_08) / 3,$ff,$40 - db (SFX_08_6a - SFX_Headers_08) / 3,$80,$c0 - db (SFX_08_59 - SFX_Headers_08) / 3,$10,$a0 - db (SFX_08_59 - SFX_Headers_08) / 3,$21,$e0 - db (SFX_08_69 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_64 - SFX_Headers_08) / 3,$20,$60 - db (SFX_08_6a - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_6c - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_68 - SFX_Headers_08) / 3,$40,$80 - db (SFX_08_69 - SFX_Headers_08) / 3,$f0,$e0 - db (SFX_08_6d - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_6a - SFX_Headers_08) / 3,$f0,$60 - db (SFX_08_68 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_76 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_47 - SFX_Headers_08) / 3,$01,$a0 - db (SFX_08_53 - SFX_Headers_08) / 3,$f0,$20 - db (SFX_08_63 - SFX_Headers_08) / 3,$01,$c0 - db (SFX_08_63 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_5a - SFX_Headers_08) / 3,$00,$e0 - db (SFX_08_66 - SFX_Headers_08) / 3,$01,$60 - db (SFX_08_66 - SFX_Headers_08) / 3,$20,$40 - db (SFX_08_64 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_64 - SFX_Headers_08) / 3,$40,$c0 - db (SFX_08_5b - SFX_Headers_08) / 3,$03,$60 - db (SFX_08_65 - SFX_Headers_08) / 3,$11,$e0 - db (SFX_08_52 - SFX_Headers_08) / 3,$20,$e0 - db (SFX_08_6e - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_5c - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_5c - SFX_Headers_08) / 3,$11,$a0 - db (SFX_08_5c - SFX_Headers_08) / 3,$01,$c0 - db (SFX_08_53 - SFX_Headers_08) / 3,$14,$c0 - db (SFX_08_5b - SFX_Headers_08) / 3,$02,$a0 - db (SFX_08_69 - SFX_Headers_08) / 3,$f0,$80 - db (SFX_08_69 - SFX_Headers_08) / 3,$20,$c0 - db (SFX_08_6f - SFX_Headers_08) / 3,$00,$20 - db (SFX_08_6f - SFX_Headers_08) / 3,$20,$80 - db (SFX_08_6e - SFX_Headers_08) / 3,$12,$60 - db (SFX_08_66 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_54 - SFX_Headers_08) / 3,$01,$e0 - db (SFX_08_69 - SFX_Headers_08) / 3,$0f,$e0 - db (SFX_08_69 - SFX_Headers_08) / 3,$11,$20 - db (SFX_08_50 - SFX_Headers_08) / 3,$10,$40 - db (SFX_08_4f - SFX_Headers_08) / 3,$10,$c0 - db (SFX_08_54 - SFX_Headers_08) / 3,$00,$20 - db (SFX_08_70 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_75 - SFX_Headers_08) / 3,$11,$18 - db (SFX_08_49 - SFX_Headers_08) / 3,$20,$c0 - db (SFX_08_48 - SFX_Headers_08) / 3,$20,$c0 - db (SFX_08_65 - SFX_Headers_08) / 3,$00,$10 - db (SFX_08_66 - SFX_Headers_08) / 3,$f0,$20 - db (SFX_08_73 - SFX_Headers_08) / 3,$f0,$c0 - db (SFX_08_51 - SFX_Headers_08) / 3,$f0,$e0 - db (SFX_08_49 - SFX_Headers_08) / 3,$f0,$40 - db (SFX_08_71 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_73 - SFX_Headers_08) / 3,$80,$40 - db (SFX_08_73 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_54 - SFX_Headers_08) / 3,$11,$20 - db (SFX_08_54 - SFX_Headers_08) / 3,$22,$10 - db (SFX_08_5b - SFX_Headers_08) / 3,$f1,$ff - db (SFX_08_53 - SFX_Headers_08) / 3,$f1,$ff - db (SFX_08_54 - SFX_Headers_08) / 3,$33,$30 - db (SFX_08_72 - SFX_Headers_08) / 3,$40,$c0 - db (SFX_08_4e - SFX_Headers_08) / 3,$20,$20 - db (SFX_08_4e - SFX_Headers_08) / 3,$f0,$10 - db (SFX_08_4f - SFX_Headers_08) / 3,$f8,$10 - db (SFX_08_51 - SFX_Headers_08) / 3,$f0,$10 - db (SFX_08_65 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_58 - SFX_Headers_08) / 3,$00,$c0 - db (SFX_08_72 - SFX_Headers_08) / 3,$c0,$ff - db (SFX_08_49 - SFX_Headers_08) / 3,$f2,$20 - db (SFX_08_74 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_74 - SFX_Headers_08) / 3,$00,$40 - db (SFX_08_49 - SFX_Headers_08) / 3,$00,$40 - db (SFX_08_51 - SFX_Headers_08) / 3,$10,$ff - db (SFX_08_6a - SFX_Headers_08) / 3,$20,$20 - db (SFX_08_72 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_69 - SFX_Headers_08) / 3,$1f,$20 - db (SFX_08_65 - SFX_Headers_08) / 3,$2f,$80 - db (SFX_08_4f - SFX_Headers_08) / 3,$1f,$ff - db (SFX_08_6b - SFX_Headers_08) / 3,$1f,$60 - db (SFX_08_66 - SFX_Headers_08) / 3,$1e,$20 - db (SFX_08_66 - SFX_Headers_08) / 3,$1f,$18 - db (SFX_08_54 - SFX_Headers_08) / 3,$0f,$80 - db (SFX_08_49 - SFX_Headers_08) / 3,$f8,$10 - db (SFX_08_48 - SFX_Headers_08) / 3,$18,$20 - db (SFX_08_72 - SFX_Headers_08) / 3,$08,$40 - db (SFX_08_57 - SFX_Headers_08) / 3,$01,$e0 - db (SFX_08_51 - SFX_Headers_08) / 3,$09,$ff - db (SFX_08_75 - SFX_Headers_08) / 3,$42,$01 - db (SFX_08_5c - SFX_Headers_08) / 3,$00,$ff - db (SFX_08_72 - SFX_Headers_08) / 3,$08,$e0 - db (SFX_08_64 - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_49 - SFX_Headers_08) / 3,$88,$10 - db (SFX_08_65 - SFX_Headers_08) / 3,$48,$ff - db (SFX_08_48 - SFX_Headers_08) / 3,$ff,$ff - db (SFX_08_64 - SFX_Headers_08) / 3,$ff,$10 - db (SFX_08_48 - SFX_Headers_08) / 3,$ff,$04 - db (SFX_08_5c - SFX_Headers_08) / 3,$01,$ff - db (SFX_08_53 - SFX_Headers_08) / 3,$f8,$ff - db (SFX_08_4c - SFX_Headers_08) / 3,$f0,$f0 - db (SFX_08_4f - SFX_Headers_08) / 3,$08,$10 - db (SFX_08_4d - SFX_Headers_08) / 3,$f0,$ff - db (SFX_08_5a - SFX_Headers_08) / 3,$f0,$ff - db (SFX_08_74 - SFX_Headers_08) / 3,$10,$ff - db (SFX_08_4e - SFX_Headers_08) / 3,$f0,$20 - db (SFX_08_6b - SFX_Headers_08) / 3,$f0,$60 - db (SFX_08_61 - SFX_Headers_08) / 3,$12,$10 - db (SFX_08_76 - SFX_Headers_08) / 3,$f0,$20 - db (SFX_08_5e - SFX_Headers_08) / 3,$12,$ff - db (SFX_08_71 - SFX_Headers_08) / 3,$80,$04 - db (SFX_08_73 - SFX_Headers_08) / 3,$f0,$10 - db (SFX_08_69 - SFX_Headers_08) / 3,$f8,$ff - db (SFX_08_66 - SFX_Headers_08) / 3,$f0,$ff - db (SFX_08_51 - SFX_Headers_08) / 3,$01,$ff - db (SFX_08_6c - SFX_Headers_08) / 3,$d8,$04 - db (SFX_08_4b - SFX_Headers_08) / 3,$00,$80 - db (SFX_08_4b - SFX_Headers_08) / 3,$00,$80 + db SFX_BATTLE_0A,$00,$80 + db SFX_BATTLE_0C,$10,$80 + db SFX_BATTLE_1D,$00,$80 + db SFX_BATTLE_0B,$01,$80 + db SFX_BATTLE_0D,$00,$40 + db SFX_BATTLE_37,$00,$ff + db SFX_BATTLE_0D,$10,$60 + db SFX_BATTLE_0D,$20,$80 + db SFX_BATTLE_0D,$00,$a0 + db SFX_BATTLE_10,$00,$80 + db SFX_BATTLE_0F,$20,$40 + db SFX_BATTLE_0F,$00,$80 + db SFX_BATTLE_0E,$00,$a0 + db SFX_BATTLE_11,$10,$c0 + db SFX_BATTLE_11,$00,$a0 + db SFX_BATTLE_12,$00,$c0 + db SFX_BATTLE_12,$10,$a0 + db SFX_BATTLE_13,$00,$e0 + db SFX_BATTLE_11,$20,$c0 + db SFX_BATTLE_14,$00,$80 + db SFX_BATTLE_22,$00,$80 + db SFX_BATTLE_15,$01,$80 + db SFX_BATTLE_20,$00,$80 + db SFX_BATTLE_17,$f0,$40 + db SFX_BATTLE_1A,$00,$80 + db SFX_BATTLE_17,$00,$80 + db SFX_BATTLE_21,$10,$80 + db SFX_BATTLE_1B,$01,$a0 + db SFX_BATTLE_18,$00,$80 + db SFX_BATTLE_1E,$00,$60 + db SFX_BATTLE_1E,$01,$40 + db SFX_BATTLE_1F,$00,$a0 + db SFX_BATTLE_1A,$10,$a0 + db SFX_BATTLE_20,$00,$c0 + db SFX_BATTLE_14,$10,$60 + db SFX_BATTLE_1A,$00,$a0 + db SFX_BATTLE_22,$11,$c0 + db SFX_BATTLE_1A,$20,$c0 + db SFX_BATTLE_21,$00,$80 + db SFX_BATTLE_1B,$00,$80 + db SFX_BATTLE_1B,$20,$c0 + db SFX_BATTLE_19,$00,$80 + db SFX_BATTLE_31,$ff,$40 + db SFX_BATTLE_1E,$00,$80 + db SFX_BATTLE_0B,$00,$c0 + db SFX_BATTLE_0B,$00,$40 + db SFX_BATTLE_35,$00,$80 + db SFX_BATTLE_27,$40,$60 + db SFX_BATTLE_27,$00,$80 + db SFX_BATTLE_27,$ff,$40 + db SFX_BATTLE_2A,$80,$c0 + db SFX_BATTLE_19,$10,$a0 + db SFX_BATTLE_19,$21,$e0 + db SFX_BATTLE_29,$00,$80 + db SFX_BATTLE_24,$20,$60 + db SFX_BATTLE_2A,$00,$80 + db SFX_BATTLE_2C,$00,$80 + db SFX_BATTLE_28,$40,$80 + db SFX_BATTLE_29,$f0,$e0 + db SFX_BATTLE_2D,$00,$80 + db SFX_BATTLE_2A,$f0,$60 + db SFX_BATTLE_28,$00,$80 + db SFX_BATTLE_36,$00,$80 + db SFX_BATTLE_07,$01,$a0 + db SFX_BATTLE_13,$f0,$20 + db SFX_BATTLE_23,$01,$c0 + db SFX_BATTLE_23,$00,$80 + db SFX_BATTLE_1A,$00,$e0 + db SFX_BATTLE_26,$01,$60 + db SFX_BATTLE_26,$20,$40 + db SFX_BATTLE_24,$00,$80 + db SFX_BATTLE_24,$40,$c0 + db SFX_BATTLE_1B,$03,$60 + db SFX_BATTLE_25,$11,$e0 + db SFX_BATTLE_12,$20,$e0 + db SFX_BATTLE_2E,$00,$80 + db SFX_BATTLE_1C,$00,$80 + db SFX_BATTLE_1C,$11,$a0 + db SFX_BATTLE_1C,$01,$c0 + db SFX_BATTLE_13,$14,$c0 + db SFX_BATTLE_1B,$02,$a0 + db SFX_BATTLE_29,$f0,$80 + db SFX_BATTLE_29,$20,$c0 + db SFX_BATTLE_2F,$00,$20 + db SFX_BATTLE_2F,$20,$80 + db SFX_BATTLE_2E,$12,$60 + db SFX_BATTLE_26,$00,$80 + db SFX_BATTLE_14,$01,$e0 + db SFX_BATTLE_29,$0f,$e0 + db SFX_BATTLE_29,$11,$20 + db SFX_BATTLE_10,$10,$40 + db SFX_BATTLE_0F,$10,$c0 + db SFX_BATTLE_14,$00,$20 + db SFX_BATTLE_30,$00,$80 + db SFX_BATTLE_35,$11,$18 + db SFX_BATTLE_09,$20,$c0 + db SFX_BATTLE_08,$20,$c0 + db SFX_BATTLE_25,$00,$10 + db SFX_BATTLE_26,$f0,$20 + db SFX_BATTLE_33,$f0,$c0 + db SFX_BATTLE_11,$f0,$e0 + db SFX_BATTLE_09,$f0,$40 + db SFX_BATTLE_31,$00,$80 + db SFX_BATTLE_33,$80,$40 + db SFX_BATTLE_33,$00,$80 + db SFX_BATTLE_14,$11,$20 + db SFX_BATTLE_14,$22,$10 + db SFX_BATTLE_1B,$f1,$ff + db SFX_BATTLE_13,$f1,$ff + db SFX_BATTLE_14,$33,$30 + db SFX_BATTLE_32,$40,$c0 + db SFX_BATTLE_0E,$20,$20 + db SFX_BATTLE_0E,$f0,$10 + db SFX_BATTLE_0F,$f8,$10 + db SFX_BATTLE_11,$f0,$10 + db SFX_BATTLE_25,$00,$80 + db SFX_BATTLE_18,$00,$c0 + db SFX_BATTLE_32,$c0,$ff + db SFX_BATTLE_09,$f2,$20 + db SFX_BATTLE_34,$00,$80 + db SFX_BATTLE_34,$00,$40 + db SFX_BATTLE_09,$00,$40 + db SFX_BATTLE_11,$10,$ff + db SFX_BATTLE_2A,$20,$20 + db SFX_BATTLE_32,$00,$80 + db SFX_BATTLE_29,$1f,$20 + db SFX_BATTLE_25,$2f,$80 + db SFX_BATTLE_0F,$1f,$ff + db SFX_BATTLE_2B,$1f,$60 + db SFX_BATTLE_26,$1e,$20 + db SFX_BATTLE_26,$1f,$18 + db SFX_BATTLE_14,$0f,$80 + db SFX_BATTLE_09,$f8,$10 + db SFX_BATTLE_08,$18,$20 + db SFX_BATTLE_32,$08,$40 + db SFX_BATTLE_17,$01,$e0 + db SFX_BATTLE_11,$09,$ff + db SFX_BATTLE_35,$42,$01 + db SFX_BATTLE_1C,$00,$ff + db SFX_BATTLE_32,$08,$e0 + db SFX_BATTLE_24,$00,$80 + db SFX_BATTLE_09,$88,$10 + db SFX_BATTLE_25,$48,$ff + db SFX_BATTLE_08,$ff,$ff + db SFX_BATTLE_24,$ff,$10 + db SFX_BATTLE_08,$ff,$04 + db SFX_BATTLE_1C,$01,$ff + db SFX_BATTLE_13,$f8,$ff + db SFX_BATTLE_0C,$f0,$f0 + db SFX_BATTLE_0F,$08,$10 + db SFX_BATTLE_0D,$f0,$ff + db SFX_BATTLE_1A,$f0,$ff + db SFX_BATTLE_34,$10,$ff + db SFX_BATTLE_0E,$f0,$20 + db SFX_BATTLE_2B,$f0,$60 + db SFX_BATTLE_21,$12,$10 + db SFX_BATTLE_36,$f0,$20 + db SFX_BATTLE_1E,$12,$ff + db SFX_BATTLE_31,$80,$04 + db SFX_BATTLE_33,$f0,$10 + db SFX_BATTLE_29,$f8,$ff + db SFX_BATTLE_26,$f0,$ff + db SFX_BATTLE_11,$01,$ff + db SFX_BATTLE_2C,$d8,$04 + db SFX_BATTLE_0B,$00,$80 + db SFX_BATTLE_0B,$00,$80 CopyPicTiles: ; 79aae (1e:5aae) ld a, [H_WHOSETURN] @@ -2929,7 +2929,7 @@ TossBallAnimation: ; 79e16 (1e:5e16) ld a,TOSS_ANIM ld [W_ANIMATIONID],a call PlayAnimation - ld a,(SFX_08_43 - SFX_Headers_08) / 3 + ld a,SFX_BATTLE_03 call PlaySound ld a,BLOCKBALL_ANIM ld [W_ANIMATIONID],a @@ -2945,15 +2945,15 @@ PlayApplyingAttackSound: ; 79e6a (1e:5e6a) cp $a ld a, $20 ld b, $30 - ld c, (SFX_08_50 - SFX_Headers_08) / 3 + ld c, SFX_BATTLE_10 jr z, .asm_79e8b ld a, $e0 ld b, $ff - ld c, (SFX_08_5a - SFX_Headers_08) / 3 + ld c, SFX_BATTLE_1A jr nc, .asm_79e8b ld a, $50 ld b, $1 - ld c, (SFX_08_51 - SFX_Headers_08) / 3 + ld c, SFX_BATTLE_11 .asm_79e8b ld [wc0f1], a ld a, b diff --git a/engine/battle/common_text.asm b/engine/battle/common_text.asm index 11309a86..41e402f3 100644 --- a/engine/battle/common_text.asm +++ b/engine/battle/common_text.asm @@ -64,7 +64,7 @@ PrintBeginningBattleText: ; 58d99 (16:4d99) ld [wc0f1], a ld a, $80 ld [wc0f2], a - ld a, (SFX_08_77 - SFX_Headers_08) / 3 + ld a, SFX_BATTLE_37 call PlaySound jp WaitForSoundToFinish .done diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 5deeb4dc..30b62dea 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -355,7 +355,7 @@ EnemyRan: ; 3c202 (f:4202) ld hl, EnemyRanText .printText call PrintText - ld a, (SFX_08_44 - SFX_Headers_08) / 3 + ld a, SFX_BATTLE_04 call PlaySoundWaitForCurrent xor a ld [H_WHOSETURN], a @@ -864,13 +864,13 @@ FaintEnemyPokemon: ; 0x3c567 xor a ld [wc0f1], a ld [wc0f2], a - ld a, (SFX_08_48 - SFX_Headers_08) / 3 ; SFX_FALL? + ld a, SFX_BATTLE_08 ; SFX_FALL? call PlaySoundWaitForCurrent .sfxwait ld a, [wc02a] - cp (SFX_08_48 - SFX_Headers_08) / 3 + cp SFX_BATTLE_08 jr z, .sfxwait - ld a, (SFX_08_43 - SFX_Headers_08) / 3 ; SFX_DROP + ld a, SFX_BATTLE_03 ; SFX_DROP call PlaySound call WaitForSoundToFinish jr .sfxplayed @@ -1678,7 +1678,7 @@ TryRunningFromBattle: ; 3cab9 (f:4ab9) dec a .playSound ld [wBattleResult], a - ld a, (SFX_08_44 - SFX_Headers_08) / 3 + ld a, SFX_BATTLE_04 call PlaySoundWaitForCurrent ld hl, GotAwayText call PrintText diff --git a/engine/battle/trainer_ai.asm b/engine/battle/trainer_ai.asm index a53f00f6..c803a870 100644 --- a/engine/battle/trainer_ai.asm +++ b/engine/battle/trainer_ai.asm @@ -553,7 +553,7 @@ DecrementAICount: ; 3a695 (e:6695) ret AIPlayRestoringSFX: ; 3a69b (e:669b) - ld a,(SFX_08_3e - SFX_Headers_08) / 3 + ld a,SFX_HEAL_AILMENT jp PlaySoundWaitForCurrent AIUseFullRestore: ; 3a6a0 (e:66a0) diff --git a/engine/evolution.asm b/engine/evolution.asm index 9ed38c21..0f3a0d00 100755 --- a/engine/evolution.asm +++ b/engine/evolution.asm @@ -14,7 +14,7 @@ EvolveMon: ; 7bde9 (1e:7de9) call PlaySound ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a - ld a, (SFX_08_3c - SFX_Headers_08) / 3 + ld a, SFX_TINK call PlaySound call Delay3 xor a diff --git a/engine/evos_moves.asm b/engine/evos_moves.asm index 4a253c68..9cdc617c 100755 --- a/engine/evos_moves.asm +++ b/engine/evos_moves.asm @@ -146,7 +146,7 @@ Evolution_PartyMonLoop: ; loop over party mons push hl ld hl, IntoText call Func_3c59 - ld a, (SFX_02_3b - SFX_Headers_02) / 3 + ld a, SFX_GET_ITEM_2 call PlaySoundWaitForCurrent call WaitForSoundToFinish ld c, 40 diff --git a/engine/gamefreak.asm b/engine/gamefreak.asm index 38c66793..49c938f7 100755 --- a/engine/gamefreak.asm +++ b/engine/gamefreak.asm @@ -26,7 +26,7 @@ LoadShootingStarGraphics: ; 70000 (1c:4000) AnimateShootingStar: ; 70044 (1c:4044) call LoadShootingStarGraphics - ld a, (SFX_1f_67 - SFX_Headers_1f) / 3 + ld a, SFX_SHOOTING_STAR call PlaySound ; Move the big star down and left across the screen. diff --git a/engine/hidden_object_functions17.asm b/engine/hidden_object_functions17.asm index 841929b8..b65ee2c8 100755 --- a/engine/hidden_object_functions17.asm +++ b/engine/hidden_object_functions17.asm @@ -423,7 +423,7 @@ VermilionGymTrashSuccesText1: ; 5dec8 (17:5ec8) TX_FAR _VermilionGymTrashSuccesText1 TX_ASM call WaitForSoundToFinish - ld a, (SFX_02_49 - SFX_Headers_02) / 3 + ld a, SFX_SWITCH call PlaySound call WaitForSoundToFinish jp TextScriptEnd @@ -437,7 +437,7 @@ VermilionGymTrashSuccesText2: ; 5dedb (17:5edb) VermilionGymTrashSuccesPlaySfx: ; 5dee0 (17:5ee0) TX_ASM call WaitForSoundToFinish - ld a, (SFX_02_49 - SFX_Headers_02) / 3 + ld a, SFX_SWITCH call PlaySound call WaitForSoundToFinish jp TextScriptEnd @@ -446,7 +446,7 @@ VermilionGymTrashSuccesText3: ; 5deef (17:5eef) TX_FAR _VermilionGymTrashSuccesText3 TX_ASM call WaitForSoundToFinish - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound call WaitForSoundToFinish jp TextScriptEnd @@ -455,7 +455,7 @@ VermilionGymTrashFailText: ; 5df02 (17:5f02) TX_FAR _VermilionGymTrashFailText TX_ASM call WaitForSoundToFinish - ld a, (SFX_02_51 - SFX_Headers_02) / 3 + ld a, SFX_DENIED call PlaySound call WaitForSoundToFinish jp TextScriptEnd diff --git a/engine/hidden_object_functions7.asm b/engine/hidden_object_functions7.asm index 31ae17a4..4c2ea816 100755 --- a/engine/hidden_object_functions7.asm +++ b/engine/hidden_object_functions7.asm @@ -68,7 +68,7 @@ SafariZoneGameOver: ; 1e9b0 (7:69b0) dec a call PlaySound ld c, BANK(SFX_02_5f) - ld a, (SFX_02_5f - SFX_Headers_02) / 3 + ld a, SFX_SAFARI_ZONE_PA call PlayMusic .asm_1e9c2 ld a, [wc02a] @@ -214,7 +214,7 @@ CinnabarGymQuiz_1ea92: ; 1ea92 (7:6a92) jp CinnabarGymQuiz_1eb0a .asm_1eab8 call WaitForSoundToFinish - ld a, (SFX_02_51 - SFX_Headers_02) / 3 + ld a, SFX_DENIED call PlaySound call WaitForSoundToFinish ld hl, CinnabarGymQuizIncorrectText @@ -247,7 +247,7 @@ CinnabarGymQuizCorrectText: ; 1eae3 (7:6ae3) and a jp nz, TextScriptEnd call WaitForSoundToFinish - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound call WaitForSoundToFinish jp TextScriptEnd @@ -335,22 +335,22 @@ BillsHousePC: ; 1eb6e (7:6b6e) tx_pre BillsHouseInitiatedText ld c, 32 call DelayFrames - ld a, (SFX_02_3c - SFX_Headers_02) / 3 + ld a, SFX_TINK call PlaySound call WaitForSoundToFinish ld c, 80 call DelayFrames - ld a, (SFX_02_48 - SFX_Headers_02) / 3 + ld a, SFX_SHRINK call PlaySound call WaitForSoundToFinish ld c, 48 call DelayFrames - ld a, (SFX_02_3c - SFX_Headers_02) / 3 + ld a, SFX_TINK call PlaySound call WaitForSoundToFinish ld c, 32 call DelayFrames - ld a, (SFX_02_3a - SFX_Headers_02) / 3 + ld a, SFX_GET_ITEM_1 call PlaySound call WaitForSoundToFinish call PlayDefaultMusic @@ -376,7 +376,7 @@ BillsHouseInitiatedText: ; 1ebe2 (7:6be2) call PlaySound ld c, 16 call DelayFrames - ld a, (SFX_02_49 - SFX_Headers_02) / 3 + ld a, SFX_SWITCH call PlaySound call WaitForSoundToFinish ld c, 60 diff --git a/engine/intro.asm b/engine/intro.asm index 79cc2101..6b5c46c9 100755 --- a/engine/intro.asm +++ b/engine/intro.asm @@ -35,14 +35,14 @@ PlayIntroScene: ; 4169d (10:569d) ret c ; hip - ld a, (SFX_1f_5f - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_HIP call PlaySound xor a ld [wd09f], a ld de, IntroNidorinoAnimation1 call AnimateIntroNidorino ; hop - ld a, (SFX_1f_60 - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_HOP call PlaySound ld de, IntroNidorinoAnimation2 call AnimateIntroNidorino @@ -51,12 +51,12 @@ PlayIntroScene: ; 4169d (10:569d) ret c ; hip - ld a, (SFX_1f_5f - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_HIP call PlaySound ld de, IntroNidorinoAnimation1 call AnimateIntroNidorino ; hop - ld a, (SFX_1f_60 - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_HOP call PlaySound ld de, IntroNidorinoAnimation2 call AnimateIntroNidorino @@ -67,7 +67,7 @@ PlayIntroScene: ; 4169d (10:569d) ; raise ld b, $4 call IntroCopyTiles - ld a, (SFX_1f_61 - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_RAISE call PlaySound ld de, $401 ; move Gengar left by 8 pixels call IntroMoveMon @@ -78,12 +78,12 @@ PlayIntroScene: ; 4169d (10:569d) ; slash ld b, $5 call IntroCopyTiles - ld a, (SFX_1f_62 - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_CRASH call PlaySound ld de, $800 ; move Gengar right by 16 pixels call IntroMoveMon ; hip - ld a, (SFX_1f_5f - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_HIP call PlaySound ld a, $24 ld [wd09f], a @@ -102,14 +102,14 @@ PlayIntroScene: ; 4169d (10:569d) ret c ; hip - ld a, (SFX_1f_5f - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_HIP call PlaySound xor a ld [wd09f], a ld de, IntroNidorinoAnimation4 call AnimateIntroNidorino ; hop - ld a, (SFX_1f_60 - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_HOP call PlaySound ld de, IntroNidorinoAnimation5 call AnimateIntroNidorino @@ -126,7 +126,7 @@ PlayIntroScene: ; 4169d (10:569d) ret c ; lunge - ld a, (SFX_1f_5e - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_LUNGE call PlaySound ld a, $48 ld [wd09f], a diff --git a/engine/items/items.asm b/engine/items/items.asm index fe2d71c8..69e8b4bf 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -644,7 +644,7 @@ ItemUseEvoStone: ; da5b (3:5a5b) ld [wcf91],a ld a,$01 ld [wForceEvolution],a - ld a,(SFX_02_3e - SFX_Headers_02) / 3 + ld a,SFX_HEAL_AILMENT call PlaySoundWaitForCurrent call WaitForSoundToFinish callab TryEvolvingMon ; try to evolve pokemon @@ -917,7 +917,7 @@ ItemUseMedicine: ; dabb (3:5abb) ld a,[wWhichPokemon] ld bc,2 * 20 call AddNTimes ; calculate coordinates of HP bar of pokemon that used Softboiled - ld a,(SFX_02_3d - SFX_Headers_02) / 3 + ld a,SFX_HEAL_HP call PlaySoundWaitForCurrent ld a,[hFlags_0xFFF6] set 0,a @@ -1067,7 +1067,7 @@ ItemUseMedicine: ; dabb (3:5abb) jr c,.playStatusAilmentCuringSound cp a,FULL_HEAL jr z,.playStatusAilmentCuringSound - ld a,(SFX_02_3d - SFX_Headers_02) / 3 ; HP healing sound + ld a,SFX_HEAL_HP call PlaySoundWaitForCurrent ld a,[hFlags_0xFFF6] set 0,a @@ -1089,7 +1089,7 @@ ItemUseMedicine: ; dabb (3:5abb) ld [wPartyMenuTypeOrMessageID],a jr .showHealingItemMessage .playStatusAilmentCuringSound - ld a,(SFX_02_3e - SFX_Headers_02) / 3 ; status ailment curing sound + ld a,SFX_HEAL_AILMENT call PlaySoundWaitForCurrent .showHealingItemMessage xor a @@ -1178,7 +1178,7 @@ ItemUseMedicine: ; dabb (3:5abb) ld de,wcf4b ld bc,10 call CopyData ; copy the stat's name to wcf4b - ld a,(SFX_02_3e - SFX_Headers_02) / 3 + ld a,SFX_HEAL_AILMENT call PlaySound ld hl,VitaminStatRoseText call PrintText @@ -1720,7 +1720,7 @@ PlayedFluteHadEffectText: ; e215 (3:6215) ; play out-of-battle pokeflute music ld a,$ff call PlaySound ; turn off music - ld a, (SFX_02_5e - SFX_Headers_02) / 3 + ld a, SFX_POKEFLUE ld c, BANK(SFX_02_5e) call PlayMusic .musicWaitLoop ; wait for music to finish playing @@ -1824,7 +1824,7 @@ FishingInit: ; e2b4 (3:62b4) call ItemUseReloadOverworldData ld hl,ItemUseText00 call PrintText - ld a,(SFX_02_3e - SFX_Headers_02) / 3 + ld a,SFX_HEAL_AILMENT call PlaySound ld c,80 call DelayFrames @@ -1847,9 +1847,9 @@ ItemUseItemfinder: ; e2e1 (3:62e1) jr nc,.printText ; if no hidden items ld c,4 .loop - ld a,(SFX_02_4a - SFX_Headers_02) / 3 + ld a,SFX_HEALING_MACHINE call PlaySoundWaitForCurrent - ld a,(SFX_02_5a - SFX_Headers_02) / 3 + ld a,SFX_PURCHASE call PlaySoundWaitForCurrent dec c jr nz,.loop @@ -1951,7 +1951,7 @@ ItemUsePPRestore: ; e31e (3:631e) ld bc,4 call CopyData ; copy party data to in-battle data .skipUpdatingInBattleData - ld a,(SFX_02_3e - SFX_Headers_02) / 3 + ld a,SFX_HEAL_AILMENT call PlaySound ld hl,PPRestoredText call PrintText @@ -2146,7 +2146,7 @@ ItemUseTMHM: ; e479 (3:6479) and a ; can the pokemon learn the move? jr nz,.checkIfAlreadyLearnedMove ; if the pokemon can't learn the move - ld a,(SFX_02_51 - SFX_Headers_02) / 3 + ld a,SFX_DENIED call PlaySoundWaitForCurrent ld hl,MonCannotLearnMachineMoveText call PrintText @@ -2186,7 +2186,7 @@ MonCannotLearnMachineMoveText: ; e55e (3:655e) PrintItemUseTextAndRemoveItem: ; e563 (3:6563) ld hl,ItemUseText00 call PrintText - ld a,(SFX_02_3e - SFX_Headers_02) / 3 + ld a,SFX_HEAL_AILMENT call PlaySound call WaitForTextScrollButtonPress ; wait for button press diff --git a/engine/learn_move.asm b/engine/learn_move.asm index 1c0e038c..abc3b7d4 100755 --- a/engine/learn_move.asm +++ b/engine/learn_move.asm @@ -207,7 +207,7 @@ OneTwoAndText: ; 6fc8 (1:6fc8) TX_FAR _OneTwoAndText db $a TX_ASM - ld a, (SFX_02_58 - SFX_Headers_02) / 3 + ld a, SFX_SWAP call PlaySoundWaitForCurrent ld hl, PoofText ret diff --git a/engine/menu/main_menu.asm b/engine/menu/main_menu.asm index 9e160f81..dc936c97 100755 --- a/engine/menu/main_menu.asm +++ b/engine/menu/main_menu.asm @@ -481,7 +481,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) cp a,16 ; is the cursor on Cancel? jr nz,.loop .exitMenu - ld a,(SFX_02_40 - SFX_Headers_02) / 3 + ld a,SFX_PRESS_AB call PlaySound ret .eraseOldMenuCursor diff --git a/engine/menu/naming_screen.asm b/engine/menu/naming_screen.asm index 20deb834..9a608491 100755 --- a/engine/menu/naming_screen.asm +++ b/engine/menu/naming_screen.asm @@ -262,7 +262,7 @@ DisplayNamingScreen: ; 6596 (1:6596) ld a, [wHPBarNewHP] ld [hli], a ld [hl], $50 - ld a, (SFX_02_40 - SFX_Headers_02) / 3 + ld a, SFX_PRESS_AB call PlaySound ret .pressedB diff --git a/engine/menu/pc.asm b/engine/menu/pc.asm index 8ee40c7c..b5281964 100755 --- a/engine/menu/pc.asm +++ b/engine/menu/pc.asm @@ -1,6 +1,6 @@ ActivatePC: ; 17e2c (5:7e2c) call SaveScreenTilesToBuffer2 - ld a, (SFX_02_45 - SFX_Headers_02) / 3 + ld a, SFX_TURN_ON_PC call PlaySound ld hl, TurnedOnPC1Text call PrintText @@ -51,7 +51,7 @@ PCMainMenu: ; 17e48 (5:7e48) ld hl, wFlags_0xcd60 res 5, [hl] set 3, [hl] - ld a, (SFX_02_47 - SFX_Headers_02) / 3 + ld a, SFX_ENTER_PC call PlaySound call WaitForSoundToFinish ld hl, AccessedMyPCText @@ -59,19 +59,19 @@ PCMainMenu: ; 17e48 (5:7e48) callba PlayerPC jr ReloadMainMenu OaksPC: ; 17ec0 (5:7ec0) - ld a, (SFX_02_47 - SFX_Headers_02) / 3 + ld a, SFX_ENTER_PC call PlaySound call WaitForSoundToFinish callba OpenOaksPC jr ReloadMainMenu PKMNLeague: ; 17ed2 (5:7ed2) - ld a, (SFX_02_47 - SFX_Headers_02) / 3 + ld a, SFX_ENTER_PC call PlaySound call WaitForSoundToFinish callba PKMNLeaguePC jr ReloadMainMenu BillsPC: ; 17ee4 (5:7ee4) - ld a, (SFX_02_47 - SFX_Headers_02) / 3 + ld a, SFX_ENTER_PC call PlaySound call WaitForSoundToFinish ld a, [wd7f1] ;has to do with having met Bill @@ -91,7 +91,7 @@ ReloadMainMenu: ; 17f06 (5:7f06) call UpdateSprites jp PCMainMenu LogOff: ; 17f13 (5:7f13) - ld a, (SFX_02_46 - SFX_Headers_02) / 3 + ld a, SFX_TURN_OFF_PC call PlaySound call WaitForSoundToFinish ld hl, wFlags_0xcd60 diff --git a/engine/menu/players_pc.asm b/engine/menu/players_pc.asm index 89974dd0..00889e93 100755 --- a/engine/menu/players_pc.asm +++ b/engine/menu/players_pc.asm @@ -11,7 +11,7 @@ PlayerPC: ; 78e6 (1:78e6) bit 3, a ; accessing player's PC through another PC? jr nz, PlayerPCMenu ; accessing it directly - ld a, (SFX_02_45 - SFX_Headers_02) / 3 + ld a, SFX_TURN_ON_PC call PlaySound ld hl, TurnedOnPC2Text call PrintText @@ -67,7 +67,7 @@ ExitPlayerPC: ; 796d (1:796d) bit 3, a ; accessing player's PC through another PC? jr nz, .next ; accessing it directly - ld a, (SFX_02_46 - SFX_Headers_02) / 3 + ld a, SFX_TURN_OFF_PC call PlaySound call WaitForSoundToFinish .next @@ -130,7 +130,7 @@ PlayerPCDeposit: ; 7995 (1:7995) ld hl, wNumBagItems call RemoveItemFromInventory call WaitForSoundToFinish - ld a, (SFX_02_55 - SFX_Headers_02) / 3 + ld a, SFX_WITHDRAW_DEPOSIT call PlaySound call WaitForSoundToFinish ld hl, ItemWasStoredText @@ -184,7 +184,7 @@ PlayerPCWithdraw: ; 7a12 (1:7a12) ld hl, wNumBoxItems call RemoveItemFromInventory call WaitForSoundToFinish - ld a, (SFX_02_55 - SFX_Headers_02) / 3 + ld a, SFX_WITHDRAW_DEPOSIT call PlaySound call WaitForSoundToFinish ld hl, WithdrewItemText diff --git a/engine/menu/start_menu.asm b/engine/menu/start_menu.asm index 7aa09df7..bd876f5b 100755 --- a/engine/menu/start_menu.asm +++ b/engine/menu/start_menu.asm @@ -4,7 +4,7 @@ DisplayStartMenu:: ; 2acd (0:2acd) ld [MBC1RomBank],a ld a,[wWalkBikeSurfState] ; walking/biking/surfing ld [wWalkBikeSurfStateCopy],a - ld a, (SFX_02_3f - SFX_Headers_02) / 3 ; Start menu sound + ld a, SFX_START_MENU call PlaySound RedisplayStartMenu:: ; 2adf (0:2adf) diff --git a/engine/menu/start_sub_menus.asm b/engine/menu/start_sub_menus.asm index 0036d66e..481c0fbe 100755 --- a/engine/menu/start_sub_menus.asm +++ b/engine/menu/start_sub_menus.asm @@ -734,7 +734,7 @@ SwitchPartyMon_ClearGfx: ; 13625 (4:7625) dec c jr nz, .clearMonOAMLoop call WaitForSoundToFinish - ld a, (SFX_02_58 - SFX_Headers_02) / 3 + ld a, SFX_SWAP jp PlaySound SwitchPartyMon_InitVarOrSwapData: ; 13653 (4:7653) diff --git a/engine/menu/vending_machine.asm b/engine/menu/vending_machine.asm index 0f6c6a13..8460889f 100755 --- a/engine/menu/vending_machine.asm +++ b/engine/menu/vending_machine.asm @@ -58,7 +58,7 @@ VendingMachineMenu: ; 74ee0 (1d:4ee0) ld c, 2 call DelayFrames push bc - ld a, (SFX_02_53 - SFX_Headers_02) / 3 + ld a, SFX_PUSH_BOULDER call PlaySound pop bc dec b diff --git a/engine/oak_speech.asm b/engine/oak_speech.asm index c7b2f4d6..62b054df 100755 --- a/engine/oak_speech.asm +++ b/engine/oak_speech.asm @@ -106,7 +106,7 @@ OakSpeech: ; 6115 (1:6115) .next ld a,[H_LOADEDROMBANK] push af - ld a,(SFX_02_48 - SFX_Headers_02) / 3 + ld a,SFX_SHRINK call PlaySound pop af ld [H_LOADEDROMBANK],a diff --git a/engine/overworld/cable_club_npc.asm b/engine/overworld/cable_club_npc.asm index 86a7ab7d..b9e3102a 100755 --- a/engine/overworld/cable_club_npc.asm +++ b/engine/overworld/cable_club_npc.asm @@ -57,7 +57,7 @@ CableClubNPC: ; 71c5 (1:71c5) jr nz, .choseNo callab SaveSAVtoSRAM call WaitForSoundToFinish - ld a, (SFX_02_5d - SFX_Headers_02) / 3 + ld a, SFX_SAVE call PlaySoundWaitForCurrent ld hl, CableClubNPCPleaseWaitText call PrintText diff --git a/engine/overworld/card_key.asm b/engine/overworld/card_key.asm index 94c1868c..746ea326 100755 --- a/engine/overworld/card_key.asm +++ b/engine/overworld/card_key.asm @@ -51,7 +51,7 @@ PrintCardKeyText: ; 52673 (14:6673) predef ReplaceTileBlock ld hl, wd126 set 5, [hl] - ld a, (SFX_1f_57 - SFX_Headers_1f) / 3 + ld a, SFX_GO_INSIDE jp PlaySound .noCardKey tx_pre_id CardKeyFailText diff --git a/engine/overworld/cut.asm b/engine/overworld/cut.asm index f7be269c..293daee7 100755 --- a/engine/overworld/cut.asm +++ b/engine/overworld/cut.asm @@ -60,7 +60,7 @@ UsedCut: ; ef54 (3:6f54) callba Func_79e96 ld a, $1 ld [wUpdateSpritesEnabled], a - ld a, (SFX_02_56 - SFX_Headers_02) / 3 + ld a, SFX_CUT call PlaySound ld a, $90 ld [hWY], a diff --git a/engine/overworld/elevator.asm b/engine/overworld/elevator.asm index f5b1d14c..0c30ee59 100755 --- a/engine/overworld/elevator.asm +++ b/engine/overworld/elevator.asm @@ -19,7 +19,7 @@ ShakeElevator: ; 7bf15 (1e:7f15) ld [hSCY], a push bc ld c, BANK(SFX_02_5b) - ld a, (SFX_02_5b - SFX_Headers_02) / 3 + ld a, SFX_COLLISION call PlayMusic pop bc ld c, 2 @@ -31,7 +31,7 @@ ShakeElevator: ; 7bf15 (1e:7f15) ld a, $ff call PlaySound ld c, BANK(SFX_02_5f) - ld a, (SFX_02_5f - SFX_Headers_02) / 3 + ld a, SFX_SAFARI_ZONE_PA call PlayMusic .asm_7bf57 ld a, [wc02a] diff --git a/engine/overworld/healing_machine.asm b/engine/overworld/healing_machine.asm index d00bbc05..fce797d0 100755 --- a/engine/overworld/healing_machine.asm +++ b/engine/overworld/healing_machine.asm @@ -28,7 +28,7 @@ AnimateHealingMachine: ; 70433 (1c:4433) ld b, a .asm_7046e call Func_70503 - ld a, (SFX_02_4a - SFX_Headers_02) / 3 + ld a, SFX_HEALING_MACHINE call PlaySound ld c, 30 call DelayFrames diff --git a/engine/overworld/hidden_items.asm b/engine/overworld/hidden_items.asm index 910fcf04..94f20439 100755 --- a/engine/overworld/hidden_items.asm +++ b/engine/overworld/hidden_items.asm @@ -33,7 +33,7 @@ FoundHiddenItemText: ; 7675b (1d:675b) ld c, a ld b, $1 predef FlagActionPredef - ld a, (SFX_02_3b - SFX_Headers_02) / 3 + ld a, SFX_GET_ITEM_2 call PlaySoundWaitForCurrent call WaitForSoundToFinish jp TextScriptEnd diff --git a/engine/overworld/ledges.asm b/engine/overworld/ledges.asm index 3a183c0f..51819802 100755 --- a/engine/overworld/ledges.asm +++ b/engine/overworld/ledges.asm @@ -50,7 +50,7 @@ HandleLedges: ; 1a672 (6:6672) ld a, $2 ld [wSimulatedJoypadStatesIndex], a call LoadHoppingShadowOAM - ld a, (SFX_02_4e - SFX_Headers_02) / 3 + ld a, SFX_LEDGE call PlaySound ret diff --git a/engine/overworld/player_animations.asm b/engine/overworld/player_animations.asm index 98ea466d..5ce2b2a6 100755 --- a/engine/overworld/player_animations.asm +++ b/engine/overworld/player_animations.asm @@ -9,7 +9,7 @@ EnterMapAnim: ; 70510 (1c:4510) bit 7, [hl] ; used fly out of battle? res 7, [hl] jr nz, .flyAnimation - ld a, (SFX_02_4c - SFX_Headers_02) / 3 + ld a, SFX_TELEPORT_2 call PlaySound ld hl, wd732 bit 4, [hl] ; used dungeon warp? @@ -17,7 +17,7 @@ EnterMapAnim: ; 70510 (1c:4510) pop hl jr nz, .dungeonWarpAnimation call PlayerSpinWhileMovingDown - ld a, (SFX_02_4f - SFX_Headers_02) / 3 + ld a, SFX_FLY_1 call PlaySound call IsPlayerStandingOnWarpPadOrHole ld a, b @@ -50,7 +50,7 @@ EnterMapAnim: ; 70510 (1c:4510) ld bc, (BANK(BirdSprite) << 8) + $0c call CopyVideoData call LoadBirdSpriteGraphics - ld a, (SFX_02_50 - SFX_Headers_02) / 3 + ld a, SFX_FLY_2 call PlaySound ld hl, wFlyAnimUsingCoordList xor a ; is using coord list @@ -99,7 +99,7 @@ _LeaveMapAnim: ; 705ba (1c:45ba) dec a jp nz, LeaveMapThroughHoleAnim .spinWhileMovingUp - ld a, (SFX_02_4b - SFX_Headers_02) / 3 + ld a, SFX_TELEPORT_1 call PlaySound ld hl, wPlayerSpinWhileMovingUpOrDownAnimDeltaY ld a, -$10 @@ -133,7 +133,7 @@ _LeaveMapAnim: ; 705ba (1c:45ba) ld [hli], a ; wPlayerSpinInPlaceAnimFrameDelayDelta xor a ld [hli], a ; wPlayerSpinInPlaceAnimFrameDelayEndValue - ld [hl], (SFX_02_4d - SFX_Headers_02) / 3 ; wPlayerSpinInPlaceAnimSoundID + ld [hl], SFX_TELEPORT_3 ; wPlayerSpinInPlaceAnimSoundID ld hl, wFacingDirectionList call PlayerSpinInPlace jr .spinWhileMovingUp @@ -146,7 +146,7 @@ _LeaveMapAnim: ; 705ba (1c:45ba) ld [hli], a ; wFlyAnimCounter ld [hl], $c ; wFlyAnimBirdSpriteImageIndex call DoFlyAnimation - ld a, (SFX_02_50 - SFX_Headers_02) / 3 + ld a, SFX_FLY_2 call PlaySound ld hl, wFlyAnimUsingCoordList xor a ; is using coord list diff --git a/engine/overworld/pokemart.asm b/engine/overworld/pokemart.asm index ebc99eed..d59b2dc7 100755 --- a/engine/overworld/pokemart.asm +++ b/engine/overworld/pokemart.asm @@ -190,7 +190,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20) ld a,1 ld [wBoughtOrSoldItemInMart],a .skipSettingFlag2 - ld a,(SFX_02_5a - SFX_Headers_02) / 3 + ld a,SFX_PURCHASE call PlaySoundWaitForCurrent call WaitForSoundToFinish ld hl,PokemartBoughtItemText diff --git a/engine/save.asm b/engine/save.asm index 56468595..d13a2aa7 100755 --- a/engine/save.asm +++ b/engine/save.asm @@ -161,7 +161,7 @@ SaveSAV: ; 7370a (1c:770a) call DelayFrames ld hl,GameSavedText call PrintText - ld a, (SFX_02_5d - SFX_Headers_02) / 3 ;sound for saved game + ld a, SFX_SAVE call PlaySoundWaitForCurrent call WaitForSoundToFinish ld c,30 @@ -375,7 +375,7 @@ ChangeBox:: ; 738a1 (1c:78a1) call SaveSAVtoSRAM ld hl, wChangeBoxSavedMapTextPointer call SetMapTextPointer - ld a, (SFX_02_5d - SFX_Headers_02) / 3 + ld a, SFX_SAVE call PlaySoundWaitForCurrent call WaitForSoundToFinish ret diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm index ea1eb315..c7968c10 100755 --- a/engine/slot_machine.asm +++ b/engine/slot_machine.asm @@ -116,7 +116,7 @@ MainSlotMachineLoop: ; 37395 (d:7395) ld [hli], a ld [hl], a call WaitForSoundToFinish - ld a, (SFX_1f_66 - SFX_Headers_1f) / 3 + ld a, SFX_SLOTS_NEW_SPIN call PlaySound ld hl, StartSlotMachineText call PrintText @@ -584,7 +584,7 @@ SlotReward15Func: ; 376e5 (d:76e5) ret SlotReward100Func: ; 376f3 (d:76f3) - ld a, (SFX_1f_42 - SFX_Headers_1f) / 3 + ld a, SFX_GET_KEY_ITEM call PlaySound xor a ld [wSlotMachineFlags], a @@ -595,7 +595,7 @@ SlotReward100Func: ; 376f3 (d:76f3) SlotReward300Func: ; 37702 (d:7702) ld hl, YeahText call PrintText - ld a, (SFX_1f_3b - SFX_Headers_1f) / 3 + ld a, SFX_GET_ITEM_2 call PlaySound call Random cp $80 @@ -689,7 +689,7 @@ SlotMachine_PayCoinsToPlayer: ; 3776b (d:776b) predef AddBCDPredef call SlotMachine_PrintCreditCoins call SlotMachine_PrintPayoutCoins - ld a, (SFX_1f_65 - SFX_Headers_1f) / 3 + ld a, SFX_SLOTS_REWARD call PlaySound ld a, [wAnimCounter] dec a @@ -837,7 +837,7 @@ SlotMachine_HandleInputWhileWheelsSpin: ; 37882 (d:7882) jr z, .skip .loop inc [hl] - ld a, (SFX_1f_64 - SFX_Headers_1f) / 3 + ld a, SFX_SLOTS_STOP_WHEEL jp PlaySound .skip ld a, [de] diff --git a/engine/titlescreen.asm b/engine/titlescreen.asm index 3a4e2e4c..c5f72aee 100755 --- a/engine/titlescreen.asm +++ b/engine/titlescreen.asm @@ -157,7 +157,7 @@ ENDC ld d, a cp -3 jr nz, .skipPlayingSound - ld a, (SFX_1f_62 - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_CRASH call PlaySound .skipPlayingSound ld a, [hli] @@ -191,7 +191,7 @@ ENDC call LoadScreenTilesFromBuffer1 ld c, 36 call DelayFrames - ld a, (SFX_1f_63 - SFX_Headers_1f) / 3 + ld a, SFX_INTRO_WHOOSH call PlaySound ; scroll game version in from the right diff --git a/engine/town_map.asm b/engine/town_map.asm index 302efa0f..a90aa331 100755 --- a/engine/town_map.asm +++ b/engine/town_map.asm @@ -69,7 +69,7 @@ DisplayTownMap: ; 70e3e (1c:4e3e) ld b, a and A_BUTTON | B_BUTTON | D_UP | D_DOWN jr z, .inputLoop - ld a, (SFX_02_3c - SFX_Headers_02) / 3 + ld a, SFX_TINK call PlaySound bit 6, b jr nz, .pressedUp @@ -193,7 +193,7 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) jr z, .inputLoop bit 0, b jr nz, .pressedA - ld a, (SFX_02_3c - SFX_Headers_02) / 3 + ld a, SFX_TINK call PlaySound bit 6, b jr nz, .pressedUp @@ -201,7 +201,7 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) jr nz, .pressedDown jr .pressedB .pressedA - ld a, (SFX_02_3e - SFX_Headers_02) / 3 + ld a, SFX_HEAL_AILMENT call PlaySound ld a, [hl] ld [wDestinationMap], a diff --git a/engine/trade.asm b/engine/trade.asm index 531085b9..68baaa16 100755 --- a/engine/trade.asm +++ b/engine/trade.asm @@ -287,7 +287,7 @@ Trade_DrawOpenEndOfLinkCable: ; 41298 (10:5298) ld b, $7 ; open end of link cable tile ID list index call CopyTileIDsFromList_ZeroBaseTileID call Trade_CopyTileMapToVRAM - ld a, (SFX_02_3d - SFX_Headers_02) / 3 + ld a, SFX_HEAL_HP call PlaySound ld c, 20 .loop @@ -332,7 +332,7 @@ Trade_AnimateBallEnteringLinkCable: ; 412d2 (10:52d2) ld c, a cp $a0 jr nc, .ballSpriteReachedEdgeOfScreen - ld a, (SFX_02_3c - SFX_Headers_02) / 3 + ld a, SFX_TINK call PlaySound jr .moveBallInsideLinkCableLoop .ballSpriteReachedEdgeOfScreen diff --git a/home.asm b/home.asm index 1b910054..cb4f7ad2 100644 --- a/home.asm +++ b/home.asm @@ -1330,7 +1330,7 @@ AddAmountSoldToMoney:: ; 2b9e (0:2b9e) ld a,MONEY_BOX ld [wTextBoxID],a call DisplayTextBoxID ; redraw money text box - ld a, (SFX_02_5a - SFX_Headers_02) / 3 + ld a, SFX_PURCHASE call PlaySoundWaitForCurrent jp WaitForSoundToFinish @@ -3490,7 +3490,7 @@ ManualTextScroll:: ; 3898 (0:3898) cp LINK_STATE_BATTLING jr z, .inLinkBattle call WaitForTextScrollButtonPress - ld a, (SFX_02_40 - SFX_Headers_02) / 3 + ld a, SFX_PRESS_AB jp PlaySound .inLinkBattle ld c, 65 @@ -4016,7 +4016,7 @@ HandleMenuInputPokemonSelection:: ; 3ac2 (0:3ac2) bit 5,[hl] pop hl jr nz,.skipPlayingSound - ld a,(SFX_02_40 - SFX_Headers_02) / 3 + ld a,SFX_PRESS_AB call PlaySound .skipPlayingSound pop af diff --git a/home/overworld.asm b/home/overworld.asm index 0485335a..814e8c54 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -674,10 +674,10 @@ PlayMapChangeSound:: ; 08c9 (0:08c9) aCoord 8, 8 ; upper left tile of the 4x4 square the player's sprite is standing on cp a,$0b ; door tile in tileset 0 jr nz,.didNotGoThroughDoor - ld a,(SFX_02_57 - SFX_Headers_02) / 3 + ld a,SFX_GO_INSIDE jr .playSound .didNotGoThroughDoor - ld a,(SFX_02_5c - SFX_Headers_02) / 3 + ld a,SFX_GO_OUTSIDE .playSound call PlaySound ld a,[wMapPalOffset] @@ -1227,9 +1227,9 @@ CollisionCheckOnLand:: ; 0bd1 (0:0bd1) jr nc,.noCollision .collision ld a,[wc02a] - cp a,(SFX_02_5b - SFX_Headers_02) / 3 ; check if collision sound is already playing + cp a,SFX_COLLISION ; check if collision sound is already playing jr z,.setCarry - ld a,(SFX_02_5b - SFX_Headers_02) / 3 + ld a,SFX_COLLISION call PlaySound ; play collision sound (if it's not already playing) .setCarry scf @@ -1930,9 +1930,9 @@ CollisionCheckOnWater:: ; 0fb7 (0:0fb7) jr .loop .collision ld a,[wc02a] - cp a,(SFX_02_5b - SFX_Headers_02) / 3 ; check if collision sound is already playing + cp a,SFX_COLLISION ; check if collision sound is already playing jr z,.setCarry - ld a,(SFX_02_5b - SFX_Headers_02) / 3 + ld a,SFX_COLLISION call PlaySound ; play collision sound (if it's not already playing) .setCarry scf diff --git a/home/text.asm b/home/text.asm index 7eb5148b..89708306 100644 --- a/home/text.asm +++ b/home/text.asm @@ -626,13 +626,13 @@ TextCommand0B:: ; 1c31 (0:1c31) ; format: text command ID, sound ID or cry ID TextCommandSounds:: ; 1c64 (0:1c64) - db $0B,(SFX_02_3a - SFX_Headers_02) / 3 - db $12,(SFX_08_46 - SFX_Headers_08) / 3 - db $0E,(SFX_02_41 - SFX_Headers_02) / 3 - db $0F,(SFX_02_3a - SFX_Headers_02) / 3 - db $10,(SFX_02_3b - SFX_Headers_02) / 3 - db $11,(SFX_02_42 - SFX_Headers_02) / 3 - db $13,(SFX_08_45 - SFX_Headers_08) / 3 + db $0B,SFX_GET_ITEM_1 + db $12,SFX_BATTLE_06 + db $0E,SFX_POKEDEX_RATING + db $0F,SFX_GET_ITEM_1 + db $10,SFX_GET_ITEM_2 + db $11,SFX_GET_KEY_ITEM + db $13,SFX_BATTLE_05 db $14,NIDORINA ; used in OakSpeech db $15,PIDGEOT ; used in SaffronCityText12 db $16,DEWGONG ; unused? diff --git a/main.asm b/main.asm index 08747a5a..a81e7d98 100755 --- a/main.asm +++ b/main.asm @@ -1605,7 +1605,7 @@ DisplayTwoOptionMenu: ; 7559 (1:7559) pop af pop hl ld [wFlags_0xcd60], a - ld a, (SFX_02_40 - SFX_Headers_02) / 3 + ld a, SFX_PRESS_AB call PlaySound jr .pressedAButton .notNoYesMenu @@ -2631,7 +2631,7 @@ ApplyOutOfBattlePoisonDamage: ; c69c (3:469c) jr z, .skipPoisonEffectAndSound ld b, $2 predef ChangeBGPalColor0_4Frames ; change BG white to dark grey for 4 frames - ld a, (SFX_02_43 - SFX_Headers_02) / 3 + ld a, SFX_POISONED call PlaySound .skipPoisonEffectAndSound predef AnyPartyAlive @@ -3512,7 +3512,7 @@ TryPushingBoulder: ; f225 (3:7225) ld de, PushBoulderRightMovementData .done call MoveSprite - ld a, (SFX_02_53 - SFX_Headers_02) / 3 + ld a, SFX_PUSH_BOULDER call PlaySound ld hl, wFlags_0xcd60 set 1, [hl] @@ -3543,7 +3543,7 @@ DoBoulderDustAnimation: ; f2b5 (3:72b5) ld [H_SPRITEINDEX], a call GetSpriteMovementByte2Pointer ld [hl], $10 - ld a, (SFX_02_56 - SFX_Headers_02) / 3 + ld a, SFX_CUT jp PlaySound ResetBoulderPushFlags: ; f2dd (3:72dd) diff --git a/scripts/celadongamecorner.asm b/scripts/celadongamecorner.asm index 519c0c67..53e55872 100755 --- a/scripts/celadongamecorner.asm +++ b/scripts/celadongamecorner.asm @@ -454,7 +454,7 @@ CeladonGameCornerText12: ; 48edd (12:4edd) ld hl, CeladonGameCornerText_48f09 call PrintText call WaitForSoundToFinish - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound call WaitForSoundToFinish ld hl, wd77e @@ -468,7 +468,7 @@ CeladonGameCornerText12: ; 48edd (12:4edd) CeladonGameCornerText_48f09: ; 48f09 (12:4f09) TX_FAR _CeladonGameCornerText_48f09 TX_ASM - ld a, (SFX_02_49 - SFX_Headers_02) / 3 + ld a, SFX_SWITCH call PlaySound call WaitForSoundToFinish jp TextScriptEnd diff --git a/scripts/cinnabargym.asm b/scripts/cinnabargym.asm index dbede0d3..9b308bd3 100755 --- a/scripts/cinnabargym.asm +++ b/scripts/cinnabargym.asm @@ -106,7 +106,7 @@ CinnabarGymScript2: ; 757f6 (1d:57f6) and a jr nz, .asm_7581b call WaitForSoundToFinish - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound call WaitForSoundToFinish .asm_7581b diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index 330f2234..a9798f19 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -156,7 +156,7 @@ DayCareMScript_562e1: ; 562e1 (15:62e1) ld de, wPlayerMoney + 2 ld c, $3 predef SubBCDPredef - ld a, (SFX_02_5a - SFX_Headers_02) / 3 + ld a, SFX_PURCHASE call PlaySoundWaitForCurrent ld a, MONEY_BOX ld [wTextBoxID], a diff --git a/scripts/lance.asm b/scripts/lance.asm index e335914b..f5095a69 100755 --- a/scripts/lance.asm +++ b/scripts/lance.asm @@ -75,7 +75,7 @@ LanceScript0: ; 5a305 (16:6305) ret nz ld hl, wd126 set 5, [hl] - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound jp LanceScript_5a2c4 diff --git a/scripts/mansion1.asm b/scripts/mansion1.asm index 6673e03b..a9e2616a 100755 --- a/scripts/mansion1.asm +++ b/scripts/mansion1.asm @@ -111,7 +111,7 @@ Mansion1Text4: ; 4435a (11:435a) set 5, [hl] ld hl, MansionSwitchPressedText call PrintText - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound ld hl, wd796 bit 0, [hl] diff --git a/scripts/mansion2.asm b/scripts/mansion2.asm index 27ccbdfb..1cacae02 100755 --- a/scripts/mansion2.asm +++ b/scripts/mansion2.asm @@ -117,7 +117,7 @@ Mansion2Text5: ; 52087 (14:6087) set 5, [hl] ld hl, Mansion2Text_520c7 call PrintText - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound ld hl, wd796 bit 0, [hl] diff --git a/scripts/museum1f.asm b/scripts/museum1f.asm index 38c3f717..f41f05ff 100755 --- a/scripts/museum1f.asm +++ b/scripts/museum1f.asm @@ -107,7 +107,7 @@ Museum1FText1: ; 5c135 (17:4135) ld a, MONEY_BOX ld [wTextBoxID], a call DisplayTextBoxID - ld a, (SFX_02_5a - SFX_Headers_02) / 3 + ld a, SFX_PURCHASE call PlaySoundWaitForCurrent call WaitForSoundToFinish jr .asm_0b094 diff --git a/scripts/rockethideout1.asm b/scripts/rockethideout1.asm index 967ab77b..b798744d 100755 --- a/scripts/rockethideout1.asm +++ b/scripts/rockethideout1.asm @@ -21,7 +21,7 @@ RocketHideout1Script_44be0: ; 44be0 (11:4be0) ld a, $54 jr .asm_44c03 .asm_44bf7 - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound ld hl, wd815 bit 7, [hl] diff --git a/scripts/rockethideout2.asm b/scripts/rockethideout2.asm index c2184bdb..ead69458 100755 --- a/scripts/rockethideout2.asm +++ b/scripts/rockethideout2.asm @@ -25,7 +25,7 @@ RocketHideout2Script0: ; 44e42 (11:4e42) ld hl, wd736 set 7, [hl] call StartSimulatingJoypadStates - ld a, (SFX_02_52 - SFX_Headers_02) / 3 + ld a, SFX_ARROW_TILES call PlaySound ld a, $ff ld [wJoyIgnore], a diff --git a/scripts/rockethideout3.asm b/scripts/rockethideout3.asm index b025acd0..2060c26c 100755 --- a/scripts/rockethideout3.asm +++ b/scripts/rockethideout3.asm @@ -25,7 +25,7 @@ RocketHideout3Script0: ; 45240 (11:5240) ld hl, wd736 set 7, [hl] call StartSimulatingJoypadStates - ld a, (SFX_02_52 - SFX_Headers_02) / 3 + ld a, SFX_ARROW_TILES call PlaySound ld a, $ff ld [wJoyIgnore], a diff --git a/scripts/rockethideout4.asm b/scripts/rockethideout4.asm index 635c6095..44536279 100755 --- a/scripts/rockethideout4.asm +++ b/scripts/rockethideout4.asm @@ -22,7 +22,7 @@ RocketHideout4Script_45473: ; 45473 (11:5473) ld a, $2d jr .asm_45498 .asm_4548c - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound ld hl, wd81b set 5, [hl] diff --git a/scripts/route22gate.asm b/scripts/route22gate.asm index 8b24c820..95546a99 100755 --- a/scripts/route22gate.asm +++ b/scripts/route22gate.asm @@ -77,7 +77,7 @@ Route22GateText1: ; 1e6e1 (7:66e1) Route22GateText_1e704: ; 1e704 (7:6704) TX_FAR _Route22GateText_1e704 TX_ASM - ld a, (SFX_02_51 - SFX_Headers_02) / 3 + ld a, SFX_DENIED call PlaySoundWaitForCurrent call WaitForSoundToFinish ld hl, Route22GateText_1e715 diff --git a/scripts/route23.asm b/scripts/route23.asm index eeaf2a2b..a258b88a 100755 --- a/scripts/route23.asm +++ b/scripts/route23.asm @@ -224,7 +224,7 @@ Route23Script_51388: ; 51388 (14:5388) VictoryRoadGuardText1: ; 5138e (14:538e) TX_FAR _VictoryRoadGuardText1 TX_ASM - ld a, (SFX_02_51 - SFX_Headers_02) / 3 + ld a, SFX_DENIED call PlaySoundWaitForCurrent call WaitForSoundToFinish jp TextScriptEnd diff --git a/scripts/vermiliondock.asm b/scripts/vermiliondock.asm index a8cf3b8d..c65c7aea 100755 --- a/scripts/vermiliondock.asm +++ b/scripts/vermiliondock.asm @@ -72,7 +72,7 @@ VermilionDock_1db9b: ; 1db9b (7:5b9b) ld b, [hl] push bc push hl - ld a, (SFX_02_54 - SFX_Headers_02) / 3 + ld a, SFX_SS_ANNE_HORN call PlaySoundWaitForCurrent ld a, $ff ld [wUpdateSpritesEnabled], a @@ -193,7 +193,7 @@ VermilionDock_1dc94: ; 1dc94 (7:5c94) ld [hli], a ld [hli], a ld [hl], a - ld a, (SFX_02_54 - SFX_Headers_02) / 3 + ld a, SFX_SS_ANNE_HORN call PlaySound ld c, 120 call DelayFrames diff --git a/scripts/vermiliongym.asm b/scripts/vermiliongym.asm index 193b3a06..614e0b4d 100755 --- a/scripts/vermiliongym.asm +++ b/scripts/vermiliongym.asm @@ -34,7 +34,7 @@ VermilionGymScript_5ca6d: ; 5ca6d (17:4a6d) ld a, $24 jr .asm_5ca7f .asm_5ca78 - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound ld a, $5 .asm_5ca7f diff --git a/scripts/viridiangym.asm b/scripts/viridiangym.asm index 9a0ce855..7a577095 100755 --- a/scripts/viridiangym.asm +++ b/scripts/viridiangym.asm @@ -41,7 +41,7 @@ ViridianGymScript0: ; 748eb (1d:48eb) call StartSimulatingJoypadStates ld hl, wd736 set 7, [hl] - ld a, (SFX_02_52 - SFX_Headers_02) / 3 + ld a, SFX_ARROW_TILES call PlaySound ld a, $ff ld [wJoyIgnore], a -- cgit v1.3.1-sl0p From 04a6c306dce136873fd33d27aa3d5b90d9eeba5a Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Thu, 23 Jul 2015 06:07:12 -0700 Subject: clean up wram aliases --- engine/battle/battle_transitions.asm | 76 ++++++++++++++++++--------------- engine/battle/draw_hud_pokeball_gfx.asm | 36 ++++++++-------- engine/menu/main_menu.asm | 2 +- engine/overworld/hidden_items.asm | 4 +- engine/overworld/trainers.asm | 2 +- main.asm | 2 +- scripts/daycarem.asm | 26 +++++------ scripts/safarizoneentrance-yellow.asm | 18 ++++---- scripts/safarizoneentrance.asm | 12 +++--- text/maps/daycare_1.asm | 2 +- wram.asm | 37 +++++++++++++--- 11 files changed, 124 insertions(+), 93 deletions(-) (limited to 'scripts/daycarem.asm') diff --git a/engine/battle/battle_transitions.asm b/engine/battle/battle_transitions.asm index 4f605b52..056c55ea 100644 --- a/engine/battle/battle_transitions.asm +++ b/engine/battle/battle_transitions.asm @@ -1,5 +1,5 @@ BattleTransition: ; 7096d (1c:496d) - ld a, $1 + ld a, 1 ld [H_AUTOBGTRANSFERENABLED], a call Delay3 xor a @@ -7,10 +7,13 @@ BattleTransition: ; 7096d (1c:496d) dec a ld [wUpdateSpritesEnabled], a call DelayFrame + +; Determine which OAM block is being used by the enemy trainer sprite (if there +; is one). ld hl, wSpriteStateData1 + 2 - ld a, [H_DOWNARROWBLINKCNT2] + ld a, [hSpriteIndexOrTextID] ; enemy trainer sprite index (0 if wild battle) ld c, a - ld b, $0 + ld b, 0 ld de, $10 .loop1 ld a, [hl] @@ -21,13 +24,15 @@ BattleTransition: ; 7096d (1c:496d) add hl, de dec c jr nz, .loop1 + +; Clear OAM except for the blocks used by the player and enemy trainer sprites. ld hl, wOAMBuffer + $10 - ld c, $9 + ld c, 9 .loop2 ld a, b swap a cp l - jr z, .skip2 + jr z, .skip2 ; skip clearing the block if the enemy trainer is using it push hl push bc ld bc, $10 @@ -40,9 +45,10 @@ BattleTransition: ; 7096d (1c:496d) add hl, de dec c jr nz, .loop2 + call Delay3 call LoadBattleTransitionTile - ld bc, $0 + ld bc, 0 ld a, [wLinkState] cp LINK_STATE_BATTLING jr z, .linkBattle @@ -103,7 +109,7 @@ GetBattleTransitionID_CompareLevels: ; 709ef (1c:49ef) sub e jr nc, .highLevelEnemy res 1, c - ld a, $1 + ld a, 1 ld [wBattleTransitionSpiralDirection], a ret .highLevelEnemy @@ -229,10 +235,10 @@ BattleTransition_Spiral: ; 70a72 (1c:4a72) ret BattleTransition_InwardSpiral: ; 70aaa (1c:4aaa) - ld a, $7 - ld [wWhichTrade], a + ld a, 7 + ld [wInwardSpiralUpdateScreenCounter], a coord hl, 0, 0 - ld c, $11 + ld c, SCREEN_HEIGHT - 1 ld de, SCREEN_WIDTH call BattleTransition_InwardSpiral_ inc c @@ -242,7 +248,7 @@ BattleTransition_InwardSpiral: ; 70aaa (1c:4aaa) call BattleTransition_InwardSpiral_ .skip inc c - ld de, $1 + ld de, 1 call BattleTransition_InwardSpiral_ dec c dec c @@ -264,13 +270,13 @@ BattleTransition_InwardSpiral_: ; 70ae0 (1c:4ae0) ld [hl], $ff add hl, de push bc - ld a, [wWhichTrade] + ld a, [wInwardSpiralUpdateScreenCounter] dec a jr nz, .skip call BattleTransition_TransferDelay3 - ld a, $7 + ld a, 7 .skip - ld [wWhichTrade], a + ld [wInwardSpiralUpdateScreenCounter], a pop bc dec c jr nz, .loop @@ -385,7 +391,7 @@ BattleTransition_Shrink: ; 70b7f (1c:4b7f) call BattleTransition_CopyTiles2 coord hl, 11, 0 coord de, 10, 0 - ld bc, $2 + ld bc, 2 call BattleTransition_CopyTiles2 ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a @@ -419,7 +425,7 @@ BattleTransition_Split: ; 70bca (1c:4bca) call BattleTransition_CopyTiles2 coord hl, 1, 0 coord de, 0, 0 - ld bc, $2 + ld bc, 2 call BattleTransition_CopyTiles2 call BattleTransition_TransferDelay3 call Delay3 @@ -432,10 +438,10 @@ BattleTransition_Split: ; 70bca (1c:4bca) BattleTransition_CopyTiles1: ; 70c12 (1c:4c12) ld a, c - ld [wWhichTrade], a + ld [wBattleTransitionCopyTilesOffset], a ld a, b - ld [wTrainerEngageDistance], a - ld c, $8 + ld [wBattleTransitionCopyTilesOffset + 1], a + ld c, 8 .loop1 push bc push hl @@ -444,9 +450,9 @@ BattleTransition_CopyTiles1: ; 70c12 (1c:4c12) call CopyData pop hl pop de - ld a, [wWhichTrade] + ld a, [wBattleTransitionCopyTilesOffset] ld c, a - ld a, [wTrainerEngageDistance] + ld a, [wBattleTransitionCopyTilesOffset + 1] ld b, a add hl, bc pop bc @@ -464,9 +470,9 @@ BattleTransition_CopyTiles1: ; 70c12 (1c:4c12) BattleTransition_CopyTiles2: ; 70c3f (1c:4c3f) ld a, c - ld [wWhichTrade], a + ld [wBattleTransitionCopyTilesOffset], a ld a, b - ld [wTrainerEngageDistance], a + ld [wBattleTransitionCopyTilesOffset + 1], a ld c, SCREEN_HEIGHT / 2 .loop1 push bc @@ -492,9 +498,9 @@ BattleTransition_CopyTiles2: ; 70c3f (1c:4c3f) jr nz, .loop2 pop hl pop de - ld a, [wWhichTrade] + ld a, [wBattleTransitionCopyTilesOffset] ld c, a - ld a, [wTrainerEngageDistance] + ld a, [wBattleTransitionCopyTilesOffset + 1] ld b, a add hl, bc pop bc @@ -590,11 +596,11 @@ BattleTransition_HorizontalStripes_: ; 70cd8 (1c:4cd8) ; by animating each half circle one at a time BattleTransition_Circle: ; 70ce4 (1c:4ce4) call BattleTransition_FlashScreen - ld bc, SCREEN_WIDTH / 2 + lb bc, 0, SCREEN_WIDTH / 2 ld hl, BattleTransition_HalfCircle1 call BattleTransition_Circle_Sub1 ld c, SCREEN_WIDTH / 2 - ld b, $1 + ld b, 1 ld hl, BattleTransition_HalfCircle2 call BattleTransition_Circle_Sub1 jp BattleTransition_BlackScreen @@ -612,7 +618,7 @@ BattleTransition_Circle_Sub1: ; 70d06 (1c:4d06) ld a, b call BattleTransition_Circle_Sub2 pop hl - ld bc, $0005 + ld bc, 5 add hl, bc call BattleTransition_TransferDelay3 pop bc @@ -621,7 +627,7 @@ BattleTransition_Circle_Sub1: ; 70d06 (1c:4d06) ret BattleTransition_TransferDelay3: ; 70d19 (1c:4d19) - ld a, $1 + ld a, 1 ld [H_AUTOBGTRANSFERENABLED], a call Delay3 xor a @@ -647,7 +653,7 @@ BattleTransition_DoubleCircle: ; 70d24 (1c:4d24) ld a, $1 call BattleTransition_Circle_Sub2 pop hl - ld bc, $5 + ld bc, 5 add hl, bc ld e, l ld d, h @@ -660,9 +666,9 @@ BattleTransition_DoubleCircle: ; 70d24 (1c:4d24) jp BattleTransition_BlackScreen BattleTransition_Circle_Sub2: ; 70d50 (1c:4d50) - ld [wWhichTrade], a + ld [wBattleTransitionCircleScreenQuadrantY], a ld a, [hli] - ld [wTrainerEngageDistance], a + ld [wBattleTransitionCircleScreenQuadrantX], a ld a, [hli] ld e, a ld a, [hli] @@ -761,7 +767,7 @@ BattleTransition_Circle_Sub3: ; 70dc5 (1c:4dc5) inc de .loop1 ld [hl], $ff - ld a, [wTrainerEngageDistance] + ld a, [wBattleTransitionCircleScreenQuadrantX] and a jr z, .skip1 inc hl @@ -772,7 +778,7 @@ BattleTransition_Circle_Sub3: ; 70dc5 (1c:4dc5) dec c jr nz, .loop1 pop hl - ld a, [wWhichTrade] + ld a, [wBattleTransitionCircleScreenQuadrantY] and a ld bc, SCREEN_WIDTH jr z, .skip3 @@ -787,7 +793,7 @@ BattleTransition_Circle_Sub3: ; 70dc5 (1c:4dc5) jr z, BattleTransition_Circle_Sub3 ld c, a .loop2 - ld a, [wTrainerEngageDistance] + ld a, [wBattleTransitionCircleScreenQuadrantX] and a jr z, .skip4 dec hl diff --git a/engine/battle/draw_hud_pokeball_gfx.asm b/engine/battle/draw_hud_pokeball_gfx.asm index e9be0da5..1e229b1c 100644 --- a/engine/battle/draw_hud_pokeball_gfx.asm +++ b/engine/battle/draw_hud_pokeball_gfx.asm @@ -6,7 +6,7 @@ DrawAllPokeballs: ; 3a849 (e:6849) ret z ; return if wild pokémon jp SetupEnemyPartyPokeballs -DrawEnemyPokeballs: ; 0x3a857 +DrawEnemyPokeballs: ; 3a857 (e:6857) call LoadPartyPokeballGfx jp SetupEnemyPartyPokeballs @@ -25,8 +25,8 @@ SetupOwnPartyPokeballs: ; 3a869 (e:6869) ld hl, W_BASECOORDX ld [hli], a ld [hl], a - ld a, $8 - ld [wTrainerEngageDistance], a + ld a, 8 + ld [wHUDPokeballGfxOffsetX], a ld hl, wOAMBuffer jp WritePokeballOAMData @@ -39,8 +39,8 @@ SetupEnemyPartyPokeballs: ; 3a887 (e:6887) ld a, $48 ld [hli], a ld [hl], $20 - ld a, $f8 - ld [wTrainerEngageDistance], a + ld a, -8 + ld [wHUDPokeballGfxOffsetX], a ld hl, wOAMBuffer + PARTY_LENGTH * 4 jp WritePokeballOAMData @@ -90,8 +90,8 @@ PickPokeball: ; 3a8c2 (e:68c2) .done ld a, b ld [de], a - ld bc, $0028 ; rest of mon struct - add hl, bc + ld bc, wPartyMon2 - wPartyMon1Status + add hl, bc ; next mon struct ret WritePokeballOAMData: ; 3a8e1 (e:68e1) @@ -108,7 +108,7 @@ WritePokeballOAMData: ; 3a8e1 (e:68e1) ld [hli], a ld a, [W_BASECOORDX] ld b, a - ld a, [wTrainerEngageDistance] + ld a, [wHUDPokeballGfxOffsetX] add b ld [W_BASECOORDX], a inc de @@ -118,11 +118,11 @@ WritePokeballOAMData: ; 3a8e1 (e:68e1) PlacePlayerHUDTiles: ; 3a902 (e:6902) ld hl, PlayerBattleHUDGraphicsTiles - ld de, wTrainerFacingDirection + ld de, wHUDGraphicsTiles ld bc, $3 call CopyData coord hl, 18, 10 - ld de, rIE + ld de, -1 jr PlaceHUDTiles PlayerBattleHUDGraphicsTiles: ; 3a916 (e:6916) @@ -133,7 +133,7 @@ PlayerBattleHUDGraphicsTiles: ; 3a916 (e:6916) PlaceEnemyHUDTiles: ; 3a919 (e:6919) ld hl, EnemyBattleHUDGraphicsTiles - ld de, wTrainerFacingDirection + ld de, wHUDGraphicsTiles ld bc, $3 call CopyData coord hl, 1, 2 @@ -150,16 +150,16 @@ PlaceHUDTiles: ; 3a930 (e:6930) ld [hl], $73 ld bc, SCREEN_WIDTH add hl, bc - ld a, [wTrainerScreenY] + ld a, [wHUDGraphicsTiles + 1] ; leftmost tile ld [hl], a - ld a, $8 -.asm_3a93c + ld a, 8 +.loop add hl, de ld [hl], $76 dec a - jr nz, .asm_3a93c + jr nz, .loop add hl, de - ld a, [wTrainerScreenX] + ld a, [wHUDGraphicsTiles + 2] ; rightmost tile ld [hl], a ret @@ -172,8 +172,8 @@ SetupPlayerAndEnemyPokeballs: ; 3a948 (e:6948) ld a, $50 ld [hli], a ld [hl], $40 - ld a, $8 - ld [wTrainerEngageDistance], a + ld a, 8 + ld [wHUDPokeballGfxOffsetX], a ld hl, wOAMBuffer call WritePokeballOAMData ld hl, wEnemyMons diff --git a/engine/menu/main_menu.asm b/engine/menu/main_menu.asm index 3ed2f443..a46abf2a 100755 --- a/engine/menu/main_menu.asm +++ b/engine/menu/main_menu.asm @@ -455,7 +455,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) ld [wLastMenuItem],a inc a ld [wLetterPrintingDelayFlags],a - ld [wTrainerScreenY],a + ld [wUnusedCD40],a ld a,3 ; text speed cursor Y coordinate ld [wTopMenuItemY],a call SetCursorPositionsFromOptions diff --git a/engine/overworld/hidden_items.asm b/engine/overworld/hidden_items.asm index fc69afc1..1203dd2a 100755 --- a/engine/overworld/hidden_items.asm +++ b/engine/overworld/hidden_items.asm @@ -29,7 +29,7 @@ FoundHiddenItemText: ; 7675b (1d:675b) call GiveItem jr nc, .BagFull ld hl, wObtainedHiddenItemsFlags - ld a, [wTrainerScreenX] + ld a, [wHiddenItemOrCoinsIndex] ld c, a ld b, FLAG_SET predef FlagActionPredef @@ -100,7 +100,7 @@ HiddenCoins: ; 76799 (1d:6799) ld c, $2 predef AddBCDPredef ld hl, wObtainedHiddenCoinsFlags - ld a, [wTrainerScreenX] + ld a, [wHiddenItemOrCoinsIndex] ld c, a ld b, FLAG_SET predef FlagActionPredef diff --git a/engine/overworld/trainers.asm b/engine/overworld/trainers.asm index 2b08997b..a983881d 100755 --- a/engine/overworld/trainers.asm +++ b/engine/overworld/trainers.asm @@ -256,7 +256,7 @@ ReadTrainerScreenPosition: ; 5698e (15:698e) ; a: distance player to sprite CheckSpriteCanSeePlayer: ; 569af (15:69af) ld b, a - ld a, [wTrainerEngageDistance] ; sprite line of sight (engage distance) + ld a, [wTrainerEngageDistance] ; how far the trainer can see cp b jr nc, .checkIfLinedUp jr .notInLine ; player too far away diff --git a/main.asm b/main.asm index ed1dfe25..8160afa5 100755 --- a/main.asm +++ b/main.asm @@ -2052,7 +2052,7 @@ INCLUDE "data/map_songs.asm" INCLUDE "data/map_header_banks.asm" ClearVariablesAfterLoadingMapData: ; c335 (3:4335) - ld a, $90 + ld a, SCREEN_HEIGHT_PIXELS ld [hWY], a ld [rWY], a xor a diff --git a/scripts/daycarem.asm b/scripts/daycarem.asm index 917a4c79..3eabb0bc 100755 --- a/scripts/daycarem.asm +++ b/scripts/daycarem.asm @@ -103,21 +103,21 @@ DayCareMText1: ; 56254 (15:6254) ld a, [wPartyCount] cp PARTY_LENGTH ld hl, DayCareNoRoomForMonText - jp z, .asm_56403 - ld de, wTrainerFacingDirection + jp z, .leaveMonInDayCare + ld de, wDayCareTotalCost xor a ld [de], a inc de ld [de], a - ld hl, wTrainerScreenX + ld hl, wDayCarePerLevelCost ld a, $1 ld [hli], a ld [hl], $0 ld a, [wDayCareNumLevelsGrown] inc a ld b, a - ld c, $2 -.asm_56357 + ld c, 2 +.calcPriceLoop push hl push de push bc @@ -126,29 +126,29 @@ DayCareMText1: ; 56254 (15:6254) pop de pop hl dec b - jr nz, .asm_56357 + jr nz, .calcPriceLoop ld hl, DayCareOweMoneyText call PrintText - ld a, $13 + ld a, MONEY_BOX ld [wTextBoxID], a call DisplayTextBoxID call YesNoChoice ld hl, DayCareAllRightThenText ld a, [wCurrentMenuItem] and a - jp nz, .asm_56403 - ld hl, wTrainerFacingDirection + jp nz, .leaveMonInDayCare + ld hl, wDayCareTotalCost ld [hMoney], a ld a, [hli] ld [hMoney + 1], a ld a, [hl] ld [hMoney + 2], a call HasEnoughMoney - jr nc, .asm_56396 + jr nc, .enoughMoney ld hl, DayCareNotEnoughMoneyText - jp .asm_56403 + jp .leaveMonInDayCare -.asm_56396 +.enoughMoney xor a ld [W_DAYCARE_IN_USE], a ld hl, wDayCareNumLevelsGrown @@ -202,7 +202,7 @@ DayCareMText1: ; 56254 (15:6254) ld hl, DayCareGotMonBackText jr .done -.asm_56403 +.leaveMonInDayCare ld a, [wDayCareStartLevel] ld [wDayCareMonBoxLevel], a diff --git a/scripts/safarizoneentrance-yellow.asm b/scripts/safarizoneentrance-yellow.asm index 6ff0e298..9d354cff 100644 --- a/scripts/safarizoneentrance-yellow.asm +++ b/scripts/safarizoneentrance-yellow.asm @@ -1,7 +1,7 @@ .xf1f77 ld hl,.ForJust500Text call PrintText - ld a,$13 + ld a,MONEY_BOX ld [wTextBoxID],a call DisplayTextBoxID call YesNoChoice @@ -21,11 +21,11 @@ .xf1f9f xor a - ld [$ff9f],a + ld [hMoney],a ld a,$05 - ld [$ffa0],a + ld [hMoney + 1],a ld a,$00 - ld [$ffa1],a + ld [hMoney + 2],a call HasEnoughMoney jr nc,.success ld hl,.NotEnoughMoneyText @@ -36,19 +36,19 @@ .success xor a - ld [wSubtrahend],a + ld [wPriceTemp],a ld a,$05 - ld [wSubtrahend+1],a + ld [wPriceTemp + 1],a ld a,$00 - ld [wSubtrahend+2],a - ld hl,wTrainerFacingDirection + ld [wPriceTemp + 2],a + ld hl,wPriceTemp + 2 ld de,wPlayerMoney + 2 ld c,3 predef SubBCDPredef ld a,$b2 call $3736 call $373e - ld a,$13 + ld a,MONEY_BOX ld [wTextBoxID],a call DisplayTextBoxID ld hl,.MakePaymentText diff --git a/scripts/safarizoneentrance.asm b/scripts/safarizoneentrance.asm index 6ed62fd1..e4e2e2a8 100755 --- a/scripts/safarizoneentrance.asm +++ b/scripts/safarizoneentrance.asm @@ -145,7 +145,7 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) .SafariZoneEntranceText4 TX_FAR SafariZoneEntranceText_9e6e4 TX_ASM - ld a, $13 + ld a, MONEY_BOX ld [wTextBoxID],a call DisplayTextBoxID call YesNoChoice @@ -166,16 +166,16 @@ SafariZoneEntranceTextPointers: ; 752b9 (1d:52b9) .success xor a - ld [wSubtrahend],a + ld [wPriceTemp],a ld a,$05 - ld [wSubtrahend+1],a + ld [wPriceTemp + 1],a ld a,$00 - ld [wSubtrahend+2],a - ld hl,wTrainerFacingDirection + ld [wPriceTemp + 2],a + ld hl,wPriceTemp + 2 ld de,wPlayerMoney + 2 ld c,3 predef SubBCDPredef - ld a,$13 + ld a,MONEY_BOX ld [wTextBoxID],a call DisplayTextBoxID ld hl,.MakePaymentText diff --git a/text/maps/daycare_1.asm b/text/maps/daycare_1.asm index a42e3cf2..02e35344 100644 --- a/text/maps/daycare_1.asm +++ b/text/maps/daycare_1.asm @@ -39,7 +39,7 @@ _DayCareMonHasGrownText:: ; 8ac32 (22:6c32) _DayCareOweMoneyText:: ; 8ac7d (22:6c7d) text "You owe me ¥@" - TX_BCD wcd3f, $c2 + TX_BCD wDayCareTotalCost, $c2 db $0 line "for the return" cont "of this #MON." diff --git a/wram.asm b/wram.asm index 275ccc40..ed14cdf5 100755 --- a/wram.asm +++ b/wram.asm @@ -644,6 +644,18 @@ wOverrideSimulatedJoypadStatesMask:: ; cd3b ds 1 +wBattleTransitionCircleScreenQuadrantY:: ; cd3d +; 0 = upper half (Y < 9) +; 1 = lower half (Y >= 9) + +wBattleTransitionCopyTilesOffset:: ; cd3d +; 2 bytes +; after 1 row/column has been copied, the offset to the next one to copy from + +wInwardSpiralUpdateScreenCounter:: ; cd3d +; counts down from 7 so that every time 7 more tiles of the spiral have been +; placed, the tile map buffer is copied to VRAM so that progress is visible + wHoFTeamIndex:: ; cd3d wSSAnneSmokeDriftAmount:: ; cd3d @@ -726,9 +738,6 @@ wPlayerSpinWhileMovingUpOrDownAnimDeltaY:: ; cd3d wHiddenObjectFunctionArgument:: ; cd3d -wSubtrahend:: ; cd3d -; subtract (BCD) wSubtrahend, wSubtrahend+1, wSubtrahend+2 - wWhichTrade:: ; cd3d ; which entry from TradeMons to select @@ -737,6 +746,13 @@ wTrainerSpriteOffset:: ; cd3d wUnusedCD3D:: ; cd3d ds 1 +wHUDPokeballGfxOffsetX:: ; cd3e +; difference in X between the next ball and the current one + +wBattleTransitionCircleScreenQuadrantX:: ; cd3e +; 0 = left half (X < 10) +; 1 = right half (X >= 10) + wSSAnneSmokeX:: ; cd3e wRivalStarterBallSpriteIndex:: ; cd3e @@ -775,6 +791,12 @@ wHiddenObjectFunctionRomBank:: ; cd3e wTrainerEngageDistance:: ; cd3e ds 1 +wHUDGraphicsTiles:: ; cd3f +; 3 bytes + +wDayCareTotalCost:: ; cd3f +; 2-byte BCD number + wJigglypuffFacingDirections:: ; cd3f wOptionsBattleStyleCursorX:: ; cd3f @@ -801,7 +823,6 @@ wPlayerSpinWhileMovingUpOrDownAnimFrameDelay:: ; cd3f wHiddenObjectIndex:: ; cd3f wTrainerFacingDirection:: ; cd3f -wcd3f:: ; used with daycare text for money amount ds 1 wHoFMonOrPlayer:: ; cd40 @@ -816,8 +837,13 @@ wPlayerSpinInPlaceAnimSoundID:: ; cd40 wHiddenObjectY:: ; cd40 wTrainerScreenY:: ; cd40 + +wUnusedCD40:: ; cd40 ds 1 +wDayCarePerLevelCost:: ; cd41 +; 2-byte BCD number (always set to $0100) + wHoFTeamIndex2:: ; cd41 wHiddenItemOrCoinsIndex:: ; cd41 @@ -842,8 +868,7 @@ wHoFTeamNo:: ; cd42 wSlotMachineWheel1MiddleTile:: ; cd42 wFieldMovesLeftmostXCoord:: ; cd42 - -wcd42:: ds 1 ; used in pewter center script, printing field mon moves, slot machines and HoF PC + ds 1 wLastFieldMoveID:: ; cd43 ; unused -- cgit v1.3.1-sl0p