.set LOCALID_POLICEMAN, 1 .set LOCALID_GRUNT, 2 .set LOCALID_SLOWBRO, 5 .set LOCALID_LASS, 6 .set LOCALID_RIVAL, 8 .set LOCALID_WOMAN, 11 CeruleanCity_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, CeruleanCity_OnTransition .byte 0 CeruleanCity_OnTransition:: setworldmapflag FLAG_WORLD_MAP_CERULEAN_CITY call_if_unset FLAG_GOT_SS_TICKET, CeruleanCity_EventScript_BlockExits end CeruleanCity_EventScript_BlockExits:: setobjectxyperm LOCALID_POLICEMAN, 30, 12 setobjectxyperm LOCALID_SLOWBRO, 26, 31 setobjectxyperm LOCALID_LASS, 27, 31 return CeruleanCity_EventScript_RivalTriggerLeft:: lockall setvar VAR_TEMP_1, 0 goto CeruleanCity_EventScript_Rival end CeruleanCity_EventScript_RivalTriggerMid:: lockall setvar VAR_TEMP_1, 1 setobjectxyperm LOCALID_RIVAL, 23, 0 goto CeruleanCity_EventScript_Rival end CeruleanCity_EventScript_RivalTriggerRight:: lockall setvar VAR_TEMP_1, 2 setobjectxyperm LOCALID_RIVAL, 24, 0 goto CeruleanCity_EventScript_Rival end CeruleanCity_EventScript_Rival:: textcolor NPC_TEXT_COLOR_MALE setvar VAR_MAP_SCENE_ROUTE22, 2 playbgm MUS_ENCOUNTER_RIVAL, 0 addobject LOCALID_RIVAL applymovement LOCALID_RIVAL, CeruleanCity_Movement_RivalEnter waitmovement 0 msgbox CeruleanCity_Text_RivalIntro setvar VAR_LAST_TALKED, LOCALID_RIVAL call_if_eq VAR_STARTER_MON, 2, CeruleanCity_EventScript_RivalSquirtle call_if_eq VAR_STARTER_MON, 1, CeruleanCity_EventScript_RivalBulbasaur call_if_eq VAR_STARTER_MON, 0, CeruleanCity_EventScript_RivalCharmander famechecker FAMECHECKER_BILL, 0 msgbox CeruleanCity_Text_RivalPostBattle closemessage playbgm MUS_RIVAL_EXIT, 0 call_if_eq VAR_TEMP_1, 0, CeruleanCity_EventScript_RivalStartExit call_if_eq VAR_TEMP_1, 1, CeruleanCity_EventScript_RivalStartExit call_if_eq VAR_TEMP_1, 2, CeruleanCity_EventScript_RivalStartExitRight msgbox CeruleanCity_Text_OhRightLittlePresentAsFavor setvar VAR_MAP_SCENE_CERULEAN_CITY_RIVAL, 1 setflag FLAG_GOT_FAME_CHECKER giveitem ITEM_FAME_CHECKER msgbox CeruleanCity_Text_ExplainFameCheckerSmellYa closemessage applymovement LOCALID_RIVAL, CeruleanCity_Movement_RivalExit waitmovement 0 fadedefaultbgm removeobject LOCALID_RIVAL releaseall end CeruleanCity_EventScript_RivalSquirtle:: trainerbattle_no_intro TRAINER_RIVAL_CERULEAN_SQUIRTLE, CeruleanCity_Text_RivalDefeat return CeruleanCity_EventScript_RivalBulbasaur:: trainerbattle_no_intro TRAINER_RIVAL_CERULEAN_BULBASAUR, CeruleanCity_Text_RivalDefeat return CeruleanCity_EventScript_RivalCharmander:: trainerbattle_no_intro TRAINER_RIVAL_CERULEAN_CHARMANDER, CeruleanCity_Text_RivalDefeat return CeruleanCity_EventScript_RivalStartExit:: applymovement OBJ_EVENT_ID_PLAYER, CeruleanCity_Movement_PlayerWatchRivalExit applymovement LOCALID_RIVAL, CeruleanCity_Movement_RivalStartExit waitmovement 0 return CeruleanCity_EventScript_RivalStartExitRight:: applymovement OBJ_EVENT_ID_PLAYER, CeruleanCity_Movement_PlayerWatchRivalExitRight applymovement LOCALID_RIVAL, CeruleanCity_Movement_RivalStartExitRight waitmovement 0 return CeruleanCity_Movement_PlayerWatchRivalExit:: delay_16 delay_8 walk_in_place_faster_right delay_16 walk_in_place_faster_down step_end CeruleanCity_Movement_PlayerWatchRivalExitRight:: delay_16 delay_8 walk_in_place_faster_left delay_16 walk_in_place_faster_down step_end CeruleanCity_Movement_RivalEnter:: walk_down walk_down walk_down walk_down walk_down step_end CeruleanCity_Movement_RivalStartExit:: walk_right walk_down walk_down walk_down walk_down walk_down walk_down walk_down delay_16 delay_16 walk_left walk_up walk_up walk_up walk_up walk_up step_end CeruleanCity_Movement_RivalStartExitRight:: walk_left walk_down walk_down walk_down walk_down walk_down walk_down walk_down delay_16 delay_16 walk_right walk_up walk_up walk_up walk_up walk_up step_end CeruleanCity_Movement_RivalExit:: walk_down walk_down walk_down walk_down walk_down walk_down walk_down step_end CeruleanCity_EventScript_Grunt:: lock faceplayer goto_if_defeated TRAINER_TEAM_ROCKET_GRUNT_5, CeruleanCity_EventScript_GruntDefeated message CeruleanCity_Text_GruntIntro waitmessage playbgm MUS_ENCOUNTER_ROCKET, 0 waitbuttonpress trainerbattle_no_intro TRAINER_TEAM_ROCKET_GRUNT_5, CeruleanCity_Text_GruntDefeat setvar VAR_MAP_SCENE_CERULEAN_CITY_ROCKET, 1 goto CeruleanCity_EventScript_GruntDefeated end CeruleanCity_EventScript_GruntDefeated:: msgbox CeruleanCity_Text_OkayIllReturnStolenTM checkitemspace ITEM_TM28 goto_if_eq VAR_RESULT, FALSE, CeruleanCity_EventScript_NoRoomForTM28 giveitem_msg CeruleanCity_Text_RecoveredTM28FromGrunt, ITEM_TM28 msgbox CeruleanCity_Text_BetterGetMovingBye closemessage fadescreen FADE_TO_BLACK removeobject LOCALID_GRUNT fadescreen FADE_FROM_BLACK setflag FLAG_GOT_TM28_FROM_ROCKET release end CeruleanCity_EventScript_NoRoomForTM28:: textcolor NPC_TEXT_COLOR_MALE msgbox CeruleanCity_Text_MakeRoomForThisCantRun release end CeruleanCity_EventScript_GruntTriggerTop:: lockall setvar VAR_TEMP_1, 0 applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterUp waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterDown waitmovement 0 goto CeruleanCity_EventScript_GruntTrigger end CeruleanCity_EventScript_GruntTriggerBottom:: lockall setvar VAR_TEMP_1, 1 applymovement LOCALID_GRUNT, Common_Movement_WalkInPlaceFasterDown waitmovement 0 applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterUp waitmovement 0 goto CeruleanCity_EventScript_GruntTrigger end CeruleanCity_EventScript_GruntTrigger:: textcolor NPC_TEXT_COLOR_MALE msgbox CeruleanCity_Text_GruntIntro setvar VAR_LAST_TALKED, LOCALID_GRUNT trainerbattle_no_intro TRAINER_TEAM_ROCKET_GRUNT_5, CeruleanCity_Text_GruntDefeat setvar VAR_MAP_SCENE_CERULEAN_CITY_ROCKET, 1 goto CeruleanCity_EventScript_GruntDefeated end CeruleanCity_EventScript_Policeman:: lock faceplayer msgbox CeruleanCity_Text_PeopleHereWereRobbed closemessage applymovement LOCALID_POLICEMAN, Common_Movement_FaceOriginalDirection waitmovement 0 release end CeruleanCity_EventScript_LittleBoy:: lock faceplayer goto_if_set FLAG_GOT_SS_TICKET, CeruleanCity_EventScript_LittleBoySlowbroMoved msgbox CeruleanCity_Text_IfSlowbroWasntThereCouldCutTree release end CeruleanCity_EventScript_LittleBoySlowbroMoved:: msgbox CeruleanCity_Text_YouCanCutDownSmallTrees release end CeruleanCity_EventScript_BaldingMan:: msgbox CeruleanCity_Text_PokemonEncyclopediaAmusing, MSGBOX_NPC end CeruleanCity_EventScript_Youngster:: msgbox CeruleanCity_Text_TrainerLifeIsToughIsntIt, MSGBOX_NPC end CeruleanCity_EventScript_CeruleanCaveGuard:: msgbox CeruleanCity_Text_ThisIsCeruleanCave, MSGBOX_NPC end CeruleanCity_EventScript_Woman:: lock faceplayer msgbox CeruleanCity_Text_WantBrightRedBicycle closemessage applymovement LOCALID_WOMAN, Common_Movement_FaceOriginalDirection waitmovement 0 release end CeruleanCity_EventScript_Lass:: lock random 3 copyvar VAR_0x8008, VAR_RESULT call_if_eq VAR_0x8008, 0, CeruleanCity_EventScript_SlowbroCommand1 call_if_eq VAR_0x8008, 1, CeruleanCity_EventScript_SlowbroCommand2 call_if_eq VAR_0x8008, 2, CeruleanCity_EventScript_SlowbroCommand3 waitmessage delay 40 playse SE_PIN applymovement LOCALID_SLOWBRO, Common_Movement_QuestionMark waitmovement 0 delay 30 call_if_eq VAR_0x8008, 0, CeruleanCity_EventScript_SlowbroFailed1 call_if_eq VAR_0x8008, 1, CeruleanCity_EventScript_SlowbroFailed2 call_if_eq VAR_0x8008, 2, CeruleanCity_EventScript_SlowbroFailed3 release end CeruleanCity_EventScript_SlowbroCommand1:: message CeruleanCity_Text_SlowbroUseSonicboom return CeruleanCity_EventScript_SlowbroCommand2:: message CeruleanCity_Text_SlowbroPunch return CeruleanCity_EventScript_SlowbroCommand3:: message CeruleanCity_Text_SlowbroWithdraw return CeruleanCity_EventScript_SlowbroFailed1:: msgbox CeruleanCity_Text_SlowbroPayAttention return CeruleanCity_EventScript_SlowbroFailed2:: msgbox CeruleanCity_Text_NoYouBlewItAgain return CeruleanCity_EventScript_SlowbroFailed3:: msgbox CeruleanCity_Text_HardToControlMonsObedience return CeruleanCity_EventScript_Slowbro:: lock random 4 copyvar VAR_0x8008, VAR_RESULT call_if_eq VAR_0x8008, 0, CeruleanCity_EventScript_SlowbroText1 call_if_eq VAR_0x8008, 1, CeruleanCity_EventScript_SlowbroText2 call_if_eq VAR_0x8008, 2, CeruleanCity_EventScript_SlowbroText3 call_if_eq VAR_0x8008, 3, CeruleanCity_EventScript_SlowbroText4 release end CeruleanCity_EventScript_SlowbroText1:: msgbox CeruleanCity_Text_SlowbroTookSnooze return CeruleanCity_EventScript_SlowbroText2:: msgbox CeruleanCity_Text_SlowbroLoafingAround return CeruleanCity_EventScript_SlowbroText3:: msgbox CeruleanCity_Text_SlowbroTurnedAway return CeruleanCity_EventScript_SlowbroText4:: msgbox CeruleanCity_Text_SlowbroIgnoredOrders return CeruleanCity_EventScript_CitySign:: msgbox CeruleanCity_Text_CitySign, MSGBOX_SIGN end CeruleanCity_EventScript_TrainerTips:: msgbox CeruleanCity_Text_TrainerTipsHeldItems, MSGBOX_SIGN end CeruleanCity_EventScript_BikeShopSign:: msgbox CeruleanCity_Text_BikeShopSign, MSGBOX_SIGN end CeruleanCity_EventScript_GymSign:: lockall famechecker FAMECHECKER_MISTY, 0 msgbox CeruleanCity_Text_GymSign releaseall end