.set LOCALID_SCIENTIST_1, 1 .set LOCALID_SCIENTIST_2, 2 .set LOCALID_SAILOR, 3 .set LOCALID_OLD_MAN, 4 .set LOCALID_WOMAN, 5 .set LOCALID_STAIR_GRUNT, 9 MossdeepCity_SpaceCenter_1F_MapScripts:: map_script MAP_SCRIPT_ON_LOAD, MossdeepCity_SpaceCenter_1F_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, MossdeepCity_SpaceCenter_1F_OnTransition .byte 0 MossdeepCity_SpaceCenter_1F_OnTransition: goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma end MossdeepCity_SpaceCenter_1F_EventScript_MoveObjectsForTeamMagma:: setobjectxyperm LOCALID_SAILOR, 1, 9 setobjectmovementtype LOCALID_SAILOR, MOVEMENT_TYPE_FACE_RIGHT setobjectxyperm LOCALID_WOMAN, 0, 8 setobjectmovementtype LOCALID_WOMAN, MOVEMENT_TYPE_FACE_RIGHT setobjectxyperm LOCALID_OLD_MAN, 1, 6 setobjectmovementtype LOCALID_OLD_MAN, MOVEMENT_TYPE_FACE_RIGHT setobjectxyperm LOCALID_SCIENTIST_1, 3, 4 setobjectmovementtype LOCALID_SCIENTIST_1, MOVEMENT_TYPE_FACE_RIGHT setobjectmovementtype LOCALID_SCIENTIST_2, MOVEMENT_TYPE_FACE_RIGHT goto_if_eq VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 1, MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardLeft goto_if_eq VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardDown goto_if_eq VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 3, MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardRight end MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardLeft:: setobjectxyperm LOCALID_STAIR_GRUNT, 12, 2 end MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardDown:: setobjectxyperm LOCALID_STAIR_GRUNT, 13, 3 end @ Functionally unused. See comment on MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast MossdeepCity_SpaceCenter_1F_EventScript_MoveStairGuardRight:: setobjectxyperm LOCALID_STAIR_GRUNT, 14, 2 end MossdeepCity_SpaceCenter_1F_OnLoad: goto_if_le VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote end MossdeepCity_SpaceCenter_1F_EventScript_SetMagmaNote:: setmetatile 2, 5, METATILE_Facility_DataPad, TRUE return MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounter:: lock faceplayer goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma dotimebasedevents specialvar VAR_RESULT, GetWeekCount buffernumberstring STR_VAR_1, VAR_RESULT call_if_eq VAR_RESULT, 0, MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYet call_if_ge VAR_RESULT, 1, MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumber closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 release end MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYet:: msgbox MossdeepCity_SpaceCenter_1F_Text_RocketLaunchImminent, MSGBOX_DEFAULT return MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumber:: msgbox MossdeepCity_SpaceCenter_1F_Text_SuccessfulLaunchNumber, MSGBOX_DEFAULT return MossdeepCity_SpaceCenter_1F_EventScript_RocketLaunchCounterMagma:: dotimebasedevents specialvar VAR_RESULT, GetWeekCount buffernumberstring STR_VAR_1, VAR_RESULT call_if_eq VAR_RESULT, 0, MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYetMagma call_if_ge VAR_RESULT, 1, MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumberMagma closemessage applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight waitmovement 0 release end MossdeepCity_SpaceCenter_1F_EventScript_NoLaunchesYetMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_HaywireButRocketLaunchImminent, MSGBOX_DEFAULT return MossdeepCity_SpaceCenter_1F_EventScript_ShowLaunchNumberMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_HaywireButSuccessfulLaunchNumber, MSGBOX_DEFAULT return MossdeepCity_SpaceCenter_1F_EventScript_Scientist:: lock faceplayer goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_ScientistMagma msgbox MossdeepCity_SpaceCenter_1F_Text_RocketLaunchDemandsPerfection, MSGBOX_DEFAULT release end MossdeepCity_SpaceCenter_1F_EventScript_ScientistMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaHaveSightsOnSpaceCenter, MSGBOX_DEFAULT applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight waitmovement 0 release end MossdeepCity_SpaceCenter_1F_EventScript_SunStoneMan:: lock faceplayer goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_SunStoneManMagma goto_if_set FLAG_RECEIVED_SUN_STONE_MOSSDEEP, MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStone msgbox MossdeepCity_SpaceCenter_1F_Text_FoundThisYouCanHaveIt, MSGBOX_DEFAULT giveitem ITEM_SUN_STONE goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_SUN_STONE_MOSSDEEP msgbox MossdeepCity_SpaceCenter_1F_Text_HoennFamousForMeteorShowers, MSGBOX_DEFAULT release end MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStone:: msgbox MossdeepCity_SpaceCenter_1F_Text_HoennFamousForMeteorShowers, MSGBOX_DEFAULT release end MossdeepCity_SpaceCenter_1F_EventScript_SunStoneManMagma:: goto_if_set FLAG_RECEIVED_SUN_STONE_MOSSDEEP, MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStoneMagma msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaCantStealFuelTakeThis, MSGBOX_DEFAULT giveitem ITEM_SUN_STONE goto_if_eq VAR_RESULT, FALSE, Common_EventScript_ShowBagIsFull setflag FLAG_RECEIVED_SUN_STONE_MOSSDEEP msgbox MossdeepCity_SpaceCenter_1F_Text_CantStrollOnBeachWithMagma, MSGBOX_DEFAULT applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight waitmovement 0 release end MossdeepCity_SpaceCenter_1F_EventScript_GaveSunStoneMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_CantStrollOnBeachWithMagma, MSGBOX_DEFAULT applymovement VAR_LAST_TALKED, Common_Movement_WalkInPlaceFasterRight waitmovement 0 release end MossdeepCity_SpaceCenter_1F_EventScript_Woman:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_1F_EventScript_WomanNormal goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_WomanMagma goto_if_lt VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_WomanNormal goto MossdeepCity_SpaceCenter_1F_EventScript_WomanMagma end MossdeepCity_SpaceCenter_1F_EventScript_WomanNormal:: msgbox MossdeepCity_SpaceCenter_1F_Text_DidPokemonComeFromSpace, MSGBOX_DEFAULT release end MossdeepCity_SpaceCenter_1F_EventScript_WomanMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_AquaShouldBeatMagma, MSGBOX_DEFAULT release end MossdeepCity_SpaceCenter_1F_EventScript_OldMan:: lock faceplayer goto_if_set FLAG_SYS_GAME_CLEAR, MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal goto_if_eq VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma goto_if_lt VAR_MOSSDEEP_CITY_STATE, 2, MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal goto MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma end MossdeepCity_SpaceCenter_1F_EventScript_OldManNormal:: msgbox MossdeepCity_SpaceCenter_1F_Text_RocketsBoggleMyMind, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 release end MossdeepCity_SpaceCenter_1F_EventScript_OldManMagma:: msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaWantsToSpoilMyDream, MSGBOX_DEFAULT closemessage applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 release end MossdeepCity_SpaceCenter_1F_EventScript_Steven:: lock faceplayer msgbox MossdeepCity_SpaceCenter_1F_Text_StevenMagmaCantBeAllowedToTakeFuel, MSGBOX_DEFAULT applymovement VAR_LAST_TALKED, Common_Movement_FaceOriginalDirection waitmovement 0 release end MossdeepCity_SpaceCenter_1F_EventScript_MagmaNote:: lockall msgbox MossdeepCity_SpaceCenter_1F_Text_MagmaIntentToStealNotice, MSGBOX_DEFAULT releaseall end MossdeepCity_SpaceCenter_1F_EventScript_Grunt3:: trainerbattle_single TRAINER_GRUNT_SPACE_CENTER_3, MossdeepCity_SpaceCenter_1F_Text_Grunt3Intro, MossdeepCity_SpaceCenter_1F_Text_Grunt3Defeat msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt3PostBattle, MSGBOX_AUTOCLOSE end MossdeepCity_SpaceCenter_1F_EventScript_Grunt1:: trainerbattle_single TRAINER_GRUNT_SPACE_CENTER_1, MossdeepCity_SpaceCenter_1F_Text_Grunt1Intro, MossdeepCity_SpaceCenter_1F_Text_Grunt1Defeat msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt1PostBattle, MSGBOX_AUTOCLOSE end MossdeepCity_SpaceCenter_1F_EventScript_Grunt4:: trainerbattle_single TRAINER_GRUNT_SPACE_CENTER_4, MossdeepCity_SpaceCenter_1F_Text_Grunt4Intro, MossdeepCity_SpaceCenter_1F_Text_Grunt4Defeat msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt4PostBattle, MSGBOX_AUTOCLOSE end MossdeepCity_SpaceCenter_1F_EventScript_Grunt2:: lock faceplayer goto_if_set FLAG_DEFEATED_GRUNT_SPACE_CENTER_1F, MossdeepCity_SpaceCenter_1F_EventScript_Grunt2Defeated msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt2Intro, MSGBOX_DEFAULT trainerbattle_no_intro TRAINER_GRUNT_SPACE_CENTER_2, MossdeepCity_SpaceCenter_1F_Text_Grunt2Defeat setflag FLAG_DEFEATED_GRUNT_SPACE_CENTER_1F copyobjectxytoperm LOCALID_STAIR_GRUNT switch VAR_FACING case DIR_WEST, MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsWest #ifdef BUGFIX case DIR_EAST, MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast #else case DIR_WEST, MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast #endif applymovement LOCALID_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairs waitmovement 0 setvar VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 2 release end MossdeepCity_SpaceCenter_1F_EventScript_Grunt2Defeated:: msgbox MossdeepCity_SpaceCenter_1F_Text_Grunt2PostBattle, MSGBOX_DEFAULT release end MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsWest:: applymovement LOCALID_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsWest waitmovement 0 setvar VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 1 release end @ Functionally unused by mistake. The movement is handled anyway after the switch (see above) @ This also means VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE can never be 3 MossdeepCity_SpaceCenter_1F_EventScript_MoveGruntFromStairsEast:: applymovement LOCALID_STAIR_GRUNT, MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsEast waitmovement 0 setvar VAR_MOSSDEEP_SPACE_CENTER_STAIR_GUARD_STATE, 3 release end MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsWest: lock_facing_direction walk_left unlock_facing_direction step_end @ Functionally unused. See above MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairsEast: lock_facing_direction walk_right unlock_facing_direction step_end @ This was meant to only handle the player facing North, but by mistake(?) it also handles the player facing East MossdeepCity_SpaceCenter_1F_Movement_MoveGruntFromStairs: face_left lock_facing_direction walk_right unlock_facing_direction step_end MossdeepCity_SpaceCenter_1F_Text_RocketLaunchImminent: .string "The rocket's launch is imminent!$" MossdeepCity_SpaceCenter_1F_Text_SuccessfulLaunchNumber: .string "The rocket launched safely!\n" .string "That's successful launch no. {STR_VAR_1}!$" MossdeepCity_SpaceCenter_1F_Text_HaywireButRocketLaunchImminent: .string "I know that things are a little\n" .string "haywire right now, but…\p" .string "The rocket's launch is imminent!$" MossdeepCity_SpaceCenter_1F_Text_HaywireButSuccessfulLaunchNumber: .string "I know that things are a little\n" .string "haywire right now, but…\p" .string "The rocket launched safely!\n" .string "That's successful launch no. {STR_VAR_1}!$" MossdeepCity_SpaceCenter_1F_Text_RocketLaunchDemandsPerfection: .string "A rocket launch demands perfection.\n" .string "Not even a 1% margin of error is allowed.\p" .string "Even if it's 99% okay, the whole thing\n" .string "is useless if 1% happens to be no good.\p" .string "Despite that, we never stop trying.\n" .string "Why? It's a dream that never ends.$" MossdeepCity_SpaceCenter_1F_Text_MagmaHaveSightsOnSpaceCenter: .string "Those Magma thugs have their sights\n" .string "set on our Space Center.\p" .string "But we can't allow anything that minor\n" .string "to interfere with our rocket launch!$" MossdeepCity_SpaceCenter_1F_Text_FoundThisYouCanHaveIt: .string "I was taking a stroll down the beach\n" .string "when I found this.\p" .string "It's not anything I need, so you can\n" .string "have it.$" MossdeepCity_SpaceCenter_1F_Text_HoennFamousForMeteorShowers: .string "The Hoenn region has been famous for \n" .string "its meteor showers for a long time.$" MossdeepCity_SpaceCenter_1F_Text_MagmaCantStealFuelTakeThis: .string "Team Magma can't be allowed to steal\n" .string "the rocket fuel.\p" .string "Oh, by the way, you can have this stone\n" .string "I found on the beach.$" MossdeepCity_SpaceCenter_1F_Text_CantStrollOnBeachWithMagma: .string "With Team Magma around, I guess\n" .string "strolls on the beach aren't safe.$" MossdeepCity_SpaceCenter_1F_Text_DidPokemonComeFromSpace: .string "Some people claim that Pokémon came\n" .string "from space. Could it be true?$" MossdeepCity_SpaceCenter_1F_Text_AquaShouldBeatMagma: .string "Team Aqua should take care of\n" .string "Team Magma!\p" .string "But if they did that, Team Aqua will\n" .string "become bold and brazen, won't they?$" MossdeepCity_SpaceCenter_1F_Text_RocketsBoggleMyMind: .string "A giant chunk of metal bursts through\n" .string "the skies and flies into space…\p" .string "It boggles my mind!$" MossdeepCity_SpaceCenter_1F_Text_MagmaWantsToSpoilMyDream: .string "A giant chunk of metal bursts through\n" .string "the skies and flies into space…\p" .string "But Team Magma wants to spoil\n" .string "that dream of mine!\p" .string "I'm not having any of that!$" MossdeepCity_SpaceCenter_1F_Text_StevenMagmaCantBeAllowedToTakeFuel: .string "Steven: {PLAYER}{KUN}, have you read that\n" .string "proclamation already?\p" .string "Team Magma is coming after the rocket\n" .string "fuel on this island.\p" .string "I don't know what they'd need it for,\n" .string "but they can't be allowed to take it.\p" .string "I'll keep an eye on things for\n" .string "a while longer.\p" .string "In the meantime, why don't you go\n" .string "check out the town?$" MossdeepCity_SpaceCenter_1F_Text_Grunt3Intro: .string "As promised, we've come for\n" .string "the rocket fuel!$" MossdeepCity_SpaceCenter_1F_Text_Grunt3Defeat: .string "Ran out of fuel…$" MossdeepCity_SpaceCenter_1F_Text_Grunt3PostBattle: .string "Don't think you're on a roll just\n" .string "because you've beaten me!$" MossdeepCity_SpaceCenter_1F_Text_Grunt1Intro: .string "We gave you fair warning!\n" .string "There's nothing sneaky about us!$" MossdeepCity_SpaceCenter_1F_Text_Grunt1Defeat: .string "Grrr…\n" .string "We should've used sneaky treachery…$" MossdeepCity_SpaceCenter_1F_Text_Grunt1PostBattle: .string "Okay, I get it already! The next time,\n" .string "we'll come unannounced.$" MossdeepCity_SpaceCenter_1F_Text_Grunt4Intro: .string "The rocket fuel the Space Center has\n" .string "in storage--that's what we're after.\p" .string "We mean to take every last bit of it!$" MossdeepCity_SpaceCenter_1F_Text_Grunt4Defeat: .string "Please, can you spare some fuel?\n" .string "Even a chintzy cup will do!$" MossdeepCity_SpaceCenter_1F_Text_Grunt4PostBattle: .string "What are we going to do with\n" .string "the rocket fuel?\p" .string "How would I know?\n" .string "Ask our leader upstairs!$" MossdeepCity_SpaceCenter_1F_Text_Grunt2Intro: .string "Our leader said no one, but no one,\n" .string "gets past me!$" MossdeepCity_SpaceCenter_1F_Text_Grunt2Defeat: .string "Ack! Ack! Aaack!$" MossdeepCity_SpaceCenter_1F_Text_Grunt2PostBattle: .string "Please, tell our leader that\n" .string "I never abandoned my post.\l" .string "That I stayed to the bitter end…$" MossdeepCity_SpaceCenter_1F_Text_MagmaIntentToStealNotice: .string "This is…\n" .string "An intent-to-steal notice?\p" .string "“To the staff of the Space Center:\n" .string "How are you? We are doing fine.\p" .string "“We will soon visit you to take your\n" .string "rocket fuel.\p" .string "“Please don't try to stop us.\n" .string "We will take the fuel no matter what.\p" .string "“Let there be more land!\n" .string " Team Magma”$"