summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/audio/music1.asm12
-rw-r--r--src/audio/music2.asm8
-rw-r--r--src/constants/card_data_constants.asm17
-rw-r--r--src/constants/duel_constants.asm108
-rw-r--r--src/constants/gfx_constants.asm4
-rw-r--r--src/constants/hardware_constants.asm1
-rw-r--r--src/constants/text_constants.asm62
-rw-r--r--src/engine/bank1.asm2473
-rw-r--r--src/engine/bank1c.asm2
-rw-r--r--src/engine/bank2.asm16
-rw-r--r--src/engine/bank20.asm2
-rw-r--r--src/engine/bank3.asm20
-rw-r--r--src/engine/bank4.asm10
-rw-r--r--src/engine/bank5.asm2
-rw-r--r--src/engine/bank6.asm157
-rw-r--r--src/engine/bank7.asm4
-rw-r--r--src/engine/booster_packs.asm2
-rw-r--r--src/engine/home.asm947
-rw-r--r--src/gfx.asm154
-rw-r--r--src/gfx/duel/anims/0.png (renamed from src/gfx/duel/0.png)bin186 -> 186 bytes
-rw-r--r--src/gfx/duel/anims/1.png (renamed from src/gfx/duel/1.png)bin144 -> 144 bytes
-rw-r--r--src/gfx/duel/anims/10.png (renamed from src/gfx/duel/10.png)bin1052 -> 1052 bytes
-rw-r--r--src/gfx/duel/anims/11.png (renamed from src/gfx/duel/11.png)bin374 -> 374 bytes
-rw-r--r--src/gfx/duel/anims/12.png (renamed from src/gfx/duel/12.png)bin206 -> 206 bytes
-rw-r--r--src/gfx/duel/anims/13.png (renamed from src/gfx/duel/13.png)bin200 -> 200 bytes
-rw-r--r--src/gfx/duel/anims/14.png (renamed from src/gfx/duel/14.png)bin378 -> 378 bytes
-rw-r--r--src/gfx/duel/anims/15.png (renamed from src/gfx/duel/15.png)bin414 -> 414 bytes
-rw-r--r--src/gfx/duel/anims/16.png (renamed from src/gfx/duel/16.png)bin184 -> 184 bytes
-rw-r--r--src/gfx/duel/anims/17.png (renamed from src/gfx/duel/17.png)bin577 -> 577 bytes
-rw-r--r--src/gfx/duel/anims/18.png (renamed from src/gfx/duel/18.png)bin332 -> 332 bytes
-rw-r--r--src/gfx/duel/anims/19.png (renamed from src/gfx/duel/19.png)bin428 -> 428 bytes
-rw-r--r--src/gfx/duel/anims/2.png (renamed from src/gfx/duel/2.png)bin187 -> 187 bytes
-rw-r--r--src/gfx/duel/anims/20.png (renamed from src/gfx/duel/20.png)bin177 -> 177 bytes
-rw-r--r--src/gfx/duel/anims/21.png (renamed from src/gfx/duel/21.png)bin222 -> 222 bytes
-rw-r--r--src/gfx/duel/anims/22.png (renamed from src/gfx/duel/22.png)bin422 -> 422 bytes
-rw-r--r--src/gfx/duel/anims/23.png (renamed from src/gfx/duel/23.png)bin201 -> 201 bytes
-rw-r--r--src/gfx/duel/anims/24.png (renamed from src/gfx/duel/24.png)bin511 -> 511 bytes
-rw-r--r--src/gfx/duel/anims/25.png (renamed from src/gfx/duel/25.png)bin542 -> 542 bytes
-rw-r--r--src/gfx/duel/anims/26.png (renamed from src/gfx/duel/26.png)bin243 -> 243 bytes
-rw-r--r--src/gfx/duel/anims/27.png (renamed from src/gfx/duel/27.png)bin764 -> 764 bytes
-rw-r--r--src/gfx/duel/anims/28.png (renamed from src/gfx/duel/28.png)bin193 -> 193 bytes
-rw-r--r--src/gfx/duel/anims/29.png (renamed from src/gfx/duel/29.png)bin212 -> 212 bytes
-rw-r--r--src/gfx/duel/anims/3.png (renamed from src/gfx/duel/3.png)bin207 -> 207 bytes
-rw-r--r--src/gfx/duel/anims/30.png (renamed from src/gfx/duel/30.png)bin368 -> 368 bytes
-rw-r--r--src/gfx/duel/anims/31.png (renamed from src/gfx/duel/31.png)bin194 -> 194 bytes
-rw-r--r--src/gfx/duel/anims/32.png (renamed from src/gfx/duel/32.png)bin479 -> 479 bytes
-rw-r--r--src/gfx/duel/anims/33.png (renamed from src/gfx/duel/33.png)bin186 -> 186 bytes
-rw-r--r--src/gfx/duel/anims/34.png (renamed from src/gfx/duel/34.png)bin183 -> 183 bytes
-rw-r--r--src/gfx/duel/anims/35.png (renamed from src/gfx/duel/35.png)bin380 -> 380 bytes
-rw-r--r--src/gfx/duel/anims/36.png (renamed from src/gfx/duel/36.png)bin164 -> 164 bytes
-rw-r--r--src/gfx/duel/anims/37.png (renamed from src/gfx/duel/37.png)bin200 -> 200 bytes
-rw-r--r--src/gfx/duel/anims/38.png (renamed from src/gfx/duel/38.png)bin272 -> 272 bytes
-rw-r--r--src/gfx/duel/anims/39.png (renamed from src/gfx/duel/39.png)bin317 -> 317 bytes
-rw-r--r--src/gfx/duel/anims/4.png (renamed from src/gfx/duel/4.png)bin277 -> 277 bytes
-rw-r--r--src/gfx/duel/anims/40.png (renamed from src/gfx/duel/40.png)bin223 -> 223 bytes
-rw-r--r--src/gfx/duel/anims/41.png (renamed from src/gfx/duel/41.png)bin293 -> 293 bytes
-rw-r--r--src/gfx/duel/anims/42.png (renamed from src/gfx/duel/42.png)bin155 -> 155 bytes
-rw-r--r--src/gfx/duel/anims/43.png (renamed from src/gfx/duel/43.png)bin191 -> 191 bytes
-rw-r--r--src/gfx/duel/anims/44.png (renamed from src/gfx/duel/44.png)bin205 -> 205 bytes
-rw-r--r--src/gfx/duel/anims/45.png (renamed from src/gfx/duel/45.png)bin123 -> 123 bytes
-rw-r--r--src/gfx/duel/anims/46.png (renamed from src/gfx/duel/46.png)bin157 -> 157 bytes
-rw-r--r--src/gfx/duel/anims/47.png (renamed from src/gfx/duel/47.png)bin277 -> 277 bytes
-rw-r--r--src/gfx/duel/anims/48.png (renamed from src/gfx/duel/48.png)bin118 -> 118 bytes
-rw-r--r--src/gfx/duel/anims/49.png (renamed from src/gfx/duel/49.png)bin111 -> 111 bytes
-rw-r--r--src/gfx/duel/anims/5.png (renamed from src/gfx/duel/5.png)bin212 -> 212 bytes
-rw-r--r--src/gfx/duel/anims/50.png (renamed from src/gfx/duel/50.png)bin364 -> 364 bytes
-rw-r--r--src/gfx/duel/anims/51.t10.png (renamed from src/gfx/duel/51.t10.png)bin552 -> 552 bytes
-rw-r--r--src/gfx/duel/anims/52.png (renamed from src/gfx/duel/52.png)bin192 -> 192 bytes
-rw-r--r--src/gfx/duel/anims/53.png (renamed from src/gfx/duel/53.png)bin149 -> 149 bytes
-rw-r--r--src/gfx/duel/anims/54.png (renamed from src/gfx/duel/54.png)bin284 -> 284 bytes
-rw-r--r--src/gfx/duel/anims/55.png (renamed from src/gfx/duel/55.png)bin114 -> 114 bytes
-rw-r--r--src/gfx/duel/anims/56.png (renamed from src/gfx/duel/56.png)bin85 -> 85 bytes
-rw-r--r--src/gfx/duel/anims/57.png (renamed from src/gfx/duel/57.png)bin90 -> 90 bytes
-rw-r--r--src/gfx/duel/anims/58.png (renamed from src/gfx/duel/58.png)bin94 -> 94 bytes
-rw-r--r--src/gfx/duel/anims/59.png (renamed from src/gfx/duel/59.png)bin120 -> 120 bytes
-rw-r--r--src/gfx/duel/anims/6.png (renamed from src/gfx/duel/6.png)bin316 -> 316 bytes
-rw-r--r--src/gfx/duel/anims/60.png (renamed from src/gfx/duel/60.png)bin97 -> 97 bytes
-rw-r--r--src/gfx/duel/anims/61.png (renamed from src/gfx/duel/61.png)bin95 -> 95 bytes
-rw-r--r--src/gfx/duel/anims/62.png (renamed from src/gfx/duel/62.png)bin85 -> 85 bytes
-rw-r--r--src/gfx/duel/anims/63.png (renamed from src/gfx/duel/63.png)bin199 -> 199 bytes
-rw-r--r--src/gfx/duel/anims/64.png (renamed from src/gfx/duel/64.png)bin102 -> 102 bytes
-rw-r--r--src/gfx/duel/anims/65.png (renamed from src/gfx/duel/65.png)bin183 -> 183 bytes
-rw-r--r--src/gfx/duel/anims/66.png (renamed from src/gfx/duel/66.png)bin135 -> 135 bytes
-rw-r--r--src/gfx/duel/anims/7.png (renamed from src/gfx/duel/7.png)bin609 -> 609 bytes
-rw-r--r--src/gfx/duel/anims/8.png (renamed from src/gfx/duel/8.png)bin293 -> 293 bytes
-rw-r--r--src/gfx/duel/anims/9.png (renamed from src/gfx/duel/9.png)bin462 -> 462 bytes
-rw-r--r--src/gfx/duel/card_headers.pngbin0 -> 803 bytes
-rw-r--r--src/gfx/duel/cgb_symbols.t7.pngbin0 -> 2960 bytes
-rw-r--r--src/gfx/duel/dmg_sgb_symbols.t7.pngbin0 -> 3107 bytes
-rw-r--r--src/gfx/duel/duel_graphics.t5.pngbin3283 -> 0 bytes
-rw-r--r--src/gfx/duel/hud.pngbin0 -> 1398 bytes
-rw-r--r--src/gfx/duel/other.t7.pngbin0 -> 1588 bytes
-rw-r--r--src/hram.asm2
-rw-r--r--src/macros/wram.asm2
-rw-r--r--src/text/text1.asm128
-rw-r--r--src/text/text10.asm128
-rw-r--r--src/text/text11.asm152
-rw-r--r--src/text/text12.asm190
-rw-r--r--src/text/text13.asm44
-rw-r--r--src/text/text2.asm174
-rw-r--r--src/text/text3.asm234
-rw-r--r--src/text/text4.asm120
-rw-r--r--src/text/text5.asm330
-rw-r--r--src/text/text6.asm160
-rw-r--r--src/text/text7.asm110
-rw-r--r--src/text/text8.asm60
-rw-r--r--src/text/text9.asm110
-rw-r--r--src/text/text_offsets.asm38
-rw-r--r--src/vram.asm8
-rw-r--r--src/wram.asm209
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
index f74b710..f74b710 100644
--- a/src/gfx/duel/0.png
+++ b/src/gfx/duel/anims/0.png
Binary files differ
diff --git a/src/gfx/duel/1.png b/src/gfx/duel/anims/1.png
index fbdd03d..fbdd03d 100644
--- a/src/gfx/duel/1.png
+++ b/src/gfx/duel/anims/1.png
Binary files differ
diff --git a/src/gfx/duel/10.png b/src/gfx/duel/anims/10.png
index abf7bf4..abf7bf4 100644
--- a/src/gfx/duel/10.png
+++ b/src/gfx/duel/anims/10.png
Binary files differ
diff --git a/src/gfx/duel/11.png b/src/gfx/duel/anims/11.png
index 73a3564..73a3564 100644
--- a/src/gfx/duel/11.png
+++ b/src/gfx/duel/anims/11.png
Binary files differ
diff --git a/src/gfx/duel/12.png b/src/gfx/duel/anims/12.png
index 55a7aff..55a7aff 100644
--- a/src/gfx/duel/12.png
+++ b/src/gfx/duel/anims/12.png
Binary files differ
diff --git a/src/gfx/duel/13.png b/src/gfx/duel/anims/13.png
index 56cfaae..56cfaae 100644
--- a/src/gfx/duel/13.png
+++ b/src/gfx/duel/anims/13.png
Binary files differ
diff --git a/src/gfx/duel/14.png b/src/gfx/duel/anims/14.png
index 4d7d038..4d7d038 100644
--- a/src/gfx/duel/14.png
+++ b/src/gfx/duel/anims/14.png
Binary files differ
diff --git a/src/gfx/duel/15.png b/src/gfx/duel/anims/15.png
index 7003067..7003067 100644
--- a/src/gfx/duel/15.png
+++ b/src/gfx/duel/anims/15.png
Binary files differ
diff --git a/src/gfx/duel/16.png b/src/gfx/duel/anims/16.png
index 8f15645..8f15645 100644
--- a/src/gfx/duel/16.png
+++ b/src/gfx/duel/anims/16.png
Binary files differ
diff --git a/src/gfx/duel/17.png b/src/gfx/duel/anims/17.png
index 87cfac5..87cfac5 100644
--- a/src/gfx/duel/17.png
+++ b/src/gfx/duel/anims/17.png
Binary files differ
diff --git a/src/gfx/duel/18.png b/src/gfx/duel/anims/18.png
index e1a10b1..e1a10b1 100644
--- a/src/gfx/duel/18.png
+++ b/src/gfx/duel/anims/18.png
Binary files differ
diff --git a/src/gfx/duel/19.png b/src/gfx/duel/anims/19.png
index b2642f4..b2642f4 100644
--- a/src/gfx/duel/19.png
+++ b/src/gfx/duel/anims/19.png
Binary files differ
diff --git a/src/gfx/duel/2.png b/src/gfx/duel/anims/2.png
index 6e10c3b..6e10c3b 100644
--- a/src/gfx/duel/2.png
+++ b/src/gfx/duel/anims/2.png
Binary files differ
diff --git a/src/gfx/duel/20.png b/src/gfx/duel/anims/20.png
index 0b7fdaa..0b7fdaa 100644
--- a/src/gfx/duel/20.png
+++ b/src/gfx/duel/anims/20.png
Binary files differ
diff --git a/src/gfx/duel/21.png b/src/gfx/duel/anims/21.png
index 8a6a885..8a6a885 100644
--- a/src/gfx/duel/21.png
+++ b/src/gfx/duel/anims/21.png
Binary files differ
diff --git a/src/gfx/duel/22.png b/src/gfx/duel/anims/22.png
index 79f7a26..79f7a26 100644
--- a/src/gfx/duel/22.png
+++ b/src/gfx/duel/anims/22.png
Binary files differ
diff --git a/src/gfx/duel/23.png b/src/gfx/duel/anims/23.png
index f04ef12..f04ef12 100644
--- a/src/gfx/duel/23.png
+++ b/src/gfx/duel/anims/23.png
Binary files differ
diff --git a/src/gfx/duel/24.png b/src/gfx/duel/anims/24.png
index bfc7f47..bfc7f47 100644
--- a/src/gfx/duel/24.png
+++ b/src/gfx/duel/anims/24.png
Binary files differ
diff --git a/src/gfx/duel/25.png b/src/gfx/duel/anims/25.png
index e71cec1..e71cec1 100644
--- a/src/gfx/duel/25.png
+++ b/src/gfx/duel/anims/25.png
Binary files differ
diff --git a/src/gfx/duel/26.png b/src/gfx/duel/anims/26.png
index f8ed483..f8ed483 100644
--- a/src/gfx/duel/26.png
+++ b/src/gfx/duel/anims/26.png
Binary files differ
diff --git a/src/gfx/duel/27.png b/src/gfx/duel/anims/27.png
index 4efe481..4efe481 100644
--- a/src/gfx/duel/27.png
+++ b/src/gfx/duel/anims/27.png
Binary files differ
diff --git a/src/gfx/duel/28.png b/src/gfx/duel/anims/28.png
index 5962e5b..5962e5b 100644
--- a/src/gfx/duel/28.png
+++ b/src/gfx/duel/anims/28.png
Binary files differ
diff --git a/src/gfx/duel/29.png b/src/gfx/duel/anims/29.png
index d73be15..d73be15 100644
--- a/src/gfx/duel/29.png
+++ b/src/gfx/duel/anims/29.png
Binary files differ
diff --git a/src/gfx/duel/3.png b/src/gfx/duel/anims/3.png
index a4cd613..a4cd613 100644
--- a/src/gfx/duel/3.png
+++ b/src/gfx/duel/anims/3.png
Binary files differ
diff --git a/src/gfx/duel/30.png b/src/gfx/duel/anims/30.png
index eb4f993..eb4f993 100644
--- a/src/gfx/duel/30.png
+++ b/src/gfx/duel/anims/30.png
Binary files differ
diff --git a/src/gfx/duel/31.png b/src/gfx/duel/anims/31.png
index 726a9de..726a9de 100644
--- a/src/gfx/duel/31.png
+++ b/src/gfx/duel/anims/31.png
Binary files differ
diff --git a/src/gfx/duel/32.png b/src/gfx/duel/anims/32.png
index 5696434..5696434 100644
--- a/src/gfx/duel/32.png
+++ b/src/gfx/duel/anims/32.png
Binary files differ
diff --git a/src/gfx/duel/33.png b/src/gfx/duel/anims/33.png
index cec3c5c..cec3c5c 100644
--- a/src/gfx/duel/33.png
+++ b/src/gfx/duel/anims/33.png
Binary files differ
diff --git a/src/gfx/duel/34.png b/src/gfx/duel/anims/34.png
index 3a23454..3a23454 100644
--- a/src/gfx/duel/34.png
+++ b/src/gfx/duel/anims/34.png
Binary files differ
diff --git a/src/gfx/duel/35.png b/src/gfx/duel/anims/35.png
index 88b9a8a..88b9a8a 100644
--- a/src/gfx/duel/35.png
+++ b/src/gfx/duel/anims/35.png
Binary files differ
diff --git a/src/gfx/duel/36.png b/src/gfx/duel/anims/36.png
index 75c6606..75c6606 100644
--- a/src/gfx/duel/36.png
+++ b/src/gfx/duel/anims/36.png
Binary files differ
diff --git a/src/gfx/duel/37.png b/src/gfx/duel/anims/37.png
index 124a4aa..124a4aa 100644
--- a/src/gfx/duel/37.png
+++ b/src/gfx/duel/anims/37.png
Binary files differ
diff --git a/src/gfx/duel/38.png b/src/gfx/duel/anims/38.png
index d13659f..d13659f 100644
--- a/src/gfx/duel/38.png
+++ b/src/gfx/duel/anims/38.png
Binary files differ
diff --git a/src/gfx/duel/39.png b/src/gfx/duel/anims/39.png
index 72a5047..72a5047 100644
--- a/src/gfx/duel/39.png
+++ b/src/gfx/duel/anims/39.png
Binary files differ
diff --git a/src/gfx/duel/4.png b/src/gfx/duel/anims/4.png
index bb53fa0..bb53fa0 100644
--- a/src/gfx/duel/4.png
+++ b/src/gfx/duel/anims/4.png
Binary files differ
diff --git a/src/gfx/duel/40.png b/src/gfx/duel/anims/40.png
index f5c374a..f5c374a 100644
--- a/src/gfx/duel/40.png
+++ b/src/gfx/duel/anims/40.png
Binary files differ
diff --git a/src/gfx/duel/41.png b/src/gfx/duel/anims/41.png
index fdd1218..fdd1218 100644
--- a/src/gfx/duel/41.png
+++ b/src/gfx/duel/anims/41.png
Binary files differ
diff --git a/src/gfx/duel/42.png b/src/gfx/duel/anims/42.png
index 099ca70..099ca70 100644
--- a/src/gfx/duel/42.png
+++ b/src/gfx/duel/anims/42.png
Binary files differ
diff --git a/src/gfx/duel/43.png b/src/gfx/duel/anims/43.png
index 216de05..216de05 100644
--- a/src/gfx/duel/43.png
+++ b/src/gfx/duel/anims/43.png
Binary files differ
diff --git a/src/gfx/duel/44.png b/src/gfx/duel/anims/44.png
index b3a043e..b3a043e 100644
--- a/src/gfx/duel/44.png
+++ b/src/gfx/duel/anims/44.png
Binary files differ
diff --git a/src/gfx/duel/45.png b/src/gfx/duel/anims/45.png
index b466614..b466614 100644
--- a/src/gfx/duel/45.png
+++ b/src/gfx/duel/anims/45.png
Binary files differ
diff --git a/src/gfx/duel/46.png b/src/gfx/duel/anims/46.png
index 9a01563..9a01563 100644
--- a/src/gfx/duel/46.png
+++ b/src/gfx/duel/anims/46.png
Binary files differ
diff --git a/src/gfx/duel/47.png b/src/gfx/duel/anims/47.png
index 9bf5047..9bf5047 100644
--- a/src/gfx/duel/47.png
+++ b/src/gfx/duel/anims/47.png
Binary files differ
diff --git a/src/gfx/duel/48.png b/src/gfx/duel/anims/48.png
index 100bb49..100bb49 100644
--- a/src/gfx/duel/48.png
+++ b/src/gfx/duel/anims/48.png
Binary files differ
diff --git a/src/gfx/duel/49.png b/src/gfx/duel/anims/49.png
index 07ba688..07ba688 100644
--- a/src/gfx/duel/49.png
+++ b/src/gfx/duel/anims/49.png
Binary files differ
diff --git a/src/gfx/duel/5.png b/src/gfx/duel/anims/5.png
index baf7475..baf7475 100644
--- a/src/gfx/duel/5.png
+++ b/src/gfx/duel/anims/5.png
Binary files differ
diff --git a/src/gfx/duel/50.png b/src/gfx/duel/anims/50.png
index b82049f..b82049f 100644
--- a/src/gfx/duel/50.png
+++ b/src/gfx/duel/anims/50.png
Binary files differ
diff --git a/src/gfx/duel/51.t10.png b/src/gfx/duel/anims/51.t10.png
index 98eb770..98eb770 100644
--- a/src/gfx/duel/51.t10.png
+++ b/src/gfx/duel/anims/51.t10.png
Binary files differ
diff --git a/src/gfx/duel/52.png b/src/gfx/duel/anims/52.png
index 420136f..420136f 100644
--- a/src/gfx/duel/52.png
+++ b/src/gfx/duel/anims/52.png
Binary files differ
diff --git a/src/gfx/duel/53.png b/src/gfx/duel/anims/53.png
index 10a21f5..10a21f5 100644
--- a/src/gfx/duel/53.png
+++ b/src/gfx/duel/anims/53.png
Binary files differ
diff --git a/src/gfx/duel/54.png b/src/gfx/duel/anims/54.png
index 7dbb527..7dbb527 100644
--- a/src/gfx/duel/54.png
+++ b/src/gfx/duel/anims/54.png
Binary files differ
diff --git a/src/gfx/duel/55.png b/src/gfx/duel/anims/55.png
index ebab414..ebab414 100644
--- a/src/gfx/duel/55.png
+++ b/src/gfx/duel/anims/55.png
Binary files differ
diff --git a/src/gfx/duel/56.png b/src/gfx/duel/anims/56.png
index dd82623..dd82623 100644
--- a/src/gfx/duel/56.png
+++ b/src/gfx/duel/anims/56.png
Binary files differ
diff --git a/src/gfx/duel/57.png b/src/gfx/duel/anims/57.png
index 7b97f92..7b97f92 100644
--- a/src/gfx/duel/57.png
+++ b/src/gfx/duel/anims/57.png
Binary files differ
diff --git a/src/gfx/duel/58.png b/src/gfx/duel/anims/58.png
index 8f8b22c..8f8b22c 100644
--- a/src/gfx/duel/58.png
+++ b/src/gfx/duel/anims/58.png
Binary files differ
diff --git a/src/gfx/duel/59.png b/src/gfx/duel/anims/59.png
index 16b7344..16b7344 100644
--- a/src/gfx/duel/59.png
+++ b/src/gfx/duel/anims/59.png
Binary files differ
diff --git a/src/gfx/duel/6.png b/src/gfx/duel/anims/6.png
index 80cc739..80cc739 100644
--- a/src/gfx/duel/6.png
+++ b/src/gfx/duel/anims/6.png
Binary files differ
diff --git a/src/gfx/duel/60.png b/src/gfx/duel/anims/60.png
index dc60679..dc60679 100644
--- a/src/gfx/duel/60.png
+++ b/src/gfx/duel/anims/60.png
Binary files differ
diff --git a/src/gfx/duel/61.png b/src/gfx/duel/anims/61.png
index de82420..de82420 100644
--- a/src/gfx/duel/61.png
+++ b/src/gfx/duel/anims/61.png
Binary files differ
diff --git a/src/gfx/duel/62.png b/src/gfx/duel/anims/62.png
index c40fc22..c40fc22 100644
--- a/src/gfx/duel/62.png
+++ b/src/gfx/duel/anims/62.png
Binary files differ
diff --git a/src/gfx/duel/63.png b/src/gfx/duel/anims/63.png
index 5ea882f..5ea882f 100644
--- a/src/gfx/duel/63.png
+++ b/src/gfx/duel/anims/63.png
Binary files differ
diff --git a/src/gfx/duel/64.png b/src/gfx/duel/anims/64.png
index 36310a4..36310a4 100644
--- a/src/gfx/duel/64.png
+++ b/src/gfx/duel/anims/64.png
Binary files differ
diff --git a/src/gfx/duel/65.png b/src/gfx/duel/anims/65.png
index 212a40d..212a40d 100644
--- a/src/gfx/duel/65.png
+++ b/src/gfx/duel/anims/65.png
Binary files differ
diff --git a/src/gfx/duel/66.png b/src/gfx/duel/anims/66.png
index 65bebfb..65bebfb 100644
--- a/src/gfx/duel/66.png
+++ b/src/gfx/duel/anims/66.png
Binary files differ
diff --git a/src/gfx/duel/7.png b/src/gfx/duel/anims/7.png
index c309ce9..c309ce9 100644
--- a/src/gfx/duel/7.png
+++ b/src/gfx/duel/anims/7.png
Binary files differ
diff --git a/src/gfx/duel/8.png b/src/gfx/duel/anims/8.png
index 479b251..479b251 100644
--- a/src/gfx/duel/8.png
+++ b/src/gfx/duel/anims/8.png
Binary files differ
diff --git a/src/gfx/duel/9.png b/src/gfx/duel/anims/9.png
index 3667ca8..3667ca8 100644
--- a/src/gfx/duel/9.png
+++ b/src/gfx/duel/anims/9.png
Binary files differ
diff --git a/src/gfx/duel/card_headers.png b/src/gfx/duel/card_headers.png
new file mode 100644
index 0000000..b788b91
--- /dev/null
+++ b/src/gfx/duel/card_headers.png
Binary files differ
diff --git a/src/gfx/duel/cgb_symbols.t7.png b/src/gfx/duel/cgb_symbols.t7.png
new file mode 100644
index 0000000..578867f
--- /dev/null
+++ b/src/gfx/duel/cgb_symbols.t7.png
Binary files differ
diff --git a/src/gfx/duel/dmg_sgb_symbols.t7.png b/src/gfx/duel/dmg_sgb_symbols.t7.png
new file mode 100644
index 0000000..10715db
--- /dev/null
+++ b/src/gfx/duel/dmg_sgb_symbols.t7.png
Binary files differ
diff --git a/src/gfx/duel/duel_graphics.t5.png b/src/gfx/duel/duel_graphics.t5.png
deleted file mode 100644
index e36c5fb..0000000
--- a/src/gfx/duel/duel_graphics.t5.png
+++ /dev/null
Binary files differ
diff --git a/src/gfx/duel/hud.png b/src/gfx/duel/hud.png
new file mode 100644
index 0000000..81afc3b
--- /dev/null
+++ b/src/gfx/duel/hud.png
Binary files differ
diff --git a/src/gfx/duel/other.t7.png b/src/gfx/duel/other.t7.png
new file mode 100644
index 0000000..796ecf7
--- /dev/null
+++ b/src/gfx/duel/other.t7.png
Binary files differ
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