.equ LOCALID_FERRY_SAILOR, 6 VermilionCity_MapScripts:: map_script MAP_SCRIPT_ON_TRANSITION, VermilionCity_OnTransition map_script MAP_SCRIPT_ON_FRAME_TABLE, VermilionCity_OnFrame .byte 0 VermilionCity_OnFrame:: map_script_2 VAR_MAP_SCENE_VERMILION_CITY, 2, VermilionCity_EventScript_ExitSSAnne .2byte 0 VermilionCity_EventScript_ExitSSAnne:: lockall applymovement OBJ_EVENT_ID_PLAYER, VermilionCity_Movement_ExitSSAnne waitmovement 0 setvar VAR_MAP_SCENE_VERMILION_CITY, 3 releaseall end VermilionCity_Movement_ExitSSAnne:: walk_up walk_up step_end VermilionCity_OnTransition:: setworldmapflag FLAG_WORLD_MAP_VERMILION_CITY call_if_set FLAG_TALKED_TO_OAKS_AIDE_IN_VERMILION, VermilionCity_EventScript_HideOaksAide end VermilionCity_EventScript_HideOaksAide:: setflag FLAG_HIDE_VERMILION_CITY_OAKS_AIDE return VermilionCity_EventScript_Woman:: msgbox VermilionCity_Text_GrimerMultipliesInSludge, MSGBOX_NPC end VermilionCity_EventScript_OldMan1:: lock faceplayer goto_if_eq VAR_MAP_SCENE_VERMILION_CITY, 3, VermilionCity_EventScript_OldMan1SSAnneLeft msgbox VermilionCity_Text_DidYouSeeSSAnneInHarbor release end VermilionCity_EventScript_OldMan1SSAnneLeft:: msgbox VermilionCity_Text_SSAnneHasDepartedForYear release end VermilionCity_EventScript_FerrySailor:: lock faceplayer goto_if_eq VAR_MAP_SCENE_VERMILION_CITY, 3, VermilionCity_EventScript_CheckSeagallopPresent msgbox VermilionCity_Text_WelcomeToTheSSAnne release end VermilionCity_EventScript_CheckHasMysticTicket:: goto_if_unset FLAG_ENABLE_SHIP_NAVEL_ROCK, EventScript_SetResultFalse checkitem ITEM_MYSTIC_TICKET goto_if_eq VAR_RESULT, FALSE, EventScript_SetResultFalse goto EventScript_SetResultTrue end VermilionCity_EventScript_CheckHasAuroraTicket:: goto_if_unset FLAG_ENABLE_SHIP_BIRTH_ISLAND, EventScript_SetResultFalse checkitem ITEM_AURORA_TICKET goto_if_eq VAR_RESULT, FALSE, EventScript_SetResultFalse goto EventScript_SetResultTrue end VermilionCity_EventScript_CheckSeagallopPresent:: setvar VAR_0x8004, SEAGALLOP_VERMILION_CITY goto_if_ge VAR_MAP_SCENE_ONE_ISLAND_POKEMON_CENTER_1F, 5, VermilionCity_EventScript_ChooseSeagallopDestRainbowPass goto_if_ge VAR_MAP_SCENE_ONE_ISLAND_POKEMON_CENTER_1F, 1, VermilionCity_EventScript_ChooseSeagallopDestTriPass msgbox VermilionCity_Text_TheShipSetSail release end VermilionCity_EventScript_ChooseSeagallopDestRainbowPass:: goto_if_questlog EventScript_ReleaseEnd special QuestLog_CutRecording call VermilionCity_EventScript_CheckHasMysticTicket goto_if_eq VAR_RESULT, TRUE, VermilionCity_EventScript_HasMysticTicket call VermilionCity_EventScript_CheckHasAuroraTicket goto_if_eq VAR_RESULT, TRUE, VermilionCity_EventScript_HasAuroraTicket setvar VAR_0x8004, SEAGALLOP_VERMILION_CITY message VermilionCity_Text_BoardSeagallopRainbowPass waitmessage goto EventScript_SeviiDestinationsPage1 end VermilionCity_EventScript_HasMysticTicket:: call VermilionCity_EventScript_CheckHasAuroraTicket goto_if_eq VAR_RESULT, TRUE, VermilionCity_EventScript_HasMysticAndAuroraTickets call_if_unset FLAG_SHOWN_MYSTIC_TICKET, VermilionCity_EventScript_ShowMysticTicket message VermilionCity_Text_BoardSeagallopFerry waitmessage multichoice 17, 6, MULTICHOICE_SEVII_NAVEL, FALSE switch VAR_RESULT case 0, EventScript_SeviiDestinationsPage1 case 1, EventScript_SailToNavelRock case 2, EventScript_CancelSail case 127, EventScript_CancelSail end VermilionCity_EventScript_ShowMysticTicket:: setflag FLAG_SHOWN_MYSTIC_TICKET msgbox VermilionCity_Text_OhMysticTicketTakeYouToNavelRock return VermilionCity_EventScript_HasAuroraTicket:: call_if_unset FLAG_SHOWN_AURORA_TICKET, VermilionCity_EventScript_ShowAuroraTicket message VermilionCity_Text_BoardSeagallopFerry waitmessage multichoice 13, 6, MULTICHOICE_SEVII_BIRTH, FALSE switch VAR_RESULT case 0, EventScript_SeviiDestinationsPage1 case 1, EventScript_SailToBirthIsland case 2, EventScript_CancelSail case 127, EventScript_CancelSail end VermilionCity_EventScript_ShowAuroraTicket:: setflag FLAG_SHOWN_AURORA_TICKET msgbox VermilionCity_Text_OhAuroraTicketTakeYouToBirthIsland return VermilionCity_EventScript_HasMysticAndAuroraTickets:: call_if_unset FLAG_SHOWN_MYSTIC_TICKET, VermilionCity_EventScript_ShowMysticTicket call_if_unset FLAG_SHOWN_AURORA_TICKET, VermilionCity_EventScript_ShowAuroraTicket message VermilionCity_Text_BoardSeagallopFerry waitmessage multichoice 13, 5, MULTICHOICE_SEVII_NAVEL_BIRTH, FALSE switch VAR_RESULT case 0, EventScript_SeviiDestinationsPage1 case 1, EventScript_SailToNavelRock case 2, EventScript_SailToBirthIsland case 3, EventScript_CancelSail case 127, EventScript_CancelSail end EventScript_SailToNavelRock:: msgbox VermilionCity_Text_Seagallop10Departing setvar VAR_0x8004, SEAGALLOP_VERMILION_CITY setvar VAR_0x8006, SEAGALLOP_NAVEL_ROCK goto EventScript_SetSail end EventScript_SailToBirthIsland:: msgbox VermilionCity_Text_Seagallop12Departing setvar VAR_0x8004, SEAGALLOP_VERMILION_CITY setvar VAR_0x8006, SEAGALLOP_BIRTH_ISLAND goto EventScript_SetSail end VermilionCity_EventScript_ChooseSeagallopDestTriPass:: message VermilionCity_Text_BoardSeagallopTriPass waitmessage setvar VAR_0x8004, SEAGALLOP_VERMILION_CITY multichoice 19, 5, MULTICHOICE_SEAGALLOP_123, FALSE switch VAR_RESULT case 0, EventScript_SailToOneIsland2 case 1, EventScript_SailToTwoIsland2 case 2, EventScript_SailToThreeIsland2 case 3, EventScript_CancelSail case 127, EventScript_CancelSail end @ Unreachable Vermilion_EventScript_Unused:: release end VermilionCity_EventScript_CheckTicketLeft:: lockall goto VermilionCity_EventScript_CheckTicket end VermilionCity_EventScript_CheckTicketRight:: lockall goto VermilionCity_EventScript_CheckTicket end VermilionCity_EventScript_ExitedTicketCheck:: lockall setvar VAR_VERMILION_CITY_TICKET_CHECK_TRIGGER, 0 releaseall end VermilionCity_EventScript_CheckTicket:: textcolor NPC_TEXT_COLOR_MALE applymovement LOCALID_FERRY_SAILOR, Common_Movement_WalkInPlaceFasterLeft applymovement OBJ_EVENT_ID_PLAYER, Common_Movement_WalkInPlaceFasterRight waitmovement 0 goto_if_eq VAR_MAP_SCENE_VERMILION_CITY, 3, VermilionCity_EventScript_CheckSeagallopPresentTrigger msgbox VermilionCity_Text_DoYouHaveATicket goto_if_unset FLAG_GOT_SS_TICKET, VermilionCity_EventScript_DontHaveSSTicket msgbox VermilionCity_Text_FlashedSSTicket setvar VAR_VERMILION_CITY_TICKET_CHECK_TRIGGER, 1 releaseall end VermilionCity_EventScript_DontHaveSSTicket:: msgbox VermilionCity_Text_DontHaveNeededSSTicket closemessage goto VermilionCity_EventScript_WalkUpPier end VermilionCity_EventScript_CheckSeagallopPresentTrigger:: setvar VAR_0x8004, SEAGALLOP_VERMILION_CITY goto_if_ge VAR_MAP_SCENE_ONE_ISLAND_POKEMON_CENTER_1F, 5, VermilionCity_EventScript_ChooseSeagallopDestRainbowPass goto_if_ge VAR_MAP_SCENE_ONE_ISLAND_POKEMON_CENTER_1F, 1, VermilionCity_EventScript_ChooseSeagallopDestTriPass msgbox VermilionCity_Text_TheShipSetSail closemessage goto VermilionCity_EventScript_WalkUpPier end VermilionCity_EventScript_Sailor:: msgbox VermilionCity_Text_SSAnneVisitsOnceAYear, MSGBOX_NPC end VermilionCity_EventScript_OaksAide:: lock faceplayer setflag FLAG_TALKED_TO_OAKS_AIDE_IN_VERMILION msgbox VermilionCity_Text_Route2AideHasPackageForYou release end VermilionCity_EventScript_OldMan2:: msgbox VermilionCity_Text_BuildingOnThisLand, MSGBOX_NPC end VermilionCity_EventScript_Machop:: lock faceplayer waitse playmoncry SPECIES_MACHOP, CRY_MODE_NORMAL msgbox VermilionCity_Text_Machop waitmoncry msgbox VermilionCity_Text_MachopStompingLandFlat release end VermilionCity_EventScript_CitySign:: msgbox VermilionCity_Text_CitySign, MSGBOX_SIGN end VermilionCity_EventScript_SnorlaxNotice:: msgbox VermilionCity_Text_SnorlaxBlockingRoute12, MSGBOX_SIGN end VermilionCity_EventScript_PokemonFanClubSign:: msgbox VermilionCity_Text_PokemonFanClubSign, MSGBOX_SIGN end VermilionCity_EventScript_GymSign:: lockall famechecker FAMECHECKER_LTSURGE, 0 msgbox VermilionCity_Text_GymSign releaseall end VermilionCity_EventScript_HarborSign:: msgbox VermilionCity_Text_VermilionHarbor, MSGBOX_SIGN end