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_JuanPreBattle, 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_JuanPreBattle: @ 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.$"