.equ FOUND_FIRST_SWITCH, FLAG_TEMP_1 .equ SWITCH1_ID, VAR_0x8004 .equ SWITCH2_ID, VAR_0x8005 .equ TRASH_CAN_ID, VAR_0x8008 VermilionCity_Gym_MapScripts:: @ 816B69E map_script MAP_SCRIPT_ON_LOAD, VermilionCity_Gym_OnLoad map_script MAP_SCRIPT_ON_TRANSITION, VermilionCity_Gym_OnTransition .byte 0 VermilionCity_Gym_OnLoad:: @ 816B6A9 call_if_set FOUND_FIRST_SWITCH, VermilionCity_Gym_EventScript_SetOneBeamOff call_if_set FLAG_FOUND_BOTH_VERMILION_GYM_SWITCHES, VermilionCity_Gym_EventScript_SetBeamsOff end VermilionCity_Gym_EventScript_SetOneBeamOff:: @ 816B6BC setmetatile 3, 6, METATILE_VermilionGym_Beam_Node_TopLeft_HalfOn, 1 setmetatile 4, 6, METATILE_VermilionGym_Beam_Node_TopLeft_Edge_HalfOn, 1 setmetatile 5, 6, METATILE_VermilionGym_Beam_MidTop_HalfOn, 1 setmetatile 6, 6, METATILE_VermilionGym_Beam_Node_TopRight_Edge_HalfOn, 1 setmetatile 7, 6, METATILE_VermilionGym_Beam_Node_TopRight_HalfOn, 1 setmetatile 3, 7, METATILE_VermilionGym_Beam_Node_BottomLeft_HalfOn, 1 setmetatile 4, 7, METATILE_VermilionGym_Beam_Node_BottomLeft_Edge_HalfOn, 1 setmetatile 5, 7, METATILE_VermilionGym_Beam_MidBottom_HalfOn, 1 setmetatile 6, 7, METATILE_VermilionGym_Beam_Node_BottomRight_Edge_HalfOn, 1 setmetatile 7, 7, METATILE_VermilionGym_Beam_Node_BottomRight_HalfOn, 1 return VermilionCity_Gym_EventScript_SetBeamsOff:: @ 816B717 setmetatile 3, 6, METATILE_VermilionGym_Beam_Node_TopLeft_Off, 1 setmetatile 4, 6, METATILE_VermilionGym_Beam_Node_TopLeft_Edge_Off, 0 setmetatile 5, 6, METATILE_VermilionGym_Floor, 0 setmetatile 6, 6, METATILE_VermilionGym_Beam_Node_TopRight_Edge_Off, 0 setmetatile 7, 6, METATILE_VermilionGym_Beam_Node_TopRight_Off, 1 setmetatile 3, 7, METATILE_VermilionGym_Beam_Node_BottomLeft_Off, 1 setmetatile 4, 7, METATILE_VermilionGym_Beam_Node_BottomLeft_Edge_Off, 0 setmetatile 5, 7, METATILE_VermilionGym_Floor, 0 setmetatile 6, 7, METATILE_VermilionGym_Beam_Node_BottomRight_Edge_Off, 0 setmetatile 7, 7, METATILE_VermilionGym_Beam_Node_BottomRight_Off, 1 return VermilionCity_Gym_OnTransition:: @ 816B772 call VermilionCity_Gym_EventScript_InitTrashCans end VermilionCity_Gym_EventScript_InitTrashCans:: @ 816B778 goto_if_set FLAG_FOUND_BOTH_VERMILION_GYM_SWITCHES, EventScript_Return special SetVermilionTrashCans copyvar VAR_TEMP_0, SWITCH1_ID copyvar VAR_TEMP_1, SWITCH2_ID return VermilionCity_Gym_EventScript_TrashCan1:: @ 816B78F lockall setvar TRASH_CAN_ID, 1 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan2:: @ 816B79B lockall setvar TRASH_CAN_ID, 2 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan3:: @ 816B7A7 lockall setvar TRASH_CAN_ID, 3 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan4:: @ 816B7B3 lockall setvar TRASH_CAN_ID, 4 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan5:: @ 816B7BF lockall setvar TRASH_CAN_ID, 5 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan6:: @ 816B7CB lockall setvar TRASH_CAN_ID, 6 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan7:: @ 816B7D7 lockall setvar TRASH_CAN_ID, 7 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan8:: @ 816B7E3 lockall setvar TRASH_CAN_ID, 8 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan9:: @ 816B7EF lockall setvar TRASH_CAN_ID, 9 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan10:: @ 816B7FB lockall setvar TRASH_CAN_ID, 10 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan11:: @ 816B807 lockall setvar TRASH_CAN_ID, 11 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan12:: @ 816B813 lockall setvar TRASH_CAN_ID, 12 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan13:: @ 816B81F lockall setvar TRASH_CAN_ID, 13 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan14:: @ 816B82B lockall setvar TRASH_CAN_ID, 14 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan15:: @ 816B837 lockall setvar TRASH_CAN_ID, 15 goto VermilionCity_Gym_EventScript_TrashCan end VermilionCity_Gym_EventScript_TrashCan:: @ 816B843 goto_if_questlog EventScript_ReleaseEnd special QuestLog_CutRecording copyvar SWITCH1_ID, VAR_TEMP_0 copyvar SWITCH2_ID, VAR_TEMP_1 goto_if_set FLAG_FOUND_BOTH_VERMILION_GYM_SWITCHES, VermilionCity_Gym_EventScript_LocksAlreadyOpen goto_if_set FOUND_FIRST_SWITCH, VermilionCity_Gym_EventScript_TrySwitchTwo compare SWITCH1_ID, TRASH_CAN_ID goto_if_eq VermilionCity_Gym_EventScript_FoundSwitchOne msgbox VermilionCity_Gym_Text_NopeOnlyTrashHere releaseall end VermilionCity_Gym_EventScript_FoundSwitchOne:: @ 816B885 msgbox VermilionCity_Gym_Text_SwitchUnderTrashFirstLockOpened playse SE_PIN waitse call VermilionCity_Gym_EventScript_SetOneBeamOff special DrawWholeMapView setflag FOUND_FIRST_SWITCH releaseall end VermilionCity_Gym_EventScript_TrySwitchTwo:: @ 816B89E compare SWITCH2_ID, TRASH_CAN_ID goto_if_eq VermilionCity_Gym_EventScript_FoundSwitchTwo msgbox VermilionCity_Gym_Text_OnlyTrashLocksWereReset clearflag FOUND_FIRST_SWITCH special SetVermilionTrashCans copyvar VAR_TEMP_0, SWITCH1_ID copyvar VAR_TEMP_1, SWITCH2_ID call VermilionCity_Gym_EventScript_SetBeamsOn special DrawWholeMapView releaseall end VermilionCity_Gym_EventScript_FoundSwitchTwo:: @ 816B8CB msgbox VermilionCity_Gym_Text_SecondLockOpened closemessage call VermilionCity_Gym_EventScript_SetBeamsOff special DrawWholeMapView playse SE_UNLOCK waitse setflag FLAG_FOUND_BOTH_VERMILION_GYM_SWITCHES releaseall end VermilionCity_Gym_EventScript_LocksAlreadyOpen:: @ 816B8E5 msgbox VermilionCity_Gym_Text_NopeOnlyTrashHere releaseall end VermilionCity_Gym_EventScript_SetBeamsOn:: @ 816B8EF setmetatile 3, 6, METATILE_VermilionGym_Beam_Node_TopLeft_On, 1 setmetatile 4, 6, METATILE_VermilionGym_Beam_Node_TopLeft_Edge_On, 1 setmetatile 5, 6, METATILE_VermilionGym_Beam_MidTop, 1 setmetatile 6, 6, METATILE_VermilionGym_Beam_Node_TopRight_Edge_On, 1 setmetatile 7, 6, METATILE_VermilionGym_Beam_Node_TopRight_On, 1 setmetatile 3, 7, METATILE_VermilionGym_Beam_Node_BottomLeft_On, 1 setmetatile 4, 7, METATILE_VermilionGym_Beam_Node_BottomLeft_Edge_On, 1 setmetatile 5, 7, METATILE_VermilionGym_Beam_MidBottom, 1 setmetatile 6, 7, METATILE_VermilionGym_Beam_Node_BottomRight_Edge_On, 1 setmetatile 7, 7, METATILE_VermilionGym_Beam_Node_BottomRight_On, 1 return VermilionCity_Gym_EventScript_LtSurge:: @ 816B94A famechecker FAMECHECKER_LTSURGE, FCPICKSTATE_COLORED, UpdatePickStateFromSpecialVar8005 trainerbattle_single TRAINER_LEADER_LT_SURGE, VermilionCity_Gym_Text_LtSurgeIntro, VermilionCity_Gym_Text_LtSurgeDefeat, VermilionCity_Gym_EventScript_DefeatedLtSurge, NO_MUSIC goto_if_unset FLAG_GOT_TM34_FROM_SURGE, VermilionCity_Gym_EventScript_GiveTM34 msgbox VermilionCity_Gym_Text_LtSurgePostBattle release end VermilionCity_Gym_EventScript_DefeatedLtSurge:: @ 816B97C famechecker FAMECHECKER_LTSURGE, 1 call_if_unset FLAG_GOT_HM05, VermilionCity_Gym_EventScript_ShowOaksAide clearflag FLAG_HIDE_FAME_CHECKER_LT_SURGE_JOURNAL setflag FLAG_DEFEATED_LT_SURGE setflag FLAG_BADGE03_GET set_gym_trainers 3 goto VermilionCity_Gym_EventScript_GiveTM34 end VermilionCity_Gym_EventScript_ShowOaksAide:: @ 816B9AB clearflag FLAG_HIDE_VERMILION_CITY_OAKS_AIDE return VermilionCity_Gym_EventScript_GiveTM34:: @ 816B9AF msgbox VermilionCity_Gym_Text_ExplainThunderBadgeTakeThis checkitemspace ITEM_TM34, 1 compare VAR_RESULT, FALSE goto_if_eq VermilionCity_Gym_EventScript_NoRoomForTM34 giveitem_msg VermilionCity_Gym_Text_ReceivedTM34FromLtSurge, ITEM_TM34 setflag FLAG_GOT_TM34_FROM_SURGE msgbox VermilionCity_Gym_Text_ExplainTM34 release end VermilionCity_Gym_EventScript_NoRoomForTM34:: @ 816B9F0 msgbox VermilionCity_Gym_Text_MakeRoomInYourBag release end VermilionCity_Gym_EventScript_Dwayne:: @ 816B9FA trainerbattle_single TRAINER_SAILOR_DWAYNE, VermilionCity_Gym_Text_DwayneIntro, VermilionCity_Gym_Text_DwayneDefeat famechecker FAMECHECKER_LTSURGE, 4 msgbox VermilionCity_Gym_Text_DwaynePostBattle, MSGBOX_AUTOCLOSE end VermilionCity_Gym_EventScript_Baily:: @ 816BA1E trainerbattle_single TRAINER_ENGINEER_BAILY, VermilionCity_Gym_Text_BailyIntro, VermilionCity_Gym_Text_BailyDefeat msgbox VermilionCity_Gym_Text_BailyPostBattle, MSGBOX_AUTOCLOSE end VermilionCity_Gym_EventScript_Tucker:: @ 816BA35 trainerbattle_single TRAINER_GENTLEMAN_TUCKER, VermilionCity_Gym_Text_TuckerIntro, VermilionCity_Gym_Text_TuckerDefeat, VermilionCity_Gym_EventScript_DefeatedTucker famechecker FAMECHECKER_LTSURGE, 3 msgbox VermilionCity_Gym_Text_TuckerPostBattle, MSGBOX_AUTOCLOSE end VermilionCity_Gym_EventScript_DefeatedTucker:: @ 816BA5D famechecker FAMECHECKER_LTSURGE, 2 release end VermilionCity_Gym_EventScript_GymGuy:: @ 816BA6C lock faceplayer goto_if_set FLAG_DEFEATED_LT_SURGE, VermilionCity_Gym_EventScript_GymGuyPostVictory msgbox VermilionCity_Gym_Text_GymGuyAdvice release end VermilionCity_Gym_EventScript_GymGuyPostVictory:: @ 816BA81 msgbox VermilionCity_Gym_Text_GymGuyPostVictory release end VermilionCity_Gym_EventScript_GymStatue:: @ 816BA8B lockall goto_if_set FLAG_BADGE03_GET, VermilionCity_Gym_EventScript_GymStatuePostVictory msgbox VermilionCity_Gym_Text_GymStatue releaseall end VermilionCity_Gym_EventScript_GymStatuePostVictory:: @ 816BA9F msgbox VermilionCity_Gym_Text_GymStatuePlayerWon releaseall end