pokeemerald/data/maps/SootopolisCity_Gym_1F/scripts.inc
2020-01-12 19:39:30 -06:00

326 lines
12 KiB
PHP

SootopolisCity_Gym_1F_MapScripts:: @ 8224E4C
map_script MAP_SCRIPT_ON_FRAME_TABLE, SootopolisCity_Gym_1F_OnFrame
map_script MAP_SCRIPT_ON_RESUME, SootopolisCity_Gym_1F_OnResume
map_script MAP_SCRIPT_ON_LOAD, SootopolisCity_Gym_1F_OnLoad
map_script MAP_SCRIPT_ON_TRANSITION, SootopolisCity_Gym_1F_OnTransition
.byte 0
SootopolisCity_Gym_1F_OnTransition: @ 8224E61
setvar VAR_ICE_STEP_COUNT, 1
end
SootopolisCity_Gym_1F_OnResume: @ 8224E67
setstepcallback STEP_CB_SOOTOPOLIS_ICE
end
SootopolisCity_Gym_1F_OnLoad: @ 8224E6A
call SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles
special SetSootopolisGymCrackedIceMetatiles
end
SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles:: @ 8224E73
compare VAR_ICE_STEP_COUNT, 8
goto_if_lt SootopolisCity_Gym_1F_EventScript_StopCheckingStairs @ All stairs ice
compare VAR_ICE_STEP_COUNT, 28
goto_if_lt SootopolisCity_Gym_1F_EventScript_OpenFirstStairs
compare VAR_ICE_STEP_COUNT, 67
goto_if_lt SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs
setmetatile 8, 4, METATILE_SootopolisGym_Stairs, 0
setmetatile 8, 5, METATILE_SootopolisGym_Stairs, 0
SootopolisCity_Gym_1F_EventScript_OpenFirstAndSecondStairs:: @ 8224EA6
setmetatile 8, 10, METATILE_SootopolisGym_Stairs, 0
setmetatile 8, 11, METATILE_SootopolisGym_Stairs, 0
SootopolisCity_Gym_1F_EventScript_OpenFirstStairs:: @ 8224EB8
setmetatile 8, 15, METATILE_SootopolisGym_Stairs, 0
setmetatile 8, 16, METATILE_SootopolisGym_Stairs, 0
SootopolisCity_Gym_1F_EventScript_StopCheckingStairs:: @ 8224ECA
return
SootopolisCity_Gym_1F_OnFrame: @ 8224ECB
map_script_2 VAR_ICE_STEP_COUNT, 8, SootopolisCity_Gym_1F_EventScript_UnlockFirstStairs
map_script_2 VAR_ICE_STEP_COUNT, 28, SootopolisCity_Gym_1F_EventScript_UnlockSecondStairs
map_script_2 VAR_ICE_STEP_COUNT, 67, SootopolisCity_Gym_1F_EventScript_UnlockThirdStairs
map_script_2 VAR_ICE_STEP_COUNT, 0, SootopolisCity_Gym_1F_EventScript_FallThroughIce
.2byte 0
SootopolisCity_Gym_1F_EventScript_UnlockFirstStairs:: @ 8224EED
addvar VAR_ICE_STEP_COUNT, 1
delay 40
playse SE_RU_GASHIN
call SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles
special DrawWholeMapView
end
SootopolisCity_Gym_1F_EventScript_UnlockSecondStairs:: @ 8224F01
addvar VAR_ICE_STEP_COUNT, 1
delay 40
playse SE_RU_GASHIN
call SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles
special DrawWholeMapView
end
SootopolisCity_Gym_1F_EventScript_UnlockThirdStairs:: @ 8224F15
addvar VAR_ICE_STEP_COUNT, 1
delay 40
playse SE_RU_GASHIN
call SootopolisCity_Gym_1F_EventScript_CheckSetStairMetatiles
special DrawWholeMapView
end
SootopolisCity_Gym_1F_EventScript_FallThroughIce:: @ 8224F29
lockall
delay 20
applymovement EVENT_OBJ_ID_PLAYER, SootopolisCity_Gym_1F_Movement_FallThroughIce
waitmovement 0
playse SE_RU_HYUU
delay 60
warphole MAP_SOOTOPOLIS_CITY_GYM_B1F
waitstate
end
SootopolisCity_Gym_1F_Movement_FallThroughIce: @ 8224F42
set_invisible
step_end
SootopolisCity_Gym_1F_EventScript_Juan:: @ 8224F44
trainerbattle_single TRAINER_JUAN_1, SootopolisCity_Gym_1F_Text_JuanIntro, SootopolisCity_Gym_1F_Text_JuanDefeat, SootopolisCity_Gym_1F_EventScript_JuanDefeated, NO_MUSIC
specialvar VAR_RESULT, ShouldTryRematchBattle
compare VAR_RESULT, TRUE
goto_if_eq SootopolisCity_Gym_1F_EventScript_JuanRematch
goto_if_unset FLAG_RECEIVED_TM03, SootopolisCity_Gym_1F_EventScript_GiveWaterPulse2
goto_if_unset FLAG_BADGE06_GET, SootopolisCity_Gym_1F_EventScript_GoGetFortreeBadge
msgbox SootopolisCity_Gym_1F_Text_JuanPostBattle, MSGBOX_DEFAULT
release
end
SootopolisCity_Gym_1F_EventScript_JuanDefeated:: @ 8224F82
message SootopolisCity_Gym_1F_Text_ReceivedRainBadge
waitmessage
call Common_EventScript_PlayGymBadgeFanfare
msgbox SootopolisCity_Gym_1F_Text_ExplainRainBadgeTakeThis, MSGBOX_DEFAULT
setflag FLAG_DEFEATED_SOOTOPOLIS_GYM
setflag FLAG_BADGE08_GET
setflag FLAG_HIDE_SOOTOPOLIS_CITY_RESIDENTS
setflag FLAG_HIDE_SOOTOPOLIS_CITY_STEVEN
setflag FLAG_HIDE_SOOTOPOLIS_CITY_WALLACE
setvar VAR_SOOTOPOLIS_CITY_STATE, 6
clearflag FLAG_HIDE_SOOTOPOLIS_CITY_MAN_1
setvar VAR_0x8008, 8
call Common_EventScript_SetGymTrainers
call SootopolisCity_Gym_1F_EventScript_GiveWaterPulse
closemessage
delay 30
playfanfare MUS_ME_TORE_EYE
msgbox SootopolisCity_Gym_1F_Text_RegisteredJuan, MSGBOX_DEFAULT
waitfanfare
closemessage
delay 30
setflag FLAG_ENABLE_JUAN_MATCH_CALL
release
end
SootopolisCity_Gym_1F_EventScript_GiveWaterPulse:: @ 8224FD4
giveitem_std ITEM_TM03
compare VAR_RESULT, 0
goto_if_eq Common_EventScript_BagIsFull
msgbox SootopolisCity_Gym_1F_Text_ExplainWaterPulse, MSGBOX_DEFAULT
setflag FLAG_RECEIVED_TM03
return
SootopolisCity_Gym_1F_EventScript_GiveWaterPulse2:: @ 8224FF7
giveitem_std ITEM_TM03
compare VAR_RESULT, 0
goto_if_eq Common_EventScript_ShowBagIsFull
msgbox SootopolisCity_Gym_1F_Text_ExplainWaterPulse, MSGBOX_DEFAULT
setflag FLAG_RECEIVED_TM03
release
end
SootopolisCity_Gym_1F_EventScript_GoGetFortreeBadge:: @ 822501B
msgbox SootopolisCity_Gym_1F_Text_GoGetFortreeBadge, MSGBOX_DEFAULT
release
end
SootopolisCity_Gym_1F_EventScript_JuanRematch:: @ 8225025
trainerbattle_rematch_double TRAINER_JUAN_1, SootopolisCity_Gym_1F_Text_JuanPreRematch, SootopolisCity_Gym_1F_Text_JuanRematchDefeat, SootopolisCity_Gym_1F_Text_JuanRematchNeedTwoMons
msgbox SootopolisCity_Gym_1F_Text_JuanPostRematch, MSGBOX_AUTOCLOSE
end
SootopolisCity_Gym_1F_EventScript_GymGuide:: @ 8225040
lock
faceplayer
goto_if_set FLAG_DEFEATED_SOOTOPOLIS_GYM, SootopolisCity_Gym_1F_EventScript_GymGuidePostVictory
msgbox SootopolisCity_Gym_1F_Text_GymGuideAdvice, MSGBOX_DEFAULT
release
end
SootopolisCity_Gym_1F_EventScript_GymGuidePostVictory:: @ 8225055
msgbox SootopolisCity_Gym_1F_Text_GymGuidePostVictory, MSGBOX_DEFAULT
release
end
SootopolisCity_Gym_1F_EventScript_LeftGymStatue:: @ 822505F
lockall
goto_if_set FLAG_BADGE08_GET, SootopolisCity_Gym_1F_EventScript_GymStatueCertified
goto SootopolisCity_Gym_1F_EventScript_GymStatue
end
SootopolisCity_Gym_1F_EventScript_RightGymStatue:: @ 822506F
lockall
goto_if_set FLAG_BADGE08_GET, SootopolisCity_Gym_1F_EventScript_GymStatueCertified
goto SootopolisCity_Gym_1F_EventScript_GymStatue
end
SootopolisCity_Gym_1F_EventScript_GymStatueCertified:: @ 822507F
msgbox SootopolisCity_Gym_1F_Text_GymStatueCertified, MSGBOX_DEFAULT
releaseall
end
SootopolisCity_Gym_1F_EventScript_GymStatue:: @ 8225089
msgbox SootopolisCity_Gym_1F_Text_GymStatue, MSGBOX_DEFAULT
releaseall
end
SootopolisCity_Gym_1F_Text_GymGuideAdvice: @ 8225093
.string "Yo! How's it going, CHAMPION-\n"
.string "bound {PLAYER}?\p"
.string "SOOTOPOLIS's GYM LEADER JUAN is\n"
.string "a master of WATER-type POKéMON.\p"
.string "And, to get to JUAN, an icy floor\n"
.string "will hamper your progress…\p"
.string "Listen, I'm sorry, but that's all the\n"
.string "advice that I have for you.\p"
.string "The rest of the way, you have to\n"
.string "go for it yourself!$"
SootopolisCity_Gym_1F_Text_GymGuidePostVictory: @ 82251AF
.string "Yow! You've beaten even JUAN, who\n"
.string "was supposedly the best in all HOENN!\p"
.string "Okay! Check out your TRAINER CARD.\p"
.string "If you've gotten all the BADGES, you're\n"
.string "set for the POKéMON LEAGUE challenge!$"
SootopolisCity_Gym_1F_Text_JuanIntro: @ 8225268
.string "Let me ask you.\n"
.string "Did you know?\l"
.string "Ah, I should not be so coy.\p"
.string "It was I who taught WALLACE everything\n"
.string "there is to know about POKéMON.\p"
.string "Once, I had given up my position as\n"
.string "the GYM LEADER.\p"
.string "In my place, I had entrusted WALLACE\n"
.string "with the GYM.\p"
.string "However, a compelling reason arose for\n"
.string "me to make a comeback.\p"
.string "Ah, but enough chatter.\n"
.string "Let us begin our match, shall we?\p"
.string "Please, you shall bear witness to\n"
.string "our artistry.\p"
.string "A grand illusion of water sculpted\n"
.string "by POKéMON and myself!$"
@ NOTE: This defeat text actually causes a buffer overflow. It's about 50 bytes too long for
@ the gDisplayedStringBattle buffer that it's put into, and it stomps all over the gBattleTextBuffs
@ after, as well as the otherwise unused array after that. One wonders if that's the reason for
@ the existence of that unused array of ints.
SootopolisCity_Gym_1F_Text_JuanDefeat: @ 8225432
.string "Ahahaha, excellent!\n"
.string "Very well, you are the winner.\p"
.string "From you, I sense the brilliant shine\n"
.string "of skill that will overcome all.\p"
.string "However, compared with me or even\n"
.string "WALLACE, you are lacking in elegance.\p"
.string "Perhaps I should make you a loan\n"
.string "of my outfit?\p"
.string "… … … … … …\n"
.string "… … … … … …\p"
.string "Hahaha, I merely jest!\p"
.string "Rather than my clothes, I shall reward\n"
.string "you with this, the RAIN BADGE!$"
SootopolisCity_Gym_1F_Text_ReceivedRainBadge: @ 8225598
.string "{PLAYER} received the RAIN BADGE\n"
.string "from JUAN.$"
SootopolisCity_Gym_1F_Text_ExplainRainBadgeTakeThis: @ 82255BE
.string "Having the RAIN BADGE shall assure you\n"
.string "the full obedience of all your POKéMON\l"
.string "to your every command.\p"
.string "The RAIN BADGE also allows the use\n"
.string "of the HM move WATERFALL to scale\l"
.string "walls of cascading water.\p"
.string "And, so that you never forget the\n"
.string "battle we shared, take this…$"
SootopolisCity_Gym_1F_Text_ExplainWaterPulse: @ 82256C1
.string "The TECHNICAL MACHINE I handed you\n"
.string "contains WATER PULSE.\p"
.string "In use, it will occasionally confuse\n"
.string "the target with ultrasonic waves.\p"
.string "… … … … … …$"
SootopolisCity_Gym_1F_Text_RegisteredJuan: @ 822574D
.string "Registered GYM LEADER JUAN\n"
.string "in the POKéNAV.$"
SootopolisCity_Gym_1F_Text_JuanPostBattle: @ 8225778
.string "The TRAINERS who have gathered all\n"
.string "the GYM BADGES of HOENN should make\l"
.string "way to the ultimate destination.\p"
.string "The POKéMON LEAGUE.\p"
.string "Travel to the easternmost reaches\n"
.string "of HOENN, to the island EVER GRANDE.\p"
.string "There, you shall find the POKéMON\n"
.string "LEAGUE.$"
SootopolisCity_Gym_1F_Text_GoGetFortreeBadge: @ 8225865
.string "There remains but one BADGE to\n"
.string "obtain in HOENN.\p"
.string "If you wish to challenge the POKéMON\n"
.string "LEAGUE, you must obtain the last\l"
.string "BADGE from the GYM in FORTREE.$"
SootopolisCity_Gym_1F_Text_GymStatue: @ 82258FA
.string "SOOTOPOLIS CITY POKéMON GYM$"
SootopolisCity_Gym_1F_Text_GymStatueCertified: @ 8225916
.string "SOOTOPOLIS CITY POKéMON GYM\p"
.string "JUAN'S CERTIFIED TRAINERS:\n"
.string "{PLAYER}$"
SootopolisCity_Gym_1F_Text_JuanPreRematch: @ 8225950
.string "JUAN: Ah, this GYM had returned to its\n"
.string "usual state of serenity…\p"
.string "But our young typhoon has returned\n"
.string "to put us to the test again!\p"
.string "Well, my friend, most certainly!\p"
.string "I shall be delighted to dance with you\n"
.string "as often as you wish!$"
SootopolisCity_Gym_1F_Text_JuanRematchDefeat: @ 8225A2E
.string "Ahahaha, you are the winner!\n"
.string "You have defeated me again!$"
SootopolisCity_Gym_1F_Text_JuanPostRematch: @ 8225A67
.string "JUAN: If I told you to become my\n"
.string "apprentice, you will refuse, I am sure.\p"
.string "I would like to make a gift of my coat\n"
.string "to you.\p"
.string "But again, you will refuse.\n"
.string "I imagine that to be so.\p"
.string "And that, my friend, is a certain sign\n"
.string "of nobility!$"
SootopolisCity_Gym_1F_Text_JuanRematchNeedTwoMons: @ 8225B48
.string "JUAN: Ah, this GYM had returned to its\n"
.string "usual state of serenity…\p"
.string "But our young typhoon has returned\n"
.string "to put us to the test again!\p"
.string "Well, my friend, most certainly!\n"
.string "I shall be delighted to dance with you…\p"
.string "Ah, no, no, no.\n"
.string "You have with you but one POKéMON.\p"
.string "I wish that you would return with\n"
.string "two, perhaps more, POKéMON, please.$"