pokeemerald/data/maps/Route119/scripts.inc

631 lines
18 KiB
PHP

Route119_MapScripts:: @ 81F4424
map_script MAP_SCRIPT_ON_RESUME, Route119_OnResume
map_script MAP_SCRIPT_ON_TRANSITION, Route119_OnTransition
.byte 0
Route119_OnResume: @ 81F442F
call_if_set FLAG_SYS_CTRL_OBJ_DELETE, Route119_EventScript_TryRemoveKecleon
end
Route119_EventScript_TryRemoveKecleon:: @ 81F4439
specialvar VAR_RESULT, GetBattleOutcome
compare VAR_RESULT, B_OUTCOME_CAUGHT
goto_if_ne Common_EventScript_NopReturn
removeobject VAR_LAST_TALKED
return
Route119_OnTransition: @ 81F444D
call Common_EventScript_SetupRivalGfxId
call Common_EventScript_SetupRivalOnBikeGfxId
compare VAR_WEATHER_INSTITUTE_STATE, 1
call_if_eq Route119_EventScript_MoveInstituteWorkersDownstairs
special SetRoute119Weather
end
Route119_EventScript_MoveInstituteWorkersDownstairs:: @ 81F4466
setflag FLAG_HIDE_WEATHER_INSTITUTE_2F_WORKERS
clearflag FLAG_HIDE_WEATHER_INSTITUTE_1F_WORKERS
setvar VAR_WEATHER_INSTITUTE_STATE, 2
return
Route119_EventScript_RivalTrigger1:: @ 81F4472
setvar VAR_TEMP_1, 1
goto Route119_EventScript_RivalEncounter
end
Route119_EventScript_RivalTrigger2:: @ 81F447D
setvar VAR_TEMP_1, 2
goto Route119_EventScript_RivalEncounter
end
Route119_EventScript_RivalEncounter:: @ 81F4488
lockall
addobject 25 @ Rival on bike
checkplayergender
compare VAR_RESULT, MALE
call_if_eq Route119_EventScript_PlayMayMusic
compare VAR_RESULT, FEMALE
call_if_eq Route119_EventScript_PlayBrendanMusic
delay 65
compare VAR_TEMP_1, 1
call_if_eq Route119_EventScript_RivalEnter1
compare VAR_TEMP_1, 2
call_if_eq Route119_EventScript_RivalEnter2
applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFastestDown
waitmovement 0
delay 30
compare VAR_TEMP_1, 1
call_if_eq Route119_EventScript_SetRivalPos1
compare VAR_TEMP_1, 2
call_if_eq Route119_EventScript_SetRivalPos2
removeobject 25
addobject 16 @ Rival on foot
delay 30
checkplayergender
compare VAR_RESULT, MALE
goto_if_eq Route119_EventScript_BattleMay
compare VAR_RESULT, FEMALE
goto_if_eq Route119_EventScript_BattleBrendan
releaseall
end
Route119_EventScript_PlayMayMusic:: @ 81F4501
playbgm MUS_GIRL_SUP, 1
return
Route119_EventScript_PlayBrendanMusic:: @ 81F4506
playbgm MUS_BOY_SUP, 1
return
Route119_EventScript_BattleMay:: @ 81F450B
msgbox Route119_Text_MayIntro, MSGBOX_DEFAULT
switch VAR_STARTER_MON
case 0, Route119_EventScript_BattleMayTreecko
case 1, Route119_EventScript_BattleMayTorchic
case 2, Route119_EventScript_BattleMayMudkip
end
Route119_EventScript_BattleMayTreecko:: @ 81F453A
trainerbattle_no_intro TRAINER_MAY_ROUTE_119_TREECKO, Route119_Text_MayDefeat
goto Route119_EventScript_DefeatedMay
end
Route119_EventScript_BattleMayTorchic:: @ 81F454A
trainerbattle_no_intro TRAINER_MAY_ROUTE_119_TORCHIC, Route119_Text_MayDefeat
goto Route119_EventScript_DefeatedMay
end
Route119_EventScript_BattleMayMudkip:: @ 81F455A
trainerbattle_no_intro TRAINER_MAY_ROUTE_119_MUDKIP, Route119_Text_MayDefeat
goto Route119_EventScript_DefeatedMay
end
Route119_EventScript_DefeatedMay:: @ 81F456A
msgbox Route119_Text_MayPresentForYou, MSGBOX_DEFAULT
call Route119_EventScript_GiveFlyHM
msgbox Route119_Text_MayExplainFly, MSGBOX_DEFAULT
goto Route119_EventScript_RivalExitScottArrive
end
Route119_EventScript_BattleBrendan:: @ 81F4585
msgbox Route119_Text_BrendanIntro, MSGBOX_DEFAULT
switch VAR_STARTER_MON
case 0, Route119_EventScript_BattleBrendanTreecko
case 1, Route119_EventScript_BattleBrendanTorchic
case 2, Route119_EventScript_BattleBrendanMudkip
end
Route119_EventScript_BattleBrendanTreecko:: @ 81F45B4
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_TREECKO, Route119_Text_BrendanDefeat
goto Route119_EventScript_DefeatedBrendan
end
Route119_EventScript_BattleBrendanTorchic:: @ 81F45C4
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_TORCHIC, Route119_Text_BrendanDefeat
goto Route119_EventScript_DefeatedBrendan
end
Route119_EventScript_BattleBrendanMudkip:: @ 81F45D4
trainerbattle_no_intro TRAINER_BRENDAN_ROUTE_119_MUDKIP, Route119_Text_BrendanDefeat
goto Route119_EventScript_DefeatedBrendan
end
Route119_EventScript_DefeatedBrendan:: @ 81F45E4
msgbox Route119_Text_BrendanIllGiveYouThis, MSGBOX_DEFAULT
call Route119_EventScript_GiveFlyHM
msgbox Route119_Text_BrendanExplainFly, MSGBOX_DEFAULT
goto Route119_EventScript_RivalExitScottArrive
end
Route119_EventScript_GiveFlyHM:: @ 81F45FF
giveitem ITEM_HM02
setflag FLAG_RECEIVED_HM02
return
Route119_EventScript_RivalExitScottArrive:: @ 81F460F
closemessage
compare VAR_TEMP_1, 1
call_if_eq Route119_EventScript_SetRivalPos1
compare VAR_TEMP_1, 2
call_if_eq Route119_EventScript_SetRivalPos2
removeobject 16 @ Rival on foot
addobject 25 @ Rival on bike
delay 30
compare VAR_TEMP_1, 1
call_if_eq Route119_EventScript_RivalExit1
compare VAR_TEMP_1, 2
call_if_eq Route119_EventScript_RivalExit2
removeobject 25
setvar VAR_ROUTE119_STATE, 1
savebgm MUS_DUMMY
fadedefaultbgm
delay 60
compare VAR_TEMP_1, 1
call_if_eq Route119_EventScript_SetScottPos1
compare VAR_TEMP_1, 2
call_if_eq Route119_EventScript_SetScottPos2
addobject 43 @ Scott
applymovement 43, Route119_Movement_ScottEnter
waitmovement 0
addvar VAR_SCOTT_STATE, 1
msgbox Route119_Text_ScottWayToGoBeSeeingYou, MSGBOX_DEFAULT
closemessage
compare VAR_TEMP_1, 1
call_if_eq Route119_EventScript_ScottExit1
compare VAR_TEMP_1, 2
call_if_eq Route119_EventScript_ScottExit2
removeobject 43
releaseall
end
Route119_EventScript_SetScottPos1:: @ 81F46A0
setobjectxyperm 43, 27, 25
return
Route119_EventScript_SetScottPos2:: @ 81F46A8
setobjectxyperm 43, 28, 25
return
Route119_EventScript_ScottExit1:: @ 81F46B0
applymovement 43, Route119_Movement_ScottExit1
waitmovement 0
return
Route119_EventScript_ScottExit2:: @ 81F46BB
applymovement 43, Route119_Movement_ScottExit2
waitmovement 0
return
Route119_EventScript_RivalEnter1:: @ 81F46C6
applymovement 25, Route119_Movement_RivalEnter1
waitmovement 0
return
Route119_EventScript_RivalEnter2:: @ 81F46D1
applymovement 25, Route119_Movement_RivalEnter2
waitmovement 0
return
Route119_EventScript_RivalExit1:: @ 81F46DC
applymovement OBJ_EVENT_ID_PLAYER, Route119_Movement_PlayerWatchRivalExit1
applymovement 25, Route119_Movement_RivalExit1
waitmovement 0
return
Route119_EventScript_RivalExit2:: @ 81F46EE
applymovement OBJ_EVENT_ID_PLAYER, Route119_Movement_PlayerWatchRivalExit2
applymovement 25, Route119_Movement_RivalExit2
waitmovement 0
return
Route119_EventScript_SetRivalPos1:: @ 81F4700
setobjectxyperm 16, 25, 32
setobjectxyperm 25, 25, 32
return
Route119_EventScript_SetRivalPos2:: @ 81F470F
setobjectxyperm 16, 26, 32
setobjectxyperm 25, 26, 32
return
Route119_Movement_PlayerWatchRivalExit1: @ 81F471E
delay_16
walk_in_place_fastest_right
delay_8
walk_in_place_fastest_up
step_end
Route119_Movement_PlayerWatchRivalExit2: @ 81F4723
delay_16
walk_in_place_fastest_left
delay_8
walk_in_place_fastest_up
step_end
Route119_Movement_RivalEnter1: @ 81F4728
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_up
step_end
Route119_Movement_RivalEnter2: @ 81F4732
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_right
walk_fast_up
step_end
Route119_Movement_RivalExit1: @ 81F473D
walk_fast_right
walk_fast_up
walk_fast_up
walk_fast_up
walk_fast_right
walk_fast_up
walk_fast_up
walk_fast_up
walk_fast_up
step_end
Route119_Movement_RivalExit2: @ 81F4747
walk_fast_left
walk_fast_up
walk_fast_up
walk_fast_up
walk_fast_right
walk_fast_right
walk_fast_up
walk_fast_up
walk_fast_up
walk_fast_up
step_end
Route119_Movement_ScottEnter: @ 81F4752
walk_down
walk_down
walk_down
walk_down
walk_left
walk_left
walk_down
step_end
Route119_Movement_ScottExit1: @ 81F475A
walk_up
walk_right
walk_right
walk_up
walk_up
walk_up
walk_up
walk_up
step_end
Route119_Movement_ScottExit2: @ 81F4763
walk_up
walk_right
walk_up
walk_up
walk_up
walk_up
walk_up
step_end
Route119_EventScript_CyclingTriathleteM:: @ 81F476B
msgbox Route119_Text_TallGrassSnaresBikeTires, MSGBOX_NPC
end
Route119_EventScript_RouteSignFortree:: @ 81F4774
msgbox Route119_Text_RouteSignFortree, MSGBOX_SIGN
end
Route119_EventScript_WeatherInstituteSign:: @ 81F477D
msgbox Route119_Text_WeatherInstitute, MSGBOX_SIGN
end
Route119_EventScript_Brent:: @ 81F4786
trainerbattle_single TRAINER_BRENT, Route119_Text_BrentIntro, Route119_Text_BrentDefeat
msgbox Route119_Text_BrentPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Donald:: @ 81F479D
trainerbattle_single TRAINER_DONALD, Route119_Text_DonaldIntro, Route119_Text_DonaldDefeat
msgbox Route119_Text_DonaldPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Taylor:: @ 81F47B4
trainerbattle_single TRAINER_TAYLOR, Route119_Text_TaylorIntro, Route119_Text_TaylorDefeat
msgbox Route119_Text_TaylorPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Doug:: @ 81F47CB
trainerbattle_single TRAINER_DOUG, Route119_Text_DougIntro, Route119_Text_DougDefeat
msgbox Route119_Text_DougPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Greg:: @ 81F47E2
trainerbattle_single TRAINER_GREG, Route119_Text_GregIntro, Route119_Text_GregDefeat
msgbox Route119_Text_GregPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Kent:: @ 81F47F9
trainerbattle_single TRAINER_KENT, Route119_Text_KentIntro, Route119_Text_KentDefeat
msgbox Route119_Text_KentPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Jackson:: @ 81F4810
trainerbattle_single TRAINER_JACKSON_1, Route119_Text_JacksonIntro, Route119_Text_JacksonDefeat, Route119_EventScript_RegisterJackson
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
goto_if_eq Route119_EventScript_RematchJackson
msgbox Route119_Text_JacksonPostBattle, MSGBOX_DEFAULT
release
end
Route119_EventScript_RegisterJackson:: @ 81F483C
special PlayerFaceTrainerAfterBattle
waitmovement 0
msgbox Route119_Text_JacksonRegister, MSGBOX_DEFAULT
register_matchcall TRAINER_JACKSON_1
release
end
Route119_EventScript_RematchJackson:: @ 81F485B
trainerbattle_rematch TRAINER_JACKSON_1, Route119_Text_JacksonRematchIntro, Route119_Text_JacksonRematchDefeat
msgbox Route119_Text_JacksonPostRematch, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Catherine:: @ 81F4872
trainerbattle_single TRAINER_CATHERINE_1, Route119_Text_CatherineIntro, Route119_Text_CatherineDefeat, Route119_EventScript_RegisterCatherine
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
goto_if_eq Route119_EventScript_RematchCatherine
msgbox Route119_Text_CatherinePostBattle, MSGBOX_DEFAULT
release
end
Route119_EventScript_RegisterCatherine:: @ 81F489E
special PlayerFaceTrainerAfterBattle
waitmovement 0
msgbox Route119_Text_CatherineRegister, MSGBOX_DEFAULT
register_matchcall TRAINER_CATHERINE_1
release
end
Route119_EventScript_RematchCatherine:: @ 81F48BD
trainerbattle_rematch TRAINER_CATHERINE_1, Route119_Text_CatherineRematchIntro, Route119_Text_CatherineRematchDefeat
msgbox Route119_Text_CatherinePostRematch, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Hugh:: @ 81F48D4
trainerbattle_single TRAINER_HUGH, Route119_Text_HughIntro, Route119_Text_HughDefeat
msgbox Route119_Text_HughPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Phil:: @ 81F48EB
trainerbattle_single TRAINER_PHIL, Route119_Text_PhilIntro, Route119_Text_PhilDefeat
msgbox Route119_Text_PhilPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Yasu:: @ 81F4902
trainerbattle_single TRAINER_YASU, Route119_Text_YasuIntro, Route119_Text_YasuDefeat
msgbox Route119_Text_YasuPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Takashi:: @ 81F4919
trainerbattle_single TRAINER_TAKASHI, Route119_Text_TakashiIntro, Route119_Text_TakashiDefeat
msgbox Route119_Text_TakashiPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Hideo:: @ 81F4930
trainerbattle_single TRAINER_HIDEO, Route119_Text_HideoIntro, Route119_Text_HideoDefeat
msgbox Route119_Text_HideoPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Chris:: @ 81F4947
trainerbattle_single TRAINER_CHRIS, Route119_Text_ChrisIntro, Route119_Text_ChrisDefeat
msgbox Route119_Text_ChrisPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Fabian:: @ 81F495E
trainerbattle_single TRAINER_FABIAN, Route119_Text_FabianIntro, Route119_Text_FabianDefeat
msgbox Route119_Text_FabianPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Dayton:: @ 81F4975
trainerbattle_single TRAINER_DAYTON, Route119_Text_DaytonIntro, Route119_Text_DaytonDefeat
msgbox Route119_Text_DaytonPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_Rachel:: @ 81F498C
trainerbattle_single TRAINER_RACHEL, Route119_Text_RachelIntro, Route119_Text_RachelDefeat
msgbox Route119_Text_RachelPostBattle, MSGBOX_AUTOCLOSE
end
Route119_EventScript_BridgeAquaGrunt1:: @ 81F49A3
lock
faceplayer
msgbox Route119_Text_StayAwayFromWeatherInstitute, MSGBOX_DEFAULT
closemessage
applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
Route119_EventScript_BridgeAquaGrunt2:: @ 81F49BA
lock
faceplayer
msgbox Route119_Text_DontGoNearWeatherInstitute, MSGBOX_DEFAULT
closemessage
applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection
waitmovement 0
release
end
Route119_EventScript_Boy1:: @ 81F49D1
msgbox Route119_Text_ThoughtFlyByCatchingBirdMons, MSGBOX_NPC
end
Route119_EventScript_Boy2:: @ 81F49DA
msgbox Route119_Text_CanYourMonMakeSecretBase, MSGBOX_NPC
end
Route119_EventScript_TrainerTipsDecoration:: @ 81F49E3
msgbox Route119_Text_TrainerTipsDecoration, MSGBOX_SIGN
end
Route119_EventScript_ScottWonAtFortreeGymCall:: @ 81F49EC
lockall
pokenavcall Route119_Text_ScottYouWonAtFortreeGym
waitmessage
clearflag FLAG_SCOTT_CALL_FORTREE_GYM
addvar VAR_SCOTT_STATE, 1
releaseall
end
Route119_Text_MayIntro: @ 81F49FD
.string "MAY: {PLAYER}{KUN}!\n"
.string "Where were you? I was looking for you!\p"
.string "How much stronger have you gotten?\n"
.string "Let me check for you!\p"
.string "Ready with your POKéMON?\n"
.string "Of course you are! Go!$"
Route119_Text_MayDefeat: @ 81F4A98
.string "Achah!\n"
.string "{PLAYER}{KUN}, you're strong!\p"
.string "I was worried that you might be\n"
.string "struggling with your training.$"
Route119_Text_MayPresentForYou: @ 81F4AF3
.string "MAY: But I had absolutely nothing to\n"
.string "worry about! Keep it up!\p"
.string "And, here! I have a present for you.$"
Route119_Text_MayExplainFly: @ 81F4B56
.string "MAY: Use FLY, and your POKéMON will\n"
.string "instantly carry you to any town you've\l"
.string "already visited.\p"
.string "But, to use FLY, you have to get\n"
.string "the GYM BADGE from FORTREE CITY.\l"
.string "That's important, so don't forget.\p"
.string "You should FLY home and visit\n"
.string "LITTLEROOT for a change.\p"
.string "I bet your mom's worried about you,\n"
.string "{PLAYER}{KUN}.\p"
.string "Well, let's meet again somewhere!$"
Route119_Text_BrendanIntro: @ 81F4C9A
.string "BRENDAN: {PLAYER}! So this is where\n"
.string "you've been looking for POKéMON?\p"
.string "Let me see how good you got.\n"
.string "I'll test you!\p"
.string "Now!\n"
.string "It's a battle, so battle!$"
Route119_Text_BrendanDefeat: @ 81F4D24
.string "Hmm…\n"
.string "You've gotten pretty darn decent.$"
Route119_Text_BrendanIllGiveYouThis: @ 81F4D4B
.string "BRENDAN: I'd say you're good enough\n"
.string "to search for POKéMON anywhere.\p"
.string "Here, I'll give you this.\n"
.string "Try it out.$"
Route119_Text_BrendanExplainFly: @ 81F4DB5
.string "BRENDAN: Use FLY, and your POKéMON\n"
.string "instantly carries you to any town\l"
.string "you've already visited.\p"
.string "But you need the FORTREE GYM BADGE \n"
.string "to do that.\p"
.string "Anyway, I have to move along.$"
Route119_Text_ScottWayToGoBeSeeingYou: @ 81F4E60
.string "SCOTT: Hahahah!\n"
.string "Way to go, {PLAYER}{KUN}!\p"
.string "I just passed by a TRAINER riding\n"
.string "a BIKE.\p"
.string "You just beat that TRAINER, didn't you?\n"
.string "It was pretty obvious that you did.\p"
.string "The kid looked really upset with\n"
.string "a face all red from anger.\p"
.string "I sure seem to run into you often.\n"
.string "Are you off to FORTREE GYM next?\p"
.string "I expect that you'll do well at the GYM.\n"
.string "Well, I'll be seeing you!$"
Route119_Text_ScottYouWonAtFortreeGym: @ 81F4FBA
.string "… … … … … …\n"
.string "… … … … … Beep!\p"
.string "SCOTT: Hiya, {PLAYER}{KUN}, it's me!\p"
.string "Just as I thought, you won at\n"
.string "the FORTREE GYM.\p"
.string "Your strength…\n"
.string "Perhaps you really are the TRAINER\l"
.string "that I've been searching for.\p"
.string "Remember, you have a fan in me.\n"
.string "I'll be cheering from the sidelines.\l"
.string "Keep up the great work!\p"
.string "… … … … … …\n"
.string "… … … … … Click!$"
Route119_Text_StayAwayFromWeatherInstitute: @ 81F50EB
.string "We're standing lookout here.\p"
.string "Hey, you! Stay away from the WEATHER\n"
.string "INSTITUTE. It's not safe.$"
Route119_Text_DontGoNearWeatherInstitute: @ 81F5147
.string "Lookout duty is surprisingly boring.\p"
.string "Hey, you! Please don't go near the\n"
.string "WEATHER INSTITUTE.$"
Route119_Text_ThoughtFlyByCatchingBirdMons: @ 81F51A2
.string "I thought you FLY by catching a whole\n"
.string "flock of BIRD POKéMON, and then\l"
.string "hanging on to them somehow.\p"
.string "But it turns out there's an HM move\n"
.string "called FLY!\p"
.string "I wish I'd known about that a long\n"
.string "time ago…$"
Route119_Text_TallGrassSnaresBikeTires: @ 81F5261
.string "Tch…\n"
.string "It's a no-go…\p"
.string "The tall grass snares BIKE tires.\n"
.string "There's no way you can cycle here.$"
Route119_Text_CanYourMonMakeSecretBase: @ 81F52B9
.string "Can your POKéMON use its SECRET POWER\n"
.string "on a big pile of grass and make a\l"
.string "SECRET BASE?$"
Route119_Text_RouteSignFortree: @ 81F530E
.string "ROUTE 119\n"
.string "{RIGHT_ARROW} FORTREE CITY$"
Route119_Text_WeatherInstitute: @ 81F5327
.string "WEATHER INSTITUTE$"
Route119_Text_TrainerTipsDecoration: @ 81F5339
.string "TRAINER TIPS\p"
.string "Up to sixteen decorations and\n"
.string "furniture items can be placed in\l"
.string "a SECRET BASE.\p"
.string "Pick your favorite items and create\n"
.string "your very own SECRET BASE exactly the\l"
.string "way you want.$"