Start using text predef macros

also sprite direction constants
This commit is contained in:
dannye 2015-07-04 00:44:12 -05:00
parent bc6f0bc08a
commit f702fc7840
36 changed files with 225 additions and 219 deletions

View file

@ -27,13 +27,13 @@ StartSlotMachine: ; 37e2d (d:7e2d)
call PromptUserToPlaySlots
ret
.printOutOfOrder
ld a, $28
tx_pre_id GameCornerOutOfOrderText
jr .printText
.printOutToLunch
ld a, $29
tx_pre_id GameCornerOutToLunchText
jr .printText
.printSomeonesKeys
ld a, $2a
tx_pre_id GameCornerSomeonesKeysText
.printText
push af
call EnableAutoTextBoxDrawing

View file

@ -6,13 +6,13 @@ AbleToPlaySlotsCheck ; 2ff09 (b:7f09)
predef IsItemInBag_ ; IsItemInBag_
ld a, b
and a
ld b, $33 ; GameCornerCoinCaseText
ld b, (GameCornerCoinCaseText_id - TextPredefs) / 2 + 1
jr z, .printCoinCaseRequired
ld hl, wPlayerCoins
ld a, [hli]
or [hl]
jr nz, .done ; able to play
ld b, $32 ; GameCornerNoCoinsText
ld b, (GameCornerNoCoinsText_id - TextPredefs) / 2 + 1
.printCoinCaseRequired
call EnableAutoTextBoxDrawing
ld a, b

View file

@ -66,8 +66,7 @@ ViridianSchoolNotebookText4: ; 52a03 (14:6a03)
PrintFightingDojoText2: ; 52a08 (14:6a08)
call EnableAutoTextBoxDrawing
ld a, $37
jp PrintPredefTextID
tx_pre_jump FightingDojoText_52a10
FightingDojoText_52a10: ; 52a10 (14:6a10)
TX_FAR _FightingDojoText_52a10
@ -75,8 +74,7 @@ FightingDojoText_52a10: ; 52a10 (14:6a10)
PrintFightingDojoText3: ; 52a15 (14:6a15)
call EnableAutoTextBoxDrawing
ld a, $38
jp PrintPredefTextID
tx_pre_jump FightingDojoText_52a1d
FightingDojoText_52a1d: ; 52a1d (14:6a1d)
TX_FAR _FightingDojoText_52a1d
@ -84,8 +82,7 @@ FightingDojoText_52a1d: ; 52a1d (14:6a1d)
PrintFightingDojoText: ; 52a22 (14:6a22)
call EnableAutoTextBoxDrawing
ld a, $36
jp PrintPredefTextID
tx_pre_jump FightingDojoText
FightingDojoText: ; 52a2a (14:6a2a)
TX_FAR _FightingDojoText
@ -93,11 +90,10 @@ FightingDojoText: ; 52a2a (14:6a2a)
PrintIndigoPlateauHQText: ; 52a2f (14:6a2f)
ld a, [wSpriteStateData1 + 9]
cp $4
cp SPRITE_FACING_UP
ret nz
call EnableAutoTextBoxDrawing
ld a, $27
jp PrintPredefTextID
tx_pre_jump IndigoPlateauHQText
IndigoPlateauHQText: ; 52a3d (14:6a3d)
TX_FAR _IndigoPlateauHQText

View file

@ -1,7 +1,6 @@
PrintRedsNESText: ; 5db79 (17:5b79)
call EnableAutoTextBoxDrawing
ld a, $4 ; RedBedroomSNESText
jp PrintPredefTextID
tx_pre_jump RedBedroomSNESText
RedBedroomSNESText: ; 5db81 (17:5b81)
TX_FAR _RedBedroomSNESText
@ -9,19 +8,17 @@ RedBedroomSNESText: ; 5db81 (17:5b81)
OpenRedsPC: ; 5db86 (17:5b86)
call EnableAutoTextBoxDrawing
ld a, $3
jp PrintPredefTextID
tx_pre_jump RedBedroomPCText
RedBedroomPC: ; 5db8e (17:5b8e)
RedBedroomPCText: ; 5db8e (17:5b8e)
db $fc ; FuncTX_ItemStoragePC
Route15GateLeftBinoculars: ; 5db8f (17:5b8f)
ld a, [wSpriteStateData1 + 9]
cp $4 ; i
cp SPRITE_FACING_UP
ret nz
call EnableAutoTextBoxDrawing
ld a, $a ; text id Route15UpstairsBinocularsText
call PrintPredefTextID
tx_pre Route15UpstairsBinocularsText
ld a, ARTICUNO
ld [wcf91], a
call PlayCry
@ -36,8 +33,7 @@ AerodactylFossil: ; 5dbad (17:5bad)
ld [wcf91], a
call DisplayMonFrontSpriteInBox
call EnableAutoTextBoxDrawing
ld a, $9
call PrintPredefTextID
tx_pre AerodactylFossilText
ret
AerodactylFossilText: ; 5dbbe (17:5bbe)
@ -49,8 +45,7 @@ KabutopsFossil: ; 5bdc3 (17:5bc3)
ld [wcf91], a
call DisplayMonFrontSpriteInBox
call EnableAutoTextBoxDrawing
ld a, $b
call PrintPredefTextID
tx_pre KabutopsFossilText
ret
KabutopsFossilText: ; 5dbd4 (17:5bd4)
@ -307,8 +302,7 @@ ViridianBlackboardFrozenText: ; 5ddea (17:5dea)
PrintTrashText: ; 5ddef (17:5def)
call EnableAutoTextBoxDrawing
ld a, $26
jp PrintPredefTextID
tx_pre_jump VermilionGymTrashText
VermilionGymTrashText: ; 5ddf7 (17:5df7)
TX_FAR _VermilionGymTrashText
@ -324,8 +318,7 @@ GymTrashScript: ; 5ddfc (17:5dfc)
bit 0, a
jr z, .ok
ld a, $26 ; DisplayTextID $26 = VermilionGymTrashText (nothing in the trash)
jp PrintPredefTextID
tx_pre_jump VermilionGymTrashText
.ok
bit 1, a
@ -337,7 +330,7 @@ GymTrashScript: ; 5ddfc (17:5dfc)
cp b
jr z, .openFirstLock
ld a, $26 ; DisplayTextID $26 = VermilionGymTrashText (nothing in the trash)
tx_pre_id VermilionGymTrashText
jr .done
.openFirstLock
@ -375,7 +368,7 @@ GymTrashScript: ; 5ddfc (17:5dfc)
and $f
ld [wd744], a
ld a, $3b ; DisplayTextID $3b = VermilionGymTrashSuccesText1 (first lock opened!)
tx_pre_id VermilionGymTrashSuccesText1
jr .done
.trySecondLock
@ -393,7 +386,7 @@ GymTrashScript: ; 5ddfc (17:5dfc)
and $e
ld [wd743], a
ld a, $3e ; DisplayTextID $3e = VermilionGymTrashFailText (locks reset!)
tx_pre_id VermilionGymTrashFailText
jr .done
.openSecondLock
@ -403,7 +396,7 @@ GymTrashScript: ; 5ddfc (17:5dfc)
ld hl, wd126
set 6, [hl]
ld a, $3d ; DisplayTextID $3d = VermilionGymTrashSuccesText3 (2nd lock opened!)
tx_pre_id VermilionGymTrashSuccesText3
.done
jp PrintPredefTextID

View file

@ -1,31 +1,31 @@
GymStatues: ; 62419 (18:6419)
; if in a gym and have the corresponding badge, a = $D and jp PrintPredefTextID
; if in a gym and dont have the corresponding badge, a = $C and jp PrintPredefTextID
; if in a gym and have the corresponding badge, a = GymStatueText2_id and jp PrintPredefTextID
; if in a gym and dont have the corresponding badge, a = GymStatueText1_id and jp PrintPredefTextID
; else ret
call EnableAutoTextBoxDrawing
ld a, [wSpriteStateData1 + 9]
cp $4
cp SPRITE_FACING_UP
ret nz
ld hl, .BadgeFlags
ld a, [W_CURMAP]
ld b, a
.asm_62429
.loop
ld a, [hli]
cp $ff
ret z
cp b
jr z, .asm_62433
jr z, .match
inc hl
jr .asm_62429
.asm_62433
jr .loop
.match
ld b, [hl]
ld a, [wd72a]
and b
cp b
ld a, $d
jr z, .asm_6243f
ld a, $c
.asm_6243f
tx_pre_id GymStatueText2
jr z, .haveBadge
tx_pre_id GymStatueText1
.haveBadge
jp PrintPredefTextID
.BadgeFlags: ; 62442 (18:6442)
@ -49,41 +49,53 @@ GymStatueText2: ; 62458 (18:6458)
PrintBenchGuyText: ; 6245d (18:645d)
call EnableAutoTextBoxDrawing
ld hl, PokeCenterMapIDList
ld hl, BenchGuyTextPointers
ld a, [W_CURMAP]
ld b, a
.asm_62467
.loop
ld a, [hli]
cp $ff
ret z
cp b
jr z, .asm_62472
jr z, .match
inc hl
inc hl
jr .asm_62467
.asm_62472
jr .loop
.match
ld a, [hli]
ld b, a
ld a, [wSpriteStateData1 + 9]
cp b
jr nz, .asm_62467
jr nz, .loop ; player isn't facing left at the bench guy
ld a, [hl]
jp PrintPredefTextID
; format: db map id, 08, text id of PredefTextIDPointerTable
PokeCenterMapIDList: ; 6247e (18:647e)
db VIRIDIAN_POKECENTER,$08,$0F
db PEWTER_POKECENTER,$08,$10
db CERULEAN_POKECENTER,$08,$11
db LAVENDER_POKECENTER,$08,$12
db VERMILION_POKECENTER,$08,$13
db CELADON_POKECENTER,$08,$14
db CELADON_HOTEL,$08,$15
db FUCHSIA_POKECENTER,$08,$16
db CINNABAR_POKECENTER,$08,$17
db SAFFRON_POKECENTER,$08,$18
db MT_MOON_POKECENTER,$08,$19
db ROCK_TUNNEL_POKECENTER,$08,$1A
; format: db map id, player sprite facing direction, text id of PredefTextIDPointerTable
BenchGuyTextPointers: ; 6247e (18:647e)
db VIRIDIAN_POKECENTER, SPRITE_FACING_LEFT
db (ViridianCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db PEWTER_POKECENTER, SPRITE_FACING_LEFT
db (PewterCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db CERULEAN_POKECENTER, SPRITE_FACING_LEFT
db (CeruleanCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db LAVENDER_POKECENTER, SPRITE_FACING_LEFT
db (LavenderCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db VERMILION_POKECENTER, SPRITE_FACING_LEFT
db (VermilionCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db CELADON_POKECENTER, SPRITE_FACING_LEFT
db (CeladonCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db CELADON_HOTEL, SPRITE_FACING_LEFT
db (CeladonCityHotelText_id - TextPredefs) / 2 + 1
db FUCHSIA_POKECENTER, SPRITE_FACING_LEFT
db (FuchsiaCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db CINNABAR_POKECENTER, SPRITE_FACING_LEFT
db (CinnabarIslandPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db SAFFRON_POKECENTER, SPRITE_FACING_LEFT
db (SaffronCityPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db MT_MOON_POKECENTER, SPRITE_FACING_LEFT
db (MtMoonPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db ROCK_TUNNEL_POKECENTER,SPRITE_FACING_LEFT
db (RockTunnelPokecenterBenchGuyText_id - TextPredefs) / 2 + 1
db $FF
ViridianCityPokecenterBenchGuyText: ; 624a3 (18:64a3)
@ -163,13 +175,12 @@ CeladonCityHotelText: ; 62502 (18:6502)
ret
TerminatorText_62508: ; 62508 (18:6508)
UnusedPredefText: ; 62508 (18:6508)
db "@"
PrintBookcaseText: ; 6509 (18:6509)
call EnableAutoTextBoxDrawing
ld a, $e ; BookcaseText
jp PrintPredefTextID
tx_pre_jump BookcaseText
BookcaseText: ; 62511 (18:6511)
TX_FAR _BookcaseText
@ -177,13 +188,12 @@ BookcaseText: ; 62511 (18:6511)
OpenPokemonCenterPC: ; 62516 (18:6516)
ld a, [wSpriteStateData1 + 9]
cp $4 ; check to see if player is facing up
cp SPRITE_FACING_UP ; check to see if player is facing up
ret nz
call EnableAutoTextBoxDrawing
ld a, $1
ld [wAutoTextBoxDrawingControl], a
ld a, $1f ; PredefText1f
jp PrintPredefTextID
tx_pre_jump PokemonCenterPCText
PredefText1f: ; 62529 (18:6529)
PokemonCenterPCText: ; 62529 (18:6529)
db $F9 ; FuncTX_PokemonCenterPC

View file

@ -40,23 +40,40 @@ PrintBookshelfText: ; fb50 (3:7b50)
; format: db tileset id, bookshelf tile id, text id
BookshelfTileIDs: ; fb8b (3:7b8b)
db PLATEAU, $30, $3A
db HOUSE, $3D, $3F
db HOUSE, $1E, $40
db MANSION, $32, $40
db REDS_HOUSE_1, $32, $40
db LAB, $28, $40
db LOBBY, $16, $41
db GYM, $1D, $40
db DOJO, $1D, $40
db GATE, $22, $40
db MART, $54, $42
db MART, $55, $42
db POKECENTER, $54, $42
db POKECENTER, $55, $42
db LOBBY, $50, $42
db LOBBY, $52, $42
db SHIP, $36, $40
db PLATEAU, $30
db (IndigoPlateauStatues_id - TextPredefs) / 2 + 1
db HOUSE, $3D
db (TownMapText_id - TextPredefs) / 2 + 1
db HOUSE, $1E
db (BookOrSculptureText_id - TextPredefs) / 2 + 1
db MANSION, $32
db (BookOrSculptureText_id - TextPredefs) / 2 + 1
db REDS_HOUSE_1, $32
db (BookOrSculptureText_id - TextPredefs) / 2 + 1
db LAB, $28
db (BookOrSculptureText_id - TextPredefs) / 2 + 1
db LOBBY, $16
db (ElevatorText_id - TextPredefs) / 2 + 1
db GYM, $1D
db (BookOrSculptureText_id - TextPredefs) / 2 + 1
db DOJO, $1D
db (BookOrSculptureText_id - TextPredefs) / 2 + 1
db GATE, $22
db (BookOrSculptureText_id - TextPredefs) / 2 + 1
db MART, $54
db (PokemonStuffText_id - TextPredefs) / 2 + 1
db MART, $55
db (PokemonStuffText_id - TextPredefs) / 2 + 1
db POKECENTER, $54
db (PokemonStuffText_id - TextPredefs) / 2 + 1
db POKECENTER, $55
db (PokemonStuffText_id - TextPredefs) / 2 + 1
db LOBBY, $50
db (PokemonStuffText_id - TextPredefs) / 2 + 1
db LOBBY, $52
db (PokemonStuffText_id - TextPredefs) / 2 + 1
db SHIP, $36
db (BookOrSculptureText_id - TextPredefs) / 2 + 1
db $FF
IndigoPlateauStatues: ; fbbf (3:7bbf)

View file

@ -1,7 +1,6 @@
PrintNewBikeText: ; 1e94b (7:694b)
call EnableAutoTextBoxDrawing
ld a, $39
jp PrintPredefTextID
tx_pre_jump NewBicycleText
NewBicycleText: ; 1e953 (7:6953)
TX_FAR _NewBicycleText
@ -9,8 +8,7 @@ NewBicycleText: ; 1e953 (7:6953)
DisplayOakLabLeftPoster: ; 1e958 (7:6958)
call EnableAutoTextBoxDrawing
ld a, $05 ; PushStartText
jp PrintPredefTextID
tx_pre_jump PushStartText
PushStartText: ; 1e960 (7:6960)
TX_FAR _PushStartText
@ -23,10 +21,10 @@ DisplayOakLabRightPoster: ; 1e965 (7:6965)
call CountSetBits
ld a, [wd11e]
cp $2
ld a, $6 ; SaveOptionText
jr c, .asm_1e97b
ld a, $7 ; StrengthsAndWeaknessesText
.asm_1e97b
tx_pre_id SaveOptionText
jr c, .ownThreeOrMoreMon
tx_pre_id StrengthsAndWeaknessesText
.ownThreeOrMoreMon
jp PrintPredefTextID
SaveOptionText: ; 1e97e (7:697e)
@ -120,11 +118,10 @@ GameOverText: ; 1ea12 (7:6a12)
PrintCinnabarQuiz: ; 1ea17 (7:6a17)
ld a, [wSpriteStateData1 + 9]
cp $4
cp SPRITE_FACING_UP
ret nz
call EnableAutoTextBoxDrawing
ld a, $31
jp PrintPredefTextID
tx_pre_jump CinnabarGymQuiz
CinnabarGymQuiz: ; 1ea25 (7:6a25)
TX_ASM
@ -309,8 +306,7 @@ CinnabarGymGateCoords: ; 1eb48 (7:6b48)
PrintMagazinesText: ; 1eb60 (7:6b60)
call EnableAutoTextBoxDrawing
ld a, $30
call PrintPredefTextID
tx_pre MagazinesText
ret
MagazinesText: ; 1eb69 (7:6b69)
@ -320,7 +316,7 @@ MagazinesText: ; 1eb69 (7:6b69)
BillsHousePC: ; 1eb6e (7:6b6e)
call EnableAutoTextBoxDrawing
ld a, [wSpriteStateData1 + 9]
cp $4
cp SPRITE_FACING_UP
ret nz
ld a, [wd7f2]
bit 7, a
@ -330,13 +326,11 @@ BillsHousePC: ; 1eb6e (7:6b6e)
bit 6, a
jr nz, .asm_1eb8b
.asm_1eb86
ld a, $2d
jp PrintPredefTextID
tx_pre_jump BillsHouseMonitorText
.asm_1eb8b
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld a, $2e
call PrintPredefTextID
tx_pre BillsHouseInitiatedText
ld c, 32
call DelayFrames
ld a, (SFX_02_3c - SFX_Headers_02) / 3
@ -364,8 +358,7 @@ BillsHousePC: ; 1eb6e (7:6b6e)
.asm_1ebd2
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld a, $2f
call PrintPredefTextID
tx_pre BillsHousePokemonList
ret
BillsHouseMonitorText: ; 1ebdd (7:6bdd)
@ -459,11 +452,10 @@ BillsHousePokemonListText2: ; 1ecaa (7:6caa)
DisplayOakLabEmailText: ; 1ecaf (7:6caf)
ld a, [wSpriteStateData1 + 9]
cp $4
cp SPRITE_FACING_UP
ret nz
call EnableAutoTextBoxDrawing
ld a, $8 ; OakLabEmailText
jp PrintPredefTextID
tx_pre_jump OakLabEmailText
OakLabEmailText: ; 1ecbd (7:6cbd)
TX_FAR _OakLabEmailText

View file

@ -523,8 +523,7 @@ CableClubLeftGameboy:: ; 5824 (8:5825)
.asm_2183a
ld [wLinkState], a
call EnableAutoTextBoxDrawing
ld a, $22 ; JustAMomentText
jp PrintPredefTextID
tx_pre_jump JustAMomentText
CableClubRightGameboy:: ; 5845 (8:5845)
ld a, [hSerialConnectionStatus]
@ -541,8 +540,7 @@ CableClubRightGameboy:: ; 5845 (8:5845)
.asm_2185a
ld [wLinkState], a
call EnableAutoTextBoxDrawing
ld a, $22 ; JustAMomentText
jp PrintPredefTextID
tx_pre_jump JustAMomentText
JustAMomentText:: ; 21865 (8:5865)
TX_FAR _JustAMomentText
@ -552,9 +550,8 @@ JustAMomentText:: ; 21865 (8:5865)
cp SPRITE_FACING_UP
ret nz
call EnableAutoTextBoxDrawing
ld a, $23
jp PrintPredefTextID
tx_pre_jump OpenBillsPCText
PredefText23:: ; 21878 (8:5878)
OpenBillsPCText:: ; 21878 (8:5878)
db $FD ; FuncTX_BillsPC

View file

@ -27,7 +27,7 @@ PrintCardKeyText: ; 52673 (14:6673)
jr z, .noCardKey
call GetCoordsInFrontOfPlayer
push de
ld a, $1
tx_pre_id CardKeySuccessText
ld [H_DOWNARROWBLINKCNT2], a
call PrintPredefTextID
pop de
@ -54,7 +54,7 @@ PrintCardKeyText: ; 52673 (14:6673)
ld a, (SFX_1f_57 - SFX_Headers_1f) / 3
jp PlaySound
.noCardKey
ld a, $2
tx_pre_id CardKeyFailText
ld [H_DOWNARROWBLINKCNT2], a
jp PrintPredefTextID

View file

@ -185,26 +185,26 @@ Func_f09f: ; f09f (3:709f)
add hl, bc
ld a, [wSpriteStateData1 + 9]
and a
jr z, .asm_f0c7
cp $4
jr z, .asm_f0cf
cp $8
jr z, .asm_f0d7
jr z, .down
cp SPRITE_FACING_UP
jr z, .up
cp SPRITE_FACING_LEFT
jr z, .left
ld a, [W_XBLOCKCOORD]
and a
jr z, .asm_f0e0
jr .asm_f0ec
.asm_f0c7
.down
ld a, [W_YBLOCKCOORD]
and a
jr z, .asm_f0e0
jr .asm_f0df
.asm_f0cf
.up
ld a, [W_YBLOCKCOORD]
and a
jr z, .asm_f0e1
jr .asm_f0e0
.asm_f0d7
.left
ld a, [W_XBLOCKCOORD]
and a
jr z, .asm_f0e6

View file

@ -16,8 +16,7 @@ HiddenItems: ; 76688 (1d:6688)
ld a, [wWhichTrade] ; item ID
ld [wd11e], a
call GetItemName
ld a, $24
jp PrintPredefTextID
tx_pre_jump FoundHiddenItemText
INCLUDE "data/hidden_item_coords.asm"
@ -112,10 +111,10 @@ HiddenCoins: ; 76799 (1d:6799)
ld a, [wPlayerCoins + 1]
cp $99
jr nz, .RoomInCoinCase
ld a, $2c
tx_pre_id DroppedHiddenCoinsText
jr .done
.RoomInCoinCase
ld a, $2b
tx_pre_id FoundHiddenCoinsText
.done
jp PrintPredefTextID

View file

@ -27,34 +27,34 @@ UpdatePlayerSprite: ; 4e31 (1:4e31)
jr nz, .asm_4e90
ld a, [wd528]
bit 2, a
jr z, .asm_4e65
xor a
jr .asm_4e86
.asm_4e65
jr z, .notDown
xor a ; ld a, SPRITE_FACING_DOWN
jr .done
.notDown
bit 3, a
jr z, .asm_4e6d
ld a, $4
jr .asm_4e86
.asm_4e6d
jr z, .notUp
ld a, SPRITE_FACING_UP
jr .done
.notUp
bit 1, a
jr z, .asm_4e75
ld a, $8
jr .asm_4e86
.asm_4e75
jr z, .notLeft
ld a, SPRITE_FACING_LEFT
jr .done
.notLeft
bit 0, a
jr z, .asm_4e7d
ld a, $c
jr .asm_4e86
.asm_4e7d
jr z, .notRight
ld a, SPRITE_FACING_RIGHT
jr .done
.notRight
xor a
ld [wSpriteStateData1 + 7], a
ld [wSpriteStateData1 + 8], a
jr .asm_4eab
.asm_4e86
.done
ld [wSpriteStateData1 + 9], a
ld a, [wFontLoaded]
bit 0, a
jr nz, .asm_4e7d
jr nz, .notRight
.asm_4e90
ld a, [wd736]
bit 7, a