mirror of
https://github.com/pret/pokered.git
synced 2024-10-23 06:58:24 +00:00
70dde9d96b
fix trainer header numbering
228 lines
4.2 KiB
NASM
Executable file
228 lines
4.2 KiB
NASM
Executable file
PewterGymScript:
|
|
ld hl, wCurrentMapScriptFlags
|
|
bit 6, [hl]
|
|
res 6, [hl]
|
|
call nz, PewterGymScript_5c3a4
|
|
call EnableAutoTextBoxDrawing
|
|
ld hl, PewterGymTrainerHeader0
|
|
ld de, PewterGymScriptPointers
|
|
ld a, [wPewterGymCurScript]
|
|
call ExecuteCurMapScriptInTable
|
|
ld [wPewterGymCurScript], a
|
|
ret
|
|
|
|
PewterGymScript_5c3a4:
|
|
ld hl, Gym1CityName
|
|
ld de, Gym1LeaderName
|
|
jp LoadGymLeaderAndCityName
|
|
|
|
Gym1CityName:
|
|
db "PEWTER CITY@"
|
|
|
|
Gym1LeaderName:
|
|
db "BROCK@"
|
|
|
|
PewterGymScript_5c3bf:
|
|
xor a
|
|
ld [wJoyIgnore], a
|
|
ld [wPewterGymCurScript], a
|
|
ld [wCurMapScript], a
|
|
ret
|
|
|
|
PewterGymScriptPointers:
|
|
dw CheckFightingMapTrainers
|
|
dw DisplayEnemyTrainerTextAndStartBattle
|
|
dw EndTrainerBattle
|
|
dw PewterGymScript3
|
|
|
|
PewterGymScript3:
|
|
ld a, [wIsInBattle]
|
|
cp $ff
|
|
jp z, PewterGymScript_5c3bf
|
|
ld a, $f0
|
|
ld [wJoyIgnore], a
|
|
|
|
PewterGymScript_5c3df:
|
|
ld a, $4
|
|
ld [hSpriteIndexOrTextID], a
|
|
call DisplayTextID
|
|
SetEvent EVENT_BEAT_BROCK
|
|
lb bc, TM_34, 1
|
|
call GiveItem
|
|
jr nc, .BagFull
|
|
ld a, $5
|
|
ld [hSpriteIndexOrTextID], a
|
|
call DisplayTextID
|
|
SetEvent EVENT_GOT_TM34
|
|
jr .asm_5c408
|
|
.BagFull
|
|
ld a, $6
|
|
ld [hSpriteIndexOrTextID], a
|
|
call DisplayTextID
|
|
.asm_5c408
|
|
ld hl, wObtainedBadges
|
|
set 0, [hl]
|
|
ld hl, wBeatGymFlags
|
|
set 0, [hl]
|
|
|
|
ld a, HS_GYM_GUY
|
|
ld [wMissableObjectIndex], a
|
|
predef HideObject
|
|
ld a, HS_ROUTE_22_RIVAL_1
|
|
ld [wMissableObjectIndex], a
|
|
predef HideObject
|
|
|
|
ResetEvents EVENT_1ST_ROUTE22_RIVAL_BATTLE, EVENT_ROUTE22_RIVAL_WANTS_BATTLE
|
|
|
|
; deactivate gym trainers
|
|
SetEvent EVENT_BEAT_PEWTER_GYM_TRAINER_0
|
|
|
|
jp PewterGymScript_5c3bf
|
|
|
|
PewterGymTextPointers:
|
|
dw PewterGymText1
|
|
dw PewterGymText2
|
|
dw PewterGymText3
|
|
dw PewterGymText4
|
|
dw PewterGymText5
|
|
dw PewterGymText6
|
|
|
|
PewterGymTrainerHeader0:
|
|
dbEventFlagBit EVENT_BEAT_PEWTER_GYM_TRAINER_0
|
|
db ($5 << 4) ; trainer's view range
|
|
dwEventFlagAddress EVENT_BEAT_PEWTER_GYM_TRAINER_0
|
|
dw PewterGymBattleText1 ; TextBeforeBattle
|
|
dw PewterGymAfterBattleText1 ; TextAfterBattle
|
|
dw PewterGymEndBattleText1 ; TextEndBattle
|
|
dw PewterGymEndBattleText1 ; TextEndBattle
|
|
|
|
db $ff
|
|
|
|
PewterGymText1:
|
|
TX_ASM
|
|
CheckEvent EVENT_BEAT_BROCK
|
|
jr z, .asm_5c46a
|
|
CheckEventReuseA EVENT_GOT_TM34
|
|
jr nz, .asm_5c462
|
|
call z, PewterGymScript_5c3df
|
|
call DisableWaitingAfterTextDisplay
|
|
jr .asm_5c49b
|
|
.asm_5c462
|
|
ld hl, PewterGymText_5c4a3
|
|
call PrintText
|
|
jr .asm_5c49b
|
|
.asm_5c46a
|
|
ld hl, PewterGymText_5c49e
|
|
call PrintText
|
|
ld hl, wd72d
|
|
set 6, [hl]
|
|
set 7, [hl]
|
|
ld hl, PewterGymText_5c4bc
|
|
ld de, PewterGymText_5c4bc
|
|
call SaveEndBattleTextPointers
|
|
ld a, [H_SPRITEINDEX]
|
|
ld [wSpriteIndex], a
|
|
call EngageMapTrainer
|
|
call InitBattleEnemyParameters
|
|
ld a, $1
|
|
ld [wGymLeaderNo], a
|
|
xor a
|
|
ld [hJoyHeld], a
|
|
ld a, $3
|
|
ld [wPewterGymCurScript], a
|
|
ld [wCurMapScript], a
|
|
.asm_5c49b
|
|
jp TextScriptEnd
|
|
|
|
PewterGymText_5c49e:
|
|
TX_FAR _PewterGymText_5c49e
|
|
db "@"
|
|
|
|
PewterGymText_5c4a3:
|
|
TX_FAR _PewterGymText_5c4a3
|
|
db "@"
|
|
|
|
PewterGymText4:
|
|
TX_FAR _TM34PreReceiveText
|
|
db "@"
|
|
|
|
PewterGymText5:
|
|
TX_FAR _ReceivedTM34Text
|
|
TX_SFX_ITEM_1
|
|
TX_FAR _TM34ExplanationText
|
|
db "@"
|
|
|
|
PewterGymText6:
|
|
TX_FAR _TM34NoRoomText
|
|
db "@"
|
|
|
|
PewterGymText_5c4bc:
|
|
TX_FAR _PewterGymText_5c4bc
|
|
TX_SFX_LEVEL_UP ; probably supposed to play SFX_GET_ITEM_1 but the wrong music bank is loaded
|
|
TX_FAR _PewterGymText_5c4c1
|
|
db "@"
|
|
|
|
PewterGymText2:
|
|
TX_ASM
|
|
ld hl, PewterGymTrainerHeader0
|
|
call TalkToTrainer
|
|
jp TextScriptEnd
|
|
|
|
PewterGymBattleText1:
|
|
TX_FAR _PewterGymBattleText1
|
|
db "@"
|
|
|
|
PewterGymEndBattleText1:
|
|
TX_FAR _PewterGymEndBattleText1
|
|
db "@"
|
|
|
|
PewterGymAfterBattleText1:
|
|
TX_FAR _PewterGymAfterBattleText1
|
|
db "@"
|
|
|
|
PewterGymText3:
|
|
TX_ASM
|
|
ld a, [wBeatGymFlags]
|
|
bit 0, a
|
|
jr nz, .asm_5c50c
|
|
ld hl, PewterGymText_5c515
|
|
call PrintText
|
|
call YesNoChoice
|
|
ld a, [wCurrentMenuItem]
|
|
and a
|
|
jr nz, .asm_5c4fe
|
|
ld hl, PewterGymText_5c51a
|
|
call PrintText
|
|
jr .asm_5c504
|
|
.asm_5c4fe
|
|
ld hl, PewterGymText_5c524
|
|
call PrintText
|
|
.asm_5c504
|
|
ld hl, PewterGymText_5c51f
|
|
call PrintText
|
|
jr .asm_5c512
|
|
.asm_5c50c
|
|
ld hl, PewterGymText_5c529
|
|
call PrintText
|
|
.asm_5c512
|
|
jp TextScriptEnd
|
|
|
|
PewterGymText_5c515:
|
|
TX_FAR _PewterGymText_5c515
|
|
db "@"
|
|
|
|
PewterGymText_5c51a:
|
|
TX_FAR _PewterGymText_5c51a
|
|
db "@"
|
|
|
|
PewterGymText_5c51f:
|
|
TX_FAR _PewterGymText_5c51f
|
|
db "@"
|
|
|
|
PewterGymText_5c524:
|
|
TX_FAR _PewterGymText_5c524
|
|
db "@"
|
|
|
|
PewterGymText_5c529:
|
|
TX_FAR _PewterGymText_5c529
|
|
db "@"
|