pokered/engine/hidden_object_functions18.asm

199 lines
4.3 KiB
NASM
Raw Normal View History

2016-06-12 00:24:04 +00:00
GymStatues:
; 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
2014-05-22 22:13:20 +00:00
; else ret
call EnableAutoTextBoxDrawing
ld a, [wSpriteStateData1 + 9]
cp SPRITE_FACING_UP
2014-05-22 22:13:20 +00:00
ret nz
ld hl, .BadgeFlags
2015-08-31 02:38:41 +00:00
ld a, [wCurMap]
2014-05-22 22:13:20 +00:00
ld b, a
.loop
2014-05-22 22:13:20 +00:00
ld a, [hli]
cp $ff
ret z
cp b
jr z, .match
2014-05-22 22:13:20 +00:00
inc hl
jr .loop
.match
2014-05-22 22:13:20 +00:00
ld b, [hl]
2015-07-26 02:26:54 +00:00
ld a, [wBeatGymFlags]
2014-05-22 22:13:20 +00:00
and b
cp b
tx_pre_id GymStatueText2
jr z, .haveBadge
tx_pre_id GymStatueText1
.haveBadge
2014-05-22 22:13:20 +00:00
jp PrintPredefTextID
2016-06-12 00:24:04 +00:00
.BadgeFlags:
2014-05-22 22:13:20 +00:00
db PEWTER_GYM, %00000001
db CERULEAN_GYM, %00000010
db VERMILION_GYM,%00000100
db CELADON_GYM, %00001000
db FUCHSIA_GYM, %00010000
db SAFFRON_GYM, %00100000
db CINNABAR_GYM, %01000000
db VIRIDIAN_GYM, %10000000
db $ff
GymStatueText1::
2014-05-22 22:13:20 +00:00
TX_FAR _GymStatueText1
db "@"
GymStatueText2::
2014-05-22 22:13:20 +00:00
TX_FAR _GymStatueText2
db "@"
2016-06-12 00:24:04 +00:00
PrintBenchGuyText:
2014-05-22 22:13:20 +00:00
call EnableAutoTextBoxDrawing
ld hl, BenchGuyTextPointers
2015-08-31 02:38:41 +00:00
ld a, [wCurMap]
2014-05-22 22:13:20 +00:00
ld b, a
.loop
2014-05-22 22:13:20 +00:00
ld a, [hli]
cp $ff
ret z
cp b
jr z, .match
2014-05-22 22:13:20 +00:00
inc hl
inc hl
jr .loop
.match
2014-05-22 22:13:20 +00:00
ld a, [hli]
ld b, a
ld a, [wSpriteStateData1 + 9]
2014-05-22 22:13:20 +00:00
cp b
jr nz, .loop ; player isn't facing left at the bench guy
2014-05-22 22:13:20 +00:00
ld a, [hl]
jp PrintPredefTextID
; format: db map id, player sprite facing direction, text id of PredefTextIDPointerTable
2016-06-12 00:24:04 +00:00
BenchGuyTextPointers:
db VIRIDIAN_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre ViridianCityPokecenterBenchGuyText
db PEWTER_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre PewterCityPokecenterBenchGuyText
db CERULEAN_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre CeruleanCityPokecenterBenchGuyText
db LAVENDER_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre LavenderCityPokecenterBenchGuyText
db VERMILION_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre VermilionCityPokecenterBenchGuyText
db CELADON_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre CeladonCityPokecenterBenchGuyText
db CELADON_HOTEL, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre CeladonCityHotelText
db FUCHSIA_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre FuchsiaCityPokecenterBenchGuyText
db CINNABAR_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre CinnabarIslandPokecenterBenchGuyText
db SAFFRON_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre SaffronCityPokecenterBenchGuyText
db MT_MOON_POKECENTER, SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre MtMoonPokecenterBenchGuyText
db ROCK_TUNNEL_POKECENTER,SPRITE_FACING_LEFT
2016-06-12 07:51:59 +00:00
db_tx_pre RockTunnelPokecenterBenchGuyText
2014-05-22 22:13:20 +00:00
db $FF
ViridianCityPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _ViridianCityPokecenterGuyText
db "@"
PewterCityPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _PewterCityPokecenterGuyText
db "@"
CeruleanCityPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _CeruleanPokecenterGuyText
db "@"
LavenderCityPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _LavenderPokecenterGuyText
db "@"
MtMoonPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _MtMoonPokecenterBenchGuyText
db "@"
RockTunnelPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _RockTunnelPokecenterGuyText
db "@"
UnusedBenchGuyText1::
2014-05-22 22:13:20 +00:00
TX_FAR _UnusedBenchGuyText1
db "@"
UnusedBenchGuyText2::
2014-05-22 22:13:20 +00:00
TX_FAR _UnusedBenchGuyText2
db "@"
UnusedBenchGuyText3::
2014-05-22 22:13:20 +00:00
TX_FAR _UnusedBenchGuyText3
db "@"
VermilionCityPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _VermilionPokecenterGuyText
db "@"
CeladonCityPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _CeladonCityPokecenterGuyText
db "@"
FuchsiaCityPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _FuchsiaCityPokecenterGuyText
db "@"
CinnabarIslandPokecenterBenchGuyText::
2014-05-22 22:13:20 +00:00
TX_FAR _CinnabarPokecenterGuyText
db "@"
SaffronCityPokecenterBenchGuyText::
2015-07-03 19:58:50 +00:00
TX_ASM
2015-07-21 17:36:03 +00:00
CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI
2014-05-22 22:13:20 +00:00
ld hl, SaffronCityPokecenterBenchGuyText2
jr nz, .asm_624f2
2014-05-22 22:13:20 +00:00
ld hl, SaffronCityPokecenterBenchGuyText1
.asm_624f2
call PrintText
jp TextScriptEnd
2016-06-12 00:24:04 +00:00
SaffronCityPokecenterBenchGuyText1:
2014-05-22 22:13:20 +00:00
TX_FAR _SaffronCityPokecenterGuyText1
db "@"
2016-06-12 00:24:04 +00:00
SaffronCityPokecenterBenchGuyText2:
2014-05-22 22:13:20 +00:00
TX_FAR _SaffronCityPokecenterGuyText2
db "@"
CeladonCityHotelText::
2014-05-22 22:13:20 +00:00
TX_FAR _CeladonCityHotelText
db "@"
ret
UnusedPredefText::
2014-05-22 22:13:20 +00:00
db "@"
2016-06-12 00:24:04 +00:00
PrintBookcaseText:
2014-05-22 22:13:20 +00:00
call EnableAutoTextBoxDrawing
tx_pre_jump BookcaseText
2014-05-22 22:13:20 +00:00
BookcaseText::
2014-05-22 22:13:20 +00:00
TX_FAR _BookcaseText
db "@"
2016-06-12 00:24:04 +00:00
OpenPokemonCenterPC:
ld a, [wSpriteStateData1 + 9]
cp SPRITE_FACING_UP ; check to see if player is facing up
2014-05-22 22:13:20 +00:00
ret nz
call EnableAutoTextBoxDrawing
ld a, $1
2014-09-13 07:50:56 +00:00
ld [wAutoTextBoxDrawingControl], a
tx_pre_jump PokemonCenterPCText
2014-05-22 22:13:20 +00:00
PokemonCenterPCText::
TX_POKECENTER_PC