diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/audio/music1.asm | 12 | ||||
-rw-r--r-- | src/audio/music2.asm | 8 | ||||
-rw-r--r-- | src/constants/card_data_constants.asm | 17 | ||||
-rw-r--r-- | src/constants/duel_constants.asm | 108 | ||||
-rw-r--r-- | src/constants/gfx_constants.asm | 4 | ||||
-rw-r--r-- | src/constants/hardware_constants.asm | 1 | ||||
-rw-r--r-- | src/constants/text_constants.asm | 62 | ||||
-rw-r--r-- | src/engine/bank1.asm | 2473 | ||||
-rw-r--r-- | src/engine/bank1c.asm | 2 | ||||
-rw-r--r-- | src/engine/bank2.asm | 16 | ||||
-rw-r--r-- | src/engine/bank20.asm | 2 | ||||
-rw-r--r-- | src/engine/bank3.asm | 20 | ||||
-rw-r--r-- | src/engine/bank4.asm | 10 | ||||
-rw-r--r-- | src/engine/bank5.asm | 2 | ||||
-rw-r--r-- | src/engine/bank6.asm | 157 | ||||
-rw-r--r-- | src/engine/bank7.asm | 4 | ||||
-rw-r--r-- | src/engine/booster_packs.asm | 2 | ||||
-rw-r--r-- | src/engine/home.asm | 947 | ||||
-rw-r--r-- | src/gfx.asm | 154 | ||||
-rw-r--r-- | src/gfx/duel/anims/0.png (renamed from src/gfx/duel/0.png) | bin | 186 -> 186 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/1.png (renamed from src/gfx/duel/1.png) | bin | 144 -> 144 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/10.png (renamed from src/gfx/duel/10.png) | bin | 1052 -> 1052 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/11.png (renamed from src/gfx/duel/11.png) | bin | 374 -> 374 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/12.png (renamed from src/gfx/duel/12.png) | bin | 206 -> 206 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/13.png (renamed from src/gfx/duel/13.png) | bin | 200 -> 200 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/14.png (renamed from src/gfx/duel/14.png) | bin | 378 -> 378 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/15.png (renamed from src/gfx/duel/15.png) | bin | 414 -> 414 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/16.png (renamed from src/gfx/duel/16.png) | bin | 184 -> 184 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/17.png (renamed from src/gfx/duel/17.png) | bin | 577 -> 577 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/18.png (renamed from src/gfx/duel/18.png) | bin | 332 -> 332 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/19.png (renamed from src/gfx/duel/19.png) | bin | 428 -> 428 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/2.png (renamed from src/gfx/duel/2.png) | bin | 187 -> 187 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/20.png (renamed from src/gfx/duel/20.png) | bin | 177 -> 177 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/21.png (renamed from src/gfx/duel/21.png) | bin | 222 -> 222 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/22.png (renamed from src/gfx/duel/22.png) | bin | 422 -> 422 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/23.png (renamed from src/gfx/duel/23.png) | bin | 201 -> 201 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/24.png (renamed from src/gfx/duel/24.png) | bin | 511 -> 511 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/25.png (renamed from src/gfx/duel/25.png) | bin | 542 -> 542 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/26.png (renamed from src/gfx/duel/26.png) | bin | 243 -> 243 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/27.png (renamed from src/gfx/duel/27.png) | bin | 764 -> 764 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/28.png (renamed from src/gfx/duel/28.png) | bin | 193 -> 193 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/29.png (renamed from src/gfx/duel/29.png) | bin | 212 -> 212 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/3.png (renamed from src/gfx/duel/3.png) | bin | 207 -> 207 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/30.png (renamed from src/gfx/duel/30.png) | bin | 368 -> 368 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/31.png (renamed from src/gfx/duel/31.png) | bin | 194 -> 194 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/32.png (renamed from src/gfx/duel/32.png) | bin | 479 -> 479 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/33.png (renamed from src/gfx/duel/33.png) | bin | 186 -> 186 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/34.png (renamed from src/gfx/duel/34.png) | bin | 183 -> 183 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/35.png (renamed from src/gfx/duel/35.png) | bin | 380 -> 380 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/36.png (renamed from src/gfx/duel/36.png) | bin | 164 -> 164 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/37.png (renamed from src/gfx/duel/37.png) | bin | 200 -> 200 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/38.png (renamed from src/gfx/duel/38.png) | bin | 272 -> 272 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/39.png (renamed from src/gfx/duel/39.png) | bin | 317 -> 317 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/4.png (renamed from src/gfx/duel/4.png) | bin | 277 -> 277 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/40.png (renamed from src/gfx/duel/40.png) | bin | 223 -> 223 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/41.png (renamed from src/gfx/duel/41.png) | bin | 293 -> 293 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/42.png (renamed from src/gfx/duel/42.png) | bin | 155 -> 155 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/43.png (renamed from src/gfx/duel/43.png) | bin | 191 -> 191 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/44.png (renamed from src/gfx/duel/44.png) | bin | 205 -> 205 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/45.png (renamed from src/gfx/duel/45.png) | bin | 123 -> 123 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/46.png (renamed from src/gfx/duel/46.png) | bin | 157 -> 157 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/47.png (renamed from src/gfx/duel/47.png) | bin | 277 -> 277 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/48.png (renamed from src/gfx/duel/48.png) | bin | 118 -> 118 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/49.png (renamed from src/gfx/duel/49.png) | bin | 111 -> 111 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/5.png (renamed from src/gfx/duel/5.png) | bin | 212 -> 212 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/50.png (renamed from src/gfx/duel/50.png) | bin | 364 -> 364 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/51.t10.png (renamed from src/gfx/duel/51.t10.png) | bin | 552 -> 552 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/52.png (renamed from src/gfx/duel/52.png) | bin | 192 -> 192 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/53.png (renamed from src/gfx/duel/53.png) | bin | 149 -> 149 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/54.png (renamed from src/gfx/duel/54.png) | bin | 284 -> 284 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/55.png (renamed from src/gfx/duel/55.png) | bin | 114 -> 114 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/56.png (renamed from src/gfx/duel/56.png) | bin | 85 -> 85 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/57.png (renamed from src/gfx/duel/57.png) | bin | 90 -> 90 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/58.png (renamed from src/gfx/duel/58.png) | bin | 94 -> 94 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/59.png (renamed from src/gfx/duel/59.png) | bin | 120 -> 120 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/6.png (renamed from src/gfx/duel/6.png) | bin | 316 -> 316 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/60.png (renamed from src/gfx/duel/60.png) | bin | 97 -> 97 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/61.png (renamed from src/gfx/duel/61.png) | bin | 95 -> 95 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/62.png (renamed from src/gfx/duel/62.png) | bin | 85 -> 85 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/63.png (renamed from src/gfx/duel/63.png) | bin | 199 -> 199 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/64.png (renamed from src/gfx/duel/64.png) | bin | 102 -> 102 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/65.png (renamed from src/gfx/duel/65.png) | bin | 183 -> 183 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/66.png (renamed from src/gfx/duel/66.png) | bin | 135 -> 135 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/7.png (renamed from src/gfx/duel/7.png) | bin | 609 -> 609 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/8.png (renamed from src/gfx/duel/8.png) | bin | 293 -> 293 bytes | |||
-rw-r--r-- | src/gfx/duel/anims/9.png (renamed from src/gfx/duel/9.png) | bin | 462 -> 462 bytes | |||
-rw-r--r-- | src/gfx/duel/card_headers.png | bin | 0 -> 803 bytes | |||
-rw-r--r-- | src/gfx/duel/cgb_symbols.t7.png | bin | 0 -> 2960 bytes | |||
-rw-r--r-- | src/gfx/duel/dmg_sgb_symbols.t7.png | bin | 0 -> 3107 bytes | |||
-rw-r--r-- | src/gfx/duel/duel_graphics.t5.png | bin | 3283 -> 0 bytes | |||
-rw-r--r-- | src/gfx/duel/hud.png | bin | 0 -> 1398 bytes | |||
-rw-r--r-- | src/gfx/duel/other.t7.png | bin | 0 -> 1588 bytes | |||
-rw-r--r-- | src/hram.asm | 2 | ||||
-rw-r--r-- | src/macros/wram.asm | 2 | ||||
-rw-r--r-- | src/text/text1.asm | 128 | ||||
-rw-r--r-- | src/text/text10.asm | 128 | ||||
-rw-r--r-- | src/text/text11.asm | 152 | ||||
-rw-r--r-- | src/text/text12.asm | 190 | ||||
-rw-r--r-- | src/text/text13.asm | 44 | ||||
-rw-r--r-- | src/text/text2.asm | 174 | ||||
-rw-r--r-- | src/text/text3.asm | 234 | ||||
-rw-r--r-- | src/text/text4.asm | 120 | ||||
-rw-r--r-- | src/text/text5.asm | 330 | ||||
-rw-r--r-- | src/text/text6.asm | 160 | ||||
-rw-r--r-- | src/text/text7.asm | 110 | ||||
-rw-r--r-- | src/text/text8.asm | 60 | ||||
-rw-r--r-- | src/text/text9.asm | 110 | ||||
-rw-r--r-- | src/text/text_offsets.asm | 38 | ||||
-rw-r--r-- | src/vram.asm | 8 | ||||
-rw-r--r-- | src/wram.asm | 209 |
110 files changed, 4511 insertions, 1689 deletions
diff --git a/src/audio/music1.asm b/src/audio/music1.asm index 86d76f4..0407f6c 100644 --- a/src/audio/music1.asm +++ b/src/audio/music1.asm @@ -13,11 +13,11 @@ _PlaySFX:: ; f4009 (3d:4009) Func_f400c:: ; f400c (3d:400c) jp Func_f404e -Func_f400f:: ; f400f (3d:400f) - jp Func_f4052 +_AssertSongFinished:: ; f400f (3d:400f) + jp Music1_AssertSongFinished -Func_f4012:: ; f4012 (3d:4012) - jp Func_f405c +_AssertSFXFinished:: ; f4012 (3d:4012) + jp Music1_AssertSFXFinished Func_f4015:: ; f4015 (3d:4015) jp Func_f4066 @@ -70,7 +70,7 @@ Func_f404e: ; f404e (3d:404e) ld [wddf0], a ret -Func_f4052: ; f4052 (3d:4052) +Music1_AssertSongFinished: ; f4052 (3d:4052) ld a, [wCurSongID] cp $80 ld a, $1 @@ -78,7 +78,7 @@ Func_f4052: ; f4052 (3d:4052) xor a ret -Func_f405c: ; f405c (3d:405c) +Music1_AssertSFXFinished: ; f405c (3d:405c) ld a, [wCurSfxID] cp $80 ld a, $1 diff --git a/src/audio/music2.asm b/src/audio/music2.asm index 41d58f8..499aafc 100644 --- a/src/audio/music2.asm +++ b/src/audio/music2.asm @@ -14,10 +14,10 @@ Func_f800c: ; f800c (3e:400c) jp Func_f804e Func_f800f: ; f800f (3e:400f) - jp Func_f8052 + jp Music2_AssertSongFinished Func_f8012: ; f8012 (3e:4012) - jp Func_f805c + jp Music2_AssertSFXFinished Func_f8015: ; f8015 (3e:4015) jp Func_f8066 @@ -70,7 +70,7 @@ Func_f804e: ; f804e (3e:404e) ld [wddf0], a ret -Func_f8052: ; f8052 (3e:4052) +Music2_AssertSongFinished: ; f8052 (3e:4052) ld a, [wCurSongID] cp $80 ld a, $1 @@ -78,7 +78,7 @@ Func_f8052: ; f8052 (3e:4052) xor a ret -Func_f805c: ; f805c (3e:405c) +Music2_AssertSFXFinished: ; f805c (3e:405c) ld a, [wCurSfxID] cp $80 ld a, $1 diff --git a/src/constants/card_data_constants.asm b/src/constants/card_data_constants.asm index 6b6d299..e857aa6 100644 --- a/src/constants/card_data_constants.asm +++ b/src/constants/card_data_constants.asm @@ -96,6 +96,7 @@ TYPE_PKMN_PSYCHIC EQU PSYCHIC TYPE_PKMN_COLORLESS EQU COLORLESS TYPE_PKMN_UNUSED EQU UNUSED_TYPE const_def TYPE_PKMN_UNUSED + 1 - TYPE_PKMN_FIRE +TYPE_ENERGY EQU const_value const TYPE_ENERGY_FIRE ; $08 const TYPE_ENERGY_GRASS ; $09 const TYPE_ENERGY_LIGHTNING ; $0a @@ -183,3 +184,19 @@ FLAG_3_BIT_1 EQU %00000010 ; special CARD_DATA_RETREAT_COST values UNABLE_RETREAT EQU $64 + +; wCardPageNumber constants +CARDPAGE_POKEMON_OVERVIEW EQU $01 +CARDPAGE_POKEMON_MOVE1_1 EQU $02 +CARDPAGE_POKEMON_MOVE1_2 EQU $03 +CARDPAGE_POKEMON_MOVE2_1 EQU $04 +CARDPAGE_POKEMON_MOVE2_2 EQU $05 +CARDPAGE_POKEMON_DESCRIPTION EQU $06 +CARDPAGE_ENERGY EQU $09 +CARDPAGE_TRAINER_1 EQU $0d +CARDPAGE_TRAINER_2 EQU $0e + +; card type header constants ($10-tile headers in DuelCardHeaderGraphics) +HEADER_TRAINER EQU $00 +HEADER_ENERGY EQU $01 +HEADER_POKEMON EQU $02 diff --git a/src/constants/duel_constants.asm b/src/constants/duel_constants.asm index d033722..eaa9a65 100644 --- a/src/constants/duel_constants.asm +++ b/src/constants/duel_constants.asm @@ -1,14 +1,25 @@ MAX_BENCH_POKEMON EQU 5 MAX_PLAY_AREA_POKEMON EQU 6 ; arena + bench +MAX_HP EQU 120 +HP_BAR_LENGTH EQU MAX_HP / 10 ; hWhoseTurn constants PLAYER_TURN EQUS "HIGH(wPlayerDuelVariables)" OPPONENT_TURN EQUS "HIGH(wOpponentDuelVariables)" +; wDuelType constants +DUELTYPE_LINK EQU $1 +DUELTYPE_PRACTICE EQU $80 +; for normal duels (vs AI), wDuelType is $80 + [wOpponentDeckID] + ; wDuelFinished constants -DUEL_WON EQU $1 -DUEL_LOST EQU $2 -DUEL_DRAW EQU $3 +TURN_PLAYER_WON EQU $1 +TURN_PLAYER_LOST EQU $2 +TURN_PLAYER_TIED EQU $3 + +; wDuelResult constants +DUEL_WIN EQU $0 +DUEL_LOSS EQU $1 ; Box message id's const_def @@ -21,42 +32,55 @@ DUEL_DRAW EQU $3 const BOXMSG_COIN_TOSS ; wPlayerDuelVariables or wOpponentDuelVariables constants -DUELVARS_CARD_LOCATIONS EQUS "LOW(wPlayerCardLocations)" ; 00 -DUELVARS_HAND EQUS "LOW(wPlayerHand)" ; 42 -DUELVARS_DECK_CARDS EQUS "LOW(wPlayerDeckCards)" ; 7e -DUELVARS_NUMBER_OF_CARDS_NOT_IN_DECK EQUS "LOW(wPlayerNumberOfCardsNotInDeck)" ; ba -DUELVARS_ARENA_CARD EQUS "LOW(wPlayerArenaCard)" ; bb -DUELVARS_BENCH EQUS "LOW(wPlayerBench)" ; bc -DUELVARS_ARENA_CARD_HP EQUS "LOW(wPlayerArenaCardHP)" ; c8 -DUELVARS_BENCH1_CARD_HP EQUS "LOW(wPlayerBench1CardHP)" ; c9 -DUELVARS_BENCH2_CARD_HP EQUS "LOW(wPlayerBench2CardHP)" ; ca -DUELVARS_BENCH3_CARD_HP EQUS "LOW(wPlayerBench3CardHP)" ; cb -DUELVARS_BENCH4_CARD_HP EQUS "LOW(wPlayerBench4CardHP)" ; cc -DUELVARS_BENCH5_CARD_HP EQUS "LOW(wPlayerBench5CardHP)" ; cd -DUELVARS_ARENA_CARD_STAGE EQUS "LOW(wPlayerArenaCardStage)" ; ce -DUELVARS_BENCH1_CARD_STAGE EQUS "LOW(wPlayerBench1CardStage)" ; cf -DUELVARS_BENCH2_CARD_STAGE EQUS "LOW(wPlayerBench2CardStage)" ; d0 -DUELVARS_BENCH3_CARD_STAGE EQUS "LOW(wPlayerBench3CardStage)" ; d1 -DUELVARS_BENCH4_CARD_STAGE EQUS "LOW(wPlayerBench4CardStage)" ; d2 -DUELVARS_BENCH5_CARD_STAGE EQUS "LOW(wPlayerBench5CardStage)" ; d3 -DUELVARS_ARENA_CARD_CHANGED_TYPE EQUS "LOW(wPlayerArenaCardChangedType)" ; d4 -DUELVARS_BENCH1_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench1CardChangedType)" ; d5 -DUELVARS_BENCH2_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench2CardChangedType)" ; d6 -DUELVARS_BENCH3_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench3CardChangedType)" ; d7 -DUELVARS_BENCH4_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench4CardChangedType)" ; d8 -DUELVARS_BENCH5_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench5CardChangedType)" ; d9 -DUELVARS_ARENA_CARD_SUBSTATUS1 EQUS "LOW(wPlayerArenaCardSubstatus1)" ; e7 -DUELVARS_ARENA_CARD_SUBSTATUS2 EQUS "LOW(wPlayerArenaCardSubstatus2)" ; e8 -DUELVARS_ARENA_CARD_CHANGED_WEAKNESS EQUS "LOW(wPlayerArenaCardChangedWeakness)" ; e9 -DUELVARS_ARENA_CARD_CHANGED_RESISTANCE EQUS "LOW(wPlayerArenaCardChangedResistance)" ; ea -DUELVARS_ARENA_CARD_SUBSTATUS3 EQUS "LOW(wPlayerArenaCardSubstatus3)" ; eb -DUELVARS_PRIZES EQUS "LOW(wPlayerPrizes)" ; ec -DUELVARS_NUMBER_OF_CARDS_IN_DISCARD_PILE EQUS "LOW(wPlayerNumberOfCardsInDiscardPile)" ; ed -DUELVARS_NUMBER_OF_CARDS_IN_HAND EQUS "LOW(wPlayerNumberOfCardsInHand)" ; ee -DUELVARS_NUMBER_OF_POKEMON_IN_PLAY EQUS "LOW(wPlayerNumberOfPokemonInPlay)" ; ef -DUELVARS_ARENA_CARD_STATUS EQUS "LOW(wPlayerArenaCardStatus)" ; f0 -DUELVARS_DUELIST_TYPE EQUS "LOW(wPlayerDuelistType)" ; f1 -DUELVARS_ARENA_CARD_DISABLED_MOVE_INDEX EQUS "LOW(wPlayerArenaCardDisabledMoveIndex)" ; f2 +DUELVARS_CARD_LOCATIONS EQUS "LOW(wPlayerCardLocations)" ; 00 +DUELVARS_HAND EQUS "LOW(wPlayerHand)" ; 42 +DUELVARS_DECK_CARDS EQUS "LOW(wPlayerDeckCards)" ; 7e +DUELVARS_NUMBER_OF_CARDS_NOT_IN_DECK EQUS "LOW(wPlayerNumberOfCardsNotInDeck)" ; ba +DUELVARS_ARENA_CARD EQUS "LOW(wPlayerArenaCard)" ; bb +DUELVARS_BENCH EQUS "LOW(wPlayerBench)" ; bc +DUELVARS_ARENA_CARD_FLAGS_C2 EQU $c2 +DUELVARS_ARENA_CARD_HP EQUS "LOW(wPlayerArenaCardHP)" ; c8 +DUELVARS_BENCH1_CARD_HP EQUS "LOW(wPlayerBench1CardHP)" ; c9 +DUELVARS_BENCH2_CARD_HP EQUS "LOW(wPlayerBench2CardHP)" ; ca +DUELVARS_BENCH3_CARD_HP EQUS "LOW(wPlayerBench3CardHP)" ; cb +DUELVARS_BENCH4_CARD_HP EQUS "LOW(wPlayerBench4CardHP)" ; cc +DUELVARS_BENCH5_CARD_HP EQUS "LOW(wPlayerBench5CardHP)" ; cd +DUELVARS_ARENA_CARD_STAGE EQUS "LOW(wPlayerArenaCardStage)" ; ce +DUELVARS_BENCH1_CARD_STAGE EQUS "LOW(wPlayerBench1CardStage)" ; cf +DUELVARS_BENCH2_CARD_STAGE EQUS "LOW(wPlayerBench2CardStage)" ; d0 +DUELVARS_BENCH3_CARD_STAGE EQUS "LOW(wPlayerBench3CardStage)" ; d1 +DUELVARS_BENCH4_CARD_STAGE EQUS "LOW(wPlayerBench4CardStage)" ; d2 +DUELVARS_BENCH5_CARD_STAGE EQUS "LOW(wPlayerBench5CardStage)" ; d3 +DUELVARS_ARENA_CARD_CHANGED_TYPE EQUS "LOW(wPlayerArenaCardChangedType)" ; d4 +DUELVARS_BENCH1_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench1CardChangedType)" ; d5 +DUELVARS_BENCH2_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench2CardChangedType)" ; d6 +DUELVARS_BENCH3_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench3CardChangedType)" ; d7 +DUELVARS_BENCH4_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench4CardChangedType)" ; d8 +DUELVARS_BENCH5_CARD_CHANGED_TYPE EQUS "LOW(wPlayerBench5CardChangedType)" ; d9 +DUELVARS_ARENA_CARD_ATTACHED_DEFENDER EQUS "LOW(wPlayerArenaCardAttachedDefender)" ; da +DUELVARS_BENCH1_CARD_ATTACHED_DEFENDER EQUS "LOW(wPlayerBench1CardAttachedDefender)" ; db +DUELVARS_BENCH2_CARD_ATTACHED_DEFENDER EQUS "LOW(wPlayerBench2CardAttachedDefender)" ; dc +DUELVARS_BENCH3_CARD_ATTACHED_DEFENDER EQUS "LOW(wPlayerBench3CardAttachedDefender)" ; dd +DUELVARS_BENCH4_CARD_ATTACHED_DEFENDER EQUS "LOW(wPlayerBench4CardAttachedDefender)" ; de +DUELVARS_BENCH5_CARD_ATTACHED_DEFENDER EQUS "LOW(wPlayerBench5CardAttachedDefender)" ; df +DUELVARS_ARENA_CARD_ATTACHED_PLUSPOWER EQUS "LOW(wPlayerArenaCardAttachedPluspower)" ; e0 +DUELVARS_BENCH1_CARD_ATTACHED_PLUSPOWER EQUS "LOW(wPlayerBench1CardAttachedPluspower)" ; e1 +DUELVARS_BENCH2_CARD_ATTACHED_PLUSPOWER EQUS "LOW(wPlayerBench2CardAttachedPluspower)" ; e2 +DUELVARS_BENCH3_CARD_ATTACHED_PLUSPOWER EQUS "LOW(wPlayerBench3CardAttachedPluspower)" ; e3 +DUELVARS_BENCH4_CARD_ATTACHED_PLUSPOWER EQUS "LOW(wPlayerBench4CardAttachedPluspower)" ; e4 +DUELVARS_BENCH5_CARD_ATTACHED_PLUSPOWER EQUS "LOW(wPlayerBench5CardAttachedPluspower)" ; e5 +DUELVARS_ARENA_CARD_SUBSTATUS1 EQUS "LOW(wPlayerArenaCardSubstatus1)" ; e7 +DUELVARS_ARENA_CARD_SUBSTATUS2 EQUS "LOW(wPlayerArenaCardSubstatus2)" ; e8 +DUELVARS_ARENA_CARD_CHANGED_WEAKNESS EQUS "LOW(wPlayerArenaCardChangedWeakness)" ; e9 +DUELVARS_ARENA_CARD_CHANGED_RESISTANCE EQUS "LOW(wPlayerArenaCardChangedResistance)" ; ea +DUELVARS_ARENA_CARD_SUBSTATUS3 EQUS "LOW(wPlayerArenaCardSubstatus3)" ; eb +DUELVARS_PRIZES EQUS "LOW(wPlayerPrizes)" ; ec +DUELVARS_NUMBER_OF_CARDS_IN_DISCARD_PILE EQUS "LOW(wPlayerNumberOfCardsInDiscardPile)" ; ed +DUELVARS_NUMBER_OF_CARDS_IN_HAND EQUS "LOW(wPlayerNumberOfCardsInHand)" ; ee +DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA EQUS "LOW(wPlayerNumberOfPokemonInPlayArea)" ; ef +DUELVARS_ARENA_CARD_STATUS EQUS "LOW(wPlayerArenaCardStatus)" ; f0 +DUELVARS_DUELIST_TYPE EQUS "LOW(wPlayerDuelistType)" ; f1 +DUELVARS_ARENA_CARD_DISABLED_MOVE_INDEX EQUS "LOW(wPlayerArenaCardDisabledMoveIndex)" ; f2 ; card location constants (DUELVARS_CARD_LOCATIONS) CARD_LOCATION_DECK EQU $00 @@ -87,7 +111,7 @@ PLAY_AREA_BENCH_5 EQU $5 ; duelist types (DUELVARS_DUELIST_TYPE) DUELIST_TYPE_PLAYER EQU $00 DUELIST_TYPE_LINK_OPP EQU $01 -DUELIST_TYPE_AI_OPP EQU $80 +DUELIST_TYPE_AI_OPP EQU $80 ; $80 + [wOpponentDeckID] ; status conditions (DUELVARS_ARENA_CARD_STATUS) ; two statuses can be combined if they are identified by a different nybble @@ -129,6 +153,10 @@ SUBSTATUS2_GROWL EQU $12 SUBSTATUS3_THIS_TURN_DOUBLE_DAMAGE EQU 0 SUBSTATUS3_HEADACHE EQU 1 +; DUELVARS_ARENA_CARD_FLAGS_C2 constants +CAN_EVOLVE_THIS_TURN_F EQU 7 +CAN_EVOLVE_THIS_TURN EQU 1 << CAN_EVOLVE_THIS_TURN_F + ; wNoDamageOrEffect constants NO_DAMAGE_OR_EFFECT_AGILITY EQU $01 NO_DAMAGE_OR_EFFECT_BARRIER EQU $02 diff --git a/src/constants/gfx_constants.asm b/src/constants/gfx_constants.asm index 2f5ca4a..f5915d3 100644 --- a/src/constants/gfx_constants.asm +++ b/src/constants/gfx_constants.asm @@ -8,9 +8,11 @@ BG_MAP_HEIGHT EQU 32 ; tiles ; cgb palette size CGB_PAL_SIZE EQU 8 ; bytes +palettes EQUS "* CGB_PAL_SIZE" ; tile size TILE_SIZE EQU 16 ; bytes +tiles EQUS "* TILE_SIZE" ; wFlushPaletteFlags constants FLUSH_ONE EQU %10000000 @@ -38,4 +40,4 @@ SPRITE_ANIM_BUFFER_CAPACITY EQU 16 ; sprites const SPRITE_ANIM_FIELD_0D const SPRITE_ANIM_MOVEMENT_COUNTER const SPRITE_ANIM_FIELD_0F -SPRITE_ANIM_LENGTH EQU const_value
\ No newline at end of file +SPRITE_ANIM_LENGTH EQU const_value diff --git a/src/constants/hardware_constants.asm b/src/constants/hardware_constants.asm index 0471e74..098b569 100644 --- a/src/constants/hardware_constants.asm +++ b/src/constants/hardware_constants.asm @@ -113,4 +113,3 @@ rUNKNOWN5 EQU $ff75 ; (8Fh) - Bit 4-6 (Read/Write) rUNKNOWN6 EQU $ff76 ; (00h) - Always 00h (Read Only) rUNKNOWN7 EQU $ff77 ; (00h) - Always 00h (Read Only) rIE EQU $ffff ; Interrupt Enable (R/W) - diff --git a/src/constants/text_constants.asm b/src/constants/text_constants.asm index 062f5e4..3c93cdf 100644 --- a/src/constants/text_constants.asm +++ b/src/constants/text_constants.asm @@ -1,20 +1,52 @@ -TX_START EQU $06 -TX_LINE EQU "\n" -TX_END EQU $00 - -TX_RAM1 EQU $09 -TX_RAM2 EQU $0B -TX_RAM3 EQU $0C +TX_END EQU $00 +TX_SYMBOL EQU $05 +TX_START EQU $06 +TX_RAM1 EQU $09 +TX_LINE EQU "\n" ; $0a +TX_RAM2 EQU $0B +TX_RAM3 EQU $0C text EQUS "db TX_START, " line EQUS "db TX_LINE, " done EQUS "db TX_END" -TX_FIRE EQUS "$05, $01" -TX_GRASS EQUS "$05, $02" -TX_LIGHTNING EQUS "$05, $03" -TX_WATER EQUS "$05, $04" -TX_FIGHTING EQUS "$05, $05" -TX_PSYCHIC EQUS "$05, $06" -TX_COLORLESS EQUS "$05, $07" -TX_LVL EQUS "$05, $11" + charmap "é", "`" + charmap "♂", "$" + charmap "♀", "%" + charmap "”", "\"" + +; TX_SYMBOL (full-tile symbols loaded into v0Tiles2) + charmap "<", TX_SYMBOL + charmap " >", $00 + charmap "FIRE>", $01 + charmap "GRASS>", $02 + charmap "LIGHTNING>", $03 + charmap "WATER>", $04 + charmap "FIGHTING>", $05 + charmap "PSYCHIC>", $06 + charmap "COLORLESS>", $07 + charmap "POISONED>", $08 + charmap "ASLEEP>", $09 + charmap "CONFUSED>", $0a + charmap "PARALYZED>", $0b + charmap "PKMN_ICON>", $0d ; icon displayed along with no. of Pkmn in duel screen + charmap "HP>", $10 + charmap "Lv>", $11 + charmap "E>", $12 + charmap "No>", $13 + charmap "PLUSPOWER>", $14 + charmap "DEFENDER>", $15 + charmap "🌕>", $16 ; HP tile + charmap "🌑>", $17 ; HP tile with damage counter + charmap "0>", $20 + charmap "1>", $21 + charmap "2>", $22 + charmap "3>", $23 + charmap "4>", $24 + charmap "5>", $25 + charmap "6>", $26 + charmap "7>", $27 + charmap "8>", $28 + charmap "9>", $29 + charmap "+>", $2b + charmap "PRIZE_ICON>", $30 ; icon displayed along with no. of prizes in duel screen diff --git a/src/engine/bank1.asm b/src/engine/bank1.asm index 8852914..7933fc4 100644 --- a/src/engine/bank1.asm +++ b/src/engine/bank1.asm @@ -15,7 +15,7 @@ GameLoop: ; 4000 (1:4000) ld a, $1 ld [wUppercaseFlag], a ei - farcall Func_1a6cc + farcall CommentedOut_1a6cc ldh a, [hButtonsHeld] cp A_BUTTON | B_BUTTON jr z, .ask_erase_backup_ram @@ -45,8 +45,8 @@ Func_405a: ; 405a (1:405a) xor a ld [wTileMapFill], a call DisableLCD - call Func_2119 - call Func_5aeb + call LoadDuelHUDTiles + call SetDefaultPalettes ld de, $387f call Func_2275 ret @@ -67,16 +67,16 @@ TryContinueDuel: ; 406f (1:406f) ContinueDuel: ; 407a (1:407a) ld hl, sp+$00 ld a, l - ld [wcbe5], a + ld [wDuelReturnAddress], a ld a, h - ld [wcbe5 + 1], a + ld [wDuelReturnAddress + 1], a call ClearJoypad ld a, [wDuelTheme] call PlaySong xor a ld [wDuelFinished], a - call DuelMainScene - jp StartDuel.asm_40fb + call DuelMainInterface + jp StartDuel.begin_turn ; 0x4097 FailedToContinueDuel: ; 4097 (1:4097) @@ -99,7 +99,7 @@ StartDuel: ; 409f (1:409f) call SwapTurn call LoadOpponentDeck call SwapTurn - jr .asm_40ca + jr .continue ld a, MUSIC_DUEL_THEME_1 ld [wDuelTheme], a @@ -109,17 +109,17 @@ StartDuel: ; 409f (1:409f) ld [hl], a ld [wIsPracticeDuel], a -.asm_40ca +.continue ld hl, sp+$0 ld a, l - ld [wcbe5], a + ld [wDuelReturnAddress], a ld a, h - ld [wcbe5 + 1], a + ld [wDuelReturnAddress + 1], a xor a ld [wCurrentDuelMenuItem], a call Func_420b ld a, [wcc18] - ld [wcc08], a + ld [wDuelInitialPrizes], a call $70aa ld a, [wDuelTheme] call PlaySong @@ -134,7 +134,7 @@ StartDuel: ; 409f (1:409f) call $54c8 call HandleTurn -.asm_40fb +.begin_turn call Func_0f58 ld a, [wDuelFinished] or a @@ -148,27 +148,27 @@ StartDuel: ; 409f (1:409f) jr nz, .duel_finished ld hl, wDuelTurns inc [hl] - ld a, [wcc09] - cp $80 - jr z, .asm_4126 + ld a, [wDuelType] + cp DUELTYPE_PRACTICE + jr z, .practice_duel .next_turn call SwapTurn jr .main_duel_loop -.asm_4126 +.practice_duel ld a, [wIsPracticeDuel] or a jr z, .next_turn ld a, [hl] - cp $f + cp 15 ; the practice duel lasts 15 turns jr c, .next_turn - xor a - ld [wd0c3], a + xor a ; DUEL_WIN + ld [wDuelResult], a ret .duel_finished - call $5990 + call ZeroObjectPositionsAndToggleOAMCopy call EmptyScreen ld a, BOXMSG_DECISION call DrawDuelBoxMessage @@ -179,19 +179,19 @@ StartDuel: ; 409f (1:409f) push af ld a, PLAYER_TURN ldh [hWhoseTurn], a - call $4a97 - call $4ad6 + call Func_4a97 + call Func_4ad6 pop af ldh [hWhoseTurn], a call Func_3b21 ld a, [wDuelFinished] - cp DUEL_WON + cp TURN_PLAYER_WON jr z, .active_duelist_won_battle - cp DUEL_LOST + cp TURN_PLAYER_LOST jr z, .active_duelist_lost_batte ld a, $5f ld c, MUSIC_DARK_DIDDLY - ldtx hl, DuelWasDrawText + ldtx hl, DuelWasADrawText jr .handle_duel_finished .active_duelist_won_battle @@ -199,8 +199,8 @@ StartDuel: ; 409f (1:409f) cp PLAYER_TURN jr nz, .opponent_won_battle .player_won_battle - xor a - ld [wd0c3], a + xor a ; DUEL_WIN + ld [wDuelResult], a ld a, $5d ld c, MUSIC_MATCH_VICTORY ldtx hl, WonDuelText @@ -211,8 +211,8 @@ StartDuel: ; 409f (1:409f) cp PLAYER_TURN jr nz, .player_won_battle .opponent_won_battle - ld a, $1 - ld [wd0c3], a + ld a, DUEL_LOSS + ld [wDuelResult], a ld a, $5e ld c, MUSIC_MATCH_LOSS ldtx hl, LostDuelText @@ -225,13 +225,13 @@ StartDuel: ; 409f (1:409f) ldh [hWhoseTurn], a call DrawWideTextBox_PrintText call EnableLCD -.asm_41a7 +.wait_song call DoFrame - call Func_378a + call AssertSongFinished or a - jr nz, .asm_41a7 + jr nz, .wait_song ld a, [wDuelFinished] - cp DUEL_DRAW + cp TURN_PLAYER_TIED jr z, .tied_battle call Func_39fc call WaitForWideTextBoxInput @@ -248,26 +248,26 @@ StartDuel: ; 409f (1:409f) call PlaySong ldtx hl, StartSuddenDeathMatchText call DrawWideTextBox_WaitForInput - ld a, $1 - ld [wcc08], a + ld a, 1 + ld [wDuelInitialPrizes], a call $70aa - ld a, [wcc09] - cp $1 - jr z, .asm_41f3 + ld a, [wDuelType] + cp DUELTYPE_LINK + jr z, .link_duel ld a, PLAYER_TURN ldh [hWhoseTurn], a call Func_4b60 jp .main_duel_loop -.asm_41f3 +.link_duel call Func_0f58 ld h, PLAYER_TURN ld a, [wSerialOp] cp $29 - jr z, .asm_4201 + jr z, .got_turn ld h, OPPONENT_TURN -.asm_4201 +.got_turn ld a, h ldh [hWhoseTurn], a call Func_4b60 @@ -278,31 +278,32 @@ StartDuel: ; 409f (1:409f) Func_420b: ; 420b (1:420b) xor a ld [wTileMapFill], a - call $5990 + call ZeroObjectPositionsAndToggleOAMCopy call EmptyScreen - call Func_2119 - call Func_5aeb + call LoadDuelHUDTiles + call SetDefaultPalettes ld de, $389f call Func_2275 call EnableLCD ret ; 0x4225 +; handle the turn of the duelist identified by hWhoseTurn HandleTurn: ; 4225 (1:4225) ld a, DUELVARS_DUELIST_TYPE call GetTurnDuelistVariable ld [wDuelistType], a ld a, [wDuelTurns] cp 2 - jr c, .asm_4237 ; jump if it's the turn holder's first turn - call $70f6 + jr c, .skip_let_evolve ; jump if it's the turn holder's first turn + call SetAllPlayAreaPokemonCanEvolve -.asm_4237 - call $70e6 - call $4933 +.skip_let_evolve + call Func_70e6 + call Func_4933 call DrawCardFromDeck jr nc, .deck_not_empty - ld a, DUEL_LOST + ld a, TURN_PLAYER_LOST ld [wDuelFinished], a ret @@ -311,23 +312,31 @@ HandleTurn: ; 4225 (1:4225) call AddCardToHand ld a, [wDuelistType] cp DUELIST_TYPE_PLAYER - jr z, Func_4262 + jr z, HandleTurn_PlayerDrewCard call SwapTurn call IsClairvoyanceActive call SwapTurn - call c, $4b2c - jr DuelMainScene - -Func_4262: - call $4b2c - call Func_100b + call c, DisplayPlayerDrawCardScreen + jr DuelMainInterface + +; display the animation of the player drawing the card at hTempCardIndex_ff98 +; save duel state to SRAM, and fall through to DuelMainInterface to effectively +; begin the turn +HandleTurn_PlayerDrewCard: + call DisplayPlayerDrawCardScreen + call SaveDuelStateToSRAM +; fallthrough Func_4268: ld a, $06 - call $51e7 + call DoPracticeDuelAction +; fallthrough -DuelMainScene: - call $4f9d +; print the main interface during a duel, including background, Pokemon, HUDs and a text box. +; the bottom text box changes depending on whether the turn belongs to the player (show the duel menu), +; an AI opponent (print "Waiting..." and a reduced menu) or a link opponent (print "<Duelist> is thinking"). +DuelMainInterface: ; 426d (1:426d) + call DrawDuelMainScene ld a, [wDuelistType] cp DUELIST_TYPE_PLAYER jr z, PrintDuelMenu @@ -345,7 +354,7 @@ DuelMainScene: ld [wcc10], a ret -PrintDuelMenu: +PrintDuelMenu: ; 4295 (1:4295) call DrawWideTextBox ld hl, $54e9 call Func_2c08 @@ -356,38 +365,39 @@ PrintDuelMenu: ret nz ld a, [wCurrentDuelMenuItem] call SetMenuItem +; fallthrough -HandleDuelMenuInput: +HandleDuelMenuInputAndShortcuts: call DoFrame ldh a, [hButtonsHeld] and B_BUTTON jr z, .b_not_held ldh a, [hButtonsPressed] bit D_UP_F, a - jr nz, OpponentPlayAreaScreen + jr nz, DuelMenuShortcut_OpponentPlayArea bit D_DOWN_F, a - jr nz, PlayerPlayAreaScreen + jr nz, DuelMenuShortcut_PlayerPlayArea bit D_LEFT_F, a - jr nz, PlayerDiscardPileScreen + jr nz, DuelMenuShortcut_PlayerDiscardPile bit D_RIGHT_F, a - jr nz, OpponentDiscardPileScreen + jr nz, DuelMenuShortcut_OpponentDiscardPile bit START_F, a - jp nz, OpponentActivePokemonScreen + jp nz, DuelMenuShortcut_OpponentActivePokemon .b_not_held ldh a, [hButtonsPressed] and START - jp nz, PlayerActivePokemonScreen + jp nz, DuelMenuShortcut_PlayerActivePokemon ldh a, [hButtonsPressed] bit SELECT_F, a - jp nz, $458e + jp nz, DuelMenuShortcut_BothActivePokemon ld a, [wcbe7] or a - jr nz, HandleDuelMenuInput - call Func_271a + jr nz, HandleDuelMenuInputAndShortcuts + call HandleDuelMenuInput ld a, e ld [wCurrentDuelMenuItem], a - jr nc, HandleDuelMenuInput + jr nc, HandleDuelMenuInputAndShortcuts ldh a, [hCurrentMenuItem] ld hl, DuelMenuFunctionTable jp JumpToFunctionInTable @@ -408,41 +418,49 @@ Func_42fd: ; 42fd (1:42fd) jp PrintDuelMenu.asm_429e ; 0x430b -OpponentPlayAreaScreen: ; 430b (1:430b) - call DrawOpponentPlayAreaScreen - jp DuelMainScene +; triggered by pressing B + UP in the duel menu +DuelMenuShortcut_OpponentPlayArea: ; 430b (1:430b) + call OpenOpponentPlayAreaScreen + jp DuelMainInterface -PlayerPlayAreaScreen: ; 4311 (1:4311) - call DrawPlayerPlayAreaScreen - jp DuelMainScene +; triggered by pressing B + DOWN in the duel menu +DuelMenuShortcut_PlayerPlayArea: ; 4311 (1:4311) + call OpenPlayAreaScreen + jp DuelMainInterface -OpponentDiscardPileScreen: ; 4317 (1:4317) - call DrawOpponentDiscardPileScreen +; triggered by pressing B + LEFT in the duel menu +DuelMenuShortcut_OpponentDiscardPile: ; 4317 (1:4317) + call OpenOpponentDiscardPileScreen jp c, PrintDuelMenu - jp DuelMainScene + jp DuelMainInterface -PlayerDiscardPileScreen: ; 4320 (1:4320) - call DrawPlayerDiscardPileScreen +; triggered by pressing B + RIGHT in the duel menu +DuelMenuShortcut_PlayerDiscardPile: ; 4320 (1:4320) + call OpenPlayerDiscardPileScreen jp c, PrintDuelMenu - jp DuelMainScene + jp DuelMainInterface -DrawOpponentPlayAreaScreen: ; 4329 (1:4329) +; draw the opponent's play area screen +OpenOpponentPlayAreaScreen: ; 4329 (1:4329) call SwapTurn - call DrawPlayerPlayAreaScreen + call OpenPlayAreaScreen call SwapTurn ret -DrawPlayerPlayAreaScreen: ; 4333 (1:4333) - call $5fdd - jp $6008 +; draw the turn holder's play area screen +OpenPlayAreaScreen: ; 4333 (1:4333) + call HasAlivePokemonInPlayArea + jp OpenPlayAreaScreenForViewing -DrawOpponentDiscardPileScreen: ; 4339 (1:4339) +; draw the opponent's discard pile screen +OpenOpponentDiscardPileScreen: ; 4339 (1:4339) call SwapTurn - call $5550 + call OpenDiscardPileScreen jp SwapTurn -DrawPlayerDiscardPileScreen: ; 4342 (1:4342) - jp $5550 +; draw the player's discard pile screen +OpenPlayerDiscardPileScreen: ; 4342 (1:4342) + jp OpenDiscardPileScreen Func_4345: ; 4345 (1:4345) call SwapTurn @@ -453,28 +471,31 @@ Func_4345: ; 4345 (1:4345) Func_434e: ; 434e (1:434e) call CreateHandCardList jr c, .no_cards_in_hand - call $559a - ld a, $09 + call DrawCardListScreenLayout + ld a, START + A_BUTTON ld [wcbd6], a - jp $55f0 + jp Func_55f0 .no_cards_in_hand ldtx hl, NoCardsInHandText jp DrawWideTextBox_WaitForInput ; 0x4364 -OpponentActivePokemonScreen: ; 4364 (1:4364) +; triggered by pressing B + START in the duel menu +DuelMenuShortcut_OpponentActivePokemon: ; 4364 (1:4364) call SwapTurn - call Func_4376 + call OpenActivePokemonScreen call SwapTurn - jp DuelMainScene + jp DuelMainInterface ; 0x4370 -PlayerActivePokemonScreen: ; 4370 (1:4370) - call Func_4376 - jp DuelMainScene +; triggered by pressing START in the duel menu +DuelMenuShortcut_PlayerActivePokemon: ; 4370 (1:4370) + call OpenActivePokemonScreen + jp DuelMainInterface ; 0x4376 -Func_4376: ; 4376 (1:4376) +; draw the turn holder's active Pokemon screen if it exists +OpenActivePokemonScreen: ; 4376 (1:4376) ld a, DUELVARS_ARENA_CARD call GetTurnDuelistVariable cp -1 @@ -485,31 +506,34 @@ Func_4376: ; 4376 (1:4376) xor a ld [hli], a ld [hl], a - call $576a + call Func_576a ret ; 0x438e +; triggered by selecting the "Pkmn Power" item in the duel menu DuelMenu_PkmnPower: ; 438e (1:438e) call $6431 - jp c, DuelMainScene + jp c, DuelMainInterface call Func_1730 - jp DuelMainScene + jp DuelMainInterface +; triggered by selecting the "Done" item in the duel menu DuelMenu_Done: ; 439a (1:439a) ld a, $08 - call $51e7 + call DoPracticeDuelAction jp c, Func_4268 ld a, $05 call SetDuelAIAction call $717a ret +; triggered by selecting the "Retreat" item in the duel menu DuelMenu_Retreat: ; 43ab (1:43ab) ld a, DUELVARS_ARENA_CARD_STATUS call GetTurnDuelistVariable and CNF_SLP_PRZ cp CONFUSED - ldh [hffa0], a + ldh [hTemp_ffa0], a jr nz, Func_43f1 ld a, [wcc0c] or a @@ -520,7 +544,7 @@ DuelMenu_Retreat: ; 43ab (1:43ab) jr c, Func_441c ldtx hl, SelectPkmnOnBenchToSwitchWithActiveText call DrawWideTextBox_WaitForInput - call $600c + call OpenPlayAreaScreenForSelection jr c, Func_441c ld [wBenchSelectedPokemon], a ld a, [wBenchSelectedPokemon] @@ -529,7 +553,7 @@ DuelMenu_Retreat: ; 43ab (1:43ab) call SetDuelAIAction call $657a jr nc, Func_441c - call $4f9d + call DrawDuelMainScene Func_43e8: ; 43e8 ldtx hl, UnableToRetreatText @@ -544,38 +568,70 @@ Func_43f1: ; 43f1 (1:43f1) call $6558 ldtx hl, SelectPkmnOnBenchToSwitchWithActiveText call DrawWideTextBox_WaitForInput - call $600c + call OpenPlayAreaScreenForSelection ld [wBenchSelectedPokemon], a ldh [hTempPlayAreaLocationOffset_ffa1], a push af call $6564 pop af - jp c, DuelMainScene + jp c, DuelMainInterface ld a, $04 call SetDuelAIAction call $657a Func_441c: ; 441c (1:441c) - jp DuelMainScene + jp DuelMainInterface Func_441f: ; 441f (1:441f) call DrawWideTextBox_WaitForInput jp PrintDuelMenu +; triggered by selecting the "Hand" item in the duel menu DuelMenu_Hand: ; 4425 (1:4425) ld a, DUELVARS_NUMBER_OF_CARDS_IN_HAND call GetTurnDuelistVariable or a - jr nz, Func_4436 + jr nz, OpenPlayerHandScreen ldtx hl, NoCardsInHandText call DrawWideTextBox_WaitForInput jp PrintDuelMenu -Func_4436: ; 4436 (1:4436) - INCROM $4436, $4477 - +; draw the screen for the player's hand and handle user input to for example check +; a card or attempt to use a card, playing the card if possible in that case. +OpenPlayerHandScreen: ; 4436 (1:4436) + call CreateHandCardList + call DrawCardListScreenLayout + ldtx hl, PleaseSelectHandText + call SetCardListInfoBoxText + ld a, $1 + ld [wcbde], a +.handle_input + call Func_55f0 + push af + ld a, [wcbdf] + or a + call nz, SortHandCardsByID + pop af + jp c, DuelMainInterface + ldh a, [hTempCardIndex_ff98] + call LoadCardDataToBuffer1_FromDeckIndex + ld a, [wLoadedCard1Type] + ld c, a + bit TYPE_TRAINER_F, c + jr nz, .trainer_card + bit TYPE_ENERGY_F, c + jr nz, UseEnergyCard + call UsePokemonCard + jr c, ReloadCardListScreen ; jump if card not played + jp DuelMainInterface +.trainer_card + call UseTrainerCard + jr c, ReloadCardListScreen ; jump if card not played + jp DuelMainInterface + +; use the energy card with deck index at hTempCardIndex_ff98 ; c contains the type of energy card being played -PlayerUseEnergyCard: ; 4477 (1:4477) +UseEnergyCard: ; 4477 (1:4477) ld a, c cp TYPE_ENERGY_WATER jr nz, .not_water_energy @@ -586,9 +642,9 @@ PlayerUseEnergyCard: ; 4477 (1:4477) ld a, [wAlreadyPlayedEnergy] or a jr nz, .already_played_energy - call $5fdd - call $600c ; choose card to play energy card on - jp c, DuelMainScene ; exit if no card was chosen + call HasAlivePokemonInPlayArea + call OpenPlayAreaScreenForSelection ; choose card to play energy card on + jp c, DuelMainInterface ; exit if no card was chosen .play_energy_set_played ld a, $1 ld [wAlreadyPlayedEnergy], a @@ -597,58 +653,192 @@ PlayerUseEnergyCard: ; 4477 (1:4477) ldh [hTempPlayAreaLocationOffset_ffa1], a ld e, a ldh a, [hTempCardIndex_ff98] - ldh [hffa0], a + ldh [hTemp_ffa0], a call PutHandCardInPlayArea call $61b8 ld a, $3 call SetDuelAIAction call $68e4 - jp DuelMainScene + jp DuelMainInterface .rain_dance_active - call $5fdd - call $600c ; choose card to play energy card on - jp c, DuelMainScene ; exit if no card was chosen + call HasAlivePokemonInPlayArea + call OpenPlayAreaScreenForSelection ; choose card to play energy card on + jp c, DuelMainInterface ; exit if no card was chosen call CheckRainDanceScenario jr c, .play_energy ld a, [wAlreadyPlayedEnergy] or a jr z, .play_energy_set_played - ldtx hl, OnlyOneEnergyCardText + ldtx hl, MayOnlyAttachOneEnergyCardText call DrawWideTextBox_WaitForInput - jp Func_4436 + jp OpenPlayerHandScreen .already_played_energy - ldtx hl, OnlyOneEnergyCardText + ldtx hl, MayOnlyAttachOneEnergyCardText call DrawWideTextBox_WaitForInput +; fallthrough + +; reload the card list screen after the card trying to play couldn't be played +ReloadCardListScreen: ; 44d2 (1:44d2) call CreateHandCardList - call $55be - jp $4447 + ; skip doing the things that have already been done when initially opened + call DrawCardListScreenLayout.draw + jp OpenPlayerHandScreen.handle_input ; 0x44db - INCROM $44db, $4585 +; use a basic Pokemon card on the arena or bench, or place an stage 1 or 2 +; Pokemon card over a Pokemon card already in play to evolve it. +; the card to use is loaded in wLoadedCard1 and its deck index is at hTempCardIndex_ff98. +; return nc if the card was played, carry if it wasn't. +UsePokemonCard: ; 44db (1:44db) + ld a, [wLoadedCard1Stage] + or a ; BASIC + jr nz, .try_evolve ; jump if the card being played is a Stage 1 or 2 Pokemon + ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA + call GetTurnDuelistVariable + cp MAX_PLAY_AREA_POKEMON + jr nc, .no_space + ldh a, [hTempCardIndex_ff98] + ldh [hTemp_ffa0], a + call PutHandPokemonCardInPlayArea + ldh [hTempPlayAreaLocationOffset_ff9d], a + add DUELVARS_ARENA_CARD_STAGE + call GetTurnDuelistVariable + ld [hl], BASIC + ld a, $01 + call SetDuelAIAction + ldh a, [hTempCardIndex_ff98] + call LoadCardDataToBuffer1_FromDeckIndex + ld a, 20 + call CopyCardNameAndLevel + ld [hl], $00 + ld hl, $0000 + call LoadTxRam2 + ldtx hl, PlacedOnTheBenchText + call DrawWideTextBox_WaitForInput + call Func_161e + or a + ret +.no_space + ldtx hl, NoSpaceOnTheBenchText + call DrawWideTextBox_WaitForInput + scf + ret +.try_evolve + ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA + call GetTurnDuelistVariable + ld c, a + ldh a, [hTempCardIndex_ff98] + ld d, a + ld e, PLAY_AREA_ARENA + push de + push bc +.next_play_area_pkmn + push de + call CheckIfCanEvolveInto + pop de + jr nc, .can_evolve + inc e + dec c + jr nz, .next_play_area_pkmn + pop bc + pop de +.find_cant_evolve_reason_loop + push de + call CheckIfCanEvolveInto + pop de + ldtx hl, CantEvolvePokemonInSameTurnItsPlacedText + jr nz, .cant_same_turn + inc e + dec c + jr nz, .find_cant_evolve_reason_loop + ldtx hl, NoPokemonCapableOfEvolvingText +.cant_same_turn + ; don't bother opening the selection screen if there are no pokemon capable of evolving + call DrawWideTextBox_WaitForInput + scf + ret +.can_evolve + pop bc + pop de + call IsPrehistoricPowerActive + jr c, .prehistoric_power + call HasAlivePokemonInPlayArea +.try_evolve_loop + call OpenPlayAreaScreenForSelection + jr c, .done + ldh a, [hTempCardIndex_ff98] + ldh [hTemp_ffa0], a + ldh a, [hTempPlayAreaLocationOffset_ff9d] + ldh [hTempPlayAreaLocationOffset_ffa1], a + call EvolvePokemonCard + jr c, .try_evolve_loop ; jump if evolution wasn't successsful somehow + ld a, $02 + call SetDuelAIAction + call $61b8 + call $68fa + call Func_161e +.done + or a + ret +.prehistoric_power + call DrawWideTextBox_WaitForInput + scf + ret +; 0x4585 +; triggered by selecting the "Check" item in the duel menu DuelMenu_Check: ; 4585 (1:4585) call Func_3b31 call Func_3096 - jp DuelMainScene + jp DuelMainInterface - INCROM $458e, $46fc +; triggered by pressing SELECT in the duel menu +DuelMenuShortcut_BothActivePokemon:: ; 458e (1:458e) + call Func_3b31 + call Func_4597 + jp DuelMainInterface +; 0x4597 +Func_4597: ; 4597 (1:4597) + call Func_30a6 + ret c + call Func_45a9 + ret c + call SwapTurn + call Func_45a9 + call SwapTurn + ret +; 0x45a9 + +Func_45a9: ; 45a9 (1:45a9) + call HasAlivePokemonInPlayArea + ld a, $02 + ld [wcbd4], a + call OpenPlayAreaScreenForViewing + ldh a, [hButtonsPressed] + and B_BUTTON + ret z + scf + ret +; 0x45bb + + INCROM $45bb, $46fc + +; triggered by selecting the "Attack" item in the duel menu DuelMenu_Attack: ; 46fc (1:46fc) call HandleCantAttackSubstatus jr c, .alert_cant_attack_and_cancel_menu call CheckIfActiveCardParalyzedOrAsleep - jr nc, .clear_sub_menu_selection - + jr nc, .can_attack .alert_cant_attack_and_cancel_menu call DrawWideTextBox_WaitForInput jp PrintDuelMenu -.clear_sub_menu_selection +.can_attack xor a ld [wSelectedDuelSubMenuItem], a - .try_open_attack_menu call LoadPokemonMovesToDuelTempList or a @@ -660,8 +850,8 @@ DuelMenu_Attack: ; 46fc (1:46fc) .open_attack_menu push af ld a, [wSelectedDuelSubMenuItem] - ld hl, AttackMenuCursorData - call InitializeCursorParameters + ld hl, AttackMenuParameters + call InitializeMenuParameters pop af ld [wNumMenuItems], a ldh a, [hWhoseTurn] @@ -677,7 +867,7 @@ DuelMenu_Attack: ; 46fc (1:46fc) jr nz, .display_selected_move_info call HandleMenuInput jr nc, .wait_for_input - cp $ff ; was B pressed? + cp -1 ; was B pressed? jp z, PrintDuelMenu ld [wSelectedDuelSubMenuItem], a call CheckIfEnoughEnergies @@ -693,44 +883,44 @@ DuelMenu_Attack: ; 46fc (1:46fc) ld d, $00 ld hl, wDuelTempList add hl, de - ld d, [hl] ; card number within the deck (0 to 59) + ld d, [hl] ; card index within the deck (0 to 59) inc hl ld e, [hl] ; attack index (0 or 1) call CopyMoveDataAndDamage_FromDeckIndex call HandleAmnesiaSubstatus jr c, .cannot_use_due_to_amnesia ld a, $07 - call $51e7 + call DoPracticeDuelAction jp c, Func_4268 call Func_1730 - jp c, DuelMainScene + jp c, DuelMainInterface ret -.cannot_use_due_to_amnesia ; 477d (1:477d) +.cannot_use_due_to_amnesia call DrawWideTextBox_WaitForInput jr .try_open_attack_menu -.display_selected_move_info ; 4782 (1:4782) +.display_selected_move_info call Func_478b - call $4f9d + call DrawDuelMainScene jp .try_open_attack_menu Func_478b: ; 478b (1:478b) - ld a, $01 + ld a, CARDPAGE_POKEMON_OVERVIEW ld [wCardPageNumber], a xor a ld [wcbc9], a call EmptyScreen call Func_3b31 - ld de, $8a00 - call $59ca - call $5a0e - call $59f5 - call $5a34 - ld de, $3830 - call $5999 - ld de, $0604 - call $5a56 + ld de, v0Tiles1 + $20 tiles + call LoadLoaded1CardGfx + call SetOBP1OrSGB3ToCardPalette + call SetBGP6OrSGB3ToCardPalette + call FlushAllPalettesOrSendPal23Packet + lb de, $38, $30 ; X Position and Y Position of top-left corner + call PlaceCardImageOAM + lb de, 6, 4 + call ApplyBGP6OrSGB3ToCardImage ldh a, [hCurrentMenuItem] ld [wSelectedDuelSubMenuItem], a add a @@ -764,13 +954,13 @@ Func_478b: ; 478b (1:478b) jr z, .asm_47d4 ret -AttackMenuCursorData: - db 1, 13 ; x, y +AttackMenuParameters: + db 1, 13 ; cursor x, cursor y db 2 ; y displacement between items db 2 ; number of items db $0f ; cursor tile number db $00 ; tile behind cursor - dw $0000 ; unknown function pointer if non-0 + dw $0000 ; function pointer if non-0 Func_47ec: ; $47ec (1:47ec) ld a, [wcc04] @@ -866,6 +1056,8 @@ LoadPokemonMovesToDuelTempList: ; 4823 (1:4823) ld a, c ret +; given de = wLoadedCard*Move*Name, return carry if the move is a +; Pkmn Power or the moveslot is empty. CheckIfMoveExists: ; 4872 (1:4872) push hl push de @@ -883,13 +1075,11 @@ CheckIfMoveExists: ; 4872 (1:4872) cp POKEMON_POWER jr z, .return_no_move_found or a - .return pop bc pop de pop hl ret - .return_no_move_found scf jr .return @@ -909,7 +1099,7 @@ CheckIfEnoughEnergies: ; 488f (1:488f) ld d, $0 ld hl, wDuelTempList add hl, de - ld d, [hl] ; card number within the deck (0 to 59) + ld d, [hl] ; card index within the deck (0 to 59) inc hl ld e, [hl] ; attack index (0 or 1) call _CheckIfEnoughEnergies @@ -920,7 +1110,7 @@ CheckIfEnoughEnergies: ; 488f (1:488f) ; check if a pokemon card has enough energy attached to it in order to use a move ; input: -; d = card number within the deck (0 to 59) +; d = card index within the deck (0 to 59) ; e = attack index (0 or 1) ; wAttachedEnergies and wTotalAttachedEnergies ; returns: carry if not enough energy, nc if enough energy. @@ -941,12 +1131,12 @@ _CheckIfEnoughEnergies: ; 48ac (1:48ac) add hl, de ld a, [hli] or [hl] - jr z, .not_usable + jr z, .not_usable_or_not_enough_energies ld hl, CARD_DATA_MOVE1_CATEGORY - CARD_DATA_MOVE1_ENERGY add hl, de ld a, [hl] cp POKEMON_POWER - jr z, .not_usable + jr z, .not_usable_or_not_enough_energies xor a ld [wAttachedEnergiesAccum], a ld hl, wAttachedEnergies @@ -955,11 +1145,11 @@ _CheckIfEnoughEnergies: ; 48ac (1:48ac) .next_energy_type_pair ld a, [de] swap a - call _CheckIfEnoughEnergiesOfType - jr c, .not_enough_energies + call CheckIfEnoughEnergiesOfType + jr c, .not_usable_or_not_enough_energies ld a, [de] - call _CheckIfEnoughEnergiesOfType - jr c, .not_enough_energies + call CheckIfEnoughEnergiesOfType + jr c, .not_usable_or_not_enough_energies inc de dec c jr nz, .next_energy_type_pair @@ -972,14 +1162,13 @@ _CheckIfEnoughEnergies: ; 48ac (1:48ac) ld a, [wTotalAttachedEnergies] sub c cp b - jr c, .not_enough_energies + jr c, .not_usable_or_not_enough_energies or a .done pop de ret -.not_usable -.not_enough_energies +.not_usable_or_not_enough_energies scf jr .done ; 0x4900 @@ -987,7 +1176,7 @@ _CheckIfEnoughEnergies: ; 48ac (1:48ac) ; given the amount of energies of a specific type required for an attack in the ; lower nybble of register a, test if the pokemon card has enough energies of that type ; to use the move. Return carry if not enough energy, nc if enough energy. -_CheckIfEnoughEnergiesOfType: ; 4900 (1:4900) +CheckIfEnoughEnergiesOfType: ; 4900 (1:4900) and $f push af push hl @@ -1011,6 +1200,8 @@ _CheckIfEnoughEnergiesOfType: ; 4900 (1:4900) ret ; 0x4918 +; return carry and the corresponding text in hl if the turn holder's +; arena Pokemon card is paralyzed or asleep. CheckIfActiveCardParalyzedOrAsleep: ; 4918 (1:4918) ld a, DUELVARS_ARENA_CARD_STATUS call GetTurnDuelistVariable @@ -1021,19 +1212,265 @@ CheckIfActiveCardParalyzedOrAsleep: ; 4918 (1:4918) jr z, .asleep or a ret - .paralyzed ldtx hl, UnableDueToParalysisText jr .return_with_status_condition - .asleep ldtx hl, UnableDueToSleepText - .return_with_status_condition scf ret - INCROM $4933, $4b60 +; this handles drawing a card at the beginning of the turn among other things +Func_4933: ; 4933 (1:4933) + ld a, $01 + push hl + push de + push bc + ld [wcbe8], a + xor a + ld [wcbe9], a + ld a, DUELVARS_NUMBER_OF_CARDS_NOT_IN_DECK + call GetTurnDuelistVariable + ld a, DECK_SIZE + sub [hl] + ld hl, wcbe8 + cp [hl] + jr nc, .has_cards_left + ld [hl], a +.has_cards_left + ld a, [wcac2] + cp $07 + jr z, .asm_495f + cp $09 + jr z, .asm_495f + call EmptyScreen + call Func_4a97 +.asm_495f + ld a, $07 + ld [wcac2], a + call Func_49ca + ld a, [wcbe8] + or a + jr nz, .can_draw + ldtx hl, NoCardsInDeckCannotDraw + call DrawWideTextBox_WaitForInput + jr .done +.can_draw + ld l, a + ld h, 0 + call LoadTxRam3 + ldtx hl, DrawCardsFromTheDeck + call DrawWideTextBox_PrintText + call EnableLCD +.asm_4984 + call Func_49a8 + ld hl, wcbe9 + inc [hl] + call Func_49ed + ld a, [wcbe9] + ld hl, wcbe8 + cp [hl] + jr c, .asm_4984 + ld c, 30 +.asm_4999 + call DoFrame + call Func_67b2 + jr c, .done + dec c + jr nz, .asm_4999 +.done + pop bc + pop de + pop hl + ret +; 0x49a8 + +Func_49a8: ; 49a8 (1:49a8) + call Func_3b21 + ld e, $56 + ldh a, [hWhoseTurn] + cp PLAYER_TURN + jr z, .asm_49b5 + ld e, $57 +.asm_49b5 + ld a, e + call Func_3b6a +.asm_49b9 + call DoFrame + call Func_67b2 + jr c, .asm_49c6 + call Func_3b52 + jr c, .asm_49b9 +.asm_49c6 + call Func_3b31 + ret +; 0x49ca + +Func_49ca: ; 49ca (1:49ca) + call LoadDuelDrawCardsScreenTiles + ld hl, $4a35 + call WriteDataBlocksToBGMap0 + ld a, [wConsole] + cp CONSOLE_CGB + jr nz, .not_cgb + call BankswitchVRAM1 + ld hl, $4a6e + call WriteDataBlocksToBGMap0 + call BankswitchVRAM0 +.not_cgb + call Func_49ed.player_turn + call Func_49ed.opponent_turn + ret +; 0x49ed + +Func_49ed: ; 49ed (1:49ed) + ldh a, [hWhoseTurn] + cp PLAYER_TURN + jr nz, .opponent_turn +.player_turn + ld a, [wPlayerNumberOfCardsInHand] + ld hl, wcbe9 + add [hl] + ld d, a + ld a, DECK_SIZE + ld hl, wPlayerNumberOfCardsNotInDeck + sub [hl] + ld hl, wcbe9 + sub [hl] + ld e, a + ld a, d + lb bc, 16, 10 + call $65b7 + ld a, e + lb bc, 10, 10 + jp $65b7 +.opponent_turn + ld a, [wOpponentNumberOfCardsInHand] + ld hl, wcbe9 + add [hl] + ld d, a + ld a, DECK_SIZE + ld hl, wOpponentNumberOfCardsNotInDeck + sub [hl] + ld hl, wcbe9 + sub [hl] + ld e, a + ld a, d + lb bc, 5, 3 + call $65b7 + ld a, e + lb bc, 11, 3 + jp $65b7 +; 0x4a35 + + INCROM $4a35, $4a97 + +Func_4a97: ; 4a97 (1:4a97) + call LoadDuelHUDTiles + ld de, wDefaultText + push de + call CopyPlayerName + lb de, 0, 11 + call Func_22ae + pop hl + call Func_21c5 + ld bc, $5 + call Func_3e10 + ld de, wDefaultText + push de + call CopyOpponentName + pop hl + call Func_23c1 + push hl + add SCREEN_WIDTH + ld d, a + ld e, 0 + call Func_22ae + pop hl + call Func_21c5 + ld a, [wOpponentPortrait] + ld bc, $d01 + call Func_3e2a + call DrawDuelHorizontalSeparator + ret +; 0x4ad6 + +Func_4ad6: ; 4ad6 (1:4ad6) + lb de, 8, 8 + call Func_4ae9 + call SwapTurn + lb de, 1, 1 + call Func_4ae9 + call SwapTurn + ret +; 0x4ae9 + +Func_4ae9: ; 4ae9 (1:4ae9) + call $5f4a + ld hl, $7b + call Func_2c1b + call $5f50 + ld c, e + ld a, d + add $07 + ld b, a + inc a + inc a + ld d, a + call CountPrizes + call .asm_4b22 + inc e + inc c + ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA + call GetTurnDuelistVariable + ld hl, $7d + or a + jr nz, .pkmn_in_play_area + ld hl, $7c +.pkmn_in_play_area + dec d + call Func_2c1b + inc e + inc d + inc c + ld a, DUELVARS_NUMBER_OF_CARDS_NOT_IN_DECK + call GetTurnDuelistVariable + ld a, DECK_SIZE + sub [hl] +.asm_4b22 + call $65b7 + ld hl, $7e + call Func_2c1b + ret +; 0x4b2c + +; display the animation of the player drawing the card at hTempCardIndex_ff98 +DisplayPlayerDrawCardScreen: ; 4b2c (1:4b2c) + ldtx hl, YouDrewText + ldh a, [hTempCardIndex_ff98] + call LoadCardDataToBuffer1_FromDeckIndex + call _DisplayPlayerDrawCardScreen + ret +; 0x4b38 + +Func_4b38: ; 4b38 (1:4b38) + ld a, [wDuelTempList] + cp $ff + ret z + call DrawCardListScreenLayout + call CountCardsInDuelTempList ; list length + ld hl, CardListParameters ; other list params + lb de, 0, 0 ; initial page scroll offset, initial item (in the visible page) + call PrintCardListItems + ldtx hl, TheCardYouReceivedText + lb de, 1, 1 + call Func_22ae + call PrintTextNoDelay + ldtx hl, YouReceivedTheseCardsText + call DrawWideTextBox_WaitForInput + ret +; 0x4b60 Func_4b60: ; 4b60 (1:4b60) call $7107 @@ -1042,12 +1479,12 @@ Func_4b60: ; 4b60 (1:4b60) call SwapTurn call $4e84 call $4d97 - ldh [hffa0], a + ldh [hTemp_ffa0], a call SwapTurn call $4d97 call SwapTurn ld c, a - ldh a, [hffa0] + ldh a, [hTemp_ffa0] ld b, a and c jr nz, .asm_4bd0 @@ -1102,7 +1539,7 @@ Func_4b60: ; 4b60 (1:4b60) ldtx hl, PlacingThePrizesText call DrawWideTextBox_WaitForInput call Func_0f58 - ld a, [wcc08] + ld a, [wDuelInitialPrizes] ld l, a ld h, 0 call LoadTxRam3 @@ -1161,7 +1598,6 @@ Func_4b60: ; 4b60 (1:4b60) ret ; 0x4c77 - INCROM $4c77, $4cd5 ; Select Basic Pokemon From Hand @@ -1209,7 +1645,7 @@ Func_4cd5: ; 4cd5 (1:4cd5) ldtx hl, ChooseBasicPkmnToPlaceInArenaText call DrawWideTextBox_WaitForInput ld a, $1 - call $51e7 + call DoPracticeDuelAction .asm_4d28 xor a ld hl, $006e @@ -1218,7 +1654,7 @@ Func_4cd5: ; 4cd5 (1:4cd5) ldh a, [hTempCardIndex_ff98] call LoadCardDataToBuffer1_FromDeckIndex ld a, $2 - call $51e7 + call DoPracticeDuelAction jr c, .asm_4d28 ldh a, [hTempCardIndex_ff98] call PutHandPokemonCardInPlayArea @@ -1234,13 +1670,13 @@ Func_4cd5: ; 4cd5 (1:4cd5) ldtx hl, ChooseUpTo5BasicPkmnToPlaceOnBenchText call Func_2c73 ld a, $3 - call $51e7 + call DoPracticeDuelAction .asm_4d5f ld a, $1 ld hl, $006f call $5502 jr c, .asm_4d8e - ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY + ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA call GetTurnDuelistVariable cp MAX_PLAY_AREA_POKEMON jr nc, .asm_4d86 @@ -1250,7 +1686,7 @@ Func_4cd5: ; 4cd5 (1:4cd5) ld hl, $0061 call $4b31 ld a, $5 - call $51e7 + call DoPracticeDuelAction jr .asm_4d5f .asm_4d86 @@ -1260,17 +1696,1615 @@ Func_4cd5: ; 4cd5 (1:4cd5) .asm_4d8e ld a, $4 - call $51e7 + call DoPracticeDuelAction jr c, .asm_4d5f or a ret ; 0x4d97 + INCROM $4d97, $4e40 - INCROM $4d97, $5aeb +Func_4e40: ; 4e40 (1:4e40) + call CreateHandCardList + call EmptyScreen + call LoadDuelCardSymbolTiles + lb de, 0, 0 + lb bc, 20, 13 + call DrawRegularTextBox + call CountCardsInDuelTempList ; list length + ld hl, CardListParameters ; other list params + lb de, 0, 0 ; initial page scroll offset, initial item (in the visible page) + call PrintCardListItems + ldtx hl, DuelistHandText + lb de, 1, 1 + call Func_22ae + call PrintTextNoDelay + call EnableLCD + ret +; 0x4e6e + + INCROM $4e6e, $4f9d -Func_5aeb: ; 5aeb (1:5aeb) - INCROM $5aeb, $6785 +; draw the main scene during a duel, except the contents of the bottom text box, +; which depend on the type of duelist holding the turn. +; includes the background, both arena Pokemon, and both HUDs. +DrawDuelMainScene: ; 4f9d (1:4f9d) + ld a, DUELVARS_DUELIST_TYPE + call GetTurnDuelistVariable + cp DUELIST_TYPE_PLAYER + jr z, .draw + ldh a, [hWhoseTurn] + push af + ld a, PLAYER_TURN + ldh [hWhoseTurn], a + call .draw + pop af + ldh [hWhoseTurn], a + ret +.draw +; first, load the graphics and draw the background scene + ld a, [wcac2] + cp $01 + ret z + call ZeroObjectPositionsAndToggleOAMCopy + call EmptyScreen + call LoadDuelHUDTiles + ld a, $01 + ld [wcac2], a + ld a, DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + ld de, v0Tiles1 + $50 tiles + call LoadPlayAreaCardGfx + call SetBGP7OrSGB2ToCardPalette + call SwapTurn + ld a, DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + ld de, v0Tiles1 + $20 tiles + call LoadPlayAreaCardGfx + call SetBGP6OrSGB3ToCardPalette + call FlushAllPalettesOrSendPal23Packet + call SwapTurn +; next, draw the Pokemon in the arena +;.place_player_arena_pkmn + ld a, DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + cp -1 + jr z, .place_opponent_arena_pkmn + ld a, $d0 ; v0Tiles1 + $50 tiles + lb hl, 6, 1 + lb de, 0, 5 + lb bc, 8, 6 + call FillRectangle + call ApplyBGP7OrSGB2ToCardImage +.place_opponent_arena_pkmn + call SwapTurn + ld a, DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + cp -1 + jr z, .place_other_elements + ld a, $a0 ; v0Tiles1 + $20 tiles + lb hl, 6, 1 + lb de, 12, 1 + lb bc, 8, 6 + call FillRectangle + call ApplyBGP6OrSGB3ToCardImage +.place_other_elements + call SwapTurn + ld hl, DuelEAndHPTileData + call WriteDataBlocksToBGMap0 + call DrawDuelHorizontalSeparator + call DrawDuelHUDs + call DrawWideTextBox + call EnableLCD + ret +; 0x503a + +; draws the main elements of the main duel interface, including HUDs, HPs, card names +; and color symbols, attached cards, and other information, of both duelists. +DrawDuelHUDs: ; 503a (1:503a) + ld a, DUELVARS_DUELIST_TYPE + call GetTurnDuelistVariable + cp DUELIST_TYPE_PLAYER + jr z, .draw_hud + ldh a, [hWhoseTurn] + push af + ld a, PLAYER_TURN + ldh [hWhoseTurn], a + call .draw_hud + pop af + ldh [hWhoseTurn], a + ret +.draw_hud + lb de, 1, 11 ; coordinates for player's arena card name and info icons + lb bc, 11, 8 ; coordinates for player's attached energies and HP bar + call DrawDuelHUD + lb bc, 8, 5 + ld a, DUELVARS_ARENA_CARD_STATUS + call GetTurnDuelistVariable + call CheckPrintCnfSlpPrz + inc c + call CheckPrintPoisoned + inc c + call CheckPrintDoublePoisoned + call SwapTurn + lb de, 7, 0 ; coordinates for opponent's arena card name and info icons + lb bc, 3, 1 ; coordinates for opponent's attached energies and HP bar + call GetNonTurnDuelistVariable + call DrawDuelHUD + lb bc, 11, 6 + ld a, DUELVARS_ARENA_CARD_STATUS + call GetTurnDuelistVariable + call CheckPrintCnfSlpPrz + dec c + call CheckPrintPoisoned + dec c + call CheckPrintDoublePoisoned + call SwapTurn + ret +; 0x5093 + +DrawDuelHUD: ; 5093 (1:5093) + ld hl, wcbc9 + ld [hl], b + inc hl + ld [hl], c ; save coordinates for the HP bar + push de ; save coordinates for the arena card name + ld d, 1 ; opponent's info icons start in the second tile to the right + ld a, e + or a + jr z, .go + ld d, 15 ; player's info icons start in the 15th tile to the right +.go + push de + pop bc + + ; print the Pkmn icon along with the no. of play area Pokemon + ld a, LOW("<PKMN_ICON>") + call WriteByteToBGMap0 + inc b + ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA + call GetTurnDuelistVariable + add LOW("<0>") - 1 + call WriteByteToBGMap0 + inc b + + ; print the Prize icon along with the no. of prizes yet to draw + ld a, LOW("<PRIZE_ICON>") + call WriteByteToBGMap0 + inc b + call CountPrizes + add LOW("<0>") + call WriteByteToBGMap0 + + ; print the arena Pokemon card name and level text + pop de + ld a, DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + cp -1 + ret z + call LoadCardDataToBuffer1_FromDeckIndex + push de + ld a, 32 + call CopyCardNameAndLevel + ld [hl], TX_END + + ; print the arena Pokemon card color symbol just before the name + pop de + ld a, e + or a + jr nz, .print_color_icon + ld hl, wDefaultText + call Func_23c1 + add SCREEN_WIDTH + ld d, a +.print_color_icon + call Func_22ae + ld hl, wDefaultText + call Func_21c5 + push de + pop bc + call GetArenaCardColor + inc a ; TX_SYMBOL color tiles start at 1 + dec b ; place the color symbol one tile to the left of the start of the card's name + call JPWriteByteToBGMap0 + + ; print attached energies + ld hl, wcbc9 + ld b, [hl] + inc hl + ld c, [hl] + lb de, 9, PLAY_AREA_ARENA + call PrintPlayAreaCardAttachedEnergies + + ; print HP bar + ld a, DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + call LoadCardDataToBuffer1_FromDeckIndex + ld a, [wLoadedCard1HP] + ld d, a ; max HP + ld a, DUELVARS_ARENA_CARD_HP + call GetTurnDuelistVariable + ld e, a ; cur HP + call DrawHPBar + ld hl, wcbc9 + ld b, [hl] + inc hl + ld c, [hl] + inc c + call BCCoordToBGMap0Address + push de + ld hl, wDefaultText + ld b, HP_BAR_LENGTH / 2 ; first row of the HP bar + call SafeCopyDataHLtoDE + pop de + ld hl, BG_MAP_WIDTH + add hl, de + ld e, l + ld d, h + ld hl, wDefaultText + HP_BAR_LENGTH / 2 + ld b, HP_BAR_LENGTH / 2 ; second row of the HP bar + call SafeCopyDataHLtoDE + + ; print number of attached Pluspower and Defender with respective icon, if any + ld hl, wcbc9 + ld a, [hli] + add 6 + ld b, a + ld c, [hl] + inc c + ld a, DUELVARS_ARENA_CARD_ATTACHED_PLUSPOWER + call GetTurnDuelistVariable + or a + jr z, .check_defender + ld a, LOW("<PLUSPOWER>") + call WriteByteToBGMap0 + inc b + ld a, [hl] ; number of attached Pluspower + add LOW("<0>") + call WriteByteToBGMap0 + dec b +.check_defender + ld a, DUELVARS_ARENA_CARD_ATTACHED_DEFENDER + call GetTurnDuelistVariable + or a + jr z, .done + inc c + ld a, LOW("<DEFENDER>") + call WriteByteToBGMap0 + inc b + ld a, [hl] ; number of attached Defender + add LOW("<0>") + call WriteByteToBGMap0 +.done + ret +; 0x516f + +; draws an horizonal line that separates the arena side of each duelist +; also colorizes the line on CGB +DrawDuelHorizontalSeparator: ; 516f (1:516f) + ld hl, DuelHorizontalSeparatorTileData + call WriteDataBlocksToBGMap0 + ld a, [wConsole] + cp CONSOLE_CGB + ret nz + call BankswitchVRAM1 + ld hl, DuelHorizontalSeparatorCGBPalData + call WriteDataBlocksToBGMap0 + call BankswitchVRAM0 + ret +; 0x5188 + +DuelEAndHPTileData: ; 5188 (1:5188) +; x, y, tiles[], 0 + db 1, 1, LOW("<E>"), 0 + db 1, 2, LOW("<HP>"), 0 + db 9, 8, LOW("<E>"), 0 + db 9, 9, LOW("<HP>"), 0 + db $ff +; 0x5199 + +DuelHorizontalSeparatorTileData: ; 5199 (1:5199) +; x, y, tiles[], 0 + db 0, 4, $37, $37, $37, $37, $37, $37, $37, $37, $37, $31, $32, 0 + db 9, 5, $33, $34, 0 + db 9, 6, $33, $34, 0 + db 9, 7, $35, $36, $37, $37, $37, $37, $37, $37, $37, $37, $37, 0 + db $ff +; 0x51c0 + +DuelHorizontalSeparatorCGBPalData: ; 51c0 (1:51c0) +; x, y, tiles[], 0 + db 0, 4, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, 0 + db 9, 5, $02, $02, 0 + db 9, 6, $02, $02, 0 + db 9, 7, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, $02, 0 + db $ff +; 0x51e7 + +; if this is a practice duel, execute the practice duel action at wPracticeDuelAction +DoPracticeDuelAction: ; 51e7 (1:51e7) + ld [wPracticeDuelAction], a + ld a, [wIsPracticeDuel] + or a + ret z + ld a, [wPracticeDuelAction] + ld hl, PracticeDuelActionTable + jp JumpToFunctionInTable +; 0x51f8 + +PracticeDuelActionTable:: ; 51f8 (1:51f8) + dw $0000 + dw Func_520e + dw Func_521a + dw Func_522a + dw Func_5236 + dw Func_5245 + dw Func_5256 + dw Func_5278 + dw Func_5284 + dw Func_529b + dw Func_52b0 +; 0x520e + +Func_520e: ; 520e (1:520e) + call Func_4e40 + call EnableLCD + ldtx hl, Text01a4 + jp Func_52bc +; 0x521a + +Func_521a: ; 521a (1:521a) + ld a, [wLoadedCard1ID] + cp GOLDEEN + ret z + ldtx hl, Text01a5 + ldtx de, DrMasonText + scf + jp Func_52bc +; 0x522a + +Func_522a: ; 522a (1:522a) + call Func_4e40 + call EnableLCD + ldtx hl, Text01a6 + jp Func_52bc +; 0x5236 + +Func_5236: ; 5236 (1:5236) + ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA + call GetTurnDuelistVariable + cp 2 + ret z + ldtx hl, Text01a7 + scf + jp Func_52bc +; 0x5245 + +Func_5245: ; 5245 (1:5245) + call Func_4e40 + call EnableLCD + ld a, $ff + ld [wcc00], a + ldtx hl, Text01a8 + jp Func_52bc +; 0x5256 + +Func_5256: ; 5256 (1:5256) + call $5351 + call EnableLCD + ld a, [wDuelTurns] + ld hl, wcc00 + cp [hl] + ld [hl], a + ld a, $00 + jp nz, $5382 + ldtx de, DrMasonText + ldtx hl, Text01d9 + call Func_2c62.asm_2c67 + call YesOrNoMenu + jp $5382 +; 0x5278 + +Func_5278: ; 5278 (1:5278) + ld a, [wDuelTurns] + srl a + ld hl, $541f + call JumpToFunctionInTable + ret nc +; fallthrough + +Func_5284: ; 5284 (1:5284) + ldtx hl, Text01da + call Func_52bc + ld a, $02 + call BankswitchSRAM + ld de, $bc00 + call $66ff + xor a + call BankswitchSRAM + scf + ret +; 0x529b + +Func_529b: ; 529b (1:529b) + ld a, [wDuelTurns] + cp 7 + jr z, .asm_52a4 + or a + ret +.asm_52a4 + call $5351 + call EnableLCD + ld hl, $5346 + jp $5396 +; 0x52b0 + +Func_52b0: ; 52b0 (1:52b0) + ldh a, [hTempPlayAreaLocationOffset_ff9d] + cp PLAY_AREA_BENCH_1 + ret z + call $5fd9 + ldtx hl, Text01d7 + scf +; fallthrough + +Func_52bc: ; 52bc (1:52bc) + push af + ldtx de, DrMasonText + call Func_2c62 + pop af + ret +; 0x52c5 + + INCROM $52c5, $5550 + +; draw the turn holder's discard pile screen +OpenDiscardPileScreen: ; 5550 (1:5550) + call CreateDiscardPileCardList + jr c, .discard_pile_empty + call DrawCardListScreenLayout + call SetDiscardPileScreenTexts + ld a, START + A_BUTTON + ld [wcbd6], a + call Func_55f0 + or a + ret +.discard_pile_empty + ldtx hl, TheDiscardPileHasNoCardsText + call DrawWideTextBox_WaitForInput + scf + ret +; 0x556d + +; set wCardListHeaderText and SetCardListInfoBoxText to the text +; that correspond to the Discard Pile screen +SetDiscardPileScreenTexts: ; 556d (1:556d) + ldtx de, YourDiscardPileText + ldh a, [hWhoseTurn] + cp PLAYER_TURN + jr z, .got_header_text + ldtx de, OpponentsDiscardPileText +.got_header_text + ldtx hl, ChooseTheCardYouWishToExamineText + call SetCardListHeaderText + ret +; 0x5580 + +SetCardListHeaderText: ; 5580 (1:5580) + ld a, e + ld [wCardListHeaderText], a + ld a, d + ld [wCardListHeaderText + 1], a +; fallthrough + +SetCardListInfoBoxText: ; 5588 (1:5588) + ld a, l + ld [wCardListInfoBoxText], a + ld a, h + ld [wCardListInfoBoxText + 1], a + ret +; 0x5591 + +Func_5591: ; 5591 (1:5591) + call DrawCardListScreenLayout + ld a, $02 + ld [wcbde], a + ret +; 0x559a + +; draw the layout of the screen that displays the player's Hand card list or a +; Discard Pile card list, including a bottom-right image of the current card. +; since this loads the text for the Hand card list screen, SetDiscardPileScreenTexts +; is called after this if the screen corresponds to a Discard Pile list. +DrawCardListScreenLayout: ; 559a (1:559a) + xor a + ld hl, wSelectedDuelSubMenuItem + ld [hli], a + ld [hl], a + ld [wcbdf], a + ld hl, wcbd8 + ld [hli], a + ld [hl], a + ld [wcbde], a + ld a, START + ld [wcbd6], a + ld hl, wCardListInfoBoxText + ld [hl], LOW(PleaseSelectHandText_) + inc hl + ld [hl], HIGH(PleaseSelectHandText_) + inc hl ; wCardListHeaderText + ld [hl], LOW(DuelistHandText_) + inc hl + ld [hl], HIGH(DuelistHandText_) +.draw + call ZeroObjectPositionsAndToggleOAMCopy + call EmptyScreen + call LoadDuelHUDTiles + call LoadDuelCardSymbolTiles + ; draw the surrounding box + lb de, 0, 0 + lb bc, 20, 13 + call DrawRegularTextBox + ; draw the image of the selected card + ld a, $a0 + lb hl, 6, 1 + lb de, 12, 12 + lb bc, 8, 6 + call FillRectangle + call ApplyBGP6OrSGB3ToCardImage + call Func_5744 + ld a, [wDuelTempList] + cp $ff + scf + ret z + or a + ret +; 0x55f0 + +Func_55f0: ; 55f0 (1:55f0) + call DrawNarrowTextBox + call Func_56a0 +.asm_55f6 + call CountCardsInDuelTempList ; list length + ld hl, wSelectedDuelSubMenuItem + ld e, [hl] ; initial item (in the visible page) + inc hl + ld d, [hl] ; initial page scroll offset + ld hl, CardListParameters ; other list params + call PrintCardListItems + call DrawSelectedCard + call EnableLCD +.asm_560b + call DoFrame + call Func_5690 + call HandleCardListInput + jr nc, .asm_560b + ld hl, wSelectedDuelSubMenuItem + ld [hl], e + inc hl + ld [hl], d + ldh a, [hButtonsPressed] + ld b, a + bit SELECT_F, b + jr nz, .asm_563b + bit B_BUTTON_F, b + jr nz, .asm_568c + ld a, [wcbd6] + and b + jr nz, .asm_5654 + ldh a, [hCurrentMenuItem] + call GetCardInDuelTempList_OnlyDeckIndex + call $56c2 + jr c, Func_55f0 + ldh a, [hTempCardIndex_ff98] + or a + ret +.asm_563b + ld a, [wcbdf] + or a + jr nz, .asm_560b + call SortCardsInDuelTempListByID + xor a + ld hl, wSelectedDuelSubMenuItem + ld [hli], a + ld [hl], a + ld a, $01 + ld [wcbdf], a + call EraseCursor + jr .asm_55f6 +.asm_5654 + ldh a, [hCurrentMenuItem] + call GetCardInDuelTempList + call LoadCardDataToBuffer1_FromDeckIndex + call $5762 + ldh a, [hButtonsPressed2] + bit D_UP_F, a + jr nz, .asm_566f + bit D_DOWN_F, a + jr nz, .asm_5677 + call DrawCardListScreenLayout.draw + jp Func_55f0 +.asm_566f + ldh a, [hCurrentMenuItem] + or a + jr z, .asm_5654 + dec a + jr .asm_5681 +.asm_5677 + call CountCardsInDuelTempList + ld b, a + ldh a, [hCurrentMenuItem] + inc a + cp b + jr nc, .asm_5654 +.asm_5681 + ldh [hCurrentMenuItem], a + ld hl, wSelectedDuelSubMenuItem + ld [hl], $00 + inc hl + ld [hl], a + jr .asm_5654 +.asm_568c + ldh a, [hCurrentMenuItem] + scf + ret +; 0x5690 + +Func_5690: ; 5690 (1:5690) + ldh a, [hButtonsPressed2] + and D_PAD + ret z + ld a, $01 + ldh [hffb0], a + call Func_56a0 + xor a + ldh [hffb0], a + ret +; 0x56a0 + +Func_56a0: ; 56a0 (1:56a0) + lb de, 1, 14 + call AdjustCoordinatesForWindow + call Func_22ae + ld hl, wCardListInfoBoxText + ld a, [hli] + ld h, [hl] + ld l, a + call PrintTextNoDelay + ld hl, wCardListHeaderText + ld a, [hli] + ld h, [hl] + ld l, a + lb de, 1, 1 + call Func_22ae + call PrintTextNoDelay + ret +; 0x56c2 + + INCROM $56c2, $5710 + +CardListParameters: ; 5710 (1;5710) + db 1, 3 ; cursor x, cursor y + db 4 ; item x + db $0e + db 5 ; number of items selectable without scrolling + db $0f ; cursor tile number + db $00 ; tile behind cursor + dw $5719 ; function pointer if non-0 +; 0x5719 + + INCROM $5719, $5744 + +Func_5744: ; 5744 (1:5744) + ld hl, wcbd8 + jp CallIndirect +; 0x574a + + INCROM $574a, $576a + +Func_576a: ; 576a (1:576a) + ld a, B_BUTTON + ld [wcbd7], a + ld a, $01 + jr Func_5779 + +Func_5773: ; 5773 (1:5773) + ld a, B_BUTTON + ld [wcbd7], a + xor a +; fallthrough + +Func_5779: ; 5779 (1:5779) + ld [wcbd1], a + call ZeroObjectPositionsAndToggleOAMCopy + call EmptyScreen + call Func_3b31 + call LoadDuelCardSymbolTiles + ld de, v0Tiles1 + $20 tiles + call LoadLoaded1CardGfx + call SetOBP1OrSGB3ToCardPalette + call SetBGP6OrSGB3ToCardPalette + call FlushAllPalettesOrSendPal23Packet + lb de, $38, $30 ; X Position and Y Position of top-left corner + call PlaceCardImageOAM + lb de, 6, 4 + call ApplyBGP6OrSGB3ToCardImage + xor a + ld [wCardPageNumber], a +.asm_57a7 + call Func_5898 + jr c, .asm_57cc + call EnableLCD +.asm_57af + call DoFrame + ldh a, [hButtonsPressed2] + ld b, a + ld a, [wcbd7] + and b + jr nz, .asm_57cc + ldh a, [hButtonsPressed] + and START + A_BUTTON + jr nz, .asm_57a7 + ldh a, [hButtonsPressed] + and D_RIGHT + D_LEFT + jr z, .asm_57af + call Func_57cd + jr .asm_57af +.asm_57cc + ret +; 0x57cd + +Func_57cd: ; 57cd (1:57cd) + bit D_LEFT_F, a + jr nz, .left +;.right + call Func_5898 + call c, Func_589c + ret +.left + call Func_5892 + call c, Func_589c + ret +; 0x57df + + INCROM $57df, $5892 + +Func_5892: ; 5892 (1:5892) + call Func_5911 + jr nc, Func_589c + ret + +Func_5898: ; 5898 (1:5898) + call Func_58e2 + ret c +; fallthrough + +Func_589c: ; 589c (1:589c) + ld a, [wCardPageNumber] + ld hl, CardPagePointerTable + call JumpToFunctionInTable + call EnableLCD + or a + ret +; 0x58aa + +; load the tiles and palette of the card selected in card list screen +DrawSelectedCard: ; 58aa (1:58aa) + ldh a, [hCurrentMenuItem] + call GetCardInDuelTempList + call LoadCardDataToBuffer1_FromCardID + ld de, v0Tiles1 + $20 tiles + call LoadLoaded1CardGfx + ld de, $c0c ; useless + call SetBGP6OrSGB3ToCardPalette + call FlushAllPalettesOrSendPal23Packet + ret +; 0x58c2 + +CardPagePointerTable: ; 58c2 (1:58c2) + dw DrawDuelMainScene + dw $5b7d ; CARDPAGE_POKEMON_OVERVIEW + dw $5d1f ; CARDPAGE_POKEMON_MOVE1_1 + dw $5d27 ; CARDPAGE_POKEMON_MOVE1_2 + dw $5d2f ; CARDPAGE_POKEMON_MOVE2_1 + dw $5d37 ; CARDPAGE_POKEMON_MOVE2_2 + dw $5d54 ; CARDPAGE_POKEMON_DESCRIPTION + dw DrawDuelMainScene + dw DrawDuelMainScene + dw $5e28 ; CARDPAGE_ENERGY + dw $5e28 ; CARDPAGE_ENERGY + 1 + dw DrawDuelMainScene + dw DrawDuelMainScene + dw $5e1c ; CARDPAGE_TRAINER_1 + dw $5e22 ; CARDPAGE_TRAINER_2 + dw DrawDuelMainScene +; 0x58e2 + +Func_58e2: ; 58e2 (1:58e2) + ld a, [wCardPageNumber] + or a + jr nz, .asm_58ff + ld a, [wLoadedCard1Type] + ld b, a + ld a, CARDPAGE_ENERGY + bit TYPE_ENERGY_F, b + jr nz, .set_card_page_nc + ld a, CARDPAGE_TRAINER_1 + bit TYPE_TRAINER_F, b + jr nz, .set_card_page_nc + ld a, CARDPAGE_POKEMON_OVERVIEW +.set_card_page_nc + ld [wCardPageNumber], a + or a + ret +.asm_58ff + ld hl, wCardPageNumber + inc [hl] + ld a, [hl] + call Func_5930 + jr c, .set_card_page_c + or a + ret nz + jr .asm_58ff +.set_card_page_c + ld [wCardPageNumber], a + ret +; 0x5911 + +Func_5911: ; 5911 (1:5911) + ld hl, wCardPageNumber + dec [hl] + ld a, [hl] + call Func_5930 + jr c, .asm_591f + or a + ret nz + jr Func_5911 +.asm_591f + ld [wCardPageNumber], a +.asm_5922 + call Func_5930 + or a + jr nz, .asm_592e + ld hl, wCardPageNumber + dec [hl] + jr .asm_5922 +.asm_592e + scf + ret +; 0x5930 + +Func_5930: ; 5930 (1:5930) + ld hl, CardPagePointerTable2 + jp JumpToFunctionInTable +; 0x5936 + +CardPagePointerTable2: ; 5936 (1:5936) + dw $5956 + dw $595a ; CARDPAGE_POKEMON_OVERVIEW + dw $595e ; CARDPAGE_POKEMON_MOVE1_1 + dw $5963 ; CARDPAGE_POKEMON_MOVE1_2 + dw $5968 ; CARDPAGE_POKEMON_MOVE2_1 + dw $596d ; CARDPAGE_POKEMON_MOVE2_2 + dw $595a ; CARDPAGE_POKEMON_DESCRIPTION + dw $5973 + dw $5977 + dw $597b ; CARDPAGE_ENERGY + dw $597f ; CARDPAGE_ENERGY + 1 + dw $5984 + dw $5988 + dw $597b ; CARDPAGE_TRAINER_1 + dw $597f ; CARDPAGE_TRAINER_2 + dw $598c +; 0x5956 + + INCROM $5956, $5990 + +ZeroObjectPositionsAndToggleOAMCopy: ; 5990 (1:5990) + call ZeroObjectPositions + ld a, $01 + ld [wVBlankOAMCopyToggle], a + ret +; 0x5999 + +; place OAM for a 8x6 image, using object size 8x16 and obj palette 1. +; d, e: X Position and Y Position of the top-left corner. +; starting tile number is $a0 (v0Tiles1 + $20 tiles). +; used to draw the image of a card in the check card screens. +PlaceCardImageOAM: ; 5999 (1:5999) + call Set_OBJ_8x16 + ld l, $a0 + ld c, 8 ; number of rows +.next_column + ld b, 3 ; number of columns + push de +.next_row + push bc + ld c, l ; tile number + ld b, 1 ; attributes (palette) + call SetOneObjectAttributes + pop bc + inc l + inc l ; next 8x16 tile + ld a, 16 + add e ; Y Position += 16 (next 8x16 row) + ld e, a + dec b + jr nz, .next_row + pop de + ld a, 8 + add d ; X Position += 8 (next 8x16 column) + ld d, a + dec c + jr nz, .next_column + ld a, $01 + ld [wVBlankOAMCopyToggle], a + ret +; 0x59c2 + +; given the deck index of a card in the play area (i.e. -1 indicates empty) +; load the graphics (tiles and palette) of the card to de +LoadPlayAreaCardGfx: ; 59c2 (1:59c2) + cp -1 + ret z + push de + call LoadCardDataToBuffer1_FromDeckIndex + pop de +; fallthrough + +; load the graphics (tiles and palette) of the card loaded in wLoadedCard1 to de +LoadLoaded1CardGfx: ; 59ca (1:59ca) + ld hl, wLoadedCard1Gfx + ld a, [hli] + ld h, [hl] + ld l, a + lb bc, $30, TILE_SIZE + call LoadCardGfx + ret +; 0x59d7 + +SetBGP7OrSGB2ToCardPalette: ; 59d7 (1:59d7) + ld a, [wConsole] + or a ; CONSOLE_DMG + ret z + cp CONSOLE_SGB + jr z, .sgb + ld a, $07 ; CGB BG Palette 7 + call CopyCGBCardPalette + ret +.sgb + ld hl, wCardPalette + ld de, wTempSGBPacket + 1 ; PAL Packet color #0 (PAL23's SGB2) + ld b, CGB_PAL_SIZE +.copy_pal_loop + ld a, [hli] + ld [de], a + inc de + dec b + jr nz, .copy_pal_loop + ret +; 0x59f5 + +SetBGP6OrSGB3ToCardPalette: ; 59f5 (1:59f5) + ld a, [wConsole] + or a ; CONSOLE_DMG + ret z + cp CONSOLE_SGB + jr z, SetSGB3ToCardPalette + ld a, $06 ; CGB BG Palette 6 + call CopyCGBCardPalette + ret + +SetSGB3ToCardPalette: ; 5a04 (1:5a04) + ld hl, wCardPalette + 2 + ld de, wTempSGBPacket + 9 ; Pal Packet color #4 (PAL23's SGB3) + ld b, 6 + jr SetBGP7OrSGB2ToCardPalette.copy_pal_loop +; 0x5a0e + +SetOBP1OrSGB3ToCardPalette: ; 5a0e (1:5a0e) + ld a, $e4 + ld [wOBP0], a + ld a, [wConsole] + or a ; CONSOLE_DMG + ret z + cp CONSOLE_SGB + jr z, SetSGB3ToCardPalette + ld a, $09 ; CGB Object Palette 1 +; fallthrough + +CopyCGBCardPalette: ; 5a1e (1:5a1e) + add a + add a + add a ; a *= CGB_PAL_SIZE + ld e, a + ld d, $00 + ld hl, wBackgroundPalettesCGB ; wObjectPalettesCGB - 8 palettes + add hl, de + ld de, wCardPalette + ld b, CGB_PAL_SIZE +.copy_pal_loop + ld a, [de] + inc de + ld [hli], a + dec b + jr nz, .copy_pal_loop + ret +; 0x5a34 + +FlushAllPalettesOrSendPal23Packet: ; 5a34 (1:5a34) + ld a, [wConsole] + or a ; CONSOLE_DMG + ret z + cp CONSOLE_SGB + jr z, .sgb + call SetFlushAllPalettes + ret +.sgb +; sgb PAL23, 1 ; sgb_command, length +; rgb 28, 28, 24 +; colors 1-7 carried over + ld a, PAL23 << 3 + 1 + ld hl, wTempSGBPacket + ld [hli], a + ld a, $9c + ld [hli], a + ld a, $63 + ld [hld], a + dec hl + xor a + ld [wTempSGBPacket + $f], a + call SendSGB + ret +; 0x5a56 + +ApplyBGP6OrSGB3ToCardImage: ; 5a56 (1:5a56) + ld a, [wConsole] + or a ; CONSOLE_DMG + ret z + cp CONSOLE_SGB + jr z, .sgb + ld a, $06 ; CGB BG Palette 6 + call ApplyCardCGBAttributes + ret +.sgb + ld a, 3 << 0 + 3 << 2 ; Color Palette Designation +; fallthrough + +SendCardAttrBlkPacket: ; 5a67 (1:5a67) + call CreateCardAttrBlkPacket + call SendSGB + ret +; 0x5a6e + +ApplyBGP7OrSGB2ToCardImage: ; 5a6e (1:5a6e) + ld a, [wConsole] + or a ; CONSOLE_DMG + ret z + cp CONSOLE_SGB + jr z, .sgb + ld a, $07 ; CGB BG Palette 7 + call ApplyCardCGBAttributes + ret +.sgb + ld a, 2 << 0 + 2 << 2 ; Color Palette Designation + jr SendCardAttrBlkPacket +; 0x5a81 + +Func_5a81: ; 5a81 (1:5a81) + ld a, [wConsole] + or a ; CONSOLE_DMG + ret z + cp CONSOLE_SGB + jr z, .sgb + lb de, 0, 5 + call ApplyBGP7OrSGB2ToCardImage + lb de, 12, 1 + call ApplyBGP6OrSGB3ToCardImage + ret +.sgb + ld a, 2 << 0 + 2 << 2 ; Data Set #1: Color Palette Designation + lb de, 0, 5 ; Data Set #1: X, Y + call CreateCardAttrBlkPacket + push hl + ld a, 2 + ld [wTempSGBPacket + 1], a ; set number of data sets to 2 + ld hl, wTempSGBPacket + 8 + ld a, 3 << 0 + 3 << 2 ; Data Set #2: Color Palette Designation + lb de, 12, 1 ; Data Set #2: X, Y + call CreateCardAttrBlkPacket_DataSet + pop hl + call SendSGB + ret +; 0x5ab5 + +CreateCardAttrBlkPacket: ; 5ab5 (1:5ab5) +; sgb ATTR_BLK, 1 ; sgb_command, length +; db 1 ; number of data sets + ld hl, wTempSGBPacket + push hl + ld [hl], ATTR_BLK << 3 + 1 + inc hl + ld [hl], 1 + inc hl + call CreateCardAttrBlkPacket_DataSet + xor a + ld [hli], a + ld [hli], a + ld [hli], a + ld [hli], a + pop hl + ret +; 0x5ac9 + +CreateCardAttrBlkPacket_DataSet: ; 5ac9 (1:5ac9) +; Control Code, Color Palette Designation, X1, Y1, X2, Y2 +; db ATTR_BLK_CTRL_INSIDE + ATTR_BLK_CTRL_LINE, a, d, e, d+7, e+5 ; data set 1 + ld [hl], ATTR_BLK_CTRL_INSIDE + ATTR_BLK_CTRL_LINE + inc hl + ld [hl], a + inc hl + ld [hl], d + inc hl + ld [hl], e + inc hl + ld a, 7 + add d + ld [hli], a + ld a, 5 + add e + ld [hli], a + ret +; 0x5adb + +; given the 8x6 card image with coordinates at de, fill its BGMap attributes with a +ApplyCardCGBAttributes: ; 5adb (1:5adb) + call BankswitchVRAM1 + lb hl, 0, 0 + lb bc, 8, 6 + call FillRectangle + call BankswitchVRAM0 + ret +; 0x5aeb + +; set the default game palettes for all three systems +; BGP and OBP0 on DMG +; SGB0 and SGB1 on SGB +; BGP0 to BGP5 and OBP1 on CGB +SetDefaultPalettes: ; 5aeb (1:5aeb) + ld a, [wConsole] + cp CONSOLE_SGB + jr z, .sgb + cp CONSOLE_CGB + jr z, .cgb + ld a, $e4 + ld [wOBP0], a + ld [wBGP], a + ld a, $01 ; equivalent to FLUSH_ONE + ld [wFlushPaletteFlags], a + ret +.cgb + ld a, $04 + ld [wTextBoxFrameType], a + ld de, CGBDefaultPalettes + ld hl, wBackgroundPalettesCGB + ld c, 5 palettes + call .copy_de_to_hl + ld de, CGBDefaultPalettes + ld hl, wObjectPalettesCGB + ld c, CGB_PAL_SIZE + call .copy_de_to_hl + call SetFlushAllPalettes + ret +.sgb + ld a, $04 + ld [wTextBoxFrameType], a + ld a, PAL01 << 3 + 1 + ld hl, wTempSGBPacket + push hl + ld [hli], a + ld de, Pal01Packet_Default + ld c, $0e + call .copy_de_to_hl + ld [hl], c + pop hl + call SendSGB + ret + +.copy_de_to_hl + ld a, [de] + inc de + ld [hli], a + dec c + jr nz, .copy_de_to_hl + ret +; 0x5b44 + +CGBDefaultPalettes: +; BGP0 and OBP0 + rgb 28, 28, 24 + rgb 21, 21, 16 + rgb 10, 10, 8 + rgb 0, 0, 0 +; BGP1 + rgb 28, 28, 24 + rgb 30, 29, 0 + rgb 30, 3, 0 + rgb 0, 0, 0 +; BGP2 + rgb 28, 28, 24 + rgb 0, 18, 0 + rgb 12, 11, 20 + rgb 0, 0, 0 +; BGP3 + rgb 28, 28, 24 + rgb 22, 0 ,22 + rgb 27, 7, 3 + rgb 0, 0, 0 +; BGP4 + rgb 28, 28, 24 + rgb 26, 10, 0 + rgb 28, 0, 0 + rgb 0, 0, 0 + +; first and last byte of the packet not contained here (see SetDefaultPalettes.sgb) +Pal01Packet_Default: +; SGB0 + rgb 28, 28, 24 + rgb 21, 21, 16 + rgb 10, 10, 8 + rgb 0, 0, 0 +; SGB1 + rgb 26, 10, 0 + rgb 28, 0, 0 + rgb 0, 0, 0 + +JPWriteByteToBGMap0: ; 5b7a (1:5b7a) + jp WriteByteToBGMap0 +; 0x5b7d + + INCROM $5b7d, $5e5f + +; display the animation of the player drawing the card loaded in wLoadedCard1 +; print the text at hl (which is YouDrewText) +_DisplayPlayerDrawCardScreen: ; 5e5f (1:5e5f) + push hl + call DrawLargePictureOfCard + ld a, 18 + call CopyCardNameAndLevel + ld [hl], TX_END + ld hl, 0 + call LoadTxRam2 + pop hl + call DrawWideTextBox_WaitForInput + ret +; 0x5e75 + +; draw a large picture of the card loaded in wLoadedCard1, including its image +; and a header indicating the type of card (TRAINER, ENERGY, PoKéMoN) +DrawLargePictureOfCard: ; 5e75 (1:5e75) + call ZeroObjectPositionsAndToggleOAMCopy + call EmptyScreen + call LoadDuelHUDTiles + call SetDefaultPalettes + ld a, $08 + ld [wcac2], a + call LoadCardOrDuelMenuBorderTiles + ld e, HEADER_TRAINER + ld a, [wLoadedCard1Type] + cp TYPE_TRAINER + jr z, .draw + ld e, HEADER_ENERGY + and TYPE_ENERGY + jr nz, .draw + ld e, HEADER_POKEMON +.draw + ld a, e + call LoadCardTypeHeaderTiles + ld de, v0Tiles1 + $20 tiles + call LoadLoaded1CardGfx + call SetBGP6OrSGB3ToCardPalette + call FlushAllPalettesOrSendPal23Packet + ld hl, LargeCardTileData + call WriteDataBlocksToBGMap0 + lb de, 6, 3 + call ApplyBGP6OrSGB3ToCardImage + ret +; 0x5eb7 + +LargeCardTileData: ; 5eb7 (1:5eb7) + db 5, 0, $d0, $d4, $d4, $d4, $d4, $d4, $d4, $d4, $d4, $d1, 0 ; top border + db 5, 1, $d6, $e0, $e1, $e2, $e3, $e4, $e5, $e6, $e7, $d7, 0 ; header top + db 5, 2, $d6, $e8, $e9, $ea, $eb, $ec, $ed, $ee, $ef, $d7, 0 ; header bottom + db 5, 3, $d6, $a0, $a6, $ac, $b2, $b8, $be, $c4, $ca, $d7, 0 ; image + db 5, 4, $d6, $a1, $a7, $ad, $b3, $b9, $bf, $c5, $cb, $d7, 0 ; image + db 5, 5, $d6, $a2, $a8, $ae, $b4, $ba, $c0, $c6, $cc, $d7, 0 ; image + db 5, 6, $d6, $a3, $a9, $af, $b5, $bb, $c1, $c7, $cd, $d7, 0 ; image + db 5, 7, $d6, $a4, $aa, $b0, $b6, $bc, $c2, $c8, $ce, $d7, 0 ; image + db 5, 8, $d6, $a5, $ab, $b1, $b7, $bd, $c3, $c9, $cf, $d7, 0 ; image + db 5, 9, $d6, 0 ; empty line 1 (left) + db 14, 9, $d7, 0 ; empty line 1 (right) + db 5, 10, $d6, 0 ; empty line 2 (left) + db 14, 10, $d7, 0 ; empty line 2 (right) + db 5, 11, $d2, $d5, $d5, $d5, $d5, $d5, $d5, $d5, $d5, $d3, 0 ; bottom border + db $ff +; 0x5f4a + + INCROM $5f4a, $5fdd + +; return carry if the turn holder has any Pokemon with non-zero HP in the play area. +; return how many Pokemon with non-zero HP in b. +HasAlivePokemonInPlayArea: ; 5fdd (1:5fdd) + xor a + ld [wcbd2], a + ld b, a + ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA + call GetTurnDuelistVariable + sub b + ld c, a + ld a, DUELVARS_ARENA_CARD_HP + add b + call GetTurnDuelistVariable + ld b, 0 + inc c + xor a + ld [wcbd3], a + ld [wcbd4], a + jr .next_pkmn +.loop + ld a, [hli] + or a + jr z, .next_pkmn ; jump if this play area Pokemon has 0 HP + inc b +.next_pkmn + dec c + jr nz, .loop + ld a, b + or a + ret nz + scf + ret +; 0x6008 + +OpenPlayAreaScreenForViewing: ; 6008 (1:6008) + ld a, START + A_BUTTON + jr _OpenPlayAreaScreen + +OpenPlayAreaScreenForSelection: ; 600c (1:600c) + ld a, START +; fallthrough + +_OpenPlayAreaScreen: ; 600e (1:600e) + ld [wcbd6], a + ldh a, [hTempCardIndex_ff98] + push af + ld a, [wcbd3] + or a + jr nz, .asm_6034 + xor a + ld [wSelectedDuelSubMenuItem], a + inc a + ld [wcbd3], a +.asm_6022 + call ZeroObjectPositionsAndToggleOAMCopy + call EmptyScreen + call LoadDuelCardSymbolTiles + call LoadDuelCheckPokemonScreenTiles + call $61c7 + call EnableLCD +.asm_6034 + ld hl, MenuParameters_60be + ld a, [wcbd2] + or a + jr z, .asm_6040 + ld hl, MenuParameters_60c6 +.asm_6040 + ld a, [wSelectedDuelSubMenuItem] + call InitializeMenuParameters + ld a, [wcbc8] + ld [wNumMenuItems], a +.asm_604c + call DoFrame + call $60dd + jr nc, .asm_6061 + cp $02 + jp z, $60ac + pop af + ldh [hTempCardIndex_ff98], a + ld a, [wcbd4] + jr OpenPlayAreaScreenForSelection +.asm_6061 + call HandleMenuInput + jr nc, .asm_604c + ld a, e + ld [wSelectedDuelSubMenuItem], a + ld a, [wcbd2] + add e + ld [wcbc9], a + ld a, [wcbd6] + ld b, a + ldh a, [hButtonsPressed] + and b + jr z, .asm_6091 + ld a, [wcbc9] + add DUELVARS_ARENA_CARD + call GetTurnDuelistVariable + cp -1 + jr z, .asm_6022 + call GetCardIDFromDeckIndex + call LoadCardDataToBuffer1_FromCardID + call Func_576a + jr .asm_6022 +.asm_6091 + ld a, [wcbd2] + ld c, a + ldh a, [hCurrentMenuItem] + add c + ldh [hTempPlayAreaLocationOffset_ff9d], a + ldh a, [hCurrentMenuItem] + cp $ff + jr z, .asm_60b5 + ldh a, [hTempPlayAreaLocationOffset_ff9d] + add DUELVARS_ARENA_CARD_HP + call GetTurnDuelistVariable + or a + jr nz, .asm_60ac + jr .asm_6034 +.asm_60ac + pop af + ldh [hTempCardIndex_ff98], a + ldh a, [hTempPlayAreaLocationOffset_ff9d] + ldh [hCurrentMenuItem], a + or a + ret +.asm_60b5 + pop af + ldh [hTempCardIndex_ff98], a + ldh a, [hTempPlayAreaLocationOffset_ff9d] + ldh [hCurrentMenuItem], a + scf + ret +; 0x60be + +MenuParameters_60be: ; 60be (1:60be) + db 0, 0 ; cursor x, cursor y + db 3 ; y displacement between items + db 6 ; number of items + db $0f ; cursor tile number + db $00 ; tile behind cursor + dw $60ce ; function pointer if non-0 + +MenuParameters_60c6: ; 60c6 (1:60c6) + db 0, 3 ; cursor x, cursor y + db 3 ; y displacement between items + db 6 ; number of items + db $0f ; cursor tile number + db $00 ; tile behind cursor + dw $60ce ; function pointer if non-0 + + INCROM $60ce, $63bb + +; given a card's status in a, print the Poison symbol at bc if it's poisoned +CheckPrintPoisoned: ; 63bb (1:63bb) + push af + and POISONED + jr z, .print +.poison + ld a, LOW("<POISONED>") +.print + call WriteByteToBGMap0 + pop af + ret +; 0x63c7 + +; given a card's status in a, print the Poison symbol at bc if it's double poisoned +CheckPrintDoublePoisoned: ; 63c7 (1:63c7) + push af + and DOUBLE_POISONED - POISONED + jr nz, CheckPrintPoisoned.poison ; double poison (print a second symbol) + jr CheckPrintPoisoned.print ; not double poisoned +; 0x63ce + +; given a card's status in a, print the Confusion, Sleep, or Paralysis symbol at bc +; for each of those status that is active +CheckPrintCnfSlpPrz: ; 63ce (1:63ce) + push af + push hl + push de + and CNF_SLP_PRZ + ld e, a + ld d, $00 + ld hl, .status_symbols + add hl, de + ld a, [hl] + call WriteByteToBGMap0 + pop de + pop hl + pop af + ret + +.status_symbols + ; NO_STATUS, CONFUSED, ASLEEP, PARALYZED + db LOW("< >"), LOW("<CONFUSED>"), LOW("<ASLEEP>"), LOW("<PARALYZED>") +; 0x63e6 + +; print the symbols of the attached energies of a turn holder's play area card +; input: +; - e: PLAY_AREA_* +; - b, c: where to print (x, y) +; - wAttachedEnergies and wTotalAttachedEnergies +PrintPlayAreaCardAttachedEnergies: ; 63e6 (1:63e6) + push bc + call GetPlayAreaCardAttachedEnergies + ld hl, wDefaultText + push hl + ld c, NUM_TYPES + xor a +.empty_loop + ld [hli], a + dec c + jr nz, .empty_loop + pop hl + ld de, wAttachedEnergies + lb bc, LOW("<FIRE>"), NUM_TYPES - 1 +.next_color + ld a, [de] ; energy count of current color + inc de + inc a + jr .check_amount +.has_energy + ld [hl], b + inc hl +.check_amount + dec a + jr nz, .has_energy + inc b + dec c + jr nz, .next_color + ld a, [wTotalAttachedEnergies] + cp 9 + jr c, .place_tiles + ld a, LOW("<+>") + ld [wDefaultText + 7], a +.place_tiles + pop bc + call BCCoordToBGMap0Address + ld hl, wDefaultText + ld b, NUM_TYPES + call SafeCopyDataHLtoDE + ret +; 0x6423 + + INCROM $6423, $6614 + +; input d, e: max. HP, current HP +DrawHPBar: ; 6614 (1:6614) + ld a, MAX_HP + ld c, LOW("< >") + call .fill_hp_bar ; empty bar + ld a, d + ld c, LOW("<🌕>") + call .fill_hp_bar ; fill (max. HP) with HP counters + ld a, d + sub e + ld c, LOW("<🌑>") + ; fill (max. HP - current HP) with damaged HP counters +.fill_hp_bar + or a + ret z + ld hl, wDefaultText + ld b, HP_BAR_LENGTH +.tile_loop + ld [hl], c + inc hl + dec b + ret z + sub MAX_HP / HP_BAR_LENGTH + jr nz, .tile_loop + ret +; 0x6635 + + INCROM $6635, $6785 Func_6785: ; 6785 (1:6785) call EnableSRAM @@ -1304,7 +3338,16 @@ LoadPlayerDeck: ; 6793 (1:6793) ret ; 0x67b2 - INCROM $67b2, $67be +Func_67b2: ; 67b2 (1:67b2) + ld a, [wccf2] + or a + ret z + ldh a, [hButtonsHeld] + and B_BUTTON + ret z + scf + ret +; 0x67be ; related to ai taking their turn in a duel ; called multiple times during one ai turn @@ -1378,23 +3421,23 @@ AIUseEnergyCard: ; 69a5 (1:69a5) ldh a, [hTempPlayAreaLocationOffset_ffa1] ldh [hTempPlayAreaLocationOffset_ff9d], a ld e, a - ldh a, [hffa0] + ldh a, [hTemp_ffa0] ldh [hTempCardIndex_ff98], a call PutHandCardInPlayArea - ldh a, [hffa0] + ldh a, [hTemp_ffa0] call LoadCardDataToBuffer1_FromDeckIndex - call $5e75 + call DrawLargePictureOfCard call $68e4 ld a, $1 ld [wAlreadyPlayedEnergy], a - call $4f9d + call DrawDuelMainScene ret ; 0x69c5 INCROM $69c5, $6d84 -; converts clefairy doll/mysterious fossil at specified wLoadedCard to pokemon card -ConvertTrainerCardToPokemon: +; converts clefairy doll/mysterious fossil to pokemon card +ConvertTrainerCardToPokemon: ; 6d84 (1:6d84) ld c, a ld a, [hl] cp TYPE_TRAINER @@ -1448,7 +3491,31 @@ ConvertTrainerCardToPokemon: db UNABLE_RETREAT ; CARD_DATA_RETREAT_COST ds $0d ; PKMN_CARD_DATA_LENGTH - (CARD_DATA_RETREAT_COST + 1) - INCROM $6df1, $7107 + INCROM $6df1, $70e6 + +Func_70e6: ; 70e6 (1:70e6) + xor a + ld [wAlreadyPlayedEnergy], a + ld [wcc0c], a + ld [wGotHeadsFromSandAttackOrSmokescreenCheck], a + ldh a, [hWhoseTurn] + ld [wcc05], a + ret +; 0x70f6 + +SetAllPlayAreaPokemonCanEvolve: ; 70f6 (1:70f6) + ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA + call GetTurnDuelistVariable + ld c, a + ld l, DUELVARS_ARENA_CARD_FLAGS_C2 +.next_pkmn_loop + res 5, [hl] + set CAN_EVOLVE_THIS_TURN_F, [hl] + inc l + dec c + jr nz, .next_pkmn_loop + ret +; 0x7107 ; initializes duel variables such as cards in deck and in hand, or Pokemon in play area ; player turn: [c200, c2ff] @@ -1503,7 +3570,7 @@ _TossCoin: ; 71ad (1:71ad) xor a ld [wcd9f], a call EmptyScreen - call Func_210f + call LoadDuelCoinTossResultTiles .asm_71c1 ld a, [wcd9f] @@ -1546,9 +3613,9 @@ _TossCoin: ; 71ad (1:71ad) ld a, [wcd9f] inc a call $65b7 - ld b, $11 + ld b, 17 ld a, $2e - call Func_06c3 + call WriteByteToBGMap0 inc b ld a, [wcd9c] call $65b7 diff --git a/src/engine/bank1c.asm b/src/engine/bank1c.asm index 005eb3f..333ef53 100644 --- a/src/engine/bank1c.asm +++ b/src/engine/bank1c.asm @@ -269,7 +269,7 @@ Func_701e9: ; 701e9 (1c:41e9) ret Func_701fe: ; 701fe (1c:41fe) - ld hl, v0BGMapTiles1 + ld hl, v0BGMap0 ld de, $000c ld a, $80 ld c, $d diff --git a/src/engine/bank2.asm b/src/engine/bank2.asm index 22435ee..e9f2868 100644 --- a/src/engine/bank2.asm +++ b/src/engine/bank2.asm @@ -43,13 +43,13 @@ Func_8d56: ; 8d56 (2:4d56) xor a ld [wTileMapFill], a call EmptyScreen - call InitSpritePositions + call ZeroObjectPositions ld a, $1 ld [wVBlankOAMCopyToggle], a - call Func_2119 - call Func_20b0 + call LoadDuelHUDTiles + call LoadDuelCardSymbolTiles call Func_8d0b - bank1call Func_5aeb + bank1call SetDefaultPalettes ld de, $3cbf call Func_2275 ret @@ -80,7 +80,7 @@ Func_8db0: ; 8db0 (2:4db0) Func_8dbc: ; 8dbc (2:4dbc) ld hl, Unknown_8de2 - call InitializeCursorParameters + call InitializeMenuParameters ldtx hl, PleaseSelectDeckText call DrawWideTextBox_PrintText .asm_8dc8 @@ -268,7 +268,7 @@ Func_8f38: ; 8f38 (2:4f38) call DisableSRAM ld l, a ld de, wDefaultText - call Func_0663 + call TwoByteNumberToText ld hl, wcfb9 ld [hl], $6 inc hl @@ -500,7 +500,7 @@ asm_90da add $e ld c, a ld a, e - call Func_06c3 + call WriteByteToBGMap0 or a ret @@ -912,7 +912,7 @@ Func_ba04: ; ba04 (2:7a04) ld [wd0a5], a xor a ld hl, $7b6e - call InitializeCursorParameters + call InitializeMenuParameters ldtx hl, PleaseSelectDeckText call DrawWideTextBox_PrintText ld a, $5 diff --git a/src/engine/bank20.asm b/src/engine/bank20.asm index 5a0367c..d2acf6a 100644 --- a/src/engine/bank20.asm +++ b/src/engine/bank20.asm @@ -66,7 +66,7 @@ Func_801a1: ; 801a1 (20:41a1) ld a, $1 call BankswitchSRAM ld hl, v0End - ld de, v0BGMapTiles1 + ld de, v0BGMap0 ld c, $20 .asm_801b4 push bc diff --git a/src/engine/bank3.asm b/src/engine/bank3.asm index 1fc8f11..1df0b19 100644 --- a/src/engine/bank3.asm +++ b/src/engine/bank3.asm @@ -11,10 +11,10 @@ LoadMap: ; c000 (3:4000) ld [wMatchStartTheme], a farcall Func_10a9b call Func_c1a4 - call InitSpritePositions + call ZeroObjectPositions xor a ld [wTileMapFill], a - call Func_2119 + call LoadDuelHUDTiles call Set_OBJ_8x8 xor a ld [wcd08], a @@ -341,7 +341,7 @@ Unknown_c27c: ; c27c (3:427c) Func_c280: ; c280 (3:4280) call Func_c228 call Func_3ca0 - call InitSpritePositions + call ZeroObjectPositions ld hl, wVBlankOAMCopyToggle inc [hl] call EnableLCD @@ -370,7 +370,7 @@ Func_c2a3: ; c2a3 (3:42a3) call Func_2275 farcall Func_12ba7 call Func_3ca0 - call InitSpritePositions + call ZeroObjectPositions ld a, $1 ld [wVBlankOAMCopyToggle], a call EnableLCD @@ -439,7 +439,7 @@ Func_c335: ; c335 (3:4335) ld [wd10d], a ld hl, wObjectPalettesCGB ld de, wd0cc - ld bc, 8 * CGB_PAL_SIZE + ld bc, 8 palettes call CopyDataHLtoDE_SaveRegisters ret @@ -450,7 +450,7 @@ Func_c34e: ; c34e (3:434e) ld [wOBP1], a ld hl, wd0cc ld de, wObjectPalettesCGB - ld bc, 8 * CGB_PAL_SIZE + ld bc, 8 palettes call CopyDataHLtoDE_SaveRegisters call SetFlushAllPalettes ret @@ -3118,8 +3118,8 @@ OWSequence_Joshua: FindEndOfBattleScript: ; e52c (3:652c) ld c, $0 - ld a, [wd0c3] - or a + ld a, [wDuelResult] + or a ; cp DUEL_WIN jr z, .player_won ld c, $2 @@ -3186,8 +3186,8 @@ Func_f580: ; f580 (3:7580) INCROM $f5b3, $fc2b Func_fc2b: ; fc2b (3:7c2b) - ld a, [wd0c3] - cp $2 + ld a, [wDuelResult] + cp 2 jr c, .asm_fc34 ld a, $2 .asm_fc34 diff --git a/src/engine/bank4.asm b/src/engine/bank4.asm index 883065a..5140705 100644 --- a/src/engine/bank4.asm +++ b/src/engine/bank4.asm @@ -2,7 +2,7 @@ Func_10000: ; 10000 (4:4000) ld a, $0 ld [wTileMapFill], a call EmptyScreen - call Func_2119 + call LoadDuelHUDTiles ld de, $307f call Func_2275 call Set_OBJ_8x8 @@ -18,7 +18,7 @@ Func_10000: ; 10000 (4:4000) .asm_10025 call Func_1288c - call InitSpritePositions + call ZeroObjectPositions ld a, $1 ld [wVBlankOAMCopyToggle], a ret @@ -155,7 +155,7 @@ BoosterPack_1031b: ; 1031b (4:431b) call Func_2c73 call DisableLCD call Func_1288c - call InitSpritePositions + call ZeroObjectPositions ld a, $1 ld [wVBlankOAMCopyToggle], a ld a, $4 @@ -434,7 +434,7 @@ Unknown_10f14: ; 10f14 (4:4f14) Func_10f2e: ; 10f2e (4:4f2e) push hl push de - ld de, $0101 + lb de, 1, 1 call Func_22ae call Func_10f4a rlca @@ -1081,7 +1081,7 @@ Unknown_1229f: ; 1229f (4:629f) ; is selected, there is no need to come back to the menu. ; the only exception is after returning from Card Pop! _GameLoop: ; 126d1 (4:66d1) - call InitSpritePositions + call ZeroObjectPositions ld hl, wVBlankOAMCopyToggle inc [hl] farcall Func_70018 diff --git a/src/engine/bank5.asm b/src/engine/bank5.asm index 5820a24..0fd6f82 100644 --- a/src/engine/bank5.asm +++ b/src/engine/bank5.asm @@ -66,7 +66,7 @@ Func_14226: ; 14226 (5:4226) ret z call LoadCardDataToBuffer1_FromDeckIndex ld a, [wLoadedCard1Type] - cp TYPE_ENERGY_FIRE + cp TYPE_ENERGY jr nc, .check_for_next_pokemon ld a, [wLoadedCard1Stage] or a diff --git a/src/engine/bank6.asm b/src/engine/bank6.asm index 18e8b98..1a85a24 100644 --- a/src/engine/bank6.asm +++ b/src/engine/bank6.asm @@ -1,4 +1,153 @@ - INCROM $18000, $186f7 +_CopyCardNameAndLevel: ; 18000 (6:4000) + push bc + push de + ld [wcd9b], a + ld hl, wLoadedCard1Name + ld a, [hli] + ld h, [hl] + ld l, a + ld de, wDefaultText + push de + call CopyText ; copy card name to wDefaultText + pop hl + ld a, [hli] + cp TX_START + jp z, Func_18086 + ld a, [wcd9b] + ld c, a + ld a, [wLoadedCard1Type] + cp TYPE_ENERGY + jr nc, .level_done ; jump if energy or trainer + ld a, [wLoadedCard1Level] + or a + jr z, .level_done + inc c + inc c + ld a, [wLoadedCard1Level] + cp 10 + jr c, .level_done + inc c ; second digit +.level_done + ld hl, wLoadedCard1Name + ld a, [hli] + ld h, [hl] + ld l, a + ld de, wDefaultText + push de + call CopyText + pop hl + push de + ld e, c + call Func_23c1 + add e + ld c, a + pop hl + push hl +.fill_loop + ld a, $70 + ld [hli], a + dec c + jr nz, .fill_loop + ld [hl], TX_END + pop hl + ld a, [wLoadedCard1Type] + cp TYPE_ENERGY + jr nc, .done + ld a, [wLoadedCard1Level] + or a + jr z, .done + ld a, TX_SYMBOL + ld [hli], a + ld [hl], LOW("<Lv>") + inc hl + ld a, [wLoadedCard1Level] + cp 10 + jr c, .one_digit + ld [hl], TX_SYMBOL + inc hl + ld b, LOW("<0>") - 1 +.first_digit_loop + inc b + sub 10 + jr nc, .first_digit_loop + add 10 + ld [hl], b ; first digit + inc hl +.one_digit + ld [hl], TX_SYMBOL + inc hl + add LOW("<0>") + ld [hl], a ; last (or only) digit + inc hl +.done + pop de + pop bc + ret +; 0x18086 + +Func_18086: ; 18086 (6:4086) + ld a, [wcd9b] + inc a + add a + ld b, a + ld hl, wDefaultText +.find_end_text_loop + dec b + ld a, [hli] + or a ; TX_END + jr nz, .find_end_text_loop + dec hl + ld a, [wLoadedCard1Type] + cp TYPE_ENERGY + jr nc, .level_done + ld a, [wLoadedCard1Level] + or a + jr z, .level_done + ld c, a + ld a, " " + ld [hli], a + dec b + ld a, "L" + ld [hli], a + dec b + ld a, "v" + ld [hli], a + dec b + ld a, c + cp 10 + jr c, .got_level + push bc + ld b, "0" - 1 +.first_digit_loop + inc b + sub 10 + jr nc, .first_digit_loop + add 10 + ld [hl], b ; first digit + inc hl + pop bc + ld c, a + dec b +.got_level + ld a, c + add "0" + ld [hli], a ; last (or only) digit + dec b +.level_done + push hl + ld a, " " +.fill_spaces_loop + ld [hli], a + dec b + jr nz, .fill_spaces_loop + ld [hl], TX_END + pop hl + pop de + pop bc + ret +; 0x180d5 + + INCROM $180d5, $186f7 INCLUDE "data/effect_commands.asm" @@ -104,7 +253,7 @@ Func_19a12: ; 19a12 (6:5a12) ld h, [hl] ld l, a ld de, wDefaultText - call PrintTextBoxBorderLabel + call CopyText ret ; 0x19a1f @@ -159,7 +308,7 @@ Func_1a61f: ; 1a61f (6:661f) pop hl bank1call $5e5f .asm_1a680 - call Func_378a + call AssertSongFinished or a jr nz, .asm_1a680 call ResumeSong @@ -169,7 +318,7 @@ Func_1a61f: ; 1a61f (6:661f) INCROM $1a68d, $1a6cc -Func_1a6cc: ; 1a6cc (6:66cc) +CommentedOut_1a6cc: ; 1a6cc (6:66cc) ret ; 0x1a6cd diff --git a/src/engine/bank7.asm b/src/engine/bank7.asm index 156d421..725b51b 100644 --- a/src/engine/bank7.asm +++ b/src/engine/bank7.asm @@ -389,7 +389,7 @@ Func_1d078: ; 1d078 (7:5078) call $5614 ld hl, wd635 inc [hl] - call Func_378a + call AssertSongFinished or a jr nz, .asm_1d0ae farcall Func_10ab4 @@ -492,7 +492,7 @@ Func_1d306: ; 1d306 (7:5306) INCROM $1d306, $1d386 Titlescreen_1d386: ; 1d386 (7:5386) - call Func_378a + call AssertSongFinished or a jr nz, .asm_1d39f call DisableLCD diff --git a/src/engine/booster_packs.asm b/src/engine/booster_packs.asm index 98692d8..fc24355 100644 --- a/src/engine/booster_packs.asm +++ b/src/engine/booster_packs.asm @@ -590,4 +590,4 @@ LoadRarityAmountsToWram: ; 1e4ba (7:64ba) INCLUDE "data/booster_packs.asm" - INCROM $1e640, $20000
\ No newline at end of file + INCROM $1e640, $20000 diff --git a/src/engine/home.asm b/src/engine/home.asm index 4c5ecfa..c416abe 100644 --- a/src/engine/home.asm +++ b/src/engine/home.asm @@ -51,7 +51,7 @@ Start: ; 0150 (0:0150) pop af ld [wInitialA], a call DetectConsole - ld a, $20 + ld a, " " ld [wTileMapFill], a call SetupVRAM call SetupLCD @@ -420,7 +420,7 @@ SetupVRAM: ; 03a1 (0:03a1) call BankswitchVRAM0 .vram0 ld hl, v0Tiles0 - ld bc, v0BGMapTiles1 - v0Tiles0 + ld bc, v0BGMap0 - v0Tiles0 .loop xor a ld [hli], a @@ -433,8 +433,8 @@ SetupVRAM: ; 03a1 (0:03a1) ; fill VRAM0 BG maps with [wTileMapFill] and VRAM1 BG Maps with 0 FillTileMap: ; 03c0 (0:03c0) call BankswitchVRAM0 - ld hl, v0BGMapTiles1 - ld bc, v0BGMapTiles2 - v0BGMapTiles1 + ld hl, v0BGMap0 + ld bc, v0BGMap1 - v0BGMap0 .vram0_loop ld a, [wTileMapFill] ld [hli], a @@ -446,8 +446,8 @@ FillTileMap: ; 03c0 (0:03c0) cp CONSOLE_CGB ret nz call BankswitchVRAM1 - ld hl, v1BGMapTiles1 - ld bc, v1BGMapTiles2 - v1BGMapTiles1 + ld hl, v1BGMap0 + ld bc, v1BGMap1 - v1BGMap0 .vram1_loop xor a ld [hli], a @@ -558,16 +558,16 @@ FlushPalettes: ; 042d (0:042d) FlushAllCGBPalettes: ; 0458 (0:0458) ; flush 8 BGP palettes xor a - ld b, 8 * CGB_PAL_SIZE + ld b, 8 palettes call CopyCGBPalettes ; flush 8 OBP palettes ld a, CGB_PAL_SIZE - ld b, 8 * CGB_PAL_SIZE + ld b, 8 palettes call CopyCGBPalettes jr FlushPalettes.done ; copy b bytes of CGB palette data starting at -; wBackgroundPalettesCGB + a * CGB_PAL_SIZE into rBGPD or rOGPD. +; wBackgroundPalettesCGB + a palettes into rBGPD or rOGPD. CopyCGBPalettes: ; 0467 (0:0467) add a add a @@ -641,7 +641,7 @@ AttrBlkPacket_04bf: ; 04bf (0:04bf) ds 6 ; data set 2 ds 2 ; data set 3 -; returns v*BGMapTiles1 + BG_MAP_WIDTH * c + b in de. +; returns v*BGMap0 + BG_MAP_WIDTH * c + b in de. ; used to map coordinates at bc to a BGMap0 address. BCCoordToBGMap0Address: ; 04cf (0:04cf) ld l, c @@ -652,7 +652,7 @@ BCCoordToBGMap0Address: ; 04cf (0:04cf) add hl, hl add hl, hl ld c, b - ld b, HIGH(v0BGMapTiles1) + ld b, HIGH(v0BGMap0) add hl, bc ld e, l ld d, h @@ -848,12 +848,12 @@ Func_05c2: ; 5c2 (0:5c2) ld hl, wcaa0 push hl push bc - call Func_0614 + call WriteNumbersInTextFormat pop bc call BCCoordToBGMap0Address pop hl ld b, $02 - call JumpToHblankCopyDataHLtoDE + call JPHblankCopyDataHLtoDE pop de pop bc pop hl @@ -867,12 +867,12 @@ Func_05db: ; 5db (0:5db) ld hl, wcaa0 push hl push bc - call Func_061b + call WriteNumberInTextFormat pop bc call BCCoordToBGMap0Address pop hl ld b, $01 - call JumpToHblankCopyDataHLtoDE + call JPHblankCopyDataHLtoDE pop de pop bc pop hl @@ -889,61 +889,66 @@ Func_05f4: ; 5f4 (0:5f4) push hl push bc ld a, d - call Func_0614 + call WriteNumbersInTextFormat ld a, e - call Func_0614 + call WriteNumbersInTextFormat pop bc call BCCoordToBGMap0Address pop hl ld b, $04 - call JumpToHblankCopyDataHLtoDE + call JPHblankCopyDataHLtoDE pop de pop bc pop hl ret ; 0x614 -Func_0614: ; 614 (0:614) +; given two numbers in the two nybbles of register a, write them +; in text format to hl (most significant nybble first) +WriteNumbersInTextFormat: ; 614 (0:614) push af swap a - call Func_061b + call WriteNumberInTextFormat pop af -Func_061b: +; fallthrough + +; given a number in the (bottom nybble) of register a, write it in text format to hl +WriteNumberInTextFormat: and $0f - add $30 - cp $3a - jr c, .asm_625 + add "0" + cp "9" + 1 + jr c, .write_num add $07 -.asm_625 +.write_num ld [hli], a ret ; 0x627 INCROM $0627, $0663 -Func_0663: ; 0663 (0:0663) +; convert the number at hl to text (ascii) format and write it to de +TwoByteNumberToText: ; 0663 (0:0663) push bc - ld bc, $d8f0 - call Func_0686 - ld bc, $fc18 - call Func_0686 - ld bc, $ff9c - call Func_0686 - ld bc, $fff6 - call Func_0686 - ld bc, $ffff - call Func_0686 - xor a + ld bc, -10000 + call .get_digit + ld bc, -1000 + call .get_digit + ld bc, -100 + call .get_digit + ld bc, -10 + call .get_digit + ld bc, -1 + call .get_digit + xor a ; TX_END ld [de], a pop bc ret - -Func_0686: ; 0686 (0:0686) - ld a, $2f -.asm_688 +.get_digit + ld a, "0" - 1 +.substract_loop inc a add hl, bc - jr c, .asm_688 + jr c, .substract_loop ld [de], a inc de ld a, l @@ -955,50 +960,60 @@ Func_0686: ; 0686 (0:0686) ret ; 0x695 -Func_0695: ; 0695 (0:0695) - call Func_069d - bit 7, [hl] - jr z, Func_0695 +; reads structs: +; x (1 byte), y (1 byte), data (n bytes), $00 +; x (1 byte), y (1 byte), data (n bytes), $00 +; ... +; $ff +; for each struct, writes data to BGMap0-translated x,y +WriteDataBlocksToBGMap0: ; 0695 (0:0695) + call WriteDataBlockToBGMap0 + bit 7, [hl] ; check for $ff + jr z, WriteDataBlocksToBGMap0 ret ; 0x69d -Func_069d: ; 069d (0:069d) +; reads struct: +; x (1 byte), y (1 byte), data (n bytes), $00 +; writes data to BGMap0-translated x,y +WriteDataBlockToBGMap0: ; 069d (0:069d) ld b, [hl] inc hl ld c, [hl] inc hl - push hl - push bc - ld b, $ff -.asm_6a5 + push hl ; hl = addr of data + push bc ; b,c = x,y + ld b, -1 +.find_zero_loop inc b ld a, [hli] or a - jr nz, .asm_6a5 - ld a, b - pop bc + jr nz, .find_zero_loop + ld a, b ; length of data + pop bc ; x,y push af call BCCoordToBGMap0Address pop af - ld b, a - pop hl + ld b, a ; length of data + pop hl ; addr of data or a - jr z, .asm_6bd + jr z, .move_to_next push bc push hl - call SafeCopyDataHLtoDE + call SafeCopyDataHLtoDE ; copy data to de (BGMap0 translated x,y) pop hl pop bc -.asm_6bd - inc b +.move_to_next + inc b ; length of data += 1 (to account for the last $0) ld c, b - ld b, $0 - add hl, bc + ld b, 0 + add hl, bc ; point to next structure ret ; 0x6c3 -Func_06c3: ; 06c3 (0:06c3) +; writes a to [v*BGMap0 + BG_MAP_WIDTH * c + b] +WriteByteToBGMap0: ; 06c3 (0:06c3) push af ld a, [wLCDC] rla @@ -1034,7 +1049,7 @@ Func_06c3: ; 06c3 (0:06c3) ; 0x6ee ; copy a bytes of data from hl to vBGMap0 address pointed to by coord at bc -Func_06ee: ; 06ee (0:06ee) +CopyDataToBGMap0: ; 06ee (0:06ee) push bc push hl push af @@ -1052,7 +1067,7 @@ Func_06ee: ; 06ee (0:06ee) SafeCopyDataHLtoDE: ; 6fc (0:6fc) ld a, [wLCDC] rla - jr c, JumpToHblankCopyDataHLtoDE + jr c, JPHblankCopyDataHLtoDE .lcd_off_loop ld a, [hli] ld [de], a @@ -1060,12 +1075,12 @@ SafeCopyDataHLtoDE: ; 6fc (0:6fc) dec b jr nz, .lcd_off_loop ret -JumpToHblankCopyDataHLtoDE: ; 0709 (0:0709) +JPHblankCopyDataHLtoDE: ; 0709 (0:0709) jp HblankCopyDataHLtoDE ; 0x70c ; copy c bytes of data from hl to de, b times. -; used to copy gfx data. +; used to copy gfx data with c = TILE_SIZE CopyGfxData: ; 070c (0:070c) ld a, [wLCDC] rla @@ -1075,7 +1090,7 @@ CopyGfxData: ; 070c (0:070c) push hl push de ld b, c - call JumpToHblankCopyDataHLtoDE + call JPHblankCopyDataHLtoDE ld b, $0 pop hl add hl, bc @@ -1563,12 +1578,82 @@ Func_08ef: ; 08ef (0:08ef) jr .asm_93c ; 0x950 - INCROM $0950, $099c +; set attributes for [hl] sprites starting from wOAM + [wOAMOffset] / 4 +; return carry if reached end of wOAM before finishing +SetManyObjectsAttributes: ; 950 (0:950) + push hl + ld a, [wOAMOffset] + ld c, a + ld b, HIGH(wOAM) + cp 40 * 4 + jr nc, .beyond_oam + pop hl + ld a, [hli] ; [hl] = how many obj? +.copy_obj_loop + push af + ld a, [hli] + add e + ld [bc], a ; Y Position <- [hl + 1 + 4*i] + e + inc bc + ld a, [hli] + add d + ld [bc], a ; X Position <- [hl + 2 + 4*i] + d + inc bc + ld a, [hli] + ld [bc], a ; Tile/Pattern Number <- [hl + 3 + 4*i] + inc bc + ld a, [hli] + ld [bc], a ; Attributes/Flags <- [hl + 4 + 4*i] + inc bc + ld a, c + cp 40 * 4 + jr nc, .beyond_oam + pop af + dec a + jr nz, .copy_obj_loop + or a +.done + ld hl, wOAMOffset + ld [hl], c + ret +.beyond_oam + pop hl + scf + jr .done +; 0x97f + +; for the sprite at wOAM + [wOAMOffset] / 4, set its attributes from registers e, d, c, b +; return carry if [wOAMOffset] > 40 * 4 (beyond the end of wOAM) +SetOneObjectAttributes: ; 97f (0:97f) + push hl + ld a, [wOAMOffset] + ld l, a + ld h, HIGH(wOAM) + cp 40 * 4 + jr nc, .beyond_oam + ld [hl], e ; Y Position + inc hl + ld [hl], d ; X Position + inc hl + ld [hl], c ; Tile/Pattern Number + inc hl + ld [hl], b ; Attributes/Flags + inc hl + ld a, l + ld [wOAMOffset], a + pop hl + or a + ret +.beyond_oam + pop hl + scf + ret +; 0x99c ; set the Y Position and X Position of all sprites in wOAM to $00 -InitSpritePositions: ; 099c (0:099c) +ZeroObjectPositions: ; 099c (0:099c) xor a - ld [wcab5], a + ld [wOAMOffset], a ld hl, wOAM ld c, 40 xor a @@ -1878,7 +1963,7 @@ Func_0bcb: ; 0bcb (0:0bcb) ld a, %11100100 ld [rBGP], a ld de, v0Tiles1 - ld bc, v0BGMapTiles1 - v0Tiles1 + ld bc, v0BGMap0 - v0Tiles1 .loop ld a, [hli] ld [de], a @@ -1887,7 +1972,7 @@ Func_0bcb: ; 0bcb (0:0bcb) ld a, b or c jr nz, .loop - ld hl, v0BGMapTiles1 + ld hl, v0BGMap0 ld de, $000c ld a, $80 ld c, $d @@ -2460,9 +2545,9 @@ DuelTransmissionError: ; 0f35 (0:0f35) call LoadTxRam3 ldtx hl, TransmissionErrorText call DrawWideTextBox_WaitForInput - ld a, $ff - ld [wd0c3], a - ld hl, wcbe5 + ld a, -1 + ld [wDuelResult], a + ld hl, wDuelReturnAddress ld a, [hli] ld h, [hl] ld l, a @@ -2473,8 +2558,8 @@ DuelTransmissionError: ; 0f35 (0:0f35) ret Func_0f58: ; 0f58 (0:0f58) - ld a, [wcc09] - cp $1 + ld a, [wDuelType] + cp DUELTYPE_LINK jr z, .asm_f60 ret .asm_f60 @@ -2606,7 +2691,9 @@ Func_0fe9: ; 0fe9 (0:0fe9) ret ; 0x100b -Func_100b: ; 100b (0:100b) +; save duel state to SRAM +; called between each two-player turn, just after player draws card +SaveDuelStateToSRAM: ; 100b (0:100b) ld a, $2 call BankswitchSRAM call $669d @@ -3437,26 +3524,34 @@ LoadCardDataToBuffer2_FromDeckIndex: ; 138c (0:138c) ret ; 0x13a2 -Func_13a2: ; 13a2 (0:13a2) +; evolve a turn holder's Pokemon card in the play area slot determined by hTempPlayAreaLocationOffset_ff9d +; into another turn holder's Pokemon card identifier by it's deck index (0-59) in hTempCardIndex_ff98. +; return nc if evolution was succesful. +EvolvePokemonCard: ; 13a2 (0:13a2) + ; first make sure the attempted evolution is viable ldh a, [hTempCardIndex_ff98] ld d, a ldh a, [hTempPlayAreaLocationOffset_ff9d] ld e, a - call Func_13f7 - ret c + call CheckIfCanEvolveInto + ret c ; return if it's not capable of evolving into the selected Pokemon + + ; place the evolved Pokemon card in the play area location of the pre-evolved Pokemon card ldh a, [hTempPlayAreaLocationOffset_ff9d] ld e, a add DUELVARS_ARENA_CARD call GetTurnDuelistVariable - ld [wccee], a + ld [wccee], a ; save pre-evolved Pokemon card into wccee call LoadCardDataToBuffer2_FromDeckIndex ldh a, [hTempCardIndex_ff98] ld [hl], a call LoadCardDataToBuffer1_FromDeckIndex ldh a, [hTempCardIndex_ff98] call PutHandCardInPlayArea + + ; update the Pokemon's HP with the difference ldh a, [hTempPlayAreaLocationOffset_ff9d] - ld a, e + ld a, e ; derp add DUELVARS_ARENA_CARD_HP call GetTurnDuelistVariable ld a, [wLoadedCard2HP] @@ -3465,8 +3560,9 @@ Func_13a2: ; 13a2 (0:13a2) sub c add [hl] ld [hl], a + ; reset status (if in arena) and set the flag that prevents it from evolving again this turn ld a, e - add $c2 + add DUELVARS_ARENA_CARD_FLAGS_C2 ld l, a ld [hl], $00 ld a, e @@ -3476,18 +3572,25 @@ Func_13a2: ; 13a2 (0:13a2) ld a, e or a call z, ResetStatusConditions + + ; set the new evolution stage of the card ldh a, [hTempPlayAreaLocationOffset_ff9d] add DUELVARS_ARENA_CARD_STAGE call GetTurnDuelistVariable ld a, [wLoadedCard1Stage] ld [hl], a or a - ret ; ! + ret + scf ret ; 0x13f7 -Func_13f7: ; 13f7 (0:13f7) +; check if the turn holder's Pokemon card e can evolve into the turn holder's Pokemon card d. +; e is the play area location offset (PLAY_AREA_*) of the Pokemon trying to evolve. +; d is the deck index (0-59) of the Pokemon card that was selected to be the evolution target. +; return carry if can't evolve, plus nz if the reason for it is the card was played this turn. +CheckIfCanEvolveInto: ; 13f7 (0:13f7) push de ld a, e add DUELVARS_ARENA_CARD @@ -3496,43 +3599,45 @@ Func_13f7: ; 13f7 (0:13f7) ld a, d call LoadCardDataToBuffer1_FromDeckIndex ld hl, wLoadedCard2Name - ld de, wLoadedCard1NonPokemonDescription + ld de, wLoadedCard1PreEvoName ld a, [de] cp [hl] - jr nz, .asm_1427 + jr nz, .cant_evolve ; jump if they are incompatible to evolve inc de inc hl ld a, [de] cp [hl] - jr nz, .asm_1427 + jr nz, .cant_evolve ; jump if they are incompatible to evolve pop de ld a, e - add $c2 + add DUELVARS_ARENA_CARD_FLAGS_C2 call GetTurnDuelistVariable - and $80 - jr nz, .asm_1425 + and CAN_EVOLVE_THIS_TURN + jr nz, .can_evolve + ; if the card trying to evolve was played this turn, it can't evolve ld a, $01 or a scf ret -.asm_1425 +.can_evolve or a ret -.asm_1427 +.cant_evolve pop de xor a scf ret ; 0x142b +; similar to CheckIfCanEvolveInto, but with the twist of calling Func_2ecd Func_142b: ; 142b (0:142b) ld a, e - add $c2 + add DUELVARS_ARENA_CARD_FLAGS_C2 call GetTurnDuelistVariable - and $80 - jr nz, .asm_1437 - jr .asm_145e -.asm_1437 + and CAN_EVOLVE_THIS_TURN + jr nz, .can_evolve + jr .cant_evolve +.can_evolve ld a, e add DUELVARS_ARENA_CARD ld l, a @@ -3540,24 +3645,24 @@ Func_142b: ; 142b (0:142b) call LoadCardDataToBuffer2_FromDeckIndex ld a, d call LoadCardDataToBuffer1_FromDeckIndex - ld hl, wLoadedCard1NonPokemonDescription + ld hl, wLoadedCard1PreEvoName ld e, [hl] inc hl ld d, [hl] call $2ecd ld hl, wLoadedCard2Name - ld de, wLoadedCard1NonPokemonDescription + ld de, wLoadedCard1PreEvoName ld a, [de] cp [hl] - jr nz, .asm_145e + jr nz, .cant_evolve inc de inc hl ld a, [de] cp [hl] - jr nz, .asm_145e + jr nz, .cant_evolve or a ret -.asm_145e +.cant_evolve xor a scf ret @@ -3572,7 +3677,7 @@ ResetStatusConditions: ; 1461 (0:1461) ld h, a xor a ld l, DUELVARS_ARENA_CARD_STATUS - ld [hl], a + ld [hl], a ; NO_STATUS ld l, DUELVARS_ARENA_CARD_SUBSTATUS1 ld [hl], a ld l, DUELVARS_ARENA_CARD_SUBSTATUS2 @@ -3603,7 +3708,7 @@ ResetStatusConditions: ; 1461 (0:1461) ; return carry if there is no room for more Pokemon PutHandPokemonCardInPlayArea: ; 1485 (0:1485) push af - ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY + ld a, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA call GetTurnDuelistVariable cp MAX_PLAY_AREA_POKEMON jr nc, .already_max_pkmn_in_play @@ -3623,7 +3728,7 @@ PutHandPokemonCardInPlayArea: ; 1485 (0:1485) ld l, a ld a, [wLoadedCard2HP] ld [hl], a ; set card's HP - ld a, $c2 + ld a, DUELVARS_ARENA_CARD_FLAGS_C2 add e ld l, a ld [hl], $0 @@ -3631,11 +3736,11 @@ PutHandPokemonCardInPlayArea: ; 1485 (0:1485) add e ld l, a ld [hl], $0 - ld a, $e0 + ld a, DUELVARS_ARENA_CARD_ATTACHED_PLUSPOWER add e ld l, a ld [hl], $0 - ld a, $da + ld a, DUELVARS_ARENA_CARD_ATTACHED_DEFENDER add e ld l, a ld [hl], $0 @@ -3677,7 +3782,7 @@ PutHandCardInPlayArea: ; 14d2 (0:14d2) ; to the discard pile MovePlayAreaCardToDiscardPile: ; 14dd (0:14dd) call EmptyPlayAreaSlot - ld l, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY + ld l, DUELVARS_NUMBER_OF_POKEMON_IN_PLAY_AREA dec [hl] ld l, DUELVARS_CARD_LOCATIONS .next_card @@ -3712,9 +3817,9 @@ EmptyPlayAreaSlot: ; 14f8 (0:14f8) call .init_duelvar ld a, DUELVARS_ARENA_CARD_CHANGED_TYPE call .init_duelvar - ld a, $da + ld a, DUELVARS_ARENA_CARD_ATTACHED_DEFENDER call .init_duelvar - ld a, $e0 + ld a, DUELVARS_ARENA_CARD_ATTACHED_PLUSPOWER .init_duelvar add e ld l, a @@ -3776,15 +3881,15 @@ SwapPlayAreaPokemon: ; 1548 (0:1548) call .swap_duelvar ld a, DUELVARS_ARENA_CARD_HP call .swap_duelvar - ld a, $c2 + ld a, DUELVARS_ARENA_CARD_FLAGS_C2 call .swap_duelvar ld a, DUELVARS_ARENA_CARD_STAGE call .swap_duelvar ld a, DUELVARS_ARENA_CARD_CHANGED_TYPE call .swap_duelvar - ld a, $e0 + ld a, DUELVARS_ARENA_CARD_ATTACHED_PLUSPOWER call .swap_duelvar - ld a, $da + ld a, DUELVARS_ARENA_CARD_ATTACHED_DEFENDER call .swap_duelvar set CARD_LOCATION_PLAY_AREA_F, d set CARD_LOCATION_PLAY_AREA_F, e @@ -3997,7 +4102,7 @@ Func_161e: ; 161e (0:161e) ld a, $07 call CheckMatchingCommand ret c ; return if command not found - bank1call $4f9d + bank1call DrawDuelMainScene ldh a, [hTempCardIndex_ff9f] call LoadCardDataToBuffer1_FromDeckIndex ld de, wLoadedCard1Name @@ -4178,11 +4283,11 @@ Func_1730: ; 1730 (0:1730) call SubstractHP ld a, [wcac2] cp $1 - jr nz, .asm_17e8 + jr nz, .skip_draw_huds push hl - bank1call $503a + bank1call DrawDuelHUDs pop hl -.asm_17e8 +.skip_draw_huds call PrintKnockedOutIfHLZero jr Func_17fb @@ -4227,7 +4332,7 @@ Func_1823: ; 1823 (0:1823) ret DealConfusionDamageToSelf: ; 1828 (0:1828) - bank1call $4f9d + bank1call DrawDuelMainScene ld a, $1 ld [wDamageToSelfMode], a ldtx hl, DamageToSelfDueToConfusionText @@ -4265,7 +4370,7 @@ Func_1874: ; 1874 (0:1874) ld a, [wccec] or a ret nz - ldh a, [hffa0] + ldh a, [hTemp_ffa0] push af ldh a, [hTempCardIndex_ff9f] push af @@ -4274,14 +4379,14 @@ Func_1874: ; 1874 (0:1874) ld a, [wcc11] ldh [hTempCardIndex_ff9f], a ld a, [wcc10] - ldh [hffa0], a + ldh [hTemp_ffa0], a ld a, $8 call SetDuelAIAction call Func_0f58 pop af ldh [hTempCardIndex_ff9f], a pop af - ldh [hffa0], a + ldh [hTemp_ffa0], a ret Func_189d: ; 189d (0:189d) @@ -4310,17 +4415,17 @@ Func_189d: ; 189d (0:189d) call SwapTurn pop de ret nc - bank1call $4f9d + bank1call DrawDuelMainScene ld a, DUELVARS_ARENA_CARD_SUBSTATUS2 call GetNonTurnDuelistVariable ld [hl], $0 ld de, 0 ret -; return carry and 1 into wccc9 if damage is dealt to oneself due to confusion +; return carry and 1 into wGotHeadsFromConfusionCheck if damage will be dealt to oneself due to confusion CheckSelfConfusionDamage: ; 18d7 (0:18d7) xor a - ld [wccc9], a + ld [wGotHeadsFromConfusionCheck], a ld a, DUELVARS_ARENA_CARD_STATUS call GetTurnDuelistVariable and CNF_SLP_PRZ @@ -4333,7 +4438,7 @@ CheckSelfConfusionDamage: ; 18d7 (0:18d7) call TossCoin jr c, .no_confusion_damage ld a, $1 - ld [wccc9], a + ld [wGotHeadsFromConfusionCheck], a scf ret .no_confusion_damage @@ -4341,8 +4446,9 @@ CheckSelfConfusionDamage: ; 18d7 (0:18d7) ret ; 0x18f9 -; use the trainer card with deck index at hTempCardIndex_ff98 -; a trainer card is like a move effect, with its own effect commands +; use the trainer card with deck index at hTempCardIndex_ff98. +; a trainer card is like a move effect, with its own effect commands. +; return nc if the card was played, carry if it wasn't. UseTrainerCard: ; 18f9 (0:18f9) call CheckCantUseTrainerDueToHeadache jr c, .cant_use @@ -4762,12 +4868,12 @@ Func_1af3: ; 1af3 (0:1af3) ; 0x1b8d Func_1b8d: ; 1b8d (0:1b8d) - bank1call $4f9d + bank1call DrawDuelMainScene ld a, DUELVARS_ARENA_CARD call GetTurnDuelistVariable call LoadCardDataToBuffer1_FromDeckIndex - ld a, $12 - call Func_29f5 + ld a, 18 + call CopyCardNameAndLevel ld [hl], $0 ld hl, wTxRam2 xor a @@ -4783,7 +4889,7 @@ Func_1b8d: ; 1b8d (0:1b8d) Func_1bb4: ; 1bb4 (0:1bb4) call Func_3b31 - bank1call $4f9d + bank1call DrawDuelMainScene call $503a xor a ldh [hTempPlayAreaLocationOffset_ff9d], a @@ -4802,8 +4908,8 @@ Func_1bca: ; 1bca (0:1bca) add DUELVARS_ARENA_CARD call GetTurnDuelistVariable call LoadCardDataToBuffer1_FromDeckIndex - ld a, $12 - call Func_29f5 + ld a, 18 + call CopyCardNameAndLevel ld [hl], $0 ld hl, $0000 call LoadTxRam2 @@ -4949,7 +5055,7 @@ CopyPlayerName: ; 1c7d (0:1c7d) call DisableSRAM ret -; copy the opponent's name to de (usually via PrintTextBoxBorderLabel) +; copy the opponent's name to de (usually via CopyText) CopyOpponentName: ; 1c8e (0:1c8e) ld hl, wOpponentName ld a, [hli] @@ -4958,7 +5064,7 @@ CopyOpponentName: ; 1c8e (0:1c8e) ld a, [hld] ld l, [hl] ld h, a - jp PrintTextBoxBorderLabel + jp CopyText .special_name ld hl, wc500 ld a, [hl] @@ -4967,7 +5073,7 @@ CopyOpponentName: ; 1c8e (0:1c8e) jr CopyPlayerName.loop .print_player2 ldtx hl, Player2Text - jp PrintTextBoxBorderLabel + jp CopyText ; return, in hl, the total amount of cards owned anywhere, including duplicates GetRawAmountOfCardsOwned: ; 1caa (0:1caa) @@ -5215,7 +5321,7 @@ SafeCopyDataDEtoHL: ; 1dca (0:1dca) .lcd_on jp HblankCopyDataDEtoHL -; returns v*BGMapTiles1 + BG_MAP_WIDTH * e + d in hl. +; returns v*BGMap0 + BG_MAP_WIDTH * e + d in hl. ; used to map coordinates at de to a BGMap0 address. DECoordToBGMap0Address: ; 1ddb (0:1ddb) ld l, e @@ -5229,7 +5335,7 @@ DECoordToBGMap0Address: ; 1ddb (0:1ddb) add d ld l, a ld a, h - adc HIGH(v0BGMapTiles1) + adc HIGH(v0BGMap0) ld h, a ret @@ -5264,7 +5370,7 @@ DrawLabeledTextBox: ; 1e00 (0:1e00) or a jr z, .draw_top_border ; Console is SGB and frame type is != 0. -; The text box will be colorized so a SGB command needs to be transferred +; The text box will be colorized so a SGB command needs to be sent push de push bc call .draw_top_border ; this falls through to drawing the whole box @@ -5277,7 +5383,7 @@ DrawLabeledTextBox: ; 1e00 (0:1e00) push bc push hl ; top left tile of the box - ld hl, wTempCardCollection + ld hl, wc000 ld a, $5 ld [hli], a ld a, $18 @@ -5285,10 +5391,11 @@ DrawLabeledTextBox: ; 1e00 (0:1e00) ; white tile before the text ld a, $70 ld [hli], a + ; text label ld e, l ld d, h pop hl - call PrintTextBoxBorderLabel + call CopyText ld hl, $c003 call Func_23c1 ld l, e @@ -5324,7 +5431,7 @@ DrawLabeledTextBox: ; 1e00 (0:1e00) push de push bc call Func_22ae - ld hl, wTempCardCollection + ld hl, wc000 call Func_21c5 pop bc pop de @@ -5433,7 +5540,7 @@ ContinueDrawingTextBoxCGB: call CopyLine pop hl call BankswitchVRAM1 - ld a, [wTextBoxFrameType] + ld a, [wTextBoxFrameType] ; on CGB, wTextBoxFrameType determines the palette and the other attributes ld e, a ld d, a xor a @@ -5568,78 +5675,115 @@ FillRectangle: ; 1f5f (0:1f5f) ret ; 0x1f96 - INCROM $1f96, $20b0 + INCROM $1f96, $208d -Func_20b0: ; 20b0 (0:20b0) - ld hl, DuelGraphics + $680 - $4000 +; loads the Deck and Hand icons for the "Draw X card(s) from the deck." screen +LoadDuelDrawCardsScreenTiles: ; 208d (0:208d) + ld hl, DuelOtherGraphics + $29 tiles + ld de, v0Tiles1 + $74 tiles + ld b, $08 + jp CopyFontsOrDuelGraphicsTiles +; 0x2098 + +; loads the 8 tiles that make up the border of the main duel menu as well as the border +; of a large card picture (displayed after drawing the card or placing it in the arena). +LoadCardOrDuelMenuBorderTiles: ; 2098 (0:2098) + ld hl, DuelOtherGraphics + $15 tiles + ld de, v0Tiles1 + $50 tiles + ld b, $08 + jr CopyFontsOrDuelGraphicsTiles +; 0x20a2 + +; loads the graphics of a card type header, used to display a picture of a card after drawing it +; or placing it in the arena. register e determines which header (TRAINER, ENERGY, PoKéMoN) +LoadCardTypeHeaderTiles: ; 20a2 (0:20a2) + ld d, a + ld e, 0 + ld hl, DuelCardHeaderGraphics - $4000 + add hl, de + ld de, v0Tiles1 + $60 tiles + ld b, $10 + jr CopyFontsOrDuelGraphicsTiles +; 0x20b0 + +; loads the symbols that are displayed near the names of a list of cards in the hand or discard pile +LoadDuelCardSymbolTiles: ; 20b0 (0:20b0) + ld hl, DuelDmgSgbSymbolGraphics - $4000 ld a, [wConsole] cp CONSOLE_CGB - jr nz, .asm_20bd - ld hl, DuelGraphics + $e90 - $4000 -.asm_20bd - ld de, v0Tiles1 + $500 + jr nz, .copy + ld hl, DuelCgbSymbolGraphics - $4000 +.copy + ld de, v0Tiles1 + $50 tiles ld b, $30 jr CopyFontsOrDuelGraphicsTiles -Func_20c4: ; 20c4 (0:20c4) - ld hl, DuelGraphics + $6c0 - $4000 +; loads the symbols for Stage 1 Pkmn card, Stage 2 Pkmn card, and Trainer card +LoadDuelCardSymbolTiles2: ; 20c4 (0:20c4) + ld hl, DuelDmgSgbSymbolGraphics + $4 tiles - $4000 ld a, [wConsole] cp CONSOLE_CGB jr nz, .copy - ld hl, DuelGraphics + $ed0 - $4000 + ld hl, DuelCgbSymbolGraphics + $4 tiles - $4000 .copy - ld de, v0Tiles1 + $540 + ld de, v0Tiles1 + $54 tiles ld b, $c jr CopyFontsOrDuelGraphicsTiles -Func_20d8: ; 20d8 (0:20d8) +; load the face down stage0 / stage1 / stage2 card images shown in the ckeck Pokemon screens +LoadDuelFaceDownCardTiles: ; 20d8 (0:20d8) ld b, $10 - jr Func_20dc.asm_20de + jr LoadDuelCheckPokemonScreenTiles.got_num_tiles -Func_20dc: ; 20dc (0:20dc) +; same as LoadDuelFaceDownCardTiles, plus also load the ACT / BP text tiles +LoadDuelCheckPokemonScreenTiles: ; 20dc (0:20dc) ld b, $24 -.asm_20de - ld hl, DuelGraphics + $980 - $4000 +.got_num_tiles + ld hl, DuelDmgSgbSymbolGraphics + $30 tiles - $4000 ld a, [wConsole] cp CONSOLE_CGB jr nz, .copy - ld hl, DuelGraphics + $1190 - $4000 + ld hl, DuelCgbSymbolGraphics + $30 tiles - $4000 .copy - ld de, v0Tiles1 + $500 + ld de, v0Tiles1 + $50 tiles jr CopyFontsOrDuelGraphicsTiles -Func_20f0: ; 20f0 (0:20f0) - ld hl, Fonts + $8 - ld de, v0Tiles1 + $200 +; load the tiles for the "Placing the prizes..." screen +LoadPlacingThePrizesScreenTiles: ; 20f0 (0:20f0) + ; load the Pokeball field tiles + ld hl, DuelOtherGraphics + ld de, v0Tiles1 + $20 tiles ld b, $d call CopyFontsOrDuelGraphicsTiles - ld hl, DuelGraphics + $bc0 - $4000 + ; load the Deck and the Discard Pile icons + ld hl, DuelDmgSgbSymbolGraphics + $54 tiles - $4000 ld a, [wConsole] cp CONSOLE_CGB jr nz, .copy - ld hl, DuelGraphics + $13d0 - $4000 + ld hl, DuelCgbSymbolGraphics + $54 tiles - $4000 .copy - ld de, v0Tiles1 + $500 + ld de, v0Tiles1 + $50 tiles ld b, $30 jr CopyFontsOrDuelGraphicsTiles -Func_210f: ; 210f (0:210f) - ld hl, DuelGraphics + $1770 - $4000 - ld de, v0Tiles2 + $300 +; load the tiles for the [O] and [X] symbols used to display the results of a coin toss +LoadDuelCoinTossResultTiles: ; 210f (0:210f) + ld hl, DuelOtherGraphics + $d tiles + ld de, v0Tiles2 + $30 tiles ld b, $8 jr CopyFontsOrDuelGraphicsTiles -Func_2119: ; 2119 (0:2119) - ld hl, DuelGraphics - $4000 +LoadDuelHUDTiles: ; 2119 (0:2119) + ld hl, DuelHUDGraphics - $4000 ld de, v0Tiles2 ; destination - ld b, $38 ; number of tiles + ld b, (DuelCardHeaderGraphics - DuelHUDGraphics) / TILE_SIZE ; number of tiles ; fallthrough ; if hl ≤ $3fff ; copy b tiles from Gfx1:(hl+$4000) to de ; if $4000 ≤ hl ≤ $7fff ; copy b tiles from Gfx2:hl to de -CopyFontsOrDuelGraphicsTiles: +CopyFontsOrDuelGraphicsTiles: ; 2121 (0:2121) ld a, BANK(Fonts); BANK(DuelGraphics); BANK(VWF) call BankpushHome ld c, TILE_SIZE @@ -5650,11 +5794,11 @@ CopyFontsOrDuelGraphicsTiles: ; this function appears to copy duel gfx data into sram Func_212f: ; 212f (0:212f) - ld hl, DuelGraphics - $4000 + ld hl, DuelHUDGraphics - $4000 ld de, $a400 ld b, $30 call CopyFontsOrDuelGraphicsTiles - ld hl, DuelGraphics + $17f0 - $4000 + ld hl, DuelOtherGraphics + $150 ld de, $a700 ld b, $08 call CopyFontsOrDuelGraphicsTiles @@ -5666,12 +5810,12 @@ Func_212f: ; 212f (0:212f) add hl, hl add hl, hl add hl, hl - ld de, DuelGraphics + $680 - $4000 + ld de, DuelDmgSgbSymbolGraphics - $4000 add hl, de ld de, $a780 ld b, $04 call CopyFontsOrDuelGraphicsTiles - ld hl, DuelGraphics + $680 - $4000 + ld hl, DuelDmgSgbSymbolGraphics - $4000 ld de, $b100 ld b, $30 jr CopyFontsOrDuelGraphicsTiles @@ -5679,7 +5823,7 @@ Func_212f: ; 212f (0:212f) DrawDuelBoxMessage: ; 2167 (0:2167) ld l, a - ld h, (40 * TILE_SIZE) / 4 ; boxes are 10x4 tiles + ld h, (40 tiles) / 4 ; boxes are 10x4 tiles call HtimesL add hl, hl add hl, hl @@ -5738,9 +5882,9 @@ Func_21f2: ; 21f2 (0:21f2) jr z, .asm_2221 cp $a jr z, .asm_224d - cp $5 + cp TX_SYMBOL jr z, .asm_2225 - cp $6 + cp TX_START jr z, .asm_220f cp $7 jr z, .asm_2215 @@ -5834,6 +5978,10 @@ Func_2275: ; 2275 (0:2275) jr nz, .asm_2292 ret +; wcd0a <- 0 +; hffac <- 0 +; wcd0b <- 0 +; hffaf <- $f Func_2298: ; 2298 (0:2298) xor a ld [wcd0a], a @@ -5843,6 +5991,8 @@ Func_2298: ; 2298 (0:2298) ldh [hffaf], a ret +; Func_22ae +; hffae <- a Func_22a6: ; 22a6 (0:22a6) push af call Func_22ae @@ -5850,6 +6000,13 @@ Func_22a6: ; 22a6 (0:22a6) ldh [hffae], a ret +; hffad <- d +; hffae <- 0 +; wcd09 <- 0 +; hffaa <- BGMap0(e) +; hffab <- BGMap0(d) +; Func_2298 +;; writes BGMap0-translated DE to (hffab,hffaa) Func_22ae: ; 22ae (0:22ae) push hl ld a, d @@ -5895,6 +6052,11 @@ Func_22ca: ; 22ca (0:22ca) call Func_235e jr .asm_22e9 +; wcd05 <- a +; &(hffab,hffaa) <- a +; (hffab,hffaa) ++ +; hffac ++ +;; writes a to addr pointed to by (hffab,hffaa), then increments (hffab,hffaa) and hffac Func_22f2: ; 22f2 (0:22f2) ld [wcd05], a ld hl, hffaa @@ -6051,13 +6213,13 @@ Uppercase: ; 23b1 (0:23b1) ret c cp $7b ret nc - sub $20 + sub "a" - "A" ld e, a ret Func_23c1: ; 23c1 (0:23c1) ld a, [hl] - cp $6 + cp TX_START jr nz, .asm_23cf call Func_23d3 inc b @@ -6081,7 +6243,7 @@ Func_23d3: ; 23d3 (0:23d3) jr c, .asm_23ec cp $10 jr nc, .asm_23ec - cp $5 + cp TX_SYMBOL jr nz, .asm_23d8 inc b jr .asm_23f4 @@ -6105,51 +6267,53 @@ Func_23d3: ; 23d3 (0:23d3) INCROM $23fd, $245d -Func_245d: ; 245d (0:245d) +; convert the number at hl to TX_SYMBOL text format and write it to wcaa0 +; replace leading zeros with $00 +TwoByteNumberToLargeText_TrimLeadingZeros: ; 245d (0:245d) push de push bc ld de, wcaa0 push de - ld bc, $d8f0 - call Func_2499 - ld bc, $fc18 - call Func_2499 - ld bc, $ff9c - call Func_2499 - ld bc, $fff6 - call Func_2499 - ld bc, $ffff - call Func_2499 + ld bc, -10000 + call .get_digit + ld bc, -1000 + call .get_digit + ld bc, -100 + call .get_digit + ld bc, -10 + call .get_digit + ld bc, -1 + call .get_digit xor a ld [de], a pop hl - ld e, $5 -.asm_2486 + ld e, 5 +.digit_loop inc hl ld a, [hl] - cp $20 - jr nz, .asm_2495 - ld [hl], $0 + cp LOW("<0>") + jr nz, .done ; jump if not zero + ld [hl], LOW("< >") ; trim leading zero inc hl dec e - jr nz, .asm_2486 + jr nz, .digit_loop dec hl - ld [hl], $20 -.asm_2495 + ld [hl], LOW("<0>") +.done dec hl pop bc pop de ret -Func_2499: ; 2499 (0:2499) - ld a, $5 +.get_digit + ld a, TX_SYMBOL ld [de], a inc de - ld a, $1f -.asm_249f + ld a, LOW("<0>") - 1 +.substract_loop inc a add hl, bc - jr c, .asm_249f + jr c, .substract_loop ld [de], a inc de ld a, l @@ -6323,14 +6487,66 @@ Func_256d: ; 256d (0:256d) ret ; 0x2589 - INCROM $2589, $2636 + INCROM $2589, $25ea -; initializes cursor parameters given the 8 bytes starting at hl, +; initializes parameters for a card list (e.g. list of hand cards in a duel or booster pack cards) +; input: a = list length, de = initial page scroll offset, initial item (in the visible page) +; hl: 9 bytes with the rest of the parameters +InitializeCardListParameters: ; 25ea (0:25ea) + ld [wNumListItems], a + ld a, d + ld [wListScrollOffset], a + ld a, e + ld [wCurMenuItem], a + add d + ldh [hCurrentMenuItem], a + ld a, [hli] + ld [wCursorXPosition], a + ld a, [hli] + ld [wCursorYPosition], a + ld a, [hli] + ld [wListItemXPosition], a + ld a, [hli] + ld [wcd1c], a + ld a, [hli] + ld [wNumMenuItems], a + ld a, [hli] + ld [wCursorTileNumber], a + ld a, [hli] + ld [wTileBehindCursor], a + ld a, [hli] + ld [wListFunctionPointer], a + ld a, [hli] + ld [wListFunctionPointer + 1], a + xor a + ld [wCursorBlinkCounter], a + ld a, 1 + ld [wYDisplacementBetweenMenuItems], a + ret +; 0x2626 + +; similar to HandleMenuInput, but conveniently returns parameters related +; to the state of the list in a, d, and e if A or B were pressed. +; also returns carry if A or B were pressed, nc otherwise. +; used in the Hand card list and Discard Pile card list screens. +HandleCardListInput: ; 2626 (0:2626) + call HandleMenuInput + ret nc + ld a, [wListScrollOffset] + ld d, a + ld a, [wCurMenuItem] + ld e, a + ldh a, [hCurrentMenuItem] + scf + ret +; 0x2636 + +; initializes parameters for a menu, given the 8 bytes starting at hl, ; which represent the following: -; x coord, y coord, y displacement between items, number of items, -; cursor tile number, tile behind cursor, ???? (unknown function pointer if non-0) +; cursor x coord, cursor y coord, y displacement between items, number of items, +; cursor tile number, tile behind cursor, function pointer if non-0. ; also sets the current menu item to the one specified in register a -InitializeCursorParameters: ; 2636 (0:2636) +InitializeMenuParameters: ; 2636 (0:2636) ld [wCurMenuItem], a ldh [hCurrentMenuItem], a ld de, wCursorXPosition @@ -6384,7 +6600,7 @@ HandleMenuInput: ; 264b (0:264b) .up_down_done ld a, [wCurMenuItem] ldh [hCurrentMenuItem], a - ld hl, wcd17 + ld hl, wMenuFunctionPointer ; call the function if non-0 (periodically) ld a, [hli] or [hl] jr z, .check_A_or_B @@ -6419,7 +6635,7 @@ HandleMenuInput: ; 264b (0:264b) ret ; plays an "open screen" sound if [hCurrentMenuItem] != 0xff -; plays a "exit screen" sound if [hCurrentMenuItem] == 0xff +; plays an "exit screen" sound if [hCurrentMenuItem] == 0xff PlayOpenOrExitScreenSFX: ; 26c0 (0:26c0) push af ldh a, [hCurrentMenuItem] @@ -6469,7 +6685,7 @@ DrawCursor: ld a, c ld c, e ld b, d - call Func_06c3 + call WriteByteToBGMap0 or a ret @@ -6485,35 +6701,41 @@ SetMenuItem: ; 2710 (0:2710) ld [wCursorBlinkCounter], a ret -Func_271a: ; 271a (0:271a) +; handle input for the 2-row 3-column duel menu. +; only handles input not involving the B, START, or SELECT buttons, that is, +; navigating through the menu or selecting an item with the A button. +; other input in handled by HandleDuelMenuInputAndShortcuts. +HandleDuelMenuInput: ; 271a (0:271a) ldh a, [hButtonsPressed2] or a - jr z, .asm_2764 + jr z, .blink_cursor ld b, a ld hl, wCurMenuItem - and $c0 - jr z, .asm_272c + and D_UP | D_DOWN + jr z, .check_left ld a, [hl] - xor $1 - jr .asm_2748 -.asm_272c + xor 1 ; move to the other menu item in the same column + jr .dpad_pressed +.check_left bit D_LEFT_F, b - jr z, .asm_273b + jr z, .check_right ld a, [hl] - sub $2 - jr nc, .asm_2748 - and $1 - add $4 - jr .asm_2748 -.asm_273b + sub 2 + jr nc, .dpad_pressed + ; wrap to the rightmost item in the same row + and 1 + add 4 + jr .dpad_pressed +.check_right bit D_RIGHT_F, b - jr z, .asm_275d + jr z, .dpad_not_pressed ld a, [hl] - add $2 - cp $6 - jr c, .asm_2748 - and $1 -.asm_2748 + add 2 + cp 6 + jr c, .dpad_pressed + ; wrap to the leftmost item in the same row + and 1 +.dpad_pressed push af ld a, $1 call PlaySFX @@ -6523,12 +6745,13 @@ Func_271a: ; 271a (0:271a) ldh [hCurrentMenuItem], a xor a ld [wCursorBlinkCounter], a - jr .asm_2764 -.asm_275d + jr .blink_cursor +.dpad_not_pressed ldh a, [hButtonsPressed2] and A_BUTTON jp nz, HandleMenuInput.A_pressed -.asm_2764 +.blink_cursor + ; blink cursor every 16 frames ld hl, wCursorBlinkCounter ld a, [hl] inc [hl] @@ -6545,26 +6768,118 @@ Func_271a: ; 271a (0:271a) add a ld c, a ld b, $0 - ld hl, $278d + ld hl, DuelMenuCursorCoords add hl, bc ld b, [hl] inc hl ld c, [hl] ld a, e - call Func_06c3 + call WriteByteToBGMap0 ld a, [wCurMenuItem] ld e, a or a ret ; 0x278d - INCROM $278d, $2988 +DuelMenuCursorCoords: ; 278d (0:278d) + db 2, 14 ; Hand + db 2, 16 ; Attack + db 8, 14 ; Check + db 8, 16 ; Pkmn Power + db 14, 14 ; Retreat + db 14, 16 ; Done + +; print the items of a list of cards (hand cards in a duel, cards from a booster pack...) +; and initialize the parameters of the list +PrintCardListItems: ; 2799 (0:2799) + call InitializeCardListParameters + ld hl, wMenuFunctionPointer + ld a, LOW($283f) + ld [hli], a + ld a, HIGH($283f) + ld [hli], a + ld a, 2 + ld [wYDisplacementBetweenMenuItems], a + ld a, $01 + ld [wcd97], a + ld e, $00 + ld a, [wListScrollOffset] + or a + jr z, .asm_27b9 + ld e, $0c +.asm_27b9 + ld a, [wCursorYPosition] + dec a + ld c, a + ld b, 18 + ld a, e + call WriteByteToBGMap0 + ld e, $00 + ld a, [wListScrollOffset] + ld hl, wNumMenuItems + add [hl] + ld hl, wNumListItems + cp [hl] + jr nc, .asm_27d5 + ld e, $2f +.asm_27d5 + ld a, [wNumMenuItems] + add a + add c + dec a + ld c, a + ld a, e + call WriteByteToBGMap0 + ld a, [wListScrollOffset] + ld e, a + ld d, $00 + ld hl, wDuelTempList + add hl, de + ld a, [wNumMenuItems] + ld b, a + ld a, [wListItemXPosition] + ld d, a + ld a, [wCursorYPosition] + ld e, a + ld c, $00 +.asm_27f8 + ld a, [hl] + cp $ff + jr z, .asm_2826 + push hl + push bc + push de + call LoadCardDataToBuffer1_FromDeckIndex + call DrawCardSymbol + call Func_22ae + ld a, [wcd1c] + call CopyCardNameAndLevel + ld hl, wDefaultText + call Func_21c5 + pop de + pop bc + pop hl + inc hl + ld a, [wNumListItems] + dec a + inc c + cp c + jr c, .asm_2826 + inc e + inc e + dec b + jr nz, .asm_27f8 +.asm_2826 + ret +; 0x2827 + + INCROM $2827, $2988 CardTypeToSymbolID: ; 2988 (0:2988) ld a, [wLoadedCard1Type] cp TYPE_TRAINER jr nc, .trainer_card - cp TYPE_ENERGY_FIRE + cp TYPE_ENERGY jr c, .pokemon_card ; energy card and 7 ; convert energy constant to type constant @@ -6636,8 +6951,10 @@ CardSymbolTable: db $d8, $01 ; TYPE_PKMN_*, Stage 2 db $dc, $02 ; TYPE_TRAINER -Func_29f5: ; 29f5 (0:29f5) - farcall $6, $4000 +; copy the name and level of the card at wLoadedCard1 to wDefaultText +; a = string length in number of tiles (padded with spaces to fit) +CopyCardNameAndLevel: ; 29f5 (0:29f5) + farcall _CopyCardNameAndLevel ret ; 0x29fa @@ -6729,8 +7046,8 @@ DrawNarrowTextBox: ; 2a6f (0:2a6f) DrawNarrowTextBox_WaitForInput: ; 2a7c (0:2a7c) call DrawNarrowTextBox_PrintTextNoDelay xor a - ld hl, NarrowTextBoxPromptCursorData - call InitializeCursorParameters + ld hl, NarrowTextBoxMenuParameters + call InitializeMenuParameters call EnableLCD .wait_A_or_B_loop call DoFrame @@ -6740,13 +7057,13 @@ DrawNarrowTextBox_WaitForInput: ; 2a7c (0:2a7c) jr z, .wait_A_or_B_loop ret -NarrowTextBoxPromptCursorData: ; 2a96 (0:2a96) - db 10, 17 ; x, y +NarrowTextBoxMenuParameters: ; 2a96 (0:2a96) + db 10, 17 ; corsor x, cursor y db 1 ; y displacement between items db 1 ; number of items db $2f ; cursor tile number db $1d ; tile behind cursor - dw $0000 ; unknown function pointer if non-0 + dw $0000 ; function pointer if non-0 ; draws a 20x6 text box aligned to the bottom of the screen DrawWideTextBox: ; 2a9e (0:2a9e) @@ -6761,8 +7078,8 @@ DrawWideTextBox_WaitForInput: ; 2aab (0:2aab) ; fallthrough WaitForWideTextBoxInput: ; 2aae (0:2aae) xor a - ld hl, WideTextBoxPromptCursorData - call InitializeCursorParameters + ld hl, WideTextBoxMenuParameters + call InitializeMenuParameters call EnableLCD .wait_A_or_B_loop call DoFrame @@ -6773,13 +7090,13 @@ WaitForWideTextBoxInput: ; 2aae (0:2aae) call EraseCursor ret -WideTextBoxPromptCursorData: ; 2ac8 (0:2ac8) - db 18, 17 ; x, y +WideTextBoxMenuParameters: ; 2ac8 (0:2ac8) + db 18, 17 ; cursor x, cursor y db 1 ; y displacement between items db 1 ; number of items db $2f ; cursor tile number db $1d ; tile behind cursor - dw $0000 ; unknown function pointer if non-0 + dw $0000 ; function pointer if non-0 TwoItemHorizontalMenu: ; 2ad0 (0:2ad0) call DrawWideTextBox_PrintText @@ -6865,7 +7182,7 @@ HandleYesOrNoMenu: .no xor a ld [wcd9a], a ; 0 - ld a, $1 + ld a, 1 ldh [hCurrentMenuItem], a scf ret @@ -6950,7 +7267,7 @@ Func_2bc7: ; 2bc7 (0:2bc7) Func_2bcf: ; 2bcf (0:2bcf) ld a, $4 call Func_2bdb - ldh [hffa0], a + ldh [hTemp_ffa0], a ret Func_2bd7: ; 2bd7 (0:2bd7) @@ -7027,7 +7344,52 @@ Func_2c29: ; 2c29 (0:2c29) ret ; 0x2c37 - INCROM $2c37, $2c73 +Func_2c37: ; 2c37 (0:2c37) + push hl + push de + push bc + ldh a, [hBankROM] + push af + call ReadTextOffset + ld c, $00 +.char_loop + ld a, [hli] + or a ; TX_END + jr z, .end + cp $10 + jr nc, .char_loop + cp TX_START + jr c, .skip + cp "\n" + jr nz, .char_loop + inc c + jr .char_loop +.skip + inc hl + jr .char_loop +.end + pop af + call BankswitchHome + ld a, c + inc a + pop bc + pop de + pop hl + ret +; 0x2c62 + +Func_2c62: ; 2c62 (0:2c62) + call .asm_2c67 + jr Func_2c77 +.asm_2c67 + push hl + ld hl, wce4c + ld [hl], e + inc hl + ld [hl], d + pop hl + ld a, $01 + jr Func_2c84 Func_2c73: ; 2c73 (0:2c73) xor a @@ -7161,9 +7523,9 @@ Func_2d15: ; 2d15 (0:2d15) Func_2d43: ; 2d43 (0:2d43) call Func_2cf3 ld a, [hli] - or a + or a ; TX_END jr z, .asm_2d79 - cp $5 + cp TX_SYMBOL jr c, .asm_2d65 cp $10 jr nc, .asm_2d65 @@ -7225,7 +7587,7 @@ Func_2d43: ; 2d43 (0:2d43) ld de, wTxRam3 ld hl, wce4a call Func_2de0 - call Func_2e12 + call TwoByteNumberToText_CountLeadingZeros call Func_2cd7 jp Func_2d43 .tx_ram1 @@ -7286,22 +7648,24 @@ ReadTextOffset: ; 2ded (0:2ded) pop de ret -Func_2e12: ; 2e12 (0:2e12) +; convert the number at hl to text (ascii) format and write it to wcaa0 +; return c = 4 - leading_zeros +TwoByteNumberToText_CountLeadingZeros: ; 2e12 (0:2e12) ld a, [wcd0a] or a - jp z, Func_245d + jp z, TwoByteNumberToLargeText_TrimLeadingZeros ld de, wcaa0 push de - call Func_0663 + call TwoByteNumberToText pop hl - ld c, $4 -.asm_2e23 + ld c, 4 +.digit_loop ld a, [hl] - cp $30 + cp "0" ret nz inc hl dec c - jr nz, .asm_2e23 + jr nz, .digit_loop ret ; copy the name of the duelist whose turn it is to de @@ -7370,11 +7734,9 @@ PrintTextNoDelay: ; 2e76 (0:2e76) call BankswitchHome ret -; Prints a name in the left side of the top border of a text box, usually to identify the talked-to NPC. -; input: - ; hl: text id - ; de: where to print the name -PrintTextBoxBorderLabel: ; 2e89 (0:2e89) +; copies a text given its id at hl, to de +; if hl is 0, the name of the turn duelist is copied instead +CopyText: ; 2e89 (0:2e89) ld a, l or h jr z, .special @@ -7552,8 +7914,10 @@ GetCardPointer: ; 2f7c (0:2f7c) pop de ret -; input: hl = card_gfx_index +; input: hl = card_gfx_index, de = where to load the card gfx to +; bc are supposed to be $30 and TILE_SIZE ; card_gfx_index = (<Name>CardGfx - CardGraphics) / 8 ; using absolute ROM addresses +; also copies the card's palette to wCardPalette LoadCardGfx: ; 2fa0 (0:2fa0) ldh a, [hBankROM] push af @@ -7574,7 +7938,7 @@ LoadCardGfx: ; 2fa0 (0:2fa0) set 6, h ; $4000 ≤ de ≤ $7fff call CopyGfxData ld b, CGB_PAL_SIZE - ld de, wce23 + ld de, wCardPalette .copy_card_palette ld a, [hli] ld [de], a @@ -8363,7 +8727,7 @@ HandleSandAttackOrSmokescreenSubstatus: ; 3400 (0:3400) call CheckSandAttackOrSmokescreenSubstatus ret nc call TossCoin - ld [wcc0a], a + ld [wGotHeadsFromSandAttackOrSmokescreenCheck], a ccf ret nc ldtx hl, AttackUnsuccessfulText @@ -8386,7 +8750,7 @@ CheckSandAttackOrSmokescreenSubstatus: ; 3414 (0:3414) or a ret .card_is_affected - ld a, [wcc0a] + ld a, [wGotHeadsFromSandAttackOrSmokescreenCheck] or a ret nz scf @@ -8678,7 +9042,7 @@ CheckCantUseTrainerDueToHeadache: ; 35a9 (0:35a9) ret ; 0x35b7 -; return carry if turn holder has Aerodactyl and its Prehistoric Power Pkmn Power is active +; return carry if any duelist has Aerodactyl and its Prehistoric Power Pkmn Power is active IsPrehistoricPowerActive: ; 35b7 (0:35b7) ld a, AERODACTYL call CountPokemonIDInBothPlayAreas @@ -9020,12 +9384,14 @@ PlaySong: ; 3785 (0:3785) farcall _PlaySong ret -Func_378a: ; 378a (0:378a) - farcall Func_f400f +; return a = 0: song finished, a = 1: song not finished +AssertSongFinished: ; 378a (0:378a) + farcall _AssertSongFinished ret -Func_378f: ; 378f (0:378f) - farcall Func_f4012 +; return a = 0: SFX finished, a = 1: SFX not finished +AssertSFXFinished: ; 378f (0:378f) + farcall _AssertSFXFinished ret Func_3794: ; 3794 (0:3794) @@ -9134,8 +9500,8 @@ GameEvent_BattleCenter: ; 38a3 (0:38a3) ld [wd0c2], a xor a ld [wd112], a - ld a, $ff - ld [wd0c3], a + ld a, -1 + ld [wDuelResult], a ld a, $2 ld [wDuelTheme], a ld a, MUSIC_CARD_POP @@ -9300,6 +9666,7 @@ Func_39a7: ; 39a7 (0:39a7) call Func_39ad ret +; return hl = wd34a + a * $c + l, a < $8 Func_39ad: ; 39ad (0:39ad) push bc cp $8 @@ -9369,7 +9736,7 @@ Func_39ea: ; 39ea (0:39ea) Func_39fc: ; 39fc (0:39fc) push hl push bc - call Func_378a + call AssertSongFinished or a push af call Func_3a1f @@ -9599,7 +9966,7 @@ Func_3b31: ; 3b31 (0:3b31) ld [wDoFrameFunction], a ld [wcad4], a .asm_3b45 - call InitSpritePositions + call ZeroObjectPositions ld a, $1 ld [wVBlankOAMCopyToggle], a pop af @@ -9780,7 +10147,7 @@ Func_3c87: ; 3c87 (0:3c87) Func_3c96: ; 3c96 (0:3c96) call DoFrameIfLCDEnabled - call Func_378a + call AssertSongFinished or a jr nz, Func_3c96 ret diff --git a/src/gfx.asm b/src/gfx.asm index 91c072a..475fd93 100644 --- a/src/gfx.asm +++ b/src/gfx.asm @@ -8,12 +8,26 @@ INCBIN "gfx/fonts.t3.1bpp" VWF:: ; 76668 (1d:6668) INCBIN "gfx/vwf.1bpp" -DuelGraphics:: ; 76968 (1d:6968) -INCBIN "gfx/duel/duel_graphics.t5.2bpp", $0, $1698 +DuelGraphics:: + +DuelHUDGraphics:: ; 76968 (1d:6968) +INCBIN "gfx/duel/hud.2bpp" + +DuelCardHeaderGraphics:: ; 76ce8 (1d:6ce8) +INCBIN "gfx/duel/card_headers.2bpp" + +DuelDmgSgbSymbolGraphics:: ; 76fe8 (1d:6fe8) +INCBIN "gfx/duel/dmg_sgb_symbols.t7.2bpp" + +DuelCgbSymbolGraphics:: ; 777f8 (1d:77f8) +INCBIN "gfx/duel/cgb_symbols.t7.2bpp", $0, $808 SECTION "Gfx 2", ROMX -INCBIN "gfx/duel/duel_graphics.t5.2bpp", $1698, $318 +INCBIN "gfx/duel/cgb_symbols.t7.2bpp", $808, $8 + +DuelOtherGraphics:: ; 78008 (1e:4008) +INCBIN "gfx/duel/other.t7.2bpp" DuelBoxMessages:: ; 78318 (1e:4318) INCBIN "gfx/duel/box_messages.2bpp" @@ -47,11 +61,11 @@ PlayerGfx: ; 87d7e (21:7d7e) Duel55Gfx: ; 87fc0 (21:7fc0) dw $2 - INCBIN "gfx/duel/55.2bpp" + INCBIN "gfx/duel/anims/55.2bpp" Duel56Gfx: ; 87fe2 (21:7fe2) dw $1 - INCBIN "gfx/duel/56.2bpp" + INCBIN "gfx/duel/anims/56.2bpp" INCROM $87ff4, $88000 @@ -95,7 +109,7 @@ OWSpritePlayer: ; 8be90 (22:7e90) Duel57Gfx: ; 8bfd2 (22:7fd2) dw $1 - INCBIN "gfx/duel/57.2bpp" + INCBIN "gfx/duel/anims/57.2bpp" INCROM $8bfe4, $8c000 @@ -160,7 +174,7 @@ NintendoGfx: ; 8fe22 (23:7e22) Duel58Gfx: ; 8ffa4 (23:7fa4) dw $4 - INCBIN "gfx/duel/58.2bpp" + INCBIN "gfx/duel/anims/58.2bpp" INCROM $8ffe6, $90000 @@ -216,11 +230,11 @@ HelpDeskLadyGfx: ; 93f26 (24:7f26) Duel59Gfx: ; 93fa8 (24:7fa8) dw $3 - INCBIN "gfx/duel/59.2bpp" + INCBIN "gfx/duel/anims/59.2bpp" Duel60Gfx: ; 93fda (24:7fda) dw $2 - INCBIN "gfx/duel/60.2bpp" + INCBIN "gfx/duel/anims/60.2bpp" rept $4 db $ff @@ -306,11 +320,11 @@ OverworldMapOAMGfx: ; 9bf3a (26:7f3a) Duel61Gfx: ; 9bfbc (26:7fbc) dw $3 - INCBIN "gfx/duel/61.2bpp" + INCBIN "gfx/duel/anims/61.2bpp" Duel62Gfx: ; 9bfee (26:7fee) dw $1 - INCBIN "gfx/duel/62.2bpp" + INCBIN "gfx/duel/anims/62.2bpp" SECTION "Gfx 9", ROMX @@ -428,11 +442,11 @@ MichaelGfx: ; 9fcf6 (27:7cf6) Duel63Gfx: ; 9ff38 (27:7f38) dw $a - INCBIN "gfx/duel/63.2bpp" + INCBIN "gfx/duel/anims/63.2bpp" Duel64Gfx: ; 9ffda (27:7fda) dw $2 - INCBIN "gfx/duel/64.2bpp" + INCBIN "gfx/duel/anims/64.2bpp" rept $4 db $ff @@ -606,11 +620,11 @@ OWSprite29: ; a3dc0 (28:7dc0) Duel65Gfx: ; a3f02 (28:7f02) dw $b - INCBIN "gfx/duel/65.2bpp" + INCBIN "gfx/duel/anims/65.2bpp" Duel66Gfx: ; a3fb4 (28:7fb4) dw $4 - INCBIN "gfx/duel/66.2bpp" + INCBIN "gfx/duel/anims/66.2bpp" INCROM $a3ff6, $a4000 @@ -630,187 +644,187 @@ OWSprite32: ; a4284 (29:4284) Duel0Gfx: ; a43c6 (29:43c6) dw $16 - INCBIN "gfx/duel/0.2bpp" + INCBIN "gfx/duel/anims/0.2bpp" Duel1Gfx: ; a4528 (29:4528) dw $06 - INCBIN "gfx/duel/1.2bpp" + INCBIN "gfx/duel/anims/1.2bpp" Duel2Gfx: ; a458a (29:458a) dw $08 - INCBIN "gfx/duel/2.2bpp" + INCBIN "gfx/duel/anims/2.2bpp" Duel3Gfx: ; a460c (29:460c) dw $09 - INCBIN "gfx/duel/3.2bpp" + INCBIN "gfx/duel/anims/3.2bpp" Duel4Gfx: ; a469e (29:469e) dw $12 - INCBIN "gfx/duel/4.2bpp" + INCBIN "gfx/duel/anims/4.2bpp" Duel5Gfx: ; a47c0 (29:47c0) dw $09 - INCBIN "gfx/duel/5.2bpp" + INCBIN "gfx/duel/anims/5.2bpp" Duel6Gfx: ; a4852 (29:4852) dw $11 - INCBIN "gfx/duel/6.2bpp" + INCBIN "gfx/duel/anims/6.2bpp" Duel7Gfx: ; a4964 (29:4964) dw $2d - INCBIN "gfx/duel/7.2bpp" + INCBIN "gfx/duel/anims/7.2bpp" Duel8Gfx: ; a4c36 (29:4c36) dw $0d - INCBIN "gfx/duel/8.2bpp" + INCBIN "gfx/duel/anims/8.2bpp" Duel9Gfx: ; a4d08 (29:4d08) dw $1c - INCBIN "gfx/duel/9.2bpp" + INCBIN "gfx/duel/anims/9.2bpp" Duel10Gfx: ; a4eca (29:4eca) dw $4c - INCBIN "gfx/duel/10.2bpp" + INCBIN "gfx/duel/anims/10.2bpp" Duel11Gfx: ; a538c (29:538c) dw $1b - INCBIN "gfx/duel/11.2bpp" + INCBIN "gfx/duel/anims/11.2bpp" Duel12Gfx: ; a553e (29:553e) dw $07 - INCBIN "gfx/duel/12.2bpp" + INCBIN "gfx/duel/anims/12.2bpp" Duel13Gfx: ; a55b0 (29:55b0) dw $0c - INCBIN "gfx/duel/13.2bpp" + INCBIN "gfx/duel/anims/13.2bpp" Duel14Gfx: ; a5672 (29:5672) dw $22 - INCBIN "gfx/duel/14.2bpp" + INCBIN "gfx/duel/anims/14.2bpp" Duel15Gfx: ; a5894 (29:5894) dw $20 - INCBIN "gfx/duel/15.2bpp" + INCBIN "gfx/duel/anims/15.2bpp" Duel16Gfx: ; a5a96 (29:5a96) dw $0a - INCBIN "gfx/duel/16.2bpp" + INCBIN "gfx/duel/anims/16.2bpp" Duel17Gfx: ; a5b38 (29:5b38) dw $25 - INCBIN "gfx/duel/17.2bpp" + INCBIN "gfx/duel/anims/17.2bpp" Duel18Gfx: ; a5d8a (29:5d8a) dw $18 - INCBIN "gfx/duel/18.2bpp" + INCBIN "gfx/duel/anims/18.2bpp" Duel19Gfx: ; a5f0c (29:5f0c) dw $1b - INCBIN "gfx/duel/19.2bpp" + INCBIN "gfx/duel/anims/19.2bpp" Duel20Gfx: ; a60be (29:60be) dw $08 - INCBIN "gfx/duel/20.2bpp" + INCBIN "gfx/duel/anims/20.2bpp" Duel21Gfx: ; a6140 (29:6140) dw $0d - INCBIN "gfx/duel/21.2bpp" + INCBIN "gfx/duel/anims/21.2bpp" Duel22Gfx: ; a6212 (29:6212) dw $22 - INCBIN "gfx/duel/22.2bpp" + INCBIN "gfx/duel/anims/22.2bpp" Duel23Gfx: ; a6434 (29:6434) dw $0c - INCBIN "gfx/duel/23.2bpp" + INCBIN "gfx/duel/anims/23.2bpp" Duel24Gfx: ; a64f6 (29:64f6) dw $25 - INCBIN "gfx/duel/24.2bpp" + INCBIN "gfx/duel/anims/24.2bpp" Duel25Gfx: ; a6748 (29:6748) dw $22 - INCBIN "gfx/duel/25.2bpp" + INCBIN "gfx/duel/anims/25.2bpp" Duel26Gfx: ; a696a (29:696a) dw $0c - INCBIN "gfx/duel/26.2bpp" + INCBIN "gfx/duel/anims/26.2bpp" Duel27Gfx: ; a6a2c (29:6a2c) dw $4c - INCBIN "gfx/duel/27.2bpp" + INCBIN "gfx/duel/anims/27.2bpp" Duel28Gfx: ; a6eee (29:6eee) dw $08 - INCBIN "gfx/duel/28.2bpp" + INCBIN "gfx/duel/anims/28.2bpp" Duel29Gfx: ; a6f70 (29:6f70) dw $07 - INCBIN "gfx/duel/29.2bpp" + INCBIN "gfx/duel/anims/29.2bpp" Duel30Gfx: ; a6fe2 (29:6fe2) dw $1a - INCBIN "gfx/duel/30.2bpp" + INCBIN "gfx/duel/anims/30.2bpp" Duel31Gfx: ; a7184 (29:7184) dw $0a - INCBIN "gfx/duel/31.2bpp" + INCBIN "gfx/duel/anims/31.2bpp" Duel32Gfx: ; a7226 (29:7226) dw $2e - INCBIN "gfx/duel/32.2bpp" + INCBIN "gfx/duel/anims/32.2bpp" Duel33Gfx: ; a7508 (29:7508) dw $08 - INCBIN "gfx/duel/33.2bpp" + INCBIN "gfx/duel/anims/33.2bpp" Duel34Gfx: ; a758a (29:758a) dw $07 - INCBIN "gfx/duel/34.2bpp" + INCBIN "gfx/duel/anims/34.2bpp" Duel35Gfx: ; a75fc (29:75fc) dw $1c - INCBIN "gfx/duel/35.2bpp" + INCBIN "gfx/duel/anims/35.2bpp" Duel36Gfx: ; a77be (29:77be) dw $08 - INCBIN "gfx/duel/36.2bpp" + INCBIN "gfx/duel/anims/36.2bpp" Duel37Gfx: ; a7840 (29:7840) dw $0b - INCBIN "gfx/duel/37.2bpp" + INCBIN "gfx/duel/anims/37.2bpp" Duel38Gfx: ; a78f2 (29:78f2) dw $1c - INCBIN "gfx/duel/38.2bpp" + INCBIN "gfx/duel/anims/38.2bpp" Duel39Gfx: ; a7ab4 (29:7ab4) dw $16 - INCBIN "gfx/duel/39.2bpp" + INCBIN "gfx/duel/anims/39.2bpp" Duel40Gfx: ; a7c16 (29:7c16) dw $10 - INCBIN "gfx/duel/40.2bpp" + INCBIN "gfx/duel/anims/40.2bpp" Duel41Gfx: ; a7d18 (29:7d18) dw $0f - INCBIN "gfx/duel/41.2bpp" + INCBIN "gfx/duel/anims/41.2bpp" Duel42Gfx: ; a7e0a (29:7e0a) dw $07 - INCBIN "gfx/duel/42.2bpp" + INCBIN "gfx/duel/anims/42.2bpp" Duel43Gfx: ; a7e7c (29:7e7c) dw $0a - INCBIN "gfx/duel/43.2bpp" + INCBIN "gfx/duel/anims/43.2bpp" Duel44Gfx: ; a7f1e (29:7f1e) dw $09 - INCBIN "gfx/duel/44.2bpp" + INCBIN "gfx/duel/anims/44.2bpp" Duel45Gfx: ; a7fb0 (29:7fb0) dw $03 - INCBIN "gfx/duel/45.2bpp" + INCBIN "gfx/duel/anims/45.2bpp" INCROM $a7fe2, $a8000 @@ -818,39 +832,39 @@ SECTION "Gfx 12", ROMX Duel46Gfx: ; a8000 (2a:4000) dw $08 - INCBIN "gfx/duel/46.2bpp" + INCBIN "gfx/duel/anims/46.2bpp" Duel47Gfx: ; a8082 (2a:4082) dw $0f - INCBIN "gfx/duel/47.2bpp" + INCBIN "gfx/duel/anims/47.2bpp" Duel48Gfx: ; a8174 (2a:4174) dw $03 - INCBIN "gfx/duel/48.2bpp" + INCBIN "gfx/duel/anims/48.2bpp" Duel49Gfx: ; a81a6 (2a:41a6) dw $05 - INCBIN "gfx/duel/49.2bpp" + INCBIN "gfx/duel/anims/49.2bpp" Duel50Gfx: ; a81f8 (2a:41f8) dw $17 - INCBIN "gfx/duel/50.2bpp" + INCBIN "gfx/duel/anims/50.2bpp" Duel51Gfx: ; a836a (2a:436a) dw $36 - INCBIN "gfx/duel/51.t10.2bpp" + INCBIN "gfx/duel/anims/51.t10.2bpp" Duel52Gfx: ; a86cc (2a:46cc) dw $0b - INCBIN "gfx/duel/52.2bpp" + INCBIN "gfx/duel/anims/52.2bpp" Duel53Gfx: ; a877e (2a:477e) dw $06 - INCBIN "gfx/duel/53.2bpp" + INCBIN "gfx/duel/anims/53.2bpp" Duel54Gfx: ; a87e0 (2a:47e0) dw $16 - INCBIN "gfx/duel/54.2bpp" + INCBIN "gfx/duel/anims/54.2bpp" BoosterPackOAMGfx: ; a8942 (2a:4942) dw $20 diff --git a/src/gfx/duel/0.png b/src/gfx/duel/anims/0.png Binary files differindex f74b710..f74b710 100644 --- a/src/gfx/duel/0.png +++ b/src/gfx/duel/anims/0.png diff --git a/src/gfx/duel/1.png b/src/gfx/duel/anims/1.png Binary files differindex fbdd03d..fbdd03d 100644 --- a/src/gfx/duel/1.png +++ b/src/gfx/duel/anims/1.png diff --git a/src/gfx/duel/10.png b/src/gfx/duel/anims/10.png Binary files differindex abf7bf4..abf7bf4 100644 --- a/src/gfx/duel/10.png +++ b/src/gfx/duel/anims/10.png diff --git a/src/gfx/duel/11.png b/src/gfx/duel/anims/11.png Binary files differindex 73a3564..73a3564 100644 --- a/src/gfx/duel/11.png +++ b/src/gfx/duel/anims/11.png diff --git a/src/gfx/duel/12.png b/src/gfx/duel/anims/12.png Binary files differindex 55a7aff..55a7aff 100644 --- a/src/gfx/duel/12.png +++ b/src/gfx/duel/anims/12.png diff --git a/src/gfx/duel/13.png b/src/gfx/duel/anims/13.png Binary files differindex 56cfaae..56cfaae 100644 --- a/src/gfx/duel/13.png +++ b/src/gfx/duel/anims/13.png diff --git a/src/gfx/duel/14.png b/src/gfx/duel/anims/14.png Binary files differindex 4d7d038..4d7d038 100644 --- a/src/gfx/duel/14.png +++ b/src/gfx/duel/anims/14.png diff --git a/src/gfx/duel/15.png b/src/gfx/duel/anims/15.png Binary files differindex 7003067..7003067 100644 --- a/src/gfx/duel/15.png +++ b/src/gfx/duel/anims/15.png diff --git a/src/gfx/duel/16.png b/src/gfx/duel/anims/16.png Binary files differindex 8f15645..8f15645 100644 --- a/src/gfx/duel/16.png +++ b/src/gfx/duel/anims/16.png diff --git a/src/gfx/duel/17.png b/src/gfx/duel/anims/17.png Binary files differindex 87cfac5..87cfac5 100644 --- a/src/gfx/duel/17.png +++ b/src/gfx/duel/anims/17.png diff --git a/src/gfx/duel/18.png b/src/gfx/duel/anims/18.png Binary files differindex e1a10b1..e1a10b1 100644 --- a/src/gfx/duel/18.png +++ b/src/gfx/duel/anims/18.png diff --git a/src/gfx/duel/19.png b/src/gfx/duel/anims/19.png Binary files differindex b2642f4..b2642f4 100644 --- a/src/gfx/duel/19.png +++ b/src/gfx/duel/anims/19.png diff --git a/src/gfx/duel/2.png b/src/gfx/duel/anims/2.png Binary files differindex 6e10c3b..6e10c3b 100644 --- a/src/gfx/duel/2.png +++ b/src/gfx/duel/anims/2.png diff --git a/src/gfx/duel/20.png b/src/gfx/duel/anims/20.png Binary files differindex 0b7fdaa..0b7fdaa 100644 --- a/src/gfx/duel/20.png +++ b/src/gfx/duel/anims/20.png diff --git a/src/gfx/duel/21.png b/src/gfx/duel/anims/21.png Binary files differindex 8a6a885..8a6a885 100644 --- a/src/gfx/duel/21.png +++ b/src/gfx/duel/anims/21.png diff --git a/src/gfx/duel/22.png b/src/gfx/duel/anims/22.png Binary files differindex 79f7a26..79f7a26 100644 --- a/src/gfx/duel/22.png +++ b/src/gfx/duel/anims/22.png diff --git a/src/gfx/duel/23.png b/src/gfx/duel/anims/23.png Binary files differindex f04ef12..f04ef12 100644 --- a/src/gfx/duel/23.png +++ b/src/gfx/duel/anims/23.png diff --git a/src/gfx/duel/24.png b/src/gfx/duel/anims/24.png Binary files differindex bfc7f47..bfc7f47 100644 --- a/src/gfx/duel/24.png +++ b/src/gfx/duel/anims/24.png diff --git a/src/gfx/duel/25.png b/src/gfx/duel/anims/25.png Binary files differindex e71cec1..e71cec1 100644 --- a/src/gfx/duel/25.png +++ b/src/gfx/duel/anims/25.png diff --git a/src/gfx/duel/26.png b/src/gfx/duel/anims/26.png Binary files differindex f8ed483..f8ed483 100644 --- a/src/gfx/duel/26.png +++ b/src/gfx/duel/anims/26.png diff --git a/src/gfx/duel/27.png b/src/gfx/duel/anims/27.png Binary files differindex 4efe481..4efe481 100644 --- a/src/gfx/duel/27.png +++ b/src/gfx/duel/anims/27.png diff --git a/src/gfx/duel/28.png b/src/gfx/duel/anims/28.png Binary files differindex 5962e5b..5962e5b 100644 --- a/src/gfx/duel/28.png +++ b/src/gfx/duel/anims/28.png diff --git a/src/gfx/duel/29.png b/src/gfx/duel/anims/29.png Binary files differindex d73be15..d73be15 100644 --- a/src/gfx/duel/29.png +++ b/src/gfx/duel/anims/29.png diff --git a/src/gfx/duel/3.png b/src/gfx/duel/anims/3.png Binary files differindex a4cd613..a4cd613 100644 --- a/src/gfx/duel/3.png +++ b/src/gfx/duel/anims/3.png diff --git a/src/gfx/duel/30.png b/src/gfx/duel/anims/30.png Binary files differindex eb4f993..eb4f993 100644 --- a/src/gfx/duel/30.png +++ b/src/gfx/duel/anims/30.png diff --git a/src/gfx/duel/31.png b/src/gfx/duel/anims/31.png Binary files differindex 726a9de..726a9de 100644 --- a/src/gfx/duel/31.png +++ b/src/gfx/duel/anims/31.png diff --git a/src/gfx/duel/32.png b/src/gfx/duel/anims/32.png Binary files differindex 5696434..5696434 100644 --- a/src/gfx/duel/32.png +++ b/src/gfx/duel/anims/32.png diff --git a/src/gfx/duel/33.png b/src/gfx/duel/anims/33.png Binary files differindex cec3c5c..cec3c5c 100644 --- a/src/gfx/duel/33.png +++ b/src/gfx/duel/anims/33.png diff --git a/src/gfx/duel/34.png b/src/gfx/duel/anims/34.png Binary files differindex 3a23454..3a23454 100644 --- a/src/gfx/duel/34.png +++ b/src/gfx/duel/anims/34.png diff --git a/src/gfx/duel/35.png b/src/gfx/duel/anims/35.png Binary files differindex 88b9a8a..88b9a8a 100644 --- a/src/gfx/duel/35.png +++ b/src/gfx/duel/anims/35.png diff --git a/src/gfx/duel/36.png b/src/gfx/duel/anims/36.png Binary files differindex 75c6606..75c6606 100644 --- a/src/gfx/duel/36.png +++ b/src/gfx/duel/anims/36.png diff --git a/src/gfx/duel/37.png b/src/gfx/duel/anims/37.png Binary files differindex 124a4aa..124a4aa 100644 --- a/src/gfx/duel/37.png +++ b/src/gfx/duel/anims/37.png diff --git a/src/gfx/duel/38.png b/src/gfx/duel/anims/38.png Binary files differindex d13659f..d13659f 100644 --- a/src/gfx/duel/38.png +++ b/src/gfx/duel/anims/38.png diff --git a/src/gfx/duel/39.png b/src/gfx/duel/anims/39.png Binary files differindex 72a5047..72a5047 100644 --- a/src/gfx/duel/39.png +++ b/src/gfx/duel/anims/39.png diff --git a/src/gfx/duel/4.png b/src/gfx/duel/anims/4.png Binary files differindex bb53fa0..bb53fa0 100644 --- a/src/gfx/duel/4.png +++ b/src/gfx/duel/anims/4.png diff --git a/src/gfx/duel/40.png b/src/gfx/duel/anims/40.png Binary files differindex f5c374a..f5c374a 100644 --- a/src/gfx/duel/40.png +++ b/src/gfx/duel/anims/40.png diff --git a/src/gfx/duel/41.png b/src/gfx/duel/anims/41.png Binary files differindex fdd1218..fdd1218 100644 --- a/src/gfx/duel/41.png +++ b/src/gfx/duel/anims/41.png diff --git a/src/gfx/duel/42.png b/src/gfx/duel/anims/42.png Binary files differindex 099ca70..099ca70 100644 --- a/src/gfx/duel/42.png +++ b/src/gfx/duel/anims/42.png diff --git a/src/gfx/duel/43.png b/src/gfx/duel/anims/43.png Binary files differindex 216de05..216de05 100644 --- a/src/gfx/duel/43.png +++ b/src/gfx/duel/anims/43.png diff --git a/src/gfx/duel/44.png b/src/gfx/duel/anims/44.png Binary files differindex b3a043e..b3a043e 100644 --- a/src/gfx/duel/44.png +++ b/src/gfx/duel/anims/44.png diff --git a/src/gfx/duel/45.png b/src/gfx/duel/anims/45.png Binary files differindex b466614..b466614 100644 --- a/src/gfx/duel/45.png +++ b/src/gfx/duel/anims/45.png diff --git a/src/gfx/duel/46.png b/src/gfx/duel/anims/46.png Binary files differindex 9a01563..9a01563 100644 --- a/src/gfx/duel/46.png +++ b/src/gfx/duel/anims/46.png diff --git a/src/gfx/duel/47.png b/src/gfx/duel/anims/47.png Binary files differindex 9bf5047..9bf5047 100644 --- a/src/gfx/duel/47.png +++ b/src/gfx/duel/anims/47.png diff --git a/src/gfx/duel/48.png b/src/gfx/duel/anims/48.png Binary files differindex 100bb49..100bb49 100644 --- a/src/gfx/duel/48.png +++ b/src/gfx/duel/anims/48.png diff --git a/src/gfx/duel/49.png b/src/gfx/duel/anims/49.png Binary files differindex 07ba688..07ba688 100644 --- a/src/gfx/duel/49.png +++ b/src/gfx/duel/anims/49.png diff --git a/src/gfx/duel/5.png b/src/gfx/duel/anims/5.png Binary files differindex baf7475..baf7475 100644 --- a/src/gfx/duel/5.png +++ b/src/gfx/duel/anims/5.png diff --git a/src/gfx/duel/50.png b/src/gfx/duel/anims/50.png Binary files differindex b82049f..b82049f 100644 --- a/src/gfx/duel/50.png +++ b/src/gfx/duel/anims/50.png diff --git a/src/gfx/duel/51.t10.png b/src/gfx/duel/anims/51.t10.png Binary files differindex 98eb770..98eb770 100644 --- a/src/gfx/duel/51.t10.png +++ b/src/gfx/duel/anims/51.t10.png diff --git a/src/gfx/duel/52.png b/src/gfx/duel/anims/52.png Binary files differindex 420136f..420136f 100644 --- a/src/gfx/duel/52.png +++ b/src/gfx/duel/anims/52.png diff --git a/src/gfx/duel/53.png b/src/gfx/duel/anims/53.png Binary files differindex 10a21f5..10a21f5 100644 --- a/src/gfx/duel/53.png +++ b/src/gfx/duel/anims/53.png diff --git a/src/gfx/duel/54.png b/src/gfx/duel/anims/54.png Binary files differindex 7dbb527..7dbb527 100644 --- a/src/gfx/duel/54.png +++ b/src/gfx/duel/anims/54.png diff --git a/src/gfx/duel/55.png b/src/gfx/duel/anims/55.png Binary files differindex ebab414..ebab414 100644 --- a/src/gfx/duel/55.png +++ b/src/gfx/duel/anims/55.png diff --git a/src/gfx/duel/56.png b/src/gfx/duel/anims/56.png Binary files differindex dd82623..dd82623 100644 --- a/src/gfx/duel/56.png +++ b/src/gfx/duel/anims/56.png diff --git a/src/gfx/duel/57.png b/src/gfx/duel/anims/57.png Binary files differindex 7b97f92..7b97f92 100644 --- a/src/gfx/duel/57.png +++ b/src/gfx/duel/anims/57.png diff --git a/src/gfx/duel/58.png b/src/gfx/duel/anims/58.png Binary files differindex 8f8b22c..8f8b22c 100644 --- a/src/gfx/duel/58.png +++ b/src/gfx/duel/anims/58.png diff --git a/src/gfx/duel/59.png b/src/gfx/duel/anims/59.png Binary files differindex 16b7344..16b7344 100644 --- a/src/gfx/duel/59.png +++ b/src/gfx/duel/anims/59.png diff --git a/src/gfx/duel/6.png b/src/gfx/duel/anims/6.png Binary files differindex 80cc739..80cc739 100644 --- a/src/gfx/duel/6.png +++ b/src/gfx/duel/anims/6.png diff --git a/src/gfx/duel/60.png b/src/gfx/duel/anims/60.png Binary files differindex dc60679..dc60679 100644 --- a/src/gfx/duel/60.png +++ b/src/gfx/duel/anims/60.png diff --git a/src/gfx/duel/61.png b/src/gfx/duel/anims/61.png Binary files differindex de82420..de82420 100644 --- a/src/gfx/duel/61.png +++ b/src/gfx/duel/anims/61.png diff --git a/src/gfx/duel/62.png b/src/gfx/duel/anims/62.png Binary files differindex c40fc22..c40fc22 100644 --- a/src/gfx/duel/62.png +++ b/src/gfx/duel/anims/62.png diff --git a/src/gfx/duel/63.png b/src/gfx/duel/anims/63.png Binary files differindex 5ea882f..5ea882f 100644 --- a/src/gfx/duel/63.png +++ b/src/gfx/duel/anims/63.png diff --git a/src/gfx/duel/64.png b/src/gfx/duel/anims/64.png Binary files differindex 36310a4..36310a4 100644 --- a/src/gfx/duel/64.png +++ b/src/gfx/duel/anims/64.png diff --git a/src/gfx/duel/65.png b/src/gfx/duel/anims/65.png Binary files differindex 212a40d..212a40d 100644 --- a/src/gfx/duel/65.png +++ b/src/gfx/duel/anims/65.png diff --git a/src/gfx/duel/66.png b/src/gfx/duel/anims/66.png Binary files differindex 65bebfb..65bebfb 100644 --- a/src/gfx/duel/66.png +++ b/src/gfx/duel/anims/66.png diff --git a/src/gfx/duel/7.png b/src/gfx/duel/anims/7.png Binary files differindex c309ce9..c309ce9 100644 --- a/src/gfx/duel/7.png +++ b/src/gfx/duel/anims/7.png diff --git a/src/gfx/duel/8.png b/src/gfx/duel/anims/8.png Binary files differindex 479b251..479b251 100644 --- a/src/gfx/duel/8.png +++ b/src/gfx/duel/anims/8.png diff --git a/src/gfx/duel/9.png b/src/gfx/duel/anims/9.png Binary files differindex 3667ca8..3667ca8 100644 --- a/src/gfx/duel/9.png +++ b/src/gfx/duel/anims/9.png diff --git a/src/gfx/duel/card_headers.png b/src/gfx/duel/card_headers.png Binary files differnew file mode 100644 index 0000000..b788b91 --- /dev/null +++ b/src/gfx/duel/card_headers.png diff --git a/src/gfx/duel/cgb_symbols.t7.png b/src/gfx/duel/cgb_symbols.t7.png Binary files differnew file mode 100644 index 0000000..578867f --- /dev/null +++ b/src/gfx/duel/cgb_symbols.t7.png diff --git a/src/gfx/duel/dmg_sgb_symbols.t7.png b/src/gfx/duel/dmg_sgb_symbols.t7.png Binary files differnew file mode 100644 index 0000000..10715db --- /dev/null +++ b/src/gfx/duel/dmg_sgb_symbols.t7.png diff --git a/src/gfx/duel/duel_graphics.t5.png b/src/gfx/duel/duel_graphics.t5.png Binary files differdeleted file mode 100644 index e36c5fb..0000000 --- a/src/gfx/duel/duel_graphics.t5.png +++ /dev/null diff --git a/src/gfx/duel/hud.png b/src/gfx/duel/hud.png Binary files differnew file mode 100644 index 0000000..81afc3b --- /dev/null +++ b/src/gfx/duel/hud.png diff --git a/src/gfx/duel/other.t7.png b/src/gfx/duel/other.t7.png Binary files differnew file mode 100644 index 0000000..796ecf7 --- /dev/null +++ b/src/gfx/duel/other.t7.png diff --git a/src/hram.asm b/src/hram.asm index 58c455b..b96ee37 100644 --- a/src/hram.asm +++ b/src/hram.asm @@ -70,7 +70,7 @@ hTempCardIndex_ff9f:: ; ff9f ds 1 ; multipurpose temp storage -hffa0:: ; ffa0 +hTemp_ffa0:: ; ffa0 ds 1 hTempPlayAreaLocationOffset_ffa1:: ; ffa1 diff --git a/src/macros/wram.asm b/src/macros/wram.asm index a984255..e692a92 100644 --- a/src/macros/wram.asm +++ b/src/macros/wram.asm @@ -57,4 +57,4 @@ sprite_anim_struct: MACRO \1Field0x0d:: ds 1 \1MovementCounter:: ds 1 \1Field0x0f:: ds 1 -ENDM
\ No newline at end of file +ENDM diff --git a/src/text/text1.asm b/src/text/text1.asm index 3de6280..b39e449 100644 --- a/src/text/text1.asm +++ b/src/text/text1.asm @@ -51,7 +51,7 @@ WeightText: ; 36370 (d:6370) done PokemonText: ; 36378 (d:6378) - text " Pok`mon" + text " Pokémon" done Text000f: ; 36382 (d:6382) @@ -91,31 +91,31 @@ Text0017: ; 363c0 (d:63c0) done Text0018: ; 363d0 (d:63d0) - text "Grass Pok`mon" + text "Grass Pokémon" done Text0019: ; 363df (d:63df) - text "Fire Pok`mon" + text "Fire Pokémon" done Text001a: ; 363ed (d:63ed) - text "Water Pok`mon" + text "Water Pokémon" done Text001b: ; 363fc (d:63fc) - text "Lightning Pok`mon" + text "Lightning Pokémon" done Text001c: ; 3640f (d:640f) - text "Fighting Pok`mon" + text "Fighting Pokémon" done Text001d: ; 36421 (d:6421) - text "Psychic Pok`mon" + text "Psychic Pokémon" done Text001e: ; 36432 (d:6432) - text "Colorless Pok`mon" + text "Colorless Pokémon" done Text001f: ; 36445 (d:6445) @@ -135,7 +135,7 @@ Text0022: ; 36466 (d:6466) done NoPokemonOnTheBenchText: ; 3646e (d:646e) - text "No Pok`mon on the Bench." + text "No Pokémon on the Bench." done UnableDueToSleepText: ; 36488 (d:6488) @@ -255,18 +255,18 @@ UnableToRetreatText: ; 366c5 (d:66c5) text "Unable to Retreat." done -OnlyOneEnergyCardText: ; 366d9 (d:66d9) +MayOnlyAttachOneEnergyCardText: ; 366d9 (d:66d9) text "You may only attach 1 Energy card" line "per turn." done Text003f: ; 36706 (d:6706) - text "Use this Pok`mon Power?" + text "Use this Pokémon Power?" done Text0040: ; 3671f (d:671f) text "You do not need to select the" - line "Pok`mon Power to use it." + line "Pokémon Power to use it." done DiscardDescription: ; 36757 (d:6757) @@ -274,7 +274,7 @@ DiscardDescription: ; 36757 (d:6757) line "your turn." line "It will be counted as a Knock Out" line "(This Discard is not" - line "a Pok`mon Power)" + line "a Pokémon Power)" done Text0042: ; 367cc (d:67cc) @@ -304,27 +304,27 @@ Text0046: ; 3681b (d:681b) done Text0047: ; 36848 (d:6848) - db TX_GRASS + db "<GRASS>" done Text0048: ; 3684b (d:684b) - db TX_FIRE + db "<FIRE>" done Text0049: ; 3684e (d:684e) - db TX_WATER + db "<WATER>" done Text004a: ; 36851 (d:6851) - db TX_LIGHTNING + db "<LIGHTNING>" done Text004b: ; 36854 (d:6854) - db TX_FIGHTING + db "<FIGHTING>" done Text004c: ; 36857 (d:6857) - db TX_PSYCHIC + db "<PSYCHIC>" done Text004d: ; 3685a (d:685a) @@ -345,8 +345,8 @@ Text0050: ; 36891 (d:6891) done Text0051: ; 368be (d:68be) - text "The Active Pok`mon was Knocked Out." - line "Please choose the next Pok`mon." + text "The Active Pokémon was Knocked Out." + line "Please choose the next Pokémon." done Text0052: ; 36903 (d:6903) @@ -367,7 +367,7 @@ TransmissionErrorText: ; 36947 (d:6947) line "Start again from the beginning." done -Text0056: ; 3697c (d:697c) +ChooseTheCardYouWishToExamineText: ; 3697c (d:697c) text "Choose the card" line "you wish to examine." done @@ -382,7 +382,7 @@ Text0058: ; 369b8 (d:69b8) done Text0059: ; 369dc (d:69dc) - text "Selecting Bench Pok`mon..." + text "Selecting Bench Pokémon..." line " Hand Examine Back" done @@ -398,7 +398,7 @@ Text005b: ; 36a34 (d:6a34) WillUseThePokemonPowerText: ; 36a53 (d:6a53) text TX_RAM2, " will use the" - line "Pok`mon Power ", TX_RAM2, "." + line "Pokémon Power ", TX_RAM2, "." done Text005d: ; 36a74 (d:6a74) @@ -420,7 +420,7 @@ Text0060: ; 36ab7 (d:6ab7) line "into ", TX_RAM2, "." done -Text0061: ; 36aca (d:6aca) +PlacedOnTheBenchText: ; 36aca (d:6aca) text "Placed ", TX_RAM2, "" line "on the Bench." done @@ -458,18 +458,18 @@ Text0068: ; 36bab (d:6bab) done ChooseBasicPkmnToPlaceInArenaText: ; 36bc2 (d:6bc2) - text "Choose a Basic Pok`mon" + text "Choose a Basic Pokémon" line "to place in the Arena." done Text006a: ; 36bf1 (d:6bf1) - text "There are no Basic Pok`mon" + text "There are no Basic Pokémon" line "in ", TX_RAM1, "'s hand." done NeitherPlayerHasBasicPkmnText: ; 36c1a (d:6c1a) text "Neither player has any Basic" - line "Pok`mon in his or her hand." + line "Pokémon in his or her hand." done Text006c: ; 36c54 (d:6c54) @@ -478,21 +478,21 @@ Text006c: ; 36c54 (d:6c54) done ChooseUpTo5BasicPkmnToPlaceOnBenchText: ; 36c82 (d:6c82) - text "You may choose up to 5 Basic Pok`mon" + text "You may choose up to 5 Basic Pokémon" line "to place on the Bench." done Text006e: ; 36cbf (d:6cbf) text "Please choose an" - line "Active Pok`mon." + line "Active Pokémon." done Text006f: ; 36ce1 (d:6ce1) text "Choose your" - line "Bench Pok`mon." + line "Bench Pokémon." done -Text0070: ; 36cfd (d:6cfd) +YouDrewText: ; 36cfd (d:6cfd) text "You drew ", TX_RAM2, "." done @@ -524,7 +524,7 @@ DecisionText: ; 36da4 (d:6da4) text "Decision..." done -DuelWasDrawText: ; 36db1 (d:6db1) +DuelWasADrawText: ; 36db1 (d:6db1) text "The Duel with ", TX_RAM1, "" line "was a Draw!" done @@ -545,7 +545,7 @@ StartSuddenDeathMatchText: ; 36e05 (d:6e05) Text007b: ; 36e2e (d:6e2e) text "Prizes Left" - line "Active Pok`mon" + line "Active Pokémon" line "Cards in Deck" done @@ -567,7 +567,7 @@ Text007f: ; 36e6a (d:6e6a) done Text0080: ; 36e82 (d:6e82) - text "There are no Pok`mon" + text "There are no Pokémon" line "in ", TX_RAM1, "'s Play Area!" done @@ -578,11 +578,11 @@ WasKnockedOutText: ; 36eaa (d:6eaa) HavePokemonPowerText: ; 36ebe (d:6ebe) text TX_RAM2, " have" - line "Pok`mon Power." + line "Pokémon Power." done UnableToUsePkmnPowerDueToToxicGasText: ; 36ed5 (d:6ed5) - text "Unable to us Pok`mon Power due to" + text "Unable to us Pokémon Power due to" line "the effect of Toxic Gas." done @@ -724,19 +724,19 @@ Text009d: ; 371f7 (d:71f7) done Text009e: ; 3720c (d:720c) - text TX_GRASS, " Pok`mon" + text "<GRASS> Pokémon" line "" - text TX_FIRE, " Pok`mon" + text "<FIRE> Pokémon" line "" - text TX_WATER, " Pok`mon" + text "<WATER> Pokémon" line "" - text TX_LIGHTNING, " Pok`mon" + text "<LIGHTNING> Pokémon" line "" - text TX_FIGHTING, " Pok`mon" + text "<FIGHTING> Pokémon" line "" - text TX_PSYCHIC, " Pok`mon" + text "<PSYCHIC> Pokémon" line "" - text TX_COLORLESS, " Pok`mon" + text "<COLORLESS> Pokémon" line "Trainer Card" line "Energy Card" done @@ -771,7 +771,7 @@ NoCardsInHandText: ; 37348 (d:7348) text "No cards in hand." done -Text00a5: ; 3735b (d:735b) +TheDiscardPileHasNoCardsText: ; 3735b (d:735b) text "The Discard Pile has no cards." done @@ -779,19 +779,19 @@ Text00a6: ; 3737b (d:737b) text "Player's Discard Pile" done -Text00a7: ; 37392 (d:7392) +DuelistHandText: ; 37392 (d:7392) text TX_RAM1, "'s Hand" done -Text00a8: ; 3739c (d:739c) +DuelistPlayAreaText: ; 3739c (d:739c) text TX_RAM1, "'s Play Area" done -Text00a9: ; 373ab (d:73ab) +DuelistDeckText: ; 373ab (d:73ab) text TX_RAM1, "'s Deck" done -Text00aa: ; 373b5 (d:73b5) +PleaseSelectHandText: ; 373b5 (d:73b5) text "Please select" line "Hand." done @@ -802,7 +802,7 @@ Text00ab: ; 373ca (d:73ca) done Text00ac: ; 373df (d:73df) - text "There are no Pok`mon" + text "There are no Pokémon" line "with Damage Counters." done @@ -812,7 +812,7 @@ Text00ad: ; 3740b (d:740b) Text00ae: ; 3742a (d:742a) text "No Energy cards are attached to" - line "the opponent's Active Pok`mon." + line "the opponent's Active Pokémon." done Text00af: ; 3746a (d:746a) @@ -833,13 +833,13 @@ NoSpaceOnTheBenchText: ; 374fa (d:74fa) text "There is no space on the Bench." done -Text00b3: ; 3751b (d:751b) - text "There are no Pok`mon capable" +NoPokemonCapableOfEvolvingText: ; 3751b (d:751b) + text "There are no Pokémon capable" line "of Evolving." done -Text00b4: ; 37546 (d:7546) - text "You cannot Evolve a Pok`mon" +CantEvolvePokemonInSameTurnItsPlacedText: ; 37546 (d:7546) + text "You cannot Evolve a Pokémon" line "in the same turn it was placed." done @@ -853,11 +853,11 @@ Text00b6: ; 375bc (d:75bc) done Text00b7: ; 375d7 (d:75d7) - text "No Pok`mon on the Bench." + text "No Pokémon on the Bench." done Text00b8: ; 375f1 (d:75f1) - text "There are no Pok`mon" + text "There are no Pokémon" line "in the Discard Pile." done @@ -877,17 +877,17 @@ Text00bb: ; 37680 (d:7680) done Text00bc: ; 376a9 (d:76a9) - text "There are no Stage 1 Pok`mon" + text "There are no Stage 1 Pokémon" line "in the Play Area." done Text00bd: ; 376d9 (d:76d9) text "No Energy cards are attached to" - line "Pok`mon in your Play Area." + line "Pokémon in your Play Area." done Text00be: ; 37715 (d:7715) - text "No Energy cards attached to Pok`mon" + text "No Energy cards attached to Pokémon" line "in your opponent's Play Area." done @@ -963,7 +963,7 @@ Text00ce: ; 37946 (d:7946) Text00cf: ; 37958 (d:7958) text "Cannot use since there's only" - line "1 Pok`mon." + line "1 Pokémon." done Text00d0: ; 37982 (d:7982) @@ -976,7 +976,7 @@ Text00d1: ; 379ae (d:79ae) done Text00d2: ; 379ce (d:79ce) - text "There are no Pok`mon on the Bench." + text "There are no Pokémon on the Bench." done Text00d3: ; 379f2 (d:79f2) @@ -1068,7 +1068,7 @@ VenomPowderCheckText: ; 37cdf (d:7cdf) done Text00e5: ; 37d1f (d:7d1f) - text "If Tails, your Pok`mon" + text "If Tails, your Pokémon" line "becomes Confused." done @@ -1099,7 +1099,7 @@ Text00ea: ; 37e03 (d:7e03) Text00eb: ; 37e46 (d:7e46) text "If Heads, change opponent's" - line "Active Pok`mon." + line "Active Pokémon." done Text00ec: ; 37e73 (d:7e73) diff --git a/src/text/text10.asm b/src/text/text10.asm index 15154c0..013e5da 100644 --- a/src/text/text10.asm +++ b/src/text/text10.asm @@ -1,6 +1,6 @@ KakunaDescription: ; 58000 (16:4000) text "Almost incapable of moving, this" - line "Pok`mon can only harden its shell to" + line "Pokémon can only harden its shell to" line "protect itself from predators." done @@ -59,12 +59,12 @@ TerrorStrikeName: ; 581ad (16:41ad) TerrorStrikeDescription: ; 581bc (16:41bc) text "Flip a coin. If heads and if your" - line "opponent has any Benched Pok`mon," + line "opponent has any Benched Pokémon," line "he or she chooses 1 of them and" line "switches it with the Defending" - line "Pok`mon." + line "Pokémon." line "(Do the damage before switching" - line "the Pok`mon.)" + line "the Pokémon.)" done PoisonFangName: ; 58277 (16:4277) @@ -82,7 +82,7 @@ ArbokDescription: ; 5828b (16:428b) done NidoranFName: ; 582e5 (16:42e5) - text "Nidoran%" + text "Nidoran♀" done FurySweepesName: ; 582ef (16:42ef) @@ -99,8 +99,8 @@ CallForFamilyName: ; 58341 (16:4341) done NidoranFsCallForFamilyDescription: ; 58352 (16:4352) - text "Search your deck for a Basic Pok`mon" - line "named Nidoran% or Nidoran$ and put" + text "Search your deck for a Basic Pokémon" + line "named Nidoran♀ or Nidoran♂ and put" line "it onto your Bench. Shuffle your" line "deck afterward. (You can't use this" line "attack if your Bench is full.)" @@ -112,7 +112,7 @@ NidoranFKind: ; 583ff (16:43ff) NidoranFDescription: ; 5840b (16:440b) text "Although small, its venomous barbs" - line "make this Pok`mon dangerous." + line "make this Pokémon dangerous." line "The female has smaller horns." done @@ -126,7 +126,7 @@ SupersonicName: ; 58474 (16:4474) MayInflictConfusionDescription: ; 58480 (16:4480) text "Flip a coin. If heads, the Defending" - line "Pok`mon is now Confused." + line "Pokémon is now Confused." done DoubleKickName: ; 584bf (16:44bf) @@ -167,7 +167,7 @@ NidoqueenDescription: ; 58597 (16:4597) done NidoranMName: ; 585f5 (16:45f5) - text "Nidoran$" + text "Nidoran♂" done HornHazardName: ; 585ff (16:45ff) @@ -194,7 +194,7 @@ HornDrillName: ; 586a3 (16:46a3) done NidorinoDescription: ; 586af (16:46af) - text "An aggressive Pok`mon that is quick" + text "An aggressive Pokémon that is quick" line "to attack. The horn on its head" line "secretes a powerful venom." done @@ -220,7 +220,7 @@ ToxicName: ; 587b5 (16:47b5) done ToxicDescription: ; 587bc (16:47bc) - text "The Defending Pok`mon is now" + text "The Defending Pokémon is now" line "Poisoned. It now takes 20 Poison" line "damage instead of 10 after each" line "player's turn (even if it was" @@ -244,7 +244,7 @@ LeechLifeName: ; 588a7 (16:48a7) ZubatsLeechLifeDescription: ; 588b3 (16:48b3) text "Remove a number of damage counters" line "from Zubat equal to the damage done" - line "to the Defending Pok`mon (after" + line "to the Defending Pokémon (after" line "applying Weakness and Resistance)." line "If Zubat has fewer damage counters" line "than that, remove all of them." @@ -271,7 +271,7 @@ WingAttackName: ; 589f1 (16:49f1) GolbatsLeechLifeDescription: ; 589fe (16:49fe) text "Remove a number of damage counters" line "from Golbat equal to the damage done" - line "to the Defending Pok`mon (after" + line "to the Defending Pokémon (after" line "applying Weakness and Resistance)." line "If Golbat has fewer damage counters" line "than that, remove all of them." @@ -292,7 +292,7 @@ SproutName: ; 58b3a (16:4b3a) done SproutDescription: ; 58b42 (16:4b42) - text "Search your deck for a Basic Pok`mon" + text "Search your deck for a Basic Pokémon" line "named Oddish and put it onto your" line "Bench. Shuffle your deck afterward." line "(You can't use this attack if your" @@ -318,7 +318,7 @@ FoulOdorName: ; 58c55 (16:4c55) done FoulOdorDescription: ; 58c60 (16:4c60) - text "Both the Defending Pok`mon and" + text "Both the Defending Pokémon and" line "Gloom are now Confused (after doing" line "damage)." done @@ -341,7 +341,7 @@ HealDescription: ; 58d1d (16:4d1d) text "Once during your turn (before your" line "attack), you may flip a coin. If" line "heads, remove 1 damage counter from" - line "1 of your Pok`mon. This power can't" + line "1 of your Pokémon. This power can't" line "be used if Vileplume is Asleep," line "Confused, or Paralyzed." done @@ -380,7 +380,7 @@ SporeName: ; 58ee2 (16:4ee2) done InflictSleepDescription: ; 58ee9 (16:4ee9) - text "The Defending Pok`mon is now Asleep." + text "The Defending Pokémon is now Asleep." done ParasKind: ; 58f0f (16:4f0f) @@ -414,7 +414,7 @@ VenonatName: ; 58ff5 (16:4ff5) VenonatLeechLifeDescription: ; 58ffe (16:4ffe) text "Remove a number of damage counters" line "from Venonat equal to the damage" - line "done to the Defending Pok`mon (after" + line "done to the Defending Pokémon (after" line "applying Weakness and Resistance)." line "If Venonat has fewer damage counters" line "than that, remove all of them." @@ -442,7 +442,7 @@ ShiftDescription: ; 59146 (16:5146) text "Once during your turn (before your" line "attack), you may change the type of" line "Venomoth to the type of any other" - line "Pok`mon in play other than" + line "Pokémon in play other than" line "Colorless." line "This power can't be used if Venomoth" line "is Asleep, Confused, or Paralyzed." @@ -454,7 +454,7 @@ VenomPowderName: ; 5921e (16:521e) VenomPowderDescription: ; 5922c (16:522c) text "Flip a coin. If heads, the Defending" - line "Pok`mon is now Confused and" + line "Pokémon is now Confused and" line "Poisoned." done @@ -473,7 +473,7 @@ BellsproutName: ; 592e5 (16:52e5) done BellsproutsCallForFamilyDescription: ; 592f1 (16:52f1) - text "Search your deck for a Basic Pok`mon" + text "Search your deck for a Basic Pokémon" line "named Bellsprout and put it onto" line "your Bench. Shuffle your deck" line "afterward. (You can't use this" @@ -481,7 +481,7 @@ BellsproutsCallForFamilyDescription: ; 592f1 (16:52f1) done BellsproutDescription: ; 59394 (16:5394) - text "A carnivorous Pok`mon that traps and" + text "A carnivorous Pokémon that traps and" line "eats bugs. It uses its root feet to" line "soak up needed moisture." done @@ -515,8 +515,8 @@ LureName: ; 5948d (16:548d) VictreebelsLureDescription: ; 59493 (16:5493) text "If your opponent has any Benched" - line "Pok`mon, choose 1 of them and switch" - line "it with his or her Active Pok`mon." + line "Pokémon, choose 1 of them and switch" + line "it with his or her Active Pokémon." done AcidName: ; 594fd (16:54fd) @@ -525,7 +525,7 @@ AcidName: ; 594fd (16:54fd) VictreebelsAcidDescription: ; 59503 (16:5503) text "Flip a coin. If heads, the Defending" - line "Pok`mon can't retreat during your" + line "Pokémon can't retreat during your" line "opponent's next turn." done @@ -573,7 +573,7 @@ ToxicGasName: ; 596cc (16:56cc) done ToxicGasDescription: ; 596d7 (16:56d7) - text "Ignore all Pok`mon Powers other" + text "Ignore all Pokémon Powers other" line "than Toxic Gases. This power stops" line "working while Muk is Asleep," line "Confused, or Paralyzed." @@ -619,7 +619,7 @@ TeleportName: ; 5988c (16:588c) TeleportDescription: ; 59896 (16:5896) text "Switch Exeggutor with 1 of your" - line "Benched Pok`mon." + line "Benched Pokémon." done BigEggsplosionName: ; 598c8 (16:58c8) @@ -654,7 +654,7 @@ FoulGasName: ; 599d5 (16:59d5) FoulGasDescription: ; 599df (16:59df) text "Flip a coin. If heads, the Defending" - line "Pok`mon is now Poisoned; if tails," + line "Pokémon is now Poisoned; if tails," line "it is now Confused." done @@ -681,10 +681,10 @@ SelfdestructName: ; 59abe (16:5abe) done WeezingsSelfdestructDescription: ; 59acc (16:5acc) - text "Does 10 damage to each Pok`mon on" + text "Does 10 damage to each Pokémon on" line "each player's Bench. (Don't apply" line "Weakness and Resistance for Benched" - line "Pok`mon.) Weezing does 60 damage to" + line "Pokémon.) Weezing does 60 damage to" line "itself." done @@ -777,7 +777,7 @@ EmberName: ; 59e0e (16:5e0e) done EmberDescription: ; 59e15 (16:5e15) - text "Discard 1 ", TX_FIRE, " Energy card attached to" + text "Discard 1 <FIRE> Energy card attached to" line "Charmander in order to use this" line "attack." done @@ -802,7 +802,7 @@ FlamethrowerName: ; 59ee6 (16:5ee6) done CharmeleonsFlamethrowerDescription: ; 59ef4 (16:5ef4) - text "Discard 1 ", TX_FIRE, " Energy card attached to" + text "Discard 1 <FIRE> Energy card attached to" line "Charmeleon in order to use this" line "attack." done @@ -829,7 +829,7 @@ EnergyBurnDescription: ; 59fb8 (16:5fb8) text "As often as you like during your" line "turn (before your attack), you may" line "turn all Energy attached to" - line "Charizard into ", TX_FIRE, " Energy for the" + line "Charizard into <FIRE> Energy for the" line "rest of the turn. This power can't" line "be used if Charizard is Asleep," line "Confused, or Paralyzed." @@ -875,8 +875,8 @@ NinetailsName: ; 5a1c0 (16:61c0) NinetailsLureDescription: ; 5a1cb (16:61cb) text "If your opponent has any Benched" - line "Pok`mon, choose 1 of them and switch" - line "it with the Defending Pok`mon." + line "Pokémon, choose 1 of them and switch" + line "it with the Defending Pokémon." done FireBlastName: ; 5a231 (16:6231) @@ -884,7 +884,7 @@ FireBlastName: ; 5a231 (16:6231) done FireBlastDescription: ; 5a23d (16:623d) - text "Discard 1 ", TX_FIRE, " Energy card attached" + text "Discard 1 <FIRE> Energy card attached" line "to Ninetales in order to use this" line "attack." done @@ -901,11 +901,11 @@ MixUpName: ; 5a2ec (16:62ec) MixUpDescription: ; 5a2f4 (16:62f4) text "If your opponent has any Basic" - line "Pok`mon or Evolution cards in his" + line "Pokémon or Evolution cards in his" line "or her hand, your opponent shuffles" line "them into his or her deck. Then," line "your opponent puts an equal number" - line "of Basic Pok`mon or Evolution cards" + line "of Basic Pokémon or Evolution cards" line "chosen at random from his or" done @@ -968,7 +968,7 @@ FlamesOfRageName: ; 5a5d8 (16:65d8) done FlamesOfRageDescription: ; 5a5e8 (16:65e8) - text "Discard 2 ", TX_FIRE, " Energy cards attached" + text "Discard 2 <FIRE> Energy cards attached" line "to Arcanine in order to use this" line "attack. This attack does 40 damage" line "plus 10 more damage for each damage" @@ -980,13 +980,13 @@ ArcanineKind: ; 5a689 (16:6689) done Arcanine1Description: ; 5a694 (16:6694) - text "A legendary Pok`mon famous for its" + text "A legendary Pokémon famous for its" line "beauty. It looks almost as if it" line "flies when it runs." done ArcaninesFlamethrowerDescription: ; 5a6ed (16:66ed) - text "Discard 1 ", TX_FIRE, " Energy card attached to" + text "Discard 1 <FIRE> Energy card attached to" line "Arcanine in order to use this" line "attack." done @@ -1000,7 +1000,7 @@ TakeDownDescription: ; 5a744 (16:6744) done Arcanine2Description: ; 5a768 (16:6768) - text "A Pok`mon that has been long admired" + text "A Pokémon that has been long admired" line "for its beauty. It runs gracefully," line "as if on wings." done @@ -1054,7 +1054,7 @@ RapidashsAgilityDescription: ; 5a8ce (16:68ce) done RapidashDescription: ; 5a94c (16:694c) - text "Very competitive, this Pok`mon will" + text "Very competitive, this Pokémon will" line "chase anything that moves fast in" line "the hopes of racing it." done @@ -1068,7 +1068,7 @@ FirePunchName: ; 5a9b3 (16:69b3) done FirePunchDescription: ; 5a9bf (16:69bf) - text "Discard 1 ", TX_FIRE, " Energy card attached to" + text "Discard 1 <FIRE> Energy card attached to" line "Magmar in order to use this attack." done @@ -1087,7 +1087,7 @@ SmokescreenName: ; 5aa6e (16:6a6e) done MagmarsSmokescreenDescription: ; 5aa7b (16:6a7b) - text "If the Defending Pok`mon tries to" + text "If the Defending Pokémon tries to" line "attack during your opponent's next" line "turn, your opponent flips a coin. If" line "tails, that attack does nothing." @@ -1097,7 +1097,7 @@ Magmar2Description: ; 5ab07 (16:6b07) text "Found at the mouths of volcanoes and" line "extremely hard to spot. There are" line "very few instances of capturing this" - line "Pok`mon." + line "Pokémon." done FlareonName: ; 5ab7d (16:6b7d) @@ -1128,7 +1128,7 @@ Flareon1Description: ; 5abe1 (16:6be1) done FlareonsFlamethrowerDescription: ; 5ac46 (16:6c46) - text "Discard 1 ", TX_FIRE, " Energy card attached to" + text "Discard 1 <FIRE> Energy card attached to" line "Flareon in order to use this attack." done @@ -1147,7 +1147,7 @@ WildfireName: ; 5acf6 (16:6cf6) done WildfireDescription: ; 5ad00 (16:6d00) - text "You may discard any number of ", TX_FIRE, "" + text "You may discard any number of <FIRE>" line "Energy cards attached to Moltres" line "when you use this attack. If you do," line "discard that many cards from the top" @@ -1172,13 +1172,13 @@ FiregiverDescription: ; 5ae1e (16:6e1e) text "When you put Moltres into play" line "during your turn (not during" line "set-up), put from 1 to 4 (chosen at" - line "random) ", TX_FIRE, " Energy cards from your" + line "random) <FIRE> Energy cards from your" line "deck into your hand. Shuffle your" line "deck afterward." done Moltres2Description: ; 5aed3 (16:6ed3) - text "A legendary bird Pok`mon. As it" + text "A legendary bird Pokémon. As it" line "flaps its flaming wings, even the" line "night sky will turn red." done @@ -1244,8 +1244,8 @@ RainDanceName: ; 5b159 (16:7159) RainDanceDescription: ; 5b165 (16:7165) text "As often as you like during your" line "turn (before your attack), you may" - line "attach 1 ", TX_WATER, " Energy card to 1 of" - line "your ", TX_WATER, " Pok`mon. (This doesn't use" + line "attach 1 <WATER> Energy card to 1 of" + line "your <WATER> Pokémon. (This doesn't use" line "up your 1 Energy card attachment" line "for the turn.)" done @@ -1262,7 +1262,7 @@ HydroPumpName: ; 5b267 (16:7267) HydroPumpDescription: ; 5b273 (16:7273) text "Does 40 damage plus 10 more damage" - line "for each ", TX_WATER, " Energy attached to" + line "for each <WATER> Energy attached to" line "Blastoise but not used to pay for" line "this attack's Energy cost. You can't" line "add more than 20 damage in this way." @@ -1273,7 +1273,7 @@ BlastoiseKind: ; 5b322 (16:7322) done BlastoiseDescription: ; 5b32d (16:732d) - text "A brutal Pok`mon with pressurized" + text "A brutal Pokémon with pressurized" line "water jets on its shell. They are" line "used for high-speed tackles." done @@ -1297,7 +1297,7 @@ PsyduckKind: ; 5b3e7 (16:73e7) PsyduckDescription: ; 5b3ed (16:73ed) text "While lulling its enemies with its" - line "vacant look, this wily Pok`mon will" + line "vacant look, this wily Pokémon will" line "use psychokinetic powers." done @@ -1314,7 +1314,7 @@ HyperBeamName: ; 5b462 (16:7462) done Discard1EnergyFromTargetDescription: ; 5b46e (16:746e) - text "If the Defending Pok`mon has any" + text "If the Defending Pokémon has any" line "Energy cards attached to it, choose" line "1 of them and discard it." done @@ -1335,7 +1335,7 @@ WaterGunName: ; 5b53c (16:753c) PoliwagsWaterGunDescription: ; 5b547 (16:7547) text "Does 10 damage plus 10 more damage" - line "for each ", TX_WATER, " Energy attached to" + line "for each <WATER> Energy attached to" line "Poliwag but not used to pay for" line "this attack's Energy cost. You can't" line "add more than 20 damage in this way." @@ -1360,8 +1360,8 @@ AmnesiaName: ; 5b66b (16:766b) done PoliwhirlsAmnesiaDescription: ; 5b674 (16:7674) - text "Choose 1 of the Defending Pok`mon's" - line "attacks. That Pok`mon can't use that" + text "Choose 1 of the Defending Pokémon's" + line "attacks. That Pokémon can't use that" line "attack during your opponent's next" line "turn." done @@ -1382,7 +1382,7 @@ PoliwrathName: ; 5b74f (16:774f) PoliwrathsWaterGunDescription: ; 5b75a (16:775a) text "Does 30 damage plus 10 more damage" - line "for each ", TX_WATER, " Energy attached to" + line "for each <WATER> Energy attached to" line "Poliwrath but not used to pay for" line "this attack's Energy cost. You" line "can't add more than 20 damage in" @@ -1512,7 +1512,7 @@ ClampName: ; 5bc7e (16:7c7e) ClampDescription: ; 5bc85 (16:7c85) text "Flip a coin. If heads, the Defending" - line "Pok`mon is now Paralyzed. If tails," + line "Pokémon is now Paralyzed. If tails," line "this attack does nothing (not even" line "damage)." done @@ -1532,7 +1532,7 @@ KrabbyName: ; 5bd63 (16:7d63) done KrabbysCallForFamilyDescription: ; 5bd6b (16:7d6b) - text "Search your deck for a Basic Pok`mon" + text "Search your deck for a Basic Pokémon" line "named Krabby and put it onto your" line "Bench. Shuffle your deck afterward." line "(You can't use this attack if your" @@ -1582,7 +1582,7 @@ HorseaName: ; 5bf43 (16:7f43) done OpponentAttackMayDoNothingDescription: ; 5bf4b (16:7f4b) - text "If the Defending Pok`mon tries to" + text "If the Defending Pokémon tries to" line "attack during your opponent's next" line "turn, your opponent flips a coin." line "If tails, that attack does nothing." diff --git a/src/text/text11.asm b/src/text/text11.asm index 649bf27..673150d 100644 --- a/src/text/text11.asm +++ b/src/text/text11.asm @@ -10,7 +10,7 @@ SeadraName: ; 5c05d (17:405d) SeadrasWaterGunDescription: ; 5c065 (17:4065) text "Does 20 damage plus 10 more damage" - line "for each ", TX_WATER, " Energy attached to" + line "for each <WATER> Energy attached to" line "Seadra but not used to pay for this" line "attack's Energy cost. You can't add" line "more than 20 damage in this way." @@ -44,7 +44,7 @@ GoldeenKind: ; 5c202 (17:4202) GoldeenDescription: ; 5c20c (17:420c) text "Its tail fin billows like an elegant" line "ballroom dress, giving it the" - line "nickname \"Water Queen.\"" + line "nickname ”Water Queen.”" done SeakingName: ; 5c268 (17:4268) @@ -74,7 +74,7 @@ StaryuKind: ; 5c2e5 (17:42e5) done StaryuDescription: ; 5c2f0 (17:42f0) - text "An enigmatic Pok`mon that can" + text "An enigmatic Pokémon that can" line "effortlessly regenerate any" line "appendage it loses in battle." done @@ -88,7 +88,7 @@ RecoverName: ; 5c352 (17:4352) done StarmiesRecoverDescription: ; 5c35b (17:435b) - text "Discard 1 ", TX_WATER, " Energy card attached to" + text "Discard 1 <WATER> Energy card attached to" line "Starmie in order to use this attack." line "Remove all damage counters from" line "Starmie." @@ -159,7 +159,7 @@ LaprasName: ; 5c58f (17:458f) LaprasWaterGunDescription: ; 5c597 (17:4597) text "Does 10 damage plus 10 more damage" - line "for each ", TX_WATER, " Energy attached to" + line "for each <WATER> Energy attached to" line "Lapras but not used to pay for this" line "attack's Energy cost. You can't add" line "more than 20 damage in this way." @@ -170,7 +170,7 @@ LaprasKind: ; 5c643 (17:4643) done LaprasDescription: ; 5c64e (17:464e) - text "A Pok`mon that has been overhunted" + text "A Pokémon that has been overhunted" line "almost to extinction. It can ferry" line "people across water." done @@ -201,7 +201,7 @@ Vaporeon1Description: ; 5c717 (17:4717) VaporeonsWaterGunDescription: ; 5c77b (17:477b) text "Does 30 damage plus 10 more damage" - line "for each ", TX_WATER, " Energy attached to" + line "for each <WATER> Energy attached to" line "Vaporeon but not used to pay for" line "this attack's Energy cost. You can't" line "add more than 20 damage in this way." @@ -234,7 +234,7 @@ ClairvoyanceDescription: ; 5c8b5 (17:48b5) OmanytesWaterGunDescription: ; 5c932 (17:4932) text "Does 10 damage plus 10 more damage" - line "for each ", TX_WATER, " Energy attached to" + line "for each <WATER> Energy attached to" line "Omanyte but not used to pay for this" line "attack's Energy cost. You can't add" line "more than 20 damage in this way." @@ -256,14 +256,14 @@ OmastarName: ; 5ca3e (17:4a3e) OmastarsWaterGunDescription: ; 5ca47 (17:4a47) text "Does 20 damage plus 10 more damage" - line "for each ", TX_WATER, " Energy attached to" + line "for each <WATER> Energy attached to" line "Omastar but not used to pay for this" line "attack's Energy cost. You can't add" line "more than 20 damage in this way." done OmastarDescription: ; 5caf4 (17:4af4) - text "A prehistoric Pok`mon that died out" + text "A prehistoric Pokémon that died out" line "when its heavy shell made it" line "impossible for it to catch prey." done @@ -283,11 +283,11 @@ BlizzardName: ; 5cb6d (17:4b6d) BlizzardDescription: ; 5cb77 (17:4b77) text "Flip a coin. If heads, this attack" line "does 10 damage to each of your" - line "opponent's Benched Pok`mon." + line "opponent's Benched Pokémon." line "If tails, this attack does 10 damage" - line "to each of your own Benched Pok`mon." + line "to each of your own Benched Pokémon." line "(Don't apply Weakness and Resistance" - line "for Benched Pok`mon.)" + line "for Benched Pokémon.)" done ArticunoKind: ; 5cc5b (17:4c5b) @@ -295,7 +295,7 @@ ArticunoKind: ; 5cc5b (17:4c5b) done Articuno1Description: ; 5cc63 (17:4c63) - text "A legendary bird Pok`mon that is" + text "A legendary bird Pokémon that is" line "said to appear to doomed people who" line "are lost in icy mountains." done @@ -308,7 +308,7 @@ QuickfreezeDescription: ; 5ccd1 (17:4cd1) text "When you put Articuno into play" line "during your turn (not during" line "set-up), flip a coin. If heads, the" - line "Defending Pok`mon is now Paralyzed." + line "Defending Pokémon is now Paralyzed." done IceBreathName: ; 5cd57 (17:4d57) @@ -317,7 +317,7 @@ IceBreathName: ; 5cd57 (17:4d57) IceBreathDescription: ; 5cd63 (17:4d63) text "Does 40 damage to 1 of your" - line "opponent's Pok`mon chosen at random." + line "opponent's Pokémon chosen at random." line "Don't apply Weakness and Resistance" line "for this attack. (Any other effects" line "that would happen after applying" @@ -326,7 +326,7 @@ IceBreathDescription: ; 5cd63 (17:4d63) done Articuno2Description: ; 5ce35 (17:4e35) - text "A legendary bird Pok`mon. It freezes" + text "A legendary bird Pokémon. It freezes" line "water that is contained in winter" line "air and makes it snow." done @@ -353,7 +353,7 @@ PikachuKind: ; 5ceeb (17:4eeb) done Pikachu1Description: ; 5cef2 (17:4ef2) - text "When several of these Pok`mon" + text "When several of these Pokémon" line "gather, their electricity can cause" line "lightning storms." done @@ -364,14 +364,14 @@ SparkName: ; 5cf47 (17:4f47) SparkDescription: ; 5cf4e (17:4f4e) text "If your opponent has any Benched" - line "Pok`mon, choose 1 of them and this" + line "Pokémon, choose 1 of them and this" line "attack does 10 damage to it. (Don't" line "apply Weakness and Resistance for" - line "Benched Pok`mon.)" + line "Benched Pokémon.)" done Pikachu2Description: ; 5cfeb (17:4feb) - text "When several of these Pok`mon" + text "When several of these Pokémon" line "gather, their electricity can build" line "and cause lightning storms." done @@ -381,12 +381,12 @@ GrowlName: ; 5d04a (17:504a) done GrowlDescription: ; 5d051 (17:5051) - text "If the Defending Pok`mon attacks" + text "If the Defending Pokémon attacks" line "Pikachu during your opponent's next" line "turn, any damage done by the attack" line "is reduced by 10 (after applying" line "Weakness and Resistance). " - line "(Benching or evolving either Pok`mon" + line "(Benching or evolving either Pokémon" line "ends this effect.)" done @@ -395,7 +395,7 @@ ThundershockName: ; 5d12f (17:512f) done Pikachu3Description: ; 5d13d (17:513d) - text "When several of these Pok`mon" + text "When several of these Pokémon" line "gather, their electricity could" line "build and cause lightning storms." done @@ -420,7 +420,7 @@ FlyDescription: ; 5d1b3 (17:51b3) FlyingPikachuDescription: ; 5d26f (17:526f) text "By learning how to fly, Pikachu" line "overcame its weakness to Fighting" - line "Pok`mon." + line "Pokémon." done SurfingPikachuName: ; 5d2bb (17:52bb) @@ -469,11 +469,11 @@ GigashockName: ; 5d43c (17:543c) GigashockDescription: ; 5d447 (17:5447) text "Choose 3 of your opponent's Benched" - line "Pok`mon and this attack does 10" + line "Pokémon and this attack does 10" line "damage to each of them. (Don't apply" line "Weakness and Resistance for Benched" - line "Pok`mon.) If your opponent has fewer" - line "than 3 Benched Pok`mon, do the" + line "Pokémon.) If your opponent has fewer" + line "than 3 Benched Pokémon, do the" line "damage to each of them." done @@ -492,10 +492,10 @@ ThunderWaveName: ; 5d591 (17:5591) done MagnemitesSelfdestructDescription: ; 5d59f (17:559f) - text "Does 10 damage to each Pok`mon on" + text "Does 10 damage to each Pokémon on" line "each player's Bench. (Don't apply" line "Weakness and Resistance for Benched" - line "Pok`mon.) Magnemite does 40 damage" + line "Pokémon.) Magnemite does 40 damage" line "to itself." done @@ -515,7 +515,7 @@ MagneticStormName: ; 5d6a0 (17:56a0) MagneticStormDescription: ; 5d6b0 (17:56b0) text "Remove all Energy cards attached to" - line "all of your Pok`mon, then randomly" + line "all of your Pokémon, then randomly" line "reattach each of them." done @@ -530,10 +530,10 @@ MagnetonName: ; 5d76e (17:576e) done Magneton1sSelfdestructDescription: ; 5d778 (17:5778) - text "Does 20 damage to each Pok`mon on" + text "Does 20 damage to each Pokémon on" line "each player's Bench. (Don't apply" line "Weakness and Resistance for Benched" - line "Pok`mon.)" + line "Pokémon.)" line "Magneton does 80 damage to itself." done @@ -556,10 +556,10 @@ SonicboomDescription: ; 5d876 (17:5876) done Magneton2sSelfdestructDescription: ; 5d907 (17:5907) - text "Does 20 damage to each Pok`mon on" + text "Does 20 damage to each Pokémon on" line "each player's Bench. (Don't apply" line "Weakness and Resistance for Benched" - line "Pok`mon.) Magneton does 100 damage" + line "Pokémon.) Magneton does 100 damage" line "to itself." done @@ -594,7 +594,7 @@ EnergySpikeName: ; 5da72 (17:5a72) EnergySpikeDescription: ; 5da80 (17:5a80) text "Search your deck for a basic Energy" line "card and attach it to 1 of your" - line "Pok`mon. Shuffle your deck" + line "Pokémon. Shuffle your deck" line "afterward." done @@ -609,11 +609,11 @@ ChainLightningName: ; 5db4f (17:5b4f) done ChainLightningDescription: ; 5db60 (17:5b60) - text "If the Defending Pok`mon isn't" + text "If the Defending Pokémon isn't" line "Colorless, this attack does 10" - line "damage to each Benched Pok`mon of" + line "damage to each Benched Pokémon of" line "the same type as the Defending" - line "Pok`mon (including your own)." + line "Pokémon (including your own)." done Electrode2Description: ; 5dbfe (17:5bfe) @@ -658,7 +658,7 @@ ElectabuzzKind: ; 5ddec (17:5dec) done Electabuzz1Description: ; 5ddf6 (17:5df6) - text "A wild Pok`mon with a short temper." + text "A wild Pokémon with a short temper." line "It is able to distinguish colors" line "and likes the color red." done @@ -699,7 +699,7 @@ JolteonKind: ; 5dfaf (17:5faf) done Jolteon1Description: ; 5dfba (17:5fba) - text "A sensitive Pok`mon that easily" + text "A sensitive Pokémon that easily" line "becomes sad or angry. Every time" line "its mood changes, it charges power." done @@ -729,16 +729,16 @@ ThunderstormName: ; 5e0d7 (17:60d7) ThunderstormDescription: ; 5e0e5 (17:60e5) text "For each of your opponent's Benched" - line "Pok`mon, flip a coin. If heads," + line "Pokémon, flip a coin. If heads," line "this attack does 20 damage to that" - line "Pok`mon. (Don't apply Weakness and" - line "Resistance for Benched Pok`mon.)" + line "Pokémon. (Don't apply Weakness and" + line "Resistance for Benched Pokémon.)" line "Then, Zapdos does 10 damage times" line "the number of tails to itself." done Zapdos1Description: ; 5e1d2 (17:61d2) - text "A legendary thunderbird Pok`mon" + text "A legendary thunderbird Pokémon" line "whose anger is said to cause storms." line "Some say it has lived above the" line "clouds for thousands of years." @@ -759,7 +759,7 @@ ThunderboltDescription: ; 5e29d (17:629d) done Zapdos2Description: ; 5e2e7 (17:62e7) - text "A legendary bird Pok`mon said to" + text "A legendary bird Pokémon said to" line "appear from clouds while wielding" line "enormous lightning bolts." done @@ -771,7 +771,7 @@ PealOfThunderName: ; 5e345 (17:6345) PealOfThunderDescription: ; 5e356 (17:6356) text "When you put Zapdos into play during" line "your turn (not during set-up), do" - line "30 damage to a Pok`mon other than" + line "30 damage to a Pokémon other than" line "Zapdos chosen at random. (Don't" line "apply Weakness and Resistance.)" done @@ -781,9 +781,9 @@ BigThunderName: ; 5e400 (17:6400) done BigThunderDescription: ; 5e40d (17:640d) - text "Choose a Pok`mon other than Zapdos" + text "Choose a Pokémon other than Zapdos" line "at random. This attack does 70" - line "damage to that Pok`mon. Don't apply" + line "damage to that Pokémon. Don't apply" line "Weakness and Resistance for this" line "attack. (Any other effects that" line "would happen after applying Weakness" @@ -791,7 +791,7 @@ BigThunderDescription: ; 5e40d (17:640d) done Zapdos3Description: ; 5e4f8 (17:64f8) - text "This legendary bird Pok`mon is said" + text "This legendary bird Pokémon is said" line "to appear when the sky turns dark" line "and lightning showers down." done @@ -857,9 +857,9 @@ EarthquakeName: ; 5e70d (17:670d) EarthquakeDescription: ; 5e719 (17:6719) text "Does 10 damage to each of your own" - line "Benched Pok`mon. (Don't apply" + line "Benched Pokémon. (Don't apply" line "Weakness and Resistance for Benched" - line "Pok`mon.)" + line "Pokémon.)" done DugtrioDescription: ; 5e789 (17:6789) @@ -977,7 +977,7 @@ StrikesBackDescription: ; 5eba7 (17:6ba7) text "Whenever your opponent's attack" line "damages Machamp (even if Machamp is" line "Knocked Out), this power does 10" - line "damage to the attacking Pok`mon." + line "damage to the attacking Pokémon." line "(Don't apply Weakness and" line "Resistance.) " done @@ -1059,10 +1059,10 @@ AvalancheName: ; 5ef53 (17:6f53) done GolemsSelfdestructDescription: ; 5ef5e (17:6f5e) - text "Does 20 damage to each Pok`mon on" + text "Does 20 damage to each Pokémon on" line "each player's Bench. (Don't apply" line "Weakness and Resistance for Benched" - line "Pok`mon.) Golem does 100 damage to" + line "Pokémon.) Golem does 100 damage to" line "itself." done @@ -1108,12 +1108,12 @@ SnivelName: ; 5f19b (17:719b) done SnivelDescription: ; 5f1a3 (17:71a3) - text "If the Defending Pok`mon attacks" + text "If the Defending Pokémon attacks" line "Cubone during your opponent's next" line "turn, any damage done by the attack" line "is reduced by 20 (after applying" line "Weakness and Resistance). (Benching" - line "or evolving either Pok`mon ends this" + line "or evolving either Pokémon ends this" line "effect.)" done @@ -1129,7 +1129,7 @@ CuboneKind: ; 5f2c6 (17:72c6) CuboneDescription: ; 5f2ce (17:72ce) text "Because it never removes its skull" line "helmet, no one has ever seen this" - line "Pok`mon's real face." + line "Pokémon's real face." done MarowakName: ; 5f329 (17:7329) @@ -1145,8 +1145,8 @@ CallforFriendName: ; 5f33e (17:733e) done CallforFriendDescription: ; 5f34f (17:734f) - text "Search your deck for a ", TX_FIGHTING, " Basic" - line "Pok`mon card and put it onto your" + text "Search your deck for a <FIGHTING> Basic" + line "Pokémon card and put it onto your" line "Bench. Shuffle your deck afterward." line "(You can't use this attack if your" line "Bench is full.)" @@ -1168,7 +1168,7 @@ BoneAttackName: ; 5f45b (17:745b) BoneAttackDescription: ; 5f468 (17:7468) text "Flip a coin. If heads, the Defending" - line "Pok`mon can't attack during your" + line "Pokémon can't attack during your" line "opponent's next turn." done @@ -1178,16 +1178,16 @@ WailName: ; 5f4c5 (17:74c5) WailDescription: ; 5f4cb (17:74cb) text "Each player fills his or her Bench" - line "with Basic Pok`mon chosen at random" + line "with Basic Pokémon chosen at random" line "from his or her deck. If a player" - line "has fewer Basic Pok`mon than that in" + line "has fewer Basic Pokémon than that in" line "his or deck, he or she chooses all" line "of them. Each player shuffles his" line "or her deck afterward." done Marowak2Description: ; 5f5b6 (17:75b6) - text "Small and weak, this Pok`mon is" + text "Small and weak, this Pokémon is" line "adept with its bone club. It has" line "grown more vicious over the ages." done @@ -1202,10 +1202,10 @@ StretchKickName: ; 5f625 (17:7625) StretchKickDescription: ; 5f633 (17:7633) text "If your opponent has any Benched" - line "Pok`mon, choose 1 of them and this" + line "Pokémon, choose 1 of them and this" line "attack does 20 damage to it." line "(Don't apply Weakness and" - line "Resistance for Benched Pok`mon.)" + line "Resistance for Benched Pokémon.)" done HighJumpKickName: ; 5f6d0 (17:76d0) @@ -1254,9 +1254,9 @@ LeerName: ; 5f7e6 (17:77e6) LeerDescription: ; 5f7ec (17:77ec) text "Flip a coin. If heads, the Defending" - line "Pok`mon can't attack Rhyhorn during" + line "Pokémon can't attack Rhyhorn during" line "your opponent's next turn." - line "(Benching or evolving either Pok`mon" + line "(Benching or evolving either Pokémon" line "ends this effect.)" done @@ -1281,14 +1281,14 @@ RamName: ; 5f8fa (17:78fa) RamDescription: ; 5f8ff (17:78ff) text "Rhydon does 20 damage to itself." line "If your opponent has any Benched" - line "Pok`mon, he or she chooses 1 of them" + line "Pokémon, he or she chooses 1 of them" line "and switches it with the Defending" - line "Pok`mon.(Do the damage before" - line "switching the Pok`mon." + line "Pokémon.(Do the damage before" + line "switching the Pokémon." done RamDescriptionCont: ; 5f9bf (17:79bf) - text "Switch the Pok`mon even if Rhydon" + text "Switch the Pokémon even if Rhydon" line "is Knocked Out.)" done @@ -1323,7 +1323,7 @@ KabutoArmorDescriptionCont: ; 5fb19 (17:7b19) done KabutoDescription: ; 5fb90 (17:7b90) - text "A Pok`mon that was resurrected from" + text "A Pokémon that was resurrected from" line "a fossil found in what was once the" line "ocean floor eons ago." done @@ -1344,7 +1344,7 @@ AbsorbDescription: ; 5fc0f (17:7c0f) text "Remove a number of damage counters" line "from Kabutops equal to half the" line "damage done to the Defending" - line "Pok`mon (after applying Weakness" + line "Pokémon (after applying Weakness" line "and Resistance)" line "(rounded up to the nearest 10)." done @@ -1381,7 +1381,7 @@ AerodactylKind: ; 5fe00 (17:7e00) done AerodactylDescription: ; 5fe08 (17:7e08) - text "A ferocious prehistoric Pok`mon that" + text "A ferocious prehistoric Pokémon that" line "goes for the enemy's throat with its" line "serrated saw-like fangs." done @@ -1405,7 +1405,7 @@ KadabraName: ; 5fed3 (17:7ed3) done KadabrasRecoverDescription: ; 5fedc (17:7edc) - text "Discard 1 ", TX_PSYCHIC, " Energy card attached to" + text "Discard 1 <PSYCHIC> Energy card attached to" line "Kadabra in order to use this attack." line "Remove all damage counters from" line "Kadabra." diff --git a/src/text/text12.asm b/src/text/text12.asm index 4bc570e..80b3530 100644 --- a/src/text/text12.asm +++ b/src/text/text12.asm @@ -2,8 +2,8 @@ DamageSwapDescription: ; 60000 (18:4000) text "As often as you like during your" line "turn (before your attack), you may" line "move 1 damage counter from 1 of your" - line "Pok`mon to another as long as you" - line "don't Knock Out that Pok`mon." + line "Pokémon to another as long as you" + line "don't Knock Out that Pokémon." line "This power can't be used if Alakazam" line "is Asleep, Confused, or Paralyzed." done @@ -19,8 +19,8 @@ SlowpokeName: ; 6014b (18:414b) done SlowpokesAmnesiaDescription: ; 60155 (18:4155) - text "Choose 1 of the Defending Pok`mon's" - line "attacks. That Pok`mon can't use" + text "Choose 1 of the Defending Pokémon's" + line "attacks. That Pokémon can't use" line "that attack during your opponent's" line "next turn." done @@ -51,7 +51,7 @@ ScavengeName: ; 602b5 (18:42b5) done ScavengeDescription: ; 602bf (18:42bf) - text "Discard 1 ", TX_PSYCHIC, " Energy card attached" + text "Discard 1 <PSYCHIC> Energy card attached" line "to Slowpoke in order to use this" line "attack. Put a Trainer card from your" line "discard pile into your hand." @@ -69,7 +69,7 @@ StrangeBehaviorDescription: ; 60360 (18:4360) text "As often as you like during your" line "turn (before your attack), you may" line "move 1 damage counter from 1 of your" - line "Pok`mon to Slowbro as long as you" + line "Pokémon to Slowbro as long as you" line "don't Knock Out Slowbro. This power" line "can't be used if Slowbro is Asleep," line "Confused, or Paralyzed." @@ -95,7 +95,7 @@ SleepingGasName: ; 604c3 (18:44c3) MayInflictSleepDescription: ; 604d1 (18:44d1) text "Flip a coin. If heads, the Defending" - line "Pok`mon is now Asleep." + line "Pokémon is now Asleep." done DestinyBondName: ; 6050e (18:450e) @@ -103,11 +103,11 @@ DestinyBondName: ; 6050e (18:450e) done DestinyBondDescription: ; 6051c (18:451c) - text "Discard 1 ", TX_PSYCHIC, " Energy card attached to" + text "Discard 1 <PSYCHIC> Energy card attached to" line "Gastly in order to use this attack." - line "If a Pok`mon Knocks Out Gastly" + line "If a Pokémon Knocks Out Gastly" line "during your opponent's next turn," - line "Knock Out that Pok`mon." + line "Knock Out that Pokémon." done GastlyKind: ; 605bf (18:45bf) @@ -116,7 +116,7 @@ GastlyKind: ; 605bf (18:45bf) Gastly1Description: ; 605c4 (18:45c4) text "Almost invisible, this gaseous" - line "Pok`mon cloaks the target and puts" + line "Pokémon cloaks the target and puts" line "it to sleep without notice." done @@ -135,7 +135,7 @@ EnergyConversionDescription: ; 6063c (18:463c) done Gastly2Description: ; 6069e (18:469e) - text "A mysterious Pok`mon. Some say it is" + text "A mysterious Pokémon. Some say it is" line "a lifeform from another dimension," line "while others believe it is formed" line "from smog." @@ -175,7 +175,7 @@ DreamEaterName: ; 6086a (18:486a) DreamEaterDescription: ; 60877 (18:4877) text "You can't use this attack unless" - line "the Defending Pok`mon is Asleep." + line "the Defending Pokémon is Asleep." done GengarName: ; 608ba (18:48ba) @@ -190,8 +190,8 @@ CurseDescription: ; 608c9 (18:48c9) text "Once during your turn (before your" line "attack), you may move 1 damage" line "counter from 1 of your opponent's" - line "Pok`mon to another (even if it would" - line "Knock Out the other Pok`mon)." + line "Pokémon to another (even if it would" + line "Knock Out the other Pokémon)." line "This power can't be used if Gengar" line "is Asleep, Confused, or Paralyzed." done @@ -202,10 +202,10 @@ DarkMindName: ; 609b7 (18:49b7) DarkMindDescription: ; 609c2 (18:49c2) text "If your opponent has any Benched" - line "Pok`mon, choose 1 of them and this" + line "Pokémon, choose 1 of them and this" line "attack does 10 damage to it." line "(Don't apply Weakness and Resistance" - line "for Benched Pok`mon.)" + line "for Benched Pokémon.)" done GengarKind: ; 60a5f (18:4a5f) @@ -213,7 +213,7 @@ GengarKind: ; 60a5f (18:4a5f) done GengarDescription: ; 60a67 (18:4a67) - text "Under a full moon, this Pok`mon" + text "Under a full moon, this Pokémon" line "likes to mimic the shadows of people" line "and laugh at their fright." done @@ -281,7 +281,7 @@ MeditateName: ; 60d21 (18:4d21) MrMimesMeditateDescription: ; 60d2b (18:4d2b) text "Does 10 damage plus 10 more damage" line "for each damage counter on the" - line "Defending Pok`mon." + line "Defending Pokémon." done MrMimeKindOrBarrierName: ; 60d81 (18:4d81) @@ -306,7 +306,7 @@ DoubleAttackX10Description: ; 60de2 (18:4de2) JynxsMeditateDescription: ; 60e27 (18:4e27) text "Does 20 damage plus 10 more damage" line "for each damage counter on the" - line "Defending Pok`mon." + line "Defending Pokémon." done JynxKind: ; 60e7d (18:4e7d) @@ -314,7 +314,7 @@ JynxKind: ; 60e7d (18:4e7d) done JynxDescription: ; 60e8a (18:4e8a) - text "Merely by meditating, the Pok`mon" + text "Merely by meditating, the Pokémon" line "launches a powerful psychic energy" line "attack." done @@ -330,11 +330,11 @@ PsychicName: ; 60ee0 (18:4ee0) PsychicDescription: ; 60ee9 (18:4ee9) text "Does 10 damage plus 10 more damage" line "for each Energy card attached to the" - line "Defending Pok`mon." + line "Defending Pokémon." done BarrierDescription: ; 60f45 (18:4f45) - text "Discard 1 ", TX_PSYCHIC, " Energy card attached to" + text "Discard 1 <PSYCHIC> Energy card attached to" line "Mewtwo in order to use this attack." line "During your opponent's next turn," line "prevent all effects of attacks," @@ -346,7 +346,7 @@ MewtwoKind: ; 60ff3 (18:4ff3) done Mewtwo1Description: ; 60ffc (18:4ffc) - text "A scientist created this Pok`mon" + text "A scientist created this Pokémon" line "after years of horrific" line "gene-splicing and DNA engineering" line "experiments." @@ -369,7 +369,7 @@ PsyburnName: ; 610c7 (18:50c7) Mewtwo2Description: ; 610d0 (18:50d0) text "Years of genetic experiments" line "resulted in the creation of this" - line "never-before-seen violent Pok`mon." + line "never-before-seen violent Pokémon." done MewName: ; 61132 (18:5132) @@ -383,7 +383,7 @@ NeutralizingShieldName: ; 61137 (18:5137) NeutralizingShieldDescription: ; 6114c (18:514c) text "Prevent all effects of attacks," line "including damage, done to Mew by" - line "evolved Pok`mon (excluding your" + line "evolved Pokémon (excluding your" line "own). This power stops working while" line "Mew is Asleep, Confused, or" line "Paralyzed." @@ -405,14 +405,14 @@ MysteryAttackName: ; 61270 (18:5270) MysteryAttackDescription: ; 61280 (18:5280) text "Does a random amount of damage to" - line "the Defending Pok`mon and may cause" + line "the Defending Pokémon and may cause" line "a random effect to the Defending" - line "Pok`mon." + line "Pokémon." done Mew2Description: ; 612f1 (18:52f1) text "When viewed through a microscope, " - line "this Pok`mon's short, fine, delicate" + line "this Pokémon's short, fine, delicate" line "hair can be seen." done @@ -423,7 +423,7 @@ PsywaveName: ; 6134c (18:534c) PsywaveDescription: ; 61355 (18:5355) text "Does 10 damage times the number of" line "Energy cards attached to the" - line "Defending Pok`mon." + line "Defending Pokémon." done DevolutionBeamName: ; 613a9 (18:53a9) @@ -431,10 +431,10 @@ DevolutionBeamName: ; 613a9 (18:53a9) done DevolutionBeamDescription: ; 613ba (18:53ba) - text "Choose an evolved Pok`mon (Your" + text "Choose an evolved Pokémon (Your" line "own or your opponent's). Return" line "the highest stage evolution card" - line "on that Pok`mon to Its player's" + line "on that Pokémon to Its player's" line "hand." done @@ -464,7 +464,7 @@ PidgeottosMirrorMoveDescription: ; 614d0 (18:54d0) text "If Pidgeotto was attacked last turn," line "do the final result of that attack" line "on Pidgeotto to the Defending" - line "Pok`mon." + line "Pokémon." done PidgeottoKind: ; 61540 (18:5540) @@ -473,7 +473,7 @@ PidgeottoKind: ; 61540 (18:5540) PidgeottoDescription: ; 61546 (18:5546) text "Very protective of its sprawling" - line "territory, this Pok`mon will" + line "territory, this Pokémon will" line "fiercely peck at any intruder." done @@ -487,7 +487,7 @@ SlicingWindName: ; 615ad (18:55ad) SlicingWildDescription: ; 615bb (18:55bb) text "Does 30 damage to 1 of your" - line "opponent's Pok`mon chosen at random." + line "opponent's Pokémon chosen at random." line "Don't apply Weakness and Resistance" line "for this attack. (Any other effects" line "that would happen after applying" @@ -501,16 +501,16 @@ GaleName: ; 6168d (18:568d) GaleDescription: ; 61693 (18:5693) text "Switch Pidgeot with 1 of your" - line "Benched Pok`mon chosen at random." + line "Benched Pokémon chosen at random." line "If your opponent has any Benched" - line "Pok`mon, switch the Defending" - line "Pok`mon with 1 of them chosen at" + line "Pokémon, switch the Defending" + line "Pokémon with 1 of them chosen at" line "random. (Do the damage before" - line "switching the Pok`mon.)" + line "switching the Pokémon.)" done Pidgeot1Description: ; 6176a (18:576a) - text "This Pok`mon flies at Mach 2 speed," + text "This Pokémon flies at Mach 2 speed," line "seeking prey. Its large talons are" line "feared as wicked weapons." done @@ -521,8 +521,8 @@ HurricaneName: ; 617cc (18:57cc) HurricaneDescription: ; 617d7 (18:57d7) text "Unless this attack Knocks Out the" - line "Defending Pok`mon, return the" - line "Defending Pok`mon and all cards" + line "Defending Pokémon, return the" + line "Defending Pokémon and all cards" line "attached to it to your opponent's" line "hand." done @@ -556,9 +556,9 @@ SuperFangName: ; 61939 (18:5939) done SuperFangDescription: ; 61945 (18:5945) - text "Does damage to the Defending Pok`mon" + text "Does damage to the Defending Pokémon" line "equal to half the Defending" - line "Pok`mon's remaining HP (rounded up" + line "Pokémon's remaining HP (rounded up" line "to the nearest 10)." done @@ -579,7 +579,7 @@ PeckName: ; 61a21 (18:5a21) SpearowsMirrorMoveDescription: ; 61a27 (18:5a27) text "If Spearow was attacked last turn," line "do the final result of that attack" - line "on Spearow to the Defending Pok`mon." + line "on Spearow to the Defending Pokémon." done SpearowDescription: ; 61a93 (18:5a93) @@ -626,7 +626,7 @@ MetronomeName: ; 61bf2 (18:5bf2) done ClefairysMetronomeDescription: ; 61bfd (18:5bfd) - text "Choose 1 of the Defending Pok`mon's" + text "Choose 1 of the Defending Pokémon's" line "attacks. Metronome copies that" line "attack except for its Energy costs." line "(No matter what type the Defending" @@ -649,11 +649,11 @@ ClefableName: ; 61d1c (18:5d1c) done ClefablesMetronomeDescription: ; 61d26 (18:5d26) - text "Choose 1 of the Defending Pok`mon's" + text "Choose 1 of the Defending Pokémon's" line "attacks. Metronome copies that" line "attack except for its Energy costs." line "(No matter what type the Defending" - line "Pok`mon is, Clefable's type is" + line "Pokémon is, Clefable's type is" line "still Colorless.)" done @@ -665,7 +665,7 @@ ClefablesMinimizeDescription: ; 61de2 (18:5de2) done ClefableDescription: ; 61e66 (18:5e66) - text "A timid Fairy Pok`mon that is rarely" + text "A timid Fairy Pokémon that is rarely" line "seen. It will run and hide the" line "moment it senses people." done @@ -708,7 +708,7 @@ FriendshipSongName: ; 61fa8 (18:5fa8) FriendshipSongDescription: ; 61fb9 (18:5fb9) text "Flip a coin. If heads, put a Basic" - line "Pok`mon card chosen at random from" + line "Pokémon card chosen at random from" line "your deck onto your Bench. (You" line "can't use this attack if your Bench" line "is full.)" @@ -751,7 +751,7 @@ DoTheWaveName: ; 621b8 (18:61b8) DoTheWaveDescription: ; 621c5 (18:61c5) text "Does 10 damage plus 10 more damage" - line "for each of your Benched Pok`mon." + line "for each of your Benched Pokémon." done WigglytuffDescription: ; 6220b (18:620b) @@ -770,7 +770,7 @@ CatPunchName: ; 6227c (18:627c) CatPunchDescription: ; 62287 (18:6287) text "Does 20 damage to 1 of your" - line "opponent's Pok`mon chosen at random." + line "opponent's Pokémon chosen at random." line "Don't apply Weakness and Resistance" line "for this attack. (Any other effects" line "that would happen after applying" @@ -811,12 +811,12 @@ PounceName: ; 6246d (18:646d) done PounceDescription: ; 62475 (18:6475) - text "If the Defending Pok`mon attacks" + text "If the Defending Pokémon attacks" line "Persian during your opponent's next" line "turn, any damage done by the attack" line "is reduced by 10 (after applying" line "Weakness and Resistance). (Benching" - line "or evolving either Pok`mon ends this" + line "or evolving either Pokémon ends this" line "effect.)" done @@ -889,8 +889,8 @@ RetreatAidName: ; 62796 (18:6796) RetreatAidDescription: ; 627a3 (18:67a3) text "As long as Dodrio is Benched, pay" - line TX_COLORLESS, " less to retreat your Active" - line "Pok`mon." + line "<COLORLESS> less to retreat your Active" + line "Pokémon." done DodriosRageDescription: ; 627ee (18:67ee) @@ -946,7 +946,7 @@ ChanseysDoubleEdgeDescription: ; 629c2 (18:69c2) done ChanseyDescription: ; 629e5 (18:69e5) - text "A rare and elusive Pok`mon that is" + text "A rare and elusive Pokémon that is" line "said to bring happiness to those" line "who manage to catch it." done @@ -1014,7 +1014,7 @@ MorphDescription: ; 62be8 (18:6be8) text "Remove all damage counters from" line "Ditto. For the rest of the game," line "replace Ditto with a copy of a Basic" - line "Pok`mon card (other than Ditto)" + line "Pokémon card (other than Ditto)" line "chosen at random from your deck." done @@ -1042,9 +1042,9 @@ TailWagName: ; 62d8a (18:6d8a) TailWagDescription: ; 62d94 (18:6d94) text "Flip a coin. If heads, the Defending" - line "Pok`mon can't attack Eevee during" + line "Pokémon can't attack Eevee during" line "your opponent's next turn. (Benching" - line "or evolving either Pok`mon ends this" + line "or evolving either Pokémon ends this" line "effect.)" done @@ -1067,7 +1067,7 @@ Conversion1Name: ; 62ea6 (18:6ea6) done Conversion1Description: ; 62eb4 (18:6eb4) - text "If the Defending Pok`mon has a" + text "If the Defending Pokémon has a" line "Weakness, you may change it to a" line "type of your choice other than" line "Colorless." @@ -1088,7 +1088,7 @@ PorygonKind: ; 62f79 (18:6f79) done PorygonDescription: ; 62f82 (18:6f82) - text "A Pok`mon that consists entirely of" + text "A Pokémon that consists entirely of" line "programming code. Capable of moving" line "freely in cyberspace." done @@ -1128,7 +1128,7 @@ DratiniName: ; 630fd (18:70fd) done DratiniDescription: ; 63106 (18:7106) - text "Long considered a mythical Pok`mon" + text "Long considered a mythical Pokémon" line "until recently, when a small colony" line "was found living underwater." done @@ -1142,7 +1142,7 @@ SlamName: ; 63176 (18:7176) done DragonairDescription: ; 6317c (18:717c) - text "A mystical Pok`mon that exudes a" + text "A mystical Pokémon that exudes a" line "gentle aura. Has the ability to" line "change climate conditions." done @@ -1158,14 +1158,14 @@ HealingWindName: ; 631e4 (18:71e4) HealingWindDescription: ; 631f2 (18:71f2) text "When you put Dragonite into play," line "remove 2 damage counters from each" - line "of your Pok`mon. If a Pok`mon has " + line "of your Pokémon. If a Pokémon has " line "fewer damage counters than that," line "remove all of them from that" - line "Pok`mon." + line "Pokémon." done Dragonite1Description: ; 632a2 (18:72a2) - text "It is said that this Pok`mon lives" + text "It is said that this Pokémon lives" line "somewhere in the sea and that it" line "flies. However, it is only a rumor." done @@ -1178,7 +1178,7 @@ StepInDescription: ; 63314 (18:7314) text "Once during your turn (before your" line "attack), if Dragonite is on your" line "Bench, you may switch it with your" - line "Active Pok`mon." + line "Active Pokémon." done DoubleAttackX40Description: ; 6338c (18:738c) @@ -1188,7 +1188,7 @@ DoubleAttackX40Description: ; 6338c (18:738c) DragoniteDescription: ; 633d1 (18:73d1) text "An extremely rarely seen marine" - line "Pok`mon. Its intelligence is said" + line "Pokémon. Its intelligence is said" line "to match that of humans." done @@ -1224,7 +1224,7 @@ MrFujiName: ; 634e2 (18:74e2) done MrFujiDescription: ; 634eb (18:74eb) - text "Choose a Pok`mon on your Bench." + text "Choose a Pokémon on your Bench." line "Shuffle it and any cards attached" line "to it into your deck." done @@ -1245,37 +1245,37 @@ ImakuniName: ; 635c1 (18:75c1) done ImakuniDescription: ; 635cb (18:75cb) - text "Your Active Pok`mon is now Confused." + text "Your Active Pokémon is now Confused." line "Imakuni wants you to play him as a" - line "Basic Pok`mon, but you can't." + line "Basic Pokémon, but you can't." line "A mysterious creature not listed in" line "the Pok`dex. He asks kids around the" - line "world,\"Who is cuter-Pikachu or me?\"" + line "world,”Who is cuter-Pikachu or me?”" done PokemonTraderName: ; 6369f (18:769f) - text "Pok`mon Trader" + text "Pokémon Trader" done PokemonTraderDescription: ; 636af (18:76af) - text "Trade 1 of the Basic Pok`mon or" + text "Trade 1 of the Basic Pokémon or" line "Evolution cards in your hand for 1" - line "of the Basic Pok`mon or Evolution" + line "of the Basic Pokémon or Evolution" line "cards from your deck. Show both" line "cards to your opponent." line "Shuffle your deck afterward." done PokemonBreederName: ; 6376a (18:776a) - text "Pok`mon Breeder" + text "Pokémon Breeder" done PokemonBreederDescription: ; 6377b (18:777b) text "Put a Stage 2 Evolution card from" line "your hand on the matching Basic" - line "Pok`mon. You can only play this card" + line "Pokémon. You can only play this card" line "when you would be allowed to evolve" - line "that Pok`mon anyway." + line "that Pokémon anyway." done ClefairyDollName: ; 6381c (18:781c) @@ -1284,8 +1284,8 @@ ClefairyDollName: ; 6381c (18:781c) ClefairyDollDescription: ; 6382b (18:782b) text "Play Clefairy Doll as if it were a" - line "Basic Pok`mon. While in play," - line "Clefairy Doll counts as a Pok`mon" + line "Basic Pokémon. While in play," + line "Clefairy Doll counts as a Pokémon" line "(instead of a Trainer card)." line "Clefairy Doll has no attacks, can't" line "retreat, and can't be Asleep," @@ -1295,18 +1295,18 @@ ClefairyDollDescription: ; 6382b (18:782b) ClefairyDollDescriptionCont: ; 63910 (18:7910) text "If Clefairy Doll is Knocked Out, it" line "doesn't count as a Knocked Out" - line "Pok`mon. At any time during your" + line "Pokémon. At any time during your" line "turn before your attack, you may" line "discard Clefairy Doll." - line "(Use GameBoy Pok`mon Power menu" + line "(Use GameBoy Pokémon Power menu" line "option to do this.)" done MysteriousFossilDescription: ; 639e1 (18:79e1) text "Play Mysterious Fossil as if it were" - line "a Basic Pok`mon. While in play," + line "a Basic Pokémon. While in play," line "Mysterious Fossil counts as a" - line "Pok`mon (instead of a Trainer card)." + line "Pokémon (instead of a Trainer card)." line "Mysterious Fossil has no attacks," line "can't retreat, and can't be Asleep," line "Confused, Paralyzed, or Poisoned." @@ -1315,7 +1315,7 @@ MysteriousFossilDescription: ; 639e1 (18:79e1) MysteriousFossilDescriptionCont: ; 63ad2 (18:7ad2) text "If Mysterious Fossil is Knocked Out," line "it doesn't count as a Knocked Out" - line "Pok`mon. (Discard it anyway.) At any" + line "Pokémon. (Discard it anyway.) At any" line "time during your turn before your" line "attack, you may discard Mysterious" line "Fossil from play. (Use GameBoy Pok`-" @@ -1358,7 +1358,7 @@ EnergyRemovalName: ; 63d27 (18:7d27) EnergyRemovalDescription: ; 63d37 (18:7d37) text "Choose 1 Energy card attached to 1" - line "of your opponent's Pok`mon and" + line "of your opponent's Pokémon and" line "discard it." done @@ -1368,8 +1368,8 @@ SuperEnergyRemovalName: ; 63d86 (18:7d86) SuperEnergyRemovalDescription: ; 63d9c (18:7d9c) text "Discard 1 Energy card attached to 1" - line "of your own Pok`mon in order to" - line "choose 1 of your opponent's Pok`mon" + line "of your own Pokémon in order to" + line "choose 1 of your opponent's Pokémon" line "and up to 2 Energy cards attached" line "to it. Discard those Energy cards." done @@ -1379,20 +1379,20 @@ SwitchName: ; 63e4a (18:7e4a) done SwitchDescription: ; 63e52 (18:7e52) - text "Switch 1 of your Benched Pok`mon" - line "with your Active Pok`mon." + text "Switch 1 of your Benched Pokémon" + line "with your Active Pokémon." done PokemonCenterName: ; 63e8e (18:7e8e) - text "Pok`mon Center" + text "Pokémon Center" done PokemonCenterDescription: ; 63e9e (18:7e9e) text "Remove all damage counters from all" - line "of your own Pok`mon with damage" + line "of your own Pokémon with damage" line "counters on them, then discard all" line "Energy cards attached to those" - line "Pok`mon." + line "Pokémon." done PokeBallName: ; 63f2e (18:7f2e) @@ -1402,7 +1402,7 @@ PokeBallName: ; 63f2e (18:7f2e) PokeBallDescription: ; 63f39 (18:7f39) text "Flip a coin. If heads, you may" line "search your deck for any Basic" - line "Pok`mon or Evolution card. Show that" + line "Pokémon or Evolution card. Show that" line "card to your opponent, then put it" line "into your hand. Shuffle your deck" line "afterward." diff --git a/src/text/text13.asm b/src/text/text13.asm index 0a39189..b3ba269 100644 --- a/src/text/text13.asm +++ b/src/text/text13.asm @@ -1,6 +1,6 @@ ScoopUpDescription: ; 64000 (19:4000) - text "Choose 1 of your Pok`mon in play" - line "and return its Basic Pok`mon card to" + text "Choose 1 of your Pokémon in play" + line "and return its Basic Pokémon card to" line "your hand. (Discard all cards" line "attached to that card.)" done @@ -33,12 +33,12 @@ PlusPowerName: ; 64177 (19:4177) PlusPowerDescription: ; 64182 (19:4182) text "Attach PlusPower to your Active" - line "Pok`mon. At the end of your turn," - line "discard PlusPower. If this Pok`mon's" + line "Pokémon. At the end of your turn," + line "discard PlusPower. If this Pokémon's" line "attack does damage to any Active" - line "Pok`mon (after applying Weakness and" + line "Pokémon (after applying Weakness and" line "Resistance), the attack does 10 more" - line "damage to that Active Pok`mon." + line "damage to that Active Pokémon." done DefenderName: ; 64274 (19:4274) @@ -47,10 +47,10 @@ DefenderName: ; 64274 (19:4274) DefenderDescription: ; 6427e (19:427e) text "Attach Defender to 1 of your" - line "Pok`mon. At the end of your" + line "Pokémon. At the end of your" line "opponent's next turn, discard" line "Defender. Damage done to that" - line "Pok`mon by attacks is reduced by 20" + line "Pokémon by attacks is reduced by 20" line "(after applying Weakness and" line "Resistance)." done @@ -72,8 +72,8 @@ GustOfWindName: ; 643c2 (19:43c2) GustOfWindDescription: ; 643d0 (19:43d0) text "Choose 1 of your opponent's Benched" - line "Pok`mon and switch it with his or" - line "her Active Pok`mon." + line "Pokémon and switch it with his or" + line "her Active Pokémon." done DevolutionSprayName: ; 6442b (19:442b) @@ -81,14 +81,14 @@ DevolutionSprayName: ; 6442b (19:442b) done DevolutionSprayDescription: ; 6443d (19:443d) - text "Choose 1 of your own Pok`mon in play" + text "Choose 1 of your own Pokémon in play" line "and a Stage of Evolution. Discard" line "all Evolution cards of that Stage or" - line "higher attached to that Pok`mon." + line "higher attached to that Pokémon." done DevolutionSprayDescriptionCont: ; 644cb (19:44cb) - text "That Pok`mon is no longer Asleep," + text "That Pokémon is no longer Asleep," line "Confused, Paralyzed, Poisoned, or" line "anything else that might be the" line "result of an attack (just as if you" @@ -101,7 +101,7 @@ PotionName: ; 64565 (19:4565) PotionDescription: ; 6456d (19:456d) text "Remove 2 damage counters from 1 of" - line "your Pok`mon. If that Pok`mon has" + line "your Pokémon. If that Pokémon has" line "fewer damage counters than that," line "remove all of them." done @@ -112,9 +112,9 @@ SuperPotionName: ; 645e8 (19:45e8) SuperPotionDescription: ; 645f6 (19:45f6) text "Discard 1 Energy card attached to 1" - line "of your own Pok`mon in order to" + line "of your own Pokémon in order to" line "remove 4 damage counters from that" - line "Pok`mon. If the Pok`mon has fewer" + line "Pokémon. If the Pokémon has fewer" line "damage counters than that, remove" line "all of them." done @@ -124,7 +124,7 @@ FullHealName: ; 646af (19:46af) done FullHealDescription: ; 646ba (19:46ba) - text "Your Active Pok`mon is no longer" + text "Your Active Pokémon is no longer" line "Asleep, Confused, Paralyzed, or" line "Poisoned." done @@ -134,9 +134,9 @@ ReviveName: ; 64706 (19:4706) done ReviveDescription: ; 6470e (19:470e) - text "Put 1 Basic Pok`mon card from your" + text "Put 1 Basic Pokémon card from your" line "discard pile onto your Bench." - line "Put damage counters on that Pok`mon" + line "Put damage counters on that Pokémon" line "equal to half its HP (rounded down" line "to the nearest 10). (You can't play" line "Revive if your Bench is full.)" @@ -153,14 +153,14 @@ MaintenanceDescription: ; 647e7 (19:47e7) done PokemonFluteName: ; 6483c (19:483c) - text "Pok`mon Flute" + text "Pokémon Flute" done PokemonFluteDescription: ; 6484b (19:484b) - text "Choose 1 Basic Pok`mon card from" + text "Choose 1 Basic Pokémon card from" line "your opponent's discard pile and put" line "it onto his or her Bench. (You can't" - line "play Pok`mon Flute if your" + line "play Pokémon Flute if your" line "opponent's Bench is full.)" done diff --git a/src/text/text2.asm b/src/text/text2.asm index 55abfb9..d02bdbd 100644 --- a/src/text/text2.asm +++ b/src/text/text2.asm @@ -122,17 +122,17 @@ Text010d: ; 3851f (e:451f) done SelectPkmnOnBenchToSwitchWithActiveText: ; 38533 (e:4533) - text "Select a Pok`mon on the Bench" - line "to switch with the Active Pok`mon." + text "Select a Pokémon on the Bench" + line "to switch with the Active Pokémon." done Text010f: ; 38575 (e:4575) - text "Select a Pok`mon to place" + text "Select a Pokémon to place" line "in the Arena." done Text0110: ; 3859e (e:459e) - text TX_RAM1, " is selecting a Pok`mon" + text TX_RAM1, " is selecting a Pokémon" line "to place in the Arena." done @@ -147,7 +147,7 @@ Text0112: ; 3860a (e:460a) done Text0113: ; 38647 (e:4647) - text "Choose the Pok`mon whose color you" + text "Choose the Pokémon whose color you" line "wish to change with Color change." done @@ -173,22 +173,22 @@ Text0117: ; 386f2 (e:46f2) text "Draw 1 card from the Deck." done -Text0118: ; 3870e (e:470e) +DrawCardsFromTheDeck: ; 3870e (e:470e) text "Draw ", TX_RAM3, " card(s) from the Deck." done -Text0119: ; 3872d (e:472d) +NoCardsInDeckCannotDraw: ; 3872d (e:472d) text "Cannot draw a card because" line "there are no cards in the Deck." done Text011a: ; 38769 (e:4769) - text "Choose a Pok`mon on the Bench" + text "Choose a Pokémon on the Bench" line "to give damage to." done Text011b: ; 3879b (e:479b) - text "Choose up to 3 Pok`mon on the" + text "Choose up to 3 Pokémon on the" line "Bench to give damage to." done @@ -198,7 +198,7 @@ Text011c: ; 387d3 (e:47d3) done Text011d: ; 387fe (e:47fe) - text "Choose a Pok`mon to attach" + text "Choose a Pokémon to attach" line "the Energy card to." done @@ -229,7 +229,7 @@ Text0122: ; 388ee (e:48ee) Text0123: ; 3890e (e:490e) text "Choose and Discard an Energy card" - line "from the opponent's Active Pok`mon." + line "from the opponent's Active Pokémon." done Text0124: ; 38955 (e:4955) @@ -238,7 +238,7 @@ Text0124: ; 38955 (e:4955) done Text0125: ; 3899f (e:499f) - text "Choose a Basic Fighting Pok`mon" + text "Choose a Basic Fighting Pokémon" line "from the Deck." done @@ -261,27 +261,27 @@ Text0129: ; 38a14 (e:4a14) done Text012a: ; 38a31 (e:4a31) - text "Choose a Nidoran% or a" - line "Nidoran$ from the Deck." + text "Choose a Nidoran♀ or a" + line "Nidoran♂ from the Deck." done Text012b: ; 38a61 (e:4a61) - text "Choose a Nidoran%" - line "or a Nidoran$." + text "Choose a Nidoran♀" + line "or a Nidoran♂." done Text012c: ; 38a83 (e:4a83) text "Choose a Basic" - line "Fighting Pok`mon" + line "Fighting Pokémon" done Text012d: ; 38aa4 (e:4aa4) text "Procedure for Energy Transfer:" line "" - line "1. Choose the Pok`mon to move Grass" + line "1. Choose the Pokémon to move Grass" line " Energy from. Press the A Button." line "" - line "2. Choose the Pok`mon to move the" + line "2. Choose the Pokémon to move the" line " energy to and press the A Button." line "" line "3. Repeat steps 1 and 2." @@ -299,18 +299,18 @@ Text012f: ; 38bb3 (e:4bb3) done Text0130: ; 38bc9 (e:4bc9) - text "Choose a Pok`mon to remove" + text "Choose a Pokémon to remove" line "the Damage counter from." done Text0131: ; 38bfe (e:4bfe) text "Procedure for Curse:" line "" - line "1. Choose a Pok`mon to move the" + line "1. Choose a Pokémon to move the" line " Damage counter from and press" line " the A Button." line "" - line "2. Choose a Pok`mon to move the" + line "2. Choose a Pokémon to move the" line " Damage counter to and press" line " the A Button." line "" @@ -319,7 +319,7 @@ Text0131: ; 38bfe (e:4bfe) Text0132: ; 38cda (e:4cda) text "Choose 2 Energy cards from the" - line "Discard Pileto attach to a Pok`mon." + line "Discard Pileto attach to a Pokémon." done Text0133: ; 38d1e (e:4d1e) @@ -356,11 +356,11 @@ Text0136: ; 38e70 (e:4e70) Text0137: ; 38e90 (e:4e90) text "Procedure for Damage Swap:" line "" - line "1. Choose a Pok`mon to move a" + line "1. Choose a Pokémon to move a" line " Damage counter from and press" line " the A Button." line "" - line "2. Choose a Pok`mon to move the" + line "2. Choose a Pokémon to move the" line " Damage counter to and press" line " the A Button." line "" @@ -369,17 +369,17 @@ Text0137: ; 38e90 (e:4e90) line "4. Press the B Button to end." line "" line "5. You cannot move the counter if" - line " it will Knock Out the Pok`mon." + line " it will Knock Out the Pokémon." done Text0138: ; 38fcc (e:4fcc) text "Procedure for Devolution Beam." line "" - line "1. Choose either a Pok`mon in your" + line "1. Choose either a Pokémon in your" line " Play Area or your opponent's" line " Play Area and press the A Button." line "" - line "2. Choose the Pok`mon to Devolve" + line "2. Choose the Pokémon to Devolve" line " and press the A Button." line "" line "3. Press the B Button to cancel." @@ -388,7 +388,7 @@ Text0138: ; 38fcc (e:4fcc) Text0139: ; 390b4 (e:50b4) text "Procedure for Strange Behavior:" line "" - line "1. Choose the Pok`mon with the" + line "1. Choose the Pokémon with the" line " Damage counters to move to" line " Slowbro and press the A Button." line "" @@ -426,7 +426,7 @@ Text013e: ; 3928c (e:528c) done Text013f: ; 392c9 (e:52c9) - text "Nidoran$ Nidoran%" + text "Nidoran♂ Nidoran♀" done Text0140: ; 392dc (e:52dc) @@ -442,7 +442,7 @@ Text0142: ; 392f0 (e:52f0) done Text0143: ; 392f8 (e:52f8) - text "Fighting Pok`mon" + text "Fighting Pokémon" done Text0144: ; 3930a (e:530a) @@ -469,7 +469,7 @@ Text0148: ; 39392 (e:5392) done Text0149: ; 393bb (e:53bb) - text "A Basic Pok`mon was placed" + text "A Basic Pokémon was placed" line "on each Bench." done @@ -494,7 +494,7 @@ Text014d: ; 3944b (e:544b) done Text014e: ; 39470 (e:5470) - text "The Pok`mon cards in ", TX_RAM1, "'s" + text "The Pokémon cards in ", TX_RAM1, "'s" line "Hand and Deck were shuffled" done @@ -504,7 +504,7 @@ Text014f: ; 394a6 (e:54a6) done Text0150: ; 394f0 (e:54f0) - text "Choose a Pok`mon to remove" + text "Choose a Pokémon to remove" line "the Damage counter from." done @@ -514,7 +514,7 @@ Text0151: ; 39525 (e:5525) done Text0152: ; 39550 (e:5550) - text "Choose a Pok`mon to remove" + text "Choose a Pokémon to remove" line "Energy from and choose the Energy." done @@ -524,7 +524,7 @@ Text0153: ; 3958f (e:558f) done Text0154: ; 395c3 (e:55c3) - text "Choose a Pok`mon and press the A" + text "Choose a Pokémon and press the A" line "Button to remove Damage counters." done @@ -544,7 +544,7 @@ Text0157: ; 39666 (e:5666) done Text0158: ; 3968b (e:568b) - text "Choose a Pok`mon to" + text "Choose a Pokémon to" line "attach Defender to." done @@ -554,22 +554,22 @@ Text0159: ; 396b4 (e:56b4) done Text015a: ; 396e6 (e:56e6) - text "Choose a Pok`mon to" + text "Choose a Pokémon to" line "return to the Deck." done Text015b: ; 3970f (e:570f) - text "Choose a Pok`mon to" + text "Choose a Pokémon to" line "place in play." done Text015c: ; 39733 (e:5733) - text "Choose a Basic Pok`mon" + text "Choose a Basic Pokémon" line "to Evolve." done Text015d: ; 39756 (e:5756) - text "Choose a Pok`mon to" + text "Choose a Pokémon to" line "Scoop Up." done @@ -585,12 +585,12 @@ Text015f: ; 3979e (e:579e) Text0160: ; 397b8 (e:57b8) text "Choose a Basic or Evolution" - line "Pok`mon card from the Deck." + line "Pokémon card from the Deck." done Text0161: ; 397f1 (e:57f1) text "Choose" - line "a Pok`mon card." + line "a Pokémon card." done Text0162: ; 39809 (e:5809) @@ -612,7 +612,7 @@ Text0165: ; 3986b (e:586b) done Text0166: ; 3987a (e:587a) - text "Choose a Basic Pok`mon" + text "Choose a Basic Pokémon" line "to place on the Bench." done @@ -622,8 +622,8 @@ Text0167: ; 398a9 (e:58a9) done Text0168: ; 398e8 (e:58e8) - text "Choose a Pok`mon in your Area, then" - line "a Pok`mon in your opponent's." + text "Choose a Pokémon in your Area, then" + line "a Pokémon in your opponent's." done Text0169: ; 3992b (e:592b) @@ -632,8 +632,8 @@ Text0169: ; 3992b (e:592b) done Text016a: ; 39952 (e:5952) - text "Choose a Pok`mon to switch" - line "with the Active Pok`mon." + text "Choose a Pokémon to switch" + line "with the Active Pokémon." done Text016b: ; 39987 (e:5987) @@ -661,11 +661,11 @@ Text016f: ; 39a31 (e:5a31) line "in the Hand." done -Text0170: ; 39a4c (e:5a4c) +TheCardYouReceivedText: ; 39a4c (e:5a4c) text "The card you received" done -Text0171: ; 39a63 (e:5a63) +YouReceivedTheseCardsText: ; 39a63 (e:5a63) text "You received these cards:" done @@ -902,7 +902,7 @@ Text01a2: ; 3a111 (e:6111) text "Now printing..." done -Text01a3: ; 3a122 (e:6122) +DrMasonText: ; 3a122 (e:6122) text "Dr. Mason" done @@ -910,9 +910,9 @@ Text01a4: ; 3a12d (e:612d) text "Draw 7 cards," line "" line "and get ready for the battle!" - line "Choose your Active Pok`mon." - line "You can only choose Basic Pok`mon" - line "as your Active Pok`mon," + line "Choose your Active Pokémon." + line "You can only choose Basic Pokémon" + line "as your Active Pokémon," line "so you can choose either Goldeen" line "or Staryu." line "For our practice duel," @@ -925,11 +925,11 @@ Text01a5: ; 3a204 (e:6204) done Text01a6: ; 3a230 (e:6230) - text "Next, put your Pok`mon on your" + text "Next, put your Pokémon on your" line "Bench." - line "You can switch Benched Pok`mon" - line "with your Active Pok`mon." - line "Again, only Basic Pok`mon can be" + line "You can switch Benched Pokémon" + line "with your Active Pokémon." + line "Again, only Basic Pokémon can be" line "placed on your Bench." line "Choose Staryu from your hand and" line "put it there." @@ -941,7 +941,7 @@ Text01a7: ; 3a2f6 (e:62f6) done Text01a8: ; 3a321 (e:6321) - text "When you have no Pok`mon to put on" + text "When you have no Pokémon to put on" line "your Bench, press the B Button to" line "finish." done @@ -953,7 +953,7 @@ Text01a9: ; 3a36f (e:636f) Text01aa: ; 3a3ad (e:63ad) text "2. Attach a Water Energy card to" - line " your Active Pok`mon, Goldeen." + line " your Active Pokémon, Goldeen." done Text01ab: ; 3a3f0 (e:63f0) @@ -1056,25 +1056,25 @@ Text01be: ; 3a83c (e:683c) text "1. Your Seaking was Knocked Out." line " Choose your Benched Staryu" line " and press the A Button to set" - line " it as your Active Pok`mon." + line " it as your Active Pokémon." done Text01bf: ; 3a8bb (e:68bb) - text "2. You can check Pok`mon data by" + text "2. You can check Pokémon data by" line " pressing SELECT." done Text01c0: ; 3a8f1 (e:68f1) text "To use the attack command, you need" line "to attach Energy cards to your" - line "Pok`mon." + line "Pokémon." line "" line "Choose Cards from the Menu, and" line "select a Water Energy card." done Text01c1: ; 3a97b (e:697b) - text "Next, choose your Active Pok`mon," + text "Next, choose your Active Pokémon," line "Goldeen, and press the A Button." line "Then the Water Energy card will" line "be attached to Goldeen." @@ -1101,10 +1101,10 @@ Text01c4: ; 3ab08 (e:6b08) line "Energy to use Waterfall." line "You need to attach a Psychic Energy" line "card to Seaking." - line TX_COLORLESS, " means any Energy card." + line "<COLORLESS> means any Energy card." line "Now you can use Waterfall." line "Keep the Water Energy card for" - line "other Pok`mon." + line "other Pokémon." done Text01c5: ; 3abdb (e:6bdb) @@ -1116,7 +1116,7 @@ Text01c6: ; 3ac15 (e:6c15) text "Seaking's got enough Energy, so" line "you don't need to attach any more." line "Attach Energy cards to your Benched" - line "Pok`mon to get them ready for" + line "Pokémon to get them ready for" line "battle." line "" line "Attach a Water Energy card to your" @@ -1136,16 +1136,16 @@ Text01c8: ; 3ad6d (e:6d6d) text "Now Machop's HP is 0 and it is" line "Knocked Out." line "When you Knock Out the Defending" - line "Pok`mon, you can pick up a" + line "Pokémon, you can pick up a" line "Prize." done Text01c9: ; 3addd (e:6ddd) - text "When all your Pok`mon are Knocked" - line "Out and there are no Pok`mon on your" + text "When all your Pokémon are Knocked" + line "Out and there are no Pokémon on your" line "Bench, you lose the game." line "" - line "Put Drowzee, the Basic Pok`mon" + line "Put Drowzee, the Basic Pokémon" line "you just drew, on your Bench." done @@ -1224,19 +1224,19 @@ Text01d4: ; 3b1f4 (e:71f4) done Text01d5: ; 3b242 (e:7242) - text "Choose a Benched Pok`mon to replace" - line "your Knocked Out Pok`mon." + text "Choose a Benched Pokémon to replace" + line "your Knocked Out Pokémon." line "You now have Drowzee and Staryu" line "on your Bench." - line "Choose Staryu as the Active Pok`mon" + line "Choose Staryu as the Active Pokémon" line "for this practice duel." done Text01d6: ; 3b2ec (e:72ec) text "Here, press SELECT to" - line "check Pok`mon data." + line "check Pokémon data." line "It is important to know your cards" - line "and the status of your Pok`mon." + line "and the status of your Pokémon." done Text01d7: ; 3b35a (e:735a) @@ -1367,7 +1367,7 @@ LegendaryRonaldDeckName: ; 3b5c3 (e:75c3) done WaterfrontPokemonDeckName: ; 3b5d5 (e:75d5) - text "Waterfront Pok`mon" + text "Waterfront Pokémon" done LonelyFriendsDeckName: ; 3b5e9 (e:75e9) @@ -1395,11 +1395,11 @@ ExcavationDeckName: ; 3b62d (e:762d) done BlisteringPokemonDeckName: ; 3b639 (e:7639) - text "Blistering Pok`mon" + text "Blistering Pokémon" done HardPokemonDeckName: ; 3b64d (e:764d) - text "Hard Pok`mon" + text "Hard Pokémon" done EtceteraDeckName: ; 3b65b (e:765b) @@ -1451,7 +1451,7 @@ StrangePowerDeckName: ; 3b6f8 (e:76f8) done FlyinPokemonDeckName: ; 3b707 (e:7707) - text "Flyin' Pok`mon" + text "Flyin' Pokémon" done LovelyNidoranDeckName: ; 3b717 (e:7717) @@ -1498,11 +1498,11 @@ Text0216: ; 3b7b9 (e:77b9) db $03,$7b done -Text0217: ; 3b7bc (e:77bc) +YourDiscardPileText: ; 3b7bc (e:77bc) text "Your Discard Pile" done -Text0218: ; 3b7cf (e:77cf) +OpponentsDiscardPileText: ; 3b7cf (e:77cf) text "Opponent's Discard Pile" done @@ -1553,7 +1553,7 @@ Text0221: ; 3b8f2 (e:78f2) line $03,$39,$70,$03,$3a,$70,$03,$3b,$70,$03,$3c,$70,$03,$3d,$70,$03,$3e,$70,$03,$3f,$70,$03,$40,$70,$03,$41,"" line $03,$42,$70,$03,$43,$70,$03,$44,$70,$03,$45,$70,$03,$46,$70,$03,$47,$70,$03,$48,$70,$03,$49,$70,$6e,"" line $6f,$70,$03,$5d,$70,$6a,$70,$6b,$70,$77,$70,$60,$70,$61,$70,$62,$70,$63,"" - line $64,$70,$65,$70,$66,$70,$67,$70,$68,$70,$69,$70,$05,$13,$70, TX_LVL, $70,$70,"" + line $64,$70,$65,$70,$66,$70,$67,$70,$68,$70,$69,$70,$05,$13,$70,$05,$11,$70,$70,"" line $70,$70,$70,$70,$70,$70,$70,$70,$70,$70,$70,$70,$70,$70,$70,$70,$70 done @@ -1645,12 +1645,12 @@ Text0235: ; 3bac4 (e:7ac4) done Text0236: ; 3bafe (e:7afe) - text "There are no Basic Pok`mon" + text "There are no Basic Pokémon" line "in this Deck!" done Text0237: ; 3bb28 (e:7b28) - text "You must include a Basic Pok`mon" + text "You must include a Basic Pokémon" line "in the Deck!" done @@ -1683,7 +1683,7 @@ Text023e: ; 3bbf8 (e:7bf8) done Text023f: ; 3bc0a (e:7c0a) - text "Your Pok`mon" + text "Your Pokémon" done Text0240: ; 3bc18 (e:7c18) @@ -1699,7 +1699,7 @@ Text0242: ; 3bc36 (e:7c36) done Text0243: ; 3bc49 (e:7c49) - text "Opponent's Pok`mon" + text "Opponent's Pokémon" done Text0244: ; 3bc5d (e:7c5d) diff --git a/src/text/text3.asm b/src/text/text3.asm index 1c810c0..3231b66 100644 --- a/src/text/text3.asm +++ b/src/text/text3.asm @@ -49,7 +49,7 @@ Text0277: ; 3c12f (f:412f) done Text0278: ; 3c156 (f:4156) - text "Pok`mon Cards" + text "Pokémon Cards" line "Deck Configuration" line "Card List" line "Print Quality" @@ -170,7 +170,7 @@ Text0291: ; 3c4cb (f:44cb) done Text0292: ; 3c4e3 (f:44e3) - text "All Fighting Pok`mon" + text "All Fighting Pokémon" done Text0293: ; 3c4f9 (f:44f9) @@ -230,11 +230,11 @@ Text02a0: ; 3c5ae (f:45ae) done Text02a1: ; 3c5bb (f:45bb) - text "Cute Pok`mon" + text "Cute Pokémon" done Text02a2: ; 3c5c9 (f:45c9) - text "Pok`mon Flute" + text "Pokémon Flute" done Text02a3: ; 3c5d8 (f:45d8) @@ -298,7 +298,7 @@ Text02b1: ; 3c6bb (f:46bb) done Text02b2: ; 3c6ca (f:46ca) - text "Flyin' Pok`mon" + text "Flyin' Pokémon" done Text02b3: ; 3c6da (f:46da) @@ -322,7 +322,7 @@ Text02b7: ; 3c713 (f:4713) done Text02b8: ; 3c722 (f:4722) - text "Fire Pok`mon" + text "Fire Pokémon" done Text02b9: ; 3c730 (f:4730) @@ -366,16 +366,16 @@ Text02c2: ; 3c7d4 (f:47d4) done Text02c3: ; 3c7e9 (f:47e9) - text "Mysterious Pok`mon" + text "Mysterious Pokémon" done Text02c4: ; 3c7fd (f:47fd) - text "A Deck of Fighting Pok`mon:" + text "A Deck of Fighting Pokémon:" line "Feel their Fighting power!" done Text02c5: ; 3c835 (f:4835) - text "A Deck of Pok`mon that can" + text "A Deck of Pokémon that can" line "attack the Bench." done @@ -386,7 +386,7 @@ Text02c6: ; 3c863 (f:4863) Text02c7: ; 3c8a0 (f:48a0) text "A powerful Deck with both Fire" - line "and Fighting Pok`mon." + line "and Fighting Pokémon." done Text02c8: ; 3c8d6 (f:48d6) @@ -395,7 +395,7 @@ Text02c8: ; 3c8d6 (f:48d6) done Text02c9: ; 3c8fd (f:48fd) - text "A Deck made of Mouse Pok`mon." + text "A Deck made of Mouse Pokémon." line "Uses PlusPower to Power up!" done @@ -410,27 +410,27 @@ Text02cb: ; 3c969 (f:4969) done Text02cc: ; 3c99b (f:499b) - text "A Deck which creates Pok`mon by" + text "A Deck which creates Pokémon by" line "evolving Mysterious Fossils." done Text02cd: ; 3c9d9 (f:49d9) - text "A Deck of Rock Pok`mon. It's" - line "Strong against Lightning Pok`mon." + text "A Deck of Rock Pokémon. It's" + line "Strong against Lightning Pokémon." done Text02ce: ; 3ca19 (f:4a19) - text "A Deck of Water Pok`mon: Their" + text "A Deck of Water Pokémon: Their" line "Blue Horror washes over enemies." done Text02cf: ; 3ca5a (f:4a5a) text "A well balanced Deck" - line "of Sandshrew and Water Pok`mon!" + line "of Sandshrew and Water Pokémon!" done Text02d0: ; 3ca90 (f:4a90) - text "Paralyze the opponent's Pok`mon:" + text "Paralyze the opponent's Pokémon:" line "Stop 'em and drop 'em!" done @@ -445,17 +445,17 @@ Text02d2: ; 3cb0b (f:4b0b) done Text02d3: ; 3cb48 (f:4b48) - text "A Deck of cute Pok`mon such as" + text "A Deck of cute Pokémon such as" line "Pikachu and Eevee." done Text02d4: ; 3cb7b (f:4b7b) - text "Use the Pok`mon Flute to revive" - line "opponents' Pok`mon and Attack!" + text "Use the Pokémon Flute to revive" + line "opponents' Pokémon and Attack!" done Text02d5: ; 3cbbb (f:4bbb) - text "A deck of Pok`mon that use Lightning" + text "A deck of Pokémon that use Lightning" line "Energy to zap opponents." done @@ -470,22 +470,22 @@ Text02d7: ; 3cc39 (f:4c39) done Text02d8: ; 3cc7c (f:4c7c) - text "A Deck made of Insect Pok`mon" + text "A Deck made of Insect Pokémon" line "Go Bug Power!" done Text02d9: ; 3cca9 (f:4ca9) - text "A Deck of Grass Pok`mon: There " + text "A Deck of Grass Pokémon: There " line "are many dangers in the Jungle." done Text02da: ; 3ccea (f:4cea) - text "A Deck of Flower Pok`mon:" + text "A Deck of Flower Pokémon:" line "Beautiful but Dangerous" done Text02db: ; 3cd1d (f:4d1d) - text "Uses Venomoth's Pok`mon Power to" + text "Uses Venomoth's Pokémon Power to" line "change the opponent's Weakness." done @@ -496,7 +496,7 @@ Text02dc: ; 3cd5f (f:4d5f) Text02dd: ; 3cd97 (f:4d97) text "Use the Psychic power of the" - line "Psychic Pok`mon to Attack!" + line "Psychic Pokémon to Attack!" done Text02de: ; 3cdd0 (f:4dd0) @@ -530,7 +530,7 @@ Text02e3: ; 3cede (f:4ede) done Text02e4: ; 3cf21 (f:4f21) - text "Pok`mon with feathers flock " + text "Pokémon with feathers flock " line "together! Retreating is easy!" done @@ -540,7 +540,7 @@ Text02e5: ; 3cf5d (f:4f5d) done Text02e6: ; 3cf99 (f:4f99) - text "Block Pok`mon Powers with " + text "Block Pokémon Powers with " line "Muk and attack with Mewtwo!" done @@ -555,12 +555,12 @@ Text02e8: ; 3cffc (f:4ffc) done Text02e9: ; 3d039 (f:5039) - text "Pok`mon that can Attack with" + text "Pokémon that can Attack with" line "Fire, Water or Lightning Energy!" done Text02ea: ; 3d078 (f:5078) - text "With Fire Pok`mon like Charizard, " + text "With Fire Pokémon like Charizard, " line "Rapidash and Magmar, it's hot!" done @@ -591,7 +591,7 @@ Text02ef: ; 3d1af (f:51af) Text02f0: ; 3d1f0 (f:51f0) text "An Evolution Deck with Weedle, " - line "Nidoran$ and Bellsprout." + line "Nidoran♂ and Bellsprout." done Text02f1: ; 3d22a (f:522a) @@ -610,31 +610,31 @@ Text02f3: ; 3d284 (f:5284) done Text02f4: ; 3d2b5 (f:52b5) - text "Heal your Pok`mon with the" + text "Heal your Pokémon with the" line "Legendary Dragonite!" done Text02f5: ; 3d2e6 (f:52e6) text "A very special Deck made of" - line "very rare Pok`mon cards!" + line "very rare Pokémon cards!" done Text02f6: ; 3d31c (f:531c) - text "Pok`mon Card Glossary" + text "Pokémon Card Glossary" done Text02f7: ; 3d333 (f:5333) - text "Deck Active Pok`mon" - line "Discard Pile Bench Pok`mon" + text "Deck Active Pokémon" + line "Discard Pile Bench Pokémon" line "Hand Prizes " line "Arena Damage Counter" line "Bench To next page " done Text02f8: ; 3d3e0 (f:53e0) - text "Energy Card Pok`mon Power " + text "Energy Card Pokémon Power " line "Trainer Card Weakness " - line "Basic Pok`mon Resistance" + line "Basic Pokémon Resistance" line "Evolution Card Retreat " line "Attack To previous page" done @@ -665,11 +665,11 @@ Text02fe: ; 3d4ff (f:54ff) done Text02ff: ; 3d510 (f:5510) - text "About the Active Pok`mon" + text "About the Active Pokémon" done Text0300: ; 3d52a (f:552a) - text "About Bench Pok`mon" + text "About Bench Pokémon" done Text0301: ; 3d53f (f:553f) @@ -689,7 +689,7 @@ Text0304: ; 3d578 (f:5578) done Text0305: ; 3d58d (f:558d) - text "About Basic Pok`mon" + text "About Basic Pokémon" done Text0306: ; 3d5a2 (f:55a2) @@ -701,7 +701,7 @@ Text0307: ; 3d5b9 (f:55b9) done Text0308: ; 3d5ca (f:55ca) - text "About Pok`mon Power" + text "About Pokémon Power" done Text0309: ; 3d5df (f:55df) @@ -743,49 +743,49 @@ Text030e: ; 3d769 (f:5769) done Text030f: ; 3d807 (f:5807) - text "The place where the Pok`mon" + text "The place where the Pokémon" line "that is actively fighting" line "is placed is called the Arena." line "The game proceeds by using the" - line "Active Pok`mon in the Arena." + line "Active Pokémon in the Arena." done Text0310: ; 3d899 (f:5899) - text "The Bench is where your Pok`mon" + text "The Bench is where your Pokémon" line "that are in play but aren't actively" line "fighting sit." line "They're ready to come out and fight" - line "if the Active Pok`mon retreats or" + line "if the Active Pokémon retreats or" line "is Knocked Out." - line "You can have up to 5 Pok`mon on" + line "You can have up to 5 Pokémon on" line "the Bench." done Text0311: ; 3d96e (f:596e) - text "The Active Pok`mon is the " - line "Pok`mon that is in the Arena." - line "Only Active Pok`mon can " + text "The Active Pokémon is the " + line "Pokémon that is in the Arena." + line "Only Active Pokémon can " line "attack." done Text0312: ; 3d9c9 (f:59c9) - text "The Pok`mon that are in play" + text "The Pokémon that are in play" line "but aren't actively fighting" - line "are called Bench Pok`mon." + line "are called Bench Pokémon." line "They're ready to come out and fight" - line "if the Active Pok`mon retreats or" + line "if the Active Pokémon retreats or" line "is Knocked Out." - line "If the Active Pok`mon is Knocked" + line "If the Active Pokémon is Knocked" line "Out and you don't have a Bench " - line "Pok`mon, you lose the game." + line "Pokémon, you lose the game." done Text0313: ; 3dad1 (f:5ad1) text "Prizes are the cards placed to" line "count the number of the opponent's" - line "Pok`mon you Knocked Out." + line "Pokémon you Knocked Out." line "Every time one of your opponent's" - line "Pok`mon is Knocked Out, you take 1" + line "Pokémon is Knocked Out, you take 1" line "of your Prizes into your Hand." line "When you take all of your Prizes," line "you win the game." @@ -793,11 +793,11 @@ Text0313: ; 3dad1 (f:5ad1) Text0314: ; 3dbc5 (f:5bc5) text "A Damage Counter represents the" - line "amount of damage a certain Pok`mon" + line "amount of damage a certain Pokémon" line "has taken." line "1 Damage Counter represents" line "10 HP of damage." - line "If a Pok`mon with an HP of 30 has" + line "If a Pokémon with an HP of 30 has" line "3 Damage Counters, it has received" line "30 HP of damage, and its remaining" line "HP is 0." @@ -805,13 +805,13 @@ Text0314: ; 3dbc5 (f:5bc5) Text0315: ; 3dcb2 (f:5cb2) text "Energy Cards are cards that power" - line "your Pok`mon, making them able" + line "your Pokémon, making them able" line "to Attack." line "There are 7 types of Energy Cards" - line "[", TX_GRASS, " Grass] [", TX_FIRE, " Fire]" - line "[", TX_WATER, " Water] [", TX_LIGHTNING, " Lightning]" - line "[", TX_PSYCHIC, " Psychic] [", TX_FIGHTING, " Fighting]" - line "and [", TX_COLORLESS, " Double Colorless]" + line "[<GRASS> Grass] [<FIRE> Fire]" + line "[<WATER> Water] [<LIGHTNING> Lightning]" + line "[<PSYCHIC> Psychic] [<FIGHTING> Fighting]" + line "and [<COLORLESS> Double Colorless]" line "You may only play 1 Energy Card" line "from your Hand per turn." done @@ -829,23 +829,23 @@ Text0316: ; 3ddbe (f:5dbe) done Text0317: ; 3deb0 (f:5eb0) - text "Basic Pok`mon are cards that " + text "Basic Pokémon are cards that " line "can be played directly from your " line "hand into the play area. Basic " - line "Pok`mon act as the base for " + line "Pokémon act as the base for " line "Evolution Cards. Charmander, " line "Squirtle and Bulbasaur are" - line "examples of Basic Pok`mon." + line "examples of Basic Pokémon." done Text0318: ; 3df82 (f:5f82) text "Evolution Cards are cards you" - line "play on top of a Basic Pok`mon card" + line "play on top of a Basic Pokémon card" line "(or sometimes on top of another" line "Evolution Card) to make it stronger." line "There are Stage 1 and Stage 2" line "Evolution Cards." - line "If you do not have a Basic Pok`mon" + line "If you do not have a Basic Pokémon" line "in the Play Area, you cannot place" line "the Stage 1 Evolution Card, and if" line "you do not have a Stage 1 Evolution" @@ -854,52 +854,52 @@ Text0318: ; 3df82 (f:5f82) done Text0319: ; 3e10a (f:610a) - text "By choosing Attack, your Pok`mon" - line "will fight your opponent's Pok`mon." - line "Your Pok`mon require Energy" + text "By choosing Attack, your Pokémon" + line "will fight your opponent's Pokémon." + line "Your Pokémon require Energy" line "in order to Attack." line "The amount of Energy required" line "differs according to the Attack." - line "The Active Pok`mon is the only" - line "Pok`mon that can Attack." + line "The Active Pokémon is the only" + line "Pokémon that can Attack." done Text031a: ; 3e1f7 (f:61f7) - text "Unlike Attacks, Pok`mon Power" + text "Unlike Attacks, Pokémon Power" line "can be used by Active or Benched" - line "Pok`mon. Some Pok`mon Power are" + line "Pokémon. Some Pokémon Power are" line "effective by just placing the" - line "Pok`mon in the Play Area, but for" + line "Pokémon in the Play Area, but for" line "some you must choose the" line "command, PKMN Power." done Text031b: ; 3e2c5 (f:62c5) - text "Some Pok`mon have a Weakness." - line "If a Pok`mon has a Weakness, it" + text "Some Pokémon have a Weakness." + line "If a Pokémon has a Weakness, it" line "takes double damage when attacked by" - line "Pok`mon of a certain type." + line "Pokémon of a certain type." done Text031c: ; 3e344 (f:6344) - text "Some Pok`mon have Resistance." - line "If a Pok`mon has Resistance, it" + text "Some Pokémon have Resistance." + line "If a Pokémon has Resistance, it" line "takes 30 less damage whenever" - line "attacked by Pok`mon of" + line "attacked by Pokémon of" line "a certain type." done Text031d: ; 3e3c8 (f:63c8) text "By choosing Retreat, you can" - line "switch the Active Pok`mon with" - line "a Pok`mon on your Bench." + line "switch the Active Pokémon with" + line "a Pokémon on your Bench." line "Energy is required to Retreat" - line "your Active Pok`mon." + line "your Active Pokémon." line "The amount of Energy required to" - line "Retreat differs for each Pok`mon." + line "Retreat differs for each Pokémon." line "To Retreat, you must discard" line "Energy equal to the Retreat Cost" - line "of the retreating Pok`mon." + line "of the retreating Pokémon." done Text031e: ; 3e4ed (f:64ed) @@ -986,7 +986,7 @@ Text032d: ; 3e73c (f:673c) done Text032e: ; 3e752 (f:6752) - text " Pok`mon Dome " + text " Pokémon Dome " done Text032f: ; 3e768 (f:6768) @@ -1038,7 +1038,7 @@ Text033a: ; 3e7e6 (f:67e6) done Text033b: ; 3e7f6 (f:67f6) - text "Pok`mon Dome" + text "Pokémon Dome" done Text033c: ; 3e804 (f:6804) @@ -1126,8 +1126,8 @@ Text034c: ; 3e9b2 (f:69b2) text "Duel [", TX_RAM2, "]" line "SELECT [", TX_RAM2, "]" line "Receive many cards" - line "To Pok`mon Dome 1" - line "To Pok`mon Dome 2" + line "To Pokémon Dome 1" + line "To Pokémon Dome 2" done Text034d: ; 3ea10 (f:6a10) @@ -1343,19 +1343,19 @@ Text0378: ; 3ef66 (f:6f66) done Text0379: ; 3efc3 (f:6fc3) - text TX_RAM1, " is crazy about Pok`mon" - line "and Pok`mon card collecting!" + text TX_RAM1, " is crazy about Pokémon" + line "and Pokémon card collecting!" line "One day," line TX_RAM1, " heard a rumor:" - line " \"The Legendary Pok`mon Cards..." + line " ”The Legendary Pokémon Cards..." line " the extremely rare and powerful " - line " cards held by Pok`mon Trading " + line " cards held by Pokémon Trading " line " Card Game's greatest players... " line " The Grand Masters are searching" - line " for one to inherit the legend!\"" + line " for one to inherit the legend!”" line "Dreaming of inheriting the" - line "Legendary Pok`mon Cards," - line TX_RAM1, " visits the Pok`mon" + line "Legendary Pokémon Cards," + line TX_RAM1, " visits the Pokémon" line "card researcher, Dr. Mason..." done @@ -1846,51 +1846,51 @@ Text03e7: ; 3f823 (f:7823) done Text03e8: ; 3f82a (f:782a) - text TX_LVL, "60 MEWTWO " + text "<Lv>60 MEWTWO " done Text03e9: ; 3f838 (f:7838) - text TX_LVL, "8 MEW " + text "<Lv>8 MEW " done Text03ea: ; 3f842 (f:7842) - text TX_LVL, "34 ARCANINE" + text "<Lv>34 ARCANINE" done Text03eb: ; 3f851 (f:7851) - text TX_LVL, "16 PIKACHU" + text "<Lv>16 PIKACHU" done Text03ec: ; 3f85f (f:785f) - text TX_LVL, "13 SURFING PIKACHU" + text "<Lv>13 SURFING PIKACHU" done Text03ed: ; 3f875 (f:7875) - text TX_LVL, "20 ELECTABUZZ" + text "<Lv>20 ELECTABUZZ" done Text03ee: ; 3f886 (f:7886) - text TX_LVL, "9 SLOWPOKE" + text "<Lv>9 SLOWPOKE" done Text03ef: ; 3f894 (f:7894) - text TX_LVL, "12 JIGGLYPUFF" + text "<Lv>12 JIGGLYPUFF" done Text03f0: ; 3f8a5 (f:78a5) - text TX_LVL, "68 ZAPDOS" + text "<Lv>68 ZAPDOS" done Text03f1: ; 3f8b2 (f:78b2) - text TX_LVL, "37 MOLTRES" + text "<Lv>37 MOLTRES" done Text03f2: ; 3f8c0 (f:78c0) - text TX_LVL, "37 ARTICUNO" + text "<Lv>37 ARTICUNO" done Text03f3: ; 3f8cf (f:78cf) - text TX_LVL, "41 DRAGONITE" + text "<Lv>41 DRAGONITE" done Text03f4: ; 3f8df (f:78df) @@ -1898,7 +1898,7 @@ Text03f4: ; 3f8df (f:78df) done Text03f5: ; 3f8f7 (f:78f7) - text TX_LVL, "12 FLYING PIKACHU" + text "<Lv>12 FLYING PIKACHU" done Text03f6: ; 3f90c (f:790c) @@ -1950,8 +1950,8 @@ Text0400: ; 3fa32 (f:7a32) text "Energy" line "Attacking" line "Retreating" - line "Evolving Pok`mon" - line "Using Pok`mon Power" + line "Evolving Pokémon" + line "Using Pokémon Power" line "Ending Your Turn" line "Win or Loss of a Duel" line "Nothing to Ask" @@ -1961,7 +1961,7 @@ Text0401: ; 3faaa (f:7aaa) text TX_RAM1, "," line "It's me, Doctor Mason." line "Are you getting the hang of" - line "the Pok`mon Trading Card Game?" + line "the Pokémon Trading Card Game?" line "I have some information for you" line "about Booster Packs. " line "If you want to collect the same" @@ -1977,7 +1977,7 @@ Text0401: ; 3faaa (f:7aaa) line "Once you POP! with a certain" line "friend, you won't be able to POP!" line "with that friend again, so find " - line "many friends who own the Pok`mon " + line "many friends who own the Pokémon " line "Trading Card Game for Game Boy," line "and CARD POP! with them to" line "get new cards!" @@ -2002,7 +2002,7 @@ Text0403: ; 3fe10 (f:7e10) line "the Master of the Fighting Club." line "His First-Strike Deck is built" line "for a quick attack, but it's" - line "weak against Psychic Pok`mon!" + line "weak against Psychic Pokémon!" line "I suggest you duel him using" line "the Deck from the Psychic Medal" line "Deck Machine." diff --git a/src/text/text4.asm b/src/text/text4.asm index 6aa3493..dd9f326 100644 --- a/src/text/text4.asm +++ b/src/text/text4.asm @@ -5,8 +5,8 @@ Text0405: ; 40000 (10:4000) line "Gene's deck - he's the Master " line "of the Rock Club." line "His Rock Crusher Deck is extremely" - line "strong against Lightning Pok`mon," - line "but it's weak against Grass Pok`mon!" + line "strong against Lightning Pokémon," + line "but it's weak against Grass Pokémon!" line "I suggest you study the Deck from" line "the Grass Medal Deck Machine." line "Oh! Before I forget..." @@ -27,13 +27,13 @@ Text0407: ; 401a3 (10:41a3) line "about Amy's deck - she's the " line "Master of the Water Club." line "Her deck uses Rain Dance -" - line "Blastoise's Pok`mon Power." + line "Blastoise's Pokémon Power." line "This deck allows her to " line "keep attaching Water Energy " - line "to her Water Pok`mon to " + line "to her Water Pokémon to " line "power them up." line "Her deck's weakness is" - line "Lightning Pok`mon!" + line "Lightning Pokémon!" line "I suggest you duel her using" line "the deck from the Psychic Medal" line "Deck Machine." @@ -57,20 +57,20 @@ Text0409: ; 40389 (10:4389) line "deck! He uses Selfdestruct for " line "maximum damage!" line "Watch the number of Energy cards" - line "on his Pok`mon and look out for" + line "on his Pokémon and look out for" line "Selfdestruct." line "I would suggest using Fighting" - line "Pok`mon such as Cubone and Rhyhorn" + line "Pokémon such as Cubone and Rhyhorn" line "to counter Isaac's deck." line "The Cubone & Marowak Deck from" line "the Rock Medal Deck Machine is" line "probably your best bet." line "I hope you find many Fighting" - line "Pok`mon in this Booster Pack!" + line "Pokémon in this Booster Pack!" done Text040a: ; 40598 (10:4598) - text "Did you find the Pok`mon you were" + text "Did you find the Pokémon you were" line "looking for in the Booster Pack?" line "Mason Laboratory" line " Doctor Mason ;)" @@ -84,37 +84,37 @@ Text040b: ; 40604 (10:4604) line "the Master of the Grass Club." line "You must be wary of Exeggutor's" line "Big Eggsplosion with Nikki's deck." - line "Use your Fire Pok`mon to knock out" + line "Use your Fire Pokémon to knock out" line "Exeggute and Exeggutor at an" line "early stage!" line "I suggest you study the Deck from" line "the Fire Medal Deck Machine." line "I'll give you a Booster Pack" line "that should contain a lot of " - line "Fire Pok`mon." + line "Fire Pokémon." done Text040c: ; 407b0 (10:47b0) - text "Did it have a lot of Fire Pok`mon" - line "(the weakness of Grass Pok`mon)?" + text "Did it have a lot of Fire Pokémon" + line "(the weakness of Grass Pokémon)?" line "Mason Laboratory" line " Dr. Mason ;)" done Text040d: ; 40819 (10:4819) text "Are you getting any closer to" - line "inheriting the Legendary Pok`mon " + line "inheriting the Legendary Pokémon " line "Cards? Murray of the Psychic Club -" line "I have some information on his deck!" line "It seems to be a deck that uses" line "Alakazam's Damage Swap!" line "It will be difficult to defeat" - line "his deck of Psychic Pok`mon." - line "Psychic Pok`mon are tricky" + line "his deck of Psychic Pokémon." + line "Psychic Pokémon are tricky" line "since their weakness is" - line "Psychic Pok`mon!" + line "Psychic Pokémon!" line "Try to defeat him before his" - line "Pok`mon evolves into Alakazam." + line "Pokémon evolves into Alakazam." line "Murray is a tough opponent..." line "Here, take this!" done @@ -133,12 +133,12 @@ Text040f: ; 40a15 (10:4a15) line "about Rick's deck - he's " line "the Master of the Science Club." line "His deck uses Muk's Toxic Gas to" - line "prevent your Pok`mon from using " - line "Pok`mon Power! Avoid using a deck " - line "that relies on Pok`mon Power to " + line "prevent your Pokémon from using " + line "Pokémon Power! Avoid using a deck " + line "that relies on Pokémon Power to " line "attack. His deck's weakness is " - line "Psychic Pok`mon! Collect Psychic " - line "Pok`mon to duel his deck!" + line "Psychic Pokémon! Collect Psychic " + line "Pokémon to duel his deck!" line "I suggest you study the deck from" line "the Psychic Medal Deck Machine." line "Hopefully, it will be of some" @@ -159,12 +159,12 @@ Text0411: ; 40c2e (10:4c2e) line "I have some information about" line "Ken's deck - he's the " line "Master of the Fire Club." - line "His deck consists of Fire Pok`mon" - line "and Colorless Pok`mon!" - line "Pit a Water Pok`mon against" - line "the Fire Pok`mon and" - line "a Fighting Pok`mon against" - line "the Colorless Pok`mon." + line "His deck consists of Fire Pokémon" + line "and Colorless Pokémon!" + line "Pit a Water Pokémon against" + line "the Fire Pokémon and" + line "a Fighting Pokémon against" + line "the Colorless Pokémon." line "Study the decks from the Water and" line "Fighting Medal Deck Machines!" line "Here's a gift for you!" @@ -205,16 +205,16 @@ Text0414: ; 40fca (10:4fca) line "This time, I'll give you tips on" line "the types and number of cards you" line "should include in your deck." - line "If you have 3 of a Basic Pok`mon" + line "If you have 3 of a Basic Pokémon" line "card, you'll want 2 of its Stage" - line "1 and 1 of its Stage 2 Pok`mon." + line "1 and 1 of its Stage 2 Pokémon." line "If you follow this rule, your" line "deck will be well balanced." line "You should have about 14 Basic" - line "Pok`mon and anywhere between 20" + line "Pokémon and anywhere between 20" line "and 26 Energy Cards in your deck." line "The type of Energy Cards will " - line "depend on the type of Pok`mon you " + line "depend on the type of Pokémon you " line "have in your deck." line "You might want to look at the decks" line "in the Deck Machine for hints." @@ -232,10 +232,10 @@ Text0415: ; 4123d (10:523d) line "a Grand Master..." line "Grand Master COURTNEY uses the" line "Legendary Moltres, so her deck " - line "should be made up of Fire Pok`mon." - line "Be sure to use Water Pok`mon," - line "since Water Pok`mon are the " - line "weakness of Fire Pok`mon." + line "should be made up of Fire Pokémon." + line "Be sure to use Water Pokémon," + line "since Water Pokémon are the " + line "weakness of Fire Pokémon." line "Other than that, just watch how" line "your opponent plays, and choose" line "your strategy accordingly." @@ -254,14 +254,14 @@ Text0416: ; 413f1 (10:53f1) line "The Legendary ZAPDOS's" line "Peal of Thunder and Big Thunder" line "randomly choose a target, so" - line "you never know which Pok`mon" + line "you never know which Pokémon" line "will receive damage." line "Be sure to look after, not only" - line "your Active Pok`mon, but also" - line "the Pok`mon on your Bench." + line "your Active Pokémon, but also" + line "the Pokémon on your Bench." line "His deck should be made up mostly" - line "of Lightning Pok`mon, so duel him" - line "using your Fighting Pok`mon." + line "of Lightning Pokémon, so duel him" + line "using your Fighting Pokémon." line "Defeat the Grand Masters," line "" text TX_RAM1, "!!!" @@ -278,12 +278,12 @@ Text0417: ; 415cf (10:55cf) line "the Legendary Articuno." line "He will use the Legendary" line "Articuno's QuickFreeze to" - line "paralyze your Pok`mon." + line "paralyze your Pokémon." line "Also, be wary of his other" line "Articuno's Freeze Dry." line "His deck should be mostly" - line "Water Pok`mon, so it will be" - line "weak against Lightning Pok`mon!" + line "Water Pokémon, so it will be" + line "weak against Lightning Pokémon!" line "Go get 'em, ", TX_RAM1, "!" line "You're almost there!" line "Mason Laboratory" @@ -299,12 +299,12 @@ Text0418: ; 4174c (10:574c) line "The longer the duel takes, the " line "greater the advantages for his " line "deck. His workhorse will be his" - line "Evolution Pok`mon, so defeat them" + line "Evolution Pokémon, so defeat them" line "while they are still in their Basic" line "stage! Follow the simple strategy " line "of striking early. This is the " line "final test in inheriting " - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" line "Go, ", TX_RAM1, "!" line "Be a part of the legend!" line "Mason Laboratory" @@ -320,7 +320,7 @@ Text0419: ; 41965 (10:5965) done Text041a: ; 4199b (10:599b) - text "\"Pok`mon Trading Cards 101\"" + text "”Pokémon Trading Cards 101”" done Text041b: ; 419b8 (10:59b8) @@ -331,14 +331,14 @@ Text041c: ; 419d5 (10:59d5) text "Hello!" line "Welcome to the Water Club!" line "This is a Club devoted to" - line "Water Pok`mon." + line "Water Pokémon." line "There are many different types" - line "of Water Pok`mon, so it's fun" + line "of Water Pokémon, so it's fun" line "just to collect them." done Text041d: ; 41a74 (10:5a74) - text "We don't use Fire Pok`mon cards" + text "We don't use Fire Pokémon cards" line "here at the Water Club." line "I have this rare Arcanine, but" line "I prefer Lapras." @@ -474,13 +474,13 @@ Text0430: ; 42169 (10:6169) Text0431: ; 421b1 (10:61b1) text "I guess I have to practice more" - line "to improve my Pok`mon card game." + line "to improve my Pokémon card game." done Text0432: ; 421f3 (10:61f3) text "It might look like all I can" line "do is swim, but I play a pretty" - line "mean game of Pok`mon Trading Cards!" + line "mean game of Pokémon Trading Cards!" line "Do you want to join the Water Club?" done @@ -661,7 +661,7 @@ Text0450: ; 429f0 (10:69f0) Text0451: ; 42a0d (10:6a0d) text "No? How boring!" line "I was looking forward to" - line "a game of Pok`mon Trading Cards." + line "a game of Pokémon Trading Cards." line "Well, come see me again!" done @@ -701,7 +701,7 @@ Text0458: ; 42be9 (10:6be9) text "Hi, ", TX_RAM1, "." line "Nice to see you again!!!" line "Did you come to play the" - line "Pok`mon Trading Card Game?" + line "Pokémon Trading Card Game?" done Text0459: ; 42c3e (10:6c3e) @@ -713,14 +713,14 @@ Text045a: ; 42c77 (10:6c77) text "Hello." line "Welcome to the Fighting Club!" line "Here at this Club, we duel using" - line "Fighting Pok`mon." + line "Fighting Pokémon." line "No dirty dueling is allowed!" line "Only nice, clean duels are allowed" line "in this Club." done Text045b: ; 42d1e (10:6d1e) - text "I see you play the Pok`mon Trading" + text "I see you play the Pokémon Trading" line "Card Game. I'm not into dueling." line "I prefer collecting the cards." line "By the way, would you happen to have" @@ -786,7 +786,7 @@ Text0463: ; 430ab (10:70ab) line "me so many cards," line "please accept this card as a gift" line "from me to you." - line "It's a ", TX_LVL, "16 Pikachu." + line "It's a <Lv>16 Pikachu." line "Please take good care of it!" done @@ -905,7 +905,7 @@ Text0475: ; 43752 (10:7752) text "I can't believe Rod, the leader of" line "the Grand Masters, was defeated!?!" line "Could this mean the Legendary" - line "Pok`mon Cards have been passed on?" + line "Pokémon Cards have been passed on?" done Text0476: ; 437da (10:77da) @@ -955,7 +955,7 @@ Text047b: ; 43acb (10:7acb) line "all of my pupils!" line "Let's see if you have " line "what it takes to inherit" - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" line "OK! Are you ready?" done diff --git a/src/text/text5.asm b/src/text/text5.asm index 16f26e9..706ab09 100644 --- a/src/text/text5.asm +++ b/src/text/text5.asm @@ -100,31 +100,31 @@ Text049f: ; 443d6 (11:43d6) done Text04a0: ; 443e7 (11:43e7) - text "A deck is the set of Pok`mon cards" + text "A deck is the set of Pokémon cards" line "used in duels." line "A deck consists of 60 cards." line "Only 4 of the same card are" line "allowed in a deck. Create your " line "own deck to play the game." line "These are the basic rules of the" - line "Pok`mon Trading Card Game." + line "Pokémon Trading Card Game." done Text04a1: ; 444ca (11:44ca) - text "Cards, Vol. 1: Pok`mon Cards" + text "Cards, Vol. 1: Pokémon Cards" done Text04a2: ; 444e8 (11:44e8) - text "There are 2 types of Pok`mon cards " - line "in the Pok`mon Trading Card Game:" - line "Basic Pok`mon and Evolution " - line "Pok`mon. Only Basic Pok`mon may be " + text "There are 2 types of Pokémon cards " + line "in the Pokémon Trading Card Game:" + line "Basic Pokémon and Evolution " + line "Pokémon. Only Basic Pokémon may be " line "placed directly on the Bench." line "There are 2 types of Evolution" - line "Pok`mon cards: Stage 1 and " - line "Stage 2. Play Stage 1 Pok`mon on " - line "top of Basic Pok`mon, and Stage 2" - line "Pok`mon on top of Stage 1 Pok`mon." + line "Pokémon cards: Stage 1 and " + line "Stage 2. Play Stage 1 Pokémon on " + line "top of Basic Pokémon, and Stage 2" + line "Pokémon on top of Stage 1 Pokémon." done Text04a3: ; 44630 (11:4630) @@ -132,11 +132,11 @@ Text04a3: ; 44630 (11:4630) done Text04a4: ; 4464d (11:464d) - text "Attach Energy cards to your Pok`mon" + text "Attach Energy cards to your Pokémon" line "to give them the energy they need to" line "attack. Choose an Energy card from " line "your hand and attach it to a" - line "Pok`mon. You may attach only " + line "Pokémon. You may attach only " line "one Energy card per turn." done @@ -157,12 +157,12 @@ Text04a7: ; 447c2 (11:47c2) done Text04a8: ; 447e2 (11:47e2) - text "When a Pok`mon loses all of " - line "its HP, the Pok`mon is knocked out. " + text "When a Pokémon loses all of " + line "its HP, the Pokémon is knocked out. " line "Place it and all attached Energy " line "cards in the discard pile." line "Each time you knock out 1 " - line "of your opponent's Pok`mon, " + line "of your opponent's Pokémon, " line "you draw 1 of your prize cards " line "and place it in your hand. " line "When you've taken all " @@ -186,10 +186,10 @@ Text04ab: ; 449b0 (11:49b0) Text04ac: ; 449d0 (11:49d0) text "You also win if your opponent has" - line "no Pok`mon left on the bench" + line "no Pokémon left on the bench" line "after you have knocked out his or" - line "her active Pok`mon. Be sure to " - line "keep enough Pok`mon on your bench." + line "her active Pokémon. Be sure to " + line "keep enough Pokémon on your bench." done Text04ad: ; 44a75 (11:4a75) @@ -199,7 +199,7 @@ Text04ad: ; 44a75 (11:4a75) Text04ae: ; 44a7d (11:4a7d) text "You can create powerful combos by" line "combining the abilities of 2 cards." - line "Pok`mon Powers and Trainer Cards " + line "Pokémon Powers and Trainer Cards " line "are useful in creating combos! " line "Find card combinations that will" line "create your own powerful combos." @@ -225,9 +225,9 @@ Text04b1: ; 44c4d (11:4c4d) Text04b2: ; 44c58 (11:4c58) text "Muk's Toxic Gas is very powerful!" - line "It can block all Pok`mon Powers!" + line "It can block all Pokémon Powers!" line "But be careful because it also" - line "blocks your own Pok`mon's Powers!" + line "blocks your own Pokémon's Powers!" done Text04b3: ; 44cdd (11:4cdd) @@ -235,12 +235,12 @@ Text04b3: ; 44cdd (11:4cdd) done Text04b4: ; 44ce9 (11:4ce9) - text "Blastoise's Pok`mon Power, Rain " + text "Blastoise's Pokémon Power, Rain " line "Dance, is a great boon for your" - line "Water Pok`mon! You can attach " + line "Water Pokémon! You can attach " line "as many Water Energy cards as " - line "you have to your Water Pok`mon." - line "Power up your Pok`mon and attack!" + line "you have to your Water Pokémon." + line "Power up your Pokémon and attack!" done Text04b5: ; 44dab (11:4dab) @@ -252,8 +252,8 @@ Text04b6: ; 44db9 (11:4db9) line "when attacking with Selfdestruct." line "That way, you'll be able to give" line "major damage to your opponent's " - line "Active and Benched Pok`mon without " - line "your Pok`mon getting knocked out." + line "Active and Benched Pokémon without " + line "your Pokémon getting knocked out." done Text04b7: ; 44e85 (11:4e85) @@ -263,7 +263,7 @@ Text04b7: ; 44e85 (11:4e85) Text04b8: ; 44e92 (11:4e92) text "You can use Alakazam's Damage Swap" line "to move damage counters off of a" - line "Pok`mon that is almost knocked out," + line "Pokémon that is almost knocked out," line "or you can create a combo by" line "combining it with Chansey and" line "Scoop Up. Keep moving damage " @@ -281,7 +281,7 @@ Text04ba: ; 44fed (11:4fed) text "Hyper Beam is extremely powerful!" line "You can remove the Energy cards " line "attached to your opponent's" - line "Pok`mon! Without Energy, they won't" + line "Pokémon! Without Energy, they won't" line "be able to Attack or Retreat!" done @@ -291,13 +291,13 @@ Text04bb: ; 4508f (11:508f) Text04bc: ; 450a2 (11:50a2) text "Use Aerodactyl's Prehistoric Power" - line "to block your opponent's Pok`mon" - line "from evolving. Your own Pok`mon " + line "to block your opponent's Pokémon" + line "from evolving. Your own Pokémon " line "can't evolve? In that case, use" line "Devolution Spray on Aerodactyl " line "and turn it back into a " line "Mysterious Fossil. Then you'll " - line "be able to evolve your Pok`mon!" + line "be able to evolve your Pokémon!" done Text04bd: ; 451a1 (11:51a1) @@ -321,19 +321,19 @@ Text04bf: ; 452bb (11:52bb) done Text04c0: ; 452d4 (11:52d4) - text "If a Pok`mon has a Weakness," + text "If a Pokémon has a Weakness," line "it takes double damage when attacked" - line "by Pok`mon of a certain type!" - line "If a Water Pok`mon attacks" - line "a Fire Pok`mon, the Fire Pok`mon" + line "by Pokémon of a certain type!" + line "If a Water Pokémon attacks" + line "a Fire Pokémon, the Fire Pokémon" line "will receive double damage!" - line "If a Pok`mon has a Resistance," + line "If a Pokémon has a Resistance," line "it takes 30 less damage when" - line "attacked by Pok`mon of a certain" + line "attacked by Pokémon of a certain" line "type. If an Attack gives a damage " - line "of 30, the Pok`mon will not receive " + line "of 30, the Pokémon will not receive " line "damage! Beware of the Weaknesses" - line "and Resistances of your Pok`mon!" + line "and Resistances of your Pokémon!" done Text04c1: ; 45474 (11:5474) @@ -352,37 +352,37 @@ Text04c3: ; 45509 (11:5509) done Text04c4: ; 45515 (11:5515) - text "Retreating your Active Pok`mon to" + text "Retreating your Active Pokémon to" line "the Bench is a good strategy in" line "certain situations! Retreating a " - line "Pok`mon requires Energy cards." + line "Pokémon requires Energy cards." line "Dodrio's Retreat Aid decreases the " line "number of Energy cards required to" line "retreat. If you retreat right away," - line "your Pok`mon won't get knocked out!" + line "your Pokémon won't get knocked out!" done Text04c5: ; 45628 (11:5628) - text "Fighting Pok`mon" + text "Fighting Pokémon" done Text04c6: ; 4563a (11:563a) - text "Fighting Pok`mon Characteristics:" - line "Strong against Lightning Pok`mon." - line "Weak against Psychic Pok`mon." + text "Fighting Pokémon Characteristics:" + line "Strong against Lightning Pokémon." + line "Weak against Psychic Pokémon." line "Require Fighting Energy cards " line "to Attack." done Text04c7: ; 456c7 (11:56c7) - text "Fighting Pok`mon and Combos" + text "Fighting Pokémon and Combos" done Text04c8: ; 456e4 (11:56e4) text "It is difficult to create combos" - line "with a Fighting Pok`mon, since" - line "not many Fighting Pok`mon have " - line "Pok`mon Power. However, their " + line "with a Fighting Pokémon, since" + line "not many Fighting Pokémon have " + line "Pokémon Power. However, their " line "strong attacks make up for this." done @@ -400,61 +400,61 @@ Text04ca: ; 4579e (11:579e) done Text04cb: ; 45846 (11:5846) - text "Rock Pok`mon" + text "Rock Pokémon" done Text04cc: ; 45854 (11:5854) - text "Rock Pok`mon Characteristics:" - line "Strong against Lightning Pok`mon." - line "Weak against Grass Pok`mon." + text "Rock Pokémon Characteristics:" + line "Strong against Lightning Pokémon." + line "Weak against Grass Pokémon." line "Require Fighting Energy cards" line "to Attack." done Text04cd: ; 458da (11:58da) - text "Winning with Fighting Pok`mon" + text "Winning with Fighting Pokémon" done Text04ce: ; 458f9 (11:58f9) - text "Fighting Pok`mon will have a hard" - line "time against Stage 2 Pok`mon," - line "as many Stage 2 Pok`mon are" - line "resistant to Fighting Pok`mon." + text "Fighting Pokémon will have a hard" + line "time against Stage 2 Pokémon," + line "as many Stage 2 Pokémon are" + line "resistant to Fighting Pokémon." line "Try to knock out your opponent's" - line "Pok`mon before they evolve." + line "Pokémon before they evolve." done Text04cf: ; 459b2 (11:59b2) - text "Basic Pok`mon" + text "Basic Pokémon" done Text04d0: ; 459c1 (11:59c1) - text "Basic Pok`mon are a must in the" - line "Pok`mon Trading Card Game!" - line "Basic Pok`mon are the only Pok`mon" + text "Basic Pokémon are a must in the" + line "Pokémon Trading Card Game!" + line "Basic Pokémon are the only Pokémon" line "you can put directly from your" line "hand into the play area. Stage 1" line "and Stage 2 Evolution cards can" - line "only be used on Basic Pok`mon." + line "only be used on Basic Pokémon." line "Make sure you have enough" - line "Basic Pok`mon in your deck!" + line "Basic Pokémon in your deck!" done Text04d1: ; 45ad5 (11:5ad5) - text "Water Pok`mon" + text "Water Pokémon" done Text04d2: ; 45ae4 (11:5ae4) - text "Water Pok`mon Characteristics:" - line "Strong against Fire Pok`mon." - line "Weak against Lightning Pok`mon." + text "Water Pokémon Characteristics:" + line "Strong against Fire Pokémon." + line "Weak against Lightning Pokémon." line "Some cards are weak against " - line "Grass Pok`mon. Require Water " + line "Grass Pokémon. Require Water " line "Energy cards to attack." done Text04d3: ; 45b94 (11:5b94) - text "Water Pok`mon Attacks" + text "Water Pokémon Attacks" done Text04d4: ; 45bab (11:5bab) @@ -471,10 +471,10 @@ Text04d5: ; 45c65 (11:5c65) done Text04d6: ; 45c6f (11:5c6f) - text "When a Pok`mon is paralyzed, it" + text "When a Pokémon is paralyzed, it" line "is unable to do anything." line "It cannot retreat, attack or use" - line "Pok`mon Power, but the player may" + line "Pokémon Power, but the player may" line "use any cards in his or her hand." line "Paralysis lasts until the end of " line "the paralyzed player's turn. " @@ -483,13 +483,13 @@ Text04d6: ; 45c6f (11:5c6f) done Text04d7: ; 45d8b (11:5d8b) - text "Lightning Pok`mon" + text "Lightning Pokémon" done Text04d8: ; 45d9e (11:5d9e) - text "Lightning Pok`mon Characteristics:" - line "Strong against Water Pok`mon." - line "Weak against Fighting Pok`mon." + text "Lightning Pokémon Characteristics:" + line "Strong against Water Pokémon." + line "Weak against Fighting Pokémon." line "Require Lightning Energy cards" line "to attack." done @@ -526,15 +526,15 @@ Text04dc: ; 45f42 (11:5f42) done Text04dd: ; 46054 (11:6054) - text "Grass Pok`mon" + text "Grass Pokémon" done Text04de: ; 46063 (11:6063) - text "Grass Pok`mon Characteristics:" - line "Strong against Rock Pok`mon." - line "Weak against Fire Pok`mon." - line "Some Water Pok`mon are weak" - line "against Grass Pok`mon. Require " + text "Grass Pokémon Characteristics:" + line "Strong against Rock Pokémon." + line "Weak against Fire Pokémon." + line "Some Water Pokémon are weak" + line "against Grass Pokémon. Require " line "Grass Energy cards to attack." done @@ -543,39 +543,39 @@ Text04df: ; 46115 (11:6115) done Text04e0: ; 4611d (11:611d) - text "When your Pok`mon is poisoned, it" + text "When your Pokémon is poisoned, it" line "will continue to lose HP." - line "The poisoned Pok`mon will lose" + line "The poisoned Pokémon will lose" line "10 HP at the end of each player's " - line "turn. To heal a Poisoned Pok`mon," + line "turn. To heal a Poisoned Pokémon," line "you may retreat it to the Bench" line "or use the Trainer Card, Full Heal." - line "Evolving or Devolving the Pok`mon " + line "Evolving or Devolving the Pokémon " line "are other ways of healing it." done Text04e1: ; 46243 (11:6243) - text "Grass Pok`mon & Pok`mon Breeder" + text "Grass Pokémon & Pokémon Breeder" done Text04e2: ; 46264 (11:6264) - text "Many Grass Pok`mon are capable of" - line "evolving to Stage 2 Pok`mon." - line "Use the Trainer Card, Pok`mon" - line "Breeder, to evolve Pok`mon quickly." + text "Many Grass Pokémon are capable of" + line "evolving to Stage 2 Pokémon." + line "Use the Trainer Card, Pokémon" + line "Breeder, to evolve Pokémon quickly." line "You'll be able to use powerful" line "attacks early in the game." done Text04e3: ; 46320 (11:6320) - text "Psychic Pok`mon" + text "Psychic Pokémon" done Text04e4: ; 46331 (11:6331) - text "Psychic Pok`mon Characteristics:" - line "Weak against Psychic Pok`mon." - line "Some Colorless Pok`mon are strong " - line "against Psychic Pok`mon. Require" + text "Psychic Pokémon Characteristics:" + line "Weak against Psychic Pokémon." + line "Some Colorless Pokémon are strong " + line "against Psychic Pokémon. Require" line "Psychic Energy cards to attack." done @@ -584,41 +584,41 @@ Text04e5: ; 463d5 (11:63d5) done Text04e6: ; 463dc (11:63dc) - text "When a Pok`mon is asleep," + text "When a Pokémon is asleep," line "it is unable to do anything." line "It cannot attack, retreat or use" - line "Pok`mon Power. A coin will be " + line "Pokémon Power. A coin will be " line "flipped at the end of each player's " line "turn. If the coin comes up heads, " - line "the Pok`mon will wake up. If it's" - line "tails, the Pok`mon remains asleep." + line "the Pokémon will wake up. If it's" + line "tails, the Pokémon remains asleep." line "Use Full Heal to wake it up!" done Text04e7: ; 464fe (11:64fe) - text "Pok`mon Power" + text "Pokémon Power" done Text04e8: ; 4650d (11:650d) - text "Some Pok`mon have special " - line "abilities called Pok`mon Power." + text "Some Pokémon have special " + line "abilities called Pokémon Power." line "They are very powerful abilities!" line "They can be used before attacking, " - line "even if the Pok`mon with the " - line "Pok`mon Power is still on the Bench." - line "There are many different Pok`mon " + line "even if the Pokémon with the " + line "Pokémon Power is still on the Bench." + line "There are many different Pokémon " line "Powers, so check your cards!" done Text04e9: ; 46611 (11:6611) - text "Science Club Pok`mon" + text "Science Club Pokémon" done Text04ea: ; 46627 (11:6627) - text "Characteristics of Pok`mon used" + text "Characteristics of Pokémon used" line "in the Science Club:" - line "Strong against Rock Pok`mon." - line "Weak against Psychic Pok`mon." + line "Strong against Rock Pokémon." + line "Weak against Psychic Pokémon." line "Many cards have attacks with " line "poison and sleep effects." line "Require Grass Energy cards" @@ -630,13 +630,13 @@ Text04eb: ; 466f6 (11:66f6) done Text04ec: ; 46701 (11:6701) - text "It's big trouble if your Pok`mon" + text "It's big trouble if your Pokémon" line "gets Confused!" - line "When a Confused Pok`mon tries to" + line "When a Confused Pokémon tries to" line "attack, you must flip a coin!" line "If it's heads, the attack is " line "successful, but if it's tails," - line "the Pok`mon will attack itself" + line "the Pokémon will attack itself" line "for 20 damage!" done @@ -657,28 +657,28 @@ Text04ee: ; 467ec (11:67ec) done Text04ef: ; 468f9 (11:68f9) - text "Fire Pok`mon" + text "Fire Pokémon" done Text04f0: ; 46907 (11:6907) - text "Fire Pok`mon Characteristics:" - line "Strong against Grass Pok`mon." - line "Weak against Water Pok`mon." - line "Some Grass Pok`mon are not weak" - line "against Fire Pok`mon." + text "Fire Pokémon Characteristics:" + line "Strong against Grass Pokémon." + line "Weak against Water Pokémon." + line "Some Grass Pokémon are not weak" + line "against Fire Pokémon." line "Require Fire Energy cards" line "to attack." done Text04f1: ; 469bb (11:69bb) - text "Fire Pok`mon Attacks" + text "Fire Pokémon Attacks" done Text04f2: ; 469d1 (11:69d1) - text "Many Fire Pok`mon attacks require" + text "Many Fire Pokémon attacks require" line "that an Energy card be removed." line "Be sure to include many Energy" - line "cards in decks with Fire Pok`mon." + line "cards in decks with Fire Pokémon." line "It might be wise to also include" line "Energy Retrieval in your deck." done @@ -688,62 +688,62 @@ Text04f3: ; 46a95 (11:6a95) done Text04f4: ; 46aae (11:6aae) - text "The Pok`mon Trading Card Game" + text "The Pokémon Trading Card Game" line "for Game Boy includes many " line "original cards, like the " line "" - text TX_LVL, "14 Meowth with the Cat Punch " + text "<Lv>14 Meowth with the Cat Punch " line "attack. There are many new cards," line "so go search them out!" done Text04f5: ; 46b5d (11:6b5d) - text "Colorless Pok`mon" + text "Colorless Pokémon" done Text04f6: ; 46b70 (11:6b70) - text "Colorless Pok`mon are very easy" + text "Colorless Pokémon are very easy" line "to use. They can attack with " line "any type of Energy card, so" line "you can include them in any type" line "of deck. There are many Colorless " - line "Pok`mon, so check them all out!" + line "Pokémon, so check them all out!" done Text04f7: ; 46c2f (11:6c2f) - text "Dragon Pok`mon" + text "Dragon Pokémon" done Text04f8: ; 46c3f (11:6c3f) - text "Colorless Dragon Pok`mon cards" + text "Colorless Dragon Pokémon cards" line "have resistance to Psychic" - line "Pok`mon and have no weaknesses." + line "Pokémon and have no weaknesses." line "They can attack with any type" line "of Energy card - they are truly" - line "worthy of the name \"dragon!\"" + line "worthy of the name ”dragon!”" done Text04f9: ; 46cf5 (11:6cf5) - text "Bird Pok`mon" + text "Bird Pokémon" done Text04fa: ; 46d03 (11:6d03) - text "Colorless Bird Pok`mon cards" + text "Colorless Bird Pokémon cards" line "have resistance to Fighting" - line "Pok`mon but are weak against" - line "Lightning Pok`mon. They can attack" + line "Pokémon but are weak against" + line "Lightning Pokémon. They can attack" line "with any type of Energy card." line "They can retreat easily, since" line "they are flying." done Text04fb: ; 46dcb (11:6dcb) - text "Legendary Pok`mon Cards, Vol. 1" + text "Legendary Pokémon Cards, Vol. 1" done Text04fc: ; 46dec (11:6dec) - text "The first of the Legendary Pok`mon" - line "Cards is ", TX_LVL, "37 Moltres. With" + text "The first of the Legendary Pokémon" + line "Cards is <Lv>37 Moltres. With" line "Firegiver, you can place Fire" line "Energy cards in your hand! Also," line "Dive Bomb is a powerful attack!" @@ -752,12 +752,12 @@ Text04fc: ; 46dec (11:6dec) done Text04fd: ; 46ec2 (11:6ec2) - text "Legendary Pok`mon Cards, Vol. 2" + text "Legendary Pokémon Cards, Vol. 2" done Text04fe: ; 46ee3 (11:6ee3) - text "The second Legendary Pok`mon Card" - line "is ", TX_LVL, "68 Zapdos. With Peal of" + text "The second Legendary Pokémon Card" + line "is <Lv>68 Zapdos. With Peal of" line "Thunder, just putting this card on" line "the bench causes damage!" line "Also, Big Thunder is a powerful" @@ -766,13 +766,13 @@ Text04fe: ; 46ee3 (11:6ee3) done Text04ff: ; 46fb8 (11:6fb8) - text "Legendary Pok`mon Cards, Vol. 3" + text "Legendary Pokémon Cards, Vol. 3" done Text0500: ; 46fd9 (11:6fd9) - text "The third Legendary Pok`mon Card" - line "is ", TX_LVL, "37 Articuno. Its Quickfreeze" - line "will paralyze opponents' Pok`mon" + text "The third Legendary Pokémon Card" + line "is <Lv>37 Articuno. Its Quickfreeze" + line "will paralyze opponents' Pokémon" line "when the card is put in play!" line "Also, Ice Breath is a powerful" line "Attack! Grand Master Jack," @@ -780,14 +780,14 @@ Text0500: ; 46fd9 (11:6fd9) done Text0501: ; 470b3 (11:70b3) - text "Legendary Pok`mon Cards, Vol. 4" + text "Legendary Pokémon Cards, Vol. 4" done Text0502: ; 470d4 (11:70d4) - text "The fourth Legendary Pok`mon Card" - line "is ", TX_LVL, "41 Dragonite. Its Healing" + text "The fourth Legendary Pokémon Card" + line "is <Lv>41 Dragonite. Its Healing" line "Wind will heal damage done to " - line "Pok`mon when this card is played!" + line "Pokémon when this card is played!" line "Also, Slam is a powerful attack!" line "Rod, Leader of the Grand Masters," line "owns this card!" @@ -800,9 +800,9 @@ Text0503: ; 471aa (11:71aa) Text0504: ; 471bd (11:71bd) text "Courtney, Steve, Jack and Rod -" line "the 4 Grand Masters who defend" - line "the Legendary Pok`mon Cards - " + line "the Legendary Pokémon Cards - " line "are all master players of the " - line "Pok`mon Trading Card Game!" + line "Pokémon Trading Card Game!" done Text0505: ; 47256 (11:7256) @@ -823,14 +823,14 @@ Text0507: ; 47334 (11:7334) done Text0508: ; 47346 (11:7346) - text "\"Those in search of the Legendary" - line " Pok`mon Cards..." + text "”Those in search of the Legendary" + line " Pokémon Cards..." line " Defeat the Masters of the 8 Clubs" line " and attain the 8 Medals." line " Once attained, defeat the Grand" - line " Master here at Pok`mon Dome..." + line " Master here at Pokémon Dome..." line " Then you shall inherit" - line " the Legendary Pok`mon Cards.\"" + line " the Legendary Pokémon Cards.”" done Text0509: ; 47430 (11:7430) @@ -907,7 +907,7 @@ Text0512: ; 47821 (11:7821) Text0513: ; 478a0 (11:78a0) text "I'm good enough to compete in" line "the Challenge Cup! Girls are just" - line "as good at the Pok`mon Trading" + line "as good at the Pokémon Trading" line "Card Game as boys!" done @@ -927,7 +927,7 @@ Text0516: ; 479a4 (11:79a4) text "I'm the one who's going to" line "defeat 3 opponents! The prize, " line "" - text TX_LVL, "60 Mewtwo, belongs to me!" + text "<Lv>60 Mewtwo, belongs to me!" line "You just sit tight and watch me win!" line "See Ya! Ha ha ha ha ha ha!" done @@ -954,7 +954,7 @@ Text0519: ; 47b25 (11:7b25) Text051a: ; 47b47 (11:7b47) text "The Challenge Cup is over! I" line "defeated 3 opponents and won" - line "the prize - ", TX_LVL, "60 Mewtwo!" + line "the prize - <Lv>60 Mewtwo!" line "See ya! Ha ha ha ha ha ha!" done @@ -966,7 +966,7 @@ Text051b: ; 47bb6 (11:7bb6) Text051c: ; 47bd7 (11:7bd7) text "The Challenge Cup is over! I" line "defeated 3 opponents and won" - line "the prize - ", TX_LVL, "60 Mewtwo!" + line "the prize - <Lv>60 Mewtwo!" line "I guess you could try entering" line "the next Challenge Cup, but " line "you won't have a chance since " @@ -983,7 +983,7 @@ Text051e: ; 47cd1 (11:7cd1) text "No matter who enters the Challenge" line "Cup, I'll be the winner! " line "" - text TX_LVL, "8 Mew, this Cup's prize, will " + text "<Lv>8 Mew, this Cup's prize, will " line "belong to me! Why don't you just" line "give up and go home!" line "See ya! Ha ha ha ha ha ha!" @@ -1012,7 +1012,7 @@ Text0522: ; 47e73 (11:7e73) line "over! What? Who won?" line "Who do you expect!?! Me, of " line "course! The prize belongs to" - line "me! ", TX_LVL, "8 Mew! See ya!" + line "me! <Lv>8 Mew! See ya!" line "Ha ha ha ha ha ha!" done diff --git a/src/text/text6.asm b/src/text/text6.asm index 78e60cb..a99de27 100644 --- a/src/text/text6.asm +++ b/src/text/text6.asm @@ -1,7 +1,7 @@ Text0524: ; 48000 (12:4000) text "The Challenge Cup is over already! " line "Too bad you couldn't enter!" - line "The prize belongs to me! ", TX_LVL, "8 Mew!" + line "The prize belongs to me! <Lv>8 Mew!" line "You really should enter the next" line "Challenge Cup! But then again, " line "why bother, since I'll also win " @@ -55,14 +55,14 @@ Text052b: ; 48376 (12:4376) text "The first Challenge Cup is" line "now underway!" line "Defeat 3 opponents to win the" - line "wonderful prize of ", TX_LVL, "60 Mewtwo!" + line "wonderful prize of <Lv>60 Mewtwo!" done Text052c: ; 483de (12:43de) text "The second Challenge Cup is" line "now under way!" line "Defeat 3 opponents to win the" - line "wonderful prize of ", TX_LVL, "8 Mew!" + line "wonderful prize of <Lv>8 Mew!" done Text052d: ; 48444 (12:4444) @@ -150,7 +150,7 @@ Text053b: ; 487c0 (12:47c0) text "Ha ha ha! How about that!?!" line "I win!!" line "2 more opponents to go and" - line "the ", TX_LVL, "8 Mew belongs to me!" + line "the <Lv>8 Mew belongs to me!" done Text053c: ; 4881b (12:481b) @@ -193,14 +193,14 @@ Text0542: ; 4893d (12:493d) text "Hey, ", TX_RAM1, "!" line "I'm not gonna lose to you!" line "" - text TX_LVL, "60 Mewtwo belongs to me!!!" + text "<Lv>60 Mewtwo belongs to me!!!" done Text0543: ; 4897f (12:497f) text TX_RAM1, "!" line "I'm going to defeat you!" line "" - text TX_LVL, "8 Mew belongs to me!!!" + text "<Lv>8 Mew belongs to me!!!" done Text0544: ; 489b6 (12:49b6) @@ -281,9 +281,9 @@ Text0553: ; 48bcc (12:4bcc) done Text0554: ; 48bed (12:4bed) - text "Yes! The Legendary Pok`mon Cards" + text "Yes! The Legendary Pokémon Cards" line "will be inherited here at" - line "Pok`mon Dome! Of course, I, " + line "Pokémon Dome! Of course, I, " line "Ronald, will inherit the cards!" line "Hey, did you collect the Medals?" done @@ -410,7 +410,7 @@ Text0568: ; 4928f (12:528f) done Text0569: ; 492b9 (12:52b9) - text "Welcome to Pok`mon Dome!" + text "Welcome to Pokémon Dome!" done Text056a: ; 492d3 (12:52d3) @@ -437,24 +437,24 @@ Text056d: ; 4937b (12:537b) Text056e: ; 493a3 (12:53a3) text "We are the 4 Grand Masters who" - line "guard the Legendary Pok`mon Cards." + line "guard the Legendary Pokémon Cards." line "If you can defeat all of us, then " line "you will have earned the right to " - line "inherit the Legendary Pok`mon Cards!" + line "inherit the Legendary Pokémon Cards!" done Text056f: ; 49451 (12:5451) text "We are the Grand Masters who guard" - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" line "We will accept your challenge as" line "many times as will take for you " line "to inherit all 4 of the " - line "Legendary Pok`mon Cards!" + line "Legendary Pokémon Cards!" done Text0570: ; 49506 (12:5506) text "We are the Grand Masters who guard" - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" line "Challenge us as many times as " line "you wish!" done @@ -491,13 +491,13 @@ Text0576: ; 496d5 (12:56d5) text "Hm-hmm-hmm..." line "I W I N ! Come back when you've" line "gotten a little better. I can't" - line "give a Legendary Pok`mon Card to" + line "give a Legendary Pokémon Card to" line "someone who plays like that!" done Text0577: ; 49763 (12:5763) text "Hm-hmm-hmm...I W I N !" - line "The Legendary Pok`mon Cards " + line "The Legendary Pokémon Cards " line "deserve better than that!" done @@ -517,7 +517,7 @@ Text0579: ; 497e9 (12:57e9) Text057a: ; 49864 (12:5864) text "Hmm-hmm-hmm...I lose." line "I find you worthy of inheriting" - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" done Text057b: ; 498b8 (12:58b8) @@ -533,7 +533,7 @@ Text057c: ; 498e6 (12:58e6) Text057d: ; 49906 (12:5906) text "I, Thunder Steve, am your next " line "opponent. Hey! Do you want the" - line "Legendary Pok`mon Cards!?!" + line "Legendary Pokémon Cards!?!" line "Then you must defeat me first!" done @@ -578,7 +578,7 @@ Text0585: ; 49ab6 (12:5ab6) text "You're the Winner! You're the " line "Greatest! With that skill, I " line "feel we can give you the " - line "Legendary Pok`mon Cards!" + line "Legendary Pokémon Cards!" done Text0586: ; 49b27 (12:5b27) @@ -705,7 +705,7 @@ Text059c: ; 4a047 (12:6047) Text059d: ; 4a079 (12:6079) text "I'm sorry, but I cannot pass the" - line "the Legendary Pok`mon Cards to you." + line "the Legendary Pokémon Cards to you." line "Continue training and try again." line "Until then!" done @@ -722,7 +722,7 @@ Text059f: ; 4a11a (12:611a) line "Congratulations, ", TX_RAM1, ". " line "You have proven yourself worthy" line "enough to inherit the" - line "Legendary Pok`mon Cards!!!" + line "Legendary Pokémon Cards!!!" line "Except..." done @@ -759,17 +759,17 @@ Text05a5: ; 4a308 (12:6308) text "Yeah! That's right! " line "It's me!!! Ronald!!!" line "I have already inherited the" - line "Legendary Pok`mon Cards!" + line "Legendary Pokémon Cards!" done Text05a6: ; 4a369 (12:6369) text "No, Ronald! That cannot be " line "allowed! He, too, has earned " line "the right to inherit the " - line "Legendary Pok`mon Cards!" + line "Legendary Pokémon Cards!" line "Ronald! ", TX_RAM1, "!" line "You two must duel to determine who " - line "will inherit the Legendary Pok`mon " + line "will inherit the Legendary Pokémon " line "Cards. So say the Rules!" done @@ -800,7 +800,7 @@ Text05ab: ; 4a4ca (12:64ca) Text05ac: ; 4a4f5 (12:64f5) text "I was here first! The Legendary" - line "Pok`mon Cards belong to me!" + line "Pokémon Cards belong to me!" line "I'll make it all too clear to" line "you, ", TX_START, TX_RAM1, "!" done @@ -813,7 +813,7 @@ Text05ad: ; 4a559 (12:6559) Text05ae: ; 4a58b (12:658b) text "Now do you know who the better " line "player is!?!" - line "The Legendary Pok`mon Cards" + line "The Legendary Pokémon Cards" line "belong to me!" line "If you still won't give up," line "I'll take you on again..." @@ -826,18 +826,18 @@ Text05af: ; 4a65c (12:665c) done Text05b0: ; 4a67f (12:667f) - text "I'm sorry, but the Legendary Pok`mon" + text "I'm sorry, but the Legendary Pokémon" line "Cards have chosen ", TX_RAM1, "." done Text05b1: ; 4a6ba (12:66ba) - text "The Legendary Pok`mon Cards" + text "The Legendary Pokémon Cards" line "vanished from Ronald's Deck!" done Text05b2: ; 4a6f4 (12:66f4) text "No! My...My Legendary " - line "Pok`mon Cards!" + line "Pokémon Cards!" line "No...!" line "Noooooo!!!" done @@ -846,8 +846,8 @@ Text05b3: ; 4a72d (12:672d) text "Congratulations, ", TX_RAM1, "!" line "You are a Card Master" line "worthy of inheriting" - line "the Legendary Pok`mon Cards!" - line "The Legendary Pok`mon Cards" + line "the Legendary Pokémon Cards!" + line "The Legendary Pokémon Cards" line "recognize you as a true Master!" done @@ -871,57 +871,57 @@ Text05b7: ; 4a862 (12:6862) done Text05b8: ; 4a898 (12:6898) - text "The 4 Legendary Pok`mon Cards" + text "The 4 Legendary Pokémon Cards" line "float, glowing in the air!" done Text05b9: ; 4a8d2 (12:68d2) - text "The Legendary Pok`mon Cards" + text "The Legendary Pokémon Cards" line "speak to you..." - line " \"You who have inherited us..." + line " ”You who have inherited us..." line " Great Card Master! " line " Our Master must not forget:" line " Inheriting us does not make you" - line " a Pok`mon Card Master!" - line " A true Pok`mon Card Master is" + line " a Pokémon Card Master!" + line " A true Pokémon Card Master is" line " one who has the skill to use" line " the abilities of the different" line " cards and the courage to duel" line " powerful opponents. And most" line " of all, the ability to love the" - line " Pok`mon Trading Card Game" + line " Pokémon Trading Card Game" line " no matter what - win or lose!" - line " A new journey has just begun...\"" + line " A new journey has just begun...”" done Text05ba: ; 4aaad (12:6aad) - text "One of the Legendary Pok`mon Cards" + text "One of the Legendary Pokémon Cards" line "floats, glowing in the air!" done Text05bb: ; 4aaed (12:6aed) - text "A Legendary Pok`mon Card" + text "A Legendary Pokémon Card" line "floats, glowing in the air!" done Text05bc: ; 4ab23 (12:6b23) - text "The Legendary Pok`mon Cards" + text "The Legendary Pokémon Cards" line "speak to you..." - line " \"You who have inherited us..." + line " ”You who have inherited us..." line " Great Card Master!" line " There are no cards left for us" line " to give you, but do not forget:" line " Inheriting us does not make you" - line " a Pok`mon Card Master!" - line " A true Pok`mon Card Master" + line " a Pokémon Card Master!" + line " A true Pokémon Card Master" line " is one who has the skill to use" line " the abilities of the different" line " cards and the courage to duel" line " powerful opponents. And above" line " all, the ability to love the" - line " Pok`mon Trading Card Game no" + line " Pokémon Trading Card Game no" line " matter what - win or lose!" - line " A new journey has just begun...\"" + line " A new journey has just begun...”" done Text05bd: ; 4ad20 (12:6d20) @@ -943,11 +943,11 @@ Text05be: ; 4ad53 (12:6d53) Text05bf: ; 4ae4d (12:6e4d) text "You finally inherited the" - line "Legendary Pok`mon Cards!" + line "Legendary Pokémon Cards!" line "Did you see the Legendary Auto" line "Deck Machine?" line "It is rumored that it's in the " - line "Hall of Honor at Pok`mon Dome." + line "Hall of Honor at Pokémon Dome." line "It supposedly holds the secret " line "to a very powerful deck!" done @@ -972,20 +972,20 @@ Text05c2: ; 4afd0 (12:6fd0) Text05c3: ; 4afe5 (12:6fe5) text "Are you also hoping to inherit" - line "the Legendary Pok`mon Cards?" + line "the Legendary Pokémon Cards?" line "If you want the Legendary Cards," line "you must defeat the Grand Masters." line "To duel the Grand Masters, you" line "must first get the Master Medals." line "The 8 Masters of the Card Clubs" line "each have a Master Medal. Go to" - line "Pok`mon Dome if you want to learn" + line "Pokémon Dome if you want to learn" line "more about the Legendary Cards." done Text05c4: ; 4b129 (12:7129) text "You finally inherited the" - line "Legendary Pok`mon Cards!" + line "Legendary Pokémon Cards!" line "Amazing!" line "Congratulations, ", TX_RAM1, "!!!" done @@ -1003,7 +1003,7 @@ Text05c5: ; 4b17c (12:717c) Text05c6: ; 4b274 (12:7274) text "Congratulations on inheriting " - line "the Legendary Pok`mon Cards," + line "the Legendary Pokémon Cards," line "" text TX_RAM1, "! Now you should try" line "dueling different people using the" @@ -1040,7 +1040,7 @@ Text05ca: ; 4b4ea (12:74ea) text "This is the Challenge Machine" line "created by Dr. Mason!" line "The Challenge Machine is a " - line "Pok`mon Card Dueling Machine. " + line "Pokémon Card Dueling Machine. " line "The rules of the game are simple: " line "choose 1 deck with which you must" line "duel 5 computer opponents!" @@ -1101,7 +1101,7 @@ Text05d4: ; 4b842 (12:7842) text "So, have you learned how to " line "play the game?" line "I hope you enjoy playing the" - line "Pok`mon Trading Card Game!" + line "Pokémon Trading Card Game!" done Text05d5: ; 4b8a7 (12:78a7) @@ -1110,70 +1110,70 @@ Text05d5: ; 4b8a7 (12:78a7) done Text05d6: ; 4b8c8 (12:78c8) - text "In order to do anything, Pok`mon " + text "In order to do anything, Pokémon " line "must have Energy cards. " line "If no Energy cards are attached," - line "the Pok`mon will not be able to " + line "the Pokémon will not be able to " line "attack or retreat. There are 7 " line "types of Energy cards: Grass, " line "Fire, Water, Lightning, Psychic, " line "Fighting and Colorless." line "The type of Energy required " - line "depends on the Pok`mon." - line "Be sure to learn which Pok`mon " + line "depends on the Pokémon." + line "Be sure to learn which Pokémon " line "require which type of Energy!" done Text05d7: ; 4ba32 (12:7a32) - text "Pok`mon damage defending Pok`mon " - line "by attacking. Pok`mon need Energy " + text "Pokémon damage defending Pokémon " + line "by attacking. Pokémon need Energy " line "cards in order to attack." line "For example, the energy required " - line "for Seaking's Waterfall is ", TX_WATER, TX_COLORLESS, "." - line TX_WATER, TX_COLORLESS, " stands for 1 Water Energy " + line "for Seaking's Waterfall is <WATER><COLORLESS>." + line "<WATER><COLORLESS> stands for 1 Water Energy " line "card and another Energy card of " line "any type. The energy required " line "differs according to the attack." done Text05d8: ; 4bb56 (12:7b56) - text "To switch your Active Pok`mon" - line "with a Bench Pok`mon, choose " + text "To switch your Active Pokémon" + line "with a Bench Pokémon, choose " line "the Retreat command. If the " - line "Active Pok`mon is in danger," + line "Active Pokémon is in danger," line "move it back to your Bench." line "Energy is required in order" line "to Retreat. The number of " line "Energy cards required varies," - line "depending on the Pok`mon." + line "depending on the Pokémon." done Text05d9: ; 4bc58 (12:7c58) - text "There are 3 types of Pok`mon cards:" - line "Basic Pok`mon, Stage 1 Pok`mon and " - line "Stage 2 Pok`mon. Squirtle is a " + text "There are 3 types of Pokémon cards:" + line "Basic Pokémon, Stage 1 Pokémon and " + line "Stage 2 Pokémon. Squirtle is a " line "Basic, Wartortle a Stage 1 and " - line "Blastoise a Stage 2 Pok`mon." - line "Basic Pok`mon are the only cards" + line "Blastoise a Stage 2 Pokémon." + line "Basic Pokémon are the only cards" line "that can be put directly into play." - line "A Basic Pok`mon in play can be" - line "evolved to a Stage 1 Pok`mon. A" - line "Stage 1 Pok`mon in the Play Area " + line "A Basic Pokémon in play can be" + line "evolved to a Stage 1 Pokémon. A" + line "Stage 1 Pokémon in the Play Area " line "can then be evolved to a Stage 2 " - line "Pok`mon. Therefore, Squirtle is " + line "Pokémon. Therefore, Squirtle is " line "needed in order to play Wartortle," line "and Wartortle is needed in" line "order to play Blastoise." done Text05da: ; 4be3e (12:7e3e) - text "Some Pok`mon have special" - line "abilities called Pok`mon Powers." - line "Some Pok`mon Powers are used as" - line "soon as the Pok`mon is played," + text "Some Pokémon have special" + line "abilities called Pokémon Powers." + line "Some Pokémon Powers are used as" + line "soon as the Pokémon is played," line "while others must be used by" line "choosing the PKMN Power command." - line "There are many different Pok`mon" + line "There are many different Pokémon" line "Powers, so read each card's text" line "carefully." done diff --git a/src/text/text7.asm b/src/text/text7.asm index d7b9b51..56dddec 100644 --- a/src/text/text7.asm +++ b/src/text/text7.asm @@ -1,7 +1,7 @@ Text05db: ; 4c000 (13:4000) text "Your Turn ends after you Attack." line "If you do not have enough energy" - line "to attack, or if your Active Pok`mon" + line "to attack, or if your Active Pokémon" line "cannot move due to Paralysis or" line "Sleep, you can end your turn by" line "choosing the DONE command." @@ -16,21 +16,21 @@ Text05dc: ; 4c141 (13:4141) line "duel is decided by prizes." line "Prizes are cards that you may" line "draw when you knock out one of" - line "your opponent's Pok`mon." + line "your opponent's Pokémon." line "You win if you Knock Out as many" - line "of your opponent's Pok`mon as there" + line "of your opponent's Pokémon as there" line "are Prizes to be drawn. You " line "will lose the duel if you have" line "no cards in your deck at the start " line "of your turn or if there are " - line "no Pok`mon in your Play Area," + line "no Pokémon in your Play Area," line "so be careful!" done Text05dd: ; 4c2c4 (13:42c4) text "Gathering information is important" line "if you wish to inherit the Legendary" - line "Pok`mon Cards! Listen to what people" + line "Pokémon Cards! Listen to what people" line "have to say and read the books on " line "the bookshelves. If I have any " line "information, I'll send you an" @@ -53,7 +53,7 @@ Text05de: ; 4c3cd (13:43cd) Text05df: ; 4c501 (13:4501) text "Are you getting the hang of the" - line "Pok`mon Trading Card Game?" + line "Pokémon Trading Card Game?" line "How about building a deck yourself?" line "It's a great feeling to win with " line "a deck you built on your own." @@ -71,12 +71,12 @@ Text05e0: ; 4c5a1 (13:45a1) Text05e1: ; 4c66a (13:466a) text "Congratulations, ", TX_RAM1, "!" line "I hear you have inherited the" - line "Legendary Pok`mon Cards!" + line "Legendary Pokémon Cards!" line "The strength of a Deck does" line "not depend on any single card," line "But on how skillfully you are able" line "to use that card." - line "The power of the Legendary Pok`mon" + line "The power of the Legendary Pokémon" line "Cards depends on you!" line "You must become a skilled" line "Card Master!" @@ -97,7 +97,7 @@ Text05e3: ; 4c86f (13:486f) text "Oh! Why the rush, ", TX_RAM1, "?" line "What? " line "You want to learn how to play" - line "the Pok`mon Trading Card Game?" + line "the Pokémon Trading Card Game?" line "So you, too, finally want to " line "start playing the card game. " line "Well, dueling is more fun than " @@ -149,18 +149,18 @@ Text05ea: ; 4ca87 (13:4a87) line "If you don't do as I say, " line "we won't be able to proceed." line "It might be easier if you read the" - line "Pok`mon Trading Card Game" + line "Pokémon Trading Card Game" line "Instruction Booklet while we play. " line "OK then, let's start your " line "practice game!" done Text05eb: ; 4cbfe (13:4bfe) - text "Basically, this is how the Pok`mon " + text "Basically, this is how the Pokémon " line "Trading Card Game is played:" line "It's a game in which you try to " line "knock out as many of your " - line "opponent's Pok`mon as there are " + line "opponent's Pokémon as there are " line "prizes. That's the gist of it..." done @@ -242,14 +242,14 @@ Text05f7: ; 4d01e (13:501e) Text05f8: ; 4d0a1 (13:50a1) text "Congratulations on inheriting" - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" line "But that's not all there is" line "to this game!" line "Were you able to build all the Decks" line "here in this Auto Deck Machine?" line "There are as many duels as there" line "are decks to duel with! Keep " - line "dueling with Pok`mon Trading Cards!" + line "dueling with Pokémon Trading Cards!" done Text05f9: ; 4d1af (13:51af) @@ -266,11 +266,11 @@ Text05f9: ; 4d1af (13:51af) Text05fa: ; 4d2c2 (13:52c2) text "Congratulations on inheriting" - line "the Legendary Pok`mon Cards!!!" + line "the Legendary Pokémon Cards!!!" line "Please save your deck in this" line "Deck Save Machine - " line "the Deck with the Legendary " - line "Pok`mon Cards!!!" + line "Pokémon Cards!!!" done Text05fb: ; 4d361 (13:5361) @@ -375,32 +375,32 @@ Text060e: ; 4d767 (13:5767) text "Greetings!" line "Welcome to the Lightning Club!" line "At this club, we use decks made up" - line "mostly of Lightning Pok`mon." + line "mostly of Lightning Pokémon." line "Would you like to get charged up" line "with us?" done Text060f: ; 4d7fc (13:57fc) text "Hey! Kid!" - line "I've got a ", TX_LVL, "20 Electabuzz," + line "I've got a <Lv>20 Electabuzz," line "but what I really want is" - line "a ", TX_LVL, "35 Electabuzz!" + line "a <Lv>35 Electabuzz!" line "Hey! Kid! Do you have a" line "" - text TX_LVL, "35 Electabuzz?" + text "<Lv>35 Electabuzz?" done Text0610: ; 4d87a (13:587a) text "Hey! Kid!" line "We meet again!" - line "Do you have a ", TX_LVL, "35 Electabuzz?" + line "Do you have a <Lv>35 Electabuzz?" line "Come on! Trade it for my" line "" - text TX_LVL, "20 Electabuzz!" + text "<Lv>20 Electabuzz!" done Text0611: ; 4d8de (13:58de) - text "Trade your ", TX_LVL, "35 Electabuzz?" + text "Trade your <Lv>35 Electabuzz?" done Text0612: ; 4d8fb (13:58fb) @@ -413,14 +413,14 @@ Text0612: ; 4d8fb (13:58fb) Text0613: ; 4d938 (13:5938) text "Hey, kid!" line "It's not cool to lie!" - line "You don't own a ", TX_LVL, "35 Electabuzz!" + line "You don't own a <Lv>35 Electabuzz!" line "You could get hurt lying to me, kid!" done Text0614: ; 4d99f (13:599f) text "You're gonna trade me your" line "" - text TX_LVL, "35 Electabuzz?" + text "<Lv>35 Electabuzz?" line "Way cool!...Hey! Wait, kid!" line "That card's in your Deck!" line "It isn't cool to take that card!" @@ -432,10 +432,10 @@ Text0614: ; 4d99f (13:599f) Text0615: ; 4da6d (13:5a6d) text "You're gonna trade me your" line "" - text TX_LVL, "35 Electabuzz? Way cool, kid!" + text "<Lv>35 Electabuzz? Way cool, kid!" line "OK, I'll trade you my" line "" - text TX_LVL, "20 Electabuzz for it!" + text "<Lv>20 Electabuzz for it!" done Text0616: ; 4dad9 (13:5ad9) @@ -445,8 +445,8 @@ Text0616: ; 4dad9 (13:5ad9) Text0617: ; 4dafe (13:5afe) text "Whoa! Cool, kid! Thanks for " - line "that ", TX_LVL, "35 Electabuzz! " - line "My ", TX_LVL, "20 Electabuzz is a cool card!" + line "that <Lv>35 Electabuzz! " + line "My <Lv>20 Electabuzz is a cool card!" line "Charge it up with Electabuzz!" done @@ -459,7 +459,7 @@ Text0618: ; 4db74 (13:5b74) Text0619: ; 4dbcb (13:5bcb) text "Hey! You charged up!?!" - line "You playin' the Pok`mon " + line "You playin' the Pokémon " line "Trading Card Game!?!" line "Yeah! Gotta be a Grand Master!" done @@ -468,7 +468,7 @@ Text061a: ; 4dc30 (13:5c30) text "Hey! ", TX_RAM1, "!" line "You beat the Grand Masters?" line "Cool! Got all the Legendary " - line "Pok`mon Cards? Yeah!" + line "Pokémon Cards? Yeah!" line "Gotta Catch 'Em All!(TM)" done @@ -499,7 +499,7 @@ Text061f: ; 4dda7 (13:5da7) Text0620: ; 4ddbf (13:5dbf) text "You have to take care of your" - line "Pok`mon cards!" + line "Pokémon cards!" done Text0621: ; 4dded (13:5ded) @@ -508,10 +508,10 @@ Text0621: ; 4dded (13:5ded) done Text0622: ; 4de1a (13:5e1a) - text "Lightning Pok`mon can attack" + text "Lightning Pokémon can attack" line "the opponent's Bench!" - line "Lightning Pok`mon are the toughest" - line "Pok`mon! How about it?" + line "Lightning Pokémon are the toughest" + line "Pokémon! How about it?" line "You want to duel me?" done @@ -559,7 +559,7 @@ Text062a: ; 4e076 (13:6076) done Text062b: ; 4e097 (13:6097) - text "What? a Pok`mon Trading Card duel?" + text "What? a Pokémon Trading Card duel?" line "I'll be glad to Duel any time!" done @@ -608,7 +608,7 @@ Text0633: ; 4e235 (13:6235) done Text0634: ; 4e2cc (13:62cc) - text "My Lightning Pok`mon Deck" + text "My Lightning Pokémon Deck" line "is the greatest!" line "How about it?" line "You want to see how good it is?" @@ -627,7 +627,7 @@ Text0637: ; 4e37b (13:637b) text "The sparks will fly with" line "6 Prizes!" line "I'll show you what my Lightning" - line "Pok`mon Deck can do!" + line "Pokémon Deck can do!" done Text0638: ; 4e3d4 (13:63d4) @@ -689,21 +689,21 @@ Text0642: ; 4e671 (13:6671) text "Greetings." line "Welcome to the Psychic Club!" line "This Club is for people who use" - line "Psychic Pok`mon." - line "Psychic Pok`mon are difficult to " + line "Psychic Pokémon." + line "Psychic Pokémon are difficult to " line "use, but they're very strong." done Text0643: ; 4e70b (13:670b) text "What? You also want the Legendary" - line "Pok`mon Cards?" + line "Pokémon Cards?" line "I want them too, but I'm still " line "not quite good enough." done Text0644: ; 4e774 (13:6774) text "I hear you got the Legendary" - line "Pok`mon Cards." + line "Pokémon Cards." line "Wow! That's great!" line "I'm going to train so I can get" line "them myself!" @@ -713,7 +713,7 @@ Text0645: ; 4e7e1 (13:67e1) text "Well, getting the ", TX_RAM2, " Medal " line "wasn't that hard! If I keep " line "this up, I should be able to get " - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" done Text0646: ; 4e859 (13:6859) @@ -721,7 +721,7 @@ Text0646: ; 4e859 (13:6859) line "What are you doing?" line "Huh? That's a Deck!" line "Are you... trying to get the" - line "Legendary Pok`mon Cards?" + line "Legendary Pokémon Cards?" done Text0647: ; 4e8cb (13:68cb) @@ -732,7 +732,7 @@ Text0647: ; 4e8cb (13:68cb) Text0648: ; 4e92b (13:692b) text "What!?! I can't believe it!" - line "You? The Legendary Pok`mon Cards?" + line "You? The Legendary Pokémon Cards?" line "Ha ha ha ha ha!" line "Don't make me laugh!!!" done @@ -740,16 +740,16 @@ Text0648: ; 4e92b (13:692b) Text0649: ; 4e991 (13:6991) text "Alright! Listen up!" line "I'll teach you what it's about!" - line "To inherit the Legendary Pok`mon" + line "To inherit the Legendary Pokémon" line "Cards, you must defeat the 8 Club" line "Masters and get the 8 Medals!" - line "Then you have to go to Pok`mon" + line "Then you have to go to Pokémon" line "Dome and defeat all 4 of the " line "Grand Masters there!!!" line "There's no way you can do it!!!" line "You might as well just give up" line "and go home!" - line "'Cause the Legendary Pok`mon Cards" + line "'Cause the Legendary Pokémon Cards" line "are gonna be mine!" line "I already won the first Medal!" line "See ya, ", TX_RAM1, "!" @@ -816,7 +816,7 @@ Text0651: ; 4ede7 (13:6de7) Text0652: ; 4ee31 (13:6e31) text "Don't get so cocky just because" line "you won." - line "The Legendary Pok`mon Cards" + line "The Legendary Pokémon Cards" line "belong to Me!!!" done @@ -824,7 +824,7 @@ Text0653: ; 4ee87 (13:6e87) text "Huh?!? You're not even half as good" line "as I am!" line "There's no way you'll be able to" - line "inherit the Legendary Pok`mon Cards!" + line "inherit the Legendary Pokémon Cards!" line "Why don't you just give up!?!" line "See ya!" line "Ha ha ha ha ha ha!" @@ -852,7 +852,7 @@ Text0656: ; 4f01e (13:701e) Text0657: ; 4f04d (13:704d) text "A single match with 4 prizes!" line "Come on, my precious ghosts!" - line "Let's make his Pok`mon disappear!" + line "Let's make his Pokémon disappear!" done Text0658: ; 4f0ab (13:70ab) @@ -943,13 +943,13 @@ Text0664: ; 4f574 (13:7574) line "I've already won 5 Medals!" line "By the time you win your 8th Medal," line "I will have inherited the" - line "Legendary Pok`mon Cards!" + line "Legendary Pokémon Cards!" line "I'll catch you later!" line "See ya! Ha ha ha ha ha ha!" done Text0665: ; 4f640 (13:7640) - text "The Legendary Pok`mon Cards are " + text "The Legendary Pokémon Cards are " line "the ultimate cards. Everyone wants " line "to inherit the Legendary Cards - " line "that's why we play against so many " @@ -960,7 +960,7 @@ Text0665: ; 4f640 (13:7640) Text0666: ; 4f70e (13:770e) text "Did you hear?" line "Someone inherited the Legendary" - line "Pok`mon Cards! Whomever it is," + line "Pokémon Cards! Whomever it is," line "he must be really cool if he " line "can defeat the Grand Masters!" done @@ -1124,7 +1124,7 @@ Text0682: ; 4ff1a (13:7f1a) line "Hmmmm..." line "Well, you must be pretty good if" line "you're trying to inherit" - line "the Legendary Pok`mon Cards." + line "the Legendary Pokémon Cards." line "Here, take this Psychic Medal." done diff --git a/src/text/text8.asm b/src/text/text8.asm index 4860e03..176964e 100644 --- a/src/text/text8.asm +++ b/src/text/text8.asm @@ -9,7 +9,7 @@ Text0685: ; 5005b (14:405b) text "It seems you weren't really ready." line "If you keep playing like that," line "You'll only inherit the Legendary " - line "Pok`mon Cards in your dreams!" + line "Pokémon Cards in your dreams!" done Text0686: ; 500df (14:40df) @@ -55,9 +55,9 @@ Text068c: ; 502da (14:42da) text "Greetings." line "Welcome to the Fire Club!" line "This is a Club for boys with a " - line "burning passion for Fire Pok`mon." - line "Fire Pok`mon have the greatest " - line "attack power of all Pok`mon!" + line "burning passion for Fire Pokémon." + line "Fire Pokémon have the greatest " + line "attack power of all Pokémon!" done Text068d: ; 5037f (14:437f) @@ -210,18 +210,18 @@ Text06a2: ; 50a9e (14:4a9e) line "checked the wall!" line "" text TX_RAM1, "" - line "found a ", TX_LVL, "9 Slowpoke!" + line "found a <Lv>9 Slowpoke!" done Text06a3: ; 50acc (14:4acc) - text "I'm burning with Pok`mon " + text "I'm burning with Pokémon " line "fever today!" line "One day, I'm going to inherit" line "the Legendary Cards!" done Text06a4: ; 50b27 (14:4b27) - text "I'm burning with Pok`mon " + text "I'm burning with Pokémon " line "fever today!" line "One day, I'm going to inherit" line "the Legendary Cards!" @@ -233,7 +233,7 @@ Text06a4: ; 50b27 (14:4b27) Text06a5: ; 50bc0 (14:4bc0) text "This is the Fire Club, where guys" - line "with a burning passion for Pok`mon " + line "with a burning passion for Pokémon " line "Trading Cards get together for " line "heated duels! Join the fiery fun!" done @@ -272,7 +272,7 @@ Text06ab: ; 50d3f (14:4d3f) Text06ac: ; 50d8b (14:4d8b) text "Hey! Does everyone have the fever?" line "Do you have the fever?" - line "If you have Pok`mon fever," + line "If you have Pokémon fever," line "duel with me!!!" done @@ -308,9 +308,9 @@ Text06b2: ; 50ec6 (14:4ec6) done Text06b3: ; 50f03 (14:4f03) - text "Come on, people, say Fire Pok`mon!" + text "Come on, people, say Fire Pokémon!" line "You! Come on, say Fire! " - line "Fire Pok`mon! OK! Let's duel!!!" + line "Fire Pokémon! OK! Let's duel!!!" done Text06b4: ; 50f60 (14:4f60) @@ -319,12 +319,12 @@ Text06b4: ; 50f60 (14:4f60) Text06b5: ; 50f82 (14:4f82) text "Dang! You're icy cold!" - line "Come on! Say Fire Pok`mon!" + line "Come on! Say Fire Pokémon!" done Text06b6: ; 50fb5 (14:4fb5) text "A 4-prize match!" - line "Here we go! Fire Pok`mon!" + line "Here we go! Fire Pokémon!" done Text06b7: ; 50fe1 (14:4fe1) @@ -334,12 +334,12 @@ Text06b7: ; 50fe1 (14:4fe1) Text06b8: ; 51012 (14:5012) text "Let's duel again!" - line "Come on, people, say Fire Pok`mon!" + line "Come on, people, say Fire Pokémon!" done Text06b9: ; 51048 (14:5048) text "That was a great Duel!" - line "Let's duel again! Fire Pok`mon!" + line "Let's duel again! Fire Pokémon!" done Text06ba: ; 51080 (14:5080) @@ -355,7 +355,7 @@ Text06bb: ; 51131 (14:5131) text "I am Ken, the Fire Club Master!" line "You still need to collect more" line "cards if you wish to inherit" - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" line "If you wish to duel me, go collect " line "more cards!" done @@ -400,7 +400,7 @@ Text06c1: ; 513d2 (14:53d2) Text06c2: ; 51408 (14:5408) text "With this, you're a little closer" - line "to the Legendary Pok`mon Cards!" + line "to the Legendary Pokémon Cards!" line "Here, take this, too!" line "I hope it will help you out!" done @@ -535,7 +535,7 @@ Text06d7: ; 519de (14:59de) line "Welcome to the Grass Club." line "This Club is for girls who love" line "to grow flowers." - line "The Pok`mon cards used here are " + line "The Pokémon cards used here are " line "also beautiful flowers." done @@ -593,7 +593,7 @@ Text06e0: ; 51ccb (14:5ccb) line "Who? The Master of the Grass Club?" line "Do you mean Nikki? Nikki's out. " line "I need a break." - line "Do you want to play the Pok`mon " + line "Do you want to play the Pokémon " line "Trading Card Game with me?" done @@ -604,7 +604,7 @@ Text06e1: ; 51d9b (14:5d9b) line "break! " line "You need a gentle heart" line "to take care of plants!" - line "Say, would you play the Pok`mon" + line "Say, would you play the Pokémon" line "Trading Card Game with me?" done @@ -850,7 +850,7 @@ Text0709: ; 528bf (14:68bf) done Text070a: ; 528ed (14:68ed) - text "The Pok`mon Trading Card Game is " + text "The Pokémon Trading Card Game is " line "fun, but so is taking care of trees!" done @@ -977,7 +977,7 @@ Text071f: ; 52eae (14:6eae) text "Oh, no! I lost!" line "Well, you truly are skilled." line "Maybe one day you will inherit" - line "the Legendary Pok`mon Cards." + line "the Legendary Pokémon Cards." line "Please allow me to give you" line "this Grass Medal." done @@ -1019,7 +1019,7 @@ Text0724: ; 5312e (14:712e) text "Thank you very much, ISHIHARA." line "Your books were very helpful!" line "You are indeed the Number 1" - line "Pok`mon Trading Card Collector." + line "Pokémon Trading Card Collector." done Text0725: ; 531a8 (14:71a8) @@ -1037,10 +1037,10 @@ Text0726: ; 5320c (14:720c) Text0727: ; 53245 (14:7245) text "Hello, nice to meet you." line "I'm ISHIHARA." - line "I'm a Pok`mon Card Collector." + line "I'm a Pokémon Card Collector." line "I love collecting cards." line "I see you also love" - line "Pok`mon Cards." + line "Pokémon Cards." line "Please come see me again." line "We must trade some sometime." line "OH!" @@ -1073,7 +1073,7 @@ Text0729: ; 53435 (14:7435) Text072a: ; 534e1 (14:74e1) text "Hello, ", TX_RAM1, "." line "Are you enjoying the " - line "Pok`mon Trading Card Game?" + line "Pokémon Trading Card Game?" line "By the way, I'm looking for a " line "Clefable..." line "I'm thinking about trading" @@ -1136,7 +1136,7 @@ Text0732: ; 5377f (14:777f) Text0733: ; 53829 (14:7829) text "Hello, ", TX_RAM1, ". " line "Are you enjoying the" - line "Pok`mon Trading Card Game?" + line "Pokémon Trading Card Game?" line "I'm looking for a Ditto" line "this time..." line "I'm thinking about trading" @@ -1186,7 +1186,7 @@ Text0738: ; 53a4a (14:7a4a) Text0739: ; 53b25 (14:7b25) text "Hello, ", TX_RAM1, ". " line "Are you enjoying the" - line "Pok`mon Trading Card Game?" + line "Pokémon Trading Card Game?" line "I'm looking for a Chansey" line "this time! I'm thinking about " line "trading my Surfing Pikachu for " @@ -1224,12 +1224,12 @@ Text073d: ; 53d24 (14:7d24) Text073e: ; 53d5b (14:7d5b) text "Oh! Congratulations, ", TX_RAM1, "!" line "I heard the news! You've finally " - line "inherited the Legendary Pok`mon " + line "inherited the Legendary Pokémon " line "Cards! Don't worry, I'm not going " line "to ask you to trade them to me." line "Besides, it would be a waste " line "not to use the Legendary Cards " line "for dueling. Make sure your " line "Duels are worthy of" - line "the Legendary Pok`mon Cards." + line "the Legendary Pokémon Cards." done diff --git a/src/text/text9.asm b/src/text/text9.asm index 12f2203..9beb35d 100644 --- a/src/text/text9.asm +++ b/src/text/text9.asm @@ -5,10 +5,10 @@ Text073f: ; 54000 (15:4000) line "lose, but now..." line "Now I understand." line "The fun thing about the " - line "Pok`mon Trading Card Game" + line "Pokémon Trading Card Game" line "is not who wins or loses..." line "I couldn't inherit the Legendary " - line "Pok`mon Cards because all that " + line "Pokémon Cards because all that " line "was important to me was winning." line "But now I understand!" line "What's important..." @@ -52,7 +52,7 @@ Text0744: ; 5434c (15:434c) line "Welcome to the Science Club!" line "This Club is for technicians" line "who love the sciences." - line "The Pok`mon cards used here are " + line "The Pokémon cards used here are " line "those with the powers of science!" done @@ -104,7 +104,7 @@ Text074a: ; 54613 (15:4613) Text074b: ; 54680 (15:4680) text "I don't understand science," - line "but I understand Pok`mon cards!" + line "but I understand Pokémon cards!" line "... I L O S T..." done @@ -120,9 +120,9 @@ Text074d: ; 5471b (15:471b) done Text074e: ; 54740 (15:4740) - text "I get so involved in the Pok`mon " + text "I get so involved in the Pokémon " line "Trading Card Game, I lose track " - line "of time. Isn't the Pok`mon Trading" + line "of time. Isn't the Pokémon Trading" line "Card Game really fun?" done @@ -174,12 +174,12 @@ Text0756: ; 54a19 (15:4a19) done Text0757: ; 54a4b (15:4a4b) - text "We research Pok`mon cards here" + text "We research Pokémon cards here" line "at the Science Club, especially" - line "Science Pok`mon Cards! Science" - line "Pok`mon are exceedingly strong." + line "Science Pokémon Cards! Science" + line "Pokémon are exceedingly strong." line "Would you like to Duel against" - line "my Science Pok`mon Deck?" + line "my Science Pokémon Deck?" done Text0758: ; 54b02 (15:4b02) @@ -197,7 +197,7 @@ Text075a: ; 54b62 (15:4b62) done Text075b: ; 54b8a (15:4b8a) - text "I can't believe my Science Pok`mon" + text "I can't believe my Science Pokémon" line "Deck could lose..." done @@ -249,7 +249,7 @@ Text0764: ; 54ded (15:4ded) text "Legendary Cards are but a Legend!" line "Science is the only truth!" line "I must continue my research" - line "of Science Pok`mon!" + line "of Science Pokémon!" done Text0765: ; 54e5b (15:4e5b) @@ -283,7 +283,7 @@ Text0769: ; 54f4b (15:4f4b) Text076a: ; 54fae (15:4fae) text "I will keep researching the " - line "Science Pok`mon." + line "Science Pokémon." done Text076b: ; 54fdd (15:4fdd) @@ -367,8 +367,8 @@ Text0779: ; 5532c (15:532c) text "Greetings." line "Welcome to the Rock Club!" line "This Club is for members who" - line "use Rock Pok`mon cards." - line "Rock Pok`mon are defensive" + line "use Rock Pokémon cards." + line "Rock Pokémon are defensive" line "and take very little damage." done @@ -458,7 +458,7 @@ Text0787: ; 55786 (15:5786) Text0788: ; 557c1 (15:57c1) text "Wow! So that's the strength of" - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" done Text0789: ; 557fe (15:57fe) @@ -468,7 +468,7 @@ Text0789: ; 557fe (15:57fe) Text078a: ; 55828 (15:5828) text "I won again! I guess the Legendary " - line "Pok`mon Cards will eventually " + line "Pokémon Cards will eventually " line "belong to me!" done @@ -530,7 +530,7 @@ Text0792: ; 55b6f (15:5b6f) text "Gee! I lost!" line "Matthew's really good!" line "He'll probably inherit" - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" done Text0793: ; 55bc8 (15:5bc8) @@ -538,9 +538,9 @@ Text0793: ; 55bc8 (15:5bc8) line "I can't win, no matter how many " line "times I duel against him!" line "He's probably going to inherit" - line "the Legendary Pok`mon Cards!" + line "the Legendary Pokémon Cards!" line "What? You already inherited" - line "the Legendary Pok`mon Cards???" + line "the Legendary Pokémon Cards???" line "Then you must be better" line "than Matthew!" done @@ -550,11 +550,11 @@ Text0794: ; 55cba (15:5cba) line "to a faraway place." line "But I'm not sad." line "I'll make new friends dueling" - line "with Pok`mon cards..." + line "with Pokémon cards..." done Text0795: ; 55d30 (15:5d30) - text "I'm carving a statue of a Pok`mon" + text "I'm carving a statue of a Pokémon" line "out of this Rock!" line "What? You want to Duel?" line "Alright. You want to duel now?" @@ -595,10 +595,10 @@ Text079b: ; 55e84 (15:5e84) Text079c: ; 55eda (15:5eda) text "I've always wanted to be" line "a Hard Rocker!" - line "Rock Pok`mon..." + line "Rock Pokémon..." line "Doesn't the name Rock?" line "Won't you Duel against my" - line "Rock Pok`mon Deck?" + line "Rock Pokémon Deck?" done Text079d: ; 55f57 (15:5f57) @@ -682,7 +682,7 @@ Text07aa: ; 562ee (15:62ee) text "You see? Isn't Rock good?" line "Isn't Rock wonderful?" line "'Fess up and admit the greatness" - line "of Rock Pok`mon!" + line "of Rock Pokémon!" done Text07ab: ; 56351 (15:6351) @@ -721,7 +721,7 @@ Text07b0: ; 56478 (15:6478) Text07b1: ; 564db (15:64db) text "" - line " Pok`mon Trading Card Game " + line " Pokémon Trading Card Game " line " Staff" done @@ -883,7 +883,7 @@ Text07c5: ; 56b71 (15:6b71) text "" line " US COORDINATION" line " Wizards of the Coast" - line " Pok`mon Templating Team" + line " Pokémon Templating Team" line "" line "" line " Robert Gutschera" @@ -930,7 +930,7 @@ Text07ca: ; 56d12 (15:6d12) Text07cb: ; 56d53 (15:6d53) text "" - line " Pok`mon Original Story" + line " Pokémon Original Story" line "" line "" line " Satoshi Tajiri" @@ -1153,27 +1153,27 @@ Text07f5: ; 5736a (15:736a) done Text07f6: ; 5736d (15:736d) - db $03,$50, TX_FIRE, $03,$51 + db $03,$50, "<FIRE>", $03,$51 done Text07f7: ; 57374 (15:7374) - db $03,$50, TX_LIGHTNING, $03,$51 + db $03,$50, "<LIGHTNING>", $03,$51 done Text07f8: ; 5737b (15:737b) - db $03,$50, TX_WATER, $03,$51 + db $03,$50, "<WATER>", $03,$51 done Text07f9: ; 57382 (15:7382) - db $03,$50, TX_FIGHTING, $03,$51 + db $03,$50, "<FIGHTING>", $03,$51 done Text07fa: ; 57389 (15:7389) - db $03,$50, TX_PSYCHIC, $03,$51 + db $03,$50, "<PSYCHIC>", $03,$51 done Text07fb: ; 57390 (15:7390) - db $03,$50, TX_GRASS, $03,$51 + db $03,$50, "<GRASS>", $03,$51 done GrassEnergyName: ; 57397 (15:7397) @@ -1181,7 +1181,7 @@ GrassEnergyName: ; 57397 (15:7397) done GrassEnergyDescription: ; 573a5 (15:73a5) - text "Provides 1 ", TX_GRASS, " Energy." + text "Provides 1 <GRASS> Energy." done FireEnergyName: ; 573bc (15:73bc) @@ -1189,7 +1189,7 @@ FireEnergyName: ; 573bc (15:73bc) done FireEnergyDescription: ; 573c9 (15:73c9) - text "Provides 1 ", TX_FIRE, " Energy." + text "Provides 1 <FIRE> Energy." done WaterEnergyName: ; 573e0 (15:73e0) @@ -1197,7 +1197,7 @@ WaterEnergyName: ; 573e0 (15:73e0) done WaterEnergyDescription: ; 573ee (15:73ee) - text "Provides 1 ", TX_WATER, " Energy." + text "Provides 1 <WATER> Energy." done LightningEnergyName: ; 57405 (15:7405) @@ -1205,7 +1205,7 @@ LightningEnergyName: ; 57405 (15:7405) done LightningEnergyDescription: ; 57417 (15:7417) - text "Provides 1 ", TX_LIGHTNING, " Energy." + text "Provides 1 <LIGHTNING> Energy." done FightingEnergyName: ; 5742e (15:742e) @@ -1213,7 +1213,7 @@ FightingEnergyName: ; 5742e (15:742e) done FightingEnergyDescription: ; 5743f (15:743f) - text "Provides 1 ", TX_FIGHTING, " Energy." + text "Provides 1 <FIGHTING> Energy." done PsychicEnergyName: ; 57456 (15:7456) @@ -1221,7 +1221,7 @@ PsychicEnergyName: ; 57456 (15:7456) done PsychicEnergyDescription: ; 57466 (15:7466) - text "Provides 1 ", TX_PSYCHIC, " Energy." + text "Provides 1 <PSYCHIC> Energy." done DoubleColorlessEnergyName: ; 5747d (15:747d) @@ -1229,7 +1229,7 @@ DoubleColorlessEnergyName: ; 5747d (15:747d) done DoubleColorlessEnergyDescription: ; 57496 (15:7496) - text "Provides ", TX_COLORLESS, TX_COLORLESS, " Energy. (Doesn't" + text "Provides <COLORLESS><COLORLESS> Energy. (Doesn't" line "count as a basic Energy card.) " line "Colorless Energy can't be used to" line "pay colored Energy costs. (Any type" @@ -1259,7 +1259,7 @@ BulbasaurDescription: ; 575d1 (15:75d1) text "A strange seed was planted on its" line "back at birth. Thus, a plant" line "sprouted and now grows with this" - line "Pok`mon." + line "Pokémon." done IvysaurName: ; 5763b (15:763b) @@ -1275,13 +1275,13 @@ PoisonPowderName: ; 5764f (15:764f) done InflictPoisonDescription: ; 5765d (15:765d) - text "The Defending Pok`mon is now" + text "The Defending Pokémon is now" line "Poisoned." done IvysaurDescription: ; 57685 (15:7685) text "When the bulb on its back grows" - line "large, the Pok`mon seems to lose the" + line "large, the Pokémon seems to lose the" line "ability to stand on its hind legs." done @@ -1296,8 +1296,8 @@ SolarPowerName: ; 576f8 (15:76f8) SolarPowerDescription: ; 57705 (15:7705) text "Once during your turn (before your" line "attack), you may use this power." - line "Your Active Pok`mon and the" - line "Defending Pok`mon are no longer" + line "Your Active Pokémon and the" + line "Defending Pokémon are no longer" line "Asleep, Confused, Paralyzed, or" line "Poisoned." done @@ -1315,7 +1315,7 @@ MegaDrainName: ; 577f9 (15:77f9) VenusaursMegaDrainDescription: ; 57805 (15:7805) text "Remove a number of damage counters" line "from Venusaur equal to half the" - line "damage done to the Defending Pok`mon" + line "damage done to the Defending Pokémon" line "(after applying Weakness and" line "Resistance) (rounded up to the" line "nearest 10)." @@ -1340,8 +1340,8 @@ EnergyTransName: ; 57960 (15:7960) EnergyTransDescription: ; 5796e (15:796e) text "As often as you like during your" line "turn (before your attack), you may" - line "take 1 ", TX_GRASS, " Energy card attached to 1" - line "of your Pok`mon and attach it to a" + line "take 1 <GRASS> Energy card attached to 1" + line "of your Pokémon and attach it to a" line "different one. This power can't be" line "used if Venusaur is Asleep," line "Confused, or Paralyzed." @@ -1367,7 +1367,7 @@ StringShotName: ; 57ac3 (15:7ac3) MayInflictParalysisDescription: ; 57ad0 (15:7ad0) text "Flip a coin. If heads, the Defending" - line "Pok`mon is now Paralyzed." + line "Pokémon is now Paralyzed." done CaterpieKind: ; 57b10 (15:7b10) @@ -1419,16 +1419,16 @@ WhirlwindName: ; 57c8e (15:7c8e) WhirlwindDescription: ; 57c99 (15:7c99) text "If your opponent has any Benched" - line "Pok`mon, he or she chooses 1 of them" + line "Pokémon, he or she chooses 1 of them" line "and switches it with the Defending" - line "Pok`mon. (Do the damage before" - line "switching the Pok`mon.)" + line "Pokémon. (Do the damage before" + line "switching the Pokémon.)" done ButterfreesMegaDrainDescription: ; 57d3a (15:7d3a) text "Remove a number of damage counters" line "from Butterfree equal to half the" - line "damage done to the Defending Pok`mon" + line "damage done to the Defending Pokémon" line "(after applying Weakness and" line "Resistance) (rounded up to the" line "nearest 10)." @@ -1460,7 +1460,7 @@ PoisonStingName: ; 57ea1 (15:7ea1) MayInflictPoisonDescription: ; 57eaf (15:7eaf) text "Flip a coin. If heads, the Defending" - line "Pok`mon is now Poisoned." + line "Pokémon is now Poisoned." done WeedleKind: ; 57eee (15:7eee) diff --git a/src/text/text_offsets.asm b/src/text/text_offsets.asm index 66c7a64..7a77e79 100644 --- a/src/text/text_offsets.asm +++ b/src/text/text_offsets.asm @@ -63,7 +63,7 @@ TextOffsets:: ; 34000 (d:4000) textpointer Text003b ; 0x003b textpointer NoSelectableAttackText ; 0x003c textpointer UnableToRetreatText ; 0x003d - textpointer OnlyOneEnergyCardText ; 0x003e + textpointer MayOnlyAttachOneEnergyCardText ; 0x003e textpointer Text003f ; 0x003f textpointer Text0040 ; 0x0040 textpointer DiscardDescription ; 0x0041 @@ -87,7 +87,7 @@ TextOffsets:: ; 34000 (d:4000) textpointer YouPlayFirstText ; 0x0053 textpointer YouPlaySecondText ; 0x0054 textpointer TransmissionErrorText ; 0x0055 - textpointer Text0056 ; 0x0056 + textpointer ChooseTheCardYouWishToExamineText ; 0x0056 textpointer TransmitingDataText ; 0x0057 textpointer Text0058 ; 0x0058 textpointer Text0059 ; 0x0059 @@ -98,7 +98,7 @@ TextOffsets:: ; 34000 (d:4000) textpointer Text005e ; 0x005e textpointer Text005f ; 0x005f textpointer Text0060 ; 0x0060 - textpointer Text0061 ; 0x0061 + textpointer PlacedOnTheBenchText ; 0x0061 textpointer Text0062 ; 0x0062 textpointer Text0063 ; 0x0063 textpointer Text0064 ; 0x0064 @@ -113,14 +113,14 @@ TextOffsets:: ; 34000 (d:4000) textpointer ChooseUpTo5BasicPkmnToPlaceOnBenchText ; 0x006d textpointer Text006e ; 0x006e textpointer Text006f ; 0x006f - textpointer Text0070 ; 0x0070 + textpointer YouDrewText ; 0x0070 textpointer Text0071 ; 0x0071 textpointer PlacingThePrizesText ; 0x0072 textpointer PleasePlacePrizesText ; 0x0073 textpointer IfHeadPlayerPlaysFirstText ; 0x0074 textpointer CoinTossToDetermineWhoFirstText ; 0x0075 textpointer DecisionText ; 0x0076 - textpointer DuelWasDrawText ; 0x0077 + textpointer DuelWasADrawText ; 0x0077 textpointer WonDuelText ; 0x0078 textpointer LostDuelText ; 0x0079 textpointer StartSuddenDeathMatchText ; 0x007a @@ -166,12 +166,12 @@ TextOffsets:: ; 34000 (d:4000) textpointer ResetBackUpRamText ; 0x00a2 textpointer Text00a3 ; 0x00a3 textpointer NoCardsInHandText ; 0x00a4 - textpointer Text00a5 ; 0x00a5 + textpointer TheDiscardPileHasNoCardsText ; 0x00a5 textpointer Text00a6 ; 0x00a6 - textpointer Text00a7 ; 0x00a7 - textpointer Text00a8 ; 0x00a8 - textpointer Text00a9 ; 0x00a9 - textpointer Text00aa ; 0x00aa + textpointer DuelistHandText ; 0x00a7 + textpointer DuelistPlayAreaText ; 0x00a8 + textpointer DuelistDeckText ; 0x00a9 + textpointer PleaseSelectHandText ; 0x00aa textpointer Text00ab ; 0x00ab textpointer Text00ac ; 0x00ac textpointer Text00ad ; 0x00ad @@ -180,8 +180,8 @@ TextOffsets:: ; 34000 (d:4000) textpointer Text00b0 ; 0x00b0 textpointer Text00b1 ; 0x00b1 textpointer NoSpaceOnTheBenchText ; 0x00b2 - textpointer Text00b3 ; 0x00b3 - textpointer Text00b4 ; 0x00b4 + textpointer NoPokemonCapableOfEvolvingText ; 0x00b3 + textpointer CantEvolvePokemonInSameTurnItsPlacedText ; 0x00b4 textpointer Text00b5 ; 0x00b5 textpointer Text00b6 ; 0x00b6 textpointer Text00b7 ; 0x00b7 @@ -281,8 +281,8 @@ TextOffsets:: ; 34000 (d:4000) textpointer Text0115 ; 0x0115 textpointer Text0116 ; 0x0116 textpointer Text0117 ; 0x0117 - textpointer Text0118 ; 0x0118 - textpointer Text0119 ; 0x0119 + textpointer DrawCardsFromTheDeck ; 0x0118 + textpointer NoCardsInDeckCannotDraw ; 0x0119 textpointer Text011a ; 0x011a textpointer Text011b ; 0x011b textpointer Text011c ; 0x011c @@ -369,8 +369,8 @@ TextOffsets:: ; 34000 (d:4000) textpointer Text016d ; 0x016d textpointer Text016e ; 0x016e textpointer Text016f ; 0x016f - textpointer Text0170 ; 0x0170 - textpointer Text0171 ; 0x0171 + textpointer TheCardYouReceivedText ; 0x0170 + textpointer YouReceivedTheseCardsText ; 0x0171 textpointer Text0172 ; 0x0172 textpointer Text0173 ; 0x0173 textpointer Text0174 ; 0x0174 @@ -420,7 +420,7 @@ TextOffsets:: ; 34000 (d:4000) textpointer Text01a0 ; 0x01a0 textpointer Text01a1 ; 0x01a1 textpointer Text01a2 ; 0x01a2 - textpointer Text01a3 ; 0x01a3 + textpointer DrMasonText ; 0x01a3 textpointer Text01a4 ; 0x01a4 textpointer Text01a5 ; 0x01a5 textpointer Text01a6 ; 0x01a6 @@ -536,8 +536,8 @@ TextOffsets:: ; 34000 (d:4000) textpointer Text0214 ; 0x0214 textpointer Text0215 ; 0x0215 textpointer Text0216 ; 0x0216 - textpointer Text0217 ; 0x0217 - textpointer Text0218 ; 0x0218 + textpointer YourDiscardPileText ; 0x0217 + textpointer OpponentsDiscardPileText ; 0x0218 textpointer Text0219 ; 0x0219 textpointer Text021a ; 0x021a textpointer Text021b ; 0x021b diff --git a/src/vram.asm b/src/vram.asm index 7adca0a..9fbc401 100644 --- a/src/vram.asm +++ b/src/vram.asm @@ -4,8 +4,8 @@ v0Tiles0:: ds $800 ; 8000 v0Tiles1:: ds $800 ; 8800 v0Tiles2:: ds $800 ; 9000 -v0BGMapTiles1:: ds $400 ; 9800 -v0BGMapTiles2:: ds $400 ; 9c00 +v0BGMap0:: ds $400 ; 9800 +v0BGMap1:: ds $400 ; 9c00 v0End:: ; a000 @@ -15,7 +15,7 @@ v1Tiles0:: ds $800 ; 8000 v1Tiles1:: ds $800 ; 8800 v1Tiles2:: ds $800 ; 9000 -v1BGMapTiles1:: ds $400 ; 9800 -v1BGMapTiles2:: ds $400 ; 9c00 +v1BGMap0:: ds $400 ; 9800 +v1BGMap1:: ds $400 ; 9c00 v1End:: ; a000 diff --git a/src/wram.asm b/src/wram.asm index b100a57..d957273 100644 --- a/src/wram.asm +++ b/src/wram.asm @@ -5,9 +5,18 @@ INCLUDE "vram.asm" SECTION "WRAM0", WRAM0 +UNION + wTempCardCollection:: ; c000 ds $100 +NEXTU + +wc000:: ; c000 + ds $100 + +ENDU + ds $100 SECTION "WRAM Duels 1", WRAM0 @@ -105,7 +114,33 @@ wPlayerBench4CardChangedType:: ; c2d8 wPlayerBench5CardChangedType:: ; c2d9 ds $1 - ds $d +wPlayerArenaCardAttachedDefender:: ; c2da + ds $1 +wPlayerBench1CardAttachedDefender:: ; c2db + ds $1 +wPlayerBench2CardAttachedDefender:: ; c2dc + ds $1 +wPlayerBench3CardAttachedDefender:: ; c2dd + ds $1 +wPlayerBench4CardAttachedDefender:: ; c2de + ds $1 +wPlayerBench5CardAttachedDefender:: ; c2df + ds $1 + +wPlayerArenaCardAttachedPluspower:: ; c2e0 + ds $1 +wPlayerBench1CardAttachedPluspower:: ; c2e1 + ds $1 +wPlayerBench2CardAttachedPluspower:: ; c2e2 + ds $1 +wPlayerBench3CardAttachedPluspower:: ; c2e3 + ds $1 +wPlayerBench4CardAttachedPluspower:: ; c2e4 + ds $1 +wPlayerBench5CardAttachedPluspower:: ; c2e5 + ds $1 + + ds $1 wPlayerArenaCardSubstatus1:: ; c2e7 ds $1 @@ -135,7 +170,7 @@ wPlayerNumberOfCardsInHand:: ; c2ee ds $1 ; Pokemon cards in arena + bench -wPlayerNumberOfPokemonInPlay:: ; c2ef +wPlayerNumberOfPokemonInPlayArea:: ; c2ef ds $1 wPlayerArenaCardStatus:: ; c2f0 @@ -203,20 +238,46 @@ wOpponentBench4CardStage:: ; c3d2 wOpponentBench5CardStage:: ; c3d3 ds $1 -wOpponentArenaCardChangedType:: ; c2d4 +wOpponentArenaCardChangedType:: ; c3d4 ds $1 -wOpponentBench1CardChangedType:: ; c2d5 +wOpponentBench1CardChangedType:: ; c3d5 ds $1 -wOpponentBench2CardChangedType:: ; c2d6 +wOpponentBench2CardChangedType:: ; c3d6 ds $1 -wOpponentBench3CardChangedType:: ; c2d7 +wOpponentBench3CardChangedType:: ; c3d7 ds $1 -wOpponentBench4CardChangedType:: ; c2d8 +wOpponentBench4CardChangedType:: ; c3d8 ds $1 -wOpponentBench5CardChangedType:: ; c2d9 +wOpponentBench5CardChangedType:: ; c3d9 ds $1 - ds $d +wOpponentArenaCardAttachedDefender:: ; c3da + ds $1 +wOpponentBench1CardAttachedDefender:: ; c3db + ds $1 +wOpponentBench2CardAttachedDefender:: ; c3dc + ds $1 +wOpponentBench3CardAttachedDefender:: ; c3dd + ds $1 +wOpponentBench4CardAttachedDefender:: ; c3de + ds $1 +wOpponentBench5CardAttachedDefender:: ; c3df + ds $1 + +wOpponentArenaCardAttachedPluspower:: ; c3e0 + ds $1 +wOpponentBench1CardAttachedPluspower:: ; c3e1 + ds $1 +wOpponentBench2CardAttachedPluspower:: ; c3e2 + ds $1 +wOpponentBench3CardAttachedPluspower:: ; c3e3 + ds $1 +wOpponentBench4CardAttachedPluspower:: ; c3e4 + ds $1 +wOpponentBench5CardAttachedPluspower:: ; c3e5 + ds $1 + + ds $1 wOpponentArenaCardSubstatus1:: ; c3e7 ds $1 @@ -242,7 +303,7 @@ wOpponentNumberOfCardsInDiscardPile:: ; c3ed wOpponentNumberOfCardsInHand:: ; c3ee ds $1 -wOpponentNumberOfPokemonInPlay:: ; c3ef +wOpponentNumberOfPokemonInPlayArea:: ; c3ef ds $1 wOpponentArenaCardStatus:: ; c3f0 @@ -251,6 +312,7 @@ wOpponentArenaCardStatus:: ; c3f0 ; $00 - player ; $01 - link ; other - AI controlled +; this is equal to wDuelType wOpponentDuelistType:: ; c3f1 ds $1 @@ -332,7 +394,7 @@ wInitialA:: ; cab3 wConsole:: ; cab4 ds $1 -wcab5:: ; cab5 +wOAMOffset:: ; cab5 ds $1 wTileMapFill:: ; cab6 @@ -445,10 +507,10 @@ wTempSGBPacket:: ; cae0 ; temporal CGB palette data buffer to eventually save into BGPD or OBPD registers. wBackgroundPalettesCGB:: ; caf0 - ds 8 * CGB_PAL_SIZE + ds 8 palettes wObjectPalettesCGB:: ; cb30 - ds 8 * CGB_PAL_SIZE + ds 8 palettes ds $4 @@ -517,6 +579,7 @@ wCurrentDuelMenuItem:: ; cbc6 wCardPageNumber:: ; cbc7 ds $1 +wcbc8:: ; cbc8 ds $1 ; 2-byte something @@ -541,12 +604,49 @@ wSelectedDuelSubMenuItem:: ; cbcf wSelectedDuelSubMenuScrollOffset:: ; cbd0 ds $1 - ds $5 +wcbd1:: ; cbd1 + ds $1 + +wcbd2:: ; cbd2 + ds $1 + +wcbd3:: ; cbd3 + ds $1 + +wcbd4:: ; cbd4 + ds $1 + +wcbd5:: ; cbd5 + ds $1 wcbd6:: ; cbd6 ds $1 - ds $a +wcbd7:: ; cbd7 + ds $1 + +wcbd8:: ; cbd8 + ds $1 + +wcbd9:: ; cbd9 + ds $1 + +; in the hand or discard pile card screen, id of the text printed in the bottom-left box +wCardListInfoBoxText:: ; cbda + ds $2 + +; in the hand or discard pile card screen, id of the text printed as the header title +wCardListHeaderText:: ; cbdc + ds $2 + +wcbde:: ; cbde + ds $1 + +wcbdf:: ; cbdf + ds $1 + +wcbe0:: ; cbe0 + ds $1 wcbe1:: ; cbe1 ds $1 @@ -554,13 +654,21 @@ wcbe1:: ; cbe1 wcbe2:: ; cbe2 ds $3 -wcbe5:: ; cbe5 +; sp is saved here when starting a duel, in order to save the return address +; however, it only seems to be read after a transmission error in a link duel +wDuelReturnAddress:: ; cbe5 ds $2 wcbe7:: ; cbe7 ds $1 - ds $5 +wcbe8:: ; cbe8 + ds $1 + +wcbe9:: ; cbe9 + ds $1 + + ds $3 wcbed:: ; cbed ds $8 @@ -570,7 +678,19 @@ wcbed:: ; cbed wcbf9:: ; cbf9 ds $1 - ds $a + ds $4 + +; during a practice duel, identifies an entry of PracticeDuelActionTable +wPracticeDuelAction:: ; cbfe + ds $1 + +wcbff:: ; cbff + ds $1 + +wcc00:: ; cc00 + ds $1 + + ds $3 wcc04:: ; cc04 ds $1 @@ -582,20 +702,24 @@ wcc05:: ; cc05 wDuelTurns:: ; cc06 ds $1 +; used to signal that the current duel has finished, not to be mistaken with wDuelResult ; 0 = no one has won duel yet ; 1 = player whose turn it is has won the duel ; 2 = player whose turn it is has lost the duel -; 3 = duel ended in a draw +; 3 = duel ended in a draw (start sudden death match) wDuelFinished:: ; cc07 ds $1 -wcc08:: ; cc08 +; current duel is a [wDuelInitialPrizes]-prize match +wDuelInitialPrizes:: ; cc08 ds $1 -wcc09:: ; cc09 +; note that for a practice duel, wIsPracticeDuel must also be set to $1 +wDuelType:: ; cc09 ds $1 -wcc0a:: ; cc0a +; set to 1 if the coin toss during the CheckSandAttackOrSmokescreenSubstatus check is heads +wGotHeadsFromSandAttackOrSmokescreenCheck:: ; cc0a ds $1 wAlreadyPlayedEnergy:: ; cc0b @@ -638,9 +762,11 @@ wOpponentPortrait:: ; cc15 wOpponentName:: ; cc16 ds $2 +; an overworld script starting a duel sets this address to the value to be written into wDuelInitialPrizes wcc18:: ; cc18 ds $1 +; an overworld script starting a duel sets this address to the value to be written into wOpponentDeckID wcc19:: ; cc19 ds $1 @@ -706,7 +832,7 @@ wNoDamageOrEffect:: ; ccc7 ds $2 ; set to 1 if the coin toss in the confusion check is heads (CheckSelfConfusionDamage) -wccc9:: ; ccc9 +wGotHeadsFromConfusionCheck:: ; ccc9 ds $1 ds $3 @@ -754,9 +880,8 @@ wccf2:: ; ccf2 SECTION "WRAM Engine 2", WRAM0 -; color/pattern of the text box border. Values between 0-7?. Interpreted differently depending on console type -; Note that this doesn't appear to be a selectable option, just changes with the situation. -; For example the value 4 seems to be used a lot during duels. +; on CGB, attributes of the text box borders. (values 0-7? so only affects palette?) +; on SGB, colorize text box border with SGB1 if non-0 wTextBoxFrameType:: ; ccf3 ds $1 @@ -822,10 +947,28 @@ wCursorTileNumber:: ; cd15 wTileBehindCursor:: ; cd16 ds $1 -wcd17:: ; cd17 +wMenuFunctionPointer:: ; cd17 ds $2 - ds $7f +wListScrollOffset:: ; cd19 + ds $1 + +wListItemXPosition:: ; cd1a + ds $1 + +wNumListItems:: ; cd1b + ds $1 + +wcd1c:: ; cd1c + ds $1 + +wListFunctionPointer:: ; cd1d + ds $2 + + ds $78 + +wcd97:: ; cd97 + ds $1 ; x coord of the leftmost item in a horizontal menu wLeftmostItemCursorX:: ; cd98 @@ -838,6 +981,8 @@ wRefreshMenuCursorSFX:: ; cd99 wcd9a:: ; cd9a ds $1 +; used in _CopyCardNameAndLevel to keep track of the remaining space to copy the text +wcd9b:: ; cd9b ds $1 wcd9c:: ; cd9c @@ -906,7 +1051,7 @@ wce22:: ; ce22 ds $1 ; LoadCardGfx loads the card's palette here -wce23:: ; ce23 +wCardPalette:: ; ce23 ds CGB_PAL_SIZE wce2b:: ; ce2b @@ -1196,7 +1341,9 @@ wd0c1:: ; d0c1 wd0c2:: ; d0c2 ds $1 -wd0c3:: ; d0c3 +; stores the player's result in a duel (0: loss, 1: win, 2: ???, -1: transmission error? ) +; to be read by the overworld caller +wDuelResult:: ; d0c3 ds $1 wd0c4:: ; d0c4 @@ -1224,7 +1371,7 @@ wd0cb:: ; d0cb ds $1 wd0cc:: ; d0cc - ds 8 * CGB_PAL_SIZE + ds 8 palettes wd10c:: ; d10c ds $1 |