2019-01-01 20:06:23 +00:00
|
|
|
CeruleanGym_Script:
|
2016-01-03 19:17:10 +00:00
|
|
|
ld hl, wCurrentMapScriptFlags
|
2024-09-24 15:39:44 +00:00
|
|
|
bit BIT_CUR_MAP_LOADED_2, [hl]
|
|
|
|
res BIT_CUR_MAP_LOADED_2, [hl]
|
2020-07-18 18:01:13 +00:00
|
|
|
call nz, .LoadNames
|
2014-05-18 18:19:10 +00:00
|
|
|
call EnableAutoTextBoxDrawing
|
2021-04-13 22:24:37 +00:00
|
|
|
ld hl, CeruleanGymTrainerHeaders
|
2019-01-01 20:06:23 +00:00
|
|
|
ld de, CeruleanGym_ScriptPointers
|
2015-08-31 02:38:41 +00:00
|
|
|
ld a, [wCeruleanGymCurScript]
|
2014-05-18 18:19:10 +00:00
|
|
|
call ExecuteCurMapScriptInTable
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wCeruleanGymCurScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2020-07-18 18:01:13 +00:00
|
|
|
.LoadNames:
|
|
|
|
ld hl, .CityName
|
|
|
|
ld de, .LeaderName
|
2014-05-18 18:19:10 +00:00
|
|
|
jp LoadGymLeaderAndCityName
|
|
|
|
|
2020-07-18 18:01:13 +00:00
|
|
|
.CityName:
|
2014-05-18 18:19:10 +00:00
|
|
|
db "CERULEAN CITY@"
|
|
|
|
|
2020-07-18 18:01:13 +00:00
|
|
|
.LeaderName:
|
2014-05-18 18:19:10 +00:00
|
|
|
db "MISTY@"
|
|
|
|
|
2021-05-17 10:48:26 +00:00
|
|
|
CeruleanGymResetScripts:
|
2023-07-14 01:27:56 +00:00
|
|
|
xor a ; SCRIPT_CERULEANGYM_DEFAULT
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [wJoyIgnore], a
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wCeruleanGymCurScript], a
|
|
|
|
ld [wCurMapScript], a
|
2014-05-18 18:19:10 +00:00
|
|
|
ret
|
|
|
|
|
2019-01-01 20:06:23 +00:00
|
|
|
CeruleanGym_ScriptPointers:
|
2023-07-14 01:27:56 +00:00
|
|
|
def_script_pointers
|
|
|
|
dw_const CheckFightingMapTrainers, SCRIPT_CERULEANGYM_DEFAULT
|
|
|
|
dw_const DisplayEnemyTrainerTextAndStartBattle, SCRIPT_CERULEANGYM_START_BATTLE
|
|
|
|
dw_const EndTrainerBattle, SCRIPT_CERULEANGYM_END_BATTLE
|
|
|
|
dw_const CeruleanGymMistyPostBattleScript, SCRIPT_CERULEANGYM_MISTY_POST_BATTLE
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
CeruleanGymMistyPostBattleScript:
|
2015-08-31 02:38:41 +00:00
|
|
|
ld a, [wIsInBattle]
|
2014-05-18 18:19:10 +00:00
|
|
|
cp $ff
|
2021-05-17 10:48:26 +00:00
|
|
|
jp z, CeruleanGymResetScripts
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, D_RIGHT | D_LEFT | D_UP | D_DOWN
|
2014-05-25 17:51:53 +00:00
|
|
|
ld [wJoyIgnore], a
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2021-05-17 10:48:26 +00:00
|
|
|
CeruleanGymReceiveTM11:
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, TEXT_CERULEANGYM_MISTY_CASCADE_BADGE_INFO
|
2024-09-19 01:01:18 +00:00
|
|
|
ldh [hTextID], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call DisplayTextID
|
2015-07-21 02:41:23 +00:00
|
|
|
SetEvent EVENT_BEAT_MISTY
|
2020-07-06 02:52:27 +00:00
|
|
|
lb bc, TM_BUBBLEBEAM, 1
|
2014-05-18 18:19:10 +00:00
|
|
|
call GiveItem
|
|
|
|
jr nc, .BagFull
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, TEXT_CERULEANGYM_MISTY_RECEIVED_TM11
|
2024-09-19 01:01:18 +00:00
|
|
|
ldh [hTextID], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call DisplayTextID
|
2015-07-21 02:41:23 +00:00
|
|
|
SetEvent EVENT_GOT_TM11
|
2019-10-07 05:23:57 +00:00
|
|
|
jr .gymVictory
|
2014-05-18 18:19:10 +00:00
|
|
|
.BagFull
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, TEXT_CERULEANGYM_MISTY_TM11_NO_ROOM
|
2024-09-19 01:01:18 +00:00
|
|
|
ldh [hTextID], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call DisplayTextID
|
2019-10-07 05:23:57 +00:00
|
|
|
.gymVictory
|
2015-08-31 02:38:41 +00:00
|
|
|
ld hl, wObtainedBadges
|
2020-07-14 14:21:18 +00:00
|
|
|
set BIT_CASCADEBADGE, [hl]
|
2015-07-26 02:26:54 +00:00
|
|
|
ld hl, wBeatGymFlags
|
2020-07-14 14:21:18 +00:00
|
|
|
set BIT_CASCADEBADGE, [hl]
|
2014-05-18 18:19:10 +00:00
|
|
|
|
|
|
|
; deactivate gym trainers
|
2015-07-21 01:32:02 +00:00
|
|
|
SetEvents EVENT_BEAT_CERULEAN_GYM_TRAINER_0, EVENT_BEAT_CERULEAN_GYM_TRAINER_1
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2021-05-17 10:48:26 +00:00
|
|
|
jp CeruleanGymResetScripts
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2019-01-01 20:06:23 +00:00
|
|
|
CeruleanGym_TextPointers:
|
2023-07-14 01:27:56 +00:00
|
|
|
def_text_pointers
|
|
|
|
dw_const CeruleanGymMistyText, TEXT_CERULEANGYM_MISTY
|
|
|
|
dw_const CeruleanGymCooltrainerFText, TEXT_CERULEANGYM_COOLTRAINER_F
|
|
|
|
dw_const CeruleanGymSwimmerText, TEXT_CERULEANGYM_SWIMMER
|
|
|
|
dw_const CeruleanGymGymGuideText, TEXT_CERULEANGYM_GYM_GUIDE
|
|
|
|
dw_const CeruleanGymMistyCascadeBadgeInfoText, TEXT_CERULEANGYM_MISTY_CASCADE_BADGE_INFO
|
|
|
|
dw_const CeruleanGymMistyReceivedTM11Text, TEXT_CERULEANGYM_MISTY_RECEIVED_TM11
|
|
|
|
dw_const CeruleanGymMistyTM11NoRoomText, TEXT_CERULEANGYM_MISTY_TM11_NO_ROOM
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2021-04-13 22:24:37 +00:00
|
|
|
CeruleanGymTrainerHeaders:
|
|
|
|
def_trainers 2
|
2016-06-12 00:24:04 +00:00
|
|
|
CeruleanGymTrainerHeader0:
|
2020-07-14 19:45:36 +00:00
|
|
|
trainer EVENT_BEAT_CERULEAN_GYM_TRAINER_0, 3, CeruleanGymBattleText1, CeruleanGymEndBattleText1, CeruleanGymAfterBattleText1
|
2016-06-12 00:24:04 +00:00
|
|
|
CeruleanGymTrainerHeader1:
|
2020-07-14 19:45:36 +00:00
|
|
|
trainer EVENT_BEAT_CERULEAN_GYM_TRAINER_1, 3, CeruleanGymBattleText2, CeruleanGymEndBattleText2, CeruleanGymAfterBattleText2
|
|
|
|
db -1 ; end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
CeruleanGymMistyText:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_asm
|
2015-07-21 02:41:23 +00:00
|
|
|
CheckEvent EVENT_BEAT_MISTY
|
2021-05-17 10:48:26 +00:00
|
|
|
jr z, .beforeBeat
|
2015-07-21 02:41:23 +00:00
|
|
|
CheckEventReuseA EVENT_GOT_TM11
|
2021-05-17 10:48:26 +00:00
|
|
|
jr nz, .afterBeat
|
|
|
|
call z, CeruleanGymReceiveTM11
|
2014-05-18 18:19:10 +00:00
|
|
|
call DisableWaitingAfterTextDisplay
|
2019-10-07 05:23:57 +00:00
|
|
|
jr .done
|
2021-05-17 10:48:26 +00:00
|
|
|
.afterBeat
|
2023-07-14 01:27:56 +00:00
|
|
|
ld hl, .TM11ExplanationText
|
2014-05-18 18:19:10 +00:00
|
|
|
call PrintText
|
2019-10-07 05:23:57 +00:00
|
|
|
jr .done
|
2021-05-17 10:48:26 +00:00
|
|
|
.beforeBeat
|
2023-07-14 01:27:56 +00:00
|
|
|
ld hl, .PreBattleText
|
2014-05-18 18:19:10 +00:00
|
|
|
call PrintText
|
2024-07-16 17:02:54 +00:00
|
|
|
ld hl, wStatusFlags3
|
|
|
|
set BIT_TALKED_TO_TRAINER, [hl]
|
|
|
|
set BIT_PRINT_END_BATTLE_TEXT, [hl]
|
2023-07-14 01:27:56 +00:00
|
|
|
ld hl, CeruleanGymMistyReceivedCascadeBadgeText
|
|
|
|
ld de, CeruleanGymMistyReceivedCascadeBadgeText
|
2014-09-14 18:29:18 +00:00
|
|
|
call SaveEndBattleTextPointers
|
2020-07-06 23:03:05 +00:00
|
|
|
ldh a, [hSpriteIndex]
|
2014-09-13 07:50:56 +00:00
|
|
|
ld [wSpriteIndex], a
|
2014-05-18 18:19:10 +00:00
|
|
|
call EngageMapTrainer
|
|
|
|
call InitBattleEnemyParameters
|
|
|
|
ld a, $2
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wGymLeaderNo], a
|
2014-05-18 18:19:10 +00:00
|
|
|
xor a
|
2020-07-06 23:03:05 +00:00
|
|
|
ldh [hJoyHeld], a
|
2023-07-14 01:27:56 +00:00
|
|
|
ld a, SCRIPT_CERULEANGYM_MISTY_POST_BATTLE
|
2015-08-31 02:38:41 +00:00
|
|
|
ld [wCeruleanGymCurScript], a
|
2019-10-07 05:23:57 +00:00
|
|
|
.done
|
2014-05-18 18:19:10 +00:00
|
|
|
jp TextScriptEnd
|
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
.PreBattleText:
|
|
|
|
text_far _CeruleanGymMistyPreBattleText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
.TM11ExplanationText:
|
|
|
|
text_far _CeruleanGymMistyTM11ExplanationText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
CeruleanGymMistyCascadeBadgeInfoText:
|
|
|
|
text_far _CeruleanGymMistyCascadeBadgeInfoText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
CeruleanGymMistyReceivedTM11Text:
|
|
|
|
text_far _CeruleanGymMistyReceivedTM11Text
|
2020-07-04 21:09:35 +00:00
|
|
|
sound_get_item_1
|
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
CeruleanGymMistyTM11NoRoomText:
|
|
|
|
text_far _CeruleanGymMistyTM11NoRoomText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
CeruleanGymMistyReceivedCascadeBadgeText:
|
|
|
|
text_far _CeruleanGymMistyReceivedCascadeBadgeText
|
2020-07-04 21:09:35 +00:00
|
|
|
sound_get_key_item ; actually plays the second channel of SFX_BALL_POOF due to the wrong music bank being loaded
|
|
|
|
text_promptbutton
|
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
CeruleanGymCooltrainerFText:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_asm
|
2014-05-18 18:19:10 +00:00
|
|
|
ld hl, CeruleanGymTrainerHeader0
|
|
|
|
call TalkToTrainer
|
|
|
|
jp TextScriptEnd
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
CeruleanGymBattleText1:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_far _CeruleanGymBattleText1
|
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
CeruleanGymEndBattleText1:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_far _CeruleanGymEndBattleText1
|
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
CeruleanGymAfterBattleText1:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_far _CeruleanGymAfterBattleText1
|
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
CeruleanGymSwimmerText:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_asm
|
2014-05-18 18:19:10 +00:00
|
|
|
ld hl, CeruleanGymTrainerHeader1
|
|
|
|
call TalkToTrainer
|
|
|
|
jp TextScriptEnd
|
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
CeruleanGymBattleText2:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_far _CeruleanGymBattleText2
|
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
CeruleanGymEndBattleText2:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_far _CeruleanGymEndBattleText2
|
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2016-06-12 00:24:04 +00:00
|
|
|
CeruleanGymAfterBattleText2:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_far _CeruleanGymAfterBattleText2
|
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
CeruleanGymGymGuideText:
|
2020-07-04 21:09:35 +00:00
|
|
|
text_asm
|
2015-07-21 02:41:23 +00:00
|
|
|
CheckEvent EVENT_BEAT_MISTY
|
2021-05-17 10:48:26 +00:00
|
|
|
jr nz, .afterBeat
|
2023-07-14 01:27:56 +00:00
|
|
|
ld hl, .ChampInMakingText
|
2014-05-18 18:19:10 +00:00
|
|
|
call PrintText
|
2021-05-17 10:48:26 +00:00
|
|
|
jr .done
|
|
|
|
.afterBeat
|
2023-07-14 01:27:56 +00:00
|
|
|
ld hl, .BeatMistyText
|
2014-05-18 18:19:10 +00:00
|
|
|
call PrintText
|
2021-05-17 10:48:26 +00:00
|
|
|
.done
|
2014-05-18 18:19:10 +00:00
|
|
|
jp TextScriptEnd
|
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
.ChampInMakingText:
|
|
|
|
text_far _CeruleanGymGymGuideChampInMakingText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|
2014-05-18 18:19:10 +00:00
|
|
|
|
2023-07-14 01:27:56 +00:00
|
|
|
.BeatMistyText:
|
|
|
|
text_far _CeruleanGymGymGuideBeatMistyText
|
2020-07-04 21:09:35 +00:00
|
|
|
text_end
|