mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-26 11:44:17 +01:00
312 lines
11 KiB
PHP
312 lines
11 KiB
PHP
@ Gabby and Ty always move to the same spots for the first 5 battles
|
|
@ From the 6th battle onwards, they move randomly between locations 6-8
|
|
@ Note: The local IDs of Gabby and Ty are hard-coded in GetGabbyAndTyLocalIds
|
|
GabbyAndTy_EventScript_UpdateLocation::
|
|
cleartrainerflag TRAINER_GABBY_AND_TY_6
|
|
specialvar VAR_RESULT, GabbyAndTyGetBattleNum
|
|
switch VAR_RESULT
|
|
case 0, GabbyAndTy_EventScript_MoveForBattle1
|
|
case 1, GabbyAndTy_EventScript_MoveForBattle2
|
|
case 2, GabbyAndTy_EventScript_MoveForBattle3
|
|
case 3, GabbyAndTy_EventScript_MoveForBattle4
|
|
case 4, GabbyAndTy_EventScript_MoveForBattle5
|
|
case 5, GabbyAndTy_EventScript_MoveForBattle6
|
|
case 6, GabbyAndTy_EventScript_MoveForBattle7
|
|
case 7, GabbyAndTy_EventScript_MoveForBattle8
|
|
case 8, GabbyAndTy_EventScript_MoveForBattle9
|
|
end
|
|
|
|
GabbyAndTy_EventScript_MoveForBattle1::
|
|
call GabbyAndTy_EventScript_ShowAtRoute111_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_MoveForBattle2::
|
|
call GabbyAndTy_EventScript_ShowAtRoute118_1
|
|
call GabbyAndTy_EventScript_HideAtRoute111_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_MoveForBattle3::
|
|
call GabbyAndTy_EventScript_ShowAtRoute120_1
|
|
call GabbyAndTy_EventScript_HideAtRoute118_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_MoveForBattle4::
|
|
call GabbyAndTy_EventScript_ShowAtRoute111_3
|
|
call GabbyAndTy_EventScript_HideAtRoute120_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_MoveForBattle5::
|
|
call GabbyAndTy_EventScript_ShowAtRoute118_2
|
|
call GabbyAndTy_EventScript_HideAtRoute111_3
|
|
return
|
|
|
|
GabbyAndTy_EventScript_MoveForBattle6::
|
|
call GabbyAndTy_EventScript_ShowAtRoute120_2
|
|
call GabbyAndTy_EventScript_HideAtRoute118_2
|
|
return
|
|
|
|
GabbyAndTy_EventScript_MoveForBattle7::
|
|
call GabbyAndTy_EventScript_ShowAtRoute111_2
|
|
call GabbyAndTy_EventScript_HideAtRoute120_2
|
|
return
|
|
|
|
GabbyAndTy_EventScript_MoveForBattle8::
|
|
call GabbyAndTy_EventScript_ShowAtRoute118_3
|
|
call GabbyAndTy_EventScript_HideAtRoute111_2
|
|
return
|
|
|
|
GabbyAndTy_EventScript_MoveForBattle9::
|
|
call GabbyAndTy_EventScript_ShowAtRoute120_2
|
|
call GabbyAndTy_EventScript_HideAtRoute118_3
|
|
return
|
|
|
|
GabbyAndTy_EventScript_HideAtRoute111_1::
|
|
setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_ShowAtRoute111_1::
|
|
clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_HideAtRoute118_1::
|
|
setflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_ShowAtRoute118_1::
|
|
clearflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_HideAtRoute120_1::
|
|
setflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_ShowAtRoute120_1::
|
|
clearflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_1
|
|
return
|
|
|
|
GabbyAndTy_EventScript_HideAtRoute111_3::
|
|
setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3
|
|
return
|
|
|
|
GabbyAndTy_EventScript_ShowAtRoute111_3::
|
|
clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_3
|
|
return
|
|
|
|
GabbyAndTy_EventScript_HideAtRoute118_2::
|
|
setflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2
|
|
return
|
|
|
|
GabbyAndTy_EventScript_ShowAtRoute118_2::
|
|
clearflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_2
|
|
return
|
|
|
|
GabbyAndTy_EventScript_HideAtRoute120_2::
|
|
setflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2
|
|
return
|
|
|
|
GabbyAndTy_EventScript_ShowAtRoute120_2::
|
|
clearflag FLAG_HIDE_ROUTE_120_GABBY_AND_TY_2
|
|
return
|
|
|
|
GabbyAndTy_EventScript_HideAtRoute111_2::
|
|
setflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2
|
|
return
|
|
|
|
GabbyAndTy_EventScript_ShowAtRoute111_2::
|
|
clearflag FLAG_HIDE_ROUTE_111_GABBY_AND_TY_2
|
|
return
|
|
|
|
GabbyAndTy_EventScript_HideAtRoute118_3::
|
|
setflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3
|
|
return
|
|
|
|
GabbyAndTy_EventScript_ShowAtRoute118_3::
|
|
clearflag FLAG_HIDE_ROUTE_118_GABBY_AND_TY_3
|
|
return
|
|
|
|
GabbyAndTy_EventScript_GabbyBattle1::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_1, GabbyAndTy_Text_GabbyPreFirstBattle, GabbyAndTy_Text_GabbyDefeatFirstTime, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_FirstInterview
|
|
msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_TyBattle1::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_1, GabbyAndTy_Text_TyPreFirstBattle, GabbyAndTy_Text_TyDefeatFirstTime, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_FirstInterview
|
|
msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_GabbyBattle2::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_2, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_TyBattle2::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_2, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_GabbyBattle3::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_3, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_TyBattle3::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_3, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_GabbyBattle4::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_4, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_TyBattle4::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_4, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_GabbyBattle5::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_5, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_TyBattle5::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_5, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_GabbyBattle6::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_6, GabbyAndTy_Text_GabbyIntro, GabbyAndTy_Text_GabbyDefeat, GabbyAndTy_Text_GabbyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_TyBattle6::
|
|
trainerbattle_double TRAINER_GABBY_AND_TY_6, GabbyAndTy_Text_TyIntro, GabbyAndTy_Text_TyDefeat, GabbyAndTy_Text_TyNotEnoughMons, GabbyAndTy_EventScript_RequestInterview
|
|
msgbox GabbyAndTy_Text_TyPostBattle, MSGBOX_DEFAULT
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_FirstInterview::
|
|
special GabbyAndTyBeforeInterview
|
|
special GetGabbyAndTyLocalIds
|
|
call_if_eq VAR_FACING, DIR_NORTH, GabbyAndTy_EventScript_FacePlayerNorth
|
|
call_if_eq VAR_FACING, DIR_SOUTH, GabbyAndTy_EventScript_FacePlayerSouth
|
|
call_if_eq VAR_FACING, DIR_EAST, GabbyAndTy_EventScript_FacePlayerEast
|
|
goto_if_set FLAG_TEMP_1, GabbyAndTy_EventScript_KeepingAnEyeOutForYou
|
|
msgbox GabbyAndTy_Text_WhoAreYouInterview, MSGBOX_YESNO
|
|
goto GabbyAndTy_EventScript_Interview
|
|
end
|
|
|
|
GabbyAndTy_EventScript_FacePlayerNorth::
|
|
applymovement VAR_0x8004, GabbyAndTy_Movement_WalkInPlaceDown
|
|
waitmovement 0
|
|
return
|
|
|
|
GabbyAndTy_EventScript_FacePlayerSouth::
|
|
applymovement VAR_0x8004, GabbyAndTy_Movement_WalkInPlaceUp
|
|
applymovement VAR_0x8005, Common_Movement_WalkInPlaceFasterUp
|
|
waitmovement 0
|
|
return
|
|
|
|
GabbyAndTy_EventScript_FacePlayerEast::
|
|
applymovement VAR_0x8004, GabbyAndTy_Movement_WalkInPlaceLeft
|
|
applymovement VAR_0x8005, Common_Movement_WalkInPlaceFasterLeft
|
|
waitmovement 0
|
|
return
|
|
|
|
GabbyAndTy_EventScript_RequestInterview::
|
|
special GabbyAndTyBeforeInterview
|
|
special GetGabbyAndTyLocalIds
|
|
call_if_eq VAR_FACING, DIR_NORTH, GabbyAndTy_EventScript_FacePlayerNorth
|
|
call_if_eq VAR_FACING, DIR_SOUTH, GabbyAndTy_EventScript_FacePlayerSouth
|
|
call_if_eq VAR_FACING, DIR_EAST, GabbyAndTy_EventScript_FacePlayerEast
|
|
goto_if_set FLAG_TEMP_1, GabbyAndTy_EventScript_KeepingAnEyeOutForYou
|
|
specialvar VAR_RESULT, GabbyAndTyGetLastQuote
|
|
goto_if_eq VAR_RESULT, 0, GabbyAndTy_EventScript_DidntInterviewLastTime
|
|
msgbox GabbyAndTy_Text_QuoteFromLastInterview, MSGBOX_DEFAULT
|
|
specialvar VAR_RESULT, GabbyAndTyGetLastBattleTrivia
|
|
switch VAR_RESULT
|
|
case 0, GabbyAndTy_EventScript_RequestInterviewNoTrivia
|
|
case 1, GabbyAndTy_EventScript_RequestInterviewShortBattle
|
|
case 2, GabbyAndTy_EventScript_RequestInterviewThrewBall
|
|
case 3, GabbyAndTy_EventScript_RequestInterviewUsedItems
|
|
case 4, GabbyAndTy_EventScript_RequestInterviewLostAMon
|
|
end
|
|
|
|
GabbyAndTy_Movement_WalkInPlaceDown:
|
|
walk_in_place_down
|
|
step_end
|
|
|
|
GabbyAndTy_Movement_WalkInPlaceUp:
|
|
walk_in_place_up
|
|
step_end
|
|
|
|
GabbyAndTy_Movement_WalkInPlaceLeft:
|
|
walk_in_place_left
|
|
step_end
|
|
|
|
GabbyAndTy_EventScript_DidntInterviewLastTime::
|
|
msgbox GabbyAndTy_Text_GiveUsAnInterviewThisTime, MSGBOX_YESNO
|
|
goto GabbyAndTy_EventScript_Interview
|
|
end
|
|
|
|
GabbyAndTy_EventScript_RequestInterviewNoTrivia::
|
|
msgbox GabbyAndTy_Text_InterviewAgain, MSGBOX_YESNO
|
|
goto GabbyAndTy_EventScript_Interview
|
|
end
|
|
|
|
GabbyAndTy_EventScript_RequestInterviewShortBattle::
|
|
msgbox GabbyAndTy_Text_YouStompedUsInterviewAgain, MSGBOX_YESNO
|
|
goto GabbyAndTy_EventScript_Interview
|
|
end
|
|
|
|
GabbyAndTy_EventScript_RequestInterviewThrewBall::
|
|
msgbox GabbyAndTy_Text_YouThrewABallAtUsInterviewAgain, MSGBOX_YESNO
|
|
goto GabbyAndTy_EventScript_Interview
|
|
end
|
|
|
|
GabbyAndTy_EventScript_RequestInterviewUsedItems::
|
|
msgbox GabbyAndTy_Text_CleverItemSkillsInterviewAgain, MSGBOX_YESNO
|
|
goto GabbyAndTy_EventScript_Interview
|
|
end
|
|
|
|
GabbyAndTy_EventScript_RequestInterviewLostAMon::
|
|
msgbox GabbyAndTy_Text_WeLookedRespectableInterviewAgain, MSGBOX_YESNO
|
|
goto GabbyAndTy_EventScript_Interview
|
|
end
|
|
|
|
GabbyAndTy_EventScript_Interview::
|
|
goto_if_eq VAR_RESULT, NO, GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut
|
|
msgbox GabbyAndTy_Text_DescribeYourFeelings, MSGBOX_DEFAULT
|
|
setvar VAR_0x8004, EASY_CHAT_TYPE_GABBY_AND_TY
|
|
call Common_ShowEasyChatScreen
|
|
lock
|
|
faceplayer
|
|
goto_if_eq VAR_RESULT, 0, GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut
|
|
msgbox GabbyAndTy_Text_PerfectWellBeSeeingYou, MSGBOX_DEFAULT
|
|
special GabbyAndTyAfterInterview
|
|
setflag FLAG_TEMP_1
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_DontGiveUpKeepingEyeOut::
|
|
msgbox GabbyAndTy_Text_DontGiveUpKeepingEyeOut, MSGBOX_DEFAULT
|
|
setflag FLAG_TEMP_1
|
|
release
|
|
end
|
|
|
|
GabbyAndTy_EventScript_KeepingAnEyeOutForYou::
|
|
msgbox GabbyAndTy_Text_KeepingAnEyeOutForYou, MSGBOX_DEFAULT
|
|
release
|
|
end
|