pokered/engine/hidden_object_functions18.asm

199 lines
4.5 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
2016-06-12 00:24:04 +00:00
GymStatueText1:
2014-05-22 22:13:20 +00:00
TX_FAR _GymStatueText1
db "@"
2016-06-12 00:24:04 +00:00
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
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
2014-05-22 22:13:20 +00:00
db $FF
2016-06-12 00:24:04 +00:00
ViridianCityPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _ViridianCityPokecenterGuyText
db "@"
2016-06-12 00:24:04 +00:00
PewterCityPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _PewterCityPokecenterGuyText
db "@"
2016-06-12 00:24:04 +00:00
CeruleanCityPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _CeruleanPokecenterGuyText
db "@"
2016-06-12 00:24:04 +00:00
LavenderCityPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _LavenderPokecenterGuyText
db "@"
2016-06-12 00:24:04 +00:00
MtMoonPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _MtMoonPokecenterBenchGuyText
db "@"
2016-06-12 00:24:04 +00:00
RockTunnelPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _RockTunnelPokecenterGuyText
db "@"
2016-06-12 00:24:04 +00:00
UnusedBenchGuyText1:
2014-05-22 22:13:20 +00:00
TX_FAR _UnusedBenchGuyText1
db "@"
2016-06-12 00:24:04 +00:00
UnusedBenchGuyText2:
2014-05-22 22:13:20 +00:00
TX_FAR _UnusedBenchGuyText2
db "@"
2016-06-12 00:24:04 +00:00
UnusedBenchGuyText3:
2014-05-22 22:13:20 +00:00
TX_FAR _UnusedBenchGuyText3
db "@"
2016-06-12 00:24:04 +00:00
VermilionCityPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _VermilionPokecenterGuyText
db "@"
2016-06-12 00:24:04 +00:00
CeladonCityPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _CeladonCityPokecenterGuyText
db "@"
2016-06-12 00:24:04 +00:00
FuchsiaCityPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _FuchsiaCityPokecenterGuyText
db "@"
2016-06-12 00:24:04 +00:00
CinnabarIslandPokecenterBenchGuyText:
2014-05-22 22:13:20 +00:00
TX_FAR _CinnabarPokecenterGuyText
db "@"
2016-06-12 00:24:04 +00:00
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 "@"
2016-06-12 00:24:04 +00:00
CeladonCityHotelText:
2014-05-22 22:13:20 +00:00
TX_FAR _CeladonCityHotelText
db "@"
ret
2016-06-12 00:24:04 +00:00
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
2016-06-12 00:24:04 +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
2016-06-12 00:24:04 +00:00
PokemonCenterPCText:
TX_POKECENTER_PC