summaryrefslogtreecommitdiff
path: root/data/maps
diff options
context:
space:
mode:
authorgarak <garakmon@gmail.com>2019-05-06 22:13:57 -0400
committergarak <garakmon@gmail.com>2019-05-09 13:46:28 -0400
commit4e5d818f89caae9153dd53ba321900e0d4e16c1e (patch)
tree889d43985efba48bcf0a9a210e1ec8c4b2b5fd9c /data/maps
parentc6673cc8fe233edfb716cf0e584b8b9e65655c92 (diff)
dump event scripts
Diffstat (limited to 'data/maps')
-rw-r--r--data/maps/BirthIsland_Exterior/scripts.inc132
-rw-r--r--data/maps/BirthIsland_Harbor/scripts.inc37
-rw-r--r--data/maps/CeladonCity/scripts.inc123
-rw-r--r--data/maps/CeladonCity_Condominiums_1F/scripts.inc78
-rw-r--r--data/maps/CeladonCity_Condominiums_2F/scripts.inc7
-rw-r--r--data/maps/CeladonCity_Condominiums_3F/scripts.inc64
-rw-r--r--data/maps/CeladonCity_Condominiums_Roof/scripts.inc7
-rw-r--r--data/maps/CeladonCity_Condominiums_RoofRoom/scripts.inc127
-rw-r--r--data/maps/CeladonCity_DepartmentStore_1F/scripts.inc17
-rw-r--r--data/maps/CeladonCity_DepartmentStore_2F/scripts.inc72
-rw-r--r--data/maps/CeladonCity_DepartmentStore_3F/scripts.inc61
-rw-r--r--data/maps/CeladonCity_DepartmentStore_4F/scripts.inc43
-rw-r--r--data/maps/CeladonCity_DepartmentStore_5F/scripts.inc70
-rw-r--r--data/maps/CeladonCity_DepartmentStore_Elevator/scripts.inc135
-rw-r--r--data/maps/CeladonCity_DepartmentStore_Roof/scripts.inc358
-rw-r--r--data/maps/CeladonCity_GameCorner/scripts.inc524
-rw-r--r--data/maps/CeladonCity_GameCorner_PrizeRoom/scripts.inc387
-rw-r--r--data/maps/CeladonCity_Gym/scripts.inc116
-rw-r--r--data/maps/CeladonCity_Hotel/scripts.inc22
-rw-r--r--data/maps/CeladonCity_House1/scripts.inc17
-rw-r--r--data/maps/CeladonCity_PokemonCenter_1F/scripts.inc30
-rw-r--r--data/maps/CeladonCity_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/CeladonCity_Restaurant/scripts.inc54
-rw-r--r--data/maps/CeruleanCave_1F/scripts.inc7
-rw-r--r--data/maps/CeruleanCave_2F/scripts.inc2
-rw-r--r--data/maps/CeruleanCave_B1F/scripts.inc70
-rw-r--r--data/maps/CeruleanCity/scripts.inc415
-rw-r--r--data/maps/CeruleanCity_BikeShop/scripts.inc92
-rw-r--r--data/maps/CeruleanCity_Gym/scripts.inc96
-rw-r--r--data/maps/CeruleanCity_House1/scripts.inc121
-rw-r--r--data/maps/CeruleanCity_House2/scripts.inc28
-rw-r--r--data/maps/CeruleanCity_House3/scripts.inc50
-rw-r--r--data/maps/CeruleanCity_House4/scripts.inc112
-rw-r--r--data/maps/CeruleanCity_House5/scripts.inc214
-rw-r--r--data/maps/CeruleanCity_Mart/scripts.inc41
-rw-r--r--data/maps/CeruleanCity_PokemonCenter_1F/scripts.inc41
-rw-r--r--data/maps/CeruleanCity_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/CinnabarIsland/scripts.inc384
-rw-r--r--data/maps/CinnabarIsland_Gym/scripts.inc816
-rw-r--r--data/maps/CinnabarIsland_Mart/scripts.inc39
-rw-r--r--data/maps/CinnabarIsland_PokemonCenter_1F/scripts.inc150
-rw-r--r--data/maps/CinnabarIsland_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/CinnabarIsland_PokemonLab_Entrance/scripts.inc37
-rw-r--r--data/maps/CinnabarIsland_PokemonLab_ExperimentRoom/scripts.inc362
-rw-r--r--data/maps/CinnabarIsland_PokemonLab_Lounge/scripts.inc103
-rw-r--r--data/maps/CinnabarIsland_PokemonLab_ResearchRoom/scripts.inc21
-rw-r--r--data/maps/DiglettsCave_B1F/scripts.inc7
-rw-r--r--data/maps/DiglettsCave_NorthEntrance/scripts.inc7
-rw-r--r--data/maps/DiglettsCave_SouthEntrance/scripts.inc7
-rw-r--r--data/maps/FiveIsland/scripts.inc22
-rw-r--r--data/maps/FiveIsland_Harbor/scripts.inc11
-rw-r--r--data/maps/FiveIsland_House1/scripts.inc7
-rw-r--r--data/maps/FiveIsland_House2/scripts.inc7
-rw-r--r--data/maps/FiveIsland_LostCave_Entrance/scripts.inc7
-rw-r--r--data/maps/FiveIsland_LostCave_Room1/scripts.inc8
-rw-r--r--data/maps/FiveIsland_LostCave_Room10/scripts.inc68
-rw-r--r--data/maps/FiveIsland_LostCave_Room11/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room12/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room13/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room14/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room2/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room3/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room4/scripts.inc8
-rw-r--r--data/maps/FiveIsland_LostCave_Room5/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room6/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room7/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room8/scripts.inc2
-rw-r--r--data/maps/FiveIsland_LostCave_Room9/scripts.inc2
-rw-r--r--data/maps/FiveIsland_Meadow/scripts.inc59
-rw-r--r--data/maps/FiveIsland_MemorialPillar/scripts.inc110
-rw-r--r--data/maps/FiveIsland_PokemonCenter_1F/scripts.inc25
-rw-r--r--data/maps/FiveIsland_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/FiveIsland_ResortGorgeous/scripts.inc46
-rw-r--r--data/maps/FiveIsland_ResortGorgeous_House/scripts.inc163
-rw-r--r--data/maps/FiveIsland_WaterLabyrinth/scripts.inc80
-rw-r--r--data/maps/FourIsland/scripts.inc194
-rw-r--r--data/maps/FourIsland_Harbor/scripts.inc11
-rw-r--r--data/maps/FourIsland_House1/scripts.inc7
-rw-r--r--data/maps/FourIsland_House2/scripts.inc2
-rw-r--r--data/maps/FourIsland_IcefallCave_1F/scripts.inc33
-rw-r--r--data/maps/FourIsland_IcefallCave_Entrance/scripts.inc7
-rw-r--r--data/maps/FourIsland_LoreleisHouse/scripts.inc39
-rw-r--r--data/maps/FourIsland_Mart/scripts.inc35
-rw-r--r--data/maps/FourIsland_PokemonCenter_1F/scripts.inc30
-rw-r--r--data/maps/FourIsland_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/FourIsland_PokemonDayCare/scripts.inc235
-rw-r--r--data/maps/FuchsiaCity/scripts.inc163
-rw-r--r--data/maps/FuchsiaCity_Building1/scripts.inc79
-rw-r--r--data/maps/FuchsiaCity_Gym/scripts.inc120
-rw-r--r--data/maps/FuchsiaCity_House1/scripts.inc23
-rw-r--r--data/maps/FuchsiaCity_House2/scripts.inc46
-rw-r--r--data/maps/FuchsiaCity_House3/scripts.inc68
-rw-r--r--data/maps/FuchsiaCity_Mart/scripts.inc38
-rw-r--r--data/maps/FuchsiaCity_PokemonCenter_1F/scripts.inc30
-rw-r--r--data/maps/FuchsiaCity_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/FuchsiaCity_SafariZone_Entrance/scripts.inc231
-rw-r--r--data/maps/FuchsiaCity_ZooBuilding/scripts.inc22
-rw-r--r--data/maps/IndigoPlateau_Exterior/scripts.inc167
-rw-r--r--data/maps/IndigoPlateau_PokemonCenter_1F/scripts.inc81
-rw-r--r--data/maps/IndigoPlateau_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/LavenderTown/scripts.inc57
-rw-r--r--data/maps/LavenderTown_House1/scripts.inc29
-rw-r--r--data/maps/LavenderTown_House2/scripts.inc81
-rw-r--r--data/maps/LavenderTown_Mart/scripts.inc46
-rw-r--r--data/maps/LavenderTown_PokemonCenter_1F/scripts.inc30
-rw-r--r--data/maps/LavenderTown_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/LavenderTown_VolunteerPokemonHouse/scripts.inc105
-rw-r--r--data/maps/MtEmber_Exterior/scripts.inc146
-rw-r--r--data/maps/MtEmber_RubyPath_B1F/scripts.inc2
-rw-r--r--data/maps/MtEmber_RubyPath_B1F_Stairs/scripts.inc2
-rw-r--r--data/maps/MtEmber_RubyPath_B2F/scripts.inc2
-rw-r--r--data/maps/MtEmber_RubyPath_B2F_Stairs/scripts.inc2
-rw-r--r--data/maps/MtEmber_RubyPath_B3F/scripts.inc17
-rw-r--r--data/maps/MtEmber_RubyPath_B4F/scripts.inc72
-rw-r--r--data/maps/MtEmber_RubyPath_B5F/scripts.inc38
-rw-r--r--data/maps/MtEmber_Summit/scripts.inc66
-rw-r--r--data/maps/MtEmber_SummitPath_1F/scripts.inc2
-rw-r--r--data/maps/MtEmber_SummitPath_2F/scripts.inc2
-rw-r--r--data/maps/MtEmber_SummitPath_3F/scripts.inc2
-rw-r--r--data/maps/MtMoon_1F/scripts.inc54
-rw-r--r--data/maps/MtMoon_B1F/scripts.inc2
-rw-r--r--data/maps/MtMoon_B2F/scripts.inc160
-rw-r--r--data/maps/NavelRock_1F/scripts.inc2
-rw-r--r--data/maps/NavelRock_B1F/scripts.inc2
-rw-r--r--data/maps/NavelRock_Base/scripts.inc91
-rw-r--r--data/maps/NavelRock_BasePath_B10F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B11F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B1F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B2F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B3F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B4F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B5F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B6F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B7F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B8F/scripts.inc2
-rw-r--r--data/maps/NavelRock_BasePath_B9F/scripts.inc2
-rw-r--r--data/maps/NavelRock_Exterior/scripts.inc7
-rw-r--r--data/maps/NavelRock_Fork/scripts.inc2
-rw-r--r--data/maps/NavelRock_Harbor/scripts.inc1
-rw-r--r--data/maps/NavelRock_Summit/scripts.inc130
-rw-r--r--data/maps/NavelRock_SummitPath_2F/scripts.inc2
-rw-r--r--data/maps/NavelRock_SummitPath_3F/scripts.inc2
-rw-r--r--data/maps/NavelRock_SummitPath_4F/scripts.inc2
-rw-r--r--data/maps/NavelRock_SummitPath_5F/scripts.inc2
-rw-r--r--data/maps/OneIsland/scripts.inc121
-rw-r--r--data/maps/OneIsland_Harbor/scripts.inc42
-rw-r--r--data/maps/OneIsland_House1/scripts.inc12
-rw-r--r--data/maps/OneIsland_House2/scripts.inc7
-rw-r--r--data/maps/OneIsland_KindleRoad/scripts.inc12
-rw-r--r--data/maps/OneIsland_KindleRoad_EmberSpa/scripts.inc66
-rw-r--r--data/maps/OneIsland_PokemonCenter_1F/scripts.inc658
-rw-r--r--data/maps/OneIsland_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/OneIsland_TreasureBeach/scripts.inc7
-rw-r--r--data/maps/PalletTown/scripts.inc527
-rw-r--r--data/maps/PalletTown_GarysHouse/scripts.inc217
-rw-r--r--data/maps/PalletTown_PlayersHouse_1F/scripts.inc66
-rw-r--r--data/maps/PalletTown_PlayersHouse_2F/scripts.inc59
-rw-r--r--data/maps/PalletTown_ProfessorOaksLab/scripts.inc1474
-rw-r--r--data/maps/PewterCity/scripts.inc1614
-rw-r--r--data/maps/PewterCity_Gym/scripts.inc110
-rw-r--r--data/maps/PewterCity_House1/scripts.inc34
-rw-r--r--data/maps/PewterCity_House2/scripts.inc12
-rw-r--r--data/maps/PewterCity_Mart/scripts.inc40
-rw-r--r--data/maps/PewterCity_Museum_1F/scripts.inc228
-rw-r--r--data/maps/PewterCity_Museum_2F/scripts.inc37
-rw-r--r--data/maps/PewterCity_PokemonCenter_1F/scripts.inc49
-rw-r--r--data/maps/PewterCity_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/PokemonLeague_AgathasRoom/scripts.inc110
-rw-r--r--data/maps/PokemonLeague_BrunosRoom/scripts.inc140
-rw-r--r--data/maps/PokemonLeague_ChampionsRoom/scripts.inc254
-rw-r--r--data/maps/PokemonLeague_HallOfFame/scripts.inc55
-rw-r--r--data/maps/PokemonLeague_LancesRoom/scripts.inc184
-rw-r--r--data/maps/PokemonLeague_LoreleisRoom/scripts.inc112
-rw-r--r--data/maps/PokemonMansion_1F/scripts.inc35
-rw-r--r--data/maps/PokemonMansion_2F/scripts.inc34
-rw-r--r--data/maps/PokemonMansion_3F/scripts.inc35
-rw-r--r--data/maps/PokemonMansion_B1F/scripts.inc35
-rw-r--r--data/maps/PokemonTower_1F/scripts.inc44
-rw-r--r--data/maps/PokemonTower_2F/scripts.inc111
-rw-r--r--data/maps/PokemonTower_3F/scripts.inc20
-rw-r--r--data/maps/PokemonTower_4F/scripts.inc20
-rw-r--r--data/maps/PokemonTower_5F/scripts.inc48
-rw-r--r--data/maps/PokemonTower_6F/scripts.inc56
-rw-r--r--data/maps/PokemonTower_7F/scripts.inc249
-rw-r--r--data/maps/PowerPlant/scripts.inc141
-rw-r--r--data/maps/RockTunnel_1F/scripts.inc54
-rw-r--r--data/maps/RockTunnel_B1F/scripts.inc50
-rw-r--r--data/maps/RocketHideout_B1F/scripts.inc69
-rw-r--r--data/maps/RocketHideout_B2F/scripts.inc8
-rw-r--r--data/maps/RocketHideout_B3F/scripts.inc14
-rw-r--r--data/maps/RocketHideout_B4F/scripts.inc145
-rw-r--r--data/maps/RocketHideout_Elevator/scripts.inc115
-rw-r--r--data/maps/Route1/scripts.inc42
-rw-r--r--data/maps/Route10/scripts.inc20
-rw-r--r--data/maps/Route10_PokemonCenter_1F/scripts.inc75
-rw-r--r--data/maps/Route10_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/Route11/scripts.inc7
-rw-r--r--data/maps/Route11_EastEntrance_1F/scripts.inc12
-rw-r--r--data/maps/Route11_EastEntrance_2F/scripts.inc109
-rw-r--r--data/maps/Route12/scripts.inc72
-rw-r--r--data/maps/Route12_FishingHouse/scripts.inc137
-rw-r--r--data/maps/Route12_NorthEntrance_1F/scripts.inc7
-rw-r--r--data/maps/Route12_NorthEntrance_2F/scripts.inc59
-rw-r--r--data/maps/Route13/scripts.inc17
-rw-r--r--data/maps/Route14/scripts.inc7
-rw-r--r--data/maps/Route15/scripts.inc7
-rw-r--r--data/maps/Route15_WestEntrance_1F/scripts.inc7
-rw-r--r--data/maps/Route15_WestEntrance_2F/scripts.inc64
-rw-r--r--data/maps/Route16/scripts.inc90
-rw-r--r--data/maps/Route16_House/scripts.inc47
-rw-r--r--data/maps/Route16_NorthEntrance_1F/scripts.inc123
-rw-r--r--data/maps/Route16_NorthEntrance_2F/scripts.inc66
-rw-r--r--data/maps/Route17/scripts.inc32
-rw-r--r--data/maps/Route18/scripts.inc31
-rw-r--r--data/maps/Route18_EastEntrance_1F/scripts.inc118
-rw-r--r--data/maps/Route18_EastEntrance_2F/scripts.inc55
-rw-r--r--data/maps/Route19/scripts.inc7
-rw-r--r--data/maps/Route2/scripts.inc12
-rw-r--r--data/maps/Route20/scripts.inc35
-rw-r--r--data/maps/Route21_North/scripts.inc2
-rw-r--r--data/maps/Route21_South/scripts.inc2
-rw-r--r--data/maps/Route22/scripts.inc266
-rw-r--r--data/maps/Route22_NorthEntrance/scripts.inc18
-rw-r--r--data/maps/Route23/scripts.inc129
-rw-r--r--data/maps/Route24/scripts.inc114
-rw-r--r--data/maps/Route25/scripts.inc12
-rw-r--r--data/maps/Route25_SeaCottage/scripts.inc337
-rw-r--r--data/maps/Route2_EastBuilding/scripts.inc51
-rw-r--r--data/maps/Route2_House/scripts.inc50
-rw-r--r--data/maps/Route2_ViridianForest_NorthEntrance/scripts.inc17
-rw-r--r--data/maps/Route2_ViridianForest_SouthEntrance/scripts.inc12
-rw-r--r--data/maps/Route3/scripts.inc12
-rw-r--r--data/maps/Route4/scripts.inc20
-rw-r--r--data/maps/Route4_PokemonCenter_1F/scripts.inc181
-rw-r--r--data/maps/Route4_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/Route5/scripts.inc7
-rw-r--r--data/maps/Route5_PokemonDayCare/scripts.inc2
-rw-r--r--data/maps/Route5_SouthEntrance/scripts.inc92
-rw-r--r--data/maps/Route6/scripts.inc7
-rw-r--r--data/maps/Route6_NorthEntrance/scripts.inc92
-rw-r--r--data/maps/Route7/scripts.inc7
-rw-r--r--data/maps/Route7_EastEntrance/scripts.inc92
-rw-r--r--data/maps/Route8/scripts.inc7
-rw-r--r--data/maps/Route8_WestEntrance/scripts.inc102
-rw-r--r--data/maps/Route9/scripts.inc7
-rw-r--r--data/maps/SSAnne_1F_Corridor/scripts.inc12
-rw-r--r--data/maps/SSAnne_1F_Room1/scripts.inc7
-rw-r--r--data/maps/SSAnne_1F_Room11/scripts.inc92
-rw-r--r--data/maps/SSAnne_1F_Room12/scripts.inc7
-rw-r--r--data/maps/SSAnne_1F_Room2/scripts.inc19
-rw-r--r--data/maps/SSAnne_1F_Room3/scripts.inc23
-rw-r--r--data/maps/SSAnne_1F_Room4/scripts.inc19
-rw-r--r--data/maps/SSAnne_1F_Room5/scripts.inc8
-rw-r--r--data/maps/SSAnne_1F_Room6/scripts.inc31
-rw-r--r--data/maps/SSAnne_1F_Room7/scripts.inc8
-rw-r--r--data/maps/SSAnne_2F_Corridor/scripts.inc187
-rw-r--r--data/maps/SSAnne_2F_Room1/scripts.inc15
-rw-r--r--data/maps/SSAnne_2F_Room2/scripts.inc14
-rw-r--r--data/maps/SSAnne_2F_Room3/scripts.inc12
-rw-r--r--data/maps/SSAnne_2F_Room4/scripts.inc14
-rw-r--r--data/maps/SSAnne_2F_Room5/scripts.inc12
-rw-r--r--data/maps/SSAnne_2F_Room6/scripts.inc12
-rw-r--r--data/maps/SSAnne_3F_Corridor/scripts.inc7
-rw-r--r--data/maps/SSAnne_B1F_Corridor/scripts.inc2
-rw-r--r--data/maps/SSAnne_B1F_Room1/scripts.inc14
-rw-r--r--data/maps/SSAnne_B1F_Room2/scripts.inc8
-rw-r--r--data/maps/SSAnne_B1F_Room3/scripts.inc8
-rw-r--r--data/maps/SSAnne_B1F_Room4/scripts.inc14
-rw-r--r--data/maps/SSAnne_B1F_Room5/scripts.inc18
-rw-r--r--data/maps/SSAnne_CaptainsOffice/scripts.inc59
-rw-r--r--data/maps/SSAnne_CaptainsOffice2/scripts.inc2
-rw-r--r--data/maps/SSAnne_CaptainsOffice3/scripts.inc201
-rw-r--r--data/maps/SSAnne_CaptainsOffice4/scripts.inc202
-rw-r--r--data/maps/SSAnne_CaptainsOffice5/scripts.inc35
-rw-r--r--data/maps/SSAnne_CaptainsOffice9/scripts.inc2
-rw-r--r--data/maps/SSAnne_Deck/scripts.inc29
-rw-r--r--data/maps/SSAnne_Exterior/scripts.inc67
-rw-r--r--data/maps/SSAnne_Kitchen/scripts.inc63
-rw-r--r--data/maps/SSAnne_Kitchen3/scripts.inc2
-rw-r--r--data/maps/SafariZone_Building1/scripts.inc12
-rw-r--r--data/maps/SafariZone_Building2/scripts.inc17
-rw-r--r--data/maps/SafariZone_Building3/scripts.inc17
-rw-r--r--data/maps/SafariZone_Building4/scripts.inc17
-rw-r--r--data/maps/SafariZone_Center/scripts.inc22
-rw-r--r--data/maps/SafariZone_East/scripts.inc17
-rw-r--r--data/maps/SafariZone_North/scripts.inc27
-rw-r--r--data/maps/SafariZone_SecretHouse/scripts.inc36
-rw-r--r--data/maps/SafariZone_West/scripts.inc22
-rw-r--r--data/maps/SaffronCity/scripts.inc2
-rw-r--r--data/maps/SaffronCity_Dojo/scripts.inc174
-rw-r--r--data/maps/SaffronCity_Duplicate/scripts.inc152
-rw-r--r--data/maps/SaffronCity_Gym/scripts.inc129
-rw-r--r--data/maps/SaffronCity_House1_1F/scripts.inc23
-rw-r--r--data/maps/SaffronCity_House1_2F/scripts.inc58
-rw-r--r--data/maps/SaffronCity_House2/scripts.inc28
-rw-r--r--data/maps/SaffronCity_House3/scripts.inc36
-rw-r--r--data/maps/SaffronCity_Mart/scripts.inc38
-rw-r--r--data/maps/SaffronCity_PokemonCenter_1F/scripts.inc41
-rw-r--r--data/maps/SaffronCity_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/SaffronCity_PokemonTrainerFanClub/scripts.inc492
-rw-r--r--data/maps/SeafoamIslands_1F/scripts.inc7
-rw-r--r--data/maps/SeafoamIslands_B1F/scripts.inc2
-rw-r--r--data/maps/SeafoamIslands_B2F/scripts.inc2
-rw-r--r--data/maps/SeafoamIslands_B3F/scripts.inc103
-rw-r--r--data/maps/SeafoamIslands_B4F/scripts.inc218
-rw-r--r--data/maps/SevenIsland/scripts.inc22
-rw-r--r--data/maps/SevenIsland_Harbor/scripts.inc11
-rw-r--r--data/maps/SevenIsland_House_Room1/scripts.inc194
-rw-r--r--data/maps/SevenIsland_House_Room2/scripts.inc79
-rw-r--r--data/maps/SevenIsland_Mart/scripts.inc46
-rw-r--r--data/maps/SevenIsland_PokemonCenter_1F/scripts.inc30
-rw-r--r--data/maps/SevenIsland_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/SevenIsland_SeavaultCanyon_TanobyKey/scripts.inc144
-rw-r--r--data/maps/SevenIsland_SevaultCanyon/scripts.inc7
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_Entrance/scripts.inc7
-rw-r--r--data/maps/SevenIsland_SevaultCanyon_House/scripts.inc89
-rw-r--r--data/maps/SevenIsland_TanobyRuins/scripts.inc2
-rw-r--r--data/maps/SevenIsland_TanobyRuins_DilfordChamber/scripts.inc7
-rw-r--r--data/maps/SevenIsland_TanobyRuins_LiptooChamber/scripts.inc7
-rw-r--r--data/maps/SevenIsland_TanobyRuins_MoneanChamber/scripts.inc8
-rw-r--r--data/maps/SevenIsland_TanobyRuins_RixyChamber/scripts.inc7
-rw-r--r--data/maps/SevenIsland_TanobyRuins_ScufibChamber/scripts.inc7
-rw-r--r--data/maps/SevenIsland_TanobyRuins_ViapoisChamber/scripts.inc7
-rw-r--r--data/maps/SevenIsland_TanobyRuins_WeepthChamber/scripts.inc7
-rw-r--r--data/maps/SevenIsland_TrainerTower/scripts.inc17
-rw-r--r--data/maps/SevenIsland_TrainerTower_1F/scripts.inc60
-rw-r--r--data/maps/SevenIsland_TrainerTower_2F/scripts.inc25
-rw-r--r--data/maps/SevenIsland_TrainerTower_3F/scripts.inc25
-rw-r--r--data/maps/SevenIsland_TrainerTower_4F/scripts.inc25
-rw-r--r--data/maps/SevenIsland_TrainerTower_5F/scripts.inc25
-rw-r--r--data/maps/SevenIsland_TrainerTower_6F/scripts.inc25
-rw-r--r--data/maps/SevenIsland_TrainerTower_7F/scripts.inc25
-rw-r--r--data/maps/SevenIsland_TrainerTower_8F/scripts.inc25
-rw-r--r--data/maps/SevenIsland_TrainerTower_Elevator/scripts.inc87
-rw-r--r--data/maps/SevenIsland_TrainerTower_Lobby/scripts.inc263
-rw-r--r--data/maps/SevenIsland_TrainerTower_Roof/scripts.inc8
-rw-r--r--data/maps/SilphCo_10F/scripts.inc41
-rw-r--r--data/maps/SilphCo_11F/scripts.inc160
-rw-r--r--data/maps/SilphCo_1F/scripts.inc17
-rw-r--r--data/maps/SilphCo_2F/scripts.inc45
-rw-r--r--data/maps/SilphCo_3F/scripts.inc43
-rw-r--r--data/maps/SilphCo_4F/scripts.inc49
-rw-r--r--data/maps/SilphCo_5F/scripts.inc72
-rw-r--r--data/maps/SilphCo_6F/scripts.inc111
-rw-r--r--data/maps/SilphCo_7F/scripts.inc282
-rw-r--r--data/maps/SilphCo_8F/scripts.inc47
-rw-r--r--data/maps/SilphCo_9F/scripts.inc57
-rw-r--r--data/maps/SilphCo_Elevator/scripts.inc190
-rw-r--r--data/maps/SixIsland/scripts.inc22
-rw-r--r--data/maps/SixIsland_DottedHole_B1F/scripts.inc2
-rw-r--r--data/maps/SixIsland_DottedHole_B2F/scripts.inc2
-rw-r--r--data/maps/SixIsland_DottedHole_B3F/scripts.inc2
-rw-r--r--data/maps/SixIsland_DottedHole_SapphireRoom/scripts.inc306
-rw-r--r--data/maps/SixIsland_GreenPath/scripts.inc12
-rw-r--r--data/maps/SixIsland_Harbor/scripts.inc11
-rw-r--r--data/maps/SixIsland_House/scripts.inc7
-rw-r--r--data/maps/SixIsland_Mart/scripts.inc35
-rw-r--r--data/maps/SixIsland_OutcastIsland/scripts.inc8
-rw-r--r--data/maps/SixIsland_PokemonCenter_1F/scripts.inc82
-rw-r--r--data/maps/SixIsland_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/SixIsland_RuinValley/scripts.inc52
-rw-r--r--data/maps/SixIsland_WaterPath/scripts.inc12
-rw-r--r--data/maps/SixIsland_WaterPath_House1/scripts.inc101
-rw-r--r--data/maps/SixIsland_WaterPath_House2/scripts.inc7
-rw-r--r--data/maps/ThreeIsland/scripts.inc443
-rw-r--r--data/maps/ThreeIsland_BerryForest/scripts.inc74
-rw-r--r--data/maps/ThreeIsland_BondBridge/scripts.inc12
-rw-r--r--data/maps/ThreeIsland_DunsparceTunnel/scripts.inc62
-rw-r--r--data/maps/ThreeIsland_Harbor/scripts.inc11
-rw-r--r--data/maps/ThreeIsland_House1/scripts.inc16
-rw-r--r--data/maps/ThreeIsland_House2/scripts.inc18
-rw-r--r--data/maps/ThreeIsland_House3/scripts.inc7
-rw-r--r--data/maps/ThreeIsland_House4/scripts.inc12
-rw-r--r--data/maps/ThreeIsland_House5/scripts.inc18
-rw-r--r--data/maps/ThreeIsland_Mart/scripts.inc43
-rw-r--r--data/maps/ThreeIsland_PokemonCenter_1F/scripts.inc30
-rw-r--r--data/maps/ThreeIsland_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/ThreeIsland_Port/scripts.inc44
-rw-r--r--data/maps/TwoIsland/scripts.inc254
-rw-r--r--data/maps/TwoIsland_CapeBrink/scripts.inc2
-rw-r--r--data/maps/TwoIsland_CapeBrink_House/scripts.inc2
-rw-r--r--data/maps/TwoIsland_Harbor/scripts.inc11
-rw-r--r--data/maps/TwoIsland_House/scripts.inc143
-rw-r--r--data/maps/TwoIsland_JoyfulGameCorner/scripts.inc216
-rw-r--r--data/maps/TwoIsland_PokemonCenter_1F/scripts.inc25
-rw-r--r--data/maps/TwoIsland_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/UndergroundPath_EastEntrance/scripts.inc7
-rw-r--r--data/maps/UndergroundPath_EastWestTunnel/scripts.inc7
-rw-r--r--data/maps/UndergroundPath_NorthEntrance/scripts.inc45
-rw-r--r--data/maps/UndergroundPath_NorthSouthTunnel/scripts.inc7
-rw-r--r--data/maps/UndergroundPath_SouthEntrance/scripts.inc7
-rw-r--r--data/maps/UndergroundPath_WestEntrance/scripts.inc7
-rw-r--r--data/maps/UnknownMap_00_00/scripts.inc2
-rw-r--r--data/maps/UnknownMap_00_01/scripts.inc2
-rw-r--r--data/maps/UnknownMap_00_02/scripts.inc2
-rw-r--r--data/maps/UnknownMap_00_03/scripts.inc2
-rw-r--r--data/maps/UnknownMap_00_04/scripts.inc106
-rw-r--r--data/maps/UnknownMap_03_50/scripts.inc2
-rw-r--r--data/maps/UnknownMap_03_51/scripts.inc2
-rw-r--r--data/maps/UnknownMap_03_52/scripts.inc2
-rw-r--r--data/maps/UnknownMap_03_53/scripts.inc2
-rw-r--r--data/maps/UnknownMap_18_01/scripts.inc2
-rw-r--r--data/maps/UnusedHouse_27_00/scripts.inc2
-rw-r--r--data/maps/UnusedHouse_29_00/scripts.inc2
-rw-r--r--data/maps/UnusedHouse_31_05/scripts.inc2
-rw-r--r--data/maps/VermilionCity/scripts.inc330
-rw-r--r--data/maps/VermilionCity_Gym/scripts.inc329
-rw-r--r--data/maps/VermilionCity_House1/scripts.inc46
-rw-r--r--data/maps/VermilionCity_House2/scripts.inc1
-rw-r--r--data/maps/VermilionCity_House3/scripts.inc28
-rw-r--r--data/maps/VermilionCity_Mart/scripts.inc39
-rw-r--r--data/maps/VermilionCity_PokemonCenter_1F/scripts.inc30
-rw-r--r--data/maps/VermilionCity_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/VermilionCity_PokemonFanClub/scripts.inc191
-rw-r--r--data/maps/VictoryRoad_1F/scripts.inc48
-rw-r--r--data/maps/VictoryRoad_2F/scripts.inc86
-rw-r--r--data/maps/VictoryRoad_3F/scripts.inc68
-rw-r--r--data/maps/ViridianCity/scripts.inc284
-rw-r--r--data/maps/ViridianCity_Gym/scripts.inc137
-rw-r--r--data/maps/ViridianCity_House1/scripts.inc28
-rw-r--r--data/maps/ViridianCity_House2/scripts.inc120
-rw-r--r--data/maps/ViridianCity_Mart/scripts.inc100
-rw-r--r--data/maps/ViridianCity_PokemonCenter_1F/scripts.inc30
-rw-r--r--data/maps/ViridianCity_PokemonCenter_2F/scripts.inc18
-rw-r--r--data/maps/ViridianForest/scripts.inc77
425 files changed, 29565 insertions, 0 deletions
diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc
new file mode 100644
index 000000000..93618c138
--- /dev/null
+++ b/data/maps/BirthIsland_Exterior/scripts.inc
@@ -0,0 +1,132 @@
+BirthIsland_Exterior_MapScripts:: @ 8165203
+ map_script 3, BirthIsland_Exterior_MapScript1_165217
+ map_script 5, BirthIsland_Exterior_MapScript2_165253
+ map_script 7, BirthIsland_Exterior_MapScript3_165213
+ .byte 0
+
+BirthIsland_Exterior_MapScript3_165213:: @ 8165213
+ special sub_80CD008
+ end
+
+BirthIsland_Exterior_MapScript1_165217:: @ 8165217
+ setworldmapflag 2242
+ setvar VAR_0x4010, 150
+ setvar VAR_SECRET_BASE_MAP, 0
+ setvar VAR_ALTERING_CAVE_WILD_SET, 0
+ checkflag FLAG_0x2E4
+ call_if 1, EventScript_16523C
+ checkflag FLAG_0x2E4
+ call_if 0, EventScript_165243
+ end
+
+EventScript_16523C:: @ 816523C
+ setflag FLAG_0x099
+ setflag FLAG_0x09A
+ return
+
+EventScript_165243:: @ 8165243
+ checkflag FLAG_0x2F7
+ goto_if 1, EventScript_1A77A9
+ clearflag FLAG_0x09A
+ clearflag 2120
+ return
+
+BirthIsland_Exterior_MapScript2_165253:: @ 8165253
+ checkflag 2055
+ call_if 1, EventScript_16525D
+ end
+
+EventScript_16525D:: @ 816525D
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 5, EventScript_1A77A9
+ removeobject 2
+ return
+
+BirthIsland_Exterior_EventScript_165271:: @ 8165271
+ lock
+ faceplayer
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ special sub_80CCDFC
+ waitstate
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_1652BA
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_1652BC
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_1652C0
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_1652BE
+ end
+
+EventScript_1652BA:: @ 81652BA
+ release
+ end
+
+EventScript_1652BC:: @ 81652BC
+ release
+ end
+
+EventScript_1652BE:: @ 81652BE
+ release
+ end
+
+EventScript_1652C0:: @ 81652C0
+ addobject 2
+ waitse
+ setfieldeffectarg 0, 1
+ setfieldeffectarg 1, 56
+ setfieldeffectarg 2, 2
+ dofieldeffect 68
+ playbgm BGM_FRLG_DEOXYS_EYE, 0
+ waitfieldeffect 68
+ applymovement 2, Movement_165353
+ waitmovement 0
+ waitse
+ playmoncry SPECIES_DEOXYS, 2
+ delay 40
+ waitmoncry
+ setvar VAR_LAST_TALKED, 2
+ setvar VAR_0x8004, 410
+ setvar VAR_0x8005, 30
+ setvar VAR_0x8006, 0
+ special sub_8044838
+ setflag 2055
+ special sub_807F9D8
+ waitstate
+ clearflag 2055
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16533A
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_165348
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_165348
+ setflag FLAG_0x2E4
+ release
+ end
+
+EventScript_16533A:: @ 816533A
+ setflag FLAG_0x2F7
+ setvar VAR_0x8004, 410
+ goto EventScript_1A9236
+ end
+
+EventScript_165348:: @ 8165348
+ setvar VAR_0x8004, 410
+ goto EventScript_1A9236
+ end
+
+Movement_165353:: @ 8165353
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_down
+ step_end
diff --git a/data/maps/BirthIsland_Harbor/scripts.inc b/data/maps/BirthIsland_Harbor/scripts.inc
new file mode 100644
index 000000000..d92a62d8e
--- /dev/null
+++ b/data/maps/BirthIsland_Harbor/scripts.inc
@@ -0,0 +1,37 @@
+BirthIsland_Harbor_MapScripts:: @ 81653E6
+ .byte 0
+
+BirthIsland_Harbor_EventScript_1653E7:: @ 81653E7
+ lock
+ faceplayer
+ message Text_181726
+ waitmessage
+ setvar VAR_0x8004, 10
+ multichoice 20, 8, 61, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_1A91D5
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_1A90F6
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_1A90F6
+ end
+
+NavelRock_Harbor_MapScripts:: @ 8165420
+ .byte 0
+
+NavelRock_Harbor_EventScript_165421:: @ 8165421
+ lock
+ faceplayer
+ message Text_181726
+ waitmessage
+ setvar VAR_0x8004, 9
+ multichoice 20, 8, 61, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_1A91D5
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_1A90F6
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_1A90F6
+ end
diff --git a/data/maps/CeladonCity/scripts.inc b/data/maps/CeladonCity/scripts.inc
new file mode 100644
index 000000000..54579baae
--- /dev/null
+++ b/data/maps/CeladonCity/scripts.inc
@@ -0,0 +1,123 @@
+CeladonCity_MapScripts:: @ 8166C8F
+ map_script 3, CeladonCity_MapScript1_166C95
+ .byte 0
+
+CeladonCity_MapScript1_166C95:: @ 8166C95
+ setworldmapflag 2198
+ end
+
+CeladonCity_EventScript_166C99:: @ 8166C99
+ loadword 0, gUnknown_817FEC3
+ callstd 2
+ end
+
+CeladonCity_EventScript_166CA2:: @ 8166CA2
+ lock
+ loadword 0, gUnknown_817FF1C
+ callstd 4
+ release
+ end
+
+CeladonCity_EventScript_166CAD:: @ 8166CAD
+ loadword 0, gUnknown_817FF4A
+ callstd 2
+ end
+
+CeladonCity_EventScript_166CB6:: @ 8166CB6
+ loadword 0, gUnknown_817FFC5
+ callstd 2
+ end
+
+CeladonCity_EventScript_166CBF:: @ 8166CBF
+ goto EventScript_1C4A86
+ end
+
+CeladonCity_EventScript_166CC5:: @ 8166CC5
+ lock
+ faceplayer
+ loadword 0, gUnknown_818001B
+ callstd 4
+ closemessage
+ applymovement 2, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+CeladonCity_EventScript_166CDC:: @ 8166CDC
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_POLIWRATH, 0
+ loadword 0, gUnknown_8180075
+ callstd 4
+ closemessage
+ waitmoncry
+ applymovement 3, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+CeladonCity_EventScript_166CFA:: @ 8166CFA
+ loadword 0, gUnknown_81800C2
+ callstd 2
+ end
+
+CeladonCity_EventScript_166D03:: @ 8166D03
+ loadword 0, gUnknown_818008C
+ callstd 2
+ end
+
+CeladonCity_EventScript_166D0C:: @ 8166D0C
+ loadword 0, gUnknown_8180300
+ callstd 2
+ end
+
+CeladonCity_EventScript_166D15:: @ 8166D15
+ loadword 0, gUnknown_81804E1
+ callstd 2
+ end
+
+CeladonCity_EventScript_166D1E:: @ 8166D1E
+ loadword 0, gUnknown_81800E1
+ callstd 3
+ end
+
+CeladonCity_EventScript_166D27:: @ 8166D27
+ loadword 0, gUnknown_818017A
+ callstd 3
+ end
+
+CeladonCity_EventScript_166D30:: @ 8166D30
+ lockall
+ setvar VAR_0x8004, 5
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_81801A2
+ callstd 4
+ releaseall
+ end
+
+CeladonCity_EventScript_166D48:: @ 8166D48
+ loadword 0, gUnknown_81801E5
+ callstd 3
+ end
+
+CeladonCity_EventScript_166D51:: @ 8166D51
+ loadword 0, gUnknown_81801F5
+ callstd 3
+ end
+
+CeladonCity_EventScript_166D5A:: @ 8166D5A
+ loadword 0, gUnknown_8180224
+ callstd 3
+ end
+
+CeladonCity_EventScript_166D63:: @ 8166D63
+ loadword 0, gUnknown_81802A4
+ callstd 3
+ end
+
+CeladonCity_EventScript_166D6C:: @ 8166D6C
+ loadword 0, gUnknown_81802CF
+ callstd 3
+ end
diff --git a/data/maps/CeladonCity_Condominiums_1F/scripts.inc b/data/maps/CeladonCity_Condominiums_1F/scripts.inc
new file mode 100644
index 000000000..868c58812
--- /dev/null
+++ b/data/maps/CeladonCity_Condominiums_1F/scripts.inc
@@ -0,0 +1,78 @@
+CeladonCity_Condominiums_1F_MapScripts:: @ 816C320
+ .byte 0
+
+CeladonCity_Condominiums_1F_EventScript_16C321:: @ 816C321
+ lock
+ faceplayer
+ checkflag FLAG_0x2F8
+ goto_if 1, EventScript_16C36A
+ checkflag 2092
+ goto_if 1, EventScript_16C374
+ checkflag FLAG_0x2A6
+ goto_if 1, EventScript_16C36A
+ loadword 0, gUnknown_81960C9
+ callstd 4
+ setflag FLAG_0x2A6
+ setorcopyvar VAR_0x8000, 369
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A6BF9
+ loadword 0, gUnknown_8196109
+ callstd 4
+ release
+ end
+
+EventScript_16C36A:: @ 816C36A
+ loadword 0, gUnknown_8196148
+ callstd 4
+ release
+ end
+
+EventScript_16C374:: @ 816C374
+ setvar VAR_0x8004, 1
+ setvar VAR_0x8005, 4
+ special SetFlavorTextFlagFromSpecialVars
+ setflag FLAG_0x2F8
+ loadword 0, gUnknown_8196188
+ callstd 4
+ release
+ end
+
+CeladonCity_Condominiums_1F_EventScript_16C38E:: @ 816C38E
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_MEOWTH, 0
+ loadword 0, gUnknown_81960BB
+ callstd 4
+ waitmoncry
+ release
+ end
+
+CeladonCity_Condominiums_1F_EventScript_16C3A1:: @ 816C3A1
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_CLEFAIRY, 0
+ loadword 0, gUnknown_819625B
+ callstd 4
+ waitmoncry
+ release
+ end
+
+CeladonCity_Condominiums_1F_EventScript_16C3B4:: @ 816C3B4
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_NIDORAN_F, 0
+ loadword 0, gUnknown_8196272
+ callstd 4
+ waitmoncry
+ release
+ end
+
+CeladonCity_Condominiums_1F_EventScript_16C3C7:: @ 816C3C7
+ loadword 0, gUnknown_8196287
+ callstd 3
+ end
diff --git a/data/maps/CeladonCity_Condominiums_2F/scripts.inc b/data/maps/CeladonCity_Condominiums_2F/scripts.inc
new file mode 100644
index 000000000..f7c6fa8d7
--- /dev/null
+++ b/data/maps/CeladonCity_Condominiums_2F/scripts.inc
@@ -0,0 +1,7 @@
+CeladonCity_Condominiums_2F_MapScripts:: @ 816C3D0
+ .byte 0
+
+CeladonCity_Condominiums_2F_EventScript_16C3D1:: @ 816C3D1
+ loadword 0, gUnknown_81962A7
+ callstd 3
+ end
diff --git a/data/maps/CeladonCity_Condominiums_3F/scripts.inc b/data/maps/CeladonCity_Condominiums_3F/scripts.inc
new file mode 100644
index 000000000..fe18ab649
--- /dev/null
+++ b/data/maps/CeladonCity_Condominiums_3F/scripts.inc
@@ -0,0 +1,64 @@
+CeladonCity_Condominiums_3F_MapScripts:: @ 816C3DA
+ .byte 0
+
+CeladonCity_Condominiums_3F_EventScript_16C3DB:: @ 816C3DB
+ loadword 0, gUnknown_81962BF
+ callstd 2
+ end
+
+CeladonCity_Condominiums_3F_EventScript_16C3E4:: @ 816C3E4
+ loadword 0, gUnknown_81962D7
+ callstd 2
+ end
+
+CeladonCity_Condominiums_3F_EventScript_16C3ED:: @ 816C3ED
+ loadword 0, gUnknown_81962FB
+ callstd 2
+ end
+
+CeladonCity_Condominiums_3F_EventScript_16C3F6:: @ 816C3F6
+ lock
+ faceplayer
+ specialvar VAR_RESULT, sub_8088F58
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16C412
+ loadword 0, gUnknown_8196356
+ callstd 4
+ release
+ end
+
+EventScript_16C412:: @ 816C412
+ goto EventScript_16C418
+ end
+
+EventScript_16C418:: @ 816C418
+ message Text_1963CD
+ waitmessage
+ delay 60
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_80CA618
+ waitstate
+ release
+ end
+
+CeladonCity_Condominiums_3F_EventScript_16C435:: @ 816C435
+ loadword 0, gUnknown_81964A8
+ callstd 3
+ end
+
+CeladonCity_Condominiums_3F_EventScript_16C43E:: @ 816C43E
+ loadword 0, gUnknown_819640C
+ callstd 3
+ end
+
+CeladonCity_Condominiums_3F_EventScript_16C447:: @ 816C447
+ loadword 0, gUnknown_819644B
+ callstd 3
+ end
+
+CeladonCity_Condominiums_3F_EventScript_16C450:: @ 816C450
+ loadword 0, gUnknown_8196478
+ callstd 3
+ end
diff --git a/data/maps/CeladonCity_Condominiums_Roof/scripts.inc b/data/maps/CeladonCity_Condominiums_Roof/scripts.inc
new file mode 100644
index 000000000..dd3d686c0
--- /dev/null
+++ b/data/maps/CeladonCity_Condominiums_Roof/scripts.inc
@@ -0,0 +1,7 @@
+CeladonCity_Condominiums_Roof_MapScripts:: @ 816C459
+ .byte 0
+
+CeladonCity_Condominiums_Roof_EventScript_16C45A:: @ 816C45A
+ loadword 0, gUnknown_81964C4
+ callstd 3
+ end
diff --git a/data/maps/CeladonCity_Condominiums_RoofRoom/scripts.inc b/data/maps/CeladonCity_Condominiums_RoofRoom/scripts.inc
new file mode 100644
index 000000000..ee5cf4777
--- /dev/null
+++ b/data/maps/CeladonCity_Condominiums_RoofRoom/scripts.inc
@@ -0,0 +1,127 @@
+CeladonCity_Condominiums_RoofRoom_MapScripts:: @ 816C463
+ .byte 0
+
+CeladonCity_Condominiums_RoofRoom_EventScript_16C464:: @ 816C464
+ loadword 0, gUnknown_81964D7
+ callstd 2
+ end
+
+CeladonCity_Condominiums_RoofRoom_EventScript_16C46D:: @ 816C46D
+ lock
+ faceplayer
+ setvar VAR_0x4001, 133
+ givemon SPECIES_EEVEE, 25, ITEM_NONE, 0, 0, 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C4A6
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16C4DA
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A927C
+ release
+ end
+
+EventScript_16C4A6:: @ 816C4A6
+ removeobject 2
+ playfanfare MUS_FANFA1
+ message Text_196591
+ waitmessage
+ waitfanfare
+ getspeciesname 0, SPECIES_EEVEE
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C514
+ call EventScript_1A8C27
+ call EventScript_1A74EB
+ goto EventScript_16C514
+ end
+
+EventScript_16C4DA:: @ 816C4DA
+ removeobject 2
+ playfanfare MUS_FANFA1
+ message Text_196591
+ waitmessage
+ waitfanfare
+ getspeciesname 0, SPECIES_EEVEE
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C509
+ call EventScript_1A8C33
+ goto EventScript_16C509
+ end
+
+EventScript_16C509:: @ 816C509
+ call EventScript_1A8C3C
+ goto EventScript_16C514
+ end
+
+EventScript_16C514:: @ 816C514
+ setflag FLAG_0x263
+ release
+ end
+
+CeladonCity_Condominiums_RoofRoom_EventScript_16C519:: @ 816C519
+ loadword 0, gUnknown_81967E3
+ callstd 3
+ end
+
+CeladonCity_Condominiums_RoofRoom_EventScript_16C522:: @ 816C522
+ lockall
+ loadword 0, gUnknown_81965C2
+ callstd 4
+ message Text_1965F4
+ waitmessage
+ setvar VAR_0x8004, 4
+ multichoice 0, 0, 43, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16C5C0
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16C5CE
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16C5DC
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16C5EA
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C5EA
+ end
+
+EventScript_16C578:: @ 816C578
+ message Text_1965F4
+ waitmessage
+ multichoice 0, 0, 43, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16C5C0
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16C5CE
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16C5DC
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16C5EA
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C5EA
+ end
+
+EventScript_16C5C0:: @ 816C5C0
+ loadword 0, gUnknown_8196617
+ callstd 4
+ goto EventScript_16C578
+ end
+
+EventScript_16C5CE:: @ 816C5CE
+ loadword 0, gUnknown_8196695
+ callstd 4
+ goto EventScript_16C578
+ end
+
+EventScript_16C5DC:: @ 816C5DC
+ loadword 0, gUnknown_819673C
+ callstd 4
+ goto EventScript_16C578
+ end
+
+EventScript_16C5EA:: @ 816C5EA
+ releaseall
+ end
diff --git a/data/maps/CeladonCity_DepartmentStore_1F/scripts.inc b/data/maps/CeladonCity_DepartmentStore_1F/scripts.inc
new file mode 100644
index 000000000..c17ca3c25
--- /dev/null
+++ b/data/maps/CeladonCity_DepartmentStore_1F/scripts.inc
@@ -0,0 +1,17 @@
+CeladonCity_DepartmentStore_1F_MapScripts:: @ 816BAD8
+ .byte 0
+
+CeladonCity_DepartmentStore_1F_EventScript_16BAD9:: @ 816BAD9
+ loadword 0, gUnknown_81954DD
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_1F_EventScript_16BAE2:: @ 816BAE2
+ loadword 0, gUnknown_8195537
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_1F_EventScript_16BAEB:: @ 816BAEB
+ loadword 0, gUnknown_81955B3
+ callstd 3
+ end
diff --git a/data/maps/CeladonCity_DepartmentStore_2F/scripts.inc b/data/maps/CeladonCity_DepartmentStore_2F/scripts.inc
new file mode 100644
index 000000000..1c1e0ab95
--- /dev/null
+++ b/data/maps/CeladonCity_DepartmentStore_2F/scripts.inc
@@ -0,0 +1,72 @@
+CeladonCity_DepartmentStore_2F_MapScripts:: @ 816BAF4
+ .byte 0
+
+CeladonCity_DepartmentStore_2F_EventScript_16BAF5:: @ 816BAF5
+ loadword 0, gUnknown_81955C7
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_2F_EventScript_16BAFE:: @ 816BAFE
+ loadword 0, gUnknown_819560F
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_2F_EventScript_16BB07:: @ 816BB07
+ loadword 0, gUnknown_8195638
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_2F_EventScript_16BB10:: @ 816BB10
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16BB38
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16BB38:: @ 816BB38
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_BURN_HEAL
+ .2byte ITEM_ICE_HEAL
+ .2byte ITEM_SUPER_REPEL
+ .2byte ITEM_NONE
+ release
+ end
+
+CeladonCity_DepartmentStore_2F_EventScript_16BB4E:: @ 816BB4E
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16BB74
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16BB74:: @ 816BB74
+ .2byte ITEM_TM05
+ .2byte ITEM_TM15
+ .2byte ITEM_TM28
+ .2byte ITEM_TM31
+ .2byte ITEM_TM43
+ .2byte ITEM_TM45
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/CeladonCity_DepartmentStore_3F/scripts.inc b/data/maps/CeladonCity_DepartmentStore_3F/scripts.inc
new file mode 100644
index 000000000..b615859f3
--- /dev/null
+++ b/data/maps/CeladonCity_DepartmentStore_3F/scripts.inc
@@ -0,0 +1,61 @@
+CeladonCity_DepartmentStore_3F_MapScripts:: @ 816BB84
+ .byte 0
+
+CeladonCity_DepartmentStore_3F_EventScript_16BB85:: @ 816BB85
+ goto EventScript_1C4C26
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BB8B:: @ 816BB8B
+ loadword 0, gUnknown_81956E9
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BB94:: @ 816BB94
+ loadword 0, gUnknown_8195769
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BB9D:: @ 816BB9D
+ loadword 0, gUnknown_81957B0
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BBA6:: @ 816BBA6
+ loadword 0, gUnknown_8195823
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BBAF:: @ 816BBAF
+ loadword 0, gUnknown_8195863
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BBB8:: @ 816BBB8
+ loadword 0, gUnknown_8195875
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BBC1:: @ 816BBC1
+ loadword 0, gUnknown_8195897
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BBCA:: @ 816BBCA
+ loadword 0, gUnknown_81958B8
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BBD3:: @ 816BBD3
+ loadword 0, gUnknown_81958D8
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BBDC:: @ 816BBDC
+ loadword 0, gUnknown_81958F6
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_3F_EventScript_16BBE5:: @ 816BBE5
+ loadword 0, gUnknown_8195907
+ callstd 3
+ end
diff --git a/data/maps/CeladonCity_DepartmentStore_4F/scripts.inc b/data/maps/CeladonCity_DepartmentStore_4F/scripts.inc
new file mode 100644
index 000000000..ac1acefa0
--- /dev/null
+++ b/data/maps/CeladonCity_DepartmentStore_4F/scripts.inc
@@ -0,0 +1,43 @@
+CeladonCity_DepartmentStore_4F_MapScripts:: @ 816BBEE
+ .byte 0
+
+CeladonCity_DepartmentStore_4F_EventScript_16BBEF:: @ 816BBEF
+ loadword 0, gUnknown_8195A68
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_4F_EventScript_16BBF8:: @ 816BBF8
+ loadword 0, gUnknown_8195AC9
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_4F_EventScript_16BC01:: @ 816BC01
+ loadword 0, gUnknown_8195B5B
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_4F_EventScript_16BC0A:: @ 816BC0A
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16BC30
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16BC30:: @ 816BC30
+ .2byte ITEM_POKE_DOLL
+ .2byte ITEM_RETRO_MAIL
+ .2byte ITEM_FIRE_STONE
+ .2byte ITEM_THUNDER_STONE
+ .2byte ITEM_WATER_STONE
+ .2byte ITEM_LEAF_STONE
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/CeladonCity_DepartmentStore_5F/scripts.inc b/data/maps/CeladonCity_DepartmentStore_5F/scripts.inc
new file mode 100644
index 000000000..5562858c0
--- /dev/null
+++ b/data/maps/CeladonCity_DepartmentStore_5F/scripts.inc
@@ -0,0 +1,70 @@
+CeladonCity_DepartmentStore_5F_MapScripts:: @ 816BC40
+ .byte 0
+
+CeladonCity_DepartmentStore_5F_EventScript_16BC41:: @ 816BC41
+ loadword 0, gUnknown_8195BBA
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_5F_EventScript_16BC4A:: @ 816BC4A
+ loadword 0, gUnknown_8195CA0
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_5F_EventScript_16BC53:: @ 816BC53
+ loadword 0, gUnknown_8195D14
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_5F_EventScript_16BC5C:: @ 816BC5C
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16BC84
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16BC84:: @ 816BC84
+ .2byte ITEM_X_ATTACK
+ .2byte ITEM_X_DEFEND
+ .2byte ITEM_X_SPEED
+ .2byte ITEM_X_SPECIAL
+ .2byte ITEM_X_ACCURACY
+ .2byte ITEM_GUARD_SPEC
+ .2byte ITEM_DIRE_HIT
+ .2byte ITEM_NONE
+ release
+ end
+
+CeladonCity_DepartmentStore_5F_EventScript_16BC96:: @ 816BC96
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16BCBC
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16BCBC:: @ 816BCBC
+ .2byte ITEM_HP_UP
+ .2byte ITEM_PROTEIN
+ .2byte ITEM_IRON
+ .2byte ITEM_CALCIUM
+ .2byte ITEM_ZINC
+ .2byte ITEM_CARBOS
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/CeladonCity_DepartmentStore_Elevator/scripts.inc b/data/maps/CeladonCity_DepartmentStore_Elevator/scripts.inc
new file mode 100644
index 000000000..9043b3cef
--- /dev/null
+++ b/data/maps/CeladonCity_DepartmentStore_Elevator/scripts.inc
@@ -0,0 +1,135 @@
+CeladonCity_DepartmentStore_Elevator_MapScripts:: @ 816C152
+ .byte 0
+
+CeladonCity_DepartmentStore_Elevator_EventScript_16C153:: @ 816C153
+ lockall
+ setvar VAR_0x8004, 3
+ checkflag FLAG_0x002
+ call_if 0, EventScript_1A7AB9
+ copyvar VAR_0x8005, VAR_0x403A
+ special sub_80CB580
+ message Text_1A535C
+ waitmessage
+ setvar VAR_0x8004, 3
+ specialvar VAR_RESULT, sub_80CB328
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16C1B7
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16C1C3
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16C1CF
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16C1DB
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16C1E7
+ end
+
+EventScript_16C1B7:: @ 816C1B7
+ multichoicedefault 0, 0, 31, 0, 0
+ goto EventScript_16C1F3
+
+EventScript_16C1C2:: @ 816C1C2
+ end
+
+EventScript_16C1C3:: @ 816C1C3
+ multichoicedefault 0, 0, 31, 1, 0
+ goto EventScript_16C1F3
+ end
+
+EventScript_16C1CF:: @ 816C1CF
+ multichoicedefault 0, 0, 31, 2, 0
+ goto EventScript_16C1F3
+ end
+
+EventScript_16C1DB:: @ 816C1DB
+ multichoicedefault 0, 0, 31, 3, 0
+ goto EventScript_16C1F3
+ end
+
+EventScript_16C1E7:: @ 816C1E7
+ multichoicedefault 0, 0, 31, 4, 0
+ goto EventScript_16C1F3
+ end
+
+EventScript_16C1F3:: @ 816C1F3
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16C2E6
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16C2BE
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16C296
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16C26E
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16C246
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_16C30E
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C30E
+ end
+
+EventScript_16C246:: @ 816C246
+ setvar VAR_0x8006, 4
+ setdynamicwarp MAP_CELADONCITY_DEPARTMENTSTORE_1F, 255, 6, 1
+ compare_var_to_value VAR_0x403A, 4
+ goto_if 1, EventScript_16C30E
+ call EventScript_16C313
+ setvar VAR_0x403A, 4
+ goto EventScript_16C30E
+ end
+
+EventScript_16C26E:: @ 816C26E
+ setvar VAR_0x8006, 5
+ setdynamicwarp MAP_CELADONCITY_DEPARTMENTSTORE_2F, 255, 6, 1
+ compare_var_to_value VAR_0x403A, 5
+ goto_if 1, EventScript_16C30E
+ call EventScript_16C313
+ setvar VAR_0x403A, 5
+ goto EventScript_16C30E
+ end
+
+EventScript_16C296:: @ 816C296
+ setvar VAR_0x8006, 6
+ setdynamicwarp MAP_CELADONCITY_DEPARTMENTSTORE_3F, 255, 6, 1
+ compare_var_to_value VAR_0x403A, 6
+ goto_if 1, EventScript_16C30E
+ call EventScript_16C313
+ setvar VAR_0x403A, 6
+ goto EventScript_16C30E
+ end
+
+EventScript_16C2BE:: @ 816C2BE
+ setvar VAR_0x8006, 7
+ setdynamicwarp MAP_CELADONCITY_DEPARTMENTSTORE_4F, 255, 6, 1
+ compare_var_to_value VAR_0x403A, 7
+ goto_if 1, EventScript_16C30E
+ call EventScript_16C313
+ setvar VAR_0x403A, 7
+ goto EventScript_16C30E
+ end
+
+EventScript_16C2E6:: @ 816C2E6
+ setvar VAR_0x8006, 8
+ setdynamicwarp MAP_CELADONCITY_DEPARTMENTSTORE_5F, 255, 6, 1
+ compare_var_to_value VAR_0x403A, 8
+ goto_if 1, EventScript_16C30E
+ call EventScript_16C313
+ setvar VAR_0x403A, 8
+ goto EventScript_16C30E
+ end
+
+EventScript_16C30E:: @ 816C30E
+ special sub_80CB63C
+ releaseall
+ end
+
+EventScript_16C313:: @ 816C313
+ special sub_80CB63C
+ closemessage
+ waitse
+ special sub_80CB498
+ waitstate
+ setflag FLAG_0x002
+ return
diff --git a/data/maps/CeladonCity_DepartmentStore_Roof/scripts.inc b/data/maps/CeladonCity_DepartmentStore_Roof/scripts.inc
new file mode 100644
index 000000000..165942ca3
--- /dev/null
+++ b/data/maps/CeladonCity_DepartmentStore_Roof/scripts.inc
@@ -0,0 +1,358 @@
+CeladonCity_DepartmentStore_Roof_MapScripts:: @ 816BCCC
+ .byte 0
+
+CeladonCity_DepartmentStore_Roof_EventScript_16BCCD:: @ 816BCCD
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ call EventScript_16BCF6
+ compare_var_to_value VAR_0x4001, 0
+ goto_if 1, EventScript_16C00E
+ goto EventScript_16BD3E
+ end
+
+EventScript_16BCF6:: @ 816BCF6
+ setvar VAR_0x4001, 0
+ checkitem ITEM_FRESH_WATER, 1
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_16BD2C
+ checkitem ITEM_SODA_POP, 1
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_16BD32
+ checkitem ITEM_LEMONADE, 1
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_16BD38
+ return
+
+EventScript_16BD2C:: @ 816BD2C
+ addvar VAR_0x4001, 1
+ return
+
+EventScript_16BD32:: @ 816BD32
+ addvar VAR_0x4001, 2
+ return
+
+EventScript_16BD38:: @ 816BD38
+ addvar VAR_0x4001, 4
+ return
+
+EventScript_16BD3E:: @ 816BD3E
+ loadword 0, gUnknown_8195D22
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C00C
+ textcolor 3
+ message Text_195D5F
+ waitmessage
+ textcolor 1
+ copyvar VAR_0x8000, VAR_0x4001
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16BDAE
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16BDDA
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16BE06
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16BE3D
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_16BE69
+ compare_var_to_value VAR_0x8000, 6
+ goto_if 1, EventScript_16BEA0
+ compare_var_to_value VAR_0x8000, 7
+ goto_if 1, EventScript_16BED7
+ end
+
+EventScript_16BDAE:: @ 816BDAE
+ multichoice 0, 0, 32, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16BF19
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16C00C
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C00C
+ end
+
+EventScript_16BDDA:: @ 816BDDA
+ multichoice 0, 0, 33, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16BF3A
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16C00C
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C00C
+ end
+
+EventScript_16BE06:: @ 816BE06
+ multichoice 0, 0, 34, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16BF19
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16BF3A
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16C00C
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C00C
+ end
+
+EventScript_16BE3D:: @ 816BE3D
+ multichoice 0, 0, 35, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16BF5B
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16C00C
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C00C
+ end
+
+EventScript_16BE69:: @ 816BE69
+ multichoice 0, 0, 36, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16BF19
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16BF5B
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16C00C
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C00C
+ end
+
+EventScript_16BEA0:: @ 816BEA0
+ multichoice 0, 0, 37, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16BF3A
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16BF5B
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16C00C
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C00C
+ end
+
+EventScript_16BED7:: @ 816BED7
+ multichoice 0, 0, 38, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16BF19
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16BF3A
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16BF5B
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16C00C
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C00C
+ end
+
+EventScript_16BF19:: @ 816BF19
+ setvar VAR_0x8008, 26
+ setvar VAR_0x8009, 304
+ checkflag FLAG_0x296
+ goto_if 1, EventScript_16C018
+ loadword 0, gUnknown_8195D75
+ callstd 4
+ goto EventScript_16BF7C
+ end
+
+EventScript_16BF3A:: @ 816BF3A
+ setvar VAR_0x8008, 27
+ setvar VAR_0x8009, 308
+ checkflag FLAG_0x295
+ goto_if 1, EventScript_16C018
+ loadword 0, gUnknown_8195E33
+ callstd 4
+ goto EventScript_16BF7C
+ end
+
+EventScript_16BF5B:: @ 816BF5B
+ setvar VAR_0x8008, 28
+ setvar VAR_0x8009, 321
+ checkflag FLAG_0x294
+ goto_if 1, EventScript_16C018
+ loadword 0, gUnknown_8195EBF
+ callstd 4
+ goto EventScript_16BF7C
+ end
+
+EventScript_16BF7C:: @ 816BF7C
+ getitemname 0, 32776
+ getitemname 1, 32777
+ removeitem 32776, 1
+ checkitemspace 32777, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C002
+ additem 32777, 1
+ textcolor 3
+ playfanfare MUS_FANFA1
+ message Text_195DAD
+ waitmessage
+ waitfanfare
+ setorcopyvar VAR_0x8000, VAR_0x8009
+ setorcopyvar VAR_0x8001, 1
+ callstd 8
+ call EventScript_1A6675
+ compare_var_to_value VAR_0x8008, 26
+ call_if 1, EventScript_16BFDE
+ compare_var_to_value VAR_0x8008, 27
+ call_if 1, EventScript_16BFEA
+ compare_var_to_value VAR_0x8008, 28
+ call_if 1, EventScript_16BFF6
+ release
+ end
+
+EventScript_16BFDE:: @ 816BFDE
+ setflag FLAG_0x296
+ loadword 0, gUnknown_8195DD4
+ callstd 4
+ return
+
+EventScript_16BFEA:: @ 816BFEA
+ setflag FLAG_0x295
+ loadword 0, gUnknown_8195E68
+ callstd 4
+ return
+
+EventScript_16BFF6:: @ 816BFF6
+ setflag FLAG_0x294
+ loadword 0, gUnknown_8195EF4
+ callstd 4
+ return
+
+EventScript_16C002:: @ 816C002
+ loadword 0, gUnknown_8195F4F
+ callstd 4
+ release
+ end
+
+EventScript_16C00C:: @ 816C00C
+ release
+ end
+
+EventScript_16C00E:: @ 816C00E
+ loadword 0, gUnknown_8195FEF
+ callstd 4
+ release
+ end
+
+EventScript_16C018:: @ 816C018
+ loadword 0, gUnknown_8195F6E
+ callstd 4
+ release
+ end
+
+CeladonCity_DepartmentStore_Roof_EventScript_16C022:: @ 816C022
+ loadword 0, gUnknown_8195F98
+ callstd 2
+ end
+
+CeladonCity_DepartmentStore_Roof_EventScript_16C02B:: @ 816C02B
+ loadword 0, gUnknown_8196017
+ callstd 3
+ end
+
+CeladonCity_DepartmentStore_Roof_EventScript_16C034:: @ 816C034
+ lockall
+ message Text_196038
+ waitmessage
+ showmoneybox 0, 0, 0
+ goto EventScript_16C045
+ end
+
+EventScript_16C045:: @ 816C045
+ multichoice 12, 0, 26, 0
+ copyvar VAR_0x4001, VAR_RESULT
+ copyvar VAR_0x8000, VAR_0x4001
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16C083
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16C094
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16C0A5
+ loadword 0, gUnknown_81960AE
+ callstd 4
+ goto EventScript_16C14D
+ end
+
+EventScript_16C083:: @ 816C083
+ setvar VAR_0x4000, 26
+ checkmoney 200, 0
+ goto EventScript_16C0CB
+ end
+
+EventScript_16C094:: @ 816C094
+ setvar VAR_0x4000, 27
+ checkmoney 300, 0
+ goto EventScript_16C0CB
+ end
+
+EventScript_16C0A5:: @ 816C0A5
+ setvar VAR_0x4000, 28
+ checkmoney 350, 0
+ goto EventScript_16C0CB
+ end
+
+EventScript_16C0B6:: @ 816C0B6
+ takemoney 200, 0
+ return
+
+EventScript_16C0BD:: @ 816C0BD
+ takemoney 300, 0
+ return
+
+EventScript_16C0C4:: @ 816C0C4
+ takemoney 350, 0
+ return
+
+EventScript_16C0CB:: @ 816C0CB
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C131
+ checkitemspace 16384, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C13F
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16C0B6
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16C0BD
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_16C0C4
+ updatemoneybox 0, 0, 0
+ getitemname 0, 16384
+ playse SE_C_PASI
+ loadword 0, gUnknown_8196076
+ callstd 4
+ additem 16384, 1
+ goto EventScript_16C125
+ end
+
+EventScript_16C125:: @ 816C125
+ message Text_196038
+ waitmessage
+ goto EventScript_16C045
+ end
+
+EventScript_16C131:: @ 816C131
+ loadword 0, gUnknown_819605E
+ callstd 4
+ goto EventScript_16C14D
+ end
+
+EventScript_16C13F:: @ 816C13F
+ loadword 0, gUnknown_819608E
+ callstd 4
+ goto EventScript_16C14D
+ end
+
+EventScript_16C14D:: @ 816C14D
+ hidemoneybox
+ .byte 0
+ .byte 0
+ releaseall
+ end
diff --git a/data/maps/CeladonCity_GameCorner/scripts.inc b/data/maps/CeladonCity_GameCorner/scripts.inc
new file mode 100644
index 000000000..d32aa8afd
--- /dev/null
+++ b/data/maps/CeladonCity_GameCorner/scripts.inc
@@ -0,0 +1,524 @@
+CeladonCity_GameCorner_MapScripts:: @ 816C646
+ map_script 1, CeladonCity_GameCorner_MapScript1_16C64C
+ .byte 0
+
+CeladonCity_GameCorner_MapScript1_16C64C:: @ 816C64C
+ checkflag FLAG_0x26D
+ call_if 0, EventScript_16C656
+ end
+
+EventScript_16C656:: @ 816C656
+ setmetatile 15, 2, 658, 0
+ setmetatile 16, 2, 658, 0
+ setmetatile 17, 2, 658, 0
+ setmetatile 16, 3, 719, 1
+ setmetatile 17, 3, 719, 1
+ return
+
+CeladonCity_GameCorner_EventScript_16C684:: @ 816C684
+ loadword 0, gUnknown_8196940
+ callstd 2
+ end
+
+CeladonCity_GameCorner_EventScript_16C68D:: @ 816C68D
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ showmoneybox 0, 0, 0
+ showcoinsbox 0, 5
+ message Text_196984
+ waitmessage
+ multichoice 13, 0, 27, 0
+ copyvar VAR_0x8009, VAR_RESULT
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16C6E6
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16C6E6
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16C782
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16C782
+ end
+
+EventScript_16C6E6:: @ 816C6E6
+ checkflag FLAG_0x243
+ goto_if 0, EventScript_16C790
+ compare_var_to_value VAR_0x8009, 0
+ goto_if 1, EventScript_16C734
+ compare_var_to_value VAR_0x8009, 1
+ goto_if 1, EventScript_16C706
+ end
+
+EventScript_16C706:: @ 816C706
+ checkcoins VAR_0x4001
+ compare_var_to_value VAR_0x4001, 9500
+ goto_if 4, EventScript_16C79E
+ checkmoney 10000, 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C7AC
+ givecoins 500
+ takemoney 10000, 0
+ goto EventScript_16C762
+ end
+
+EventScript_16C734:: @ 816C734
+ checkcoins VAR_0x4001
+ compare_var_to_value VAR_0x4001, 9950
+ goto_if 4, EventScript_16C79E
+ checkmoney 1000, 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C7AC
+ givecoins 50
+ takemoney 1000, 0
+ goto EventScript_16C762
+ end
+
+EventScript_16C762:: @ 816C762
+ updatemoneybox 0, 0, 0
+ updatecoinsbox 0, 5
+ playse 248
+ loadword 0, gUnknown_8196A62
+ callstd 4
+ goto EventScript_16C77A
+ end
+
+EventScript_16C77A:: @ 816C77A
+ hidemoneybox
+ .byte 0
+ .byte 0
+ hidecoinsbox 0, 5
+ release
+ end
+
+EventScript_16C782:: @ 816C782
+ loadword 0, gUnknown_81969DC
+ callstd 4
+ goto EventScript_16C77A
+ end
+
+EventScript_16C790:: @ 816C790
+ loadword 0, gUnknown_81969FB
+ callstd 4
+ goto EventScript_16C77A
+ end
+
+EventScript_16C79E:: @ 816C79E
+ loadword 0, gUnknown_8196A26
+ callstd 4
+ goto EventScript_16C77A
+ end
+
+EventScript_16C7AC:: @ 816C7AC
+ loadword 0, gUnknown_8196A46
+ callstd 4
+ goto EventScript_16C77A
+ end
+
+CeladonCity_GameCorner_EventScript_16C7BA:: @ 816C7BA
+ lock
+ faceplayer
+ loadword 0, gUnknown_8196A82
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+EventScript_16C7CA:: @ 816C7CA
+ closemessage
+ applymovement VAR_LAST_TALKED, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+CeladonCity_GameCorner_EventScript_16C7D7:: @ 816C7D7
+ lock
+ faceplayer
+ loadword 0, gUnknown_8196AC7
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+CeladonCity_GameCorner_EventScript_16C7E7:: @ 816C7E7
+ lock
+ faceplayer
+ checkflag FLAG_0x26E
+ goto_if 1, EventScript_16C849
+ loadword 0, gUnknown_8196AF3
+ callstd 4
+ checkflag FLAG_0x243
+ goto_if 0, EventScript_16C839
+ checkcoins VAR_0x4001
+ compare_var_to_value VAR_0x4001, 9990
+ goto_if 4, EventScript_16C82B
+ givecoins 10
+ textcolor 3
+ loadword 0, gUnknown_8196B0D
+ callstd 4
+ playse 248
+ waitse
+ setflag FLAG_0x26E
+ goto EventScript_16C7CA
+ end
+
+EventScript_16C82B:: @ 816C82B
+ loadword 0, gUnknown_8196B30
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+EventScript_16C839:: @ 816C839
+ textcolor 3
+ loadword 0, gUnknown_8196F26
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+EventScript_16C849:: @ 816C849
+ loadword 0, gUnknown_8196B49
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+CeladonCity_GameCorner_EventScript_16C857:: @ 816C857
+ lock
+ faceplayer
+ checkflag FLAG_0x4B3
+ goto_if 1, EventScript_16C870
+ loadword 0, gUnknown_8196BAD
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+EventScript_16C870:: @ 816C870
+ loadword 0, gUnknown_8196CA1
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+CeladonCity_GameCorner_EventScript_16C87E:: @ 816C87E
+ lock
+ faceplayer
+ loadword 0, gUnknown_8196B7B
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+CeladonCity_GameCorner_EventScript_16C88E:: @ 816C88E
+ lock
+ faceplayer
+ loadword 0, gUnknown_8196CFE
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+CeladonCity_GameCorner_EventScript_16C89E:: @ 816C89E
+ lock
+ faceplayer
+ checkflag FLAG_0x26F
+ goto_if 1, EventScript_16C8F0
+ loadword 0, gUnknown_8196D2B
+ callstd 4
+ checkflag FLAG_0x243
+ goto_if 0, EventScript_16C839
+ checkcoins VAR_0x4001
+ compare_var_to_value VAR_0x4001, 9980
+ goto_if 4, EventScript_16C8E2
+ givecoins 20
+ textcolor 3
+ loadword 0, gUnknown_8196D47
+ callstd 4
+ playse 248
+ waitse
+ setflag FLAG_0x26F
+ goto EventScript_16C7CA
+ end
+
+EventScript_16C8E2:: @ 816C8E2
+ loadword 0, gUnknown_8196D6F
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+EventScript_16C8F0:: @ 816C8F0
+ loadword 0, gUnknown_8196D87
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+CeladonCity_GameCorner_EventScript_16C8FE:: @ 816C8FE
+ lock
+ faceplayer
+ checkflag FLAG_0x270
+ goto_if 1, EventScript_16C950
+ loadword 0, gUnknown_8196DB7
+ callstd 4
+ checkflag FLAG_0x243
+ goto_if 0, EventScript_16C839
+ checkcoins VAR_0x4001
+ compare_var_to_value VAR_0x4001, 9980
+ goto_if 4, EventScript_16C942
+ givecoins 20
+ textcolor 3
+ loadword 0, gUnknown_8196DF8
+ callstd 4
+ playse 248
+ waitse
+ setflag FLAG_0x270
+ goto EventScript_16C7CA
+ end
+
+EventScript_16C942:: @ 816C942
+ loadword 0, gUnknown_8196E1B
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+EventScript_16C950:: @ 816C950
+ loadword 0, gUnknown_8196E40
+ callstd 4
+ goto EventScript_16C7CA
+ end
+
+CeladonCity_GameCorner_EventScript_16C95E:: @ 816C95E
+ lockall
+ setvar VAR_0x8004, 0
+ goto EventScript_16C96C
+ end
+
+EventScript_16C96A:: @ 816C96A
+ releaseall
+ end
+
+EventScript_16C96C:: @ 816C96C
+ checkflag FLAG_0x243
+ goto_if 0, EventScript_16CAA0
+ loadword 0, gUnknown_8196F46
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16C96A
+ setfieldeffectarg 0, 255
+ setfieldeffectarg 1, 10
+ setfieldeffectarg 2, 14
+ dofieldeffect 64
+ waitfieldeffect 64
+ specialvar VAR_RESULT, sub_80CAABC
+ playslotmachine VAR_RESULT
+ releaseall
+ end
+
+CeladonCity_GameCorner_EventScript_16C9A4:: @ 816C9A4
+ lockall
+ setvar VAR_0x8004, 1
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16C9B0:: @ 816C9B0
+ lockall
+ setvar VAR_0x8004, 2
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16C9BC:: @ 816C9BC
+ lockall
+ setvar VAR_0x8004, 3
+ goto EventScript_16C96C
+ end
+
+EventScript_16C9C8:: @ 816C9C8
+ lockall
+ setvar VAR_0x8004, 4
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16C9D4:: @ 816C9D4
+ lockall
+ setvar VAR_0x8004, 5
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16C9E0:: @ 816C9E0
+ lockall
+ setvar VAR_0x8004, 6
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16C9EC:: @ 816C9EC
+ lockall
+ setvar VAR_0x8004, 7
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16C9F8:: @ 816C9F8
+ lockall
+ setvar VAR_0x8004, 8
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA04:: @ 816CA04
+ lockall
+ setvar VAR_0x8004, 9
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA10:: @ 816CA10
+ lockall
+ setvar VAR_0x8004, 10
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA1C:: @ 816CA1C
+ lockall
+ setvar VAR_0x8004, 11
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA28:: @ 816CA28
+ lockall
+ setvar VAR_0x8004, 12
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA34:: @ 816CA34
+ lockall
+ setvar VAR_0x8004, 13
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA40:: @ 816CA40
+ lockall
+ setvar VAR_0x8004, 14
+ goto EventScript_16C96C
+ end
+
+EventScript_16CA4C:: @ 816CA4C
+ lockall
+ setvar VAR_0x8004, 15
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA58:: @ 816CA58
+ lockall
+ setvar VAR_0x8004, 16
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA64:: @ 816CA64
+ lockall
+ setvar VAR_0x8004, 17
+ goto EventScript_16C96C
+ end
+
+EventScript_16CA70:: @ 816CA70
+ lockall
+ setvar VAR_0x8004, 18
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA7C:: @ 816CA7C
+ lockall
+ setvar VAR_0x8004, 19
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA88:: @ 816CA88
+ lockall
+ setvar VAR_0x8004, 20
+ goto EventScript_16C96C
+ end
+
+CeladonCity_GameCorner_EventScript_16CA94:: @ 816CA94
+ lockall
+ setvar VAR_0x8004, 21
+ goto EventScript_16C96C
+ end
+
+EventScript_16CAA0:: @ 816CAA0
+ loadword 0, gUnknown_8196F0D
+ callstd 4
+ releaseall
+ end
+
+CeladonCity_GameCorner_EventScript_16CAAA:: @ 816CAAA
+ lockall
+ loadword 0, gUnknown_8196EDC
+ callstd 4
+ checkflag FLAG_0x26D
+ call_if 0, EventScript_16CABE
+ releaseall
+ end
+
+EventScript_16CABE:: @ 816CABE
+ playse SE_FU_ZAKU2
+ setmetatile 15, 2, 669, 0
+ setmetatile 16, 2, 670, 1
+ setmetatile 17, 2, 671, 1
+ setmetatile 16, 3, 678, 1
+ setmetatile 17, 3, 679, 1
+ special DrawWholeMapView
+ setflag FLAG_0x26D
+ return
+
+CeladonCity_GameCorner_EventScript_16CAF5:: @ 816CAF5
+ trainerbattle 2, 357, 0, Text_196E69, Text_196E95, EventScript_16CB10
+ loadword 0, gUnknown_8196E9B
+ callstd 6
+ end
+
+EventScript_16CB10:: @ 816CB10
+ loadword 0, gUnknown_8196E9B
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_16CB34
+ compare_var_to_value VAR_FACING, 3
+ call_if 5, EventScript_16CB3F
+ removeobject 11
+ release
+ end
+
+EventScript_16CB34:: @ 816CB34
+ applymovement 11, Movement_16CB4A
+ waitmovement 0
+ return
+
+EventScript_16CB3F:: @ 816CB3F
+ applymovement 11, Movement_16CB53
+ waitmovement 0
+ return
+
+Movement_16CB4A:: @ 816CB4A
+ step_10
+ step_13
+ step_13
+ step_11
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_16CB53:: @ 816CB53
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+CeladonCity_GameCorner_EventScript_16CB5A:: @ 816CB5A
+ loadword 0, gUnknown_8196F64
+ callstd 3
+ end
+
+CeladonCity_GameCorner_EventScript_16CB63:: @ 816CB63
+ loadword 0, gUnknown_8196F81
+ callstd 3
+ end
+
+CeladonCity_GameCorner_EventScript_16CB6C:: @ 816CB6C
+ loadword 0, gUnknown_8196FA0
+ callstd 3
+ end
diff --git a/data/maps/CeladonCity_GameCorner_PrizeRoom/scripts.inc b/data/maps/CeladonCity_GameCorner_PrizeRoom/scripts.inc
new file mode 100644
index 000000000..8b71e03c2
--- /dev/null
+++ b/data/maps/CeladonCity_GameCorner_PrizeRoom/scripts.inc
@@ -0,0 +1,387 @@
+CeladonCity_GameCorner_PrizeRoom_MapScripts:: @ 816CB75
+ .byte 0
+
+CeladonCity_GameCorner_PrizeRoom_EventScript_16CB76:: @ 816CB76
+ loadword 0, gUnknown_8196FC1
+ callstd 2
+ end
+
+CeladonCity_GameCorner_PrizeRoom_EventScript_16CB7F:: @ 816CB7F
+ loadword 0, gUnknown_8196FFF
+ callstd 2
+ end
+
+CeladonCity_GameCorner_PrizeRoom_EventScript_16CB88:: @ 816CB88
+ lock
+ faceplayer
+ checkflag FLAG_0x243
+ goto_if 0, EventScript_16CD99
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ showcoinsbox 0, 0
+ loadword 0, gUnknown_8197057
+ callstd 4
+ goto EventScript_16CBB2
+ end
+
+EventScript_16CBB2:: @ 816CBB2
+ message Text_19707A
+ waitmessage
+ multichoice 11, 0, 14, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16CC15
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16CC25
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16CC35
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16CC45
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16CC55
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_16CC10
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16CC10
+ end
+
+EventScript_16CC10:: @ 816CC10
+ hidecoinsbox 0, 0
+ release
+ end
+
+EventScript_16CC15:: @ 816CC15
+ setvar VAR_0x4001, 63
+ setvar VAR_0x4002, 180
+ goto EventScript_16CC65
+ end
+
+EventScript_16CC25:: @ 816CC25
+ setvar VAR_0x4001, 35
+ setvar VAR_0x4002, 500
+ goto EventScript_16CC65
+ end
+
+EventScript_16CC35:: @ 816CC35
+ setvar VAR_0x4001, 147
+ setvar VAR_0x4002, 2800
+ goto EventScript_16CC65
+ end
+
+EventScript_16CC45:: @ 816CC45
+ setvar VAR_0x4001, 123
+ setvar VAR_0x4002, 5500
+ goto EventScript_16CC65
+ end
+
+EventScript_16CC55:: @ 816CC55
+ setvar VAR_0x4001, 137
+ setvar VAR_0x4002, 9999
+ goto EventScript_16CC65
+ end
+
+EventScript_16CC65:: @ 816CC65
+ getspeciesname 0, 16385
+ loadword 0, gUnknown_819709D
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16CC10
+ checkcoins VAR_RESULT
+ compare_var_to_var VAR_RESULT, VAR_0x4002
+ goto_if 0, EventScript_16CDA5
+ textcolor 3
+ copyvar VAR_0x8000, VAR_0x4001
+ compare_var_to_value VAR_0x8000, 63
+ goto_if 1, EventScript_16CCD4
+ compare_var_to_value VAR_0x8000, 35
+ goto_if 1, EventScript_16CCE9
+ compare_var_to_value VAR_0x8000, 147
+ goto_if 1, EventScript_16CCFE
+ compare_var_to_value VAR_0x8000, 123
+ goto_if 1, EventScript_16CD13
+ compare_var_to_value VAR_0x8000, 137
+ goto_if 1, EventScript_16CD28
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16CD3D
+ end
+
+EventScript_16CCD4:: @ 816CCD4
+ givemon 16385, 9, ITEM_NONE, 0, 0, 0
+ goto EventScript_16CD52
+ end
+
+EventScript_16CCE9:: @ 816CCE9
+ givemon 16385, 8, ITEM_NONE, 0, 0, 0
+ goto EventScript_16CD52
+ end
+
+EventScript_16CCFE:: @ 816CCFE
+ givemon 16385, 18, ITEM_NONE, 0, 0, 0
+ goto EventScript_16CD52
+ end
+
+EventScript_16CD13:: @ 816CD13
+ givemon 16385, 25, ITEM_NONE, 0, 0, 0
+ goto EventScript_16CD52
+ end
+
+EventScript_16CD28:: @ 816CD28
+ givemon 16385, 26, ITEM_NONE, 0, 0, 0
+ goto EventScript_16CD52
+ end
+
+EventScript_16CD3D:: @ 816CD3D
+ givemon 16385, 18, ITEM_NONE, 0, 0, 0
+ goto EventScript_16CD52
+ end
+
+EventScript_16CD52:: @ 816CD52
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16CDB3
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16CDE0
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_16CD74
+ end
+
+EventScript_16CD74:: @ 816CD74
+ textcolor 3
+ loadword 0, gUnknown_81A5E31
+ callstd 4
+ hidecoinsbox 0, 0
+ release
+ end
+
+EventScript_16CD83:: @ 816CD83
+ countpokemon
+ subvar VAR_RESULT, 1
+ copyvar VAR_0x8004, VAR_RESULT
+ call EventScript_1A74EB
+ goto EventScript_16CC10
+ end
+
+EventScript_16CD99:: @ 816CD99
+ textcolor 3
+ loadword 0, gUnknown_819703E
+ callstd 4
+ release
+ end
+
+EventScript_16CDA5:: @ 816CDA5
+ loadword 0, gUnknown_81970D5
+ callstd 4
+ goto EventScript_16CC10
+ end
+
+EventScript_16CDB3:: @ 816CDB3
+ takecoins VAR_0x4002
+ updatecoinsbox 0, 5
+ getspeciesname 0, 16385
+ playfanfare MUS_FANFA1
+ message Text_1A5DF1
+ waitmessage
+ waitfanfare
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16CD83
+ goto EventScript_16CC10
+ end
+
+EventScript_16CDE0:: @ 816CDE0
+ takecoins VAR_0x4002
+ updatecoinsbox 0, 5
+ getspeciesname 0, 16385
+ playfanfare MUS_FANFA1
+ message Text_1A5DF1
+ waitmessage
+ waitfanfare
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16CE12
+ call EventScript_1A8C33
+ goto EventScript_16CE12
+ end
+
+EventScript_16CE12:: @ 816CE12
+ call EventScript_1A8C3C
+ goto EventScript_16CC10
+ end
+
+CeladonCity_GameCorner_PrizeRoom_EventScript_16CE1D:: @ 816CE1D
+ lock
+ faceplayer
+ checkflag FLAG_0x243
+ goto_if 0, EventScript_16CD99
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ showcoinsbox 0, 0
+ loadword 0, gUnknown_8197057
+ callstd 4
+ goto EventScript_16CE47
+ end
+
+EventScript_16CE47:: @ 816CE47
+ message Text_19707A
+ waitmessage
+ multichoice 11, 0, 30, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16CEA5
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16CEB9
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16CECD
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16CEE1
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16CEF5
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_16CC10
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16CC10
+ end
+
+EventScript_16CEA5:: @ 816CEA5
+ setvar VAR_0x4001, 301
+ setvar VAR_0x4002, 4000
+ getmovename 1, MOVE_ICE_BEAM
+ goto EventScript_16CF09
+ end
+
+EventScript_16CEB9:: @ 816CEB9
+ setvar VAR_0x4001, 311
+ setvar VAR_0x4002, 3500
+ getmovename 1, MOVE_IRON_TAIL
+ goto EventScript_16CF09
+ end
+
+EventScript_16CECD:: @ 816CECD
+ setvar VAR_0x4001, 312
+ setvar VAR_0x4002, 4000
+ getmovename 1, MOVE_THUNDERBOLT
+ goto EventScript_16CF09
+ end
+
+EventScript_16CEE1:: @ 816CEE1
+ setvar VAR_0x4001, 318
+ setvar VAR_0x4002, 4500
+ getmovename 1, MOVE_SHADOW_BALL
+ goto EventScript_16CF09
+ end
+
+EventScript_16CEF5:: @ 816CEF5
+ setvar VAR_0x4001, 323
+ setvar VAR_0x4002, 4000
+ getmovename 1, MOVE_FLAMETHROWER
+ goto EventScript_16CF09
+ end
+
+EventScript_16CF09:: @ 816CF09
+ loadword 0, gUnknown_81970B2
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16CC10
+ goto EventScript_16CF3F
+ end
+
+EventScript_16CF22:: @ 816CF22
+ getitemname 0, 16385
+ loadword 0, gUnknown_819709D
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16CC10
+ goto EventScript_16CF3F
+ end
+
+EventScript_16CF3F:: @ 816CF3F
+ getitemname 0, 16385
+ checkcoins VAR_RESULT
+ compare_var_to_var VAR_RESULT, VAR_0x4002
+ goto_if 0, EventScript_16CDA5
+ checkitemspace 16385, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16CF79
+ takecoins VAR_0x4002
+ updatecoinsbox 0, 5
+ setorcopyvar VAR_0x8000, VAR_0x4001
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ goto EventScript_16CC10
+ end
+
+EventScript_16CF79:: @ 816CF79
+ textcolor 3
+ loadword 0, gUnknown_81A5242
+ callstd 4
+ hidecoinsbox 0, 0
+ release
+ end
+
+CeladonCity_GameCorner_PrizeRoom_EventScript_16CF88:: @ 816CF88
+ lock
+ faceplayer
+ checkflag FLAG_0x243
+ goto_if 0, EventScript_16CD99
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ showcoinsbox 0, 0
+ loadword 0, gUnknown_8197057
+ callstd 4
+ goto EventScript_16CFB2
+ end
+
+EventScript_16CFB2:: @ 816CFB2
+ message Text_19707A
+ waitmessage
+ multichoice 10, 0, 41, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16D010
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16D020
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16D030
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16D040
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16D050
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_16CC10
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16CC10
+ end
+
+EventScript_16D010:: @ 816D010
+ setvar VAR_0x4001, 194
+ setvar VAR_0x4002, 800
+ goto EventScript_16CF22
+ end
+
+EventScript_16D020:: @ 816D020
+ setvar VAR_0x4001, 205
+ setvar VAR_0x4002, 1000
+ goto EventScript_16CF22
+ end
+
+EventScript_16D030:: @ 816D030
+ setvar VAR_0x4001, 215
+ setvar VAR_0x4002, 1000
+ goto EventScript_16CF22
+ end
+
+EventScript_16D040:: @ 816D040
+ setvar VAR_0x4001, 209
+ setvar VAR_0x4002, 1000
+ goto EventScript_16CF22
+ end
+
+EventScript_16D050:: @ 816D050
+ setvar VAR_0x4001, 40
+ setvar VAR_0x4002, 1600
+ goto EventScript_16CF22
+ end
diff --git a/data/maps/CeladonCity_Gym/scripts.inc b/data/maps/CeladonCity_Gym/scripts.inc
new file mode 100644
index 000000000..298c4a7da
--- /dev/null
+++ b/data/maps/CeladonCity_Gym/scripts.inc
@@ -0,0 +1,116 @@
+CeladonCity_Gym_MapScripts:: @ 816D060
+ .byte 0
+
+CeladonCity_Gym_EventScript_16D061:: @ 816D061
+ setvar VAR_0x8004, 5
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ trainerbattle 1, 417, 0, Text_197114, Text_197260, EventScript_16D0A0
+ checkflag FLAG_0x293
+ goto_if 0, EventScript_16D0C6
+ setvar VAR_0x8004, 5
+ setvar VAR_0x8005, 4
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_81972B8
+ callstd 4
+ release
+ end
+
+EventScript_16D0A0:: @ 816D0A0
+ setvar VAR_0x8004, 5
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ clearflag FLAG_0x09E
+ setflag FLAG_0x4B3
+ setflag 2083
+ setvar VAR_0x8008, 4
+ call EventScript_1A6B18
+ goto EventScript_16D0C6
+ end
+
+EventScript_16D0C6:: @ 816D0C6
+ loadword 0, gUnknown_8197327
+ callstd 4
+ checkitemspace ITEM_TM19, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16D107
+ additem ITEM_TM19, 1
+ loadword 0, gUnknown_81973BA
+ setorcopyvar VAR_0x8000, 307
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x293
+ loadword 0, gUnknown_81973D7
+ callstd 4
+ release
+ end
+
+EventScript_16D107:: @ 816D107
+ loadword 0, gUnknown_819745D
+ callstd 4
+ release
+ end
+
+CeladonCity_Gym_EventScript_16D111:: @ 816D111
+ trainerbattle 0, 132, 0, Text_19747C, Text_1974C4
+ loadword 0, gUnknown_81974D6
+ callstd 6
+ end
+
+CeladonCity_Gym_EventScript_16D128:: @ 816D128
+ trainerbattle 0, 133, 0, Text_1976C5, Text_1976FF
+ setvar VAR_0x8004, 5
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8197708
+ callstd 6
+ end
+
+CeladonCity_Gym_EventScript_16D14C:: @ 816D14C
+ trainerbattle 0, 160, 0, Text_197595, Text_1975BB
+ loadword 0, gUnknown_81975D1
+ callstd 6
+ end
+
+CeladonCity_Gym_EventScript_16D163:: @ 816D163
+ trainerbattle 0, 265, 0, Text_1974FA, Text_19751C
+ loadword 0, gUnknown_8197527
+ callstd 6
+ end
+
+CeladonCity_Gym_EventScript_16D17A:: @ 816D17A
+ trainerbattle 0, 266, 0, Text_19760B, Text_197660
+ setvar VAR_0x8004, 5
+ setvar VAR_0x8005, 3
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8197664
+ callstd 6
+ end
+
+CeladonCity_Gym_EventScript_16D19E:: @ 816D19E
+ trainerbattle 0, 267, 0, Text_197747, Text_19777A
+ loadword 0, gUnknown_8197788
+ callstd 6
+ end
+
+CeladonCity_Gym_EventScript_16D1B5:: @ 816D1B5
+ trainerbattle 0, 402, 0, Text_1977E5, Text_197832
+ loadword 0, gUnknown_819783E
+ callstd 6
+ end
+
+CeladonCity_Gym_EventScript_16D1CC:: @ 816D1CC
+ lockall
+ checkflag 2083
+ goto_if 1, EventScript_16D1E0
+ loadword 0, gUnknown_8197874
+ callstd 4
+ releaseall
+ end
+
+EventScript_16D1E0:: @ 816D1E0
+ loadword 0, gUnknown_81978AB
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/CeladonCity_Hotel/scripts.inc b/data/maps/CeladonCity_Hotel/scripts.inc
new file mode 100644
index 000000000..51a5ba906
--- /dev/null
+++ b/data/maps/CeladonCity_Hotel/scripts.inc
@@ -0,0 +1,22 @@
+CeladonCity_Hotel_MapScripts:: @ 816D283
+ .byte 0
+
+CeladonCity_Hotel_EventScript_16D284:: @ 816D284
+ loadword 0, gUnknown_8197B77
+ callstd 2
+ end
+
+CeladonCity_Hotel_EventScript_16D28D:: @ 816D28D
+ loadword 0, gUnknown_8197BBE
+ callstd 2
+ end
+
+CeladonCity_Hotel_EventScript_16D296:: @ 816D296
+ loadword 0, gUnknown_8197C0C
+ callstd 2
+ end
+
+CeladonCity_Hotel_EventScript_16D29F:: @ 816D29F
+ loadword 0, gUnknown_8197C30
+ callstd 2
+ end
diff --git a/data/maps/CeladonCity_House1/scripts.inc b/data/maps/CeladonCity_House1/scripts.inc
new file mode 100644
index 000000000..22d98478b
--- /dev/null
+++ b/data/maps/CeladonCity_House1/scripts.inc
@@ -0,0 +1,17 @@
+CeladonCity_House1_MapScripts:: @ 816D267
+ .byte 0
+
+CeladonCity_House1_EventScript_16D268:: @ 816D268
+ loadword 0, gUnknown_8197A9F
+ callstd 2
+ end
+
+CeladonCity_House1_EventScript_16D271:: @ 816D271
+ loadword 0, gUnknown_8197AD3
+ callstd 2
+ end
+
+CeladonCity_House1_EventScript_16D27A:: @ 816D27A
+ loadword 0, gUnknown_8197B20
+ callstd 2
+ end
diff --git a/data/maps/CeladonCity_PokemonCenter_1F/scripts.inc b/data/maps/CeladonCity_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..adb65d7d3
--- /dev/null
+++ b/data/maps/CeladonCity_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,30 @@
+CeladonCity_PokemonCenter_1F_MapScripts:: @ 816C5EC
+ map_script 3, CeladonCity_PokemonCenter_1F_MapScript1_16C5F7
+ map_script 5, CeladonCity_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+CeladonCity_PokemonCenter_1F_MapScript1_16C5F7:: @ 816C5F7
+ setrespawn 7
+ end
+
+CeladonCity_PokemonCenter_1F_EventScript_16C5FB:: @ 816C5FB
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+CeladonCity_PokemonCenter_1F_EventScript_16C604:: @ 816C604
+ loadword 0, gUnknown_819685B
+ callstd 2
+ end
+
+CeladonCity_PokemonCenter_1F_EventScript_16C60D:: @ 816C60D
+ loadword 0, gUnknown_81968C2
+ callstd 2
+ end
+
+CeladonCity_PokemonCenter_1F_EventScript_16C616:: @ 816C616
+ loadword 0, gUnknown_8196913
+ callstd 2
+ end
diff --git a/data/maps/CeladonCity_PokemonCenter_2F/scripts.inc b/data/maps/CeladonCity_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..08ce23ad1
--- /dev/null
+++ b/data/maps/CeladonCity_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+CeladonCity_PokemonCenter_2F_MapScripts:: @ 816C61F
+ map_script 2, CeladonCity_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, CeladonCity_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, CeladonCity_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, CeladonCity_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+CeladonCity_PokemonCenter_2F_EventScript_16C634:: @ 816C634
+ call EventScript_1BB4A3
+ end
+
+EventScript_16C63A:: @ 816C63A
+ call EventScript_1BB6AB
+ end
+
+EventScript_16C640:: @ 816C640
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/CeladonCity_Restaurant/scripts.inc b/data/maps/CeladonCity_Restaurant/scripts.inc
new file mode 100644
index 000000000..2b84f09f0
--- /dev/null
+++ b/data/maps/CeladonCity_Restaurant/scripts.inc
@@ -0,0 +1,54 @@
+CeladonCity_Restaurant_MapScripts:: @ 816D1EA
+ .byte 0
+
+CeladonCity_Restaurant_EventScript_16D1EB:: @ 816D1EB
+ loadword 0, gUnknown_81978E6
+ callstd 2
+ end
+
+CeladonCity_Restaurant_EventScript_16D1F4:: @ 816D1F4
+ loadword 0, gUnknown_8197915
+ callstd 2
+ end
+
+CeladonCity_Restaurant_EventScript_16D1FD:: @ 816D1FD
+ lock
+ faceplayer
+ checkflag FLAG_0x243
+ goto_if 1, EventScript_16D24B
+ loadword 0, gUnknown_81979C1
+ callstd 4
+ checkitemspace ITEM_COIN_CASE, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16D241
+ additem ITEM_COIN_CASE, 1
+ loadword 0, gUnknown_8197A38
+ setorcopyvar VAR_0x8000, 260
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x243
+ release
+ end
+
+EventScript_16D241:: @ 816D241
+ loadword 0, gUnknown_8197A5E
+ callstd 4
+ release
+ end
+
+EventScript_16D24B:: @ 816D24B
+ loadword 0, gUnknown_8197A72
+ callstd 4
+ release
+ end
+
+CeladonCity_Restaurant_EventScript_16D255:: @ 816D255
+ loadword 0, gUnknown_8197952
+ callstd 2
+ end
+
+CeladonCity_Restaurant_EventScript_16D25E:: @ 816D25E
+ loadword 0, gUnknown_819798A
+ callstd 2
+ end
diff --git a/data/maps/CeruleanCave_1F/scripts.inc b/data/maps/CeruleanCave_1F/scripts.inc
new file mode 100644
index 000000000..be15e9b22
--- /dev/null
+++ b/data/maps/CeruleanCave_1F/scripts.inc
@@ -0,0 +1,7 @@
+CeruleanCave_1F_MapScripts:: @ 81624B3
+ map_script 3, CeruleanCave_1F_MapScript1_1624B9
+ .byte 0
+
+CeruleanCave_1F_MapScript1_1624B9:: @ 81624B9
+ setworldmapflag 2227
+ end
diff --git a/data/maps/CeruleanCave_2F/scripts.inc b/data/maps/CeruleanCave_2F/scripts.inc
new file mode 100644
index 000000000..a950a3854
--- /dev/null
+++ b/data/maps/CeruleanCave_2F/scripts.inc
@@ -0,0 +1,2 @@
+CeruleanCave_2F_MapScripts:: @ 81624BD
+ .byte 0
diff --git a/data/maps/CeruleanCave_B1F/scripts.inc b/data/maps/CeruleanCave_B1F/scripts.inc
new file mode 100644
index 000000000..983fea617
--- /dev/null
+++ b/data/maps/CeruleanCave_B1F/scripts.inc
@@ -0,0 +1,70 @@
+CeruleanCave_B1F_MapScripts:: @ 81624BE
+ map_script 5, CeruleanCave_B1F_MapScript1_1624C9
+ map_script 3, CeruleanCave_B1F_MapScript2_1624E7
+ .byte 0
+
+CeruleanCave_B1F_MapScript1_1624C9:: @ 81624C9
+ checkflag 2055
+ call_if 1, EventScript_1624D3
+ end
+
+EventScript_1624D3:: @ 81624D3
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 5, EventScript_1A77A9
+ removeobject VAR_LAST_TALKED
+ return
+
+CeruleanCave_B1F_MapScript2_1624E7:: @ 81624E7
+ checkflag FLAG_0x2BC
+ call_if 0, EventScript_1624F1
+ end
+
+EventScript_1624F1:: @ 81624F1
+ clearflag FLAG_0x081
+ return
+
+CeruleanCave_B1F_EventScript_1624F5:: @ 81624F5
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_MEWTWO, 2
+ message Text_177F9F
+ waitmessage
+ waitmoncry
+ delay 20
+ playbgm BGM_FRLG_LEADER_EYE, 0
+ waitbuttonpress
+ setwildbattle SPECIES_MEWTWO, 70, ITEM_NONE
+ setflag 2055
+ special sub_807F9D8
+ waitstate
+ clearflag 2055
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_162558
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_162561
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_162561
+ setflag FLAG_0x2BC
+ release
+ end
+
+EventScript_162558:: @ 8162558
+ setflag FLAG_0x2BC
+ goto EventScript_1A922D
+
+EventScript_162560:: @ 8162560
+ end
+
+EventScript_162561:: @ 8162561
+ setvar VAR_0x8004, 150
+ goto EventScript_1A9236
+
+EventScript_16256B:: @ 816256B
+ end
diff --git a/data/maps/CeruleanCity/scripts.inc b/data/maps/CeruleanCity/scripts.inc
new file mode 100644
index 000000000..7f8e62f5b
--- /dev/null
+++ b/data/maps/CeruleanCity/scripts.inc
@@ -0,0 +1,415 @@
+CeruleanCity_MapScripts:: @ 8166471
+ map_script 3, CeruleanCity_MapScript1_166477
+ .byte 0
+
+CeruleanCity_MapScript1_166477:: @ 8166477
+ setworldmapflag 2195
+ checkflag FLAG_0x234
+ call_if 0, EventScript_166484
+ end
+
+EventScript_166484:: @ 8166484
+ setobjectxyperm 1, 30, 12
+ setobjectxyperm 5, 26, 31
+ setobjectxyperm 6, 27, 31
+ return
+
+CeruleanCity_EventScript_16649A:: @ 816649A
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_1664CC
+ end
+
+CeruleanCity_EventScript_1664A6:: @ 81664A6
+ lockall
+ setvar VAR_0x4001, 1
+ setobjectxyperm 8, 23, 0
+ goto EventScript_1664CC
+ end
+
+CeruleanCity_EventScript_1664B9:: @ 81664B9
+ lockall
+ setvar VAR_0x4001, 2
+ setobjectxyperm 8, 24, 0
+ goto EventScript_1664CC
+ end
+
+EventScript_1664CC:: @ 81664CC
+ textcolor 0
+ setvar VAR_0x4054, 2
+ playbgm BGM_FRLG_RIVAL, 0
+ addobject 8
+ applymovement 8, Movement_1665D3
+ waitmovement 0
+ loadword 0, gUnknown_817EAD7
+ callstd 4
+ setvar VAR_LAST_TALKED, 8
+ compare_var_to_value VAR_STARTER_MON, 2
+ call_if 1, EventScript_166582
+ compare_var_to_value VAR_STARTER_MON, 1
+ call_if 1, EventScript_16658D
+ compare_var_to_value VAR_STARTER_MON, 0
+ call_if 1, EventScript_166598
+ setvar VAR_0x8004, 13
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_817EB95
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_RIVAL_POSTBATTLE, 0
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_1665A3
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_1665A3
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_1665B5
+ loadword 0, gUnknown_817ECD4
+ callstd 4
+ setvar VAR_0x4052, 1
+ setflag FLAG_0x29B
+ setorcopyvar VAR_0x8000, 363
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ loadword 0, gUnknown_817ED5D
+ callstd 4
+ closemessage
+ applymovement 8, Movement_1665FB
+ waitmovement 0
+ fadedefaultbgm
+ removeobject 8
+ releaseall
+ end
+
+EventScript_166582:: @ 8166582
+ trainerbattle 3, 332, 0, Text_17EB71
+ return
+
+EventScript_16658D:: @ 816658D
+ trainerbattle 3, 333, 0, Text_17EB71
+ return
+
+EventScript_166598:: @ 8166598
+ trainerbattle 3, 334, 0, Text_17EB71
+ return
+
+EventScript_1665A3:: @ 81665A3
+ applymovement 255, Movement_1665C7
+ applymovement 8, Movement_1665D9
+ waitmovement 0
+ return
+
+EventScript_1665B5:: @ 81665B5
+ applymovement 255, Movement_1665CD
+ applymovement 8, Movement_1665EA
+ waitmovement 0
+ return
+
+Movement_1665C7:: @ 81665C7
+ step_1c
+ step_1b
+ step_30
+ step_1c
+ step_2d
+ step_end
+
+Movement_1665CD:: @ 81665CD
+ step_1c
+ step_1b
+ step_2f
+ step_1c
+ step_2d
+ step_end
+
+Movement_1665D3:: @ 81665D3
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_1665D9:: @ 81665D9
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_1c
+ step_1c
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_1665EA:: @ 81665EA
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_1c
+ step_1c
+ step_13
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_1665FB:: @ 81665FB
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+CeruleanCity_EventScript_166603:: @ 8166603
+ lock
+ faceplayer
+ checktrainerflag 355
+ goto_if 1, EventScript_16662E
+ message Text_17EE0E
+ waitmessage
+ playbgm BGM_FRLG_SUSPICIOUS_EYE, 0
+ waitbuttonpress
+ trainerbattle 3, 355, 0, Text_17EE70
+ setvar VAR_0x407D, 1
+ goto EventScript_16662E
+ end
+
+EventScript_16662E:: @ 816662E
+ loadword 0, gUnknown_817EE9C
+ callstd 4
+ checkitemspace ITEM_TM28, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_166677
+ additem ITEM_TM28, 1
+ loadword 0, gUnknown_817EEBF
+ setorcopyvar VAR_0x8000, 316
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ loadword 0, gUnknown_817EEED
+ callstd 4
+ closemessage
+ fadescreen 1
+ removeobject 2
+ fadescreen 0
+ setflag FLAG_0x23F
+ release
+ end
+
+EventScript_166677:: @ 8166677
+ textcolor 0
+ loadword 0, gUnknown_817EF07
+ callstd 4
+ release
+ end
+
+CeruleanCity_EventScript_166683:: @ 8166683
+ lockall
+ setvar VAR_0x4001, 0
+ applymovement 2, Movement_1A75E9
+ waitmovement 0
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ goto EventScript_1666C3
+ end
+
+CeruleanCity_EventScript_1666A3:: @ 81666A3
+ lockall
+ setvar VAR_0x4001, 1
+ applymovement 2, Movement_1A75ED
+ waitmovement 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ goto EventScript_1666C3
+ end
+
+EventScript_1666C3:: @ 81666C3
+ textcolor 0
+ loadword 0, Text_17EE0E
+ callstd 4
+ setvar VAR_LAST_TALKED, 2
+ trainerbattle 3, 355, 0, Text_17EE70
+ setvar VAR_0x407D, 1
+ goto EventScript_16662E
+ end
+
+CeruleanCity_EventScript_1666E7:: @ 81666E7
+ lock
+ faceplayer
+ loadword 0, gUnknown_817F0F1
+ callstd 4
+ closemessage
+ applymovement 1, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+CeruleanCity_EventScript_1666FE:: @ 81666FE
+ lock
+ faceplayer
+ checkflag FLAG_0x234
+ goto_if 1, EventScript_166713
+ loadword 0, gUnknown_817F01D
+ callstd 4
+ release
+ end
+
+EventScript_166713:: @ 8166713
+ loadword 0, gUnknown_817EF89
+ callstd 4
+ release
+ end
+
+CeruleanCity_EventScript_16671D:: @ 816671D
+ loadword 0, gUnknown_817F0B2
+ callstd 2
+ end
+
+CeruleanCity_EventScript_166726:: @ 8166726
+ loadword 0, gUnknown_817EF3F
+ callstd 2
+ end
+
+CeruleanCity_EventScript_16672F:: @ 816672F
+ loadword 0, gUnknown_817F319
+ callstd 2
+ end
+
+CeruleanCity_EventScript_166738:: @ 8166738
+ lock
+ faceplayer
+ loadword 0, gUnknown_817F2CF
+ callstd 4
+ closemessage
+ applymovement 11, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+CeruleanCity_EventScript_16674F:: @ 816674F
+ lock
+ random 3
+ copyvar VAR_0x8008, VAR_RESULT
+ compare_var_to_value VAR_0x8008, 0
+ call_if 1, EventScript_1667B0
+ compare_var_to_value VAR_0x8008, 1
+ call_if 1, EventScript_1667B6
+ compare_var_to_value VAR_0x8008, 2
+ call_if 1, EventScript_1667BC
+ waitmessage
+ delay 40
+ playse SE_PIN
+ applymovement 5, Movement_1A75D9
+ waitmovement 0
+ delay 30
+ compare_var_to_value VAR_0x8008, 0
+ call_if 1, EventScript_1667C2
+ compare_var_to_value VAR_0x8008, 1
+ call_if 1, EventScript_1667CB
+ compare_var_to_value VAR_0x8008, 2
+ call_if 1, EventScript_1667D4
+ release
+ end
+
+EventScript_1667B0:: @ 81667B0
+ message Text_17F183
+ return
+
+EventScript_1667B6:: @ 81667B6
+ message Text_17F1C2
+ return
+
+EventScript_1667BC:: @ 81667BC
+ message Text_17F1E9
+ return
+
+EventScript_1667C2:: @ 81667C2
+ loadword 0, gUnknown_817F1A1
+ callstd 4
+ return
+
+EventScript_1667CB:: @ 81667CB
+ loadword 0, gUnknown_817F1D2
+ callstd 4
+ return
+
+EventScript_1667D4:: @ 81667D4
+ loadword 0, gUnknown_817F1FC
+ callstd 4
+ return
+
+CeruleanCity_EventScript_1667DD:: @ 81667DD
+ lock
+ random 4
+ copyvar VAR_0x8008, VAR_RESULT
+ compare_var_to_value VAR_0x8008, 0
+ call_if 1, EventScript_166814
+ compare_var_to_value VAR_0x8008, 1
+ call_if 1, EventScript_16681D
+ compare_var_to_value VAR_0x8008, 2
+ call_if 1, EventScript_166826
+ compare_var_to_value VAR_0x8008, 3
+ call_if 1, EventScript_16682F
+ release
+ end
+
+EventScript_166814:: @ 8166814
+ loadword 0, gUnknown_817F270
+ callstd 4
+ return
+
+EventScript_16681D:: @ 816681D
+ loadword 0, gUnknown_817F287
+ callstd 4
+ return
+
+EventScript_166826:: @ 8166826
+ loadword 0, gUnknown_817F2A2
+ callstd 4
+ return
+
+EventScript_16682F:: @ 816682F
+ loadword 0, gUnknown_817F2B7
+ callstd 4
+ return
+
+CeruleanCity_EventScript_166838:: @ 8166838
+ loadword 0, gUnknown_817F420
+ callstd 3
+ end
+
+CeruleanCity_EventScript_166841:: @ 8166841
+ loadword 0, gUnknown_817F453
+ callstd 3
+ end
+
+CeruleanCity_EventScript_16684A:: @ 816684A
+ loadword 0, gUnknown_817F4C5
+ callstd 3
+ end
+
+CeruleanCity_EventScript_166853:: @ 8166853
+ lockall
+ setvar VAR_0x8004, 3
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_817F4EF
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/CeruleanCity_BikeShop/scripts.inc b/data/maps/CeruleanCity_BikeShop/scripts.inc
new file mode 100644
index 000000000..7999511ef
--- /dev/null
+++ b/data/maps/CeruleanCity_BikeShop/scripts.inc
@@ -0,0 +1,92 @@
+CeruleanCity_BikeShop_MapScripts:: @ 816ABBC
+ .byte 0
+
+CeruleanCity_BikeShop_EventScript_16ABBD:: @ 816ABBD
+ lock
+ faceplayer
+ checkflag FLAG_0x271
+ goto_if 1, EventScript_16AC58
+ checkflag FLAG_0x241
+ goto_if 1, EventScript_16AC22
+ showmoneybox 0, 0, 0
+ message Text_192755
+ waitmessage
+ multichoice 11, 0, 13, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16AC07
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16AC15
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16AC15
+ end
+
+EventScript_16AC07:: @ 816AC07
+ loadword 0, gUnknown_8192796
+ callstd 4
+ goto EventScript_16AC15
+ end
+
+EventScript_16AC15:: @ 816AC15
+ loadword 0, gUnknown_819280E
+ callstd 4
+ hidemoneybox
+ .byte 0
+ .byte 0
+ release
+ end
+
+EventScript_16AC22:: @ 816AC22
+ loadword 0, gUnknown_81927B2
+ callstd 4
+ loadword 0, gUnknown_81927E1
+ setorcopyvar VAR_0x8000, 360
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ setflag FLAG_0x271
+ additem ITEM_BICYCLE, 1
+ removeitem ITEM_BIKE_VOUCHER, 1
+ loadword 0, gUnknown_819280E
+ callstd 4
+ release
+ end
+
+EventScript_16AC58:: @ 816AC58
+ loadword 0, gUnknown_8192833
+ callstd 4
+ release
+ end
+
+EventScript_16AC62:: @ 816AC62
+ loadword 0, gUnknown_81928A8
+ callstd 4
+ release
+ end
+
+CeruleanCity_BikeShop_EventScript_16AC6C:: @ 816AC6C
+ loadword 0, gUnknown_81928CF
+ callstd 2
+ end
+
+CeruleanCity_BikeShop_EventScript_16AC75:: @ 816AC75
+ lock
+ faceplayer
+ checkflag FLAG_0x271
+ goto_if 1, EventScript_16AC8A
+ loadword 0, gUnknown_8192937
+ callstd 4
+ release
+ end
+
+EventScript_16AC8A:: @ 816AC8A
+ loadword 0, gUnknown_8192968
+ callstd 4
+ release
+ end
+
+CeruleanCity_BikeShop_EventScript_16AC94:: @ 816AC94
+CeruleanCity_EventScript_16AC94:: @ 816AC94
+ loadword 0, gUnknown_81929AD
+ callstd 3
+ end
diff --git a/data/maps/CeruleanCity_Gym/scripts.inc b/data/maps/CeruleanCity_Gym/scripts.inc
new file mode 100644
index 000000000..850e8b23d
--- /dev/null
+++ b/data/maps/CeruleanCity_Gym/scripts.inc
@@ -0,0 +1,96 @@
+CeruleanCity_Gym_MapScripts:: @ 816AAA0
+ .byte 0
+
+CeruleanCity_Gym_EventScript_16AAA1:: @ 816AAA1
+ setvar VAR_0x8004, 3
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ trainerbattle 1, 415, 0, Text_1921EF, Text_19242D, EventScript_16AAD3
+ checkflag FLAG_0x297
+ goto_if 0, EventScript_16AAF9
+ loadword 0, gUnknown_81922BF
+ callstd 4
+ release
+ end
+
+EventScript_16AAD3:: @ 816AAD3
+ setvar VAR_0x8004, 3
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ setflag FLAG_0x4B1
+ setflag 2081
+ setrespawn 4
+ setvar VAR_0x8008, 2
+ call EventScript_1A6B18
+ goto EventScript_16AAF9
+ end
+
+EventScript_16AAF9:: @ 816AAF9
+ loadword 0, gUnknown_81922F7
+ callstd 4
+ checkitemspace ITEM_TM03, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16AB3A
+ additem ITEM_TM03, 1
+ loadword 0, gUnknown_81923F1
+ setorcopyvar VAR_0x8000, 291
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x297
+ loadword 0, gUnknown_81922BF
+ callstd 4
+ release
+ end
+
+EventScript_16AB3A:: @ 816AB3A
+ loadword 0, gUnknown_819240E
+ callstd 4
+ release
+ end
+
+CeruleanCity_Gym_EventScript_16AB44:: @ 816AB44
+ trainerbattle 0, 150, 0, Text_192481, Text_1924D0
+ loadword 0, gUnknown_81924E4
+ callstd 6
+ end
+
+CeruleanCity_Gym_EventScript_16AB5B:: @ 816AB5B
+ trainerbattle 0, 234, 0, Text_192524, Text_192547
+ setvar VAR_0x8004, 3
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8192556
+ callstd 6
+ end
+
+CeruleanCity_Gym_EventScript_16AB7F:: @ 816AB7F
+ lock
+ faceplayer
+ checkflag FLAG_0x4B1
+ goto_if 1, EventScript_16AB94
+ loadword 0, gUnknown_81925AC
+ callstd 4
+ release
+ end
+
+EventScript_16AB94:: @ 816AB94
+ loadword 0, gUnknown_8192688
+ callstd 4
+ release
+ end
+
+CeruleanCity_Gym_EventScript_16AB9E:: @ 816AB9E
+ lockall
+ checkflag 2081
+ goto_if 1, EventScript_16ABB2
+ loadword 0, gUnknown_81926E1
+ callstd 4
+ releaseall
+ end
+
+EventScript_16ABB2:: @ 816ABB2
+ loadword 0, gUnknown_8192719
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/CeruleanCity_House1/scripts.inc b/data/maps/CeruleanCity_House1/scripts.inc
new file mode 100644
index 000000000..1e42bbe80
--- /dev/null
+++ b/data/maps/CeruleanCity_House1/scripts.inc
@@ -0,0 +1,121 @@
+CeruleanCity_House1_MapScripts:: @ 816A7EF
+ .byte 0
+
+CeruleanCity_House1_EventScript_16A7F0:: @ 816A7F0
+ lock
+ faceplayer
+ loadword 0, gUnknown_81918E7
+ callstd 4
+ message Text_191967
+ waitmessage
+ setvar VAR_0x8004, 0
+ special sub_80CB7C4
+ waitstate
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16A8FB
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16A909
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16A917
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16A925
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16A933
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_16A941
+ compare_var_to_value VAR_0x8000, 6
+ goto_if 1, EventScript_16A94F
+ compare_var_to_value VAR_0x8000, 7
+ goto_if 1, EventScript_16A95D
+ compare_var_to_value VAR_0x8000, 8
+ goto_if 1, EventScript_16A96B
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16A96B
+ end
+
+EventScript_16A87D:: @ 816A87D
+ message Text_191967
+ waitmessage
+ special sub_80CBC5C
+ waitstate
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16A8FB
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16A909
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16A917
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16A925
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16A933
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_16A941
+ compare_var_to_value VAR_0x8000, 6
+ goto_if 1, EventScript_16A94F
+ compare_var_to_value VAR_0x8000, 7
+ goto_if 1, EventScript_16A95D
+ compare_var_to_value VAR_0x8000, 8
+ goto_if 1, EventScript_16A96B
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16A96B
+ end
+
+EventScript_16A8FB:: @ 816A8FB
+ loadword 0, gUnknown_81919BE
+ callstd 4
+ goto EventScript_16A87D
+ end
+
+EventScript_16A909:: @ 816A909
+ loadword 0, gUnknown_8191A31
+ callstd 4
+ goto EventScript_16A87D
+ end
+
+EventScript_16A917:: @ 816A917
+ loadword 0, gUnknown_8191AF9
+ callstd 4
+ goto EventScript_16A87D
+ end
+
+EventScript_16A925:: @ 816A925
+ loadword 0, gUnknown_8191B69
+ callstd 4
+ goto EventScript_16A87D
+ end
+
+EventScript_16A933:: @ 816A933
+ loadword 0, gUnknown_8191C36
+ callstd 4
+ goto EventScript_16A87D
+ end
+
+EventScript_16A941:: @ 816A941
+ loadword 0, gUnknown_8191CA9
+ callstd 4
+ goto EventScript_16A87D
+ end
+
+EventScript_16A94F:: @ 816A94F
+ loadword 0, gUnknown_8191D78
+ callstd 4
+ goto EventScript_16A87D
+
+EventScript_16A95C:: @ 816A95C
+ end
+
+EventScript_16A95D:: @ 816A95D
+ loadword 0, gUnknown_8191DF8
+ callstd 4
+ goto EventScript_16A87D
+
+EventScript_16A96A:: @ 816A96A
+ end
+
+EventScript_16A96B:: @ 816A96B
+ loadword 0, gUnknown_819199E
+ callstd 4
+ release
+ end
diff --git a/data/maps/CeruleanCity_House2/scripts.inc b/data/maps/CeruleanCity_House2/scripts.inc
new file mode 100644
index 000000000..3d098c13a
--- /dev/null
+++ b/data/maps/CeruleanCity_House2/scripts.inc
@@ -0,0 +1,28 @@
+CeruleanCity_House2_MapScripts:: @ 816A975
+ .byte 0
+
+CeruleanCity_House2_EventScript_16A976:: @ 816A976
+ lock
+ faceplayer
+ checkflag FLAG_0x23F
+ goto_if 1, EventScript_16A98B
+ loadword 0, gUnknown_8191E13
+ callstd 4
+ release
+ end
+
+EventScript_16A98B:: @ 816A98B
+ loadword 0, gUnknown_8191ED8
+ callstd 4
+ release
+ end
+
+CeruleanCity_House2_EventScript_16A995:: @ 816A995
+ loadword 0, gUnknown_8191F2A
+ callstd 2
+ end
+
+CeruleanCity_House2_EventScript_16A99E:: @ 816A99E
+ loadword 0, gUnknown_8191F64
+ callstd 3
+ end
diff --git a/data/maps/CeruleanCity_House3/scripts.inc b/data/maps/CeruleanCity_House3/scripts.inc
new file mode 100644
index 000000000..91037b14c
--- /dev/null
+++ b/data/maps/CeruleanCity_House3/scripts.inc
@@ -0,0 +1,50 @@
+CeruleanCity_House3_MapScripts:: @ 816A9A7
+ .byte 0
+
+CeruleanCity_House3_EventScript_16A9A8:: @ 816A9A8
+ loadword 0, gUnknown_8191F80
+ callstd 2
+ end
+
+CeruleanCity_House3_EventScript_16A9B1:: @ 816A9B1
+ lock
+ faceplayer
+ setvar VAR_0x8008, 1
+ call EventScript_1A8CAD
+ checkflag FLAG_0x24A
+ goto_if 1, EventScript_16AA23
+ loadword 0, gUnknown_81A59FE
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16AA0B
+ call EventScript_1A8CBD
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_16AA0B
+ call EventScript_1A8CC9
+ compare_var_to_var VAR_RESULT, VAR_0x8009
+ goto_if 5, EventScript_16AA15
+ call EventScript_1A8CD9
+ loadword 0, gUnknown_81A5A9D
+ callstd 4
+ setflag FLAG_0x24A
+ release
+ end
+
+EventScript_16AA0B:: @ 816AA0B
+ loadword 0, gUnknown_81A5A4E
+ callstd 4
+ release
+ end
+
+EventScript_16AA15:: @ 816AA15
+ getspeciesname 0, 32777
+ loadword 0, gUnknown_81A5A6A
+ callstd 4
+ release
+ end
+
+EventScript_16AA23:: @ 816AA23
+ loadword 0, gUnknown_81A5AA5
+ callstd 4
+ release
+ end
diff --git a/data/maps/CeruleanCity_House4/scripts.inc b/data/maps/CeruleanCity_House4/scripts.inc
new file mode 100644
index 000000000..ffda63cab
--- /dev/null
+++ b/data/maps/CeruleanCity_House4/scripts.inc
@@ -0,0 +1,112 @@
+CeruleanCity_House4_MapScripts:: @ 816ACEE
+ .byte 0
+
+CeruleanCity_House4_EventScript_16ACEF:: @ 816ACEF
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ specialvar VAR_0x8004, sub_8146CE8
+ copyvar VAR_0x8008, VAR_RESULT
+ compare_var_to_value VAR_0x8004, 0
+ goto_if 1, EventScript_16AD59
+ compare_var_to_value VAR_0x8004, 1
+ goto_if 1, EventScript_16AD63
+ compare_var_to_value VAR_0x8004, 2
+ goto_if 1, EventScript_16AD89
+ compare_var_to_value VAR_0x8004, 3
+ goto_if 1, EventScript_16ADAF
+ compare_var_to_value VAR_0x8004, 4
+ goto_if 1, EventScript_16ADC3
+ compare_var_to_value VAR_0x8004, 5
+ goto_if 1, EventScript_16ADE9
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 1, EventScript_16AE0F
+ end
+
+EventScript_16AD59:: @ 816AD59
+ loadword 0, gUnknown_8192AF0
+ callstd 4
+ release
+ end
+
+EventScript_16AD63:: @ 816AD63
+ call EventScript_16AE23
+ loadword 0, gUnknown_8192B43
+ callstd 4
+ setorcopyvar VAR_0x8000, VAR_0x8008
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16AE45
+ release
+ end
+
+EventScript_16AD89:: @ 816AD89
+ call EventScript_16AE23
+ loadword 0, gUnknown_8192C07
+ callstd 4
+ setorcopyvar VAR_0x8000, VAR_0x8008
+ setorcopyvar VAR_0x8001, 4
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16AE45
+ release
+ end
+
+EventScript_16ADAF:: @ 816ADAF
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_8192CD5
+ callstd 4
+ release
+ end
+
+EventScript_16ADC3:: @ 816ADC3
+ call EventScript_16AE23
+ loadword 0, gUnknown_8192D4B
+ callstd 4
+ setorcopyvar VAR_0x8000, VAR_0x8008
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16AE45
+ release
+ end
+
+EventScript_16ADE9:: @ 816ADE9
+ call EventScript_16AE23
+ loadword 0, gUnknown_8192DE3
+ callstd 4
+ setorcopyvar VAR_0x8000, VAR_0x8008
+ setorcopyvar VAR_0x8001, 4
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16AE45
+ release
+ end
+
+EventScript_16AE0F:: @ 816AE0F
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_8192EC5
+ callstd 4
+ release
+ end
+
+EventScript_16AE23:: @ 816AE23
+ playse SE_PIN
+ applymovement 1, Movement_1A75DB
+ waitmovement 0
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ applymovement 1, Movement_1A75DD
+ waitmovement 0
+ return
+
+EventScript_16AE45:: @ 816AE45
+ loadword 0, gUnknown_8192F2A
+ callstd 4
+ release
+ end
diff --git a/data/maps/CeruleanCity_House5/scripts.inc b/data/maps/CeruleanCity_House5/scripts.inc
new file mode 100644
index 000000000..081499778
--- /dev/null
+++ b/data/maps/CeruleanCity_House5/scripts.inc
@@ -0,0 +1,214 @@
+CeruleanCity_House5_MapScripts:: @ 816AE4F
+ .byte 0
+
+CeruleanCity_House5_EventScript_16AE50:: @ 816AE50
+ lock
+ faceplayer
+ checkflag FLAG_0x2BB
+ goto_if 1, EventScript_16AEB7
+ loadword 0, gUnknown_8192F67
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16AEAD
+ checkflag 2119
+ goto_if 0, EventScript_16AEA3
+ loadword 0, gUnknown_8193003
+ callstd 4
+ setflag FLAG_0x2BB
+ setorcopyvar VAR_0x8000, 372
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A6BF9
+ loadword 0, gUnknown_8193033
+ callstd 4
+ release
+ end
+
+EventScript_16AEA3:: @ 816AEA3
+ loadword 0, gUnknown_819321D
+ callstd 4
+ release
+ end
+
+EventScript_16AEAD:: @ 816AEAD
+ loadword 0, gUnknown_819325E
+ callstd 4
+ release
+ end
+
+EventScript_16AEB7:: @ 816AEB7
+ special sub_815F094
+ loadword 0, gUnknown_81932C5
+ callstd 4
+ goto EventScript_16AEC8
+ end
+
+EventScript_16AEC8:: @ 816AEC8
+ message Text_1932F4
+ waitmessage
+ setvar VAR_0x8004, 5
+ special sub_80CB7C4
+ waitstate
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16AF6C
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16AF80
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16AF94
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16AFA8
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16AFBC
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_16AFD0
+ compare_var_to_value VAR_0x8000, 6
+ goto_if 1, EventScript_16AFE4
+ compare_var_to_value VAR_0x8000, 7
+ goto_if 1, EventScript_16AFF8
+ compare_var_to_value VAR_0x8000, 8
+ goto_if 1, EventScript_16B00C
+ compare_var_to_value VAR_0x8000, 9
+ goto_if 1, EventScript_16B020
+ compare_var_to_value VAR_0x8000, 10
+ goto_if 1, EventScript_16B034
+ compare_var_to_value VAR_0x8000, 11
+ goto_if 1, EventScript_16B048
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16B048
+ end
+
+EventScript_16AF6C:: @ 816AF6C
+ getitemname 0, ITEM_ENERGY_POWDER
+ setvar VAR_0x8008, 30
+ setvar VAR_0x8009, 50
+ goto EventScript_16B055
+ end
+
+EventScript_16AF80:: @ 816AF80
+ getitemname 0, ITEM_ENERGY_ROOT
+ setvar VAR_0x8008, 31
+ setvar VAR_0x8009, 80
+ goto EventScript_16B055
+ end
+
+EventScript_16AF94:: @ 816AF94
+ getitemname 0, ITEM_HEAL_POWDER
+ setvar VAR_0x8008, 32
+ setvar VAR_0x8009, 50
+ goto EventScript_16B055
+ end
+
+EventScript_16AFA8:: @ 816AFA8
+ getitemname 0, ITEM_REVIVAL_HERB
+ setvar VAR_0x8008, 33
+ setvar VAR_0x8009, 300
+ goto EventScript_16B055
+ end
+
+EventScript_16AFBC:: @ 816AFBC
+ getitemname 0, ITEM_PROTEIN
+ setvar VAR_0x8008, 64
+ setvar VAR_0x8009, 1000
+ goto EventScript_16B055
+ end
+
+EventScript_16AFD0:: @ 816AFD0
+ getitemname 0, ITEM_IRON
+ setvar VAR_0x8008, 65
+ setvar VAR_0x8009, 1000
+ goto EventScript_16B055
+ end
+
+EventScript_16AFE4:: @ 816AFE4
+ getitemname 0, ITEM_CARBOS
+ setvar VAR_0x8008, 66
+ setvar VAR_0x8009, 1000
+ goto EventScript_16B055
+ end
+
+EventScript_16AFF8:: @ 816AFF8
+ getitemname 0, ITEM_CALCIUM
+ setvar VAR_0x8008, 67
+ setvar VAR_0x8009, 1000
+ goto EventScript_16B055
+ end
+
+EventScript_16B00C:: @ 816B00C
+ getitemname 0, ITEM_ZINC
+ setvar VAR_0x8008, 70
+ setvar VAR_0x8009, 1000
+ goto EventScript_16B055
+ end
+
+EventScript_16B020:: @ 816B020
+ getitemname 0, ITEM_HP_UP
+ setvar VAR_0x8008, 63
+ setvar VAR_0x8009, 1000
+ goto EventScript_16B055
+ end
+
+EventScript_16B034:: @ 816B034
+ getitemname 0, ITEM_PP_UP
+ setvar VAR_0x8008, 69
+ setvar VAR_0x8009, 3000
+ goto EventScript_16B055
+ end
+
+EventScript_16B048:: @ 816B048
+ loadword 0, gUnknown_819342F
+ callstd 4
+ special sub_815F114
+ release
+ end
+
+EventScript_16B055:: @ 816B055
+ loadword 0, gUnknown_819331E
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16AEC8
+ copyvar VAR_0x8004, VAR_0x8009
+ specialvar VAR_RESULT, sub_815EEB0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16B0CC
+ setorcopyvar VAR_0x8000, VAR_0x8008
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16B0BF
+ copyvar VAR_0x8004, VAR_0x8009
+ special sub_815EF5C
+ special sub_815F070
+ loadword 0, gUnknown_819337A
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16AEC8
+ loadword 0, gUnknown_81933FB
+ callstd 4
+ special sub_815F114
+ release
+ end
+
+EventScript_16B0BF:: @ 816B0BF
+ loadword 0, gUnknown_81A5207
+ callstd 4
+ special sub_815F114
+ release
+ end
+
+EventScript_16B0CC:: @ 816B0CC
+ loadword 0, gUnknown_8193352
+ callstd 4
+ goto EventScript_16AEC8
+ end
+
+CeruleanCity_House5_EventScript_16B0DA:: @ 816B0DA
+ lockall
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_814EA7C
+ waitstate
+ releaseall
+ end
diff --git a/data/maps/CeruleanCity_Mart/scripts.inc b/data/maps/CeruleanCity_Mart/scripts.inc
new file mode 100644
index 000000000..e9fc440c4
--- /dev/null
+++ b/data/maps/CeruleanCity_Mart/scripts.inc
@@ -0,0 +1,41 @@
+CeruleanCity_Mart_MapScripts:: @ 816AC9D
+ .byte 0
+
+CeruleanCity_Mart_EventScript_16AC9E:: @ 816AC9E
+ loadword 0, gUnknown_81929C2
+ callstd 2
+ end
+
+CeruleanCity_Mart_EventScript_16ACA7:: @ 816ACA7
+ loadword 0, gUnknown_8192A79
+ callstd 2
+ end
+
+CeruleanCity_Mart_EventScript_16ACB0:: @ 816ACB0
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16ACD8
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16ACD8:: @ 816ACD8
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_BURN_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_REPEL
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/CeruleanCity_PokemonCenter_1F/scripts.inc b/data/maps/CeruleanCity_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..f9d2b2c9a
--- /dev/null
+++ b/data/maps/CeruleanCity_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,41 @@
+CeruleanCity_PokemonCenter_1F_MapScripts:: @ 816AA2D
+ map_script 3, CeruleanCity_PokemonCenter_1F_MapScript1_16AA38
+ map_script 5, CeruleanCity_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+CeruleanCity_PokemonCenter_1F_MapScript1_16AA38:: @ 816AA38
+ setrespawn 4
+ end
+
+CeruleanCity_PokemonCenter_1F_EventScript_16AA3C:: @ 816AA3C
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+CeruleanCity_PokemonCenter_1F_EventScript_16AA45:: @ 816AA45
+ loadword 0, gUnknown_8192079
+ callstd 2
+ end
+
+CeruleanCity_PokemonCenter_1F_EventScript_16AA4E:: @ 816AA4E
+ loadword 0, gUnknown_8191FFB
+ callstd 2
+ end
+
+CeruleanCity_PokemonCenter_1F_EventScript_16AA57:: @ 816AA57
+ lock
+ faceplayer
+ setvar VAR_0x8004, 13
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8192116
+ callstd 4
+ release
+ end
+
+CeruleanCity_PokemonCenter_1F_EventScript_16AA70:: @ 816AA70
+ loadword 0, gUnknown_819214C
+ callstd 2
+ end
diff --git a/data/maps/CeruleanCity_PokemonCenter_2F/scripts.inc b/data/maps/CeruleanCity_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..6abf8a484
--- /dev/null
+++ b/data/maps/CeruleanCity_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+CeruleanCity_PokemonCenter_2F_MapScripts:: @ 816AA79
+ map_script 2, CeruleanCity_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, CeruleanCity_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, CeruleanCity_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, CeruleanCity_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+CeruleanCity_PokemonCenter_2F_EventScript_16AA8E:: @ 816AA8E
+ call EventScript_1BB4A3
+ end
+
+EventScript_16AA94:: @ 816AA94
+ call EventScript_1BB6AB
+ end
+
+EventScript_16AA9A:: @ 816AA9A
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/CinnabarIsland/scripts.inc b/data/maps/CinnabarIsland/scripts.inc
new file mode 100644
index 000000000..10a075b72
--- /dev/null
+++ b/data/maps/CinnabarIsland/scripts.inc
@@ -0,0 +1,384 @@
+CinnabarIsland_MapScripts:: @ 8166ED6
+ map_script 3, CinnabarIsland_MapScript1_166EE1
+ map_script 2, CinnabarIsland_MapScript2_166F6E
+ .byte 0
+
+CinnabarIsland_MapScript1_166EE1:: @ 8166EE1
+ setworldmapflag 2200
+ call EventScript_166F5E
+ compare_var_to_value VAR_0x4071, 1
+ call_if 1, EventScript_166F24
+ compare_var_to_value VAR_0x4071, 3
+ call_if 1, EventScript_166F52
+ compare_var_to_value VAR_0x408A, 1
+ call_if 1, EventScript_166F0B
+ end
+
+EventScript_166F0B:: @ 8166F0B
+ savebgm BGM_FRLG_FOLLOW_ME
+ setflag FLAG_0x002
+ setobjectxyperm 3, 15, 12
+ setobjectmovementtype 3, 9
+ setobjectxyperm 4, 30, 12
+ return
+
+EventScript_166F24:: @ 8166F24
+ getplayerxy VAR_0x8004, VAR_0x8005
+ compare_var_to_value VAR_0x8004, 18
+ goto_if 4, EventScript_166F4A
+ setflag FLAG_0x002
+ setobjectxyperm 3, 18, 12
+ setobjectmovementtype 3, 7
+ setobjectxyperm 4, 30, 12
+ return
+
+EventScript_166F4A:: @ 8166F4A
+ setobjectxyperm 4, 30, 8
+ return
+
+EventScript_166F52:: @ 8166F52
+ setobjectxyperm 3, 21, 8
+ setobjectmovementtype 3, 7
+ return
+
+EventScript_166F5E:: @ 8166F5E
+ checkflag FLAG_0x1A8
+ goto_if 1, EventScript_166F68
+ return
+
+EventScript_166F68:: @ 8166F68
+ setvar VAR_0x4001, 1
+ return
+
+CinnabarIsland_MapScript2_166F6E:: @ 8166F6E
+ map_script_2 VAR_0x408A, 1, EventScript_166F88
+ map_script_2 VAR_0x4071, 1, EventScript_166FCD
+ map_script_2 VAR_0x4071, 3, EventScript_166FA0
+ .2byte 0
+
+EventScript_166F88:: @ 8166F88
+ lockall
+ clearflag FLAG_SPECIAL_FLAG_0x4001
+ savebgm MUS_DUMMY
+ textcolor 0
+ setvar VAR_0x408A, 2
+ delay 20
+ call EventScript_1670E6
+ releaseall
+ end
+
+EventScript_166FA0:: @ 8166FA0
+ lockall
+ textcolor 0
+ loadword 0, gUnknown_8180F09
+ callstd 4
+ closemessage
+ applymovement 3, Movement_166FC6
+ waitmovement 0
+ removeobject 3
+ setvar VAR_0x4071, 4
+ setflag FLAG_0x075
+ clearflag FLAG_0x076
+ releaseall
+ end
+
+Movement_166FC6:: @ 8166FC6
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+EventScript_166FCD:: @ 8166FCD
+ lockall
+ textcolor 0
+ checkflag FLAG_0x002
+ call_if 0, EventScript_167032
+ checkflag FLAG_0x002
+ call_if 1, EventScript_16703D
+ playse SE_PIN
+ applymovement 3, Movement_1A75DB
+ waitmovement 0
+ applymovement 3, Movement_1A75DD
+ waitmovement 0
+ checkflag FLAG_0x002
+ call_if 0, EventScript_167048
+ checkflag FLAG_0x002
+ call_if 1, EventScript_167053
+ loadword 0, gUnknown_8180C90
+ callstd 4
+ loadword 0, gUnknown_8180CAA
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_167068
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_167078
+ end
+
+EventScript_167032:: @ 8167032
+ applymovement 3, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_16703D:: @ 816703D
+ applymovement 3, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_167048:: @ 8167048
+ applymovement 3, Movement_1671A4
+ waitmovement 0
+ return
+
+EventScript_167053:: @ 8167053
+ applymovement 3, Movement_1671A6
+ waitmovement 0
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ return
+
+EventScript_167068:: @ 8167068
+ loadword 0, gUnknown_8180DDD
+ callstd 4
+ closemessage
+ call EventScript_1670E6
+ releaseall
+ end
+
+EventScript_167078:: @ 8167078
+ loadword 0, gUnknown_8180DF8
+ callstd 4
+ closemessage
+ checkflag FLAG_0x002
+ call_if 0, EventScript_1670A0
+ checkflag FLAG_0x002
+ call_if 1, EventScript_1670B3
+ removeobject 3
+ setvar VAR_0x4071, 2
+ clearflag FLAG_0x0A2
+ releaseall
+ end
+
+EventScript_1670A0:: @ 81670A0
+ applymovement 3, Movement_1670AB
+ waitmovement 0
+ return
+
+Movement_1670AB:: @ 81670AB
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+EventScript_1670B3:: @ 81670B3
+ applymovement 255, Movement_1670DB
+ applymovement 3, Movement_1670DE
+ waitmovement 0
+ opendoor 14, 11
+ waitdooranim
+ applymovement 3, Movement_1670E2
+ waitmovement 0
+ closedoor 14, 11
+ waitdooranim
+ return
+
+Movement_1670DB:: @ 81670DB
+ step_12
+ step_30
+ step_end
+
+Movement_1670DE:: @ 81670DE
+ step_1c
+ step_12
+ step_2e
+ step_end
+
+Movement_1670E2:: @ 81670E2
+ step_11
+ step_1a
+ step_60
+ step_end
+
+EventScript_1670E6:: @ 81670E6
+ checkflag FLAG_0x002
+ call_if 1, EventScript_167142
+ addobject 4
+ checkflag FLAG_0x002
+ call_if 0, EventScript_167154
+ checkflag FLAG_0x002
+ call_if 1, EventScript_167166
+ loadword 0, gUnknown_8180EAD
+ callstd 4
+ closemessage
+ checkflag FLAG_0x002
+ call_if 0, EventScript_167171
+ checkflag FLAG_0x002
+ call_if 1, EventScript_167183
+ setvar VAR_0x4071, 2
+ removeobject 3
+ delay 40
+ setflag FLAG_0x06B
+ setvar VAR_0x4075, 1
+ setvar VAR_0x8004, 8
+ setvar VAR_0x8006, 1
+ goto EventScript_1A90DA
+ end
+
+EventScript_167142:: @ 8167142
+ applymovement 3, Movement_1671AF
+ applymovement 255, Movement_1671AF
+ waitmovement 0
+ return
+
+EventScript_167154:: @ 8167154
+ applymovement 3, Movement_1671AA
+ applymovement 4, Movement_167195
+ waitmovement 0
+ return
+
+EventScript_167166:: @ 8167166
+ applymovement 4, Movement_167195
+ waitmovement 0
+ return
+
+EventScript_167171:: @ 8167171
+ applymovement 3, Movement_16719D
+ applymovement 255, Movement_1671BA
+ waitmovement 0
+ return
+
+EventScript_167183:: @ 8167183
+ applymovement 3, Movement_1671B6
+ applymovement 255, Movement_1671C4
+ waitmovement 0
+ return
+
+Movement_167195:: @ 8167195
+ step_1c
+ step_1c
+ step_1f
+ step_1f
+ step_12
+ step_left
+ step_left
+ step_end
+
+Movement_16719D:: @ 816719D
+ step_13
+ step_10
+ step_10
+ step_13
+ step_1a
+ step_60
+ step_end
+
+Movement_1671A4:: @ 81671A4
+ step_11
+ step_end
+
+Movement_1671A6:: @ 81671A6
+ step_12
+ step_12
+ step_12
+ step_end
+
+Movement_1671AA:: @ 81671AA
+ step_1c
+ step_1c
+ step_1b
+ step_30
+ step_end
+
+Movement_1671AF:: @ 81671AF
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_1671B6:: @ 81671B6
+ step_13
+ step_1a
+ step_60
+ step_end
+
+Movement_1671BA:: @ 81671BA
+ step_10
+ step_13
+ step_10
+ step_10
+ step_30
+ step_1a
+ step_13
+ step_1a
+ step_60
+ step_end
+
+Movement_1671C4:: @ 81671C4
+ step_13
+ step_1a
+ step_13
+ step_1a
+ step_60
+ step_end
+
+CinnabarIsland_EventScript_1671CA:: @ 81671CA
+ lockall
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ delay 20
+ loadword 0, gUnknown_8180B20
+ callstd 4
+ closemessage
+ applymovement 255, Movement_1671ED
+ waitmovement 0
+ releaseall
+ end
+
+Movement_1671ED:: @ 81671ED
+ step_10
+ step_end
+
+CinnabarIsland_EventScript_1671EF:: @ 81671EF
+ lock
+ faceplayer
+ setvar VAR_0x8004, 8
+ setvar VAR_0x8005, 3
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8180B34
+ callstd 4
+ release
+ end
+
+CinnabarIsland_EventScript_167208:: @ 8167208
+ loadword 0, gUnknown_8180BA0
+ callstd 2
+ end
+
+CinnabarIsland_EventScript_167211:: @ 8167211
+ loadword 0, gUnknown_8180C0D
+ callstd 3
+ end
+
+CinnabarIsland_EventScript_16721A:: @ 816721A
+ loadword 0, gUnknown_8180C3E
+ callstd 3
+ end
+
+CinnabarIsland_EventScript_167223:: @ 8167223
+ lockall
+ setvar VAR_0x8004, 8
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8180C4A
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/CinnabarIsland_Gym/scripts.inc b/data/maps/CinnabarIsland_Gym/scripts.inc
new file mode 100644
index 000000000..afe1f7a7b
--- /dev/null
+++ b/data/maps/CinnabarIsland_Gym/scripts.inc
@@ -0,0 +1,816 @@
+CinnabarIsland_Gym_MapScripts:: @ 816D94B
+ map_script 1, CinnabarIsland_Gym_MapScript1_16D951
+ .byte 0
+
+CinnabarIsland_Gym_MapScript1_16D951:: @ 816D951
+ checkflag FLAG_0x4B6
+ goto_if 1, EventScript_16D991
+ checkflag FLAG_0x265
+ call_if 1, EventScript_16D9B0
+ checkflag FLAG_0x267
+ call_if 1, EventScript_16D9B6
+ checkflag FLAG_0x268
+ call_if 1, EventScript_16D9BC
+ checkflag FLAG_0x269
+ call_if 1, EventScript_16D9C2
+ checkflag FLAG_0x26A
+ call_if 1, EventScript_16D9C8
+ checkflag FLAG_0x26B
+ call_if 1, EventScript_16D9CE
+ end
+
+EventScript_16D991:: @ 816D991
+ call EventScript_16E117
+ call EventScript_16E157
+ call EventScript_16E197
+ call EventScript_16E1D7
+ call EventScript_16E1F3
+ call EventScript_16E233
+ end
+
+EventScript_16D9B0:: @ 816D9B0
+ call EventScript_16E117
+ return
+
+EventScript_16D9B6:: @ 816D9B6
+ call EventScript_16E157
+ return
+
+EventScript_16D9BC:: @ 816D9BC
+ call EventScript_16E197
+ return
+
+EventScript_16D9C2:: @ 816D9C2
+ call EventScript_16E1D7
+ return
+
+EventScript_16D9C8:: @ 816D9C8
+ call EventScript_16E1F3
+ return
+
+EventScript_16D9CE:: @ 816D9CE
+ call EventScript_16E233
+ return
+
+CinnabarIsland_Gym_EventScript_16D9D4:: @ 816D9D4
+ setvar VAR_0x8004, 8
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ trainerbattle 1, 419, 0, Text_199543, Text_1995FA, EventScript_16DA06
+ checkflag FLAG_0x24E
+ goto_if 0, EventScript_16DA34
+ loadword 0, gUnknown_819971D
+ callstd 4
+ release
+ end
+
+EventScript_16DA06:: @ 816DA06
+ setvar VAR_0x8004, 8
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ setflag FLAG_0x4B6
+ setflag FLAG_UNK826
+ setrespawn 9
+ setvar VAR_0x4071, 1
+ clearflag FLAG_0x062
+ setvar VAR_0x8008, 7
+ call EventScript_1A6B18
+ goto EventScript_16DA34
+ end
+
+EventScript_16DA34:: @ 816DA34
+ loadword 0, gUnknown_819969E
+ callstd 4
+ checkitemspace ITEM_TM38, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16DA75
+ additem ITEM_TM38, 1
+ loadword 0, gUnknown_81996FF
+ setorcopyvar VAR_0x8000, 326
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x24E
+ loadword 0, gUnknown_8199652
+ callstd 4
+ release
+ end
+
+EventScript_16DA75:: @ 816DA75
+ loadword 0, gUnknown_8199789
+ callstd 4
+ release
+ end
+
+CinnabarIsland_Gym_EventScript_16DA7F:: @ 816DA7F
+ trainerbattle 0, 177, 0, Text_1997A5, Text_1997D6
+ loadword 0, gUnknown_81997EA
+ callstd 6
+ end
+
+CinnabarIsland_Gym_EventScript_16DA96:: @ 816DA96
+ trainerbattle 2, 178, 0, Text_1998BD, Text_1998ED, EventScript_16DAB1
+ loadword 0, gUnknown_8199911
+ callstd 6
+ end
+
+EventScript_16DAB1:: @ 816DAB1
+ checkflag FLAG_0x267
+ call_if 0, EventScript_16DABC
+ release
+ end
+
+EventScript_16DABC:: @ 816DABC
+ call EventScript_16DD31
+ return
+
+CinnabarIsland_Gym_EventScript_16DAC2:: @ 816DAC2
+ trainerbattle 2, 179, 0, Text_1999B7, Text_1999DB, EventScript_16DAEA
+ setvar VAR_0x8004, 8
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_81999DF
+ callstd 6
+ end
+
+EventScript_16DAEA:: @ 816DAEA
+ checkflag FLAG_0x269
+ call_if 0, EventScript_16DAF5
+ release
+ end
+
+EventScript_16DAF5:: @ 816DAF5
+ call EventScript_16DEE6
+ return
+
+CinnabarIsland_Gym_EventScript_16DAFB:: @ 816DAFB
+ trainerbattle 2, 180, 0, Text_199AFC, Text_199B16, EventScript_16DB16
+ loadword 0, gUnknown_8199B27
+ callstd 6
+ end
+
+EventScript_16DB16:: @ 816DB16
+ checkflag FLAG_0x26B
+ call_if 0, EventScript_16DB21
+ release
+ end
+
+EventScript_16DB21:: @ 816DB21
+ call EventScript_16E094
+ return
+
+CinnabarIsland_Gym_EventScript_16DB27:: @ 816DB27
+ trainerbattle 2, 213, 0, Text_19983F, Text_199870, EventScript_16DB42
+ loadword 0, gUnknown_819987D
+ callstd 6
+ end
+
+EventScript_16DB42:: @ 816DB42
+ checkflag FLAG_0x265
+ call_if 0, EventScript_16DB4D
+ release
+ end
+
+EventScript_16DB4D:: @ 816DB4D
+ call EventScript_16DC58
+ return
+
+CinnabarIsland_Gym_EventScript_16DB53:: @ 816DB53
+ trainerbattle 2, 214, 0, Text_199948, Text_199973, EventScript_16DB6E
+ loadword 0, gUnknown_8199986
+ callstd 6
+ end
+
+EventScript_16DB6E:: @ 816DB6E
+ checkflag FLAG_0x268
+ call_if 0, EventScript_16DB79
+ release
+ end
+
+EventScript_16DB79:: @ 816DB79
+ call EventScript_16DE0F
+ return
+
+CinnabarIsland_Gym_EventScript_16DB7F:: @ 816DB7F
+ trainerbattle 2, 215, 0, Text_199A7F, Text_199AB9, EventScript_16DB9A
+ loadword 0, gUnknown_8199AC9
+ callstd 6
+ end
+
+EventScript_16DB9A:: @ 816DB9A
+ checkflag FLAG_0x26A
+ call_if 0, EventScript_16DBA5
+ release
+ end
+
+EventScript_16DBA5:: @ 816DBA5
+ call EventScript_16DFBD
+ return
+
+CinnabarIsland_Gym_EventScript_16DBAB:: @ 816DBAB
+ lock
+ faceplayer
+ checkflag FLAG_0x4B6
+ goto_if 1, EventScript_16DBC0
+ loadword 0, gUnknown_8199B81
+ callstd 4
+ release
+ end
+
+EventScript_16DBC0:: @ 816DBC0
+ loadword 0, gUnknown_8199C0C
+ callstd 4
+ release
+ end
+
+CinnabarIsland_Gym_EventScript_16DBCA:: @ 816DBCA
+ lockall
+ checkflag FLAG_UNK826
+ goto_if 1, EventScript_16DBDE
+ loadword 0, gUnknown_8199C29
+ callstd 4
+ releaseall
+ end
+
+EventScript_16DBDE:: @ 816DBDE
+ loadword 0, gUnknown_8199C62
+ callstd 4
+ releaseall
+ end
+
+CinnabarIsland_Gym_EventScript_16DBE8:: @ 816DBE8
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16DC00
+ end
+
+CinnabarIsland_Gym_EventScript_16DBF4:: @ 816DBF4
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16DC00
+ end
+
+EventScript_16DC00:: @ 816DC00
+ loadword 0, gUnknown_8199C9F
+ callstd 4
+ loadword 0, gUnknown_8199D5A
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16DC43
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16DC6A
+ end
+
+EventScript_16DC27:: @ 816DC27
+ playfanfare MUS_FANFA1
+ waitfanfare
+ loadword 0, gUnknown_8199E4F
+ callstd 4
+ return
+
+EventScript_16DC34:: @ 816DC34
+ waitse
+ playse SE_BOO
+ waitse
+ loadword 0, gUnknown_8199E79
+ callstd 4
+ closemessage
+ return
+
+EventScript_16DC43:: @ 816DC43
+ call EventScript_16DC27
+ checkflag FLAG_0x265
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DC58
+ releaseall
+ end
+
+EventScript_16DC58:: @ 816DC58
+ playse SE_FU_ZAKU2
+ waitse
+ call EventScript_16E117
+ special DrawWholeMapView
+ setflag FLAG_0x265
+ return
+
+EventScript_16DC68:: @ 816DC68
+ releaseall
+ end
+
+EventScript_16DC6A:: @ 816DC6A
+ call EventScript_16DC34
+ checktrainerflag 213
+ goto_if 0, EventScript_16DC7A
+ releaseall
+ end
+
+EventScript_16DC7A:: @ 816DC7A
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16DCB4
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16DCC6
+ textcolor 0
+ loadword 0, gUnknown_819983F
+ callstd 4
+ trainerbattle 3, 213, 0, Text_199870
+ checkflag FLAG_0x265
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DC58
+ releaseall
+ end
+
+EventScript_16DCB4:: @ 816DCB4
+ applymovement 255, Movement_1A75EB
+ applymovement 1, Movement_16DCD8
+ waitmovement 0
+ return
+
+EventScript_16DCC6:: @ 816DCC6
+ applymovement 255, Movement_1A75EB
+ applymovement 1, Movement_16DCDB
+ waitmovement 0
+ return
+
+Movement_16DCD8:: @ 816DCD8
+ step_12
+ step_12
+ step_end
+
+Movement_16DCDB:: @ 816DCDB
+ step_12
+ step_end
+
+CinnabarIsland_Gym_EventScript_16DCDD:: @ 816DCDD
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16DCF5
+ end
+
+CinnabarIsland_Gym_EventScript_16DCE9:: @ 816DCE9
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16DCF5
+ end
+
+EventScript_16DCF5:: @ 816DCF5
+ loadword 0, gUnknown_8199C9F
+ callstd 4
+ loadword 0, gUnknown_8199D79
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16DD41
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16DD1C
+ end
+
+EventScript_16DD1C:: @ 816DD1C
+ call EventScript_16DC27
+ checkflag FLAG_0x267
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DD31
+ releaseall
+ end
+
+EventScript_16DD31:: @ 816DD31
+ playse SE_FU_ZAKU2
+ waitse
+ call EventScript_16E157
+ special DrawWholeMapView
+ setflag FLAG_0x267
+ return
+
+EventScript_16DD41:: @ 816DD41
+ call EventScript_16DC34
+ checktrainerflag 178
+ goto_if 0, EventScript_16DD51
+ releaseall
+ end
+
+EventScript_16DD51:: @ 816DD51
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16DD8B
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16DD9D
+ textcolor 0
+ loadword 0, gUnknown_81998BD
+ callstd 4
+ trainerbattle 3, 178, 0, Text_1998ED
+ checkflag FLAG_0x267
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DD31
+ releaseall
+ end
+
+EventScript_16DD8B:: @ 816DD8B
+ applymovement 255, Movement_16DDB7
+ applymovement 3, Movement_16DDAF
+ waitmovement 0
+ return
+
+EventScript_16DD9D:: @ 816DD9D
+ applymovement 255, Movement_16DDB7
+ applymovement 3, Movement_16DDB3
+ waitmovement 0
+ return
+
+Movement_16DDAF:: @ 816DDAF
+ step_11
+ step_11
+ step_12
+ step_end
+
+Movement_16DDB3:: @ 816DDB3
+ step_11
+ step_11
+ step_2f
+ step_end
+
+Movement_16DDB7:: @ 816DDB7
+ step_1c
+ step_1c
+ step_30
+ step_end
+
+CinnabarIsland_Gym_EventScript_16DDBB:: @ 816DDBB
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16DDD3
+ end
+
+CinnabarIsland_Gym_EventScript_16DDC7:: @ 816DDC7
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16DDD3
+ end
+
+EventScript_16DDD3:: @ 816DDD3
+ loadword 0, gUnknown_8199C9F
+ callstd 4
+ loadword 0, gUnknown_8199DA9
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16DE1F
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16DDFA
+ end
+
+EventScript_16DDFA:: @ 816DDFA
+ call EventScript_16DC27
+ checkflag FLAG_0x268
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DE0F
+ releaseall
+ end
+
+EventScript_16DE0F:: @ 816DE0F
+ playse SE_FU_ZAKU2
+ waitse
+ call EventScript_16E197
+ special DrawWholeMapView
+ setflag FLAG_0x268
+ return
+
+EventScript_16DE1F:: @ 816DE1F
+ call EventScript_16DC34
+ checktrainerflag 214
+ goto_if 0, EventScript_16DE2F
+ releaseall
+ end
+
+EventScript_16DE2F:: @ 816DE2F
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16DE69
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16DE7B
+ textcolor 0
+ loadword 0, gUnknown_8199948
+ callstd 4
+ trainerbattle 3, 214, 0, Text_199973
+ checkflag FLAG_0x268
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DE0F
+ releaseall
+ end
+
+EventScript_16DE69:: @ 816DE69
+ applymovement 255, Movement_1A75EB
+ applymovement 4, Movement_16DE8D
+ waitmovement 0
+ return
+
+EventScript_16DE7B:: @ 816DE7B
+ applymovement 255, Movement_1A75EB
+ applymovement 4, Movement_16DE90
+ waitmovement 0
+ return
+
+Movement_16DE8D:: @ 816DE8D
+ step_12
+ step_12
+ step_end
+
+Movement_16DE90:: @ 816DE90
+ step_12
+ step_end
+
+CinnabarIsland_Gym_EventScript_16DE92:: @ 816DE92
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16DEAA
+ end
+
+CinnabarIsland_Gym_EventScript_16DE9E:: @ 816DE9E
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16DEAA
+ end
+
+EventScript_16DEAA:: @ 816DEAA
+ loadword 0, gUnknown_8199C9F
+ callstd 4
+ loadword 0, gUnknown_8199DC6
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16DEF6
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16DED1
+ end
+
+EventScript_16DED1:: @ 816DED1
+ call EventScript_16DC27
+ checkflag FLAG_0x269
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DEE6
+ releaseall
+ end
+
+EventScript_16DEE6:: @ 816DEE6
+ playse SE_FU_ZAKU2
+ waitse
+ call EventScript_16E1D7
+ special DrawWholeMapView
+ setflag FLAG_0x269
+ return
+
+EventScript_16DEF6:: @ 816DEF6
+ call EventScript_16DC34
+ checktrainerflag 179
+ goto_if 0, EventScript_16DF06
+ releaseall
+ end
+
+EventScript_16DF06:: @ 816DF06
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16DF40
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16DF52
+ textcolor 0
+ loadword 0, gUnknown_81999B7
+ callstd 4
+ trainerbattle 3, 179, 0, Text_1999DB
+ checkflag FLAG_0x269
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DEE6
+ releaseall
+ end
+
+EventScript_16DF40:: @ 816DF40
+ applymovement 255, Movement_1A75EB
+ applymovement 5, Movement_16DF64
+ waitmovement 0
+ return
+
+EventScript_16DF52:: @ 816DF52
+ applymovement 255, Movement_1A75EB
+ applymovement 5, Movement_16DF67
+ waitmovement 0
+ return
+
+Movement_16DF64:: @ 816DF64
+ step_12
+ step_12
+ step_end
+
+Movement_16DF67:: @ 816DF67
+ step_12
+ step_end
+
+CinnabarIsland_Gym_EventScript_16DF69:: @ 816DF69
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16DF81
+ end
+
+CinnabarIsland_Gym_EventScript_16DF75:: @ 816DF75
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16DF81
+ end
+
+EventScript_16DF81:: @ 816DF81
+ loadword 0, gUnknown_8199C9F
+ callstd 4
+ loadword 0, gUnknown_8199E00
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16DFA8
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16DFCD
+ end
+
+EventScript_16DFA8:: @ 816DFA8
+ call EventScript_16DC27
+ checkflag FLAG_0x26A
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DFBD
+ releaseall
+ end
+
+EventScript_16DFBD:: @ 816DFBD
+ playse SE_FU_ZAKU2
+ waitse
+ call EventScript_16E1F3
+ special DrawWholeMapView
+ setflag FLAG_0x26A
+ return
+
+EventScript_16DFCD:: @ 816DFCD
+ call EventScript_16DC34
+ checktrainerflag 215
+ goto_if 0, EventScript_16DFDD
+ releaseall
+ end
+
+EventScript_16DFDD:: @ 816DFDD
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16E017
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16E029
+ textcolor 0
+ loadword 0, gUnknown_8199A7F
+ callstd 4
+ trainerbattle 3, 215, 0, Text_199AB9
+ checkflag FLAG_0x26A
+ goto_if 1, EventScript_16DC68
+ call EventScript_16DFBD
+ releaseall
+ end
+
+EventScript_16E017:: @ 816E017
+ applymovement 255, Movement_1A75EB
+ applymovement 6, Movement_16E03B
+ waitmovement 0
+ return
+
+EventScript_16E029:: @ 816E029
+ applymovement 255, Movement_1A75EB
+ applymovement 6, Movement_16E03E
+ waitmovement 0
+ return
+
+Movement_16E03B:: @ 816E03B
+ step_12
+ step_12
+ step_end
+
+Movement_16E03E:: @ 816E03E
+ step_12
+ step_end
+
+CinnabarIsland_Gym_EventScript_16E040:: @ 816E040
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16E058
+ end
+
+CinnabarIsland_Gym_EventScript_16E04C:: @ 816E04C
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16E058
+ end
+
+EventScript_16E058:: @ 816E058
+ loadword 0, gUnknown_8199C9F
+ callstd 4
+ loadword 0, gUnknown_8199E36
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E0A4
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E07F
+ end
+
+EventScript_16E07F:: @ 816E07F
+ call EventScript_16DC27
+ checkflag FLAG_0x26B
+ goto_if 1, EventScript_16DC68
+ call EventScript_16E094
+ releaseall
+ end
+
+EventScript_16E094:: @ 816E094
+ playse SE_FU_ZAKU2
+ waitse
+ call EventScript_16E233
+ special DrawWholeMapView
+ setflag FLAG_0x26B
+ return
+
+EventScript_16E0A4:: @ 816E0A4
+ call EventScript_16DC34
+ checktrainerflag 180
+ goto_if 0, EventScript_16E0B4
+ releaseall
+ end
+
+EventScript_16E0B4:: @ 816E0B4
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16E0EE
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16E100
+ textcolor 0
+ loadword 0, gUnknown_8199AFC
+ callstd 4
+ trainerbattle 3, 180, 0, Text_199B16
+ checkflag FLAG_0x26B
+ goto_if 1, EventScript_16DC68
+ call EventScript_16E094
+ releaseall
+ end
+
+EventScript_16E0EE:: @ 816E0EE
+ applymovement 255, Movement_1A75EB
+ applymovement 7, Movement_16E112
+ waitmovement 0
+ return
+
+EventScript_16E100:: @ 816E100
+ applymovement 255, Movement_1A75EB
+ applymovement 7, Movement_16E115
+ waitmovement 0
+ return
+
+Movement_16E112:: @ 816E112
+ step_12
+ step_12
+ step_end
+
+Movement_16E115:: @ 816E115
+ step_12
+ step_end
+
+EventScript_16E117:: @ 816E117
+ setmetatile 26, 8, 711, 0
+ setmetatile 27, 8, 710, 0
+ setmetatile 26, 9, 719, 0
+ setmetatile 27, 9, 718, 0
+ setmetatile 26, 10, 649, 0
+ setmetatile 27, 10, 641, 0
+ setmetatile 28, 10, 642, 0
+ return
+
+EventScript_16E157:: @ 816E157
+ setmetatile 17, 8, 711, 0
+ setmetatile 18, 8, 710, 0
+ setmetatile 17, 9, 719, 0
+ setmetatile 18, 9, 718, 0
+ setmetatile 17, 10, 649, 0
+ setmetatile 18, 10, 641, 0
+ setmetatile 19, 10, 642, 0
+ return
+
+EventScript_16E197:: @ 816E197
+ setmetatile 17, 15, 711, 0
+ setmetatile 18, 15, 710, 0
+ setmetatile 17, 16, 719, 0
+ setmetatile 18, 16, 718, 0
+ setmetatile 17, 17, 649, 0
+ setmetatile 18, 17, 641, 0
+ setmetatile 19, 17, 642, 0
+ return
+
+EventScript_16E1D7:: @ 816E1D7
+ setmetatile 11, 21, 721, 1
+ setmetatile 11, 22, 649, 0
+ setmetatile 11, 23, 641, 0
+ return
+
+EventScript_16E1F3:: @ 816E1F3
+ setmetatile 5, 16, 711, 0
+ setmetatile 6, 16, 710, 0
+ setmetatile 5, 17, 719, 0
+ setmetatile 6, 17, 718, 0
+ setmetatile 5, 18, 649, 0
+ setmetatile 6, 18, 641, 0
+ setmetatile 7, 18, 642, 0
+ return
+
+EventScript_16E233:: @ 816E233
+ setmetatile 5, 8, 711, 0
+ setmetatile 6, 8, 710, 0
+ setmetatile 5, 9, 719, 0
+ setmetatile 6, 9, 718, 0
+ setmetatile 5, 10, 649, 0
+ setmetatile 6, 10, 641, 0
+ setmetatile 7, 10, 642, 0
+ return
diff --git a/data/maps/CinnabarIsland_Mart/scripts.inc b/data/maps/CinnabarIsland_Mart/scripts.inc
new file mode 100644
index 000000000..f9808d872
--- /dev/null
+++ b/data/maps/CinnabarIsland_Mart/scripts.inc
@@ -0,0 +1,39 @@
+CinnabarIsland_Mart_MapScripts:: @ 816EA0F
+ .byte 0
+
+CinnabarIsland_Mart_EventScript_16EA10:: @ 816EA10
+ loadword 0, gUnknown_819A7A0
+ callstd 2
+ end
+
+CinnabarIsland_Mart_EventScript_16EA19:: @ 816EA19
+ loadword 0, gUnknown_819A7F1
+ callstd 2
+ end
+
+CinnabarIsland_Mart_EventScript_16EA22:: @ 816EA22
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16EA48
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16EA48:: @ 816EA48
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/CinnabarIsland_PokemonCenter_1F/scripts.inc b/data/maps/CinnabarIsland_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..554dd6943
--- /dev/null
+++ b/data/maps/CinnabarIsland_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,150 @@
+CinnabarIsland_PokemonCenter_1F_MapScripts:: @ 816E8D7
+ map_script 3, CinnabarIsland_PokemonCenter_1F_MapScript1_16E8E2
+ map_script 5, CinnabarIsland_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+CinnabarIsland_PokemonCenter_1F_MapScript1_16E8E2:: @ 816E8E2
+ setrespawn 9
+ end
+
+CinnabarIsland_PokemonCenter_1F_EventScript_16E8E6:: @ 816E8E6
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+CinnabarIsland_PokemonCenter_1F_EventScript_16E8EF:: @ 816E8EF
+ loadword 0, gUnknown_819A5BE
+ callstd 2
+ end
+
+CinnabarIsland_PokemonCenter_1F_EventScript_16E8F8:: @ 816E8F8
+ loadword 0, gUnknown_819A4F8
+ callstd 2
+ end
+
+CinnabarIsland_PokemonCenter_1F_EventScript_16E901:: @ 816E901
+ loadword 0, gUnknown_819A6B1
+ callstd 2
+ end
+
+CinnabarIsland_PokemonCenter_1F_EventScript_16E90A:: @ 816E90A
+ lock
+ faceplayer
+ loadword 0, gUnknown_819A725
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E9A5
+ loadword 0, gUnknown_819A785
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_FOLLOW_ME, 1
+ savebgm BGM_FRLG_FOLLOW_ME
+ setflag FLAG_SPECIAL_FLAG_0x4001
+ setflag FLAG_0x0A2
+ delay 20
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_16E96F
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_16E981
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_16E993
+ removeobject 7
+ setvar VAR_0x408A, 1
+ clearflag FLAG_0x062
+ warp MAP_CINNABARISLAND, 255, 14, 11
+ waitstate
+ release
+ end
+
+EventScript_16E96F:: @ 816E96F
+ applymovement 7, Movement_16E9AF
+ applymovement 255, Movement_16E9B9
+ waitmovement 0
+ return
+
+EventScript_16E981:: @ 816E981
+ applymovement 7, Movement_16E9C3
+ applymovement 255, Movement_16E9CF
+ waitmovement 0
+ return
+
+EventScript_16E993:: @ 816E993
+ applymovement 7, Movement_16E9AF
+ applymovement 255, Movement_16E9DE
+ waitmovement 0
+ return
+
+EventScript_16E9A5:: @ 816E9A5
+ loadword 0, gUnknown_819A766
+ callstd 4
+ release
+ end
+
+Movement_16E9AF:: @ 816E9AF
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_1b
+ step_60
+ step_end
+
+Movement_16E9B9:: @ 816E9B9
+ step_10
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_1c
+ step_10
+ step_end
+
+Movement_16E9C3:: @ 816E9C3
+ step_11
+ step_12
+ step_12
+ step_10
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_1b
+ step_60
+ step_end
+
+Movement_16E9CF:: @ 816E9CF
+ step_1c
+ step_1c
+ step_1c
+ step_02
+ step_1c
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_1b
+ step_10
+ step_1b
+ step_60
+ step_end
+
+Movement_16E9DE:: @ 816E9DE
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_1c
+ step_10
+ step_end
diff --git a/data/maps/CinnabarIsland_PokemonCenter_2F/scripts.inc b/data/maps/CinnabarIsland_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..90969f46d
--- /dev/null
+++ b/data/maps/CinnabarIsland_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+CinnabarIsland_PokemonCenter_2F_MapScripts:: @ 816E9E8
+ map_script 2, CinnabarIsland_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, CinnabarIsland_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, CinnabarIsland_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, CinnabarIsland_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+CinnabarIsland_PokemonCenter_2F_EventScript_16E9FD:: @ 816E9FD
+ call EventScript_1BB4A3
+ end
+
+EventScript_16EA03:: @ 816EA03
+ call EventScript_1BB6AB
+ end
+
+EventScript_16EA09:: @ 816EA09
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/CinnabarIsland_PokemonLab_Entrance/scripts.inc b/data/maps/CinnabarIsland_PokemonLab_Entrance/scripts.inc
new file mode 100644
index 000000000..e32112ffc
--- /dev/null
+++ b/data/maps/CinnabarIsland_PokemonLab_Entrance/scripts.inc
@@ -0,0 +1,37 @@
+CinnabarIsland_PokemonLab_Entrance_MapScripts:: @ 816E273
+ map_script 3, CinnabarIsland_PokemonLab_Entrance_MapScript1_16E279
+ .byte 0
+
+CinnabarIsland_PokemonLab_Entrance_MapScript1_16E279:: @ 816E279
+ compare_var_to_value VAR_0x406A, 1
+ call_if 1, EventScript_16E285
+ end
+
+EventScript_16E285:: @ 816E285
+ setvar VAR_0x406A, 2
+ return
+
+CinnabarIsland_PokemonLab_Entrance_EventScript_16E28B:: @ 816E28B
+ loadword 0, gUnknown_8199EE5
+ callstd 2
+ end
+
+CinnabarIsland_PokemonLab_Entrance_EventScript_16E294:: @ 816E294
+ loadword 0, gUnknown_8199F41
+ callstd 3
+ end
+
+CinnabarIsland_PokemonLab_Entrance_EventScript_16E29D:: @ 816E29D
+ loadword 0, gUnknown_8199F6A
+ callstd 3
+ end
+
+CinnabarIsland_PokemonLab_Entrance_EventScript_16E2A6:: @ 816E2A6
+ loadword 0, gUnknown_8199F83
+ callstd 3
+ end
+
+CinnabarIsland_PokemonLab_Entrance_EventScript_16E2AF:: @ 816E2AF
+ loadword 0, gUnknown_8199F9A
+ callstd 3
+ end
diff --git a/data/maps/CinnabarIsland_PokemonLab_ExperimentRoom/scripts.inc b/data/maps/CinnabarIsland_PokemonLab_ExperimentRoom/scripts.inc
new file mode 100644
index 000000000..3b0168728
--- /dev/null
+++ b/data/maps/CinnabarIsland_PokemonLab_ExperimentRoom/scripts.inc
@@ -0,0 +1,362 @@
+CinnabarIsland_PokemonLab_ExperimentRoom_MapScripts:: @ 816E400
+ .byte 0
+
+CinnabarIsland_PokemonLab_ExperimentRoom_EventScript_16E401:: @ 816E401
+ lock
+ faceplayer
+ setvar VAR_0x8008, 8
+ call EventScript_1A8CAD
+ checkflag FLAG_0x276
+ goto_if 1, EventScript_16E473
+ loadword 0, gUnknown_81A597B
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E45B
+ call EventScript_1A8CBD
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_16E45B
+ call EventScript_1A8CC9
+ compare_var_to_var VAR_RESULT, VAR_0x8009
+ goto_if 5, EventScript_16E465
+ call EventScript_1A8CD9
+ loadword 0, gUnknown_81A59DA
+ callstd 4
+ setflag FLAG_0x276
+ release
+ end
+
+EventScript_16E45B:: @ 816E45B
+ loadword 0, gUnknown_81A59B6
+ callstd 4
+ release
+ end
+
+EventScript_16E465:: @ 816E465
+ getspeciesname 0, 32777
+ loadword 0, gUnknown_81A59C6
+ callstd 4
+ release
+ end
+
+EventScript_16E473:: @ 816E473
+ loadword 0, gUnknown_81A59E7
+ callstd 4
+ release
+ end
+
+CinnabarIsland_PokemonLab_ExperimentRoom_EventScript_16E47D:: @ 816E47D
+ lock
+ faceplayer
+ setvar VAR_RESULT, 0
+ checkflag FLAG_0x2EE
+ call_if 1, EventScript_16E8A1
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E897
+ compare_var_to_value VAR_0x406A, 2
+ goto_if 1, EventScript_16E736
+ compare_var_to_value VAR_0x406A, 1
+ goto_if 1, EventScript_16E72C
+ call EventScript_16E4EC
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E544
+ call EventScript_16E504
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E586
+ call EventScript_16E51C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E5C8
+ loadword 0, gUnknown_819A282
+ callstd 4
+ goto EventScript_16E53A
+ end
+
+EventScript_16E4EC:: @ 816E4EC
+ checkflag FLAG_0x273
+ goto_if 0, EventScript_16E534
+ checkflag FLAG_0x2ED
+ goto_if 1, EventScript_16E534
+ setvar VAR_RESULT, 1
+ return
+
+EventScript_16E504:: @ 816E504
+ checkflag FLAG_0x272
+ goto_if 0, EventScript_16E534
+ checkflag FLAG_0x2EC
+ goto_if 1, EventScript_16E534
+ setvar VAR_RESULT, 1
+ return
+
+EventScript_16E51C:: @ 816E51C
+ checkflag FLAG_0x25E
+ goto_if 0, EventScript_16E534
+ checkflag FLAG_0x2EE
+ goto_if 1, EventScript_16E534
+ setvar VAR_RESULT, 1
+ return
+
+EventScript_16E534:: @ 816E534
+ setvar VAR_RESULT, 0
+ return
+
+EventScript_16E53A:: @ 816E53A
+ loadword 0, gUnknown_819A314
+ callstd 4
+ release
+ end
+
+EventScript_16E544:: @ 816E544
+ message Text_19A282
+ waitmessage
+ call EventScript_16E51C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E5FA
+ multichoice 0, 0, 21, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16E668
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16E53A
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16E53A
+ end
+
+EventScript_16E586:: @ 816E586
+ message Text_19A282
+ waitmessage
+ call EventScript_16E51C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E631
+ multichoice 0, 0, 22, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16E6A6
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16E53A
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16E53A
+ end
+
+EventScript_16E5C8:: @ 816E5C8
+ message Text_19A282
+ waitmessage
+ multichoice 0, 0, 23, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16E6E4
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16E53A
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16E53A
+ end
+
+EventScript_16E5FA:: @ 816E5FA
+ multichoice 0, 0, 24, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16E668
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16E6E4
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16E53A
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16E53A
+ end
+
+EventScript_16E631:: @ 816E631
+ multichoice 0, 0, 25, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16E6A6
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16E6E4
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16E53A
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16E53A
+ end
+
+EventScript_16E668:: @ 816E668
+ getspeciesname 0, SPECIES_OMANYTE
+ getitemname 1, ITEM_HELIX_FOSSIL
+ loadword 0, gUnknown_819A3D4
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E722
+ loadword 0, gUnknown_819A45D
+ callstd 4
+ textcolor 0
+ removeitem ITEM_HELIX_FOSSIL, 1
+ loadword 0, gUnknown_819A4AB
+ callstd 4
+ setvar VAR_0x406A, 1
+ setvar VAR_0x4069, 1
+ release
+ end
+
+EventScript_16E6A6:: @ 816E6A6
+ getspeciesname 0, SPECIES_KABUTO
+ getitemname 1, ITEM_DOME_FOSSIL
+ loadword 0, gUnknown_819A3D4
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E722
+ loadword 0, gUnknown_819A45D
+ callstd 4
+ textcolor 0
+ removeitem ITEM_DOME_FOSSIL, 1
+ loadword 0, gUnknown_819A4AB
+ callstd 4
+ setvar VAR_0x406A, 1
+ setvar VAR_0x4069, 2
+ release
+ end
+
+EventScript_16E6E4:: @ 816E6E4
+ getspeciesname 0, SPECIES_AERODACTYL
+ getitemname 1, ITEM_OLD_AMBER
+ loadword 0, gUnknown_819A3D4
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E722
+ loadword 0, gUnknown_819A45D
+ callstd 4
+ textcolor 0
+ removeitem ITEM_OLD_AMBER, 1
+ loadword 0, gUnknown_819A4AB
+ callstd 4
+ setvar VAR_0x406A, 1
+ setvar VAR_0x4069, 3
+ release
+ end
+
+EventScript_16E722:: @ 816E722
+ loadword 0, gUnknown_819A4E1
+ callstd 4
+ release
+ end
+
+EventScript_16E72C:: @ 816E72C
+ loadword 0, gUnknown_819A4AB
+ callstd 4
+ release
+ end
+
+EventScript_16E736:: @ 816E736
+ compare_var_to_value VAR_0x4069, 1
+ goto_if 1, EventScript_16E758
+ compare_var_to_value VAR_0x4069, 2
+ goto_if 1, EventScript_16E79D
+ compare_var_to_value VAR_0x4069, 3
+ goto_if 1, EventScript_16E7E2
+ end
+
+EventScript_16E758:: @ 816E758
+ setvar VAR_0x4001, 138
+ getspeciesname 0, SPECIES_OMANYTE
+ loadword 0, gUnknown_819A34F
+ callstd 4
+ givemon SPECIES_OMANYTE, 5, ITEM_NONE, 0, 0, 0
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A927C
+ setflag FLAG_0x2ED
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E827
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E85B
+ end
+
+EventScript_16E79D:: @ 816E79D
+ setvar VAR_0x4001, 140
+ getspeciesname 0, SPECIES_KABUTO
+ loadword 0, gUnknown_819A34F
+ callstd 4
+ givemon SPECIES_KABUTO, 5, ITEM_NONE, 0, 0, 0
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A927C
+ setflag FLAG_0x2EC
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E827
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E85B
+ end
+
+EventScript_16E7E2:: @ 816E7E2
+ setvar VAR_0x4001, 142
+ getspeciesname 0, SPECIES_AERODACTYL
+ loadword 0, gUnknown_819A34F
+ callstd 4
+ givemon SPECIES_AERODACTYL, 5, ITEM_NONE, 0, 0, 0
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A927C
+ setflag FLAG_0x2EE
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E827
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16E85B
+ end
+
+EventScript_16E827:: @ 816E827
+ textcolor 3
+ playfanfare MUS_FANFA1
+ message Text_19A39E
+ waitmessage
+ waitfanfare
+ setvar VAR_0x406A, 0
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E895
+ call EventScript_1A8C27
+ call EventScript_1A74EB
+ goto EventScript_16E895
+ end
+
+EventScript_16E85B:: @ 816E85B
+ textcolor 3
+ playfanfare MUS_FANFA1
+ message Text_19A39E
+ waitmessage
+ waitfanfare
+ setvar VAR_0x406A, 0
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E88A
+ call EventScript_1A8C33
+ goto EventScript_16E88A
+ end
+
+EventScript_16E88A:: @ 816E88A
+ call EventScript_1A8C3C
+ goto EventScript_16E895
+ end
+
+EventScript_16E895:: @ 816E895
+ release
+ end
+
+EventScript_16E897:: @ 816E897
+ loadword 0, gUnknown_819A4E1
+ callstd 4
+ release
+ end
+
+EventScript_16E8A1:: @ 816E8A1
+ checkflag FLAG_0x273
+ goto_if 1, EventScript_16E8B9
+ checkflag FLAG_0x272
+ goto_if 1, EventScript_16E8C8
+ goto EventScript_16E534
+ end
+
+EventScript_16E8B9:: @ 816E8B9
+ checkflag FLAG_0x2ED
+ goto_if 0, EventScript_16E534
+ setvar VAR_RESULT, 1
+ return
+
+EventScript_16E8C8:: @ 816E8C8
+ checkflag FLAG_0x2EC
+ goto_if 0, EventScript_16E534
+ setvar VAR_RESULT, 1
+ return
diff --git a/data/maps/CinnabarIsland_PokemonLab_Lounge/scripts.inc b/data/maps/CinnabarIsland_PokemonLab_Lounge/scripts.inc
new file mode 100644
index 000000000..cf6b63139
--- /dev/null
+++ b/data/maps/CinnabarIsland_PokemonLab_Lounge/scripts.inc
@@ -0,0 +1,103 @@
+CinnabarIsland_PokemonLab_Lounge_MapScripts:: @ 816E2B8
+ .byte 0
+
+CinnabarIsland_PokemonLab_Lounge_EventScript_16E2B9:: @ 816E2B9
+ loadword 0, gUnknown_8199FB3
+ callstd 2
+ end
+
+CinnabarIsland_PokemonLab_Lounge_EventScript_16E2C2:: @ 816E2C2
+ lock
+ faceplayer
+ setvar VAR_0x8008, 6
+ call EventScript_1A8CAD
+ checkflag FLAG_0x274
+ goto_if 1, EventScript_16E334
+ loadword 0, gUnknown_81A59FE
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E31C
+ call EventScript_1A8CBD
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_16E31C
+ call EventScript_1A8CC9
+ compare_var_to_var VAR_RESULT, VAR_0x8009
+ goto_if 5, EventScript_16E326
+ call EventScript_1A8CD9
+ loadword 0, gUnknown_81A5A9D
+ callstd 4
+ setflag FLAG_0x274
+ release
+ end
+
+EventScript_16E31C:: @ 816E31C
+ loadword 0, gUnknown_81A5A4E
+ callstd 4
+ release
+ end
+
+EventScript_16E326:: @ 816E326
+ getspeciesname 0, 32777
+ loadword 0, gUnknown_81A5A6A
+ callstd 4
+ release
+ end
+
+EventScript_16E334:: @ 816E334
+ loadword 0, gUnknown_81A5AA5
+ callstd 4
+ release
+ end
+
+CinnabarIsland_PokemonLab_Lounge_EventScript_16E33E:: @ 816E33E
+ lock
+ faceplayer
+ setvar VAR_0x8008, 7
+ copyvar VAR_0x8004, VAR_0x8008
+ specialvar VAR_RESULT, sub_8053A9C
+ copyvar VAR_0x8009, VAR_RESULT
+ checkflag FLAG_0x275
+ goto_if 1, EventScript_16E3D4
+ loadword 0, gUnknown_81A5AD6
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16E3BC
+ special sub_80BF8FC
+ waitstate
+ copyvar VAR_0x800A, VAR_0x8004
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_16E3BC
+ copyvar VAR_0x8005, VAR_0x800A
+ specialvar VAR_RESULT, sub_8053D2C
+ copyvar VAR_0x800B, VAR_RESULT
+ compare_var_to_var VAR_RESULT, VAR_0x8009
+ goto_if 5, EventScript_16E3C6
+ copyvar VAR_0x8004, VAR_0x8008
+ copyvar VAR_0x8005, VAR_0x800A
+ special sub_8053D68
+ special sub_8054440
+ waitstate
+ loadword 0, gUnknown_81A5B4A
+ callstd 4
+ setflag FLAG_0x275
+ release
+ end
+
+EventScript_16E3BC:: @ 816E3BC
+ loadword 0, gUnknown_81A5B08
+ callstd 4
+ release
+ end
+
+EventScript_16E3C6:: @ 816E3C6
+ getspeciesname 0, 32777
+ loadword 0, gUnknown_81A5B18
+ callstd 4
+ release
+ end
+
+EventScript_16E3D4:: @ 816E3D4
+ loadword 0, gUnknown_81A5B60
+ callstd 4
+ release
+ end
diff --git a/data/maps/CinnabarIsland_PokemonLab_ResearchRoom/scripts.inc b/data/maps/CinnabarIsland_PokemonLab_ResearchRoom/scripts.inc
new file mode 100644
index 000000000..00fe86925
--- /dev/null
+++ b/data/maps/CinnabarIsland_PokemonLab_ResearchRoom/scripts.inc
@@ -0,0 +1,21 @@
+CinnabarIsland_PokemonLab_ResearchRoom_MapScripts:: @ 816E3DE
+ .byte 0
+
+CinnabarIsland_PokemonLab_ResearchRoom_EventScript_16E3DF:: @ 816E3DF
+ goto EventScript_1C4C8E
+ end
+
+CinnabarIsland_PokemonLab_ResearchRoom_EventScript_16E3E5:: @ 816E3E5
+ loadword 0, gUnknown_819A015
+ callstd 2
+ end
+
+CinnabarIsland_PokemonLab_ResearchRoom_EventScript_16E3EE:: @ 816E3EE
+ loadword 0, gUnknown_819A04A
+ callstd 3
+ end
+
+CinnabarIsland_PokemonLab_ResearchRoom_EventScript_16E3F7:: @ 816E3F7
+ loadword 0, gUnknown_819A128
+ callstd 3
+ end
diff --git a/data/maps/DiglettsCave_B1F/scripts.inc b/data/maps/DiglettsCave_B1F/scripts.inc
new file mode 100644
index 000000000..cda6522cc
--- /dev/null
+++ b/data/maps/DiglettsCave_B1F/scripts.inc
@@ -0,0 +1,7 @@
+DiglettsCave_B1F_MapScripts:: @ 8160EF1
+ map_script 3, DiglettsCave_B1F_MapScript1_160EF7
+ .byte 0
+
+DiglettsCave_B1F_MapScript1_160EF7:: @ 8160EF7
+ setworldmapflag 2217
+ end
diff --git a/data/maps/DiglettsCave_NorthEntrance/scripts.inc b/data/maps/DiglettsCave_NorthEntrance/scripts.inc
new file mode 100644
index 000000000..d5361b81a
--- /dev/null
+++ b/data/maps/DiglettsCave_NorthEntrance/scripts.inc
@@ -0,0 +1,7 @@
+DiglettsCave_NorthEntrance_MapScripts:: @ 8160EE7
+ .byte 0
+
+DiglettsCave_NorthEntrance_EventScript_160EE8:: @ 8160EE8
+ loadword 0, gUnknown_817462C
+ callstd 2
+ end
diff --git a/data/maps/DiglettsCave_SouthEntrance/scripts.inc b/data/maps/DiglettsCave_SouthEntrance/scripts.inc
new file mode 100644
index 000000000..78db82fe7
--- /dev/null
+++ b/data/maps/DiglettsCave_SouthEntrance/scripts.inc
@@ -0,0 +1,7 @@
+DiglettsCave_SouthEntrance_MapScripts:: @ 8160EFB
+ .byte 0
+
+DiglettsCave_SouthEntrance_EventScript_160EFC:: @ 8160EFC
+ loadword 0, gUnknown_81746A7
+ callstd 2
+ end
diff --git a/data/maps/FiveIsland/scripts.inc b/data/maps/FiveIsland/scripts.inc
new file mode 100644
index 000000000..43db0e050
--- /dev/null
+++ b/data/maps/FiveIsland/scripts.inc
@@ -0,0 +1,22 @@
+FiveIsland_MapScripts:: @ 8167E8E
+ map_script 3, FiveIsland_MapScript1_167E94
+ .byte 0
+
+FiveIsland_MapScript1_167E94:: @ 8167E94
+ setworldmapflag 2207
+ end
+
+FiveIsland_EventScript_167E98:: @ 8167E98
+ loadword 0, gUnknown_8182DFB
+ callstd 3
+ end
+
+FiveIsland_EventScript_167EA1:: @ 8167EA1
+ loadword 0, gUnknown_8182E26
+ callstd 2
+ end
+
+FiveIsland_EventScript_167EAA:: @ 8167EAA
+ loadword 0, gUnknown_8182E96
+ callstd 2
+ end
diff --git a/data/maps/FiveIsland_Harbor/scripts.inc b/data/maps/FiveIsland_Harbor/scripts.inc
new file mode 100644
index 000000000..a88a2f3fd
--- /dev/null
+++ b/data/maps/FiveIsland_Harbor/scripts.inc
@@ -0,0 +1,11 @@
+FiveIsland_Harbor_MapScripts:: @ 8171D42
+ .byte 0
+
+FiveIsland_Harbor_EventScript_171D43:: @ 8171D43
+ lock
+ faceplayer
+ message Text_181726
+ waitmessage
+ setvar VAR_0x8004, 5
+ goto EventScript_1A900F
+ end
diff --git a/data/maps/FiveIsland_House1/scripts.inc b/data/maps/FiveIsland_House1/scripts.inc
new file mode 100644
index 000000000..ca38f9944
--- /dev/null
+++ b/data/maps/FiveIsland_House1/scripts.inc
@@ -0,0 +1,7 @@
+FiveIsland_House1_MapScripts:: @ 8171D56
+ .byte 0
+
+FiveIsland_House1_EventScript_171D57:: @ 8171D57
+ loadword 0, gUnknown_81A3CAC
+ callstd 2
+ end
diff --git a/data/maps/FiveIsland_House2/scripts.inc b/data/maps/FiveIsland_House2/scripts.inc
new file mode 100644
index 000000000..313e27a92
--- /dev/null
+++ b/data/maps/FiveIsland_House2/scripts.inc
@@ -0,0 +1,7 @@
+FiveIsland_House2_MapScripts:: @ 8171D60
+ .byte 0
+
+FiveIsland_House2_EventScript_171D61:: @ 8171D61
+ loadword 0, gUnknown_81A3D5E
+ callstd 2
+ end
diff --git a/data/maps/FiveIsland_LostCave_Entrance/scripts.inc b/data/maps/FiveIsland_LostCave_Entrance/scripts.inc
new file mode 100644
index 000000000..a6dc91f63
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Entrance/scripts.inc
@@ -0,0 +1,7 @@
+FiveIsland_LostCave_Entrance_MapScripts:: @ 8164BEC
+ map_script 3, FiveIsland_LostCave_Entrance_MapScript1_164BF2
+ .byte 0
+
+FiveIsland_LostCave_Entrance_MapScript1_164BF2:: @ 8164BF2
+ setworldmapflag 2236
+ end
diff --git a/data/maps/FiveIsland_LostCave_Room1/scripts.inc b/data/maps/FiveIsland_LostCave_Room1/scripts.inc
new file mode 100644
index 000000000..2225c0315
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room1/scripts.inc
@@ -0,0 +1,8 @@
+FiveIsland_LostCave_Room1_MapScripts:: @ 8164BF6
+ .byte 0
+
+FiveIsland_LostCave_Room1_EventScript_164BF7:: @ 8164BF7
+ trainerbattle 0, 607, 0, Text_17CEF5, Text_17CF42
+ loadword 0, gUnknown_817CF54
+ callstd 6
+ end
diff --git a/data/maps/FiveIsland_LostCave_Room10/scripts.inc b/data/maps/FiveIsland_LostCave_Room10/scripts.inc
new file mode 100644
index 000000000..4cc0d7204
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room10/scripts.inc
@@ -0,0 +1,68 @@
+FiveIsland_LostCave_Room10_MapScripts:: @ 8164C2D
+ map_script 5, FiveIsland_LostCave_Room10_MapScript1_164C38
+ map_script 2, FiveIsland_LostCave_Room10_MapScript2_164C48
+ .byte 0
+
+FiveIsland_LostCave_Room10_MapScript1_164C38:: @ 8164C38
+ checktrainerflag 606
+ call_if 1, EventScript_164C42
+ end
+
+EventScript_164C42:: @ 8164C42
+ setvar VAR_0x4083, 1
+ return
+
+FiveIsland_LostCave_Room10_MapScript2_164C48:: @ 8164C48
+ map_script_2 VAR_0x4083, 0, EventScript_164C52
+ .2byte 0
+
+EventScript_164C52:: @ 8164C52
+ lockall
+ textcolor 1
+ applymovement 1, Movement_164CC0
+ waitmovement 0
+ delay 100
+ applymovement 1, Movement_164CC8
+ waitmovement 0
+ loadword 0, gUnknown_817D062
+ callstd 4
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_164CB6
+ trainerbattle 3, 606, 0, Text_17D086
+ loadword 0, gUnknown_817D0B2
+ callstd 4
+ closemessage
+ call EventScript_164CA5
+ warp MAP_FIVEISLAND_RESORTGORGEOUS, 255, 39, 10
+ waitstate
+ releaseall
+ end
+
+EventScript_164CA5:: @ 8164CA5
+ setflag FLAG_0x093
+ clearflag FLAG_0x094
+ setvar VAR_0x4083, 1
+ setvar VAR_0x4084, 1
+ return
+
+EventScript_164CB6:: @ 8164CB6
+ settrainerflag 606
+ call EventScript_164CA5
+ releaseall
+ end
+
+Movement_164CC0:: @ 8164CC0
+ step_12
+ step_1c
+ step_13
+ step_1c
+ step_2e
+ step_1c
+ step_2d
+ step_end
+
+Movement_164CC8:: @ 8164CC8
+ step_10
+ step_10
+ step_end
diff --git a/data/maps/FiveIsland_LostCave_Room11/scripts.inc b/data/maps/FiveIsland_LostCave_Room11/scripts.inc
new file mode 100644
index 000000000..be5962481
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room11/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room11_MapScripts:: @ 8164CCB
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room12/scripts.inc b/data/maps/FiveIsland_LostCave_Room12/scripts.inc
new file mode 100644
index 000000000..388153884
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room12/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room12_MapScripts:: @ 8164CCC
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room13/scripts.inc b/data/maps/FiveIsland_LostCave_Room13/scripts.inc
new file mode 100644
index 000000000..9ee934a90
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room13/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room13_MapScripts:: @ 8164CCD
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room14/scripts.inc b/data/maps/FiveIsland_LostCave_Room14/scripts.inc
new file mode 100644
index 000000000..b7e59feaa
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room14/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room14_MapScripts:: @ 8164CCE
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room2/scripts.inc b/data/maps/FiveIsland_LostCave_Room2/scripts.inc
new file mode 100644
index 000000000..29aab8eeb
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room2/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room2_MapScripts:: @ 8164C0E
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room3/scripts.inc b/data/maps/FiveIsland_LostCave_Room3/scripts.inc
new file mode 100644
index 000000000..e14779342
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room3/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room3_MapScripts:: @ 8164C0F
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room4/scripts.inc b/data/maps/FiveIsland_LostCave_Room4/scripts.inc
new file mode 100644
index 000000000..9d2aa1f6a
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room4/scripts.inc
@@ -0,0 +1,8 @@
+FiveIsland_LostCave_Room4_MapScripts:: @ 8164C10
+ .byte 0
+
+FiveIsland_LostCave_Room4_EventScript_164C11:: @ 8164C11
+ trainerbattle 0, 608, 0, Text_17CFC1, Text_17CFFB
+ loadword 0, gUnknown_817D037
+ callstd 6
+ end
diff --git a/data/maps/FiveIsland_LostCave_Room5/scripts.inc b/data/maps/FiveIsland_LostCave_Room5/scripts.inc
new file mode 100644
index 000000000..3bdbbcc3b
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room5/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room5_MapScripts:: @ 8164C28
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room6/scripts.inc b/data/maps/FiveIsland_LostCave_Room6/scripts.inc
new file mode 100644
index 000000000..1de5fc8ca
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room6/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room6_MapScripts:: @ 8164C29
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room7/scripts.inc b/data/maps/FiveIsland_LostCave_Room7/scripts.inc
new file mode 100644
index 000000000..229bae05b
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room7/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room7_MapScripts:: @ 8164C2A
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room8/scripts.inc b/data/maps/FiveIsland_LostCave_Room8/scripts.inc
new file mode 100644
index 000000000..833603106
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room8/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room8_MapScripts:: @ 8164C2B
+ .byte 0
diff --git a/data/maps/FiveIsland_LostCave_Room9/scripts.inc b/data/maps/FiveIsland_LostCave_Room9/scripts.inc
new file mode 100644
index 000000000..73a4425f9
--- /dev/null
+++ b/data/maps/FiveIsland_LostCave_Room9/scripts.inc
@@ -0,0 +1,2 @@
+FiveIsland_LostCave_Room9_MapScripts:: @ 8164C2C
+ .byte 0
diff --git a/data/maps/FiveIsland_Meadow/scripts.inc b/data/maps/FiveIsland_Meadow/scripts.inc
new file mode 100644
index 000000000..e4636cb65
--- /dev/null
+++ b/data/maps/FiveIsland_Meadow/scripts.inc
@@ -0,0 +1,59 @@
+FiveIsland_Meadow_MapScripts:: @ 8168932
+ map_script 1, FiveIsland_Meadow_MapScript1_168938
+ .byte 0
+
+FiveIsland_Meadow_MapScript1_168938:: @ 8168938
+ checkflag FLAG_0x2D6
+ call_if 1, EventScript_168983
+ end
+
+FiveIsland_Meadow_EventScript_168942:: @ 8168942
+ lockall
+ checkflag FLAG_0x2D6
+ goto_if 1, EventScript_168979
+ checkflag FLAG_0x2D8
+ goto_if 1, EventScript_16895F
+ loadword 0, gUnknown_818AB8E
+ callstd 4
+ releaseall
+ end
+
+EventScript_16895F:: @ 816895F
+ setflag FLAG_0x2D6
+ message Text_18ABF4
+ waitmessage
+ delay 60
+ call EventScript_168983
+ special DrawWholeMapView
+ playse SE_PIN
+ waitse
+ releaseall
+ end
+
+EventScript_168979:: @ 8168979
+ loadword 0, gUnknown_818AC62
+ callstd 4
+ releaseall
+ end
+
+EventScript_168983:: @ 8168983
+ setmetatile 12, 21, 687, 1
+ return
+
+FiveIsland_Meadow_EventScript_16898D:: @ 816898D
+ trainerbattle 0, 567, 0, Text_18AC88, Text_18ACB3
+ loadword 0, gUnknown_818ACC5
+ callstd 6
+ end
+
+FiveIsland_Meadow_EventScript_1689A4:: @ 81689A4
+ trainerbattle 0, 568, 0, Text_18ACF0, Text_18AD39
+ loadword 0, gUnknown_818AD59
+ callstd 6
+ end
+
+FiveIsland_Meadow_EventScript_1689BB:: @ 81689BB
+ trainerbattle 0, 569, 0, Text_18ADC6, Text_18ADFB
+ loadword 0, gUnknown_818AE16
+ callstd 6
+ end
diff --git a/data/maps/FiveIsland_MemorialPillar/scripts.inc b/data/maps/FiveIsland_MemorialPillar/scripts.inc
new file mode 100644
index 000000000..8337e9d6f
--- /dev/null
+++ b/data/maps/FiveIsland_MemorialPillar/scripts.inc
@@ -0,0 +1,110 @@
+FiveIsland_MemorialPillar_MapScripts:: @ 81689D2
+ .byte 0
+
+FiveIsland_MemorialPillar_EventScript_1689D3:: @ 81689D3
+ lock
+ checkflag FLAG_0x236
+ goto_if 1, EventScript_168A18
+ checkflag FLAG_0x2D7
+ goto_if 1, EventScript_168A22
+ loadword 0, gUnknown_818B02E
+ callstd 4
+ closemessage
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ delay 45
+ loadword 0, gUnknown_818B03C
+ callstd 4
+ applymovement 1, Movement_1A75E9
+ waitmovement 0
+ loadword 0, gUnknown_818B05E
+ callstd 4
+ release
+ end
+
+EventScript_168A18:: @ 8168A18
+ loadword 0, gUnknown_818B2DA
+ callstd 4
+ release
+ end
+
+EventScript_168A22:: @ 8168A22
+ loadword 0, gUnknown_818B282
+ callstd 4
+ setorcopyvar VAR_0x8000, 330
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_168AFE
+ call EventScript_168AE8
+ release
+ end
+
+FiveIsland_MemorialPillar_EventScript_168A48:: @ 8168A48
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lockall
+ checkflag FLAG_0x236
+ goto_if 1, EventScript_168B0B
+ checkflag FLAG_0x2D7
+ goto_if 1, EventScript_168B0B
+ loadword 0, gUnknown_818B095
+ callstd 4
+ checkitem ITEM_LEMONADE, 1
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_168A86
+ releaseall
+ end
+
+EventScript_168A86:: @ 8168A86
+ loadword 0, gUnknown_818B105
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_168A9B
+ releaseall
+ end
+
+EventScript_168A9B:: @ 8168A9B
+ removeitem ITEM_LEMONADE, 1
+ loadword 0, gUnknown_818B13E
+ callstd 4
+ closemessage
+ applymovement 1, Movement_1A75EB
+ waitmovement 0
+ delay 45
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ textcolor 0
+ loadword 0, gUnknown_818B171
+ callstd 4
+ setorcopyvar VAR_0x8000, 330
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_168AFE
+ call EventScript_168AE8
+ releaseall
+ end
+
+EventScript_168AE8:: @ 8168AE8
+ loadword 0, gUnknown_818B219
+ callstd 4
+ applymovement 1, Movement_1A75E9
+ waitmovement 0
+ setflag FLAG_0x236
+ return
+
+EventScript_168AFE:: @ 8168AFE
+ setflag FLAG_0x2D7
+ loadword 0, gUnknown_818B23E
+ callstd 4
+ releaseall
+ end
+
+EventScript_168B0B:: @ 8168B0B
+ loadword 0, gUnknown_818B2F8
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/FiveIsland_PokemonCenter_1F/scripts.inc b/data/maps/FiveIsland_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..a9944ee18
--- /dev/null
+++ b/data/maps/FiveIsland_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,25 @@
+FiveIsland_PokemonCenter_1F_MapScripts:: @ 8171CF1
+ map_script 3, FiveIsland_PokemonCenter_1F_MapScript1_171CFC
+ map_script 5, FiveIsland_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+FiveIsland_PokemonCenter_1F_MapScript1_171CFC:: @ 8171CFC
+ setrespawn 18
+ end
+
+FiveIsland_PokemonCenter_1F_EventScript_171D00:: @ 8171D00
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+FiveIsland_PokemonCenter_1F_EventScript_171D09:: @ 8171D09
+ loadword 0, gUnknown_81A3BBA
+ callstd 2
+ end
+
+FiveIsland_PokemonCenter_1F_EventScript_171D12:: @ 8171D12
+ loadword 0, gUnknown_81A3BFD
+ callstd 2
+ end
diff --git a/data/maps/FiveIsland_PokemonCenter_2F/scripts.inc b/data/maps/FiveIsland_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..51682056c
--- /dev/null
+++ b/data/maps/FiveIsland_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+FiveIsland_PokemonCenter_2F_MapScripts:: @ 8171D1B
+ map_script 2, FiveIsland_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, FiveIsland_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, FiveIsland_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, FiveIsland_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+FiveIsland_PokemonCenter_2F_EventScript_171D30:: @ 8171D30
+ call EventScript_1BB4A3
+ end
+
+EventScript_171D36:: @ 8171D36
+ call EventScript_1BB6AB
+ end
+
+EventScript_171D3C:: @ 8171D3C
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/FiveIsland_ResortGorgeous/scripts.inc b/data/maps/FiveIsland_ResortGorgeous/scripts.inc
new file mode 100644
index 000000000..997a27bb8
--- /dev/null
+++ b/data/maps/FiveIsland_ResortGorgeous/scripts.inc
@@ -0,0 +1,46 @@
+FiveIsland_ResortGorgeous_MapScripts:: @ 81687E4
+ map_script 4, FiveIsland_ResortGorgeous_MapScript1_1687EF
+ map_script 2, FiveIsland_ResortGorgeous_MapScript2_1687FE
+ .byte 0
+
+FiveIsland_ResortGorgeous_MapScript1_1687EF:: @ 81687EF
+ map_script_2 VAR_0x4084, 1, EventScript_1687F9
+ .2byte 0
+
+EventScript_1687F9:: @ 81687F9
+ turnobject 255, 2
+ end
+
+FiveIsland_ResortGorgeous_MapScript2_1687FE:: @ 81687FE
+ map_script_2 VAR_0x4084, 1, EventScript_168808
+ .2byte 0
+
+EventScript_168808:: @ 8168808
+ lockall
+ textcolor 1
+ loadword 0, gUnknown_818A7DB
+ callstd 4
+ closemessage
+ applymovement 8, Movement_1A75E9
+ waitmovement 0
+ opendoor 39, 8
+ waitdooranim
+ applymovement 8, Movement_168841
+ waitmovement 0
+ closedoor 39, 8
+ waitdooranim
+ removeobject 8
+ clearflag FLAG_0x095
+ setvar VAR_0x4084, 2
+ releaseall
+ end
+
+Movement_168841:: @ 8168841
+ step_11
+ step_60
+ step_end
+
+FiveIsland_ResortGorgeous_EventScript_168844:: @ 8168844
+ loadword 0, gUnknown_818A7FE
+ callstd 3
+ end
diff --git a/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc b/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc
new file mode 100644
index 000000000..5dd91f845
--- /dev/null
+++ b/data/maps/FiveIsland_ResortGorgeous_House/scripts.inc
@@ -0,0 +1,163 @@
+FiveIsland_ResortGorgeous_House_MapScripts:: @ 8171EBD
+ .byte 0
+
+FiveIsland_ResortGorgeous_House_EventScript_171EBE:: @ 8171EBE
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ checkflag FLAG_0x002
+ goto_if 1, EventScript_172043
+ compare_var_to_value VAR_STORAGE_UNKNOWN, 65535
+ goto_if 1, EventScript_171F0B
+ compare_var_to_value VAR_STORAGE_UNKNOWN, 0
+ goto_if 5, EventScript_171F19
+ loadword 0, gUnknown_81A42A0
+ callstd 4
+ goto EventScript_171EFE
+ end
+
+EventScript_171EFE:: @ 8171EFE
+ special sub_80CB0A8
+ loadword 0, gUnknown_81A4315
+ callstd 4
+ release
+ end
+
+EventScript_171F0B:: @ 8171F0B
+ loadword 0, gUnknown_81A437A
+ callstd 4
+ goto EventScript_171EFE
+ end
+
+EventScript_171F19:: @ 8171F19
+ copyvar VAR_0x8004, VAR_STORAGE_UNKNOWN
+ specialvar VAR_RESULT, sub_80CC48C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171F34
+ goto EventScript_171EFE
+ end
+
+EventScript_171F34:: @ 8171F34
+ special sub_80CB0A8
+ loadword 0, gUnknown_81A43F7
+ callstd 4
+ addobject 2
+ applymovement 2, Movement_172060
+ waitmovement 0
+ textcolor 0
+ loadword 0, gUnknown_81A450B
+ callstd 4
+ applymovement 1, Movement_1A75E9
+ waitmovement 0
+ textcolor 1
+ loadword 0, gUnknown_81A4521
+ callstd 4
+ textcolor 0
+ loadword 0, gUnknown_81A4566
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_171FCD
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_171FE9
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_171FFE
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_17201A
+ moveobjectoffscreen 2
+ loadword 0, gUnknown_81A458E
+ callstd 4
+ setorcopyvar VAR_0x8000, VAR_0x403B
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_172025
+ setflag FLAG_0x002
+ setvar VAR_STORAGE_UNKNOWN, 0
+ release
+ end
+
+EventScript_171FCD:: @ 8171FCD
+ applymovement 1, Movement_1A75ED
+ applymovement 2, Movement_17204D
+ waitmovement 0
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_171FE9:: @ 8171FE9
+ applymovement 2, Movement_172055
+ waitmovement 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_171FFE:: @ 8171FFE
+ applymovement 1, Movement_1A75E7
+ applymovement 2, Movement_172059
+ waitmovement 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_17201A:: @ 817201A
+ applymovement 2, Movement_17205E
+ waitmovement 0
+ return
+
+EventScript_172025:: @ 8172025
+ textcolor 0
+ loadword 0, gUnknown_81A45E8
+ callstd 4
+ textcolor 1
+ loadword 0, gUnknown_81A461B
+ callstd 4
+ setflag FLAG_0x002
+ setvar VAR_STORAGE_UNKNOWN, 0
+ release
+ end
+
+EventScript_172043:: @ 8172043
+ loadword 0, gUnknown_81A4632
+ callstd 4
+ release
+ end
+
+Movement_17204D:: @ 817204D
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_30
+ step_end
+
+Movement_172055:: @ 8172055
+ step_12
+ step_12
+ step_2d
+ step_end
+
+Movement_172059:: @ 8172059
+ step_12
+ step_12
+ step_12
+ step_10
+ step_end
+
+Movement_17205E:: @ 817205E
+ step_11
+ step_end
+
+Movement_172060:: @ 8172060
+ step_25
+ step_end
+
+FiveIsland_ResortGorgeous_House_EventScript_172062:: @ 8172062
+ loadword 0, gUnknown_81A4657
+ callstd 2
+ end
diff --git a/data/maps/FiveIsland_WaterLabyrinth/scripts.inc b/data/maps/FiveIsland_WaterLabyrinth/scripts.inc
new file mode 100644
index 000000000..0c0eebf58
--- /dev/null
+++ b/data/maps/FiveIsland_WaterLabyrinth/scripts.inc
@@ -0,0 +1,80 @@
+FiveIsland_WaterLabyrinth_MapScripts:: @ 816884D
+ .byte 0
+
+FiveIsland_WaterLabyrinth_EventScript_16884E:: @ 816884E
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ checkflag FLAG_0x2DA
+ goto_if 1, EventScript_1688E3
+ checkflag FLAG_0x2DB
+ goto_if 1, EventScript_16892C
+ loadword 0, gUnknown_818A80D
+ callstd 4
+ specialvar VAR_RESULT, sub_80CA76C
+ compare_var_to_value VAR_RESULT, 6
+ goto_if 1, EventScript_1688AC
+ loadword 0, gUnknown_818A88F
+ callstd 4
+ release
+ end
+
+EventScript_168895:: @ 8168895
+ setvar VAR_0x8004, 1
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_818AA0C
+ callstd 4
+ release
+ end
+
+EventScript_1688AC:: @ 81688AC
+ loadword 0, gUnknown_818A8A6
+ callstd 4
+ goto EventScript_1688BA
+ end
+
+EventScript_1688BA:: @ 81688BA
+ countpokemon
+ compare_var_to_value VAR_RESULT, 6
+ goto_if 1, EventScript_16891F
+ setflag FLAG_0x2DA
+ giveegg SPECIES_TOGEPI
+ textcolor 3
+ playfanfare MUS_FANFA1
+ message Text_18A91F
+ waitfanfare
+ waitmessage
+ call EventScript_1A6675
+ goto EventScript_1688E3
+ end
+
+EventScript_1688E3:: @ 81688E3
+ getspeciesname 1, SPECIES_TOGEPI
+ setvar VAR_0x8004, 175
+ specialvar VAR_RESULT, sub_80CD0F4
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_168895
+ getspeciesname 1, SPECIES_TOGETIC
+ setvar VAR_0x8004, 176
+ specialvar VAR_RESULT, sub_80CD0F4
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_168895
+ loadword 0, gUnknown_818A9C0
+ callstd 4
+ release
+ end
+
+EventScript_16891F:: @ 816891F
+ setflag FLAG_0x2DB
+ loadword 0, gUnknown_818A940
+ callstd 4
+ release
+ end
+
+EventScript_16892C:: @ 816892C
+ goto EventScript_1688BA
+ end
diff --git a/data/maps/FourIsland/scripts.inc b/data/maps/FourIsland/scripts.inc
new file mode 100644
index 000000000..1568056b2
--- /dev/null
+++ b/data/maps/FourIsland/scripts.inc
@@ -0,0 +1,194 @@
+FourIsland_MapScripts:: @ 8167CAE
+ map_script 3, FourIsland_MapScript1_167CB9
+ map_script 2, FourIsland_MapScript2_167CE2
+ .byte 0
+
+FourIsland_MapScript1_167CB9:: @ 8167CB9
+ setworldmapflag 2206
+ compare_var_to_value VAR_0x4086, 0
+ call_if 1, EventScript_167CCD
+ call EventScript_167CD1
+ end
+
+EventScript_167CCD:: @ 8167CCD
+ clearflag FLAG_0x097
+ return
+
+EventScript_167CD1:: @ 8167CD1
+ checkflag FLAG_PENDING_DAYCARE_EGG
+ goto_if 0, EventScript_167CE1
+ setobjectxyperm 1, 16, 14
+
+EventScript_167CE1:: @ 8167CE1
+ return
+
+FourIsland_MapScript2_167CE2:: @ 8167CE2
+ map_script_2 VAR_0x4086, 0, EventScript_167CEC
+ .2byte 0
+
+EventScript_167CEC:: @ 8167CEC
+ lockall
+ textcolor 0
+ applymovement 10, Movement_1A75ED
+ waitmovement 0
+ playbgm BGM_FRLG_RIVAL, 0
+ applymovement 10, Movement_1A75DB
+ waitmovement 0
+ applymovement 10, Movement_1A75DD
+ waitmovement 0
+ delay 25
+ applymovement 10, Movement_167D49
+ waitmovement 0
+ loadword 0, gUnknown_8182B37
+ callstd 4
+ closemessage
+ applymovement 255, Movement_167D52
+ applymovement 10, Movement_167D4E
+ waitmovement 0
+ fadedefaultbgm
+ playse SE_KAIDAN
+ delay 35
+ removeobject 10
+ setvar VAR_0x4086, 1
+ releaseall
+ end
+
+Movement_167D49:: @ 8167D49
+ step_13
+ step_13
+ step_10
+ step_10
+ step_end
+
+Movement_167D4E:: @ 8167D4E
+ step_1c
+ step_1a
+ step_10
+ step_end
+
+Movement_167D52:: @ 8167D52
+ step_12
+ step_30
+ step_end
+
+FourIsland_EventScript_167D55:: @ 8167D55
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ special GetDaycareMonNicknames
+ specialvar VAR_RESULT, GetDaycareState
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_167D9B
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_167E0C
+ compare_var_to_value VAR_RESULT, 3
+ goto_if 1, EventScript_167E19
+ loadword 0, gUnknown_81BF555
+ callstd 4
+ release
+ end
+
+EventScript_167D9B:: @ 8167D9B
+ loadword 0, gUnknown_81BF5E3
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_167DD1
+ loadword 0, gUnknown_81BF7B6
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_167DD1
+ loadword 0, gUnknown_81BF6CF
+ callstd 4
+ clearflag FLAG_PENDING_DAYCARE_EGG
+ special RejectEggFromDayCare
+ release
+ end
+
+EventScript_167DD1:: @ 8167DD1
+ specialvar VAR_RESULT, CalculatePlayerPartyCount
+ compare_var_to_value VAR_RESULT, 6
+ goto_if 5, EventScript_167DEB
+ loadword 0, gUnknown_81BF6F0
+ callstd 4
+ release
+ end
+
+EventScript_167DEB:: @ 8167DEB
+ textcolor 3
+ message Text_1BF72A
+ call EventScript_1A6675
+ playfanfare MUS_FANFA1
+ waitfanfare
+ waitbuttonpress
+ loadword 0, gUnknown_81BF755
+ callstd 4
+ special GiveEggFromDaycare
+ clearflag FLAG_PENDING_DAYCARE_EGG
+ release
+ end
+
+EventScript_167E0C:: @ 8167E0C
+ special GetDaycareMonNicknames
+ loadword 0, gUnknown_81BF69A
+ callstd 4
+ release
+ end
+
+EventScript_167E19:: @ 8167E19
+ special GetDaycareMonNicknames
+ loadword 0, gUnknown_81BF789
+ callstd 4
+ special SetDaycareCompatibilityString
+ special sub_80CA68C
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+FourIsland_EventScript_167E2E:: @ 8167E2E
+ lock
+ faceplayer
+ checkflag 2116
+ goto_if 1, EventScript_167E43
+ loadword 0, gUnknown_8182A2B
+ callstd 4
+ release
+ end
+
+EventScript_167E43:: @ 8167E43
+ setvar VAR_0x8004, 9
+ setvar VAR_0x8005, 5
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8182A75
+ callstd 4
+ release
+ end
+
+FourIsland_EventScript_167E5A:: @ 8167E5A
+ lock
+ faceplayer
+ setvar VAR_0x8004, 9
+ setvar VAR_0x8005, 4
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8182CE3
+ callstd 4
+ release
+ end
+
+FourIsland_EventScript_167E73:: @ 8167E73
+ loadword 0, gUnknown_8182D8E
+ callstd 2
+ end
+
+FourIsland_EventScript_167E7C:: @ 8167E7C
+ loadword 0, gUnknown_8182A03
+ callstd 3
+ end
+
+FourIsland_EventScript_167E85:: @ 8167E85
+ loadword 0, gUnknown_8182DEB
+ callstd 3
+ end
diff --git a/data/maps/FourIsland_Harbor/scripts.inc b/data/maps/FourIsland_Harbor/scripts.inc
new file mode 100644
index 000000000..0daa45d88
--- /dev/null
+++ b/data/maps/FourIsland_Harbor/scripts.inc
@@ -0,0 +1,11 @@
+FourIsland_Harbor_MapScripts:: @ 8171C98
+ .byte 0
+
+FourIsland_Harbor_EventScript_171C99:: @ 8171C99
+ lock
+ faceplayer
+ message Text_181726
+ waitmessage
+ setvar VAR_0x8004, 4
+ goto EventScript_1A900F
+ end
diff --git a/data/maps/FourIsland_House1/scripts.inc b/data/maps/FourIsland_House1/scripts.inc
new file mode 100644
index 000000000..aff7f2230
--- /dev/null
+++ b/data/maps/FourIsland_House1/scripts.inc
@@ -0,0 +1,7 @@
+FourIsland_House1_MapScripts:: @ 8171C44
+ .byte 0
+
+FourIsland_House1_EventScript_171C45:: @ 8171C45
+ loadword 0, gUnknown_81A3802
+ callstd 2
+ end
diff --git a/data/maps/FourIsland_House2/scripts.inc b/data/maps/FourIsland_House2/scripts.inc
new file mode 100644
index 000000000..407bad4cb
--- /dev/null
+++ b/data/maps/FourIsland_House2/scripts.inc
@@ -0,0 +1,2 @@
+FourIsland_House2_MapScripts:: @ 8171CAC
+ .byte 0
diff --git a/data/maps/FourIsland_IcefallCave_1F/scripts.inc b/data/maps/FourIsland_IcefallCave_1F/scripts.inc
new file mode 100644
index 000000000..a2b992a6d
--- /dev/null
+++ b/data/maps/FourIsland_IcefallCave_1F/scripts.inc
@@ -0,0 +1,33 @@
+FourIsland_IcefallCave_1F_MapScripts:: @ 8163D44
+ map_script 5, FourIsland_IcefallCave_1F_MapScript1_163D54
+ map_script 1, FourIsland_IcefallCave_1F_MapScript2_163D57
+ map_script 2, FourIsland_IcefallCave_1F_MapScript3_163D5B
+ .byte 0
+
+FourIsland_IcefallCave_1F_MapScript1_163D54:: @ 8163D54
+ setstepcallback 4
+ end
+
+FourIsland_IcefallCave_1F_MapScript2_163D57:: @ 8163D57
+ special sub_806E99C
+ end
+
+FourIsland_IcefallCave_1F_MapScript3_163D5B:: @ 8163D5B
+ map_script_2 VAR_0x4001, 1, EventScript_163D65
+ .2byte 0
+
+EventScript_163D65:: @ 8163D65
+ lockall
+ delay 20
+ applymovement 255, Movement_163D7F
+ waitmovement 0
+ playse SE_FU_ZAKU
+ delay 60
+ warphole MAP_FOURISLAND_ICEFALLCAVE_B1F
+ waitstate
+ releaseall
+ end
+
+Movement_163D7F:: @ 8163D7F
+ step_60
+ step_end
diff --git a/data/maps/FourIsland_IcefallCave_Entrance/scripts.inc b/data/maps/FourIsland_IcefallCave_Entrance/scripts.inc
new file mode 100644
index 000000000..5fef54ab9
--- /dev/null
+++ b/data/maps/FourIsland_IcefallCave_Entrance/scripts.inc
@@ -0,0 +1,7 @@
+FourIsland_IcefallCave_Entrance_MapScripts:: @ 8163D3A
+ map_script 3, FourIsland_IcefallCave_Entrance_MapScript1_163D40
+ .byte 0
+
+FourIsland_IcefallCave_Entrance_MapScript1_163D40:: @ 8163D40
+ setworldmapflag 2232
+ end
diff --git a/data/maps/FourIsland_LoreleisHouse/scripts.inc b/data/maps/FourIsland_LoreleisHouse/scripts.inc
new file mode 100644
index 000000000..e475b11a7
--- /dev/null
+++ b/data/maps/FourIsland_LoreleisHouse/scripts.inc
@@ -0,0 +1,39 @@
+FourIsland_LoreleisHouse_MapScripts:: @ 8171C4E
+ map_script 3, FourIsland_LoreleisHouse_MapScript1_171C54
+ .byte 0
+
+FourIsland_LoreleisHouse_MapScript1_171C54:: @ 8171C54
+ special sub_80CD154
+ end
+
+FourIsland_LoreleisHouse_EventScript_171C58:: @ 8171C58
+ lock
+ faceplayer
+ checkflag FLAG_0x2D4
+ goto_if 1, EventScript_171C83
+ checkflag FLAG_0x2D5
+ goto_if 1, EventScript_171C76
+ loadword 0, gUnknown_81A3826
+ callstd 4
+ release
+ end
+
+EventScript_171C76:: @ 8171C76
+ setflag FLAG_0x2D4
+ loadword 0, gUnknown_81A390C
+ callstd 4
+ release
+ end
+
+EventScript_171C83:: @ 8171C83
+ loadword 0, gUnknown_81A39D8
+ callstd 4
+ release
+ end
+
+FourIsland_LoreleisHouse_EventScript_171C8D:: @ 8171C8D
+ lock
+ loadword 0, gUnknown_81A3A42
+ callstd 4
+ release
+ end
diff --git a/data/maps/FourIsland_Mart/scripts.inc b/data/maps/FourIsland_Mart/scripts.inc
new file mode 100644
index 000000000..e146a0b25
--- /dev/null
+++ b/data/maps/FourIsland_Mart/scripts.inc
@@ -0,0 +1,35 @@
+FourIsland_Mart_MapScripts:: @ 8171CAD
+ .byte 0
+
+FourIsland_Mart_EventScript_171CAE:: @ 8171CAE
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_171CD4
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_171CD4:: @ 8171CD4
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_FULL_RESTORE
+ .2byte ITEM_MAX_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_ICE_HEAL
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_NONE
+ release
+ end
+
+FourIsland_Mart_EventScript_171CE8:: @ 8171CE8
+ loadword 0, gUnknown_81A3B14
+ callstd 2
+ end
diff --git a/data/maps/FourIsland_PokemonCenter_1F/scripts.inc b/data/maps/FourIsland_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..334b32304
--- /dev/null
+++ b/data/maps/FourIsland_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,30 @@
+FourIsland_PokemonCenter_1F_MapScripts:: @ 8171BEA
+ map_script 3, FourIsland_PokemonCenter_1F_MapScript1_171BF5
+ map_script 5, FourIsland_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+FourIsland_PokemonCenter_1F_MapScript1_171BF5:: @ 8171BF5
+ setrespawn 17
+ end
+
+FourIsland_PokemonCenter_1F_EventScript_171BF9:: @ 8171BF9
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+FourIsland_PokemonCenter_1F_EventScript_171C02:: @ 8171C02
+ loadword 0, gUnknown_81A3627
+ callstd 2
+ end
+
+FourIsland_PokemonCenter_1F_EventScript_171C0B:: @ 8171C0B
+ loadword 0, gUnknown_81A3697
+ callstd 2
+ end
+
+FourIsland_PokemonCenter_1F_EventScript_171C14:: @ 8171C14
+ loadword 0, gUnknown_81A3734
+ callstd 2
+ end
diff --git a/data/maps/FourIsland_PokemonCenter_2F/scripts.inc b/data/maps/FourIsland_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..37d21446e
--- /dev/null
+++ b/data/maps/FourIsland_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+FourIsland_PokemonCenter_2F_MapScripts:: @ 8171C1D
+ map_script 2, FourIsland_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, FourIsland_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, FourIsland_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, FourIsland_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+FourIsland_PokemonCenter_2F_EventScript_171C32:: @ 8171C32
+ call EventScript_1BB4A3
+ end
+
+EventScript_171C38:: @ 8171C38
+ call EventScript_1BB6AB
+ end
+
+EventScript_171C3E:: @ 8171C3E
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/FourIsland_PokemonDayCare/scripts.inc b/data/maps/FourIsland_PokemonDayCare/scripts.inc
new file mode 100644
index 000000000..1b0011054
--- /dev/null
+++ b/data/maps/FourIsland_PokemonDayCare/scripts.inc
@@ -0,0 +1,235 @@
+FourIsland_PokemonDayCare_MapScripts:: @ 817193F
+ .byte 0
+
+FourIsland_PokemonDayCare_EventScript_171940:: @ 8171940
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ specialvar VAR_RESULT, GetDaycareState
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171A2E
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_171A52
+ compare_var_to_value VAR_RESULT, 3
+ goto_if 1, EventScript_171B86
+ loadword 0, gUnknown_81BF7E4
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171993
+ loadword 0, gUnknown_81BF916
+ callstd 4
+ release
+ end
+
+EventScript_171993:: @ 8171993
+ specialvar VAR_RESULT, CountPartyNonEggMons
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171A1A
+ loadword 0, gUnknown_81BF839
+ callstd 4
+ fadescreen 1
+ special ChooseSendDaycareMon
+ waitstate
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_1719F7
+ specialvar VAR_RESULT, CountPartyAliveNonEggMons_IgnoreVar0x8004Slot
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_171A24
+ specialvar VAR_0x8005, GetSelectedMonNickAndSpecies
+ waitse
+ playmoncry 32773, 0
+ loadword 0, gUnknown_81BF860
+ callstd 4
+ waitmoncry
+ special StoreSelectedPokemonInDaycare
+ incrementgamestat 47
+ specialvar VAR_RESULT, GetDaycareState
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_171A01
+ release
+ end
+
+EventScript_1719F7:: @ 81719F7
+ loadword 0, gUnknown_81BF976
+ callstd 4
+ release
+ end
+
+EventScript_171A01:: @ 8171A01
+ loadword 0, gUnknown_81BF89F
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171993
+ goto EventScript_1719F7
+ end
+
+EventScript_171A1A:: @ 8171A1A
+ loadword 0, gUnknown_81BFAAD
+ callstd 4
+ release
+ end
+
+EventScript_171A24:: @ 8171A24
+ loadword 0, gUnknown_81BFB09
+ callstd 4
+ release
+ end
+
+EventScript_171A2E:: @ 8171A2E
+ loadword 0, gUnknown_81BF8F6
+ callstd 4
+ release
+ end
+
+EventScript_171A38:: @ 8171A38
+ loadword 0, gUnknown_81BF9CC
+ callstd 4
+ return
+
+EventScript_171A41:: @ 8171A41
+ specialvar VAR_RESULT, GetNumLevelsGainedFromDaycare
+ compare_var_to_value VAR_RESULT, 0
+ call_if 5, EventScript_171A38
+ return
+
+EventScript_171A52:: @ 8171A52
+ loadword 0, gUnknown_81BF988
+ callstd 4
+ setvar VAR_0x8004, 0
+ call EventScript_171A41
+ loadword 0, gUnknown_81BF89F
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171993
+ loadword 0, gUnknown_81BFAE8
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171A90
+ goto EventScript_1719F7
+ end
+
+EventScript_171A90:: @ 8171A90
+ specialvar VAR_RESULT, CalculatePlayerPartyCount
+ compare_var_to_value VAR_RESULT, 6
+ goto_if 1, EventScript_171B67
+ specialvar VAR_RESULT, GetDaycareState
+ setvar VAR_0x8004, 0
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_171ACF
+ special ShowDaycareLevelMenu
+ waitstate
+ copyvar VAR_0x8004, VAR_RESULT
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1719F7
+ goto EventScript_171ACF
+ end
+
+EventScript_171ACF:: @ 8171ACF
+ special GetDaycareCost
+ loadword 0, gUnknown_81BFA3B
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171AEB
+ goto EventScript_1719F7
+ end
+
+EventScript_171AEB:: @ 8171AEB
+ specialvar VAR_RESULT, IsEnoughForCostInVar0x8005
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171B05
+ loadword 0, gUnknown_81BF932
+ callstd 4
+ release
+ end
+
+EventScript_171B05:: @ 8171B05
+ applymovement 1, Movement_171B71
+ waitmovement 0
+ specialvar VAR_RESULT, TakePokemonFromDaycare
+ special SubtractMoneyFromVar0x8005
+ playse SE_T_KAMI2
+ loadword 0, gUnknown_81BFA67
+ callstd 4
+ waitse
+ playmoncry 32781, 0
+ textcolor 3
+ loadword 0, gUnknown_81BFA85
+ callstd 4
+ call EventScript_1A6675
+ waitmoncry
+ specialvar VAR_RESULT, GetDaycareState
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_171B4E
+ goto EventScript_1719F7
+ end
+
+EventScript_171B4E:: @ 8171B4E
+ loadword 0, gUnknown_81BF94F
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171A90
+ goto EventScript_1719F7
+ end
+
+EventScript_171B67:: @ 8171B67
+ loadword 0, gUnknown_81BF9EF
+ callstd 4
+ release
+ end
+
+Movement_171B71:: @ 8171B71
+ step_1c
+ step_1c
+ step_03
+ step_1c
+ step_1c
+ step_02
+ step_1c
+ step_1c
+ step_01
+ step_up
+ step_60
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_00
+ step_61
+ step_down
+ step_end
+
+EventScript_171B85:: @ 8171B85
+ end
+
+EventScript_171B86:: @ 8171B86
+ loadword 0, gUnknown_81BF988
+ callstd 4
+ setvar VAR_0x8004, 0
+ call EventScript_171A41
+ setvar VAR_0x8004, 1
+ call EventScript_171A41
+ loadword 0, gUnknown_81BFAE8
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171A90
+ loadword 0, gUnknown_81BF976
+ callstd 4
+ release
+ end
+
+EventScript_171BBF:: @ 8171BBF
+ special ShowDaycareLevelMenu
+ waitstate
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1719F7
+ copyvar VAR_0x8004, VAR_RESULT
+ specialvar VAR_RESULT, TakePokemonFromDaycare
+ loadword 0, gUnknown_81BFA67
+ callstd 4
+ loadword 0, gUnknown_81BF976
+ callstd 4
+ release
+ end
diff --git a/data/maps/FuchsiaCity/scripts.inc b/data/maps/FuchsiaCity/scripts.inc
new file mode 100644
index 000000000..39624941c
--- /dev/null
+++ b/data/maps/FuchsiaCity/scripts.inc
@@ -0,0 +1,163 @@
+FuchsiaCity_MapScripts:: @ 8166D75
+ map_script 3, FuchsiaCity_MapScript1_166D7B
+ .byte 0
+
+FuchsiaCity_MapScript1_166D7B:: @ 8166D7B
+ setworldmapflag 2199
+ checkflag FLAG_0x272
+ call_if 1, EventScript_166D91
+ checkflag FLAG_0x272
+ call_if 0, EventScript_166D97
+ end
+
+EventScript_166D91:: @ 8166D91
+ setvar VAR_0x4010, 118
+ return
+
+EventScript_166D97:: @ 8166D97
+ setvar VAR_0x4010, 147
+ return
+
+FuchsiaCity_EventScript_166D9D:: @ 8166D9D
+ loadword 0, gUnknown_818056E
+ callstd 2
+ end
+
+FuchsiaCity_EventScript_166DA6:: @ 8166DA6
+ loadword 0, gUnknown_81805C6
+ callstd 2
+ end
+
+FuchsiaCity_EventScript_166DAF:: @ 8166DAF
+ loadword 0, gUnknown_818062C
+ callstd 2
+ end
+
+FuchsiaCity_EventScript_166DB8:: @ 8166DB8
+ loadword 0, gUnknown_818065A
+ callstd 2
+ end
+
+FuchsiaCity_EventScript_166DC1:: @ 8166DC1
+ lock
+ faceplayer
+ setvar VAR_0x8004, 6
+ setvar VAR_0x8005, 3
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8180ABD
+ callstd 4
+ release
+ end
+
+FuchsiaCity_EventScript_166DDA:: @ 8166DDA
+ loadword 0, gUnknown_81806AB
+ callstd 3
+ end
+
+FuchsiaCity_EventScript_166DE3:: @ 8166DE3
+ loadword 0, gUnknown_81806D3
+ callstd 3
+ end
+
+FuchsiaCity_EventScript_166DEC:: @ 8166DEC
+ loadword 0, gUnknown_81806F0
+ callstd 3
+ end
+
+FuchsiaCity_EventScript_166DF5:: @ 8166DF5
+ loadword 0, gUnknown_818070D
+ callstd 3
+ end
+
+EventScript_166DFE:: @ 8166DFE
+ loadword 0, gUnknown_8180727
+ callstd 3
+ end
+
+FuchsiaCity_EventScript_166E07:: @ 8166E07
+ lockall
+ setvar VAR_0x8004, 6
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8180768
+ callstd 4
+ releaseall
+ end
+
+FuchsiaCity_EventScript_166E1F:: @ 8166E1F
+ lockall
+ setvar VAR_0x8004, 113
+ special sub_80CBDCC
+ drawmonpic SPECIES_CHANSEY, 10, 3
+ loadword 0, gUnknown_81807A9
+ callstd 4
+ erasemonpic
+ releaseall
+ end
+
+FuchsiaCity_EventScript_166E38:: @ 8166E38
+ lockall
+ setvar VAR_0x8004, 100
+ special sub_80CBDCC
+ drawmonpic SPECIES_VOLTORB, 10, 3
+ loadword 0, gUnknown_81807D9
+ callstd 4
+ erasemonpic
+ releaseall
+ end
+
+FuchsiaCity_EventScript_166E51:: @ 8166E51
+ lockall
+ setvar VAR_0x8004, 115
+ special sub_80CBDCC
+ drawmonpic SPECIES_KANGASKHAN, 10, 3
+ loadword 0, gUnknown_8180806
+ callstd 4
+ erasemonpic
+ releaseall
+ end
+
+FuchsiaCity_EventScript_166E6A:: @ 8166E6A
+ lockall
+ setvar VAR_0x8004, 79
+ special sub_80CBDCC
+ drawmonpic SPECIES_SLOWPOKE, 10, 3
+ loadword 0, gUnknown_8180859
+ callstd 4
+ erasemonpic
+ releaseall
+ end
+
+FuchsiaCity_EventScript_166E83:: @ 8166E83
+ lockall
+ setvar VAR_0x8004, 131
+ special sub_80CBDCC
+ drawmonpic SPECIES_LAPRAS, 10, 3
+ loadword 0, gUnknown_8180887
+ callstd 4
+ erasemonpic
+ releaseall
+ end
+
+FuchsiaCity_EventScript_166E9C:: @ 8166E9C
+ lockall
+ checkflag FLAG_0x272
+ goto_if 1, EventScript_166EBE
+ setvar VAR_0x8004, 140
+ special sub_80CBDCC
+ drawmonpic SPECIES_KABUTO, 10, 3
+ loadword 0, gUnknown_81808FA
+ callstd 4
+ erasemonpic
+ releaseall
+ end
+
+EventScript_166EBE:: @ 8166EBE
+ setvar VAR_0x8004, 138
+ special sub_80CBDCC
+ drawmonpic SPECIES_OMANYTE, 10, 3
+ loadword 0, gUnknown_81808AE
+ callstd 4
+ erasemonpic
+ releaseall
+ end
diff --git a/data/maps/FuchsiaCity_Building1/scripts.inc b/data/maps/FuchsiaCity_Building1/scripts.inc
new file mode 100644
index 000000000..6b4c7a583
--- /dev/null
+++ b/data/maps/FuchsiaCity_Building1/scripts.inc
@@ -0,0 +1,79 @@
+FuchsiaCity_Building1_MapScripts:: @ 816D74B
+ .byte 0
+
+FuchsiaCity_Building1_EventScript_16D74C:: @ 816D74C
+ lock
+ faceplayer
+ checkflag FLAG_0x23A
+ goto_if 1, EventScript_16D7FA
+ checkflag FLAG_0x189
+ goto_if 1, EventScript_16D780
+ loadword 0, gUnknown_8198DF9
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_16D7E8
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16D7F1
+ release
+ end
+
+EventScript_16D780:: @ 816D780
+ textcolor 3
+ playfanfare MUS_ME_WAZA
+ message Text_198E84
+ waitmessage
+ waitfanfare
+ loadword 0, gUnknown_8198EAA
+ callstd 4
+ call EventScript_1A6675
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16D7D6
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_16D7DF
+ additem ITEM_HM04, 1
+ loadword 0, gUnknown_8199068
+ setorcopyvar VAR_0x8000, 342
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x23A
+ removeitem ITEM_GOLD_TEETH, 1
+ release
+ end
+
+EventScript_16D7D6:: @ 816D7D6
+ loadword 0, gUnknown_8198ECA
+ callstd 4
+ return
+
+EventScript_16D7DF:: @ 816D7DF
+ loadword 0, gUnknown_8198F96
+ callstd 4
+ return
+
+EventScript_16D7E8:: @ 816D7E8
+ loadword 0, gUnknown_8198E3F
+ callstd 4
+ return
+
+EventScript_16D7F1:: @ 816D7F1
+ loadword 0, gUnknown_8198E63
+ callstd 4
+ return
+
+EventScript_16D7FA:: @ 816D7FA
+ loadword 0, gUnknown_819908A
+ callstd 4
+ release
+ end
+
+FuchsiaCity_Building1_EventScript_16D804:: @ 816D804
+ loadword 0, gUnknown_819913C
+ callstd 3
+ end
+
+FuchsiaCity_Building1_EventScript_16D80D:: @ 816D80D
+ loadword 0, gUnknown_8199167
+ callstd 3
+ end
diff --git a/data/maps/FuchsiaCity_Gym/scripts.inc b/data/maps/FuchsiaCity_Gym/scripts.inc
new file mode 100644
index 000000000..fee370e20
--- /dev/null
+++ b/data/maps/FuchsiaCity_Gym/scripts.inc
@@ -0,0 +1,120 @@
+FuchsiaCity_Gym_MapScripts:: @ 816D54D
+ .byte 0
+
+FuchsiaCity_Gym_EventScript_16D54E:: @ 816D54E
+ setvar VAR_0x8004, 6
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ trainerbattle 1, 418, 0, Text_19832E, Text_198444, EventScript_16D580
+ checkflag FLAG_0x259
+ goto_if 0, EventScript_16D5A6
+ loadword 0, gUnknown_8198481
+ callstd 4
+ release
+ end
+
+EventScript_16D580:: @ 816D580
+ setvar VAR_0x8004, 6
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ clearflag FLAG_0x09F
+ setflag FLAG_0x4B4
+ setflag FLAG_UNK824
+ setvar VAR_0x8008, 5
+ call EventScript_1A6B18
+ goto EventScript_16D5A6
+ end
+
+EventScript_16D5A6:: @ 816D5A6
+ loadword 0, gUnknown_819850E
+ callstd 4
+ checkitemspace ITEM_TM06, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16D5E7
+ additem ITEM_TM06, 1
+ loadword 0, gUnknown_819858F
+ setorcopyvar VAR_0x8000, 294
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x259
+ loadword 0, gUnknown_81985AB
+ callstd 4
+ release
+ end
+
+EventScript_16D5E7:: @ 816D5E7
+ loadword 0, gUnknown_819860D
+ callstd 4
+ release
+ end
+
+FuchsiaCity_Gym_EventScript_16D5F1:: @ 816D5F1
+ trainerbattle 0, 294, 0, Text_198866, Text_1988B6
+ loadword 0, gUnknown_81988CB
+ callstd 6
+ end
+
+FuchsiaCity_Gym_EventScript_16D608:: @ 816D608
+ trainerbattle 0, 295, 0, Text_19891F, Text_19897F
+ loadword 0, gUnknown_8198985
+ callstd 6
+ end
+
+FuchsiaCity_Gym_EventScript_16D61F:: @ 816D61F
+ trainerbattle 0, 288, 0, Text_19871E, Text_198779
+ setvar VAR_0x8004, 6
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8198787
+ callstd 6
+ end
+
+FuchsiaCity_Gym_EventScript_16D643:: @ 816D643
+ trainerbattle 0, 289, 0, Text_1989A1, Text_1989EA
+ loadword 0, gUnknown_8198A10
+ callstd 6
+ end
+
+FuchsiaCity_Gym_EventScript_16D65A:: @ 816D65A
+ trainerbattle 0, 292, 0, Text_198629, Text_1986B4
+ loadword 0, gUnknown_81986C9
+ callstd 6
+ end
+
+FuchsiaCity_Gym_EventScript_16D671:: @ 816D671
+ trainerbattle 0, 293, 0, Text_1987E8, Text_198812
+ loadword 0, gUnknown_8198825
+ callstd 6
+ end
+
+FuchsiaCity_Gym_EventScript_16D688:: @ 816D688
+ lock
+ faceplayer
+ checkflag FLAG_0x4B4
+ goto_if 1, EventScript_16D69D
+ loadword 0, gUnknown_8198A5E
+ callstd 4
+ release
+ end
+
+EventScript_16D69D:: @ 816D69D
+ loadword 0, gUnknown_8198B1D
+ callstd 4
+ release
+ end
+
+FuchsiaCity_Gym_EventScript_16D6A7:: @ 816D6A7
+ lockall
+ checkflag FLAG_UNK824
+ goto_if 1, EventScript_16D6BB
+ loadword 0, gUnknown_8198B4B
+ callstd 4
+ releaseall
+ end
+
+EventScript_16D6BB:: @ 816D6BB
+ loadword 0, gUnknown_8198B81
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/FuchsiaCity_House1/scripts.inc b/data/maps/FuchsiaCity_House1/scripts.inc
new file mode 100644
index 000000000..7f3f29d91
--- /dev/null
+++ b/data/maps/FuchsiaCity_House1/scripts.inc
@@ -0,0 +1,23 @@
+FuchsiaCity_House1_MapScripts:: @ 816D6C5
+ .byte 0
+
+FuchsiaCity_House1_EventScript_16D6C6:: @ 816D6C6
+ loadword 0, gUnknown_8198BBB
+ callstd 2
+ end
+
+FuchsiaCity_House1_EventScript_16D6CF:: @ 816D6CF
+ lock
+ faceplayer
+ setvar VAR_0x8004, 13
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8198C1F
+ callstd 4
+ release
+ end
+
+FuchsiaCity_House1_EventScript_16D6E8:: @ 816D6E8
+ loadword 0, gUnknown_8198C7B
+ callstd 2
+ end
diff --git a/data/maps/FuchsiaCity_House2/scripts.inc b/data/maps/FuchsiaCity_House2/scripts.inc
new file mode 100644
index 000000000..82d9cf932
--- /dev/null
+++ b/data/maps/FuchsiaCity_House2/scripts.inc
@@ -0,0 +1,46 @@
+FuchsiaCity_House2_MapScripts:: @ 816D816
+ .byte 0
+
+FuchsiaCity_House2_EventScript_16D817:: @ 816D817
+ lock
+ faceplayer
+ checkflag FLAG_0x244
+ goto_if 1, EventScript_16D83F
+ loadword 0, gUnknown_819918E
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16D849
+ loadword 0, gUnknown_8199337
+ callstd 4
+ release
+ end
+
+EventScript_16D83F:: @ 816D83F
+ loadword 0, gUnknown_8199354
+ callstd 4
+ release
+ end
+
+EventScript_16D849:: @ 816D849
+ loadword 0, gUnknown_8199207
+ callstd 4
+ checkitemspace ITEM_GOOD_ROD, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16D88A
+ additem ITEM_GOOD_ROD, 1
+ loadword 0, gUnknown_819925E
+ setorcopyvar VAR_0x8000, 263
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ loadword 0, gUnknown_8199296
+ callstd 4
+ setflag FLAG_0x244
+ release
+ end
+
+EventScript_16D88A:: @ 816D88A
+ loadword 0, gUnknown_819937E
+ callstd 4
+ release
+ end
diff --git a/data/maps/FuchsiaCity_House3/scripts.inc b/data/maps/FuchsiaCity_House3/scripts.inc
new file mode 100644
index 000000000..c7a7f60bb
--- /dev/null
+++ b/data/maps/FuchsiaCity_House3/scripts.inc
@@ -0,0 +1,68 @@
+FuchsiaCity_House3_MapScripts:: @ 816D894
+ .byte 0
+
+FuchsiaCity_House3_EventScript_16D895:: @ 816D895
+ lock
+ faceplayer
+ loadword 0, gUnknown_81993B9
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16D8B0
+ goto EventScript_16D941
+ end
+
+EventScript_16D8B0:: @ 816D8B0
+ loadword 0, gUnknown_8199421
+ callstd 4
+ special sub_80BF8FC
+ waitstate
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_16D941
+ special sub_80BFC14
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16D937
+ special ScrSpecial_CountPokemonMoves
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16D92A
+ loadword 0, gUnknown_8199445
+ callstd 4
+ fadescreen 1
+ special sub_80BF9BC
+ fadescreen 0
+ compare_var_to_value VAR_0x8005, 4
+ goto_if 1, EventScript_16D8B0
+ special ScrSpecial_GetPokemonNicknameAndMoveName
+ loadword 0, gUnknown_8199485
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16D919
+ goto EventScript_16D941
+ end
+
+EventScript_16D919:: @ 816D919
+ special sub_80BFBA8
+ playfanfare MUS_ME_WASURE
+ waitfanfare
+ loadword 0, gUnknown_81994B1
+ callstd 4
+ release
+ end
+
+EventScript_16D92A:: @ 816D92A
+ special ScrSpecial_GetPokemonNicknameAndMoveName
+ loadword 0, gUnknown_8199465
+ callstd 4
+ release
+ end
+
+EventScript_16D937:: @ 816D937
+ loadword 0, gUnknown_819951F
+ callstd 4
+ release
+ end
+
+EventScript_16D941:: @ 816D941
+ loadword 0, gUnknown_81994EA
+ callstd 4
+ release
+ end
diff --git a/data/maps/FuchsiaCity_Mart/scripts.inc b/data/maps/FuchsiaCity_Mart/scripts.inc
new file mode 100644
index 000000000..b87c05ce7
--- /dev/null
+++ b/data/maps/FuchsiaCity_Mart/scripts.inc
@@ -0,0 +1,38 @@
+FuchsiaCity_Mart_MapScripts:: @ 816D4E0
+ .byte 0
+
+FuchsiaCity_Mart_EventScript_16D4E1:: @ 816D4E1
+ loadword 0, gUnknown_8198134
+ callstd 2
+ end
+
+FuchsiaCity_Mart_EventScript_16D4EA:: @ 816D4EA
+ loadword 0, gUnknown_81980BC
+ callstd 2
+ end
+
+FuchsiaCity_Mart_EventScript_16D4F3:: @ 816D4F3
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16D518
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16D518:: @ 816D518
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/FuchsiaCity_PokemonCenter_1F/scripts.inc b/data/maps/FuchsiaCity_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..c52bf9f88
--- /dev/null
+++ b/data/maps/FuchsiaCity_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,30 @@
+FuchsiaCity_PokemonCenter_1F_MapScripts:: @ 816D6F1
+ map_script 3, FuchsiaCity_PokemonCenter_1F_MapScript1_16D6FC
+ map_script 5, FuchsiaCity_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+FuchsiaCity_PokemonCenter_1F_MapScript1_16D6FC:: @ 816D6FC
+ setrespawn 8
+ end
+
+FuchsiaCity_PokemonCenter_1F_EventScript_16D700:: @ 816D700
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+FuchsiaCity_PokemonCenter_1F_EventScript_16D709:: @ 816D709
+ loadword 0, gUnknown_8198CB7
+ callstd 2
+ end
+
+FuchsiaCity_PokemonCenter_1F_EventScript_16D712:: @ 816D712
+ loadword 0, gUnknown_8198D2E
+ callstd 2
+ end
+
+FuchsiaCity_PokemonCenter_1F_EventScript_16D71B:: @ 816D71B
+ loadword 0, gUnknown_8198D9B
+ callstd 2
+ end
diff --git a/data/maps/FuchsiaCity_PokemonCenter_2F/scripts.inc b/data/maps/FuchsiaCity_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..2f62e3591
--- /dev/null
+++ b/data/maps/FuchsiaCity_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+FuchsiaCity_PokemonCenter_2F_MapScripts:: @ 816D724
+ map_script 2, FuchsiaCity_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, FuchsiaCity_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, FuchsiaCity_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, FuchsiaCity_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+FuchsiaCity_PokemonCenter_2F_EventScript_16D739:: @ 816D739
+ call EventScript_1BB4A3
+ end
+
+EventScript_16D73F:: @ 816D73F
+ call EventScript_1BB6AB
+ end
+
+EventScript_16D745:: @ 816D745
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/FuchsiaCity_SafariZone_Entrance/scripts.inc b/data/maps/FuchsiaCity_SafariZone_Entrance/scripts.inc
new file mode 100644
index 000000000..58d68162b
--- /dev/null
+++ b/data/maps/FuchsiaCity_SafariZone_Entrance/scripts.inc
@@ -0,0 +1,231 @@
+FuchsiaCity_SafariZone_Entrance_MapScripts:: @ 816D2A8
+ map_script 2, FuchsiaCity_SafariZone_Entrance_MapScript1_16D2AE
+ .byte 0
+
+FuchsiaCity_SafariZone_Entrance_MapScript1_16D2AE:: @ 816D2AE
+ map_script_2 VAR_0x406E, 1, EventScript_16D2F2
+ map_script_2 VAR_0x406E, 2, EventScript_16D312
+ map_script_2 VAR_0x406E, 3, EventScript_16D2C8
+ .2byte 0
+
+EventScript_16D2C8:: @ 816D2C8
+ lockall
+ textcolor 0
+ applymovement 255, Movement_16D36A
+ waitmovement 0
+ loadword 0, gUnknown_8197E85
+ callstd 4
+ closemessage
+ applymovement 255, Movement_16D367
+ waitmovement 0
+ special sub_80A0EEC
+ setvar VAR_0x406E, 0
+ releaseall
+ end
+
+EventScript_16D2F2:: @ 816D2F2
+ lockall
+ textcolor 0
+ loadword 0, gUnknown_8197E85
+ callstd 4
+ closemessage
+ applymovement 255, Movement_16D362
+ waitmovement 0
+ special sub_80A0EEC
+ setvar VAR_0x406E, 0
+ releaseall
+ end
+
+EventScript_16D312:: @ 816D312
+ lockall
+ textcolor 0
+ loadword 0, gUnknown_8197E1A
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16D345
+ loadword 0, gUnknown_8197E48
+ callstd 4
+ closemessage
+ applymovement 255, Movement_16D362
+ waitmovement 0
+ special sub_80A0EEC
+ setvar VAR_0x406E, 0
+ releaseall
+ end
+
+EventScript_16D345:: @ 816D345
+ loadword 0, gUnknown_8197E7A
+ callstd 4
+ closemessage
+ applymovement 255, Movement_16D365
+ waitmovement 0
+ warp MAP_SAFARIZONE_CENTER, 255, 26, 30
+ waitstate
+ end
+
+Movement_16D362:: @ 816D362
+ step_10
+ step_10
+ step_end
+
+Movement_16D365:: @ 816D365
+ step_11
+ step_end
+
+Movement_16D367:: @ 816D367
+ step_10
+ step_10
+ step_end
+
+Movement_16D36A:: @ 816D36A
+ step_10
+ step_1b
+ step_end
+
+FuchsiaCity_SafariZone_Entrance_EventScript_16D36D:: @ 816D36D
+ lockall
+ setvar VAR_0x4002, 0
+ goto EventScript_16D391
+ end
+
+FuchsiaCity_SafariZone_Entrance_EventScript_16D379:: @ 816D379
+ lockall
+ setvar VAR_0x4002, 1
+ goto EventScript_16D391
+ end
+
+FuchsiaCity_SafariZone_Entrance_EventScript_16D385:: @ 816D385
+ lockall
+ setvar VAR_0x4002, 2
+ goto EventScript_16D391
+ end
+
+EventScript_16D391:: @ 816D391
+ textcolor 0
+ loadword 0, gUnknown_8197C6B
+ callstd 4
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ showmoneybox 0, 0, 0
+ loadword 0, gUnknown_8197C87
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16D3CA
+ loadword 0, gUnknown_8197DE9
+ callstd 4
+ goto EventScript_16D49A
+ end
+
+EventScript_16D3CA:: @ 816D3CA
+ call EventScript_16D462
+ checkmoney 500, 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16D48C
+ takemoney 500, 0
+ updatemoneybox 0, 0, 0
+ loadword 0, gUnknown_8197D07
+ callstd 4
+ textcolor 3
+ playfanfare MUS_FANFA1
+ message Text_197D50
+ waitfanfare
+ call EventScript_1A6675
+ loadword 0, gUnknown_8197D80
+ callstd 4
+ closemessage
+ hidemoneybox
+ .byte 0
+ .byte 0
+ compare_var_to_value VAR_0x4002, 0
+ call_if 1, EventScript_16D44C
+ compare_var_to_value VAR_0x4002, 1
+ call_if 1, EventScript_16D441
+ compare_var_to_value VAR_0x4002, 2
+ call_if 1, EventScript_16D457
+ special sub_80A0EC4
+ setvar VAR_0x406E, 2
+ warp MAP_SAFARIZONE_CENTER, 255, 26, 30
+ waitstate
+ end
+
+EventScript_16D441:: @ 816D441
+ applymovement 255, Movement_16D4AF
+ waitmovement 0
+ return
+
+EventScript_16D44C:: @ 816D44C
+ applymovement 255, Movement_16D4AC
+ waitmovement 0
+ return
+
+EventScript_16D457:: @ 816D457
+ applymovement 255, Movement_16D4B3
+ waitmovement 0
+ return
+
+EventScript_16D462:: @ 816D462
+ countpokemon
+ compare_var_to_value VAR_RESULT, 6
+ goto_if 5, EventScript_1A77A9
+ specialvar VAR_RESULT, sub_80CABD0
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_1A77A9
+ loadword 0, gUnknown_81BFEAC
+ callstd 4
+ goto EventScript_16D49A
+ end
+
+EventScript_16D48C:: @ 816D48C
+ loadword 0, gUnknown_8197E02
+ callstd 4
+ goto EventScript_16D49A
+ end
+
+EventScript_16D49A:: @ 816D49A
+ closemessage
+ hidemoneybox
+ .byte 0
+ .byte 0
+ applymovement 255, Movement_16D4AA
+ waitmovement 0
+ releaseall
+ end
+
+Movement_16D4AA:: @ 816D4AA
+ step_10
+ step_end
+
+Movement_16D4AC:: @ 816D4AC
+ step_11
+ step_11
+ step_end
+
+Movement_16D4AF:: @ 816D4AF
+ step_11
+ step_12
+ step_11
+ step_end
+
+Movement_16D4B3:: @ 816D4B3
+ step_11
+ step_13
+ step_11
+ step_end
+
+FuchsiaCity_SafariZone_Entrance_EventScript_16D4B7:: @ 816D4B7
+ lock
+ faceplayer
+ loadword 0, gUnknown_8197EB0
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16D4D6
+ loadword 0, gUnknown_819809E
+ callstd 4
+ release
+ end
+
+EventScript_16D4D6:: @ 816D4D6
+ loadword 0, gUnknown_8197EE3
+ callstd 4
+ release
+ end
diff --git a/data/maps/FuchsiaCity_ZooBuilding/scripts.inc b/data/maps/FuchsiaCity_ZooBuilding/scripts.inc
new file mode 100644
index 000000000..80c385909
--- /dev/null
+++ b/data/maps/FuchsiaCity_ZooBuilding/scripts.inc
@@ -0,0 +1,22 @@
+FuchsiaCity_ZooBuilding_MapScripts:: @ 816D528
+ .byte 0
+
+FuchsiaCity_ZooBuilding_EventScript_16D529:: @ 816D529
+ loadword 0, gUnknown_819816B
+ callstd 2
+ end
+
+FuchsiaCity_ZooBuilding_EventScript_16D532:: @ 816D532
+ loadword 0, gUnknown_81981C2
+ callstd 2
+ end
+
+FuchsiaCity_ZooBuilding_EventScript_16D53B:: @ 816D53B
+ loadword 0, gUnknown_819822A
+ callstd 2
+ end
+
+FuchsiaCity_ZooBuilding_EventScript_16D544:: @ 816D544
+ loadword 0, gUnknown_8198285
+ callstd 2
+ end
diff --git a/data/maps/IndigoPlateau_Exterior/scripts.inc b/data/maps/IndigoPlateau_Exterior/scripts.inc
new file mode 100644
index 000000000..101993c19
--- /dev/null
+++ b/data/maps/IndigoPlateau_Exterior/scripts.inc
@@ -0,0 +1,167 @@
+IndigoPlateau_Exterior_MapScripts:: @ 816723B
+ map_script 3, IndigoPlateau_Exterior_MapScript1_167246
+ map_script 2, IndigoPlateau_Exterior_MapScript2_16725A
+ .byte 0
+
+IndigoPlateau_Exterior_MapScript1_167246:: @ 8167246
+ setworldmapflag 2201
+ compare_var_to_value VAR_0x4085, 1
+ call_if 1, EventScript_167255
+ end
+
+EventScript_167255:: @ 8167255
+ playbgm BGM_FRLG_CREDITS, 0
+ return
+
+IndigoPlateau_Exterior_MapScript2_16725A:: @ 816725A
+ map_script_2 VAR_0x4085, 1, EventScript_167264
+ .2byte 0
+
+EventScript_167264:: @ 8167264
+ lockall
+ delay 105
+ opendoor 11, 6
+ waitdooranim
+ special SpawnScriptFieldObject
+ addobject 1
+ applymovement 1, Movement_167346
+ applymovement 255, Movement_167337
+ waitmovement 0
+ closedoor 11, 6
+ waitdooranim
+ applymovement 255, Movement_16731B
+ applymovement 1, Movement_16733E
+ waitmovement 0
+ delay 100
+ opendoor 11, 6
+ waitdooranim
+ addobject 2
+ applymovement 2, Movement_16735D
+ waitmovement 0
+ closedoor 11, 6
+ waitdooranim
+ delay 160
+ applymovement 255, Movement_16731F
+ applymovement 2, Movement_167348
+ waitmovement 0
+ delay 100
+ applymovement 255, Movement_16732E
+ waitmovement 0
+ delay 155
+ applymovement 255, Movement_16733C
+ waitmovement 0
+ delay 90
+ applymovement 255, Movement_167335
+ waitmovement 0
+ applymovement 255, Movement_167311
+ waitmovement 0
+ special RemoveScriptFieldObject
+ setvar VAR_0x4085, 0
+ removeobject 1
+ removeobject 2
+ special sub_80F39B4
+ waitstate
+ releaseall
+ end
+
+Movement_167311:: @ 8167311
+ step_3d
+ step_3d
+ step_3d
+ step_3d
+ step_3d
+ step_3d
+ step_end
+
+Movement_167318:: @ 8167318
+ step_10
+ step_10
+ step_end
+
+Movement_16731B:: @ 816731B
+ step_1c
+ step_1a
+ step_2d
+ step_end
+
+Movement_16731F:: @ 816731F
+ step_1b
+ step_30
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_2d
+ step_end
+
+Movement_16732E:: @ 816732E
+ step_13
+ step_1c
+ step_10
+ step_10
+ step_1c
+ step_1c
+ step_end
+
+Movement_167335:: @ 8167335
+ step_2d
+ step_end
+
+Movement_167337:: @ 8167337
+ step_03
+ step_4c
+ step_12
+ step_4d
+ step_end
+
+Movement_16733C:: @ 816733C
+ step_2e
+ step_end
+
+Movement_16733E:: @ 816733E
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_end
+
+Movement_167346:: @ 8167346
+ step_1d
+ step_end
+
+Movement_167348:: @ 8167348
+ step_2f
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_2d
+ step_1c
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_16735D:: @ 816735D
+ step_10
+ step_end
diff --git a/data/maps/IndigoPlateau_PokemonCenter_1F/scripts.inc b/data/maps/IndigoPlateau_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..42a3280a2
--- /dev/null
+++ b/data/maps/IndigoPlateau_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,81 @@
+IndigoPlateau_PokemonCenter_1F_MapScripts:: @ 816EA5A
+ map_script 3, IndigoPlateau_PokemonCenter_1F_MapScript1_16EA65
+ map_script 5, IndigoPlateau_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+IndigoPlateau_PokemonCenter_1F_MapScript1_16EA65:: @ 816EA65
+ setrespawn 10
+ specialvar VAR_RESULT, sub_806E25C
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_16EA79
+ end
+
+EventScript_16EA79:: @ 816EA79
+ checkflag 2116
+ goto_if 1, EventScript_1A77A9
+ setobjectxyperm 4, 4, 2
+ return
+
+IndigoPlateau_PokemonCenter_1F_EventScript_16EA8A:: @ 816EA8A
+ lock
+ faceplayer
+ specialvar VAR_RESULT, sub_806E25C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16EAA6
+ loadword 0, gUnknown_819A8D8
+ callstd 4
+ release
+ end
+
+EventScript_16EAA6:: @ 816EAA6
+ checkflag 2116
+ goto_if 1, EventScript_16EAB9
+ loadword 0, gUnknown_819A943
+ callstd 4
+ release
+ end
+
+EventScript_16EAB9:: @ 816EAB9
+ loadword 0, gUnknown_819A8D8
+ callstd 4
+ release
+ end
+
+IndigoPlateau_PokemonCenter_1F_EventScript_16EAC3:: @ 816EAC3
+ loadword 0, gUnknown_819A837
+ callstd 2
+ end
+
+IndigoPlateau_PokemonCenter_1F_EventScript_16EACC:: @ 816EACC
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16EAF4
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16EAF4:: @ 816EAF4
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_FULL_RESTORE
+ .2byte ITEM_MAX_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_NONE
+ release
+ end
+
+IndigoPlateau_PokemonCenter_1F_EventScript_16EB06:: @ 816EB06
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
diff --git a/data/maps/IndigoPlateau_PokemonCenter_2F/scripts.inc b/data/maps/IndigoPlateau_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..152e39da9
--- /dev/null
+++ b/data/maps/IndigoPlateau_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+IndigoPlateau_PokemonCenter_2F_MapScripts:: @ 816EB0F
+ map_script 2, IndigoPlateau_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, IndigoPlateau_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, IndigoPlateau_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, IndigoPlateau_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+IndigoPlateau_PokemonCenter_2F_EventScript_16EB24:: @ 816EB24
+ call EventScript_1BB4A3
+ end
+
+EventScript_16EB2A:: @ 816EB2A
+ call EventScript_1BB6AB
+ end
+
+EventScript_16EB30:: @ 816EB30
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/LavenderTown/scripts.inc b/data/maps/LavenderTown/scripts.inc
new file mode 100644
index 000000000..1f1c178e5
--- /dev/null
+++ b/data/maps/LavenderTown/scripts.inc
@@ -0,0 +1,57 @@
+LavenderTown_MapScripts:: @ 816686B
+ map_script 3, LavenderTown_MapScript1_166871
+ .byte 0
+
+LavenderTown_MapScript1_166871:: @ 8166871
+ setworldmapflag 2196
+ setvar VAR_0x405B, 1
+ setflag FLAG_0x03D
+ end
+
+LavenderTown_EventScript_16687D:: @ 816687D
+ lock
+ faceplayer
+ loadword 0, gUnknown_817F52E
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16689C
+ loadword 0, gUnknown_817F568
+ callstd 4
+ release
+ end
+
+EventScript_16689C:: @ 816689C
+ loadword 0, gUnknown_817F548
+ callstd 4
+ release
+ end
+
+LavenderTown_EventScript_1668A6:: @ 81668A6
+ loadword 0, gUnknown_817F5B6
+ callstd 2
+ end
+
+LavenderTown_EventScript_1668AF:: @ 81668AF
+ loadword 0, gUnknown_817F614
+ callstd 2
+ end
+
+LavenderTown_EventScript_1668B8:: @ 81668B8
+ loadword 0, gUnknown_817F676
+ callstd 3
+ end
+
+LavenderTown_EventScript_1668C1:: @ 81668C1
+ loadword 0, gUnknown_817F69A
+ callstd 3
+ end
+
+LavenderTown_EventScript_1668CA:: @ 81668CA
+ loadword 0, gUnknown_817F6D6
+ callstd 3
+ end
+
+LavenderTown_EventScript_1668D3:: @ 81668D3
+ loadword 0, gUnknown_817F6F7
+ callstd 3
+ end
diff --git a/data/maps/LavenderTown_House1/scripts.inc b/data/maps/LavenderTown_House1/scripts.inc
new file mode 100644
index 000000000..d29217628
--- /dev/null
+++ b/data/maps/LavenderTown_House1/scripts.inc
@@ -0,0 +1,29 @@
+LavenderTown_House1_MapScripts:: @ 816B232
+ .byte 0
+
+LavenderTown_House1_EventScript_16B233:: @ 816B233
+ lock
+ faceplayer
+ checkflag FLAG_0x23C
+ goto_if 1, EventScript_16B248
+ loadword 0, gUnknown_819397D
+ callstd 4
+ release
+ end
+
+EventScript_16B248:: @ 816B248
+ loadword 0, gUnknown_81939F8
+ callstd 4
+ release
+ end
+
+LavenderTown_House1_EventScript_16B252:: @ 816B252
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_CUBONE, 0
+ loadword 0, gUnknown_819396B
+ callstd 4
+ waitmoncry
+ release
+ end
diff --git a/data/maps/LavenderTown_House2/scripts.inc b/data/maps/LavenderTown_House2/scripts.inc
new file mode 100644
index 000000000..a48d89db0
--- /dev/null
+++ b/data/maps/LavenderTown_House2/scripts.inc
@@ -0,0 +1,81 @@
+LavenderTown_House2_MapScripts:: @ 816B265
+ .byte 0
+
+LavenderTown_House2_EventScript_16B266:: @ 816B266
+ lock
+ faceplayer
+ loadword 0, gUnknown_8193A4B
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16B287
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16B2AA
+ end
+
+EventScript_16B287:: @ 816B287
+ loadword 0, gUnknown_8193AA6
+ callstd 4
+ special sub_80BF8FC
+ waitstate
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 0, EventScript_16B2B4
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_16B2AA
+ end
+
+EventScript_16B2AA:: @ 816B2AA
+ loadword 0, gUnknown_8193BD4
+ callstd 4
+ release
+ end
+
+EventScript_16B2B4:: @ 816B2B4
+ specialvar VAR_RESULT, sub_80CAD54
+ compare_var_to_value VAR_RESULT, 412
+ goto_if 1, EventScript_16B307
+ special TV_CopyNicknameToStringVar1AndEnsureTerminated
+ special TV_CheckMonOTIDEqualsPlayerID
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16B311
+ specialvar VAR_RESULT, sub_80CAD7C
+ special TV_CopyNicknameToStringVar1AndEnsureTerminated
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16B311
+ loadword 0, gUnknown_8193AD2
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16B31B
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16B2AA
+ end
+
+EventScript_16B307:: @ 816B307
+ loadword 0, gUnknown_8193CC4
+ callstd 4
+ release
+ end
+
+EventScript_16B311:: @ 816B311
+ loadword 0, gUnknown_8193C82
+ callstd 4
+ release
+ end
+
+EventScript_16B31B:: @ 816B31B
+ loadword 0, gUnknown_8193B36
+ callstd 4
+ call EventScript_1A74EB
+ specialvar VAR_RESULT, sub_80CBFA0
+ special TV_CopyNicknameToStringVar1AndEnsureTerminated
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16B345
+ loadword 0, gUnknown_8193BF0
+ callstd 4
+ release
+ end
+
+EventScript_16B345:: @ 816B345
+ loadword 0, gUnknown_8193B66
+ callstd 4
+ release
+ end
diff --git a/data/maps/LavenderTown_Mart/scripts.inc b/data/maps/LavenderTown_Mart/scripts.inc
new file mode 100644
index 000000000..217c3a883
--- /dev/null
+++ b/data/maps/LavenderTown_Mart/scripts.inc
@@ -0,0 +1,46 @@
+LavenderTown_Mart_MapScripts:: @ 816B34F
+ .byte 0
+
+LavenderTown_Mart_EventScript_16B350:: @ 816B350
+ loadword 0, gUnknown_8193CE5
+ callstd 2
+ end
+
+LavenderTown_Mart_EventScript_16B359:: @ 816B359
+ loadword 0, gUnknown_8193DB6
+ callstd 2
+ end
+
+LavenderTown_Mart_EventScript_16B362:: @ 816B362
+ loadword 0, gUnknown_8193DF1
+ callstd 2
+ end
+
+LavenderTown_Mart_EventScript_16B36B:: @ 816B36B
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16B390
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16B390:: @ 816B390
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_BURN_HEAL
+ .2byte ITEM_ICE_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_SUPER_REPEL
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/LavenderTown_PokemonCenter_1F/scripts.inc b/data/maps/LavenderTown_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..db03c1f85
--- /dev/null
+++ b/data/maps/LavenderTown_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,30 @@
+LavenderTown_PokemonCenter_1F_MapScripts:: @ 816B0EF
+ map_script 3, LavenderTown_PokemonCenter_1F_MapScript1_16B0FA
+ map_script 5, LavenderTown_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+LavenderTown_PokemonCenter_1F_MapScript1_16B0FA:: @ 816B0FA
+ setrespawn 5
+ end
+
+LavenderTown_PokemonCenter_1F_EventScript_16B0FE:: @ 816B0FE
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+LavenderTown_PokemonCenter_1F_EventScript_16B107:: @ 816B107
+ loadword 0, gUnknown_8193465
+ callstd 2
+ end
+
+LavenderTown_PokemonCenter_1F_EventScript_16B110:: @ 816B110
+ loadword 0, gUnknown_81934DE
+ callstd 2
+ end
+
+LavenderTown_PokemonCenter_1F_EventScript_16B119:: @ 816B119
+ loadword 0, gUnknown_819353A
+ callstd 2
+ end
diff --git a/data/maps/LavenderTown_PokemonCenter_2F/scripts.inc b/data/maps/LavenderTown_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..16d54651b
--- /dev/null
+++ b/data/maps/LavenderTown_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+LavenderTown_PokemonCenter_2F_MapScripts:: @ 816B122
+ map_script 2, LavenderTown_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, LavenderTown_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, LavenderTown_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, LavenderTown_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+LavenderTown_PokemonCenter_2F_EventScript_16B137:: @ 816B137
+ call EventScript_1BB4A3
+ end
+
+EventScript_16B13D:: @ 816B13D
+ call EventScript_1BB6AB
+ end
+
+EventScript_16B143:: @ 816B143
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/LavenderTown_VolunteerPokemonHouse/scripts.inc b/data/maps/LavenderTown_VolunteerPokemonHouse/scripts.inc
new file mode 100644
index 000000000..4671f0bfe
--- /dev/null
+++ b/data/maps/LavenderTown_VolunteerPokemonHouse/scripts.inc
@@ -0,0 +1,105 @@
+LavenderTown_VolunteerPokemonHouse_MapScripts:: @ 816B149
+ .byte 0
+
+LavenderTown_VolunteerPokemonHouse_EventScript_16B14A:: @ 816B14A
+ lock
+ faceplayer
+ checkflag FLAG_0x23D
+ goto_if 1, EventScript_16B196
+ loadword 0, gUnknown_81936FF
+ callstd 4
+ checkitemspace ITEM_POKE_FLUTE, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16B1A0
+ setflag FLAG_0x23D
+ additem ITEM_POKE_FLUTE, 1
+ loadword 0, gUnknown_81937BD
+ setorcopyvar VAR_0x8000, 350
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ loadword 0, gUnknown_81937E5
+ callstd 4
+ release
+ end
+
+EventScript_16B196:: @ 816B196
+ loadword 0, gUnknown_8193878
+ callstd 4
+ release
+ end
+
+EventScript_16B1A0:: @ 816B1A0
+ loadword 0, gUnknown_819385B
+ callstd 4
+ release
+ end
+
+LavenderTown_VolunteerPokemonHouse_EventScript_16B1AA:: @ 816B1AA
+ lock
+ faceplayer
+ setvar VAR_0x8004, 14
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8193652
+ callstd 4
+ release
+ end
+
+LavenderTown_VolunteerPokemonHouse_EventScript_16B1C3:: @ 816B1C3
+ loadword 0, gUnknown_81936B4
+ callstd 2
+ end
+
+LavenderTown_VolunteerPokemonHouse_EventScript_16B1CC:: @ 816B1CC
+ lock
+ faceplayer
+ checkflag FLAG_0x23C
+ goto_if 1, EventScript_16B1E1
+ loadword 0, gUnknown_81935ED
+ callstd 4
+ release
+ end
+
+EventScript_16B1E1:: @ 816B1E1
+ loadword 0, gUnknown_819361D
+ callstd 4
+ release
+ end
+
+LavenderTown_VolunteerPokemonHouse_EventScript_16B1EB:: @ 816B1EB
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_NIDORINO, 0
+ loadword 0, gUnknown_81936DE
+ callstd 4
+ waitmoncry
+ release
+ end
+
+LavenderTown_VolunteerPokemonHouse_EventScript_16B1FE:: @ 816B1FE
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_PSYDUCK, 0
+ loadword 0, gUnknown_81936EE
+ callstd 4
+ waitmoncry
+ release
+ end
+
+LavenderTown_VolunteerPokemonHouse_EventScript_16B211:: @ 816B211
+ lockall
+ setvar VAR_0x8004, 14
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_81938A0
+ callstd 4
+ releaseall
+ end
+
+LavenderTown_VolunteerPokemonHouse_EventScript_16B229:: @ 816B229
+ loadword 0, gUnknown_819392B
+ callstd 3
+ end
diff --git a/data/maps/MtEmber_Exterior/scripts.inc b/data/maps/MtEmber_Exterior/scripts.inc
new file mode 100644
index 000000000..4ddae76ad
--- /dev/null
+++ b/data/maps/MtEmber_Exterior/scripts.inc
@@ -0,0 +1,146 @@
+MtEmber_Exterior_MapScripts:: @ 8163946
+ map_script 3, MtEmber_Exterior_MapScript1_163951
+ map_script 1, MtEmber_Exterior_MapScript2_163969
+ .byte 0
+
+MtEmber_Exterior_MapScript1_163951:: @ 8163951
+ setworldmapflag 2230
+ compare_var_to_value VAR_0x407F, 2
+ call_if 1, EventScript_163960
+ end
+
+EventScript_163960:: @ 8163960
+ setobjectmovementtype 2, 8
+ setobjectmovementtype 3, 8
+ return
+
+MtEmber_Exterior_MapScript2_163969:: @ 8163969
+ compare_var_to_value VAR_0x4076, 4
+ call_if 4, EventScript_163975
+ end
+
+EventScript_163975:: @ 8163975
+ setmetatile 42, 39, 838, 0
+ return
+
+MtEmber_Exterior_EventScript_16397F:: @ 816397F
+ lock
+ checktrainerflag 537
+ goto_if 1, EventScript_16399E
+ compare_var_to_value VAR_0x4076, 4
+ goto_if 1, EventScript_1639A8
+ loadword 0, gUnknown_817A82A
+ callstd 4
+ release
+ end
+
+EventScript_16399E:: @ 816399E
+ loadword 0, gUnknown_817AA3F
+ callstd 4
+ release
+ end
+
+EventScript_1639A8:: @ 81639A8
+ applymovement 2, Movement_1A75E1
+ waitmovement 0
+ playbgm BGM_FRLG_SUSPICIOUS_EYE, 0
+ loadword 0, gUnknown_817AA06
+ callstd 4
+ trainerbattle 3, 537, 0, Text_17AA34
+ loadword 0, gUnknown_817AA3F
+ callstd 4
+ checktrainerflag 538
+ goto_if 1, EventScript_1639DB
+ release
+ end
+
+EventScript_1639DB:: @ 81639DB
+ loadword 0, gUnknown_817AAD7
+ callstd 4
+ closemessage
+ fadescreen 1
+ removeobject 2
+ removeobject 3
+ fadescreen 0
+ release
+ end
+
+MtEmber_Exterior_EventScript_1639F0:: @ 81639F0
+ lock
+ faceplayer
+ checktrainerflag 538
+ goto_if 1, EventScript_163A1B
+ compare_var_to_value VAR_0x4076, 4
+ goto_if 1, EventScript_163A25
+ loadword 0, gUnknown_817A88C
+ callstd 4
+ closemessage
+ applymovement 3, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+EventScript_163A1B:: @ 8163A1B
+ loadword 0, gUnknown_817AA99
+ callstd 4
+ release
+ end
+
+EventScript_163A25:: @ 8163A25
+ playbgm BGM_FRLG_SUSPICIOUS_EYE, 0
+ loadword 0, gUnknown_817AA56
+ callstd 4
+ trainerbattle 3, 538, 0, Text_17AA8A
+ loadword 0, gUnknown_817AA99
+ callstd 4
+ checktrainerflag 537
+ goto_if 1, EventScript_1639DB
+ release
+ end
+
+MtEmber_Exterior_EventScript_163A4E:: @ 8163A4E
+ lockall
+ textcolor 0
+ loadword 0, gUnknown_817A8B4
+ callstd 4
+ message Text_17A8EE
+ waitmessage
+ playse SE_PIN
+ applymovement 3, Movement_1A75D9
+ waitmovement 0
+ waitbuttonpress
+ loadword 0, gUnknown_817A970
+ callstd 4
+ applymovement 2, Movement_1A75ED
+ waitmovement 0
+ playse SE_PIN
+ applymovement 2, Movement_1A75DB
+ waitmovement 0
+ applymovement 2, Movement_1A75DD
+ waitmovement 0
+ applymovement 3, Movement_1A75ED
+ waitmovement 0
+ call EventScript_163960
+ loadword 0, gUnknown_817A9E1
+ callstd 4
+ setvar VAR_0x407F, 2
+ releaseall
+ end
+
+MtEmber_Exterior_EventScript_163AB4:: @ 8163AB4
+ trainerbattle 0, 595, 0, Text_17AB73, Text_17ABAA
+ loadword 0, gUnknown_817ABD8
+ callstd 6
+ end
+
+MtEmber_Exterior_EventScript_163ACB:: @ 8163ACB
+ trainerbattle 0, 597, 0, Text_17AC55, Text_17AC82
+ loadword 0, gUnknown_817ACA2
+ callstd 6
+ end
+
+MtEmber_Exterior_EventScript_163AE2:: @ 8163AE2
+ trainerbattle 0, 592, 0, Text_17AD06, Text_17AD6B
+ loadword 0, gUnknown_817AD89
+ callstd 6
+ end
diff --git a/data/maps/MtEmber_RubyPath_B1F/scripts.inc b/data/maps/MtEmber_RubyPath_B1F/scripts.inc
new file mode 100644
index 000000000..f0b3378d4
--- /dev/null
+++ b/data/maps/MtEmber_RubyPath_B1F/scripts.inc
@@ -0,0 +1,2 @@
+MtEmber_RubyPath_B1F_MapScripts:: @ 8163C46
+ .byte 0
diff --git a/data/maps/MtEmber_RubyPath_B1F_Stairs/scripts.inc b/data/maps/MtEmber_RubyPath_B1F_Stairs/scripts.inc
new file mode 100644
index 000000000..39df5df91
--- /dev/null
+++ b/data/maps/MtEmber_RubyPath_B1F_Stairs/scripts.inc
@@ -0,0 +1,2 @@
+MtEmber_RubyPath_B1F_Stairs_MapScripts:: @ 8163C6F
+ .byte 0
diff --git a/data/maps/MtEmber_RubyPath_B2F/scripts.inc b/data/maps/MtEmber_RubyPath_B2F/scripts.inc
new file mode 100644
index 000000000..8fec3c4d7
--- /dev/null
+++ b/data/maps/MtEmber_RubyPath_B2F/scripts.inc
@@ -0,0 +1,2 @@
+MtEmber_RubyPath_B2F_MapScripts:: @ 8163C47
+ .byte 0
diff --git a/data/maps/MtEmber_RubyPath_B2F_Stairs/scripts.inc b/data/maps/MtEmber_RubyPath_B2F_Stairs/scripts.inc
new file mode 100644
index 000000000..50c8f8334
--- /dev/null
+++ b/data/maps/MtEmber_RubyPath_B2F_Stairs/scripts.inc
@@ -0,0 +1,2 @@
+MtEmber_RubyPath_B2F_Stairs_MapScripts:: @ 8163C70
+ .byte 0
diff --git a/data/maps/MtEmber_RubyPath_B3F/scripts.inc b/data/maps/MtEmber_RubyPath_B3F/scripts.inc
new file mode 100644
index 000000000..52191ba85
--- /dev/null
+++ b/data/maps/MtEmber_RubyPath_B3F/scripts.inc
@@ -0,0 +1,17 @@
+MtEmber_RubyPath_B3F_MapScripts:: @ 8163C48
+ .byte 0
+
+MtEmber_RubyPath_B3F_EventScript_163C49:: @ 8163C49
+MtEmber_RubyPath_B5F_EventScript_163C49:: @ 8163C49
+ lock
+ faceplayer
+ setflag FLAG_0x2DD
+ removeobject 1
+ additem ITEM_RUBY, 1
+ loadword 0, gUnknown_817ADC5
+ setorcopyvar VAR_0x8000, 373
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ release
+ end
diff --git a/data/maps/MtEmber_RubyPath_B4F/scripts.inc b/data/maps/MtEmber_RubyPath_B4F/scripts.inc
new file mode 100644
index 000000000..537aa71fe
--- /dev/null
+++ b/data/maps/MtEmber_RubyPath_B4F/scripts.inc
@@ -0,0 +1,72 @@
+MtEmber_RubyPath_B4F_MapScripts:: @ 81638EB
+ .byte 0
+
+MtEmber_RubyPath_B4F_EventScript_1638EC:: @ 81638EC
+ lockall
+ braillemessage gUnknown_81A929F
+ waitbuttonpress
+ releaseall
+ end
+
+MtEmber_RubyPath_B4F_EventScript_1638F5:: @ 81638F5
+ lockall
+ braillemessage gUnknown_81A92A3
+ waitbuttonpress
+ releaseall
+ end
+
+MtEmber_RubyPath_B4F_EventScript_1638FE:: @ 81638FE
+ lockall
+ braillemessage gUnknown_81A92A7
+ waitbuttonpress
+ releaseall
+ end
+
+MtEmber_RubyPath_B4F_EventScript_163907:: @ 8163907
+ lockall
+ braillemessage gUnknown_81A92AB
+ waitbuttonpress
+ releaseall
+ end
+
+MtEmber_RubyPath_B4F_EventScript_163910:: @ 8163910
+ lockall
+ braillemessage gUnknown_81A92AF
+ waitbuttonpress
+ releaseall
+ end
+
+MtEmber_RubyPath_B4F_EventScript_163919:: @ 8163919
+ lockall
+ braillemessage gUnknown_81A92B3
+ waitbuttonpress
+ releaseall
+ end
+
+MtEmber_RubyPath_B4F_EventScript_163922:: @ 8163922
+ lockall
+ braillemessage gUnknown_81A92B7
+ waitbuttonpress
+ releaseall
+ end
+
+MtEmber_RubyPath_B4F_EventScript_16392B:: @ 816392B
+ lockall
+ braillemessage gUnknown_81A92BC
+ waitbuttonpress
+ releaseall
+ end
+
+MtEmber_RubyPath_B4F_EventScript_163934:: @ 8163934
+ lockall
+ braillemessage gUnknown_81A92C1
+ waitbuttonpress
+ releaseall
+ end
+
+MtEmber_RubyPath_B4F_EventScript_16393D:: @ 816393D
+ lockall
+ braillemessage gUnknown_81A92C3
+ waitbuttonpress
+ releaseall
+ end
diff --git a/data/maps/MtEmber_RubyPath_B5F/scripts.inc b/data/maps/MtEmber_RubyPath_B5F/scripts.inc
new file mode 100644
index 000000000..91b69cf5b
--- /dev/null
+++ b/data/maps/MtEmber_RubyPath_B5F/scripts.inc
@@ -0,0 +1,38 @@
+MtEmber_RubyPath_B5F_MapScripts:: @ 8163BAA
+ .byte 0
+
+MtEmber_RubyPath_B5F_EventScript_163BAB:: @ 8163BAB
+ lockall
+ setvar VAR_0x8005, 130
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A92C5
+ getbraillestringwidth gUnknown_81A92C5
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A92D0
+ getbraillestringwidth gUnknown_81A92D0
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A92DC
+ getbraillestringwidth gUnknown_81A92DC
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A92E6
+ getbraillestringwidth gUnknown_81A92E6
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A92F2
+ getbraillestringwidth gUnknown_81A92F2
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A92FE
+ getbraillestringwidth gUnknown_81A92FE
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A930A
+ getbraillestringwidth gUnknown_81A930A
+ call EventScript_1A926C
+ braillemessage gUnknown_81A9316
+ waitbuttonpress
+ releaseall
+ end
diff --git a/data/maps/MtEmber_Summit/scripts.inc b/data/maps/MtEmber_Summit/scripts.inc
new file mode 100644
index 000000000..85f60fd1d
--- /dev/null
+++ b/data/maps/MtEmber_Summit/scripts.inc
@@ -0,0 +1,66 @@
+MtEmber_Summit_MapScripts:: @ 8163AFC
+ map_script 3, MtEmber_Summit_MapScript1_163B25
+ map_script 5, MtEmber_Summit_MapScript2_163B07
+ .byte 0
+
+MtEmber_Summit_MapScript2_163B07:: @ 8163B07
+ checkflag 2055
+ call_if 1, EventScript_163B11
+ end
+
+EventScript_163B11:: @ 8163B11
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 5, EventScript_1A77A9
+ removeobject VAR_LAST_TALKED
+ return
+
+MtEmber_Summit_MapScript1_163B25:: @ 8163B25
+ checkflag FLAG_0x2BD
+ call_if 0, EventScript_163B2F
+ end
+
+EventScript_163B2F:: @ 8163B2F
+ clearflag FLAG_0x052
+ return
+
+MtEmber_Summit_EventScript_163B33:: @ 8163B33
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ setwildbattle SPECIES_MOLTRES, 50, ITEM_NONE
+ waitse
+ playmoncry SPECIES_MOLTRES, 2
+ message Text_1A6448
+ waitmessage
+ waitmoncry
+ delay 10
+ playbgm BGM_FRLG_LEADER_EYE, 0
+ waitbuttonpress
+ setflag 2055
+ special sub_807F9D8
+ waitstate
+ clearflag 2055
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_163B96
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_163B9F
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_163B9F
+ setflag FLAG_0x2BD
+ release
+ end
+
+EventScript_163B96:: @ 8163B96
+ setflag FLAG_0x2BD
+ goto EventScript_1A922D
+ end
+
+EventScript_163B9F:: @ 8163B9F
+ setvar VAR_0x8004, 146
+ goto EventScript_1A9236
+ end
diff --git a/data/maps/MtEmber_SummitPath_1F/scripts.inc b/data/maps/MtEmber_SummitPath_1F/scripts.inc
new file mode 100644
index 000000000..945430a19
--- /dev/null
+++ b/data/maps/MtEmber_SummitPath_1F/scripts.inc
@@ -0,0 +1,2 @@
+MtEmber_SummitPath_1F_MapScripts:: @ 8163AF9
+ .byte 0
diff --git a/data/maps/MtEmber_SummitPath_2F/scripts.inc b/data/maps/MtEmber_SummitPath_2F/scripts.inc
new file mode 100644
index 000000000..ca843116e
--- /dev/null
+++ b/data/maps/MtEmber_SummitPath_2F/scripts.inc
@@ -0,0 +1,2 @@
+MtEmber_SummitPath_2F_MapScripts:: @ 8163AFA
+ .byte 0
diff --git a/data/maps/MtEmber_SummitPath_3F/scripts.inc b/data/maps/MtEmber_SummitPath_3F/scripts.inc
new file mode 100644
index 000000000..5f44d2863
--- /dev/null
+++ b/data/maps/MtEmber_SummitPath_3F/scripts.inc
@@ -0,0 +1,2 @@
+MtEmber_SummitPath_3F_MapScripts:: @ 8163AFB
+ .byte 0
diff --git a/data/maps/MtMoon_1F/scripts.inc b/data/maps/MtMoon_1F/scripts.inc
new file mode 100644
index 000000000..8303d88bf
--- /dev/null
+++ b/data/maps/MtMoon_1F/scripts.inc
@@ -0,0 +1,54 @@
+MtMoon_1F_MapScripts:: @ 81605E4
+ map_script 3, MtMoon_1F_MapScript1_1605EA
+ .byte 0
+
+MtMoon_1F_MapScript1_1605EA:: @ 81605EA
+ setworldmapflag 2213
+ end
+
+MtMoon_1F_EventScript_1605EE:: @ 81605EE
+ loadword 0, gUnknown_8172AE0
+ callstd 3
+ end
+
+MtMoon_1F_EventScript_1605F7:: @ 81605F7
+ trainerbattle 0, 181, 0, Text_17279D, Text_1727CB
+ loadword 0, gUnknown_81727DF
+ callstd 6
+ end
+
+MtMoon_1F_EventScript_16060E:: @ 816060E
+ trainerbattle 0, 91, 0, Text_17281D, Text_172844
+ loadword 0, gUnknown_8172863
+ callstd 6
+ end
+
+MtMoon_1F_EventScript_160625:: @ 8160625
+ trainerbattle 0, 120, 0, Text_172896, Text_1728C3
+ loadword 0, gUnknown_81728D2
+ callstd 6
+ end
+
+MtMoon_1F_EventScript_16063C:: @ 816063C
+ trainerbattle 0, 121, 0, Text_172972, Text_1729A4
+ loadword 0, gUnknown_81729AC
+ callstd 6
+ end
+
+MtMoon_1F_EventScript_160653:: @ 8160653
+ trainerbattle 0, 169, 0, Text_17290B, Text_172927
+ loadword 0, gUnknown_817293C
+ callstd 6
+ end
+
+MtMoon_1F_EventScript_16066A:: @ 816066A
+ trainerbattle 0, 108, 0, Text_1729EA, Text_172A1A
+ loadword 0, gUnknown_8172A26
+ callstd 6
+ end
+
+MtMoon_1F_EventScript_160681:: @ 8160681
+ trainerbattle 0, 109, 0, Text_172A55, Text_172A8F
+ loadword 0, gUnknown_8172A97
+ callstd 6
+ end
diff --git a/data/maps/MtMoon_B1F/scripts.inc b/data/maps/MtMoon_B1F/scripts.inc
new file mode 100644
index 000000000..17e91f4d0
--- /dev/null
+++ b/data/maps/MtMoon_B1F/scripts.inc
@@ -0,0 +1,2 @@
+MtMoon_B1F_MapScripts:: @ 8160698
+ .byte 0
diff --git a/data/maps/MtMoon_B2F/scripts.inc b/data/maps/MtMoon_B2F/scripts.inc
new file mode 100644
index 000000000..14e47d472
--- /dev/null
+++ b/data/maps/MtMoon_B2F/scripts.inc
@@ -0,0 +1,160 @@
+MtMoon_B2F_MapScripts:: @ 8160699
+ map_script 3, MtMoon_B2F_MapScript1_16069F
+ .byte 0
+
+MtMoon_B2F_MapScript1_16069F:: @ 816069F
+ checkflag FLAG_0x232
+ call_if 0, EventScript_1606A9
+ end
+
+EventScript_1606A9:: @ 81606A9
+ clearflag FLAG_0x02F
+ clearflag FLAG_0x030
+ return
+
+MtMoon_B2F_EventScript_1606B0:: @ 81606B0
+ lockall
+ applymovement 3, Movement_1A75EB
+ waitmovement 0
+ call EventScript_1606DD
+ releaseall
+ end
+
+MtMoon_B2F_EventScript_1606C2:: @ 81606C2
+ lock
+ faceplayer
+ checkflag FLAG_0x232
+ goto_if 1, EventScript_160707
+ checktrainerflag 170
+ goto_if 1, EventScript_160711
+ call EventScript_1606DD
+ release
+ end
+
+EventScript_1606DD:: @ 81606DD
+ textcolor 0
+ message Text_172B64
+ waitmessage
+ playbgm BGM_FRLG_LEADER_EYE, 0
+ waitbuttonpress
+ setvar VAR_LAST_TALKED, 3
+ trainerbattle 3, 170, 0, Text_172B99
+ setvar VAR_0x408B, 1
+ loadword 0, gUnknown_8172BAB
+ callstd 4
+ return
+
+EventScript_160707:: @ 8160707
+ loadword 0, gUnknown_8172BFB
+ callstd 4
+ release
+ end
+
+EventScript_160711:: @ 8160711
+ loadword 0, gUnknown_8172BAB
+ callstd 4
+ release
+ end
+
+MtMoon_B2F_EventScript_16071B:: @ 816071B
+ lock
+ faceplayer
+ loadword 0, gUnknown_8172E77
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1607DE
+ removeobject 1
+ additem ITEM_DOME_FOSSIL, 1
+ loadword 0, gUnknown_8172ECD
+ setorcopyvar VAR_0x8000, 358
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ closemessage
+ special sub_8112364
+ delay 10
+ applymovement 3, Movement_16077A
+ waitmovement 0
+ moveobjectoffscreen 3
+ textcolor 0
+ playfanfare BGM_FRLG_ME_KEYITEM
+ message Text_172BD6
+ waitmessage
+ waitfanfare
+ removeobject 2
+ setflag FLAG_0x272
+ setflag FLAG_0x232
+ release
+ end
+
+Movement_16077A:: @ 816077A
+ step_13
+ step_11
+ step_11
+ step_11
+ step_end
+
+MtMoon_B2F_EventScript_16077F:: @ 816077F
+ lock
+ faceplayer
+ loadword 0, gUnknown_8172E94
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1607DE
+ removeobject 2
+ additem ITEM_HELIX_FOSSIL, 1
+ loadword 0, gUnknown_8172EB2
+ setorcopyvar VAR_0x8000, 357
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ closemessage
+ special sub_8112364
+ delay 10
+ applymovement 3, Movement_1607E0
+ waitmovement 0
+ moveobjectoffscreen 3
+ textcolor 0
+ playfanfare BGM_FRLG_ME_KEYITEM
+ message Text_172BD6
+ waitmessage
+ waitfanfare
+ removeobject 1
+ setflag FLAG_0x273
+ setflag FLAG_0x232
+ release
+ end
+
+EventScript_1607DE:: @ 81607DE
+ release
+ end
+
+Movement_1607E0:: @ 81607E0
+ step_11
+ step_11
+ step_11
+ step_end
+
+MtMoon_B2F_EventScript_1607E4:: @ 81607E4
+ trainerbattle 0, 351, 0, Text_172C5A, Text_172CB8
+ loadword 0, gUnknown_8172CCB
+ callstd 6
+ end
+
+MtMoon_B2F_EventScript_1607FB:: @ 81607FB
+ trainerbattle 0, 352, 0, Text_172CFC, Text_172D46
+ loadword 0, gUnknown_8172D51
+ callstd 6
+ end
+
+MtMoon_B2F_EventScript_160812:: @ 8160812
+ trainerbattle 0, 353, 0, Text_172D82, Text_172DAF
+ loadword 0, gUnknown_8172DC1
+ callstd 6
+ end
+
+MtMoon_B2F_EventScript_160829:: @ 8160829
+ trainerbattle 0, 354, 0, Text_172DF0, Text_172E3E
+ loadword 0, gUnknown_8172E4B
+ callstd 6
+ end
diff --git a/data/maps/NavelRock_1F/scripts.inc b/data/maps/NavelRock_1F/scripts.inc
new file mode 100644
index 000000000..97852f3d4
--- /dev/null
+++ b/data/maps/NavelRock_1F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_1F_MapScripts:: @ 8164F9E
+ .byte 0
diff --git a/data/maps/NavelRock_B1F/scripts.inc b/data/maps/NavelRock_B1F/scripts.inc
new file mode 100644
index 000000000..d940f8d12
--- /dev/null
+++ b/data/maps/NavelRock_B1F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_B1F_MapScripts:: @ 8165201
+ .byte 0
diff --git a/data/maps/NavelRock_Base/scripts.inc b/data/maps/NavelRock_Base/scripts.inc
new file mode 100644
index 000000000..cf31f50f2
--- /dev/null
+++ b/data/maps/NavelRock_Base/scripts.inc
@@ -0,0 +1,91 @@
+NavelRock_Base_MapScripts:: @ 81650E7
+ map_script 3, NavelRock_Base_MapScript1_1650F2
+ map_script 5, NavelRock_Base_MapScript2_165116
+ .byte 0
+
+NavelRock_Base_MapScript1_1650F2:: @ 81650F2
+ checkflag FLAG_0x2F2
+ call_if 1, EventScript_165105
+ checkflag FLAG_0x2F2
+ call_if 0, EventScript_165109
+ end
+
+EventScript_165105:: @ 8165105
+ setflag FLAG_0x09B
+ return
+
+EventScript_165109:: @ 8165109
+ checkflag FLAG_0x2F5
+ goto_if 1, EventScript_1A77A9
+ clearflag FLAG_0x09B
+ return
+
+NavelRock_Base_MapScript2_165116:: @ 8165116
+ checkflag 2055
+ call_if 1, EventScript_165120
+ end
+
+EventScript_165120:: @ 8165120
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 5, EventScript_1A77A9
+ removeobject 1
+ return
+
+NavelRock_Base_EventScript_165134:: @ 8165134
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ waitse
+ delay 20
+ playse SE_FUUSEN2
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8005, 3
+ setvar VAR_0x8006, 4
+ setvar VAR_0x8007, 2
+ special sub_80CAC28
+ delay 30
+ playse SE_FUUSEN2
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8005, 3
+ setvar VAR_0x8006, 4
+ setvar VAR_0x8007, 2
+ special sub_80CAC28
+ delay 30
+ delay 50
+ waitse
+ playmoncry SPECIES_LUGIA, 2
+ waitmoncry
+ delay 20
+ setvar VAR_0x8004, 249
+ setvar VAR_0x8005, 70
+ setvar VAR_0x8006, 0
+ special sub_8044838
+ setflag 2055
+ special sub_807F9D8
+ waitstate
+ clearflag 2055
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_1651D9
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_1651E7
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_1651E7
+ setflag FLAG_0x2F2
+ release
+ end
+
+EventScript_1651D9:: @ 81651D9
+ setflag FLAG_0x2F5
+ setvar VAR_0x8004, 249
+ goto EventScript_1A9236
+ end
+
+EventScript_1651E7:: @ 81651E7
+ setvar VAR_0x8004, 249
+ goto EventScript_1A9236
+ end
diff --git a/data/maps/NavelRock_BasePath_B10F/scripts.inc b/data/maps/NavelRock_BasePath_B10F/scripts.inc
new file mode 100644
index 000000000..367d219c5
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B10F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B10F_MapScripts:: @ 81651FF
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B11F/scripts.inc b/data/maps/NavelRock_BasePath_B11F/scripts.inc
new file mode 100644
index 000000000..ee20f32f5
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B11F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B11F_MapScripts:: @ 8165200
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B1F/scripts.inc b/data/maps/NavelRock_BasePath_B1F/scripts.inc
new file mode 100644
index 000000000..d15e43a46
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B1F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B1F_MapScripts:: @ 81651F6
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B2F/scripts.inc b/data/maps/NavelRock_BasePath_B2F/scripts.inc
new file mode 100644
index 000000000..9e41c37a4
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B2F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B2F_MapScripts:: @ 81651F7
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B3F/scripts.inc b/data/maps/NavelRock_BasePath_B3F/scripts.inc
new file mode 100644
index 000000000..4a306fb7c
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B3F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B3F_MapScripts:: @ 81651F8
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B4F/scripts.inc b/data/maps/NavelRock_BasePath_B4F/scripts.inc
new file mode 100644
index 000000000..80c442795
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B4F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B4F_MapScripts:: @ 81651F9
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B5F/scripts.inc b/data/maps/NavelRock_BasePath_B5F/scripts.inc
new file mode 100644
index 000000000..9bc4d0e8c
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B5F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B5F_MapScripts:: @ 81651FA
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B6F/scripts.inc b/data/maps/NavelRock_BasePath_B6F/scripts.inc
new file mode 100644
index 000000000..718afdcdc
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B6F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B6F_MapScripts:: @ 81651FB
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B7F/scripts.inc b/data/maps/NavelRock_BasePath_B7F/scripts.inc
new file mode 100644
index 000000000..6942439e7
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B7F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B7F_MapScripts:: @ 81651FC
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B8F/scripts.inc b/data/maps/NavelRock_BasePath_B8F/scripts.inc
new file mode 100644
index 000000000..8c6e1284d
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B8F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B8F_MapScripts:: @ 81651FD
+ .byte 0
diff --git a/data/maps/NavelRock_BasePath_B9F/scripts.inc b/data/maps/NavelRock_BasePath_B9F/scripts.inc
new file mode 100644
index 000000000..0aa96b407
--- /dev/null
+++ b/data/maps/NavelRock_BasePath_B9F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_BasePath_B9F_MapScripts:: @ 81651FE
+ .byte 0
diff --git a/data/maps/NavelRock_Exterior/scripts.inc b/data/maps/NavelRock_Exterior/scripts.inc
new file mode 100644
index 000000000..31013ff5d
--- /dev/null
+++ b/data/maps/NavelRock_Exterior/scripts.inc
@@ -0,0 +1,7 @@
+NavelRock_Exterior_MapScripts:: @ 81646AE
+ map_script 3, NavelRock_Exterior_MapScript1_1646B4
+ .byte 0
+
+NavelRock_Exterior_MapScript1_1646B4:: @ 81646B4
+ setworldmapflag 2229
+ end
diff --git a/data/maps/NavelRock_Fork/scripts.inc b/data/maps/NavelRock_Fork/scripts.inc
new file mode 100644
index 000000000..1a202fae9
--- /dev/null
+++ b/data/maps/NavelRock_Fork/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_Fork_MapScripts:: @ 8165202
+ .byte 0
diff --git a/data/maps/NavelRock_Harbor/scripts.inc b/data/maps/NavelRock_Harbor/scripts.inc
new file mode 100644
index 000000000..6e630ca01
--- /dev/null
+++ b/data/maps/NavelRock_Harbor/scripts.inc
@@ -0,0 +1 @@
+@ .include "data/maps/NavelRock_Harbor/scripts.inc"
diff --git a/data/maps/NavelRock_Summit/scripts.inc b/data/maps/NavelRock_Summit/scripts.inc
new file mode 100644
index 000000000..eeb47f007
--- /dev/null
+++ b/data/maps/NavelRock_Summit/scripts.inc
@@ -0,0 +1,130 @@
+NavelRock_Summit_MapScripts:: @ 8164F9F
+ map_script 3, NavelRock_Summit_MapScript1_164FAA
+ map_script 5, NavelRock_Summit_MapScript2_164FDD
+ .byte 0
+
+NavelRock_Summit_MapScript1_164FAA:: @ 8164FAA
+ checkflag FLAG_0x2F3
+ call_if 1, EventScript_164FBD
+ checkflag FLAG_0x2F3
+ call_if 0, EventScript_164FC6
+ end
+
+EventScript_164FBD:: @ 8164FBD
+ setvar VAR_0x4001, 1
+ setflag FLAG_0x09C
+ return
+
+EventScript_164FC6:: @ 8164FC6
+ setvar VAR_0x4001, 1
+ checkflag FLAG_0x2F6
+ goto_if 1, EventScript_1A77A9
+ setvar VAR_0x4001, 0
+ clearflag FLAG_0x09C
+ return
+
+NavelRock_Summit_MapScript2_164FDD:: @ 8164FDD
+ checkflag 2055
+ call_if 1, EventScript_164FE7
+ end
+
+EventScript_164FE7:: @ 8164FE7
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 5, EventScript_1A77A9
+ removeobject 1
+ return
+
+NavelRock_Summit_EventScript_164FFB:: @ 8164FFB
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lockall
+ setvar VAR_0x4001, 1
+ special SpawnScriptFieldObject
+ setvar VAR_0x8004, 3
+ setvar VAR_0x8005, 35
+ special sub_80CD1B4
+ applymovement 1, Movement_1650E0
+ applymovement 127, Movement_1650CD
+ waitmovement 0
+ delay 50
+ setweather 0
+ doweather
+ waitse
+ playmoncry SPECIES_HO_OH, 2
+ delay 30
+ waitmoncry
+ delay 60
+ setvar VAR_0x8004, 3
+ setvar VAR_0x8005, 35
+ special sub_80CD1B4
+ applymovement 127, Movement_1650D1
+ applymovement 1, Movement_1650D7
+ waitmovement 0
+ special RemoveScriptFieldObject
+ setvar VAR_0x8004, 250
+ setvar VAR_0x8005, 70
+ setvar VAR_0x8006, 0
+ special sub_8044838
+ setflag 2055
+ special sub_807F9D8
+ waitstate
+ clearflag 2055
+ setvar VAR_LAST_TALKED, 1
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_1650B4
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_1650C2
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_1650C2
+ setflag FLAG_0x2F3
+ releaseall
+ end
+
+EventScript_1650B4:: @ 81650B4
+ setflag FLAG_0x2F6
+ setvar VAR_0x8004, 250
+ goto EventScript_1A9236
+ end
+
+EventScript_1650C2:: @ 81650C2
+ setvar VAR_0x8004, 250
+ goto EventScript_1A9236
+ end
+
+Movement_1650CD:: @ 81650CD
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_1650D1:: @ 81650D1
+ step_1c
+ step_1c
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_1650D7:: @ 81650D7
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_25
+ step_1c
+ step_1c
+ step_end
+
+Movement_1650E0:: @ 81650E0
+ step_1c
+ step_1c
+ step_25
+ step_25
+ step_25
+ step_25
+ step_end
diff --git a/data/maps/NavelRock_SummitPath_2F/scripts.inc b/data/maps/NavelRock_SummitPath_2F/scripts.inc
new file mode 100644
index 000000000..1311becf7
--- /dev/null
+++ b/data/maps/NavelRock_SummitPath_2F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_SummitPath_2F_MapScripts:: @ 81651F2
+ .byte 0
diff --git a/data/maps/NavelRock_SummitPath_3F/scripts.inc b/data/maps/NavelRock_SummitPath_3F/scripts.inc
new file mode 100644
index 000000000..1ca5fc782
--- /dev/null
+++ b/data/maps/NavelRock_SummitPath_3F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_SummitPath_3F_MapScripts:: @ 81651F3
+ .byte 0
diff --git a/data/maps/NavelRock_SummitPath_4F/scripts.inc b/data/maps/NavelRock_SummitPath_4F/scripts.inc
new file mode 100644
index 000000000..79371b1c5
--- /dev/null
+++ b/data/maps/NavelRock_SummitPath_4F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_SummitPath_4F_MapScripts:: @ 81651F4
+ .byte 0
diff --git a/data/maps/NavelRock_SummitPath_5F/scripts.inc b/data/maps/NavelRock_SummitPath_5F/scripts.inc
new file mode 100644
index 000000000..d8aa65052
--- /dev/null
+++ b/data/maps/NavelRock_SummitPath_5F/scripts.inc
@@ -0,0 +1,2 @@
+NavelRock_SummitPath_5F_MapScripts:: @ 81651F5
+ .byte 0
diff --git a/data/maps/OneIsland/scripts.inc b/data/maps/OneIsland/scripts.inc
new file mode 100644
index 000000000..d400fce9e
--- /dev/null
+++ b/data/maps/OneIsland/scripts.inc
@@ -0,0 +1,121 @@
+OneIsland_MapScripts:: @ 8167484
+ map_script 3, OneIsland_MapScript1_16748F
+ map_script 2, OneIsland_MapScript2_167493
+ .byte 0
+
+OneIsland_MapScript1_16748F:: @ 816748F
+ setworldmapflag 2203
+ end
+
+OneIsland_MapScript2_167493:: @ 8167493
+ map_script_2 VAR_0x4075, 2, EventScript_16749D
+ .2byte 0
+
+EventScript_16749D:: @ 816749D
+ lockall
+ textcolor 0
+ applymovement 255, Movement_167505
+ waitmovement 0
+ loadword 0, gUnknown_818161B
+ callstd 4
+ closemessage
+ applymovement 1, Movement_167507
+ applymovement 255, Movement_1674F4
+ waitmovement 0
+ opendoor 14, 5
+ waitdooranim
+ applymovement 1, Movement_167514
+ applymovement 255, Movement_167501
+ waitmovement 0
+ closedoor 14, 5
+ waitdooranim
+ removeobject 1
+ setvar VAR_0x4075, 3
+ warp MAP_ONEISLAND_POKEMONCENTER_1F, 255, 9, 9
+ waitstate
+ releaseall
+ end
+
+Movement_1674F4:: @ 81674F4
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_13
+ step_13
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_167501:: @ 8167501
+ step_11
+ step_11
+ step_60
+ step_end
+
+Movement_167505:: @ 8167505
+ step_11
+ step_end
+
+Movement_167507:: @ 8167507
+ step_11
+ step_11
+ step_11
+ step_11
+ step_13
+ step_13
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_167514:: @ 8167514
+ step_11
+ step_60
+ step_end
+
+OneIsland_EventScript_167517:: @ 8167517
+ lock
+ faceplayer
+ checkflag 2116
+ goto_if 1, EventScript_16753F
+ checkflag FLAG_0x2A1
+ goto_if 1, EventScript_167535
+ loadword 0, gUnknown_818174E
+ callstd 4
+ release
+ end
+
+EventScript_167535:: @ 8167535
+ loadword 0, gUnknown_8181858
+ callstd 4
+ release
+ end
+
+EventScript_16753F:: @ 816753F
+ loadword 0, gUnknown_8181901
+ callstd 4
+ release
+ end
+
+OneIsland_EventScript_167549:: @ 8167549
+ loadword 0, gUnknown_8181A4A
+ callstd 2
+ end
+
+OneIsland_EventScript_167552:: @ 8167552
+ loadword 0, gUnknown_81819E1
+ callstd 3
+ end
+
+OneIsland_EventScript_16755B:: @ 816755B
+ loadword 0, gUnknown_8181A0A
+ callstd 3
+ end
diff --git a/data/maps/OneIsland_Harbor/scripts.inc b/data/maps/OneIsland_Harbor/scripts.inc
new file mode 100644
index 000000000..50526fc0d
--- /dev/null
+++ b/data/maps/OneIsland_Harbor/scripts.inc
@@ -0,0 +1,42 @@
+OneIsland_Harbor_MapScripts:: @ 8171378
+ map_script 4, OneIsland_Harbor_MapScript1_171383
+ map_script 2, OneIsland_Harbor_MapScript2_171392
+ .byte 0
+
+OneIsland_Harbor_MapScript1_171383:: @ 8171383
+ map_script_2 VAR_0x4075, 1, EventScript_17138D
+ .2byte 0
+
+EventScript_17138D:: @ 817138D
+ turnobject 255, 2
+ end
+
+OneIsland_Harbor_MapScript2_171392:: @ 8171392
+ map_script_2 VAR_0x4075, 1, EventScript_17139C
+ .2byte 0
+
+EventScript_17139C:: @ 817139C
+ lockall
+ textcolor 0
+ applymovement 255, Movement_1713B9
+ waitmovement 0
+ setvar VAR_0x4075, 2
+ warp MAP_ONEISLAND, 255, 12, 18
+ waitstate
+ releaseall
+ end
+
+Movement_1713B9:: @ 81713B9
+ step_11
+ step_11
+ step_11
+ step_end
+
+OneIsland_Harbor_EventScript_1713BD:: @ 81713BD
+ lock
+ faceplayer
+ message Text_181726
+ waitmessage
+ setvar VAR_0x8004, 1
+ goto EventScript_1A8EC5
+ end
diff --git a/data/maps/OneIsland_House1/scripts.inc b/data/maps/OneIsland_House1/scripts.inc
new file mode 100644
index 000000000..24823bec8
--- /dev/null
+++ b/data/maps/OneIsland_House1/scripts.inc
@@ -0,0 +1,12 @@
+OneIsland_House1_MapScripts:: @ 817135B
+ .byte 0
+
+OneIsland_House1_EventScript_17135C:: @ 817135C
+ loadword 0, gUnknown_81A2332
+ callstd 2
+ end
+
+OneIsland_House1_EventScript_171365:: @ 8171365
+ loadword 0, gUnknown_81A2380
+ callstd 2
+ end
diff --git a/data/maps/OneIsland_House2/scripts.inc b/data/maps/OneIsland_House2/scripts.inc
new file mode 100644
index 000000000..a9c79e1c6
--- /dev/null
+++ b/data/maps/OneIsland_House2/scripts.inc
@@ -0,0 +1,7 @@
+OneIsland_House2_MapScripts:: @ 817136E
+ .byte 0
+
+OneIsland_House2_EventScript_17136F:: @ 817136F
+ loadword 0, gUnknown_81A23B8
+ callstd 2
+ end
diff --git a/data/maps/OneIsland_KindleRoad/scripts.inc b/data/maps/OneIsland_KindleRoad/scripts.inc
new file mode 100644
index 000000000..4a6d76ae1
--- /dev/null
+++ b/data/maps/OneIsland_KindleRoad/scripts.inc
@@ -0,0 +1,12 @@
+OneIsland_KindleRoad_MapScripts:: @ 8168758
+ .byte 0
+
+OneIsland_KindleRoad_EventScript_168759:: @ 8168759
+ loadword 0, gUnknown_8189D02
+ callstd 3
+ end
+
+OneIsland_KindleRoad_EventScript_168762:: @ 8168762
+ loadword 0, gUnknown_8189D32
+ callstd 3
+ end
diff --git a/data/maps/OneIsland_KindleRoad_EmberSpa/scripts.inc b/data/maps/OneIsland_KindleRoad_EmberSpa/scripts.inc
new file mode 100644
index 000000000..8e2409168
--- /dev/null
+++ b/data/maps/OneIsland_KindleRoad_EmberSpa/scripts.inc
@@ -0,0 +1,66 @@
+OneIsland_KindleRoad_EmberSpa_MapScripts:: @ 816535B
+ .byte 0
+
+OneIsland_KindleRoad_EmberSpa_EventScript_16535C:: @ 816535C
+ loadword 0, gUnknown_817D34A
+ callstd 2
+ end
+
+OneIsland_KindleRoad_EmberSpa_EventScript_165365:: @ 8165365
+ loadword 0, gUnknown_817D3DE
+ callstd 2
+ end
+
+OneIsland_KindleRoad_EmberSpa_EventScript_16536E:: @ 816536E
+ loadword 0, gUnknown_817D4AA
+ callstd 2
+ end
+
+OneIsland_KindleRoad_EmberSpa_EventScript_165377:: @ 8165377
+ loadword 0, gUnknown_817D4E3
+ callstd 2
+ end
+
+OneIsland_KindleRoad_EmberSpa_EventScript_165380:: @ 8165380
+ lock
+ faceplayer
+ setvar VAR_0x8004, 10
+ setvar VAR_0x8005, 3
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_817D550
+ callstd 4
+ release
+ end
+
+OneIsland_KindleRoad_EmberSpa_EventScript_165399:: @ 8165399
+ lock
+ faceplayer
+ checkflag FLAG_0x2EF
+ goto_if 1, EventScript_1653C5
+ loadword 0, gUnknown_817D622
+ callstd 4
+ setorcopyvar VAR_0x8000, 344
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ setflag FLAG_0x2EF
+ loadword 0, gUnknown_817D6F3
+ callstd 4
+ release
+ end
+
+EventScript_1653C5:: @ 81653C5
+ loadword 0, gUnknown_817D6F3
+ callstd 4
+ release
+ end
+
+OneIsland_KindleRoad_EmberSpa_EventScript_1653CF:: @ 81653CF
+ lockall
+ fadescreen 3
+ special sp000_heal_pokemon
+ fadescreen 2
+ loadword 0, gUnknown_817D450
+ callstd 4
+ setvar VAR_0x4001, 1
+ releaseall
+ end
diff --git a/data/maps/OneIsland_PokemonCenter_1F/scripts.inc b/data/maps/OneIsland_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..4419b669e
--- /dev/null
+++ b/data/maps/OneIsland_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,658 @@
+OneIsland_PokemonCenter_1F_MapScripts:: @ 8170BF8
+ map_script 3, OneIsland_PokemonCenter_1F_MapScript1_170C4E
+ map_script 5, OneIsland_PokemonCenter_1F_MapScript2_1BC05C
+ map_script 1, OneIsland_PokemonCenter_1F_MapScript3_170C0D
+ map_script 2, OneIsland_PokemonCenter_1F_MapScript4_170CA7
+ .byte 0
+
+OneIsland_PokemonCenter_1F_MapScript3_170C0D:: @ 8170C0D
+ compare_var_to_value VAR_0x4076, 5
+ call_if 4, EventScript_170C22
+ checkflag 2116
+ call_if 1, EventScript_170C36
+ end
+
+EventScript_170C22:: @ 8170C22
+ setmetatile 13, 4, 861, 1
+ return
+
+EventScript_170C2C:: @ 8170C2C
+ setmetatile 16, 4, 863, 1
+ return
+
+EventScript_170C36:: @ 8170C36
+ call EventScript_170C2C
+ setmetatile 14, 4, 858, 1
+ setmetatile 15, 4, 859, 1
+ return
+
+OneIsland_PokemonCenter_1F_MapScript1_170C4E:: @ 8170C4E
+ setrespawn 14
+ compare_var_to_value VAR_0x4076, 6
+ call_if 1, EventScript_170C73
+ compare_var_to_value VAR_0x4076, 0
+ call_if 1, EventScript_170C79
+ compare_var_to_value VAR_0x4076, 2
+ call_if 1, EventScript_170C90
+ end
+
+EventScript_170C73:: @ 8170C73
+ setvar VAR_0x4076, 7
+ return
+
+EventScript_170C79:: @ 8170C79
+ setobjectxyperm 2, 9, 8
+ setobjectmovementtype 2, 7
+ setobjectxyperm 3, 15, 6
+ setobjectmovementtype 3, 7
+ return
+
+EventScript_170C90:: @ 8170C90
+ setobjectxyperm 2, 14, 7
+ setobjectmovementtype 2, 9
+ setobjectxyperm 3, 14, 8
+ setobjectmovementtype 3, 9
+ return
+
+OneIsland_PokemonCenter_1F_MapScript4_170CA7:: @ 8170CA7
+ map_script_2 VAR_0x4076, 0, EventScript_170CB1
+ .2byte 0
+
+EventScript_170CB1:: @ 8170CB1
+ lockall
+ textcolor 0
+ applymovement 255, Movement_170E7D
+ applymovement 2, Movement_170E86
+ waitmovement 0
+ loadword 0, gUnknown_81A0CDE
+ callstd 4
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ playse SE_PIN
+ applymovement 3, Movement_1A75DB
+ waitmovement 0
+ applymovement 3, Movement_1A75E7
+ waitmovement 0
+ applymovement 3, Movement_1A75DD
+ waitmovement 0
+ loadword 0, gUnknown_81A0CF7
+ callstd 4
+ loadword 0, gUnknown_81A0D27
+ callstd 4
+ applymovement 2, Movement_1A75ED
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ loadword 0, gUnknown_81A0D72
+ callstd 4
+ applymovement 2, Movement_1A75EB
+ waitmovement 0
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ checkflag 2092
+ call_if 1, EventScript_170E34
+ checkflag 2092
+ call_if 0, EventScript_170E3D
+ applymovement 3, Movement_1A75ED
+ waitmovement 0
+ loadword 0, gUnknown_81A0E17
+ callstd 4
+ loadword 0, gUnknown_81A0E90
+ callstd 4
+ applymovement 3, Movement_1A75E7
+ waitmovement 0
+ loadword 0, gUnknown_81A0ECC
+ callstd 4
+ closemessage
+ applymovement 2, Movement_1A75E9
+ waitmovement 0
+ loadword 0, gUnknown_81A0F40
+ callstd 4
+ applymovement 2, Movement_1A75ED
+ waitmovement 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ loadword 0, gUnknown_81A0FB1
+ callstd 4
+ loadword 0, gUnknown_81A10EE
+ setorcopyvar VAR_0x8000, 280
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ additem ITEM_METEORITE, 1
+ applymovement 3, Movement_1A75ED
+ waitmovement 0
+ loadword 0, gUnknown_81A1113
+ callstd 4
+ additem ITEM_TRI_PASS, 1
+ loadword 0, gUnknown_81A231B
+ setorcopyvar VAR_0x8000, 367
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ loadword 0, gUnknown_81A1150
+ callstd 4
+ compare_var_to_value VAR_0x4058, 2
+ call_if 4, EventScript_170E46
+ compare_var_to_value VAR_0x4058, 2
+ call_if 0, EventScript_170E58
+ setflag 2117
+ loadword 0, gUnknown_81A1230
+ callstd 4
+ closemessage
+ applymovement 2, Movement_1A75E9
+ waitmovement 0
+ applymovement 3, Movement_1A75E9
+ waitmovement 0
+ setflag 2113
+ setvar VAR_0x4076, 1
+ releaseall
+ end
+
+EventScript_170E34:: @ 8170E34
+ loadword 0, gUnknown_81A0DE8
+ callstd 4
+ return
+
+EventScript_170E3D:: @ 8170E3D
+ loadword 0, gUnknown_81A0DAC
+ callstd 4
+ return
+
+EventScript_170E46:: @ 8170E46
+ textcolor 3
+ playfanfare BGM_FRLG_ME_KEYITEM
+ message Text_1A11EC
+ waitmessage
+ waitfanfare
+ call EventScript_1A6675
+ return
+
+EventScript_170E58:: @ 8170E58
+ setflag FLAG_0x039
+ setvar VAR_0x4058, 2
+ additem ITEM_TOWN_MAP, 1
+ loadword 0, gUnknown_81A1218
+ setorcopyvar VAR_0x8000, 361
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ return
+
+Movement_170E7D:: @ 8170E7D
+ step_11
+ step_11
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2e
+ step_end
+
+Movement_170E86:: @ 8170E86
+ step_11
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_11
+ step_30
+ step_end
+
+Movement_170E8F:: @ 8170E8F
+ step_11
+ step_end
+
+Movement_170E91:: @ 8170E91
+ step_12
+ step_30
+ step_end
+
+OneIsland_PokemonCenter_1F_EventScript_170E94:: @ 8170E94
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+OneIsland_PokemonCenter_1F_EventScript_170E9D:: @ 8170E9D
+ lock
+ checkflag FLAG_0x2A1
+ goto_if 1, EventScript_170EB1
+ loadword 0, gUnknown_81A1266
+ callstd 4
+ release
+ end
+
+EventScript_170EB1:: @ 8170EB1
+ applymovement 2, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81A128C
+ callstd 4
+ release
+ end
+
+OneIsland_PokemonCenter_1F_EventScript_170EC5:: @ 8170EC5
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4076, 7
+ goto_if 1, EventScript_170F35
+ compare_var_to_value VAR_0x4076, 6
+ goto_if 1, EventScript_170F9B
+ checkflag FLAG_0x2DC
+ goto_if 1, EventScript_170FA5
+ compare_var_to_value VAR_0x4076, 5
+ goto_if 1, EventScript_17103A
+ checkflag FLAG_0x2DD
+ goto_if 1, EventScript_171044
+ compare_var_to_value VAR_0x4076, 4
+ goto_if 1, EventScript_1710F2
+ specialvar VAR_RESULT, sub_806E25C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_1710FC
+ compare_var_to_value VAR_0x4076, 3
+ goto_if 1, EventScript_171134
+ loadword 0, gUnknown_81A1321
+ callstd 4
+ closemessage
+ applymovement 3, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+EventScript_170F35:: @ 8170F35
+ loadword 0, gUnknown_81A1EBD
+ callstd 4
+ random 3
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_170F6D
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_170F84
+ setvar VAR_0x8004, 13
+ setvar VAR_0x8005, 5
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_81A2076
+ callstd 4
+ release
+ end
+
+EventScript_170F6D:: @ 8170F6D
+ setvar VAR_0x8004, 13
+ setvar VAR_0x8005, 3
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_81A1EF3
+ callstd 4
+ release
+ end
+
+EventScript_170F84:: @ 8170F84
+ setvar VAR_0x8004, 13
+ setvar VAR_0x8005, 4
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_81A1F7C
+ callstd 4
+ release
+ end
+
+EventScript_170F9B:: @ 8170F9B
+ loadword 0, gUnknown_81A1E39
+ callstd 4
+ release
+ end
+
+EventScript_170FA5:: @ 8170FA5
+ textcolor 3
+ playfanfare MUS_ME_WAZA
+ message Text_1A1C2D
+ waitmessage
+ waitfanfare
+ call EventScript_1A6675
+ removeitem ITEM_SAPPHIRE, 1
+ loadword 0, gUnknown_81A1C4E
+ callstd 4
+ closemessage
+ applymovement 3, Movement_171142
+ waitmovement 0
+ playse SE_N
+ call EventScript_170C2C
+ special DrawWholeMapView
+ loadword 0, gUnknown_81A1D45
+ callstd 4
+ closemessage
+ delay 60
+ applymovement 3, Movement_17113E
+ waitmovement 0
+ delay 30
+ applymovement 3, Movement_17113E
+ waitmovement 0
+ delay 40
+ playse SE_PC_ON
+ call EventScript_170C36
+ special DrawWholeMapView
+ loadword 0, gUnknown_81A1D59
+ callstd 4
+ applymovement 3, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81A1D7D
+ callstd 4
+ special sub_810B82C
+ setflag 2116
+ setflag FLAG_0x05C
+ setflag FLAG_0x08C
+ setvar VAR_0x4076, 6
+ special InitRoamer
+ release
+ end
+
+EventScript_17103A:: @ 817103A
+ loadword 0, gUnknown_81A1BB7
+ callstd 4
+ release
+ end
+
+EventScript_171044:: @ 8171044
+ loadword 0, gUnknown_81A197E
+ callstd 4
+ textcolor 3
+ playfanfare MUS_ME_WAZA
+ message Text_1A198D
+ waitmessage
+ waitfanfare
+ call EventScript_1A6675
+ closemessage
+ applymovement 3, Movement_171142
+ waitmovement 0
+ playse SE_N
+ call EventScript_170C22
+ special DrawWholeMapView
+ delay 30
+ applymovement 3, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81A19AA
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_171099
+ goto EventScript_1710B2
+ end
+
+EventScript_171099:: @ 8171099
+ loadword 0, gUnknown_81A1A08
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_171099
+ goto EventScript_1710B2
+ end
+
+EventScript_1710B2:: @ 81710B2
+ loadword 0, gUnknown_81A1A3F
+ callstd 4
+ removeitem ITEM_RUBY, 1
+ removeitem ITEM_TRI_PASS, 1
+ setvar VAR_0x4076, 5
+ additem ITEM_RAINBOW_PASS, 1
+ setflag 2118
+ textcolor 3
+ playfanfare BGM_FRLG_ME_KEYITEM
+ message Text_1A1B56
+ waitmessage
+ waitfanfare
+ playfanfare BGM_FRLG_ME_KEYITEM
+ message Text_1A1B8E
+ waitmessage
+ waitfanfare
+ call EventScript_1A6675
+ goto EventScript_17103A
+ end
+
+EventScript_1710F2:: @ 81710F2
+ loadword 0, gUnknown_81A1896
+ callstd 4
+ release
+ end
+
+EventScript_1710FC:: @ 81710FC
+ loadword 0, gUnknown_81A169B
+ callstd 4
+ applymovement 3, Movement_1A75E9
+ waitmovement 0
+ loadword 0, gUnknown_81A1723
+ callstd 4
+ applymovement 3, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81A17DF
+ callstd 4
+ setvar VAR_0x407F, 1
+ setvar VAR_0x4076, 4
+ release
+ end
+
+EventScript_171134:: @ 8171134
+ loadword 0, gUnknown_81A15EC
+ callstd 4
+ release
+ end
+
+Movement_17113E:: @ 817113E
+ step_26
+ step_1b
+ step_26
+ step_end
+
+Movement_171142:: @ 8171142
+ step_2e
+ step_26
+ step_1c
+ step_26
+ step_26
+ step_end
+
+OneIsland_PokemonCenter_1F_EventScript_171148:: @ 8171148
+ loadword 0, gUnknown_81A20D5
+ callstd 2
+ end
+
+OneIsland_PokemonCenter_1F_EventScript_171151:: @ 8171151
+ loadword 0, gUnknown_81A212D
+ callstd 2
+ end
+
+OneIsland_PokemonCenter_1F_EventScript_17115A:: @ 817115A
+ lock
+ faceplayer
+ checkflag 2116
+ goto_if 1, EventScript_17116F
+ loadword 0, gUnknown_81A218D
+ callstd 4
+ release
+ end
+
+EventScript_17116F:: @ 817116F
+ loadword 0, gUnknown_81A21D0
+ callstd 4
+ release
+ end
+
+OneIsland_PokemonCenter_1F_EventScript_171179:: @ 8171179
+ lockall
+ checkflag 2116
+ goto_if 1, EventScript_1711A0
+ checkflag FLAG_0x2A1
+ goto_if 1, EventScript_171196
+ loadword 0, gUnknown_81A223F
+ callstd 4
+ releaseall
+ end
+
+EventScript_171196:: @ 8171196
+ loadword 0, gUnknown_81A2286
+ callstd 4
+ releaseall
+ end
+
+EventScript_1711A0:: @ 81711A0
+ loadword 0, gUnknown_81A22CB
+ callstd 4
+ releaseall
+ end
+
+OneIsland_PokemonCenter_1F_EventScript_1711AA:: @ 81711AA
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_1711DA
+ end
+
+OneIsland_PokemonCenter_1F_EventScript_1711B6:: @ 81711B6
+ lockall
+ setvar VAR_0x4001, 2
+ goto EventScript_1711DA
+ end
+
+OneIsland_PokemonCenter_1F_EventScript_1711C2:: @ 81711C2
+ lockall
+ setvar VAR_0x4001, 3
+ goto EventScript_1711DA
+ end
+
+OneIsland_PokemonCenter_1F_EventScript_1711CE:: @ 81711CE
+ lockall
+ setvar VAR_0x4001, 4
+ goto EventScript_1711DA
+ end
+
+EventScript_1711DA:: @ 81711DA
+ textcolor 0
+ playse SE_PIN
+ applymovement 2, Movement_1A75DB
+ waitmovement 0
+ loadword 0, gUnknown_81A13B8
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_1712E4
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_1712EF
+ compare_var_to_value VAR_0x4001, 3
+ call_if 1, EventScript_1712FA
+ compare_var_to_value VAR_0x4001, 4
+ call_if 1, EventScript_171305
+ delay 10
+ loadword 0, gUnknown_81A13CB
+ callstd 4
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ loadword 0, gUnknown_81A1431
+ callstd 4
+ applymovement 2, Movement_1A75ED
+ waitmovement 0
+ applymovement 3, Movement_1A75E9
+ waitmovement 0
+ loadword 0, gUnknown_81A1470
+ callstd 4
+ loadword 0, gUnknown_81A14E1
+ callstd 4
+ closemessage
+ applymovement 2, Movement_1A75E7
+ waitmovement 0
+ delay 10
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ delay 15
+ loadword 0, gUnknown_81A14FB
+ callstd 4
+ closemessage
+ applymovement 2, Movement_1A75ED
+ waitmovement 0
+ delay 15
+ applymovement 3, Movement_1A75E7
+ waitmovement 0
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ loadword 0, gUnknown_81A1574
+ callstd 4
+ closemessage
+ delay 25
+ applymovement 255, Movement_171326
+ applymovement 2, Movement_17132D
+ waitmovement 0
+ playse SE_KAIDAN
+ setflag FLAG_0x072
+ setvar VAR_0x4076, 3
+ clearflag FLAG_0x062
+ setvar VAR_0x4071, 3
+ setvar VAR_0x8004, 1
+ setvar VAR_0x8006, 8
+ goto EventScript_1A90DA
+ end
+
+EventScript_1712E4:: @ 81712E4
+ applymovement 255, Movement_171310
+ waitmovement 0
+ return
+
+EventScript_1712EF:: @ 81712EF
+ applymovement 255, Movement_171314
+ waitmovement 0
+ return
+
+EventScript_1712FA:: @ 81712FA
+ applymovement 255, Movement_171316
+ waitmovement 0
+ return
+
+EventScript_171305:: @ 8171305
+ applymovement 255, Movement_17131A
+ waitmovement 0
+ return
+
+Movement_171310:: @ 8171310
+ step_13
+ step_10
+ step_30
+ step_end
+
+Movement_171314:: @ 8171314
+ step_13
+ step_end
+
+Movement_171316:: @ 8171316
+ step_13
+ step_11
+ step_30
+ step_end
+
+Movement_17131A:: @ 817131A
+ step_13
+ step_11
+ step_11
+ step_30
+ step_end
+
+Movement_17131F:: @ 817131F
+ step_1c
+ step_1c
+ step_1a
+ step_2f
+ step_end
+
+Movement_171324:: @ 8171324
+ step_29
+ step_end
+
+Movement_171326:: @ 8171326
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_end
+
+Movement_17132D:: @ 817132D
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_end
diff --git a/data/maps/OneIsland_PokemonCenter_2F/scripts.inc b/data/maps/OneIsland_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..255a1693d
--- /dev/null
+++ b/data/maps/OneIsland_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+OneIsland_PokemonCenter_2F_MapScripts:: @ 8171334
+ map_script 2, OneIsland_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, OneIsland_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, OneIsland_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, OneIsland_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+OneIsland_PokemonCenter_2F_EventScript_171349:: @ 8171349
+ call EventScript_1BB4A3
+ end
+
+EventScript_17134F:: @ 817134F
+ call EventScript_1BB6AB
+ end
+
+EventScript_171355:: @ 8171355
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/OneIsland_TreasureBeach/scripts.inc b/data/maps/OneIsland_TreasureBeach/scripts.inc
new file mode 100644
index 000000000..7c6fb47cd
--- /dev/null
+++ b/data/maps/OneIsland_TreasureBeach/scripts.inc
@@ -0,0 +1,7 @@
+OneIsland_TreasureBeach_MapScripts:: @ 816876B
+ .byte 0
+
+OneIsland_TreasureBeach_EventScript_16876C:: @ 816876C
+ loadword 0, gUnknown_8189DCE
+ callstd 2
+ end
diff --git a/data/maps/PalletTown/scripts.inc b/data/maps/PalletTown/scripts.inc
new file mode 100644
index 000000000..e482f1fb4
--- /dev/null
+++ b/data/maps/PalletTown/scripts.inc
@@ -0,0 +1,527 @@
+PalletTown_MapScripts:: @ 816545A
+ map_script 3, PalletTown_MapScript1_165465
+ map_script 2, PalletTown_MapScript2_1654CE
+ .byte 0
+
+PalletTown_MapScript1_165465:: @ 8165465
+ setworldmapflag 2192
+ checkflag FLAG_0x291
+ call_if 1, EventScript_165488
+ compare_var_to_value VAR_0x4070, 0
+ call_if 1, EventScript_1654A8
+ compare_var_to_value VAR_0x4070, 1
+ call_if 1, EventScript_1654A2
+ end
+
+EventScript_165488:: @ 8165488
+ checkflag 2110
+ goto_if 0, EventScript_1A77A9
+ compare_var_to_value VAR_0x4070, 1
+ goto_if 4, EventScript_1A77A9
+ setvar VAR_0x4070, 1
+ return
+
+EventScript_1654A2:: @ 81654A2
+ setvar VAR_0x4070, 2
+ return
+
+EventScript_1654A8:: @ 81654A8
+ checkflag FLAG_0x291
+ goto_if 1, EventScript_1654BD
+ setobjectxyperm 1, 5, 15
+ setobjectmovementtype 1, 7
+ return
+
+EventScript_1654BD:: @ 81654BD
+ setobjectxyperm 1, 12, 2
+ setobjectmovementtype 1, 8
+ setvar VAR_0x4002, 1
+ return
+
+PalletTown_MapScript2_1654CE:: @ 81654CE
+ map_script_2 VAR_0x4050, 2, EventScript_1654D8
+ .2byte 0
+
+EventScript_1654D8:: @ 81654D8
+ lockall
+ textcolor 0
+ setobjectxyperm 3, 14, 14
+ setobjectmovementtype 3, 9
+ addobject 3
+ applymovement 3, Movement_1655AF
+ waitmovement 0
+ checkflag FLAG_SYS_RIBBON_GET
+ goto_if 0, EventScript_1655A1
+ loadword 0, gUnknown_817D8BF
+ callstd 4
+ setvar VAR_0x8004, 0
+ specialvar VAR_RESULT, sub_80CA3D8
+ copyvar VAR_0x8008, VAR_0x8005
+ copyvar VAR_0x8009, VAR_0x8006
+ getnumberstring 0, VAR_0x8008
+ getnumberstring 1, VAR_0x8009
+ compare_var_to_value VAR_0x8009, 60
+ goto_if 0, EventScript_165593
+ loadword 0, gUnknown_817D9AA
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_FOLLOW_ME, 0
+ applymovement 255, Movement_1655DD
+ applymovement 3, Movement_1655CC
+ waitmovement 0
+ opendoor 16, 13
+ waitdooranim
+ applymovement 3, Movement_16572E
+ applymovement 255, Movement_165758
+ waitmovement 0
+ closedoor 16, 13
+ waitdooranim
+ setvar VAR_0x4055, 7
+ setvar VAR_0x4050, 3
+ setflag FLAG_0x02C
+ warp MAP_PALLETTOWN_PROFESSOROAKSLAB, 255, 6, 12
+ waitstate
+ releaseall
+ end
+
+EventScript_16557E:: @ 816557E
+ closemessage
+ applymovement 3, Movement_1655BE
+ waitmovement 0
+ removeobject 3
+ setvar VAR_0x4050, 3
+ releaseall
+ end
+
+EventScript_165593:: @ 8165593
+ loadword 0, gUnknown_817D925
+ callstd 4
+ goto EventScript_16557E
+ end
+
+EventScript_1655A1:: @ 81655A1
+ loadword 0, gUnknown_817DA16
+ callstd 4
+ goto EventScript_16557E
+ end
+
+Movement_1655AF:: @ 81655AF
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_2e
+ step_end
+
+Movement_1655BE:: @ 81655BE
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_1655CC:: @ 81655CC
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2e
+ step_end
+
+Movement_1655DD:: @ 81655DD
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+PalletTown_EventScript_1655ED:: @ 81655ED
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_165605
+ end
+
+PalletTown_EventScript_1655F9:: @ 81655F9
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_165605
+ end
+
+EventScript_165605:: @ 8165605
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ textcolor 0
+ delay 30
+ playbgm BGM_FRLG_PROF_OAK, 0
+ message Text_17D72C
+ waitmessage
+ delay 85
+ closemessage
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ playse SE_PIN
+ applymovement 255, Movement_1A75DB
+ waitmovement 0
+ delay 30
+ addobject 3
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_1656B8
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_1656C3
+ delay 30
+ loadword 0, gUnknown_817D74A
+ callstd 4
+ closemessage
+ delay 30
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_1656CE
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_1656E0
+ opendoor 16, 13
+ waitdooranim
+ applymovement 3, Movement_16572E
+ applymovement 255, Movement_165758
+ waitmovement 0
+ closedoor 16, 13
+ waitdooranim
+ setvar VAR_0x4055, 1
+ clearflag FLAG_0x02B
+ setvar VAR_0x4050, 1
+ setflag FLAG_0x02C
+ setflag FLAG_SPECIAL_FLAG_0x4001
+ warp MAP_PALLETTOWN_PROFESSOROAKSLAB, 255, 6, 12
+ waitstate
+ releaseall
+ end
+
+EventScript_1656B8:: @ 81656B8
+ applymovement 3, Movement_1656F2
+ waitmovement 0
+ return
+
+EventScript_1656C3:: @ 81656C3
+ applymovement 3, Movement_1656FB
+ waitmovement 0
+ return
+
+EventScript_1656CE:: @ 81656CE
+ applymovement 3, Movement_165705
+ applymovement 255, Movement_165731
+ waitmovement 0
+ return
+
+EventScript_1656E0:: @ 81656E0
+ applymovement 3, Movement_165719
+ applymovement 255, Movement_165744
+ waitmovement 0
+ return
+
+Movement_1656F2:: @ 81656F2
+ step_11
+ step_11
+ step_13
+ step_11
+ step_11
+ step_13
+ step_11
+ step_11
+ step_end
+
+Movement_1656FB:: @ 81656FB
+ step_13
+ step_11
+ step_11
+ step_13
+ step_11
+ step_11
+ step_13
+ step_11
+ step_11
+ step_end
+
+Movement_165705:: @ 8165705
+ step_10
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2e
+ step_end
+
+Movement_165719:: @ 8165719
+ step_10
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2e
+ step_end
+
+Movement_16572E:: @ 816572E
+ step_11
+ step_60
+ step_end
+
+Movement_165731:: @ 8165731
+ step_10
+ step_10
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_165744:: @ 8165744
+ step_10
+ step_10
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_165758:: @ 8165758
+ step_13
+ step_11
+ step_60
+ step_end
+
+PalletTown_EventScript_16575C:: @ 816575C
+ lock
+ compare_var_to_value VAR_0x4070, 2
+ goto_if 1, EventScript_1657ED
+ compare_var_to_value VAR_0x4070, 1
+ goto_if 1, EventScript_165815
+ compare_var_to_value VAR_0x4002, 1
+ goto_if 1, EventScript_1658C2
+ checkflag FLAG_0x002
+ goto_if 1, EventScript_165801
+ loadword 0, gUnknown_81B1C8B
+ callstd 4
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ playse SE_PIN
+ applymovement 1, Movement_1A75DB
+ waitmovement 0
+ applymovement 1, Movement_1A75DD
+ waitmovement 0
+ loadword 0, gUnknown_81B1C9F
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_1657D7
+ compare_var_to_value VAR_FACING, 4
+ call_if 5, EventScript_1657E2
+ moveobjectoffscreen 1
+ setflag FLAG_0x002
+ release
+ end
+
+EventScript_1657D7:: @ 81657D7
+ applymovement 1, Movement_165829
+ waitmovement 0
+ return
+
+EventScript_1657E2:: @ 81657E2
+ applymovement 1, Movement_16582C
+ waitmovement 0
+ return
+
+EventScript_1657ED:: @ 81657ED
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_817D7C8
+ callstd 4
+ release
+ end
+
+EventScript_165801:: @ 8165801
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81B1CAF
+ callstd 4
+ release
+ end
+
+EventScript_165815:: @ 8165815
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81B1CEC
+ callstd 4
+ release
+ end
+
+Movement_165829:: @ 8165829
+ step_13
+ step_2f
+ step_end
+
+Movement_16582C:: @ 816582C
+ step_12
+ step_30
+ step_end
+
+PalletTown_EventScript_16582F:: @ 816582F
+ loadword 0, gUnknown_817D80D
+ callstd 2
+ end
+
+PalletTown_EventScript_165838:: @ 8165838
+ lockall
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_817D866
+ callstd 4
+ releaseall
+ end
+
+PalletTown_EventScript_165850:: @ 8165850
+ loadword 0, gUnknown_817D87F
+ callstd 3
+ end
+
+PalletTown_EventScript_165859:: @ 8165859
+ loadword 0, gUnknown_817D88A
+ callstd 3
+ end
+
+PalletTown_EventScript_165862:: @ 8165862
+ loadword 0, gUnknown_817D895
+ callstd 3
+ end
+
+PalletTown_EventScript_16586B:: @ 816586B
+ lockall
+ loadword 0, gUnknown_81B1CC1
+ callstd 4
+ setvar VAR_0x4070, 1
+ releaseall
+ end
+
+PalletTown_EventScript_16587B:: @ 816587B
+ lockall
+ applymovement 1, Movement_1A75EB
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ call EventScript_165894
+ releaseall
+ end
+
+EventScript_165894:: @ 8165894
+ textcolor 1
+ loadword 0, gUnknown_81B1D0B
+ callstd 4
+ closemessage
+ delay 20
+ textcolor 3
+ setflag 2110
+ setvar VAR_0x4070, 1
+ setvar VAR_0x4002, 0
+ special sub_80699E0
+ special sub_80699BC
+ signmsg
+ loadword 0, gUnknown_81B1D51
+ callstd 4
+ normalmsg
+ return
+
+EventScript_1658C2:: @ 81658C2
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ call EventScript_165894
+ release
+ end
diff --git a/data/maps/PalletTown_GarysHouse/scripts.inc b/data/maps/PalletTown_GarysHouse/scripts.inc
new file mode 100644
index 000000000..668990b4a
--- /dev/null
+++ b/data/maps/PalletTown_GarysHouse/scripts.inc
@@ -0,0 +1,217 @@
+PalletTown_GarysHouse_MapScripts:: @ 8168D27
+ map_script 3, PalletTown_GarysHouse_MapScript1_168D2D
+ .byte 0
+
+PalletTown_GarysHouse_MapScript1_168D2D:: @ 8168D2D
+ compare_var_to_value VAR_0x4058, 2
+ call_if 0, EventScript_168D44
+ compare_var_to_value VAR_0x4058, 2
+ call_if 4, EventScript_168D50
+ end
+
+EventScript_168D44:: @ 8168D44
+ setobjectmovementtype 1, 10
+ setobjectxyperm 1, 5, 4
+ return
+
+EventScript_168D50:: @ 8168D50
+ setvar VAR_0x4001, 1
+ return
+
+PalletTown_GarysHouse_EventScript_168D56:: @ 8168D56
+ lock
+ faceplayer
+ setvar VAR_0x8004, 1
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ checkflag 2092
+ goto_if 1, EventScript_168DB9
+ compare_var_to_value VAR_0x4001, 1
+ goto_if 1, EventScript_168EEC
+ compare_var_to_value VAR_0x4058, 2
+ goto_if 1, EventScript_168F59
+ compare_var_to_value VAR_0x4058, 1
+ goto_if 1, EventScript_168EF6
+ compare_var_to_value VAR_0x4055, 1
+ goto_if 4, EventScript_168DAF
+ loadword 0, gUnknown_818D58C
+ callstd 4
+ closemessage
+ applymovement 1, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+EventScript_168DAF:: @ 8168DAF
+ loadword 0, gUnknown_818D5C4
+ callstd 4
+ release
+ end
+
+EventScript_168DB9:: @ 8168DB9
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ compare_var_to_value VAR_MIRAGE_RND_L, 500
+ goto_if 0, EventScript_168E46
+ loadword 0, gUnknown_818D7D3
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_168E3C
+ loadword 0, gUnknown_818D8B2
+ callstd 4
+ special sub_80BF8FC
+ waitstate
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_168E3C
+ specialvar VAR_RESULT, sub_80CAD54
+ compare_var_to_value VAR_RESULT, 412
+ goto_if 1, EventScript_168E32
+ loadword 0, gUnknown_818D8CC
+ callstd 4
+ closemessage
+ fadescreen 1
+ playfanfare MUS_ME_ASA
+ waitfanfare
+ special sub_80CC948
+ fadescreen 0
+ special TV_CopyNicknameToStringVar1AndEnsureTerminated
+ loadword 0, gUnknown_818D8FE
+ callstd 4
+ release
+ end
+
+EventScript_168E32:: @ 8168E32
+ loadword 0, gUnknown_818D97B
+ callstd 4
+ release
+ end
+
+EventScript_168E3C:: @ 8168E3C
+ loadword 0, gUnknown_818D875
+ callstd 4
+ release
+ end
+
+EventScript_168E46:: @ 8168E46
+ loadword 0, gUnknown_818D9A5
+ callstd 4
+ specialvar VAR_RESULT, sub_80CA76C
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_168EA6
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_168EB0
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_168EBA
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_168EC4
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_168ECE
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_168ED8
+ compare_var_to_value VAR_0x8000, 6
+ goto_if 1, EventScript_168EE2
+ end
+
+EventScript_168EA6:: @ 8168EA6
+ loadword 0, gUnknown_818DBDD
+ callstd 4
+ release
+ end
+
+EventScript_168EB0:: @ 8168EB0
+ loadword 0, gUnknown_818DB88
+ callstd 4
+ release
+ end
+
+EventScript_168EBA:: @ 8168EBA
+ loadword 0, gUnknown_818DB2E
+ callstd 4
+ release
+ end
+
+EventScript_168EC4:: @ 8168EC4
+ loadword 0, gUnknown_818DAF3
+ callstd 4
+ release
+ end
+
+EventScript_168ECE:: @ 8168ECE
+ loadword 0, gUnknown_818DABE
+ callstd 4
+ release
+ end
+
+EventScript_168ED8:: @ 8168ED8
+ loadword 0, gUnknown_818DA73
+ callstd 4
+ release
+ end
+
+EventScript_168EE2:: @ 8168EE2
+ loadword 0, gUnknown_818DA16
+ callstd 4
+ release
+ end
+
+EventScript_168EEC:: @ 8168EEC
+ loadword 0, gUnknown_818D701
+ callstd 4
+ release
+ end
+
+EventScript_168EF6:: @ 8168EF6
+ loadword 0, gUnknown_818D60A
+ callstd 4
+ closemessage
+ checkitemspace ITEM_TOWN_MAP, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_168F4F
+ applymovement 1, Movement_1A75EB
+ waitmovement 0
+ removeobject 2
+ setvar VAR_0x4058, 2
+ delay 15
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ delay 12
+ additem ITEM_TOWN_MAP, 1
+ loadword 0, gUnknown_818D661
+ setorcopyvar VAR_0x8000, 361
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ release
+ end
+
+EventScript_168F4F:: @ 8168F4F
+ loadword 0, gUnknown_818D684
+ callstd 4
+ release
+ end
+
+EventScript_168F59:: @ 8168F59
+ loadword 0, gUnknown_818D6AF
+ callstd 4
+ release
+ end
+
+PalletTown_GarysHouse_EventScript_168F63:: @ 8168F63
+ loadword 0, gUnknown_818D763
+ callstd 2
+ end
+
+PalletTown_GarysHouse_EventScript_168F6C:: @ 8168F6C
+ loadword 0, gUnknown_818D7A1
+ callstd 3
+ end
+
+PalletTown_GarysHouse_EventScript_168F75:: @ 8168F75
+ loadword 0, gUnknown_818DC47
+ callstd 3
+ end
diff --git a/data/maps/PalletTown_PlayersHouse_1F/scripts.inc b/data/maps/PalletTown_PlayersHouse_1F/scripts.inc
new file mode 100644
index 000000000..c0a266344
--- /dev/null
+++ b/data/maps/PalletTown_PlayersHouse_1F/scripts.inc
@@ -0,0 +1,66 @@
+PalletTown_PlayersHouse_1F_MapScripts:: @ 8168C08
+ .byte 0
+
+PalletTown_PlayersHouse_1F_EventScript_168C09:: @ 8168C09
+ lock
+ faceplayer
+ checkflag FLAG_0x258
+ goto_if 1, EventScript_168C4A
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_168C38
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_168C41
+ closemessage
+ applymovement 1, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+EventScript_168C38:: @ 8168C38
+ loadword 0, gUnknown_818D2F0
+ callstd 4
+ return
+
+EventScript_168C41:: @ 8168C41
+ loadword 0, gUnknown_818D360
+ callstd 4
+ return
+
+EventScript_168C4A:: @ 8168C4A
+ loadword 0, gUnknown_818D3D1
+ callstd 4
+ closemessage
+ call EventScript_1A6C26
+ loadword 0, gUnknown_818D3F8
+ callstd 4
+ release
+ end
+
+PalletTown_PlayersHouse_1F_EventScript_168C62:: @ 8168C62
+ lockall
+ compare_var_to_value VAR_FACING, 2
+ goto_if 1, EventScript_168C78
+ loadword 0, gUnknown_818D4F9
+ callstd 4
+ releaseall
+ end
+
+EventScript_168C78:: @ 8168C78
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_168C91
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_168C9A
+ releaseall
+ end
+
+EventScript_168C91:: @ 8168C91
+ loadword 0, gUnknown_818D43E
+ callstd 4
+ return
+
+EventScript_168C9A:: @ 8168C9A
+ loadword 0, gUnknown_818D492
+ callstd 4
+ return
diff --git a/data/maps/PalletTown_PlayersHouse_2F/scripts.inc b/data/maps/PalletTown_PlayersHouse_2F/scripts.inc
new file mode 100644
index 000000000..b9e02166c
--- /dev/null
+++ b/data/maps/PalletTown_PlayersHouse_2F/scripts.inc
@@ -0,0 +1,59 @@
+PalletTown_PlayersHouse_2F_MapScripts:: @ 8168CA3
+ map_script 3, PalletTown_PlayersHouse_2F_MapScript1_168CAE
+ map_script 4, PalletTown_PlayersHouse_2F_MapScript2_168CBE
+ .byte 0
+
+PalletTown_PlayersHouse_2F_MapScript1_168CAE:: @ 8168CAE
+ compare_var_to_value VAR_0x4056, 0
+ call_if 1, EventScript_168CBA
+ end
+
+EventScript_168CBA:: @ 8168CBA
+ setrespawn 1
+ return
+
+PalletTown_PlayersHouse_2F_MapScript2_168CBE:: @ 8168CBE
+ map_script_2 VAR_0x4056, 0, EventScript_168CC8
+ .2byte 0
+
+EventScript_168CC8:: @ 8168CC8
+ turnobject 255, 2
+ setvar VAR_0x4056, 1
+ end
+
+PalletTown_PlayersHouse_2F_EventScript_168CD2:: @ 8168CD2
+ loadword 0, gUnknown_818D50B
+ callstd 3
+ end
+
+PalletTown_PlayersHouse_2F_EventScript_168CDB:: @ 8168CDB
+ loadword 0, gUnknown_818D53B
+ callstd 3
+ end
+
+gUnknown_8168CE4:: @ 8168CE4
+PalletTown_PlayersHouse_2F_EventScript_168CE4:: @ 8168CE4
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lockall
+ setvar VAR_0x8004, 32
+ special sub_812B220
+ setvar VAR_0x8004, 1
+ special sub_80CA86C
+ playse SE_PC_ON
+ loadword 0, gUnknown_81A5420
+ callstd 4
+ special sub_80EB6AC
+ waitstate
+ special sub_812B35C
+ releaseall
+ end
+
+gUnknown_8168D17:: @ 8168D17
+ setvar VAR_0x8004, 1
+ playse SE_PC_OFF
+ special sub_80CA9A8
+ special sub_812B35C
+ releaseall
+ end
diff --git a/data/maps/PalletTown_ProfessorOaksLab/scripts.inc b/data/maps/PalletTown_ProfessorOaksLab/scripts.inc
new file mode 100644
index 000000000..2308b32d2
--- /dev/null
+++ b/data/maps/PalletTown_ProfessorOaksLab/scripts.inc
@@ -0,0 +1,1474 @@
+PalletTown_ProfessorOaksLab_MapScripts:: @ 8168F7E
+ map_script 3, PalletTown_ProfessorOaksLab_MapScript1_168F8E
+ map_script 4, PalletTown_ProfessorOaksLab_MapScript2_168FE1
+ map_script 2, PalletTown_ProfessorOaksLab_MapScript3_168FF0
+ .byte 0
+
+PalletTown_ProfessorOaksLab_MapScript1_168F8E:: @ 8168F8E
+ setflag FLAG_0x2CF
+ compare_var_to_value VAR_0x4055, 1
+ call_if 1, EventScript_168FC6
+ compare_var_to_value VAR_0x4055, 7
+ call_if 1, EventScript_168FD5
+ compare_var_to_value VAR_0x4055, 8
+ call_if 1, EventScript_168FC0
+ checkflag FLAG_0x247
+ call_if 1, EventScript_168FBC
+ end
+
+EventScript_168FBC:: @ 8168FBC
+ setflag FLAG_0x24F
+ return
+
+EventScript_168FC0:: @ 8168FC0
+ setvar VAR_0x4055, 9
+ return
+
+EventScript_168FC6:: @ 8168FC6
+ setobjectxyperm 4, 6, 11
+ setobjectmovementtype 4, 7
+ savebgm BGM_FRLG_PROF_OAK
+ return
+
+EventScript_168FD5:: @ 8168FD5
+ setobjectxyperm 4, 6, 11
+ setobjectmovementtype 4, 7
+ return
+
+PalletTown_ProfessorOaksLab_MapScript2_168FE1:: @ 8168FE1
+ map_script_2 VAR_0x4055, 1, EventScript_168FEB
+ .2byte 0
+
+EventScript_168FEB:: @ 8168FEB
+ turnobject 255, 2
+ end
+
+PalletTown_ProfessorOaksLab_MapScript3_168FF0:: @ 8168FF0
+ map_script_2 VAR_0x4055, 1, EventScript_16923E
+ map_script_2 VAR_0x4055, 7, EventScript_169002
+ .2byte 0
+
+EventScript_169002:: @ 8169002
+ lockall
+ setvar VAR_FACING, 2
+ textcolor 0
+ applymovement 4, Movement_1692B0
+ waitmovement 0
+ removeobject 4
+ setobjectxyperm 4, 6, 3
+ setobjectmovementtype 4, 8
+ clearflag FLAG_0x02B
+ applymovement 255, Movement_1692B7
+ waitmovement 0
+ goto EventScript_169035
+ end
+
+EventScript_169035:: @ 8169035
+ loadword 0, gUnknown_818EE60
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169174
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_1691BB
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_169194
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_169194
+ loadword 0, gUnknown_818EF59
+ callstd 4
+ fadedefaultbgm
+ loadword 0, gUnknown_818F004
+ callstd 4
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_1691DB
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_1691E6
+ textcolor 3
+ loadword 0, gUnknown_818F062
+ callstd 4
+ closemessage
+ call EventScript_1A6675
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_1691F1
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_1691FC
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_169215
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_169227
+ addobject 9
+ addobject 10
+ delay 30
+ loadword 0, gUnknown_818F085
+ callstd 4
+ closemessage
+ removeobject 9
+ removeobject 10
+ delay 30
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169845
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_169850
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_16985B
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_16986D
+ textcolor 3
+ playfanfare BGM_FRLG_ME_KEYITEM
+ message Text_18F0E8
+ waitmessage
+ waitfanfare
+ call EventScript_1A6675
+ special EnableNationalPokedex
+ loadword 0, gUnknown_818F103
+ callstd 4
+ loadword 0, gUnknown_818F1DB
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_RIVAL_POSTBATTLE, 0
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169B69
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_169B7B
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_169B7B
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_169B7B
+ removeobject 8
+ fadedefaultbgm
+ setvar VAR_0x4055, 8
+ releaseall
+ end
+
+EventScript_169174:: @ 8169174
+ setobjectxyperm 8, 5, 10
+ addobject 8
+ playbgm BGM_FRLG_RIVAL, 0
+ applymovement 255, Movement_169B94
+ applymovement 8, Movement_169B9D
+ waitmovement 0
+ return
+
+EventScript_169194:: @ 8169194
+ setobjectxyperm 8, 6, 10
+ addobject 8
+ playbgm BGM_FRLG_RIVAL, 0
+ applymovement 4, Movement_1A75ED
+ applymovement 255, Movement_169B91
+ applymovement 8, Movement_169B9D
+ waitmovement 0
+ return
+
+EventScript_1691BB:: @ 81691BB
+ setobjectxyperm 8, 6, 10
+ addobject 8
+ playbgm BGM_FRLG_RIVAL, 0
+ applymovement 4, Movement_1A75ED
+ applymovement 8, Movement_169B9D
+ waitmovement 0
+ return
+
+EventScript_1691DB:: @ 81691DB
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_1691E6:: @ 81691E6
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_1691F1:: @ 81691F1
+ applymovement 4, Movement_169232
+ waitmovement 0
+ return
+
+EventScript_1691FC:: @ 81691FC
+ applymovement 4, Movement_169238
+ applymovement 255, Movement_1698C7
+ applymovement 8, Movement_1698C7
+ waitmovement 4
+ return
+
+EventScript_169215:: @ 8169215
+ applymovement 4, Movement_169232
+ applymovement 255, Movement_1698C3
+ waitmovement 4
+ return
+
+EventScript_169227:: @ 8169227
+ applymovement 4, Movement_169232
+ waitmovement 0
+ return
+
+Movement_169232:: @ 8169232
+ step_11
+ step_12
+ step_2e
+ step_1c
+ step_1a
+ step_end
+
+Movement_169238:: @ 8169238
+ step_12
+ step_12
+ step_11
+ step_1c
+ step_1a
+ step_end
+
+EventScript_16923E:: @ 816923E
+ lockall
+ textcolor 0
+ applymovement 4, Movement_1692B0
+ waitmovement 0
+ removeobject 4
+ setobjectxyperm 4, 6, 3
+ setobjectmovementtype 4, 8
+ clearflag FLAG_0x02B
+ applymovement 255, Movement_1692B7
+ waitmovement 0
+ applymovement 8, Movement_1A75E9
+ waitmovement 0
+ clearflag FLAG_SPECIAL_FLAG_0x4001
+ savebgm SE_STOP
+ fadedefaultbgm
+ loadword 0, gUnknown_818DC94
+ callstd 4
+ closemessage
+ delay 60
+ loadword 0, gUnknown_818DFBC
+ callstd 4
+ closemessage
+ delay 30
+ applymovement 8, Movement_1692C0
+ waitmovement 0
+ loadword 0, gUnknown_818DCB9
+ callstd 4
+ loadword 0, gUnknown_818E0EA
+ callstd 4
+ setvar VAR_0x4055, 2
+ releaseall
+ end
+
+Movement_1692B0:: @ 81692B0
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_1692B7:: @ 81692B7
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_1692C0:: @ 81692C0
+ step_26
+ step_26
+ step_end
+
+PalletTown_ProfessorOaksLab_EventScript_1692C3:: @ 81692C3
+ lockall
+ textcolor 0
+ applymovement 4, Movement_1A75F1
+ waitmovement 0
+ loadword 0, gUnknown_818E177
+ callstd 4
+ closemessage
+ applymovement 255, Movement_1692E5
+ waitmovement 0
+ releaseall
+ end
+
+Movement_1692E5:: @ 81692E5
+ step_11
+ step_end
+
+PalletTown_ProfessorOaksLab_EventScript_1692E7:: @ 81692E7
+ lockall
+ setvar VAR_0x4002, 1
+ goto EventScript_16930B
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_1692F3:: @ 81692F3
+ lockall
+ setvar VAR_0x4002, 2
+ goto EventScript_16930B
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_1692FF:: @ 81692FF
+ lockall
+ setvar VAR_0x4002, 3
+ goto EventScript_16930B
+ end
+
+EventScript_16930B:: @ 816930B
+ textcolor 0
+ playbgm BGM_FRLG_RIVAL, 0
+ applymovement 8, Movement_1A75ED
+ waitmovement 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ loadword 0, gUnknown_818DDA4
+ callstd 4
+ closemessage
+ applymovement 4, Movement_1A75F1
+ waitmovement 0
+ compare_var_to_value VAR_STARTER_MON, 0
+ goto_if 1, EventScript_1693D2
+ compare_var_to_value VAR_STARTER_MON, 1
+ goto_if 1, EventScript_16944D
+ compare_var_to_value VAR_STARTER_MON, 2
+ goto_if 1, EventScript_16935A
+ end
+
+EventScript_16935A:: @ 816935A
+ compare_var_to_value VAR_0x4002, 1
+ goto_if 1, EventScript_16937C
+ compare_var_to_value VAR_0x4002, 2
+ goto_if 1, EventScript_16938C
+ compare_var_to_value VAR_0x4002, 3
+ goto_if 1, EventScript_16939C
+ end
+
+EventScript_16937C:: @ 816937C
+ applymovement 8, Movement_1693C0
+ waitmovement 0
+ goto EventScript_1693AC
+ end
+
+EventScript_16938C:: @ 816938C
+ applymovement 8, Movement_1693C7
+ waitmovement 0
+ goto EventScript_1693AC
+ end
+
+EventScript_16939C:: @ 816939C
+ applymovement 8, Movement_1693CD
+ waitmovement 0
+ goto EventScript_1693AC
+ end
+
+EventScript_1693AC:: @ 81693AC
+ trainerbattle 9, 326, 3, Text_18DDEA, Text_18DE1A
+ goto EventScript_1694C2
+ end
+
+Movement_1693C0:: @ 81693C0
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_end
+
+Movement_1693C7:: @ 81693C7
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_end
+
+Movement_1693CD:: @ 81693CD
+ step_12
+ step_12
+ step_10
+ step_10
+ step_end
+
+EventScript_1693D2:: @ 81693D2
+ compare_var_to_value VAR_0x4002, 1
+ goto_if 1, EventScript_1693F4
+ compare_var_to_value VAR_0x4002, 2
+ goto_if 1, EventScript_169404
+ compare_var_to_value VAR_0x4002, 3
+ goto_if 1, EventScript_169414
+ end
+
+EventScript_1693F4:: @ 81693F4
+ applymovement 8, Movement_169438
+ waitmovement 0
+ goto EventScript_169424
+ end
+
+EventScript_169404:: @ 8169404
+ applymovement 8, Movement_169440
+ waitmovement 0
+ goto EventScript_169424
+ end
+
+EventScript_169414:: @ 8169414
+ applymovement 8, Movement_169447
+ waitmovement 0
+ goto EventScript_169424
+ end
+
+EventScript_169424:: @ 8169424
+ trainerbattle 9, 328, 3, Text_18DDEA, Text_18DE1A
+ goto EventScript_1694C2
+ end
+
+Movement_169438:: @ 8169438
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_end
+
+Movement_169440:: @ 8169440
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_end
+
+Movement_169447:: @ 8169447
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_end
+
+EventScript_16944D:: @ 816944D
+ compare_var_to_value VAR_0x4002, 1
+ goto_if 1, EventScript_16946F
+ compare_var_to_value VAR_0x4002, 2
+ goto_if 1, EventScript_16947F
+ compare_var_to_value VAR_0x4002, 3
+ goto_if 1, EventScript_16948F
+ end
+
+EventScript_16946F:: @ 816946F
+ applymovement 8, Movement_1694B3
+ waitmovement 0
+ goto EventScript_16949F
+ end
+
+EventScript_16947F:: @ 816947F
+ applymovement 8, Movement_1694B9
+ waitmovement 0
+ goto EventScript_16949F
+ end
+
+EventScript_16948F:: @ 816948F
+ applymovement 8, Movement_1694BE
+ waitmovement 0
+ goto EventScript_16949F
+ end
+
+EventScript_16949F:: @ 816949F
+ trainerbattle 9, 327, 3, Text_18DDEA, Text_18DE1A
+ goto EventScript_1694C2
+ end
+
+Movement_1694B3:: @ 81694B3
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_end
+
+Movement_1694B9:: @ 81694B9
+ step_12
+ step_12
+ step_10
+ step_10
+ step_end
+
+Movement_1694BE:: @ 81694BE
+ step_12
+ step_10
+ step_10
+ step_end
+
+EventScript_1694C2:: @ 81694C2
+ special sp000_heal_pokemon
+ loadword 0, gUnknown_818DE38
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_RIVAL_POSTBATTLE, 0
+ compare_var_to_value VAR_0x4002, 1
+ call_if 1, EventScript_169504
+ compare_var_to_value VAR_0x4002, 2
+ call_if 1, EventScript_169516
+ compare_var_to_value VAR_0x4002, 3
+ call_if 1, EventScript_169528
+ removeobject 8
+ playse SE_KAIDAN
+ fadedefaultbgm
+ setvar VAR_0x4055, 4
+ setflag FLAG_0x258
+ releaseall
+ end
+
+EventScript_169504:: @ 8169504
+ applymovement 8, Movement_16953A
+ applymovement 255, Movement_169553
+ waitmovement 8
+ return
+
+EventScript_169516:: @ 8169516
+ applymovement 8, Movement_16954A
+ applymovement 255, Movement_169553
+ waitmovement 8
+ return
+
+EventScript_169528:: @ 8169528
+ applymovement 8, Movement_169542
+ applymovement 255, Movement_169559
+ waitmovement 8
+ return
+
+Movement_16953A:: @ 816953A
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_1b
+ step_end
+
+Movement_169542:: @ 8169542
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_1b
+ step_end
+
+Movement_16954A:: @ 816954A
+ step_13
+ step_10
+ step_10
+ step_10
+ step_12
+ step_10
+ step_10
+ step_1b
+ step_end
+
+Movement_169553:: @ 8169553
+ step_1c
+ step_1b
+ step_30
+ step_1c
+ step_2d
+ step_end
+
+Movement_169559:: @ 8169559
+ step_1c
+ step_1b
+ step_2f
+ step_1c
+ step_2d
+ step_end
+
+PalletTown_ProfessorOaksLab_EventScript_16955F:: @ 816955F
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4055, 3
+ goto_if 1, EventScript_16958B
+ compare_var_to_value VAR_0x4055, 2
+ goto_if 1, EventScript_169581
+ loadword 0, gUnknown_818DC67
+ callstd 4
+ release
+ end
+
+EventScript_169581:: @ 8169581
+ loadword 0, gUnknown_818DCE2
+ callstd 4
+ release
+ end
+
+EventScript_16958B:: @ 816958B
+ loadword 0, gUnknown_818DD75
+ callstd 4
+ release
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_169595:: @ 8169595
+ lock
+ faceplayer
+ checkflag FLAG_0x002
+ goto_if 1, EventScript_169600
+ compare_var_to_value VAR_0x4055, 9
+ goto_if 1, EventScript_169903
+ compare_var_to_value VAR_0x4055, 8
+ goto_if 1, EventScript_169A6E
+ checkflag 2092
+ goto_if 1, EventScript_1699CE
+ compare_var_to_value VAR_0x4052, 1
+ goto_if 1, EventScript_169903
+ compare_var_to_value VAR_0x4055, 6
+ goto_if 1, EventScript_1698D6
+ compare_var_to_value VAR_0x4057, 1
+ goto_if 4, EventScript_16961E
+ compare_var_to_value VAR_0x4055, 4
+ goto_if 1, EventScript_169614
+ compare_var_to_value VAR_0x4055, 3
+ goto_if 1, EventScript_16960A
+ loadword 0, gUnknown_818E116
+ callstd 4
+ release
+ end
+
+EventScript_169600:: @ 8169600
+ loadword 0, gUnknown_81A72AD
+ callstd 4
+ release
+ end
+
+EventScript_16960A:: @ 816960A
+ loadword 0, gUnknown_818E330
+ callstd 4
+ release
+ end
+
+EventScript_169614:: @ 8169614
+ loadword 0, gUnknown_818E3AD
+ callstd 4
+ release
+ end
+
+EventScript_16961E:: @ 816961E
+ loadword 0, gUnknown_818E405
+ callstd 4
+ textcolor 3
+ playfanfare MUS_ME_WAZA
+ message Text_18E4AF
+ waitmessage
+ waitfanfare
+ call EventScript_1A6675
+ removeitem ITEM_OAKS_PARCEL, 1
+ loadword 0, gUnknown_818E4CA
+ callstd 4
+ playbgm BGM_FRLG_RIVAL, 0
+ loadword 0, gUnknown_818DE8D
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169A82
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_169AC1
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_169A9E
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_169A9E
+ fadedefaultbgm
+ loadword 0, gUnknown_818DE99
+ callstd 4
+ closemessage
+ delay 30
+ playse SE_PIN
+ applymovement 4, Movement_1A75DB
+ waitmovement 0
+ applymovement 4, Movement_1A75DD
+ waitmovement 0
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_169ADD
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_169B14
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_169AF5
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169B86
+ loadword 0, gUnknown_818E508
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169882
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_16988D
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_1698A6
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_1698B8
+ loadword 0, gUnknown_818E536
+ callstd 4
+ closemessage
+ delay 40
+ loadword 0, gUnknown_818E5C5
+ callstd 4
+ closemessage
+ applymovement 4, Movement_1A75E9
+ waitmovement 0
+ removeobject 9
+ delay 10
+ removeobject 10
+ delay 25
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169845
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_169850
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_16985B
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_16986D
+ delay 10
+ textcolor 3
+ playfanfare BGM_FRLG_ME_KEYITEM
+ message Text_18E5EA
+ waitmessage
+ waitfanfare
+ call EventScript_1A6675
+ setflag 2089
+ special sub_810B810
+ setvar VAR_0x407C, 1
+ loadword 0, gUnknown_818E612
+ callstd 4
+ additem ITEM_POKE_BALL, 5
+ loadword 0, gUnknown_818E6B3
+ setorcopyvar VAR_0x8000, 4
+ setorcopyvar VAR_0x8001, 5
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ loadword 0, gUnknown_818E6D0
+ callstd 4
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_818E784
+ callstd 4
+ loadword 0, gUnknown_818DEC8
+ callstd 4
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169B33
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_169B45
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_169B57
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_169B57
+ loadword 0, gUnknown_818DEF3
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_RIVAL_POSTBATTLE, 0
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169B69
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_169B7B
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_169B7B
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_169B7B
+ removeobject 8
+ fadedefaultbgm
+ setvar VAR_0x4055, 6
+ setvar VAR_0x4057, 2
+ setvar VAR_0x4051, 1
+ setvar VAR_0x4058, 1
+ setvar VAR_0x4054, 1
+ release
+ end
+
+EventScript_169845:: @ 8169845
+ applymovement 4, Movement_16987C
+ waitmovement 0
+ return
+
+EventScript_169850:: @ 8169850
+ applymovement 4, Movement_16987F
+ waitmovement 0
+ return
+
+EventScript_16985B:: @ 816985B
+ applymovement 4, Movement_16987C
+ applymovement 255, Movement_169878
+ waitmovement 0
+ return
+
+EventScript_16986D:: @ 816986D
+ applymovement 4, Movement_16987C
+ waitmovement 0
+ return
+
+Movement_169878:: @ 8169878
+ step_1c
+ step_1b
+ step_30
+ step_end
+
+Movement_16987C:: @ 816987C
+ step_13
+ step_10
+ step_end
+
+Movement_16987F:: @ 816987F
+ step_10
+ step_13
+ step_end
+
+EventScript_169882:: @ 8169882
+ applymovement 4, Movement_1698CB
+ waitmovement 0
+ return
+
+EventScript_16988D:: @ 816988D
+ applymovement 4, Movement_1698D0
+ applymovement 255, Movement_1698C7
+ applymovement 8, Movement_1698C7
+ waitmovement 4
+ return
+
+EventScript_1698A6:: @ 81698A6
+ applymovement 4, Movement_1698CB
+ applymovement 255, Movement_1698C3
+ waitmovement 4
+ return
+
+EventScript_1698B8:: @ 81698B8
+ applymovement 4, Movement_1698CB
+ waitmovement 0
+ return
+
+Movement_1698C3:: @ 81698C3
+ step_1c
+ step_1b
+ step_2e
+ step_end
+
+Movement_1698C7:: @ 81698C7
+ step_1c
+ step_1b
+ step_2f
+ step_end
+
+Movement_1698CB:: @ 81698CB
+ step_11
+ step_12
+ step_1c
+ step_2d
+ step_end
+
+Movement_1698D0:: @ 81698D0
+ step_12
+ step_12
+ step_11
+ step_1c
+ step_30
+ step_end
+
+EventScript_1698D6:: @ 81698D6
+ setvar VAR_0x8004, 0
+ specialvar VAR_RESULT, sub_80CA3D8
+ copyvar VAR_0x8008, VAR_0x8005
+ copyvar VAR_0x8009, VAR_0x8006
+ getnumberstring 0, VAR_0x8008
+ getnumberstring 1, VAR_0x8009
+ compare_var_to_value VAR_0x8009, 1
+ goto_if 1, EventScript_1699FB
+ goto EventScript_169903
+ end
+
+EventScript_169903:: @ 8169903
+ call EventScript_1A737B
+ checkflag FLAG_0x2F4
+ goto_if 1, EventScript_169913
+ release
+ end
+
+EventScript_169913:: @ 8169913
+ closemessage
+ delay 40
+ message Text_1A7291
+ waitmessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_169964
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_16996F
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_16997A
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_169985
+ applymovement 4, Movement_1A75E1
+ waitmovement 0
+ closemessage
+ delay 70
+ loadword 0, gUnknown_81A72AD
+ callstd 4
+ setflag FLAG_0x002
+ release
+ end
+
+EventScript_169964:: @ 8169964
+ applymovement 4, Movement_169990
+ waitmovement 0
+ return
+
+EventScript_16996F:: @ 816996F
+ applymovement 4, Movement_169997
+ waitmovement 0
+ return
+
+EventScript_16997A:: @ 816997A
+ applymovement 4, Movement_16999E
+ waitmovement 0
+ return
+
+EventScript_169985:: @ 8169985
+ applymovement 4, Movement_1699A5
+ waitmovement 0
+ return
+
+Movement_169990:: @ 8169990
+ step_25
+ step_29
+ step_25
+ step_25
+ step_29
+ step_25
+ step_end
+
+Movement_169997:: @ 8169997
+ step_26
+ step_2a
+ step_26
+ step_26
+ step_2a
+ step_26
+ step_end
+
+Movement_16999E:: @ 816999E
+ step_27
+ step_2b
+ step_27
+ step_27
+ step_2b
+ step_27
+ step_end
+
+Movement_1699A5:: @ 81699A5
+ step_28
+ step_2c
+ step_28
+ step_28
+ step_2c
+ step_28
+ step_end
+
+Movement_1699AC:: @ 81699AC
+ step_12
+ step_2d
+ step_1b
+ step_30
+ step_1b
+ step_2e
+ step_1b
+ step_2f
+ step_1b
+ step_2d
+ step_1b
+ step_13
+ step_13
+ step_2e
+ step_1b
+ step_2f
+ step_1b
+ step_2d
+ step_1b
+ step_30
+ step_1b
+ step_2e
+ step_1b
+ step_12
+ step_end
+
+Movement_1699C5:
+ step_11
+ step_10
+ step_10
+ step_25
+ step_11
+ step_1c
+ step_1c
+ step_1c
+ step_end
+
+EventScript_1699CE:: @ 81699CE
+ call EventScript_1A737B
+ closemessage
+ compare_var_to_value VAR_0x8009, 60
+ goto_if 0, EventScript_1699F9
+ checkflag FLAG_SYS_RIBBON_GET
+ goto_if 0, EventScript_1699F9
+ delay 30
+ loadword 0, gUnknown_818EDF5
+ callstd 4
+ goto EventScript_169035
+ end
+
+EventScript_1699F9:: @ 81699F9
+ release
+ end
+
+EventScript_1699FB:: @ 81699FB
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ checkflag FLAG_0x24F
+ goto_if 1, EventScript_169A6E
+ checkflag FLAG_0x247
+ goto_if 1, EventScript_169A78
+ checkitem ITEM_POKE_BALL, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_169A34
+ goto EventScript_169A6E
+ end
+
+EventScript_169A34:: @ 8169A34
+ compare_var_to_value VAR_0x4054, 2
+ goto_if 4, EventScript_169A45
+ goto EventScript_169A6E
+ end
+
+EventScript_169A45:: @ 8169A45
+ loadword 0, gUnknown_818E89C
+ callstd 4
+ additem ITEM_POKE_BALL, 5
+ loadword 0, gUnknown_818E6B3
+ setorcopyvar VAR_0x8000, 4
+ setorcopyvar VAR_0x8001, 5
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x247
+ release
+ end
+
+EventScript_169A6E:: @ 8169A6E
+ loadword 0, gUnknown_818E871
+ callstd 4
+ release
+ end
+
+EventScript_169A78:: @ 8169A78
+ loadword 0, gUnknown_818E98E
+ callstd 4
+ release
+ end
+
+EventScript_169A82:: @ 8169A82
+ setobjectxyperm 8, 5, 10
+ addobject 8
+ applymovement 255, Movement_169B94
+ applymovement 8, Movement_169B9D
+ waitmovement 0
+ return
+
+EventScript_169A9E:: @ 8169A9E
+ setobjectxyperm 8, 6, 10
+ addobject 8
+ applymovement 4, Movement_1A75ED
+ applymovement 255, Movement_169B91
+ applymovement 8, Movement_169B9D
+ waitmovement 0
+ return
+
+EventScript_169AC1:: @ 8169AC1
+ setobjectxyperm 8, 6, 10
+ addobject 8
+ applymovement 4, Movement_1A75ED
+ applymovement 8, Movement_169B9D
+ waitmovement 0
+ return
+
+EventScript_169ADD:: @ 8169ADD
+ applymovement 4, Movement_1A75E1
+ waitmovement 0
+ delay 15
+ applymovement 4, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_169AF5:: @ 8169AF5
+ applymovement 4, Movement_1A75E1
+ waitmovement 0
+ delay 15
+ applymovement 255, Movement_1A75E7
+ applymovement 4, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_169B14:: @ 8169B14
+ applymovement 4, Movement_1A75E1
+ waitmovement 0
+ delay 15
+ applymovement 255, Movement_1A75EB
+ applymovement 4, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_169B33:: @ 8169B33
+ applymovement 8, Movement_1A75E1
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_169B45:: @ 8169B45
+ applymovement 8, Movement_1A75E9
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_169B57:: @ 8169B57
+ applymovement 8, Movement_1A75E1
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_169B69:: @ 8169B69
+ applymovement 255, Movement_169B91
+ applymovement 8, Movement_169BA4
+ waitmovement 0
+ return
+
+EventScript_169B7B:: @ 8169B7B
+ applymovement 8, Movement_169BA4
+ waitmovement 0
+ return
+
+EventScript_169B86:: @ 8169B86
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+Movement_169B91:: @ 8169B91
+ step_1a
+ step_2d
+ step_end
+
+Movement_169B94:: @ 8169B94
+ step_2d
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1b
+ step_2f
+ step_end
+
+Movement_169B9D:: @ 8169B9D
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_169BA4:: @ 8169BA4
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+PalletTown_ProfessorOaksLab_EventScript_169BAB:: @ 8169BAB
+ lock
+ faceplayer
+ setvar VAR_0x4001, 0
+ setvar VAR_0x4002, 1
+ setvar VAR_0x4003, 4
+ setvar VAR_0x4004, 7
+ compare_var_to_value VAR_0x4055, 3
+ goto_if 4, EventScript_169DE4
+ compare_var_to_value VAR_0x4055, 2
+ goto_if 1, EventScript_169BE1
+ loadword 0, gUnknown_818EA19
+ callstd 4
+ release
+ end
+
+EventScript_169BE1:: @ 8169BE1
+ applymovement 4, Movement_1A75EF
+ waitmovement 0
+ drawmonpic 16386, 10, 3
+ textcolor 0
+ compare_var_to_value VAR_0x4001, 0
+ goto_if 1, EventScript_169C14
+ compare_var_to_value VAR_0x4001, 1
+ goto_if 1, EventScript_169C33
+ compare_var_to_value VAR_0x4001, 2
+ goto_if 1, EventScript_169C52
+ end
+
+EventScript_169C14:: @ 8169C14
+ loadword 0, gUnknown_818E272
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_169C74
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_169C71
+ end
+
+EventScript_169C33:: @ 8169C33
+ loadword 0, gUnknown_818E207
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_169C74
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_169C71
+ end
+
+EventScript_169C52:: @ 8169C52
+ loadword 0, gUnknown_818E194
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_169C74
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_169C71
+ end
+
+EventScript_169C71:: @ 8169C71
+ erasemonpic
+ release
+ end
+
+EventScript_169C74:: @ 8169C74
+ erasemonpic
+ removeobject VAR_LAST_TALKED
+ loadword 0, gUnknown_818E2E5
+ callstd 4
+ call EventScript_1A6675
+ setflag 2088
+ setflag FLAG_0x291
+ givemon 16386, 5, ITEM_NONE, 0, 0, 0
+ copyvar VAR_STARTER_MON, VAR_0x4001
+ getspeciesname 0, 16386
+ message Text_18E30D
+ waitmessage
+ playfanfare BGM_FRLG_ME_KEYITEM
+ waitfanfare
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_169CCC
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_169CDC
+ end
+
+EventScript_169CCC:: @ 8169CCC
+ setvar VAR_0x8004, 0
+ call EventScript_1A74EB
+ goto EventScript_169CDC
+ end
+
+EventScript_169CDC:: @ 8169CDC
+ closemessage
+ compare_var_to_value VAR_0x4001, 0
+ goto_if 1, EventScript_169CFF
+ compare_var_to_value VAR_0x4001, 1
+ goto_if 1, EventScript_169D1F
+ compare_var_to_value VAR_0x4001, 2
+ goto_if 1, EventScript_169D0F
+ end
+
+EventScript_169CFF:: @ 8169CFF
+ applymovement 8, Movement_169D62
+ waitmovement 0
+ goto EventScript_169D2F
+ end
+
+EventScript_169D0F:: @ 8169D0F
+ applymovement 8, Movement_169D6B
+ waitmovement 0
+ goto EventScript_169D2F
+ end
+
+EventScript_169D1F:: @ 8169D1F
+ applymovement 8, Movement_169D72
+ waitmovement 0
+ goto EventScript_169D2F
+ end
+
+EventScript_169D2F:: @ 8169D2F
+ textcolor 0
+ loadword 0, gUnknown_818DD34
+ callstd 4
+ removeobject VAR_0x4004
+ textcolor 3
+ getspeciesname 0, 16387
+ message Text_18DD52
+ waitmessage
+ playfanfare BGM_FRLG_ME_KEYITEM
+ waitfanfare
+ setvar VAR_0x4055, 3
+ checkflag 2110
+ call_if 1, EventScript_169D5C
+ release
+ end
+
+EventScript_169D5C:: @ 8169D5C
+ setvar VAR_0x4070, 1
+ return
+
+Movement_169D62:: @ 8169D62
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_11
+ step_end
+
+Movement_169D6B:: @ 8169D6B
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2e
+ step_end
+
+Movement_169D72:: @ 8169D72
+ step_10
+ step_13
+ step_13
+ step_13
+ step_2e
+ step_end
+
+PalletTown_ProfessorOaksLab_EventScript_169D78:: @ 8169D78
+ lock
+ faceplayer
+ setvar VAR_0x4001, 1
+ setvar VAR_0x4002, 7
+ setvar VAR_0x4003, 1
+ setvar VAR_0x4004, 5
+ compare_var_to_value VAR_0x4055, 3
+ goto_if 4, EventScript_169DE4
+ compare_var_to_value VAR_0x4055, 2
+ goto_if 1, EventScript_169BE1
+ loadword 0, gUnknown_818EA19
+ callstd 4
+ release
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_169DAE:: @ 8169DAE
+ lock
+ faceplayer
+ setvar VAR_0x4001, 2
+ setvar VAR_0x4002, 4
+ setvar VAR_0x4003, 7
+ setvar VAR_0x4004, 6
+ compare_var_to_value VAR_0x4055, 3
+ goto_if 4, EventScript_169DE4
+ compare_var_to_value VAR_0x4055, 2
+ goto_if 1, EventScript_169BE1
+ loadword 0, gUnknown_818EA19
+ callstd 4
+ release
+ end
+
+EventScript_169DE4:: @ 8169DE4
+ loadword 0, gUnknown_818EA45
+ callstd 4
+ release
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_169DEE:: @ 8169DEE
+ lock
+ faceplayer
+ checkflag 2092
+ goto_if 1, EventScript_169E03
+ loadword 0, gUnknown_818EBE6
+ callstd 4
+ release
+ end
+
+EventScript_169E03:: @ 8169E03
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8005, 5
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_818ED15
+ callstd 4
+ release
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_169E1A:: @ 8169E1A
+ lock
+ faceplayer
+ checkflag 2092
+ goto_if 1, EventScript_169E2F
+ loadword 0, gUnknown_818EBE6
+ callstd 4
+ release
+ end
+
+EventScript_169E2F:: @ 8169E2F
+ setvar VAR_0x8004, 1
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_818EC0B
+ callstd 4
+ release
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_169E46:: @ 8169E46
+ lock
+ faceplayer
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_818ED81
+ callstd 4
+ release
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_169E5F:: @ 8169E5F
+ loadword 0, gUnknown_818E9E5
+ callstd 2
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_169E68:: @ 8169E68
+ loadword 0, gUnknown_818EAF4
+ callstd 3
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_169E71:: @ 8169E71
+ loadword 0, gUnknown_818EA66
+ callstd 3
+ end
+
+PalletTown_ProfessorOaksLab_EventScript_169E7A:: @ 8169E7A
+ lockall
+ compare_var_to_value VAR_0x4055, 6
+ goto_if 4, EventScript_169E90
+ loadword 0, gUnknown_818EA84
+ callstd 4
+ releaseall
+ end
+
+EventScript_169E90:: @ 8169E90
+ loadword 0, gUnknown_818EAB6
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/PewterCity/scripts.inc b/data/maps/PewterCity/scripts.inc
new file mode 100644
index 000000000..25d32949d
--- /dev/null
+++ b/data/maps/PewterCity/scripts.inc
@@ -0,0 +1,1614 @@
+PewterCity_MapScripts:: @ 8165B8E
+ map_script 3, PewterCity_MapScript1_165B94
+ .byte 0
+
+PewterCity_MapScript1_165B94:: @ 8165B94
+ setworldmapflag 2194
+ setvar VAR_0x4061, 0
+ end
+
+PewterCity_EventScript_165B9D:: @ 8165B9D
+ lock
+ faceplayer
+ loadword 0, gUnknown_817E67E
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_FOLLOW_ME, 0
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_165BD3
+ loadword 0, gUnknown_817E6C7
+ callstd 4
+ closemessage
+ applymovement 5, Movement_165D83
+ waitmovement 0
+ fadedefaultbgm
+ removeobject 5
+ clearflag FLAG_0x02E
+ release
+ end
+
+EventScript_165BD3:: @ 8165BD3
+ applymovement 255, Movement_165C3C
+ applymovement 5, Movement_165CDE
+ waitmovement 0
+ applymovement 255, Movement_165C41
+ applymovement 5, Movement_165CE3
+ waitmovement 0
+ return
+
+EventScript_165BF6:: @ 8165BF6
+ applymovement 255, Movement_165C80
+ applymovement 5, Movement_165D23
+ waitmovement 0
+ applymovement 255, Movement_165C82
+ applymovement 5, Movement_165D25
+ waitmovement 0
+ return
+
+EventScript_165C19:: @ 8165C19
+ applymovement 255, Movement_165CAF
+ applymovement 5, Movement_165D53
+ waitmovement 0
+ applymovement 255, Movement_165CB1
+ applymovement 5, Movement_165D55
+ waitmovement 0
+ return
+
+Movement_165C3C:: @ 8165C3C
+ step_1c
+ step_1c
+ step_1a
+ step_2d
+ step_end
+
+Movement_165C41:: @ 8165C41
+ step_10
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_165C80:: @ 8165C80
+ step_1c
+ step_end
+
+Movement_165C82:: @ 8165C82
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_end
+
+Movement_165CAF:: @ 8165CAF
+ step_1c
+ step_end
+
+Movement_165CB1:: @ 8165CB1
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_end
+
+Movement_165CDE:: @ 8165CDE
+ step_10
+ step_12
+ step_2e
+ step_26
+ step_end
+
+Movement_165CE3:: @ 8165CE3
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2f
+ step_end
+
+Movement_165D23:: @ 8165D23
+ step_28
+ step_end
+
+Movement_165D25:: @ 8165D25
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_2f
+ step_end
+
+Movement_165D53:: @ 8165D53
+ step_25
+ step_end
+
+Movement_165D55:: @ 8165D55
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_2f
+ step_end
+
+Movement_165D83:: @ 8165D83
+ step_10
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_end
+
+PewterCity_EventScript_165D8E:: @ 8165D8E
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_165DBE
+ end
+
+PewterCity_EventScript_165D9A:: @ 8165D9A
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_165DBE
+ end
+
+PewterCity_EventScript_165DA6:: @ 8165DA6
+ lockall
+ setvar VAR_0x4001, 2
+ goto EventScript_165DBE
+ end
+
+PewterCity_EventScript_165DB2:: @ 8165DB2
+ lockall
+ setvar VAR_0x4001, 3
+ goto EventScript_165DBE
+ end
+
+EventScript_165DBE:: @ 8165DBE
+ textcolor 0
+ loadword 0, gUnknown_817E67E
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_FOLLOW_ME, 0
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_165E0A
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_165E26
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_165E42
+ loadword 0, gUnknown_817E6C7
+ callstd 4
+ closemessage
+ applymovement 5, Movement_165D83
+ waitmovement 0
+ fadedefaultbgm
+ removeobject 5
+ clearflag FLAG_0x02E
+ releaseall
+ end
+
+EventScript_165E0A:: @ 8165E0A
+ applymovement 5, Movement_165F6C
+ waitmovement 0
+ applymovement 255, Movement_165E7A
+ applymovement 5, Movement_165F7F
+ waitmovement 0
+ return
+
+EventScript_165E26:: @ 8165E26
+ applymovement 5, Movement_165F71
+ waitmovement 0
+ applymovement 255, Movement_165EB9
+ applymovement 5, Movement_165FBF
+ waitmovement 0
+ return
+
+EventScript_165E42:: @ 8165E42
+ applymovement 5, Movement_165F74
+ waitmovement 0
+ applymovement 255, Movement_165EF9
+ applymovement 5, Movement_166000
+ waitmovement 0
+ return
+
+EventScript_165E5E:: @ 8165E5E
+ applymovement 5, Movement_165F78
+ waitmovement 0
+ applymovement 255, Movement_165F3A
+ applymovement 5, Movement_166042
+ waitmovement 0
+ return
+
+Movement_165E7A:: @ 8165E7A
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_165EB9:: @ 8165EB9
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_165EF9:: @ 8165EF9
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_165F3A:: @ 8165F3A
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_end
+
+Movement_165F6C:: @ 8165F6C
+ step_12
+ step_10
+ step_30
+ step_28
+ step_end
+
+Movement_165F71:: @ 8165F71
+ step_10
+ step_25
+ step_end
+
+Movement_165F74:: @ 8165F74
+ step_10
+ step_10
+ step_25
+ step_end
+
+Movement_165F78:: @ 8165F78
+ step_10
+ step_10
+ step_13
+ step_10
+ step_13
+ step_28
+ step_end
+
+Movement_165F7F:: @ 8165F7F
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2f
+ step_end
+
+Movement_165FBF:: @ 8165FBF
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2f
+ step_end
+
+Movement_166000:: @ 8166000
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2f
+ step_end
+
+Movement_166042:: @ 8166042
+ step_12
+ step_12
+ step_12
+ step_11
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_2f
+ step_end
+
+PewterCity_EventScript_166075:: @ 8166075
+ loadword 0, gUnknown_817E436
+ callstd 2
+ end
+
+PewterCity_EventScript_16607E:: @ 816607E
+ lock
+ faceplayer
+ loadword 0, gUnknown_817E53E
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_166136
+ loadword 0, gUnknown_817E589
+ callstd 4
+ closemessage
+ delay 10
+ playbgm BGM_FRLG_FOLLOW_ME, 0
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_1660EE
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_166100
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_166112
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_166124
+ loadword 0, gUnknown_817E5AC
+ callstd 4
+ closemessage
+ delay 10
+ applymovement 2, Movement_16621C
+ waitmovement 0
+ fadedefaultbgm
+ removeobject 2
+ clearflag FLAG_0x050
+ release
+ end
+
+EventScript_1660EE:: @ 81660EE
+ applymovement 2, Movement_16615C
+ applymovement 255, Movement_166140
+ waitmovement 0
+ return
+
+EventScript_166100:: @ 8166100
+ applymovement 2, Movement_166193
+ applymovement 255, Movement_166177
+ waitmovement 0
+ return
+
+EventScript_166112:: @ 8166112
+ applymovement 2, Movement_1661CA
+ applymovement 255, Movement_1661AE
+ waitmovement 0
+ return
+
+EventScript_166124:: @ 8166124
+ applymovement 2, Movement_166201
+ applymovement 255, Movement_1661E5
+ waitmovement 0
+ return
+
+EventScript_166136:: @ 8166136
+ loadword 0, gUnknown_817E55C
+ callstd 4
+ release
+ end
+
+Movement_166140:: @ 8166140
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_1b
+ step_2e
+ step_end
+
+Movement_16615C:: @ 816615C
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_2e
+ step_end
+
+Movement_166177:: @ 8166177
+ step_1c
+ step_1c
+ step_12
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_1b
+ step_2e
+ step_end
+
+Movement_166193:: @ 8166193
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_2e
+ step_end
+
+Movement_1661AE:: @ 81661AE
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_1b
+ step_2e
+ step_end
+
+Movement_1661CA:: @ 81661CA
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_2e
+ step_end
+
+Movement_1661E5:: @ 81661E5
+ step_13
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_1b
+ step_2e
+ step_end
+
+Movement_166201:: @ 8166201
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_2e
+ step_end
+
+Movement_16621C:: @ 816621C
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_13
+ step_end
+
+PewterCity_EventScript_16622B:: @ 816622B
+ lock
+ faceplayer
+ setvar VAR_0x8004, 2
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_817E49F
+ callstd 4
+ release
+ end
+
+PewterCity_EventScript_166244:: @ 8166244
+ lock
+ faceplayer
+ loadword 0, gUnknown_817E602
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_166263
+ loadword 0, gUnknown_817E644
+ callstd 4
+ release
+ end
+
+EventScript_166263:: @ 8166263
+ loadword 0, gUnknown_817E626
+ callstd 4
+ release
+ end
+
+PewterCity_EventScript_16626D:: @ 816626D
+ loadword 0, gUnknown_817E6F6
+ callstd 3
+ end
+
+PewterCity_EventScript_166276:: @ 8166276
+ loadword 0, gUnknown_817E748
+ callstd 3
+ end
+
+PewterCity_EventScript_16627F:: @ 816627F
+ loadword 0, gUnknown_817E7C5
+ callstd 3
+ end
+
+PewterCity_EventScript_166288:: @ 8166288
+ lockall
+ setvar VAR_0x8004, 2
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_817E7DE
+ callstd 4
+ releaseall
+ end
+
+PewterCity_EventScript_1662A0:: @ 81662A0
+ loadword 0, gUnknown_817E824
+ callstd 3
+ end
+
+PewterCity_EventScript_1662A9:: @ 81662A9
+ lock
+ faceplayer
+ setvar VAR_0x4001, 0
+ call EventScript_1662DE
+ release
+ end
+
+PewterCity_EventScript_1662B7:: @ 81662B7
+ lockall
+ setvar VAR_0x4001, 1
+ call EventScript_1662DE
+ releaseall
+ end
+
+PewterCity_EventScript_1662C4:: @ 81662C4
+ lockall
+ setvar VAR_0x4001, 2
+ call EventScript_1662DE
+ releaseall
+ end
+
+PewterCity_EventScript_1662D1:: @ 81662D1
+ lockall
+ setvar VAR_0x4001, 3
+ call EventScript_1662DE
+ releaseall
+ end
+
+EventScript_1662DE:: @ 81662DE
+ textcolor 0
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_1663CA
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_1663CA
+ compare_var_to_value VAR_0x4001, 3
+ call_if 1, EventScript_1663CA
+ waitse
+ playse SE_PIN
+ applymovement 7, Movement_1A75DB
+ waitmovement 0
+ applymovement 7, Movement_1A75DD
+ waitmovement 0
+ loadword 0, gUnknown_817E902
+ callstd 4
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_1663D5
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_1663DA
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_1663E6
+ compare_var_to_value VAR_0x4001, 3
+ call_if 1, EventScript_1663FC
+ loadword 0, gUnknown_817E90C
+ callstd 4
+ textcolor 3
+ playfanfare BGM_FRLG_ME_KEYITEM
+ message Text_17E970
+ waitmessage
+ waitfanfare
+ loadword 0, gUnknown_817E99D
+ callstd 4
+ special sub_80699BC
+ signmsg
+ loadword 0, gUnknown_817E9C7
+ callstd 4
+ normalmsg
+ call EventScript_1A6675
+ loadword 0, gUnknown_817EA06
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_166412
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16641D
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_166428
+ compare_var_to_value VAR_0x4001, 3
+ call_if 1, EventScript_166433
+ delay 30
+ textcolor 3
+ loadword 0, gUnknown_817EA36
+ callstd 4
+ closemessage
+ removeobject 7
+ setflag 2095
+ setvar VAR_0x406C, 2
+ return
+
+EventScript_1663CA:: @ 81663CA
+ applymovement 7, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_1663D5:: @ 81663D5
+ closemessage
+ delay 20
+ return
+
+EventScript_1663DA:: @ 81663DA
+ closemessage
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_1663E6:: @ 81663E6
+ closemessage
+ applymovement 7, Movement_16643E
+ waitmovement 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_1663FC:: @ 81663FC
+ closemessage
+ applymovement 7, Movement_166441
+ waitmovement 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_166412:: @ 8166412
+ applymovement 7, Movement_166445
+ waitmovement 0
+ return
+
+EventScript_16641D:: @ 816641D
+ applymovement 7, Movement_166450
+ waitmovement 0
+ return
+
+EventScript_166428:: @ 8166428
+ applymovement 7, Movement_16645B
+ waitmovement 0
+ return
+
+EventScript_166433:: @ 8166433
+ applymovement 7, Movement_166465
+ waitmovement 0
+ return
+
+Movement_16643E:: @ 816643E
+ step_1a
+ step_10
+ step_end
+
+Movement_166441:: @ 8166441
+ step_1a
+ step_10
+ step_10
+ step_end
+
+Movement_166445:: @ 8166445
+ step_10
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_end
+
+Movement_166450:: @ 8166450
+ step_12
+ step_10
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_end
+
+Movement_16645B:: @ 816645B
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_end
+
+Movement_166465:: @ 8166465
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_end
+
+Movement_16646F:: @ 816646F
+ step_27
+ step_end
diff --git a/data/maps/PewterCity_Gym/scripts.inc b/data/maps/PewterCity_Gym/scripts.inc
new file mode 100644
index 000000000..0ba35e23a
--- /dev/null
+++ b/data/maps/PewterCity_Gym/scripts.inc
@@ -0,0 +1,110 @@
+PewterCity_Gym_MapScripts:: @ 816A592
+ .byte 0
+
+PewterCity_Gym_EventScript_16A593:: @ 816A593
+ setvar VAR_0x8004, 2
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ trainerbattle 1, 414, 0, Text_190CD4, Text_190E4F, EventScript_16A5C5
+ checkflag FLAG_0x254
+ goto_if 0, EventScript_16A5F3
+ loadword 0, gUnknown_819110F
+ callstd 4
+ release
+ end
+
+EventScript_16A5C5:: @ 816A5C5
+ setvar VAR_0x8004, 2
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ setflag FLAG_0x4B0
+ setflag FLAG_UNK820
+ setvar VAR_0x406C, 1
+ setflag FLAG_0x02E
+ clearflag FLAG_0x092
+ setvar VAR_0x8008, 1
+ call EventScript_1A6B18
+ goto EventScript_16A5F3
+ end
+
+EventScript_16A5F3:: @ 816A5F3
+ loadword 0, gUnknown_8190FC1
+ callstd 4
+ checkitemspace ITEM_TM39, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16A634
+ additem ITEM_TM39, 1
+ loadword 0, gUnknown_8190FDB
+ setorcopyvar VAR_0x8000, 327
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x254
+ loadword 0, gUnknown_8190FF8
+ callstd 4
+ release
+ end
+
+EventScript_16A634:: @ 816A634
+ loadword 0, gUnknown_81911CE
+ callstd 4
+ release
+ end
+
+PewterCity_Gym_EventScript_16A63E:: @ 816A63E
+ trainerbattle 0, 142, 0, Text_1911EC, Text_191237
+ loadword 0, gUnknown_819126B
+ callstd 6
+ end
+
+PewterCity_Gym_EventScript_16A655:: @ 816A655
+ lock
+ faceplayer
+ checkflag FLAG_0x4B0
+ goto_if 1, EventScript_16A67F
+ loadword 0, gUnknown_8191298
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16A689
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16A697
+ end
+
+EventScript_16A67F:: @ 816A67F
+ loadword 0, gUnknown_819143C
+ callstd 4
+ release
+ end
+
+EventScript_16A689:: @ 816A689
+ loadword 0, gUnknown_819133C
+ callstd 4
+ goto EventScript_16A6A5
+ end
+
+EventScript_16A697:: @ 816A697
+ loadword 0, gUnknown_8191412
+ callstd 4
+ goto EventScript_16A6A5
+ end
+
+EventScript_16A6A5:: @ 816A6A5
+ loadword 0, gUnknown_819135C
+ callstd 4
+ release
+ end
+
+PewterCity_Gym_EventScript_16A6AF:: @ 816A6AF
+ lockall
+ checkflag FLAG_UNK820
+ goto_if 1, EventScript_16A6C3
+ loadword 0, gUnknown_819146E
+ callstd 4
+ releaseall
+ end
+
+EventScript_16A6C3:: @ 816A6C3
+ loadword 0, gUnknown_81914A4
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/PewterCity_House1/scripts.inc b/data/maps/PewterCity_House1/scripts.inc
new file mode 100644
index 000000000..b051c7c2d
--- /dev/null
+++ b/data/maps/PewterCity_House1/scripts.inc
@@ -0,0 +1,34 @@
+PewterCity_House1_MapScripts:: @ 816A71C
+ .byte 0
+
+PewterCity_House1_EventScript_16A71D:: @ 816A71D
+ loadword 0, gUnknown_81915DB
+ callstd 2
+ end
+
+PewterCity_House1_EventScript_16A726:: @ 816A726
+ lock
+ loadword 0, gUnknown_81915CD
+ callstd 4
+ call EventScript_16A749
+ release
+ end
+
+PewterCity_House1_EventScript_16A736:: @ 816A736
+ lock
+ faceplayer
+ call EventScript_16A749
+ applymovement 3, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+EventScript_16A749:: @ 816A749
+ textcolor 3
+ waitse
+ playmoncry SPECIES_NIDORAN_M, 0
+ loadword 0, gUnknown_81915BB
+ callstd 4
+ waitmoncry
+ call EventScript_1A6675
+ return
diff --git a/data/maps/PewterCity_House2/scripts.inc b/data/maps/PewterCity_House2/scripts.inc
new file mode 100644
index 000000000..8b706eeac
--- /dev/null
+++ b/data/maps/PewterCity_House2/scripts.inc
@@ -0,0 +1,12 @@
+PewterCity_House2_MapScripts:: @ 816A7DC
+ .byte 0
+
+PewterCity_House2_EventScript_16A7DD:: @ 816A7DD
+ loadword 0, gUnknown_81917E4
+ callstd 2
+ end
+
+PewterCity_House2_EventScript_16A7E6:: @ 816A7E6
+ loadword 0, gUnknown_8191840
+ callstd 2
+ end
diff --git a/data/maps/PewterCity_Mart/scripts.inc b/data/maps/PewterCity_Mart/scripts.inc
new file mode 100644
index 000000000..ea0a47028
--- /dev/null
+++ b/data/maps/PewterCity_Mart/scripts.inc
@@ -0,0 +1,40 @@
+PewterCity_Mart_MapScripts:: @ 816A6CD
+ .byte 0
+
+PewterCity_Mart_EventScript_16A6CE:: @ 816A6CE
+ loadword 0, gUnknown_81914DE
+ callstd 2
+ end
+
+PewterCity_Mart_EventScript_16A6D7:: @ 816A6D7
+ loadword 0, gUnknown_8191541
+ callstd 2
+ end
+
+PewterCity_Mart_EventScript_16A6E0:: @ 816A6E0
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16A708
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16A708:: @ 816A708
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_BURN_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_REPEL
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/PewterCity_Museum_1F/scripts.inc b/data/maps/PewterCity_Museum_1F/scripts.inc
new file mode 100644
index 000000000..f597dd916
--- /dev/null
+++ b/data/maps/PewterCity_Museum_1F/scripts.inc
@@ -0,0 +1,228 @@
+PewterCity_Museum_1F_MapScripts:: @ 816A31A
+ .byte 0
+
+PewterCity_Museum_1F_EventScript_16A31B:: @ 816A31B
+ lock
+ faceplayer
+ compare_var_to_value VAR_FACING, 3
+ goto_if 1, EventScript_16A348
+ compare_var_to_value VAR_FACING, 1
+ goto_if 1, EventScript_16A348
+ compare_var_to_value VAR_FACING, 2
+ goto_if 1, EventScript_16A348
+ loadword 0, gUnknown_8190539
+ callstd 4
+ release
+ end
+
+EventScript_16A348:: @ 816A348
+ loadword 0, gUnknown_8190550
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16A367
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16A37B
+ end
+
+EventScript_16A367:: @ 816A367
+ loadword 0, gUnknown_81905B1
+ callstd 4
+ applymovement 1, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+EventScript_16A37B:: @ 816A37B
+ loadword 0, gUnknown_8190627
+ callstd 4
+ applymovement 1, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+PewterCity_Museum_1F_EventScript_16A38F:: @ 816A38F
+ lockall
+ setvar VAR_0x4001, 0
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ goto EventScript_16A3D1
+ end
+
+PewterCity_Museum_1F_EventScript_16A3A5:: @ 816A3A5
+ lockall
+ setvar VAR_0x4001, 1
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ goto EventScript_16A3D1
+ end
+
+PewterCity_Museum_1F_EventScript_16A3BB:: @ 816A3BB
+ lockall
+ setvar VAR_0x4001, 2
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ goto EventScript_16A3D1
+ end
+
+EventScript_16A3D1:: @ 816A3D1
+ textcolor 0
+ showmoneybox 0, 0, 0
+ loadword 0, gUnknown_81904B5
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16A402
+ loadword 0, gUnknown_81904F9
+ callstd 4
+ closemessage
+ hidemoneybox
+ .byte 0
+ .byte 0
+ applymovement 255, Movement_16A48E
+ waitmovement 0
+ releaseall
+ end
+
+EventScript_16A402:: @ 816A402
+ checkmoney 50, 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16A476
+ closemessage
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16A455
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16A460
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_16A46B
+ playse 248
+ takemoney 50, 0
+ updatemoneybox 0, 0, 0
+ waitse
+ loadword 0, gUnknown_8190505
+ callstd 4
+ setvar VAR_0x4061, 1
+ hidemoneybox
+ .byte 0
+ .byte 0
+ releaseall
+ end
+
+EventScript_16A455:: @ 816A455
+ applymovement 255, Movement_16A490
+ waitmovement 0
+ return
+
+EventScript_16A460:: @ 816A460
+ applymovement 255, Movement_16A495
+ waitmovement 0
+ return
+
+EventScript_16A46B:: @ 816A46B
+ applymovement 255, Movement_16A499
+ waitmovement 0
+ return
+
+EventScript_16A476:: @ 816A476
+ loadword 0, gUnknown_819051C
+ callstd 4
+ closemessage
+ hidemoneybox
+ .byte 0
+ .byte 0
+ applymovement 255, Movement_16A48E
+ waitmovement 0
+ releaseall
+ end
+
+Movement_16A48E:: @ 816A48E
+ step_10
+ step_end
+
+Movement_16A490:: @ 816A490
+ step_13
+ step_13
+ step_1b
+ step_28
+ step_end
+
+Movement_16A495:: @ 816A495
+ step_13
+ step_1b
+ step_28
+ step_end
+
+Movement_16A499:: @ 816A499
+ step_1b
+ step_28
+ step_end
+
+PewterCity_Museum_1F_EventScript_16A49C:: @ 816A49C
+ loadword 0, gUnknown_81908CD
+ callstd 2
+ end
+
+PewterCity_Museum_1F_EventScript_16A4A5:: @ 816A4A5
+ loadword 0, gUnknown_81906B4
+ callstd 2
+ end
+
+PewterCity_Museum_1F_EventScript_16A4AE:: @ 816A4AE
+ lock
+ faceplayer
+ checkflag FLAG_0x25E
+ goto_if 1, EventScript_16A4FF
+ loadword 0, gUnknown_8190717
+ callstd 4
+ checkitemspace ITEM_OLD_AMBER, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16A4F5
+ setflag FLAG_0x25E
+ removeobject 4
+ additem ITEM_OLD_AMBER, 1
+ loadword 0, gUnknown_8190866
+ setorcopyvar VAR_0x8000, 354
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ release
+ end
+
+EventScript_16A4F5:: @ 816A4F5
+ loadword 0, gUnknown_81908AE
+ callstd 4
+ release
+ end
+
+EventScript_16A4FF:: @ 816A4FF
+ loadword 0, gUnknown_819088E
+ callstd 4
+ release
+ end
+
+PewterCity_Museum_1F_EventScript_16A509:: @ 816A509
+ loadword 0, gUnknown_819090A
+ callstd 2
+ end
+
+PewterCity_Museum_1F_EventScript_16A512:: @ 816A512
+ lockall
+ setvar VAR_0x8004, 142
+ setvar VAR_0x8005, 10
+ setvar VAR_0x8006, 3
+ special sub_809D504
+ loadword 0, gUnknown_8190945
+ callstd 4
+ special sub_809D620
+ releaseall
+ end
+
+PewterCity_Museum_1F_EventScript_16A532:: @ 816A532
+ lockall
+ setvar VAR_0x8004, 141
+ setvar VAR_0x8005, 10
+ setvar VAR_0x8006, 3
+ special sub_809D504
+ loadword 0, gUnknown_8190975
+ callstd 4
+ special sub_809D620
+ releaseall
+ end
diff --git a/data/maps/PewterCity_Museum_2F/scripts.inc b/data/maps/PewterCity_Museum_2F/scripts.inc
new file mode 100644
index 000000000..e41268793
--- /dev/null
+++ b/data/maps/PewterCity_Museum_2F/scripts.inc
@@ -0,0 +1,37 @@
+PewterCity_Museum_2F_MapScripts:: @ 816A552
+ .byte 0
+
+PewterCity_Museum_2F_EventScript_16A553:: @ 816A553
+ loadword 0, gUnknown_8190B30
+ callstd 2
+ end
+
+PewterCity_Museum_2F_EventScript_16A55C:: @ 816A55C
+ loadword 0, gUnknown_8190B80
+ callstd 2
+ end
+
+PewterCity_Museum_2F_EventScript_16A565:: @ 816A565
+ loadword 0, gUnknown_8190BF3
+ callstd 2
+ end
+
+PewterCity_Museum_2F_EventScript_16A56E:: @ 816A56E
+ loadword 0, gUnknown_8190C1E
+ callstd 2
+ end
+
+PewterCity_Museum_2F_EventScript_16A577:: @ 816A577
+ loadword 0, gUnknown_8190C60
+ callstd 2
+ end
+
+PewterCity_Museum_2F_EventScript_16A580:: @ 816A580
+ loadword 0, gUnknown_8190C81
+ callstd 3
+ end
+
+PewterCity_Museum_2F_EventScript_16A589:: @ 816A589
+ loadword 0, gUnknown_8190C8F
+ callstd 3
+ end
diff --git a/data/maps/PewterCity_PokemonCenter_1F/scripts.inc b/data/maps/PewterCity_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..ffdccea77
--- /dev/null
+++ b/data/maps/PewterCity_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,49 @@
+PewterCity_PokemonCenter_1F_MapScripts:: @ 816A760
+ map_script 3, PewterCity_PokemonCenter_1F_MapScript1_16A76B
+ map_script 5, PewterCity_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+PewterCity_PokemonCenter_1F_MapScript1_16A76B:: @ 816A76B
+ setrespawn 3
+ end
+
+PewterCity_PokemonCenter_1F_EventScript_16A76F:: @ 816A76F
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+PewterCity_PokemonCenter_1F_EventScript_16A778:: @ 816A778
+ loadword 0, gUnknown_81916A9
+ callstd 2
+ end
+
+PewterCity_PokemonCenter_1F_EventScript_16A781:: @ 816A781
+ lock
+ faceplayer
+ fadeoutbgm 0
+ playbgm BGM_FRLG_JIGGLYPUFF, 0
+ message Text_1916EA
+ waitmessage
+ delay 455
+ playbgm BGM_FRLG_POKEMON_CENTER, 1
+ release
+ end
+
+PewterCity_PokemonCenter_1F_EventScript_16A798:: @ 816A798
+ loadword 0, gUnknown_8191701
+ callstd 2
+ end
+
+PewterCity_PokemonCenter_1F_EventScript_16A7A1:: @ 816A7A1
+ lock
+ loadword 0, gUnknown_8191743
+ callstd 4
+ release
+ end
+
+PewterCity_PokemonCenter_1F_EventScript_16A7AC:: @ 816A7AC
+ loadword 0, gUnknown_8191780
+ callstd 2
+ end
diff --git a/data/maps/PewterCity_PokemonCenter_2F/scripts.inc b/data/maps/PewterCity_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..7f019d782
--- /dev/null
+++ b/data/maps/PewterCity_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+PewterCity_PokemonCenter_2F_MapScripts:: @ 816A7B5
+ map_script 2, PewterCity_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, PewterCity_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, PewterCity_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, PewterCity_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+PewterCity_PokemonCenter_2F_EventScript_16A7CA:: @ 816A7CA
+ call EventScript_1BB4A3
+ end
+
+EventScript_16A7D0:: @ 816A7D0
+ call EventScript_1BB6AB
+ end
+
+EventScript_16A7D6:: @ 816A7D6
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/PokemonLeague_AgathasRoom/scripts.inc b/data/maps/PokemonLeague_AgathasRoom/scripts.inc
new file mode 100644
index 000000000..6fce65046
--- /dev/null
+++ b/data/maps/PokemonLeague_AgathasRoom/scripts.inc
@@ -0,0 +1,110 @@
+PokemonLeague_AgathasRoom_MapScripts:: @ 8162810
+ map_script 5, PokemonLeague_AgathasRoom_MapScript1_162825
+ map_script 1, PokemonLeague_AgathasRoom_MapScript2_162830
+ map_script 4, PokemonLeague_AgathasRoom_MapScript3_162851
+ map_script 2, PokemonLeague_AgathasRoom_MapScript4_162860
+ .byte 0
+
+PokemonLeague_AgathasRoom_MapScript1_162825:: @ 8162825
+ setvar VAR_0x8004, 2
+ call EventScript_1A75D5
+ end
+
+PokemonLeague_AgathasRoom_MapScript2_162830:: @ 8162830
+ checkflag FLAG_0x4BA
+ call_if 1, EventScript_16284B
+ compare_var_to_value VAR_0x4068, 3
+ call_if 1, EventScript_162845
+ end
+
+EventScript_162845:: @ 8162845
+ call EventScript_1A759C
+ return
+
+EventScript_16284B:: @ 816284B
+ call EventScript_1A7538
+ return
+
+PokemonLeague_AgathasRoom_MapScript3_162851:: @ 8162851
+ map_script_2 VAR_0x4001, 0, EventScript_16285B
+ .2byte 0
+
+EventScript_16285B:: @ 816285B
+ turnobject 255, 2
+ end
+
+PokemonLeague_AgathasRoom_MapScript4_162860:: @ 8162860
+ map_script_2 VAR_0x4068, 2, EventScript_16286A
+ .2byte 0
+
+EventScript_16286A:: @ 816286A
+ lockall
+ call EventScript_1A751F
+ setvar VAR_0x4068, 3
+ releaseall
+ end
+
+PokemonLeague_AgathasRoom_EventScript_162877:: @ 8162877
+ lock
+ faceplayer
+ setvar VAR_0x8004, 11
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ checkflag FLAG_0x4BA
+ goto_if 1, EventScript_162911
+ setvar VAR_0x8004, 11
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ setvar VAR_0x8004, 11
+ setvar VAR_0x8005, 4
+ special SetFlavorTextFlagFromSpecialVars
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8005, 4
+ special SetFlavorTextFlagFromSpecialVars
+ checkflag 2092
+ call_if 0, EventScript_1628E9
+ checkflag 2092
+ call_if 1, EventScript_1628F2
+ setflag FLAG_0x003
+ setflag FLAG_0x005
+ checkflag 2116
+ call_if 0, EventScript_1628FB
+ checkflag 2116
+ call_if 1, EventScript_162906
+ clearflag FLAG_0x005
+ goto EventScript_16291B
+
+EventScript_1628E8:: @ 81628E8
+ end
+
+EventScript_1628E9:: @ 81628E9
+ loadword 0, gUnknown_817844D
+ callstd 4
+ return
+
+EventScript_1628F2:: @ 81628F2
+ loadword 0, gUnknown_817858D
+ callstd 4
+ return
+
+EventScript_1628FB:: @ 81628FB
+ trainerbattle 3, 412, 0, Text_1786D7
+ return
+
+EventScript_162906:: @ 8162906
+ trainerbattle 3, 737, 0, Text_1786D7
+ return
+
+EventScript_162911:: @ 8162911
+ loadword 0, gUnknown_8178700
+ callstd 4
+ release
+ end
+
+EventScript_16291B:: @ 816291B
+ setflag FLAG_0x4BA
+ call EventScript_1A7506
+ loadword 0, gUnknown_8178700
+ callstd 4
+ release
+ end
diff --git a/data/maps/PokemonLeague_BrunosRoom/scripts.inc b/data/maps/PokemonLeague_BrunosRoom/scripts.inc
new file mode 100644
index 000000000..41116d4cd
--- /dev/null
+++ b/data/maps/PokemonLeague_BrunosRoom/scripts.inc
@@ -0,0 +1,140 @@
+PokemonLeague_BrunosRoom_MapScripts:: @ 8162685
+ map_script 5, PokemonLeague_BrunosRoom_MapScript1_16269A
+ map_script 1, PokemonLeague_BrunosRoom_MapScript2_1626A5
+ map_script 4, PokemonLeague_BrunosRoom_MapScript3_1626C6
+ map_script 2, PokemonLeague_BrunosRoom_MapScript4_1626D5
+ .byte 0
+
+PokemonLeague_BrunosRoom_MapScript1_16269A:: @ 816269A
+ setvar VAR_0x8004, 1
+ call EventScript_1A75D5
+ end
+
+PokemonLeague_BrunosRoom_MapScript2_1626A5:: @ 81626A5
+ checkflag FLAG_0x4B9
+ call_if 1, EventScript_1626C0
+ compare_var_to_value VAR_0x4068, 2
+ call_if 1, EventScript_1626BA
+ end
+
+EventScript_1626BA:: @ 81626BA
+ call EventScript_1A759C
+ return
+
+EventScript_1626C0:: @ 81626C0
+ call EventScript_1A7538
+ return
+
+PokemonLeague_BrunosRoom_MapScript3_1626C6:: @ 81626C6
+ map_script_2 VAR_0x4001, 0, EventScript_1626D0
+ .2byte 0
+
+EventScript_1626D0:: @ 81626D0
+ turnobject 255, 2
+ end
+
+PokemonLeague_BrunosRoom_MapScript4_1626D5:: @ 81626D5
+ map_script_2 VAR_0x4068, 1, EventScript_1626DF
+ .2byte 0
+
+EventScript_1626DF:: @ 81626DF
+ lockall
+ call EventScript_1A751F
+ setvar VAR_0x4068, 2
+ releaseall
+ end
+
+PokemonLeague_BrunosRoom_EventScript_1626EC:: @ 81626EC
+ lock
+ faceplayer
+ setvar VAR_0x8004, 10
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ checkflag FLAG_0x4B9
+ goto_if 1, EventScript_162779
+ setvar VAR_0x8004, 10
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ setvar VAR_0x8004, 10
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ checkflag 2092
+ call_if 0, EventScript_162751
+ checkflag 2092
+ call_if 1, EventScript_16275A
+ setflag FLAG_0x003
+ setflag FLAG_0x005
+ checkflag 2116
+ call_if 0, EventScript_162763
+ checkflag 2116
+ call_if 1, EventScript_16276E
+ clearflag FLAG_0x005
+ goto EventScript_1627B0
+
+EventScript_162750:: @ 8162750
+ end
+
+EventScript_162751:: @ 8162751
+ loadword 0, gUnknown_817820F
+ callstd 4
+ return
+
+EventScript_16275A:: @ 816275A
+ loadword 0, gUnknown_817830C
+ callstd 4
+ return
+
+EventScript_162763:: @ 8162763
+ trainerbattle 3, 411, 0, Text_178409
+ return
+
+EventScript_16276E:: @ 816276E
+ trainerbattle 3, 736, 0, Text_178409
+ return
+
+EventScript_162779:: @ 8162779
+ loadword 0, gUnknown_8178420
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_1627FA
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_1627EF
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_162805
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_162805
+ release
+ end
+
+EventScript_1627B0:: @ 81627B0
+ setflag FLAG_0x4B9
+ call EventScript_1A7506
+ loadword 0, gUnknown_8178420
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_1627FA
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_1627EF
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_162805
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_162805
+ release
+ end
+
+EventScript_1627EF:: @ 81627EF
+ applymovement 1, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_1627FA:: @ 81627FA
+ applymovement 1, Movement_1A75EB
+ waitmovement 0
+ return
+
+EventScript_162805:: @ 8162805
+ applymovement 1, Movement_1A75ED
+ waitmovement 0
+ return
diff --git a/data/maps/PokemonLeague_ChampionsRoom/scripts.inc b/data/maps/PokemonLeague_ChampionsRoom/scripts.inc
new file mode 100644
index 000000000..367584edb
--- /dev/null
+++ b/data/maps/PokemonLeague_ChampionsRoom/scripts.inc
@@ -0,0 +1,254 @@
+PokemonLeague_ChampionsRoom_MapScripts:: @ 8162AE2
+ map_script 4, PokemonLeague_ChampionsRoom_MapScript1_162B5D
+ map_script 5, PokemonLeague_ChampionsRoom_MapScript2_162AF2
+ map_script 2, PokemonLeague_ChampionsRoom_MapScript3_162B6C
+ .byte 0
+
+PokemonLeague_ChampionsRoom_MapScript2_162AF2:: @ 8162AF2
+ setvar VAR_0x8004, 4
+ call EventScript_1A75D5
+ compare_var_to_value VAR_STARTER_MON, 2
+ call_if 1, EventScript_162B1E
+ compare_var_to_value VAR_STARTER_MON, 1
+ call_if 1, EventScript_162B31
+ compare_var_to_value VAR_STARTER_MON, 0
+ call_if 1, EventScript_162B44
+ end
+
+EventScript_162B1E:: @ 8162B1E
+ checktrainerflag 438
+ goto_if 1, EventScript_162B57
+ checktrainerflag 739
+ goto_if 1, EventScript_162B57
+ return
+
+EventScript_162B31:: @ 8162B31
+ checktrainerflag 439
+ goto_if 1, EventScript_162B57
+ checktrainerflag 740
+ goto_if 1, EventScript_162B57
+ return
+
+EventScript_162B44:: @ 8162B44
+ checktrainerflag 440
+ goto_if 1, EventScript_162B57
+ checktrainerflag 741
+ goto_if 1, EventScript_162B57
+ return
+
+EventScript_162B57:: @ 8162B57
+ setvar VAR_0x4001, 1
+ return
+
+PokemonLeague_ChampionsRoom_MapScript1_162B5D:: @ 8162B5D
+ map_script_2 VAR_0x4001, 0, EventScript_162B67
+ .2byte 0
+
+EventScript_162B67:: @ 8162B67
+ turnobject 255, 2
+ end
+
+PokemonLeague_ChampionsRoom_MapScript3_162B6C:: @ 8162B6C
+ map_script_2 VAR_0x4001, 0, EventScript_162B76
+ .2byte 0
+
+EventScript_162B76:: @ 8162B76
+ lockall
+ textcolor 0
+ setflag FLAG_0x002
+ applymovement 255, Movement_162D07
+ waitmovement 0
+ delay 20
+ checkflag 2092
+ call_if 0, EventScript_162CB3
+ checkflag 2092
+ call_if 1, EventScript_162CBC
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_162C68
+ setflag FLAG_0x003
+ setflag FLAG_0x005
+ savebgm BGM_FRLG_KACHI_LEADER
+ checkflag 2116
+ call_if 0, EventScript_162C6F
+ checkflag 2116
+ call_if 1, EventScript_162C91
+ setflag FLAG_0x004
+ clearflag FLAG_0x005
+ setflag FLAG_0x4BC
+ setflag FLAG_0x004
+ loadword 0, gUnknown_8178F2F
+ callstd 4
+ playbgm BGM_FRLG_HALL_OF_FAME_PALLET_TOWN, 0
+ addobject 2
+ loadword 0, gUnknown_8178FC6
+ callstd 4
+ closemessage
+ applymovement 255, Movement_162D1F
+ applymovement 1, Movement_162D41
+ applymovement 2, Movement_162D2A
+ waitmovement 0
+ delay 25
+ specialvar VAR_RESULT, ScrSpecial_GetStarter
+ getspeciesname 0, 32781
+ loadword 0, gUnknown_8178FCF
+ callstd 4
+ applymovement 2, Movement_1A75EB
+ applymovement 1, Movement_1A75E7
+ waitmovement 0
+ loadword 0, gUnknown_817908F
+ callstd 4
+ closemessage
+ applymovement 2, Movement_1A75ED
+ waitmovement 0
+ delay 20
+ loadword 0, gUnknown_81791A3
+ callstd 4
+ closemessage
+ delay 13
+ applymovement 2, Movement_162D37
+ applymovement 255, Movement_162D12
+ waitmovement 0
+ setvar VAR_0x4001, 1
+ warp MAP_POKEMONLEAGUE_HALLOFFAME, 255, 5, 12
+ waitstate
+ releaseall
+ end
+
+EventScript_162C68:: @ 8162C68
+ call EventScript_162B57
+ releaseall
+ end
+
+EventScript_162C6F:: @ 8162C6F
+ compare_var_to_value VAR_STARTER_MON, 2
+ call_if 1, EventScript_162CC5
+ compare_var_to_value VAR_STARTER_MON, 1
+ call_if 1, EventScript_162CD0
+ compare_var_to_value VAR_STARTER_MON, 0
+ call_if 1, EventScript_162CDB
+ return
+
+EventScript_162C91:: @ 8162C91
+ compare_var_to_value VAR_STARTER_MON, 2
+ call_if 1, EventScript_162CE6
+ compare_var_to_value VAR_STARTER_MON, 1
+ call_if 1, EventScript_162CF1
+ compare_var_to_value VAR_STARTER_MON, 0
+ call_if 1, EventScript_162CFC
+ return
+
+EventScript_162CB3:: @ 8162CB3
+ loadword 0, gUnknown_8178B6C
+ callstd 4
+ return
+
+EventScript_162CBC:: @ 8162CBC
+ loadword 0, gUnknown_8178CD4
+ callstd 4
+ return
+
+EventScript_162CC5:: @ 8162CC5
+ trainerbattle 3, 438, 0, Text_178E3F
+ return
+
+EventScript_162CD0:: @ 8162CD0
+ trainerbattle 3, 439, 0, Text_178E3F
+ return
+
+EventScript_162CDB:: @ 8162CDB
+ trainerbattle 3, 440, 0, Text_178E3F
+ return
+
+EventScript_162CE6:: @ 8162CE6
+ trainerbattle 3, 739, 0, Text_178E3F
+ return
+
+EventScript_162CF1:: @ 8162CF1
+ trainerbattle 3, 740, 0, Text_178E3F
+ return
+
+EventScript_162CFC:: @ 8162CFC
+ trainerbattle 3, 741, 0, Text_178E3F
+ return
+
+Movement_162D07:: @ 8162D07
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_162D12:: @ 8162D12
+ step_1c
+ step_12
+ step_11
+ step_11
+ step_11
+ step_13
+ step_11
+ step_11
+ step_11
+ step_11
+ step_1b
+ step_60
+ step_end
+
+Movement_162D1F:: @ 8162D1F
+ step_1b
+ step_2d
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_2f
+ step_end
+
+Movement_162D2A:: @ 8162D2A
+ step_1c
+ step_1c
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_12
+ step_11
+ step_11
+ step_2d
+ step_1c
+ step_end
+
+Movement_162D37:: @ 8162D37
+ step_11
+ step_11
+ step_13
+ step_11
+ step_11
+ step_11
+ step_11
+ step_1b
+ step_60
+ step_end
+
+Movement_162D41:: @ 8162D41
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_2f
+ step_end
diff --git a/data/maps/PokemonLeague_HallOfFame/scripts.inc b/data/maps/PokemonLeague_HallOfFame/scripts.inc
new file mode 100644
index 000000000..2fd41e840
--- /dev/null
+++ b/data/maps/PokemonLeague_HallOfFame/scripts.inc
@@ -0,0 +1,55 @@
+PokemonLeague_HallOfFame_MapScripts:: @ 8162D4C
+ map_script 2, PokemonLeague_HallOfFame_MapScript1_162D66
+ map_script 4, PokemonLeague_HallOfFame_MapScript2_162D57
+ .byte 0
+
+PokemonLeague_HallOfFame_MapScript2_162D57:: @ 8162D57
+ map_script_2 VAR_0x4001, 0, EventScript_162D61
+ .2byte 0
+
+EventScript_162D61:: @ 8162D61
+ turnobject 255, 2
+ end
+
+PokemonLeague_HallOfFame_MapScript1_162D66:: @ 8162D66
+ map_script_2 VAR_0x4001, 0, EventScript_162D70
+ .2byte 0
+
+EventScript_162D70:: @ 8162D70
+ lockall
+ textcolor 0
+ applymovement 255, Movement_162DCD
+ waitmovement 0
+ applymovement 1, Movement_1A75E7
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ delay 18
+ loadword 0, gUnknown_817922F
+ callstd 4
+ closemessage
+ applymovement 1, Movement_1A75E9
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ delay 20
+ dofieldeffect 62
+ waitfieldeffect 62
+ delay 40
+ setvar VAR_0x4001, 1
+ call EventScript_1A651A
+ setrespawn 1
+ fadescreenspeed 1, 24
+ special sub_80CA2E4
+ waitstate
+ releaseall
+ end
+
+Movement_162DCD:: @ 8162DCD
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
diff --git a/data/maps/PokemonLeague_LancesRoom/scripts.inc b/data/maps/PokemonLeague_LancesRoom/scripts.inc
new file mode 100644
index 000000000..f3a181319
--- /dev/null
+++ b/data/maps/PokemonLeague_LancesRoom/scripts.inc
@@ -0,0 +1,184 @@
+PokemonLeague_LancesRoom_MapScripts:: @ 816292D
+ map_script 5, PokemonLeague_LancesRoom_MapScript1_162942
+ map_script 1, PokemonLeague_LancesRoom_MapScript2_16294D
+ map_script 4, PokemonLeague_LancesRoom_MapScript3_16296E
+ map_script 2, PokemonLeague_LancesRoom_MapScript4_16297D
+ .byte 0
+
+PokemonLeague_LancesRoom_MapScript1_162942:: @ 8162942
+ setvar VAR_0x8004, 3
+ call EventScript_1A75D5
+ end
+
+PokemonLeague_LancesRoom_MapScript2_16294D:: @ 816294D
+ compare_var_to_value VAR_0x4068, 4
+ call_if 1, EventScript_162962
+ checkflag FLAG_0x4BB
+ call_if 1, EventScript_162968
+ end
+
+EventScript_162962:: @ 8162962
+ call EventScript_1629A8
+ return
+
+EventScript_162968:: @ 8162968
+ call EventScript_1A7589
+ return
+
+PokemonLeague_LancesRoom_MapScript3_16296E:: @ 816296E
+ map_script_2 VAR_0x4001, 0, EventScript_162978
+ .2byte 0
+
+EventScript_162978:: @ 8162978
+ turnobject 255, 2
+ end
+
+PokemonLeague_LancesRoom_MapScript4_16297D:: @ 816297D
+ map_script_2 VAR_0x4068, 3, EventScript_162987
+ .2byte 0
+
+EventScript_162987:: @ 8162987
+ lockall
+ applymovement 255, Movement_1629F1
+ waitmovement 0
+ setflag FLAG_0x002
+ call EventScript_1629A8
+ playse SE_FU_ZAKU2
+ special DrawWholeMapView
+ waitse
+ setvar VAR_0x4068, 4
+ releaseall
+ end
+
+EventScript_1629A8:: @ 81629A8
+ setmetatile 5, 14, 669, 1
+ setmetatile 6, 14, 670, 1
+ setmetatile 7, 14, 671, 1
+ setmetatile 5, 15, 677, 1
+ setmetatile 6, 15, 678, 1
+ setmetatile 7, 15, 679, 1
+ setmetatile 6, 16, 785, 0
+ setmetatile 7, 16, 785, 0
+ return
+
+Movement_1629F1:: @ 81629F1
+ step_11
+ step_11
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+PokemonLeague_LancesRoom_EventScript_162A14:: @ 8162A14
+ lock
+ faceplayer
+ setvar VAR_0x8004, 12
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ checkflag FLAG_0x4BB
+ goto_if 1, EventScript_162AA1
+ setvar VAR_0x8004, 12
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ setvar VAR_0x8004, 12
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ checkflag 2092
+ call_if 0, EventScript_162A79
+ checkflag 2092
+ call_if 1, EventScript_162A82
+ setflag FLAG_0x003
+ setflag FLAG_0x005
+ checkflag 2116
+ call_if 0, EventScript_162A8B
+ checkflag 2116
+ call_if 1, EventScript_162A96
+ clearflag FLAG_0x005
+ goto EventScript_162AAB
+
+EventScript_162A78:: @ 8162A78
+ end
+
+EventScript_162A79:: @ 8162A79
+ loadword 0, gUnknown_8178764
+ callstd 4
+ return
+
+EventScript_162A82:: @ 8162A82
+ loadword 0, gUnknown_81788BD
+ callstd 4
+ return
+
+EventScript_162A8B:: @ 8162A8B
+ trainerbattle 3, 413, 0, Text_178A15
+ return
+
+EventScript_162A96:: @ 8162A96
+ trainerbattle 3, 738, 0, Text_178A15
+ return
+
+EventScript_162AA1:: @ 8162AA1
+ loadword 0, gUnknown_8178A52
+ callstd 4
+ release
+ end
+
+EventScript_162AAB:: @ 8162AAB
+ setvar VAR_0x8004, 0
+ special sub_8113530
+ setflag FLAG_0x4BB
+ call EventScript_1A7563
+ loadword 0, gUnknown_8178A52
+ callstd 4
+ closemessage
+ release
+ end
+
+EventScript_162AC6:: @ 8162AC6
+ applymovement 1, Movement_162ADC
+ waitmovement 0
+ return
+
+EventScript_162AD1:: @ 8162AD1
+ applymovement 1, Movement_162ADF
+ waitmovement 0
+ return
+
+Movement_162ADC:: @ 8162ADC
+ step_12
+ step_30
+ step_end
+
+Movement_162ADF:: @ 8162ADF
+ step_13
+ step_2f
+ step_end
diff --git a/data/maps/PokemonLeague_LoreleisRoom/scripts.inc b/data/maps/PokemonLeague_LoreleisRoom/scripts.inc
new file mode 100644
index 000000000..9455e97ed
--- /dev/null
+++ b/data/maps/PokemonLeague_LoreleisRoom/scripts.inc
@@ -0,0 +1,112 @@
+PokemonLeague_LoreleisRoom_MapScripts:: @ 816256C
+ map_script 5, PokemonLeague_LoreleisRoom_MapScript1_162586
+ map_script 1, PokemonLeague_LoreleisRoom_MapScript2_162591
+ map_script 3, PokemonLeague_LoreleisRoom_MapScript3_1625B2
+ map_script 4, PokemonLeague_LoreleisRoom_MapScript4_1625B6
+ map_script 2, PokemonLeague_LoreleisRoom_MapScript5_1625C5
+ .byte 0
+
+PokemonLeague_LoreleisRoom_MapScript1_162586:: @ 8162586
+ setvar VAR_0x8004, 0
+ call EventScript_1A75D5
+ end
+
+PokemonLeague_LoreleisRoom_MapScript2_162591:: @ 8162591
+ checkflag FLAG_0x4B8
+ call_if 1, EventScript_1625AC
+ compare_var_to_value VAR_0x4068, 1
+ call_if 1, EventScript_1625A6
+ end
+
+EventScript_1625A6:: @ 81625A6
+ call EventScript_1A759C
+ return
+
+EventScript_1625AC:: @ 81625AC
+ call EventScript_1A7538
+ return
+
+PokemonLeague_LoreleisRoom_MapScript3_1625B2:: @ 81625B2
+ setworldmapflag 2223
+ end
+
+PokemonLeague_LoreleisRoom_MapScript4_1625B6:: @ 81625B6
+ map_script_2 VAR_0x4001, 0, EventScript_1625C0
+ .2byte 0
+
+EventScript_1625C0:: @ 81625C0
+ turnobject 255, 2
+ end
+
+PokemonLeague_LoreleisRoom_MapScript5_1625C5:: @ 81625C5
+ map_script_2 VAR_0x4068, 0, EventScript_1625CF
+ .2byte 0
+
+EventScript_1625CF:: @ 81625CF
+ lockall
+ call EventScript_1A751F
+ setvar VAR_0x4068, 1
+ releaseall
+ end
+
+PokemonLeague_LoreleisRoom_EventScript_1625DC:: @ 81625DC
+ lock
+ faceplayer
+ setvar VAR_0x8004, 9
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ checkflag FLAG_0x4B8
+ goto_if 1, EventScript_162669
+ setvar VAR_0x8004, 9
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ setvar VAR_0x8004, 9
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ checkflag 2116
+ call_if 0, EventScript_162641
+ checkflag 2116
+ call_if 1, EventScript_16264A
+ setflag FLAG_0x003
+ setflag FLAG_0x005
+ checkflag 2116
+ call_if 0, EventScript_162653
+ checkflag 2116
+ call_if 1, EventScript_16265E
+ clearflag FLAG_0x005
+ goto EventScript_162673
+
+EventScript_162640:: @ 8162640
+ end
+
+EventScript_162641:: @ 8162641
+ loadword 0, gUnknown_8177FA4
+ callstd 4
+ return
+
+EventScript_16264A:: @ 816264A
+ loadword 0, gUnknown_8178089
+ callstd 4
+ return
+
+EventScript_162653:: @ 8162653
+ trainerbattle 3, 410, 0, Text_178191
+ return
+
+EventScript_16265E:: @ 816265E
+ trainerbattle 3, 735, 0, Text_178191
+ return
+
+EventScript_162669:: @ 8162669
+ loadword 0, gUnknown_81781B0
+ callstd 4
+ release
+ end
+
+EventScript_162673:: @ 8162673
+ setflag FLAG_0x4B8
+ call EventScript_1A7506
+ loadword 0, gUnknown_81781B0
+ callstd 4
+ release
+ end
diff --git a/data/maps/PokemonMansion_1F/scripts.inc b/data/maps/PokemonMansion_1F/scripts.inc
new file mode 100644
index 000000000..d56f4ed71
--- /dev/null
+++ b/data/maps/PokemonMansion_1F/scripts.inc
@@ -0,0 +1,35 @@
+PokemonMansion_1F_MapScripts:: @ 81621F9
+ map_script 1, PokemonMansion_1F_MapScript1_162204
+ map_script 3, PokemonMansion_1F_MapScript2_16220E
+ .byte 0
+
+PokemonMansion_1F_MapScript1_162204:: @ 8162204
+ checkflag FLAG_0x26C
+ call_if 1, EventScript_1A7B7A
+ end
+
+PokemonMansion_1F_MapScript2_16220E:: @ 816220E
+ setworldmapflag 2221
+ end
+
+PokemonMansion_1F_EventScript_162212:: @ 8162212
+ lockall
+ setvar VAR_0x8004, 0
+ call EventScript_1A7AE2
+ playse SE_FU_ZAKU2
+ special DrawWholeMapView
+ waitse
+ releaseall
+ end
+
+PokemonMansion_1F_EventScript_162226:: @ 8162226
+ trainerbattle 0, 335, 0, Text_177364, Text_177391
+ loadword 0, gUnknown_8177397
+ callstd 6
+ end
+
+PokemonMansion_1F_EventScript_16223D:: @ 816223D
+ trainerbattle 0, 534, 0, Text_1773C6, Text_1773FD
+ loadword 0, gUnknown_8177418
+ callstd 6
+ end
diff --git a/data/maps/PokemonMansion_2F/scripts.inc b/data/maps/PokemonMansion_2F/scripts.inc
new file mode 100644
index 000000000..1181e8c86
--- /dev/null
+++ b/data/maps/PokemonMansion_2F/scripts.inc
@@ -0,0 +1,34 @@
+PokemonMansion_2F_MapScripts:: @ 8162254
+ map_script 1, PokemonMansion_2F_MapScript1_16225A
+ .byte 0
+
+PokemonMansion_2F_MapScript1_16225A:: @ 816225A
+ checkflag FLAG_0x26C
+ call_if 1, EventScript_1A7D3E
+ end
+
+PokemonMansion_2F_EventScript_162264:: @ 8162264
+ lockall
+ setvar VAR_0x8004, 1
+ call EventScript_1A7AE2
+ playse SE_FU_ZAKU2
+ special DrawWholeMapView
+ waitse
+ releaseall
+ end
+
+PokemonMansion_2F_EventScript_162278:: @ 8162278
+ loadword 0, gUnknown_817751F
+ callstd 3
+ end
+
+PokemonMansion_2F_EventScript_162281:: @ 8162281
+ loadword 0, gUnknown_8177574
+ callstd 3
+ end
+
+PokemonMansion_2F_EventScript_16228A:: @ 816228A
+ trainerbattle 0, 216, 0, Text_177498, Text_1774CB
+ loadword 0, gUnknown_81774E3
+ callstd 6
+ end
diff --git a/data/maps/PokemonMansion_3F/scripts.inc b/data/maps/PokemonMansion_3F/scripts.inc
new file mode 100644
index 000000000..291dd4649
--- /dev/null
+++ b/data/maps/PokemonMansion_3F/scripts.inc
@@ -0,0 +1,35 @@
+PokemonMansion_3F_MapScripts:: @ 81622A1
+ map_script 1, PokemonMansion_3F_MapScript1_1622A7
+ .byte 0
+
+PokemonMansion_3F_MapScript1_1622A7:: @ 81622A7
+ checkflag FLAG_0x26C
+ call_if 1, EventScript_1A7E72
+ end
+
+PokemonMansion_3F_EventScript_1622B1:: @ 81622B1
+ lockall
+ setvar VAR_0x8004, 2
+ call EventScript_1A7AE2
+ playse SE_FU_ZAKU2
+ special DrawWholeMapView
+ waitse
+ releaseall
+ end
+
+PokemonMansion_3F_EventScript_1622C5:: @ 81622C5
+ loadword 0, gUnknown_8177685
+ callstd 3
+ end
+
+PokemonMansion_3F_EventScript_1622CE:: @ 81622CE
+ trainerbattle 0, 218, 0, Text_1775E7, Text_177602
+ loadword 0, gUnknown_8177608
+ callstd 6
+ end
+
+PokemonMansion_3F_EventScript_1622E5:: @ 81622E5
+ trainerbattle 0, 346, 0, Text_177628, Text_177643
+ loadword 0, gUnknown_8177657
+ callstd 6
+ end
diff --git a/data/maps/PokemonMansion_B1F/scripts.inc b/data/maps/PokemonMansion_B1F/scripts.inc
new file mode 100644
index 000000000..3a5b974bd
--- /dev/null
+++ b/data/maps/PokemonMansion_B1F/scripts.inc
@@ -0,0 +1,35 @@
+PokemonMansion_B1F_MapScripts:: @ 81622FC
+ map_script 1, PokemonMansion_B1F_MapScript1_162302
+ .byte 0
+
+PokemonMansion_B1F_MapScript1_162302:: @ 8162302
+ checkflag FLAG_0x26C
+ call_if 1, EventScript_1A7F4C
+ end
+
+PokemonMansion_B1F_EventScript_16230C:: @ 816230C
+ lockall
+ setvar VAR_0x8004, 3
+ call EventScript_1A7AE2
+ playse SE_FU_ZAKU2
+ special DrawWholeMapView
+ waitse
+ releaseall
+ end
+
+PokemonMansion_B1F_EventScript_162320:: @ 8162320
+ loadword 0, gUnknown_8177798
+ callstd 3
+ end
+
+PokemonMansion_B1F_EventScript_162329:: @ 8162329
+ trainerbattle 0, 219, 0, Text_1776C0, Text_1776D7
+ loadword 0, gUnknown_81776DE
+ callstd 6
+ end
+
+PokemonMansion_B1F_EventScript_162340:: @ 8162340
+ trainerbattle 0, 347, 0, Text_177720, Text_177757
+ loadword 0, gUnknown_817776A
+ callstd 6
+ end
diff --git a/data/maps/PokemonTower_1F/scripts.inc b/data/maps/PokemonTower_1F/scripts.inc
new file mode 100644
index 000000000..534901cf6
--- /dev/null
+++ b/data/maps/PokemonTower_1F/scripts.inc
@@ -0,0 +1,44 @@
+PokemonTower_1F_MapScripts:: @ 8163235
+ map_script 3, PokemonTower_1F_MapScript1_16323B
+ .byte 0
+
+PokemonTower_1F_MapScript1_16323B:: @ 816323B
+ setworldmapflag 2226
+ end
+
+PokemonTower_1F_EventScript_16323F:: @ 816323F
+ loadword 0, gUnknown_8179CAB
+ callstd 2
+ end
+
+PokemonTower_1F_EventScript_163248:: @ 8163248
+ loadword 0, gUnknown_8179C8C
+ callstd 2
+ end
+
+PokemonTower_1F_EventScript_163251:: @ 8163251
+ loadword 0, gUnknown_8179C41
+ callstd 2
+ end
+
+PokemonTower_1F_EventScript_16325A:: @ 816325A
+ lock
+ faceplayer
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_163272
+ loadword 0, gUnknown_8179BFC
+ callstd 4
+ release
+ end
+
+EventScript_163272:: @ 8163272
+ loadword 0, gUnknown_8179BB8
+ callstd 4
+ release
+ end
+
+PokemonTower_1F_EventScript_16327C:: @ 816327C
+ loadword 0, gUnknown_8179B7A
+ callstd 2
+ end
diff --git a/data/maps/PokemonTower_2F/scripts.inc b/data/maps/PokemonTower_2F/scripts.inc
new file mode 100644
index 000000000..68c3be0c0
--- /dev/null
+++ b/data/maps/PokemonTower_2F/scripts.inc
@@ -0,0 +1,111 @@
+PokemonTower_2F_MapScripts:: @ 8163285
+ .byte 0
+
+PokemonTower_2F_EventScript_163286:: @ 8163286
+ loadword 0, gUnknown_8179EAE
+ callstd 2
+ end
+
+PokemonTower_2F_EventScript_16328F:: @ 816328F
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_1632A7
+ end
+
+PokemonTower_2F_EventScript_16329B:: @ 816329B
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_1632A7
+ end
+
+EventScript_1632A7:: @ 81632A7
+ textcolor 0
+ playbgm BGM_FRLG_RIVAL, 0
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_163339
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16334B
+ applymovement 1, Movement_1A75DB
+ waitmovement 0
+ applymovement 1, Movement_1A75DD
+ waitmovement 0
+ loadword 0, gUnknown_8179CFF
+ callstd 4
+ setvar VAR_LAST_TALKED, 1
+ compare_var_to_value VAR_STARTER_MON, 2
+ call_if 1, EventScript_16335D
+ compare_var_to_value VAR_STARTER_MON, 1
+ call_if 1, EventScript_163368
+ compare_var_to_value VAR_STARTER_MON, 0
+ call_if 1, EventScript_163373
+ loadword 0, gUnknown_8179DD4
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_RIVAL_POSTBATTLE, 0
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16337E
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_163389
+ playse SE_KAIDAN
+ delay 25
+ fadedefaultbgm
+ removeobject 1
+ setvar VAR_0x405D, 1
+ releaseall
+ end
+
+EventScript_163339:: @ 8163339
+ applymovement 1, Movement_1A75EB
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_16334B:: @ 816334B
+ applymovement 1, Movement_1A75ED
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_16335D:: @ 816335D
+ trainerbattle 3, 429, 0, Text_179D73
+ return
+
+EventScript_163368:: @ 8163368
+ trainerbattle 3, 430, 0, Text_179D73
+ return
+
+EventScript_163373:: @ 8163373
+ trainerbattle 3, 431, 0, Text_179D73
+ return
+
+EventScript_16337E:: @ 816337E
+ applymovement 1, Movement_163394
+ waitmovement 0
+ return
+
+EventScript_163389:: @ 8163389
+ applymovement 1, Movement_16339D
+ waitmovement 0
+ return
+
+Movement_163394:: @ 8163394
+ step_10
+ step_13
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_30
+ step_end
+
+Movement_16339D:: @ 816339D
+ step_13
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_30
+ step_end
diff --git a/data/maps/PokemonTower_3F/scripts.inc b/data/maps/PokemonTower_3F/scripts.inc
new file mode 100644
index 000000000..69ad8edac
--- /dev/null
+++ b/data/maps/PokemonTower_3F/scripts.inc
@@ -0,0 +1,20 @@
+PokemonTower_3F_MapScripts:: @ 81633A6
+ .byte 0
+
+PokemonTower_3F_EventScript_1633A7:: @ 81633A7
+ trainerbattle 0, 441, 0, Text_179FA0, Text_179FBC
+ loadword 0, gUnknown_8179FD3
+ callstd 6
+ end
+
+PokemonTower_3F_EventScript_1633BE:: @ 81633BE
+ trainerbattle 0, 442, 0, Text_179F62, Text_179F72
+ loadword 0, gUnknown_8179F88
+ callstd 6
+ end
+
+PokemonTower_3F_EventScript_1633D5:: @ 81633D5
+ trainerbattle 0, 443, 0, Text_179F09, Text_179F21
+ loadword 0, gUnknown_8179F31
+ callstd 6
+ end
diff --git a/data/maps/PokemonTower_4F/scripts.inc b/data/maps/PokemonTower_4F/scripts.inc
new file mode 100644
index 000000000..ada885b73
--- /dev/null
+++ b/data/maps/PokemonTower_4F/scripts.inc
@@ -0,0 +1,20 @@
+PokemonTower_4F_MapScripts:: @ 81633EC
+ .byte 0
+
+PokemonTower_4F_EventScript_1633ED:: @ 81633ED
+ trainerbattle 0, 444, 0, Text_17A004, Text_17A017
+ loadword 0, gUnknown_817A02B
+ callstd 6
+ end
+
+PokemonTower_4F_EventScript_163404:: @ 8163404
+ trainerbattle 0, 445, 0, Text_17A046, Text_17A061
+ loadword 0, gUnknown_817A067
+ callstd 6
+ end
+
+PokemonTower_4F_EventScript_16341B:: @ 816341B
+ trainerbattle 0, 446, 0, Text_17A096, Text_17A0AB
+ loadword 0, gUnknown_817A0BB
+ callstd 6
+ end
diff --git a/data/maps/PokemonTower_5F/scripts.inc b/data/maps/PokemonTower_5F/scripts.inc
new file mode 100644
index 000000000..c7a7e7512
--- /dev/null
+++ b/data/maps/PokemonTower_5F/scripts.inc
@@ -0,0 +1,48 @@
+PokemonTower_5F_MapScripts:: @ 8163432
+ .byte 0
+
+PokemonTower_5F_EventScript_163433:: @ 8163433
+ loadword 0, gUnknown_817A0E3
+ callstd 2
+ end
+
+PokemonTower_5F_EventScript_16343C:: @ 816343C
+ lockall
+ fadescreen 3
+ special sp000_heal_pokemon
+ fadescreen 2
+ loadword 0, gUnknown_817A1FA
+ callstd 4
+ setvar VAR_0x4001, 1
+ releaseall
+ end
+
+PokemonTower_5F_EventScript_163453:: @ 8163453
+ lockall
+ setvar VAR_0x4001, 0
+ releaseall
+ end
+
+PokemonTower_5F_EventScript_16345B:: @ 816345B
+ trainerbattle 0, 447, 0, Text_17A11F, Text_17A132
+ loadword 0, gUnknown_817A138
+ callstd 6
+ end
+
+PokemonTower_5F_EventScript_163472:: @ 8163472
+ trainerbattle 0, 448, 0, Text_17A150, Text_17A164
+ loadword 0, gUnknown_817A176
+ callstd 6
+ end
+
+PokemonTower_5F_EventScript_163489:: @ 8163489
+ trainerbattle 0, 449, 0, Text_17A187, Text_17A190
+ loadword 0, gUnknown_817A194
+ callstd 6
+ end
+
+PokemonTower_5F_EventScript_1634A0:: @ 81634A0
+ trainerbattle 0, 450, 0, Text_17A1AA, Text_17A1B7
+ loadword 0, gUnknown_817A1BD
+ callstd 6
+ end
diff --git a/data/maps/PokemonTower_6F/scripts.inc b/data/maps/PokemonTower_6F/scripts.inc
new file mode 100644
index 000000000..17e67b0fa
--- /dev/null
+++ b/data/maps/PokemonTower_6F/scripts.inc
@@ -0,0 +1,56 @@
+PokemonTower_6F_MapScripts:: @ 81634B7
+ .byte 0
+
+PokemonTower_6F_EventScript_1634B8:: @ 81634B8
+ lockall
+ textcolor 2
+ loadword 0, gUnknown_817A2F8
+ callstd 4
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ setwildbattle SPECIES_MAROWAK, 30, ITEM_NONE
+ special sub_807F904
+ waitstate
+ special sub_8112364
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1634F5
+ applymovement 255, Movement_163512
+ waitmovement 0
+ releaseall
+ end
+
+EventScript_1634F5:: @ 81634F5
+ message Text_17A30C
+ waitmessage
+ waitse
+ playmoncry SPECIES_MAROWAK, 0
+ waitbuttonpress
+ waitmoncry
+ loadword 0, gUnknown_817A342
+ callstd 4
+ setvar VAR_0x4059, 1
+ releaseall
+ end
+
+Movement_163512:: @ 8163512
+ step_11
+ step_end
+
+PokemonTower_6F_EventScript_163514:: @ 8163514
+ trainerbattle 0, 451, 0, Text_17A243, Text_17A253
+ loadword 0, gUnknown_817A25A
+ callstd 6
+ end
+
+PokemonTower_6F_EventScript_16352B:: @ 816352B
+ trainerbattle 0, 452, 0, Text_17A272, Text_17A27F
+ loadword 0, gUnknown_817A293
+ callstd 6
+ end
+
+PokemonTower_6F_EventScript_163542:: @ 8163542
+ trainerbattle 0, 453, 0, Text_17A2C8, Text_17A2DC
+ loadword 0, gUnknown_817A2E2
+ callstd 6
+ end
diff --git a/data/maps/PokemonTower_7F/scripts.inc b/data/maps/PokemonTower_7F/scripts.inc
new file mode 100644
index 000000000..cd3cec22d
--- /dev/null
+++ b/data/maps/PokemonTower_7F/scripts.inc
@@ -0,0 +1,249 @@
+PokemonTower_7F_MapScripts:: @ 8163559
+ .byte 0
+
+PokemonTower_7F_EventScript_16355A:: @ 816355A
+ lock
+ faceplayer
+ setvar VAR_0x8004, 14
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ setflag FLAG_0x034
+ clearflag FLAG_0x035
+ setflag FLAG_0x23C
+ loadword 0, gUnknown_817A529
+ callstd 4
+ closemessage
+ warp MAP_LAVENDERTOWN_VOLUNTEERPOKEMONHOUSE, 255, 4, 7
+ waitstate
+ release
+ end
+
+PokemonTower_7F_EventScript_163586:: @ 8163586
+ trainerbattle 2, 369, 0, Text_17A380, Text_17A3A4, EventScript_1635A1
+ loadword 0, gUnknown_817A3AF
+ callstd 6
+ end
+
+EventScript_1635A1:: @ 81635A1
+ loadword 0, gUnknown_817A3AF
+ callstd 4
+ closemessage
+ getplayerxy VAR_0x8004, VAR_0x8005
+ compare_var_to_value VAR_0x8004, 10
+ goto_if 1, EventScript_1635E0
+ compare_var_to_value VAR_0x8004, 11
+ goto_if 1, EventScript_1635F0
+ compare_var_to_value VAR_0x8004, 9
+ goto_if 1, EventScript_163600
+ applymovement 2, Movement_16362C
+ waitmovement 0
+ goto EventScript_163616
+ end
+
+EventScript_1635E0:: @ 81635E0
+ applymovement 2, Movement_16361B
+ waitmovement 0
+ goto EventScript_163616
+ end
+
+EventScript_1635F0:: @ 81635F0
+ applymovement 2, Movement_163624
+ waitmovement 0
+ goto EventScript_163616
+ end
+
+EventScript_163600:: @ 8163600
+ applymovement 2, Movement_163633
+ waitmovement 0
+ playse SE_KAIDAN
+ delay 25
+ goto EventScript_163616
+ end
+
+EventScript_163616:: @ 8163616
+ removeobject 2
+ release
+ end
+
+Movement_16361B:: @ 816361B
+ step_10
+ step_13
+ step_10
+ step_10
+ step_10
+ step_13
+ step_10
+ step_10
+ step_end
+
+Movement_163624:: @ 8163624
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_10
+ step_10
+ step_end
+
+Movement_16362C:: @ 816362C
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_163633:: @ 8163633
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_10
+ step_10
+ step_2f
+ step_end
+
+PokemonTower_7F_EventScript_16363D:: @ 816363D
+ trainerbattle 2, 370, 0, Text_17A3CD, Text_17A466, EventScript_163658
+ loadword 0, gUnknown_817A477
+ callstd 6
+ end
+
+EventScript_163658:: @ 8163658
+ setvar VAR_0x8004, 14
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_817A477
+ callstd 4
+ closemessage
+ getplayerxy VAR_0x8004, VAR_0x8005
+ compare_var_to_value VAR_0x8004, 12
+ goto_if 1, EventScript_163699
+ compare_var_to_value VAR_0x8004, 13
+ goto_if 1, EventScript_1636A9
+ applymovement 3, Movement_1636C6
+ waitmovement 0
+ goto EventScript_1636B9
+ end
+
+EventScript_163699:: @ 8163699
+ applymovement 3, Movement_1636BE
+ waitmovement 0
+ goto EventScript_1636B9
+ end
+
+EventScript_1636A9:: @ 81636A9
+ applymovement 3, Movement_1636CD
+ waitmovement 0
+ goto EventScript_1636B9
+ end
+
+EventScript_1636B9:: @ 81636B9
+ removeobject 3
+ release
+ end
+
+Movement_1636BE:: @ 81636BE
+ step_10
+ step_10
+ step_10
+ step_12
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_1636C6:: @ 81636C6
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_1636CD:: @ 81636CD
+ step_12
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+PokemonTower_7F_EventScript_1636D6:: @ 81636D6
+ trainerbattle 2, 371, 0, Text_17A4CF, Text_17A4EE, EventScript_1636F1
+ loadword 0, gUnknown_817A506
+ callstd 6
+ end
+
+EventScript_1636F1:: @ 81636F1
+ loadword 0, gUnknown_817A506
+ callstd 4
+ closemessage
+ getplayerxy VAR_0x8004, VAR_0x8005
+ compare_var_to_value VAR_0x8004, 10
+ goto_if 1, EventScript_163725
+ compare_var_to_value VAR_0x8004, 9
+ goto_if 1, EventScript_163735
+ applymovement 4, Movement_163754
+ waitmovement 0
+ goto EventScript_163745
+ end
+
+EventScript_163725:: @ 8163725
+ applymovement 4, Movement_16374C
+ waitmovement 0
+ goto EventScript_163745
+ end
+
+EventScript_163735:: @ 8163735
+ applymovement 4, Movement_16375B
+ waitmovement 0
+ goto EventScript_163745
+ end
+
+EventScript_163745:: @ 8163745
+ removeobject 4
+ release
+ end
+
+EventScript_16374A:: @ 816374A
+ release
+ end
+
+Movement_16374C:: @ 816374C
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_10
+ step_end
+
+Movement_163754:: @ 8163754
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_16375B:: @ 816375B
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
diff --git a/data/maps/PowerPlant/scripts.inc b/data/maps/PowerPlant/scripts.inc
new file mode 100644
index 000000000..78878b456
--- /dev/null
+++ b/data/maps/PowerPlant/scripts.inc
@@ -0,0 +1,141 @@
+PowerPlant_MapScripts:: @ 8163764
+ map_script 5, PowerPlant_MapScript1_16376F
+ map_script 3, PowerPlant_MapScript2_16378D
+ .byte 0
+
+PowerPlant_MapScript1_16376F:: @ 816376F
+ checkflag 2055
+ call_if 1, EventScript_163779
+ end
+
+EventScript_163779:: @ 8163779
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 5, EventScript_1A77A9
+ removeobject VAR_LAST_TALKED
+ return
+
+PowerPlant_MapScript2_16378D:: @ 816378D
+ setworldmapflag 2228
+ checkflag FLAG_0x2BF
+ call_if 0, EventScript_1637AC
+ checkflag FLAG_0x2D0
+ call_if 0, EventScript_1637B0
+ checkflag FLAG_0x2D1
+ call_if 0, EventScript_1637B4
+ end
+
+EventScript_1637AC:: @ 81637AC
+ clearflag FLAG_0x05D
+ return
+
+EventScript_1637B0:: @ 81637B0
+ clearflag FLAG_0x085
+ return
+
+EventScript_1637B4:: @ 81637B4
+ clearflag FLAG_0x086
+ return
+
+PowerPlant_EventScript_1637B8:: @ 81637B8
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ setwildbattle SPECIES_ZAPDOS, 50, ITEM_NONE
+ waitse
+ playmoncry SPECIES_ZAPDOS, 2
+ message Text_1A6448
+ waitmessage
+ waitmoncry
+ delay 10
+ playbgm BGM_FRLG_LEADER_EYE, 0
+ waitbuttonpress
+ setflag 2055
+ special sub_807F9D8
+ waitstate
+ clearflag 2055
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16381B
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_163824
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_163824
+ setflag FLAG_0x2BF
+ release
+ end
+
+EventScript_16381B:: @ 816381B
+ setflag FLAG_0x2BF
+ goto EventScript_1A922D
+ end
+
+EventScript_163824:: @ 8163824
+ setvar VAR_0x8004, 145
+ goto EventScript_1A9236
+ end
+
+PowerPlant_EventScript_16382F:: @ 816382F
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ setwildbattle SPECIES_ELECTRODE, 34, ITEM_NONE
+ waitse
+ playmoncry SPECIES_ELECTRODE, 2
+ delay 40
+ waitmoncry
+ setflag 2055
+ dowildbattle
+ clearflag 2055
+ special sub_8112364
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_163884
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_163884
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_163884
+ setflag FLAG_0x2D0
+ release
+ end
+
+EventScript_163884:: @ 8163884
+ setflag FLAG_0x2D0
+ goto EventScript_1A922D
+ end
+
+PowerPlant_EventScript_16388D:: @ 816388D
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ setwildbattle SPECIES_ELECTRODE, 34, ITEM_NONE
+ waitse
+ playmoncry SPECIES_ELECTRODE, 2
+ delay 40
+ waitmoncry
+ setflag 2055
+ dowildbattle
+ clearflag 2055
+ special sub_8112364
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_1638E2
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_1638E2
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_1638E2
+ setflag FLAG_0x2D1
+ release
+ end
+
+EventScript_1638E2:: @ 81638E2
+ setflag FLAG_0x2D1
+ goto EventScript_1A922D
+ end
diff --git a/data/maps/RockTunnel_1F/scripts.inc b/data/maps/RockTunnel_1F/scripts.inc
new file mode 100644
index 000000000..f45f6d1f0
--- /dev/null
+++ b/data/maps/RockTunnel_1F/scripts.inc
@@ -0,0 +1,54 @@
+RockTunnel_1F_MapScripts:: @ 8162DD6
+ map_script 3, RockTunnel_1F_MapScript1_162DDC
+ .byte 0
+
+RockTunnel_1F_MapScript1_162DDC:: @ 8162DDC
+ setworldmapflag 2224
+ end
+
+RockTunnel_1F_EventScript_162DE0:: @ 8162DE0
+ loadword 0, gUnknown_817962D
+ callstd 3
+ end
+
+RockTunnel_1F_EventScript_162DE9:: @ 8162DE9
+ trainerbattle 0, 192, 0, Text_179366, Text_179388
+ loadword 0, gUnknown_8179396
+ callstd 6
+ end
+
+RockTunnel_1F_EventScript_162E00:: @ 8162E00
+ trainerbattle 0, 193, 0, Text_1793F1, Text_17940E
+ loadword 0, gUnknown_817943A
+ callstd 6
+ end
+
+RockTunnel_1F_EventScript_162E17:: @ 8162E17
+ trainerbattle 0, 194, 0, Text_17947B, Text_1794AC
+ loadword 0, gUnknown_81794B4
+ callstd 6
+ end
+
+RockTunnel_1F_EventScript_162E2E:: @ 8162E2E
+ trainerbattle 0, 168, 0, Text_1794D4, Text_1794EE
+ loadword 0, gUnknown_81794F9
+ callstd 6
+ end
+
+RockTunnel_1F_EventScript_162E45:: @ 8162E45
+ trainerbattle 0, 476, 0, Text_17951C, Text_179547
+ loadword 0, gUnknown_8179558
+ callstd 6
+ end
+
+RockTunnel_1F_EventScript_162E5C:: @ 8162E5C
+ trainerbattle 0, 475, 0, Text_1795E5, Text_179604
+ loadword 0, gUnknown_8179613
+ callstd 6
+ end
+
+RockTunnel_1F_EventScript_162E73:: @ 8162E73
+ trainerbattle 0, 474, 0, Text_179577, Text_1795A1
+ loadword 0, gUnknown_81795B5
+ callstd 6
+ end
diff --git a/data/maps/RockTunnel_B1F/scripts.inc b/data/maps/RockTunnel_B1F/scripts.inc
new file mode 100644
index 000000000..40cf188f3
--- /dev/null
+++ b/data/maps/RockTunnel_B1F/scripts.inc
@@ -0,0 +1,50 @@
+RockTunnel_B1F_MapScripts:: @ 8162E8A
+ .byte 0
+
+RockTunnel_B1F_EventScript_162E8B:: @ 8162E8B
+ trainerbattle 0, 158, 0, Text_179657, Text_1796B9
+ loadword 0, gUnknown_81796CE
+ callstd 6
+ end
+
+RockTunnel_B1F_EventScript_162EA2:: @ 8162EA2
+ trainerbattle 0, 159, 0, Text_1798AD, Text_1798DD
+ loadword 0, gUnknown_81798E9
+ callstd 6
+ end
+
+RockTunnel_B1F_EventScript_162EB9:: @ 8162EB9
+ trainerbattle 0, 189, 0, Text_1796E1, Text_179700
+ loadword 0, gUnknown_8179712
+ callstd 6
+ end
+
+RockTunnel_B1F_EventScript_162ED0:: @ 8162ED0
+ trainerbattle 0, 190, 0, Text_179829, Text_179856
+ loadword 0, gUnknown_817987A
+ callstd 6
+ end
+
+RockTunnel_B1F_EventScript_162EE7:: @ 8162EE7
+ trainerbattle 0, 191, 0, Text_179916, Text_179932
+ loadword 0, gUnknown_817993E
+ callstd 6
+ end
+
+RockTunnel_B1F_EventScript_162EFE:: @ 8162EFE
+ trainerbattle 0, 164, 0, Text_17973A, Text_17975F
+ loadword 0, gUnknown_8179777
+ callstd 6
+ end
+
+RockTunnel_B1F_EventScript_162F15:: @ 8162F15
+ trainerbattle 0, 165, 0, Text_1797A4, Text_1797CB
+ loadword 0, gUnknown_81797DE
+ callstd 6
+ end
+
+RockTunnel_B1F_EventScript_162F2C:: @ 8162F2C
+ trainerbattle 0, 166, 0, Text_179968, Text_179997
+ loadword 0, gUnknown_81799AC
+ callstd 6
+ end
diff --git a/data/maps/RocketHideout_B1F/scripts.inc b/data/maps/RocketHideout_B1F/scripts.inc
new file mode 100644
index 000000000..2704c6b79
--- /dev/null
+++ b/data/maps/RocketHideout_B1F/scripts.inc
@@ -0,0 +1,69 @@
+RocketHideout_B1F_MapScripts:: @ 8161195
+ map_script 1, RocketHideout_B1F_MapScript1_1611A0
+ map_script 3, RocketHideout_B1F_MapScript2_1611AA
+ .byte 0
+
+RocketHideout_B1F_MapScript1_1611A0:: @ 81611A0
+ checktrainerflag 362
+ call_if 0, EventScript_161233
+ end
+
+RocketHideout_B1F_MapScript2_1611AA:: @ 81611AA
+ setworldmapflag 2219
+ end
+
+RocketHideout_B1F_EventScript_1611AE:: @ 81611AE
+ trainerbattle 0, 358, 0, Text_174ECA, Text_174EED
+ loadword 0, gUnknown_8174EFA
+ callstd 6
+ end
+
+RocketHideout_B1F_EventScript_1611C5:: @ 81611C5
+ trainerbattle 0, 359, 0, Text_174F2C, Text_174F60
+ loadword 0, gUnknown_8174F66
+ callstd 6
+ end
+
+RocketHideout_B1F_EventScript_1611DC:: @ 81611DC
+ trainerbattle 0, 360, 0, Text_174F94, Text_174FA4
+ loadword 0, gUnknown_8174FB3
+ callstd 6
+ end
+
+RocketHideout_B1F_EventScript_1611F3:: @ 81611F3
+ trainerbattle 0, 361, 0, Text_174FE1, Text_174FF8
+ loadword 0, gUnknown_8175007
+ callstd 6
+ end
+
+RocketHideout_B1F_EventScript_16120A:: @ 816120A
+ trainerbattle 2, 362, 0, Text_17503A, Text_17505A, EventScript_161225
+ loadword 0, gUnknown_8175060
+ callstd 6
+ end
+
+EventScript_161225:: @ 8161225
+ call EventScript_16126A
+ playse SE_FU_ZAKU2
+ special DrawWholeMapView
+ waitse
+ release
+ end
+
+EventScript_161233:: @ 8161233
+ setmetatile 20, 19, 718, 1
+ setmetatile 21, 19, 719, 1
+ setmetatile 20, 20, 726, 1
+ setmetatile 21, 20, 727, 1
+ setmetatile 20, 21, 642, 0
+ setmetatile 21, 21, 642, 0
+ return
+
+EventScript_16126A:: @ 816126A
+ setmetatile 20, 19, 642, 0
+ setmetatile 21, 19, 641, 0
+ setmetatile 20, 20, 642, 0
+ setmetatile 21, 20, 641, 0
+ setmetatile 20, 21, 642, 0
+ setmetatile 21, 21, 641, 0
+ return
diff --git a/data/maps/RocketHideout_B2F/scripts.inc b/data/maps/RocketHideout_B2F/scripts.inc
new file mode 100644
index 000000000..e1f54c7ef
--- /dev/null
+++ b/data/maps/RocketHideout_B2F/scripts.inc
@@ -0,0 +1,8 @@
+RocketHideout_B2F_MapScripts:: @ 81612A1
+ .byte 0
+
+RocketHideout_B2F_EventScript_1612A2:: @ 81612A2
+ trainerbattle 0, 363, 0, Text_17508C, Text_1750BF
+ loadword 0, gUnknown_81750CC
+ callstd 6
+ end
diff --git a/data/maps/RocketHideout_B3F/scripts.inc b/data/maps/RocketHideout_B3F/scripts.inc
new file mode 100644
index 000000000..b60e71b39
--- /dev/null
+++ b/data/maps/RocketHideout_B3F/scripts.inc
@@ -0,0 +1,14 @@
+RocketHideout_B3F_MapScripts:: @ 81612B9
+ .byte 0
+
+RocketHideout_B3F_EventScript_1612BA:: @ 81612BA
+ trainerbattle 0, 364, 0, Text_17511A, Text_17514A
+ loadword 0, gUnknown_817515B
+ callstd 6
+ end
+
+RocketHideout_B3F_EventScript_1612D1:: @ 81612D1
+ trainerbattle 0, 365, 0, Text_17519E, Text_1751CE
+ loadword 0, gUnknown_81751E0
+ callstd 6
+ end
diff --git a/data/maps/RocketHideout_B4F/scripts.inc b/data/maps/RocketHideout_B4F/scripts.inc
new file mode 100644
index 000000000..c61e0144c
--- /dev/null
+++ b/data/maps/RocketHideout_B4F/scripts.inc
@@ -0,0 +1,145 @@
+RocketHideout_B4F_MapScripts:: @ 81612E8
+ map_script 1, RocketHideout_B4F_MapScript1_1612EE
+ .byte 0
+
+RocketHideout_B4F_MapScript1_1612EE:: @ 81612EE
+ setvar VAR_0x4001, 0
+ checktrainerflag 366
+ call_if 1, EventScript_161311
+ checktrainerflag 367
+ call_if 1, EventScript_161311
+ compare_var_to_value VAR_0x4001, 2
+ call_if 5, EventScript_16146A
+ end
+
+EventScript_161311:: @ 8161311
+ addvar VAR_0x4001, 1
+ return
+
+RocketHideout_B4F_EventScript_161317:: @ 8161317
+ lock
+ faceplayer
+ setvar VAR_0x8004, 15
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ message Text_175226
+ waitmessage
+ playbgm BGM_FRLG_SUSPICIOUS_EYE, 0
+ waitbuttonpress
+ trainerbattle 3, 348, 0, Text_175318
+ loadword 0, gUnknown_817532D
+ callstd 4
+ fadescreen 1
+ closemessage
+ removeobject 1
+ addobject 2
+ clearflag FLAG_0x037
+ setflag FLAG_0x05F
+ setvar VAR_0x8004, 15
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ fadescreen 0
+ release
+ end
+
+RocketHideout_B4F_EventScript_161363:: @ 8161363
+ lock
+ faceplayer
+ removeobject 2
+ setorcopyvar VAR_0x8000, 359
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A6BF9
+ release
+ end
+
+RocketHideout_B4F_EventScript_161381:: @ 8161381
+ trainerbattle 2, 368, 0, Text_175488, Text_1754B9, EventScript_16139D
+ loadword 0, gUnknown_81754BD
+ callstd 4
+ release
+ end
+
+EventScript_16139D:: @ 816139D
+ loadword 0, gUnknown_81754BD
+ callstd 4
+ addobject 4
+ clearflag FLAG_0x036
+ release
+ end
+
+RocketHideout_B4F_EventScript_1613AD:: @ 81613AD
+ lock
+ faceplayer
+ setflag FLAG_0x2A5
+ removeobject 4
+ setorcopyvar VAR_0x8000, 356
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A6BF9
+ release
+ end
+
+RocketHideout_B4F_EventScript_1613CE:: @ 81613CE
+ trainerbattle 2, 366, 0, Text_1753D0, Text_1753FE, EventScript_1613E9
+ loadword 0, gUnknown_817540C
+ callstd 6
+ end
+
+EventScript_1613E9:: @ 81613E9
+ setvar VAR_0x4001, 0
+ checktrainerflag 366
+ call_if 1, EventScript_161311
+ checktrainerflag 367
+ call_if 1, EventScript_161311
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_1614A1
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_161462
+ release
+ end
+
+RocketHideout_B4F_EventScript_161418:: @ 8161418
+ trainerbattle 2, 367, 0, Text_175437, Text_175463, EventScript_161433
+ loadword 0, gUnknown_817546A
+ callstd 6
+ end
+
+EventScript_161433:: @ 8161433
+ setvar VAR_0x4001, 0
+ checktrainerflag 366
+ call_if 1, EventScript_161311
+ checktrainerflag 367
+ call_if 1, EventScript_161311
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_1614A1
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_161462
+ release
+ end
+
+EventScript_161462:: @ 8161462
+ playse SE_FU_ZAKU2
+ special DrawWholeMapView
+ waitse
+ return
+
+EventScript_16146A:: @ 816146A
+ setmetatile 17, 12, 718, 1
+ setmetatile 18, 12, 719, 1
+ setmetatile 17, 13, 726, 1
+ setmetatile 18, 13, 727, 1
+ setmetatile 17, 14, 642, 0
+ setmetatile 18, 14, 642, 0
+ return
+
+EventScript_1614A1:: @ 81614A1
+ setmetatile 17, 12, 642, 0
+ setmetatile 18, 12, 641, 0
+ setmetatile 17, 13, 642, 0
+ setmetatile 18, 13, 641, 0
+ setmetatile 17, 14, 642, 0
+ setmetatile 18, 14, 641, 0
+ return
diff --git a/data/maps/RocketHideout_Elevator/scripts.inc b/data/maps/RocketHideout_Elevator/scripts.inc
new file mode 100644
index 000000000..eaa62ba75
--- /dev/null
+++ b/data/maps/RocketHideout_Elevator/scripts.inc
@@ -0,0 +1,115 @@
+RocketHideout_Elevator_MapScripts:: @ 81614D8
+ .byte 0
+
+RocketHideout_Elevator_EventScript_1614D9:: @ 81614D9
+ lockall
+ checkflag FLAG_0x2A5
+ goto_if 0, EventScript_16161B
+ setvar VAR_0x8004, 2
+ checkflag FLAG_0x002
+ call_if 0, EventScript_1A7AB9
+ copyvar VAR_0x8005, VAR_0x403A
+ special sub_80CB580
+ message Text_1A535C
+ waitmessage
+ setvar VAR_0x8004, 2
+ specialvar VAR_RESULT, sub_80CB328
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_161530
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16153C
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_161548
+ end
+
+EventScript_161530:: @ 8161530
+ multichoicedefault 0, 0, 42, 0, 0
+ goto EventScript_161554
+
+EventScript_16153B:: @ 816153B
+ end
+
+EventScript_16153C:: @ 816153C
+ multichoicedefault 0, 0, 42, 1, 0
+ goto EventScript_161554
+
+EventScript_161547:: @ 8161547
+ end
+
+EventScript_161548:: @ 8161548
+ multichoicedefault 0, 0, 42, 2, 0
+ goto EventScript_161554
+
+EventScript_161553:: @ 8161553
+ end
+
+EventScript_161554:: @ 8161554
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_161591
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_1615B9
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_1615E1
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_161609
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_161609
+ end
+
+EventScript_161591:: @ 8161591
+ setvar VAR_0x8006, 3
+ setdynamicwarp MAP_ROCKETHIDEOUT_B1F, 255, 24, 25
+ compare_var_to_value VAR_0x403A, 3
+ goto_if 1, EventScript_161609
+ call EventScript_16160E
+ setvar VAR_0x403A, 3
+ goto EventScript_161609
+
+EventScript_1615B8:: @ 81615B8
+ end
+
+EventScript_1615B9:: @ 81615B9
+ setvar VAR_0x8006, 2
+ setdynamicwarp MAP_ROCKETHIDEOUT_B2F, 255, 28, 16
+ compare_var_to_value VAR_0x403A, 2
+ goto_if 1, EventScript_161609
+ call EventScript_16160E
+ setvar VAR_0x403A, 2
+ goto EventScript_161609
+
+EventScript_1615E0:: @ 81615E0
+ end
+
+EventScript_1615E1:: @ 81615E1
+ setvar VAR_0x8006, 0
+ setdynamicwarp MAP_ROCKETHIDEOUT_B4F, 255, 20, 23
+ compare_var_to_value VAR_0x403A, 0
+ goto_if 1, EventScript_161609
+ call EventScript_16160E
+ setvar VAR_0x403A, 0
+ goto EventScript_161609
+
+EventScript_161608:: @ 8161608
+ end
+
+EventScript_161609:: @ 8161609
+ special sub_80CB63C
+ releaseall
+ end
+
+EventScript_16160E:: @ 816160E
+ special sub_80CB63C
+ closemessage
+ waitse
+ special sub_80CB498
+ waitstate
+ setflag FLAG_0x002
+ return
+
+EventScript_16161B:: @ 816161B
+ loadword 0, gUnknown_81754DD
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/Route1/scripts.inc b/data/maps/Route1/scripts.inc
new file mode 100644
index 000000000..00cca1d96
--- /dev/null
+++ b/data/maps/Route1/scripts.inc
@@ -0,0 +1,42 @@
+Route1_MapScripts:: @ 8167EFD
+ .byte 0
+
+Route1_EventScript_167EFE:: @ 8167EFE
+ lock
+ faceplayer
+ checkflag FLAG_0x230
+ goto_if 1, EventScript_167F48
+ loadword 0, gUnknown_818329D
+ callstd 4
+ textcolor 3
+ checkitemspace ITEM_POTION, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A6BF9
+ getitemname 1, ITEM_POTION
+ playfanfare MUS_FANFA1
+ message Text_1A51F6
+ waitmessage
+ waitfanfare
+ additem ITEM_POTION, 1
+ loadword 0, gUnknown_8183387
+ callstd 4
+ call EventScript_1A6675
+ setflag FLAG_0x230
+ release
+ end
+
+EventScript_167F48:: @ 8167F48
+ loadword 0, gUnknown_8183347
+ callstd 4
+ release
+ end
+
+Route1_EventScript_167F52:: @ 8167F52
+ loadword 0, gUnknown_81833B9
+ callstd 2
+ end
+
+Route1_EventScript_167F5B:: @ 8167F5B
+ loadword 0, gUnknown_818343A
+ callstd 3
+ end
diff --git a/data/maps/Route10/scripts.inc b/data/maps/Route10/scripts.inc
new file mode 100644
index 000000000..b714312a2
--- /dev/null
+++ b/data/maps/Route10/scripts.inc
@@ -0,0 +1,20 @@
+Route10_MapScripts:: @ 8167FD9
+ .byte 0
+
+Route10_EventScript_167FDA:: @ 8167FDA
+ end
+
+Route10_EventScript_167FDB:: @ 8167FDB
+ loadword 0, gUnknown_8184EC5
+ callstd 3
+ end
+
+Route10_EventScript_167FE4:: @ 8167FE4
+ loadword 0, gUnknown_8184EE9
+ callstd 3
+ end
+
+Route10_EventScript_167FED:: @ 8167FED
+ loadword 0, gUnknown_8184EF5
+ callstd 3
+ end
diff --git a/data/maps/Route10_PokemonCenter_1F/scripts.inc b/data/maps/Route10_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..b9fbf2cde
--- /dev/null
+++ b/data/maps/Route10_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,75 @@
+Route10_PokemonCenter_1F_MapScripts:: @ 816FC2F
+ map_script 3, Route10_PokemonCenter_1F_MapScript1_16FC3A
+ map_script 5, Route10_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+Route10_PokemonCenter_1F_MapScript1_16FC3A:: @ 816FC3A
+ setworldmapflag 2211
+ setrespawn 13
+ end
+
+Route10_PokemonCenter_1F_EventScript_16FC41:: @ 816FC41
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+Route10_PokemonCenter_1F_EventScript_16FC4A:: @ 816FC4A
+ loadword 0, gUnknown_819E59D
+ callstd 2
+ end
+
+Route10_PokemonCenter_1F_EventScript_16FC53:: @ 816FC53
+ loadword 0, gUnknown_819E523
+ callstd 2
+ end
+
+Route10_PokemonCenter_1F_EventScript_16FC5C:: @ 816FC5C
+ loadword 0, gUnknown_819E5D2
+ callstd 2
+ end
+
+Route10_PokemonCenter_1F_EventScript_16FC65:: @ 816FC65
+ lock
+ faceplayer
+ call EventScript_16FCF1
+ checkflag FLAG_0x2FA
+ goto_if 1, EventScript_16FCE7
+ loadword 0, gUnknown_819E5FB
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AD1
+ setvar VAR_0x8004, 0
+ specialvar VAR_RESULT, sub_80CA3D8
+ getnumberstring 2, VAR_0x8006
+ call EventScript_16FCF1
+ compare_var_to_value VAR_0x8006, 20
+ goto_if 0, EventScript_1A7ABD
+ loadword 0, gUnknown_819E733
+ callstd 4
+ checkitemspace ITEM_EVERSTONE, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AC7
+ additem ITEM_EVERSTONE, 1
+ loadword 0, gUnknown_819E786
+ setorcopyvar VAR_0x8000, 195
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x2FA
+ loadword 0, gUnknown_819E7AF
+ callstd 4
+ release
+ end
+
+EventScript_16FCE7:: @ 816FCE7
+ loadword 0, gUnknown_819E7AF
+ callstd 4
+ release
+ end
+
+EventScript_16FCF1:: @ 816FCF1
+ getnumberstring 0, 20
+ getitemname 1, ITEM_EVERSTONE
+ return
diff --git a/data/maps/Route10_PokemonCenter_2F/scripts.inc b/data/maps/Route10_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..26e646ed0
--- /dev/null
+++ b/data/maps/Route10_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+Route10_PokemonCenter_2F_MapScripts:: @ 816FCFA
+ map_script 2, Route10_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, Route10_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, Route10_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, Route10_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+Route10_PokemonCenter_2F_EventScript_16FD0F:: @ 816FD0F
+ call EventScript_1BB4A3
+ end
+
+EventScript_16FD15:: @ 816FD15
+ call EventScript_1BB6AB
+ end
+
+EventScript_16FD1B:: @ 816FD1B
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/Route11/scripts.inc b/data/maps/Route11/scripts.inc
new file mode 100644
index 000000000..5a369712e
--- /dev/null
+++ b/data/maps/Route11/scripts.inc
@@ -0,0 +1,7 @@
+Route11_MapScripts:: @ 8167FF6
+ .byte 0
+
+Route11_EventScript_167FF7:: @ 8167FF7
+ loadword 0, gUnknown_8185308
+ callstd 3
+ end
diff --git a/data/maps/Route11_EastEntrance_1F/scripts.inc b/data/maps/Route11_EastEntrance_1F/scripts.inc
new file mode 100644
index 000000000..af3166665
--- /dev/null
+++ b/data/maps/Route11_EastEntrance_1F/scripts.inc
@@ -0,0 +1,12 @@
+Route11_EastEntrance_1F_MapScripts:: @ 816FD21
+ .byte 0
+
+Route11_EastEntrance_1F_EventScript_16FD22:: @ 816FD22
+ loadword 0, gUnknown_819E8A6
+ callstd 2
+ end
+
+Route11_EastEntrance_1F_EventScript_16FD2B:: @ 816FD2B
+ loadword 0, gUnknown_819E97B
+ callstd 2
+ end
diff --git a/data/maps/Route11_EastEntrance_2F/scripts.inc b/data/maps/Route11_EastEntrance_2F/scripts.inc
new file mode 100644
index 000000000..9b4451b23
--- /dev/null
+++ b/data/maps/Route11_EastEntrance_2F/scripts.inc
@@ -0,0 +1,109 @@
+Route11_EastEntrance_2F_MapScripts:: @ 816FD34
+ .byte 0
+
+Route11_EastEntrance_2F_EventScript_16FD35:: @ 816FD35
+ lockall
+ checkflag FLAG_0x253
+ goto_if 1, EventScript_16FD49
+ loadword 0, gUnknown_819EC8A
+ callstd 4
+ releaseall
+ end
+
+EventScript_16FD49:: @ 816FD49
+ loadword 0, gUnknown_819ECD9
+ callstd 4
+ releaseall
+ end
+
+Route11_EastEntrance_2F_EventScript_16FD53:: @ 816FD53
+ loadword 0, gUnknown_819ED1F
+ callstd 3
+ end
+
+Route11_EastEntrance_2F_EventScript_16FD5C:: @ 816FD5C
+ lock
+ faceplayer
+ setvar VAR_0x8008, 4
+ call EventScript_1A8CAD
+ checkflag FLAG_0x251
+ goto_if 1, EventScript_16FDCE
+ loadword 0, gUnknown_81A597B
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16FDB6
+ call EventScript_1A8CBD
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_16FDB6
+ call EventScript_1A8CC9
+ compare_var_to_var VAR_RESULT, VAR_0x8009
+ goto_if 5, EventScript_16FDC0
+ call EventScript_1A8CD9
+ loadword 0, gUnknown_81A59DA
+ callstd 4
+ setflag FLAG_0x251
+ release
+ end
+
+EventScript_16FDB6:: @ 816FDB6
+ loadword 0, gUnknown_81A59B6
+ callstd 4
+ release
+ end
+
+EventScript_16FDC0:: @ 816FDC0
+ getspeciesname 0, 32777
+ loadword 0, gUnknown_81A59C6
+ callstd 4
+ release
+ end
+
+EventScript_16FDCE:: @ 816FDCE
+ loadword 0, gUnknown_81A59E7
+ callstd 4
+ release
+ end
+
+Route11_EastEntrance_2F_EventScript_16FDD8:: @ 816FDD8
+ lock
+ faceplayer
+ call EventScript_16FE64
+ checkflag FLAG_0x252
+ goto_if 1, EventScript_16FE5A
+ loadword 0, gUnknown_819E9E5
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AD1
+ setvar VAR_0x8004, 0
+ specialvar VAR_RESULT, sub_80CA3D8
+ getnumberstring 2, VAR_0x8006
+ call EventScript_16FE64
+ compare_var_to_value VAR_0x8006, 30
+ goto_if 0, EventScript_1A7ABD
+ loadword 0, gUnknown_819EAE4
+ callstd 4
+ checkitemspace ITEM_ITEMFINDER, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AC7
+ additem ITEM_ITEMFINDER, 1
+ loadword 0, gUnknown_819EB37
+ setorcopyvar VAR_0x8000, 261
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x252
+ loadword 0, gUnknown_819EB59
+ callstd 4
+ release
+ end
+
+EventScript_16FE5A:: @ 816FE5A
+ loadword 0, gUnknown_819EB59
+ callstd 4
+ release
+ end
+
+EventScript_16FE64:: @ 816FE64
+ getnumberstring 0, 30
+ getitemname 1, ITEM_ITEMFINDER
+ return
diff --git a/data/maps/Route12/scripts.inc b/data/maps/Route12/scripts.inc
new file mode 100644
index 000000000..4f587cdd5
--- /dev/null
+++ b/data/maps/Route12/scripts.inc
@@ -0,0 +1,72 @@
+Route12_MapScripts:: @ 8168000
+ map_script 5, Route12_MapScript1_168006
+ .byte 0
+
+Route12_MapScript1_168006:: @ 8168006
+ checkflag 2055
+ call_if 1, EventScript_168010
+ end
+
+EventScript_168010:: @ 8168010
+ removeobject VAR_LAST_TALKED
+ return
+
+Route12_EventScript_168014:: @ 8168014
+ lock
+ faceplayer
+ checkflag FLAG_0x23D
+ goto_if 0, EventScript_168099
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ loadword 0, gUnknown_81853CC
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16808D
+ call EventScript_1A924B
+ setwildbattle SPECIES_SNORLAX, 30, ITEM_NONE
+ waitse
+ playmoncry SPECIES_SNORLAX, 2
+ delay 40
+ waitmoncry
+ setflag FLAG_0x054
+ setflag 2055
+ setflag FLAG_0x253
+ dowildbattle
+ clearflag 2055
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16808F
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_16808F
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_16808F
+ release
+ end
+
+EventScript_16808D:: @ 816808D
+ release
+ end
+
+EventScript_16808F:: @ 816808F
+ loadword 0, gUnknown_8185383
+ callstd 4
+ release
+ end
+
+EventScript_168099:: @ 8168099
+ loadword 0, gUnknown_8185317
+ callstd 4
+ release
+ end
+
+Route12_EventScript_1680A3:: @ 81680A3
+ loadword 0, gUnknown_8185797
+ callstd 3
+ end
+
+Route12_EventScript_1680AC:: @ 81680AC
+ loadword 0, gUnknown_81857B3
+ callstd 3
+ end
diff --git a/data/maps/Route12_FishingHouse/scripts.inc b/data/maps/Route12_FishingHouse/scripts.inc
new file mode 100644
index 000000000..b1da71b49
--- /dev/null
+++ b/data/maps/Route12_FishingHouse/scripts.inc
@@ -0,0 +1,137 @@
+Route12_FishingHouse_MapScripts:: @ 816FF0B
+ .byte 0
+
+Route12_FishingHouse_EventScript_16FF0C:: @ 816FF0C
+ lock
+ faceplayer
+ checkflag FLAG_0x255
+ goto_if 1, EventScript_16FF7F
+ loadword 0, gUnknown_819EFE0
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16FF34
+ loadword 0, gUnknown_819F1FA
+ callstd 4
+ release
+ end
+
+EventScript_16FF34:: @ 816FF34
+ checkitemspace ITEM_SUPER_ROD, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16FF75
+ additem ITEM_SUPER_ROD, 1
+ loadword 0, gUnknown_819F05B
+ callstd 4
+ loadword 0, gUnknown_819F0B2
+ setorcopyvar VAR_0x8000, 264
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x255
+ loadword 0, gUnknown_819F0EB
+ callstd 4
+ release
+ end
+
+EventScript_16FF75:: @ 816FF75
+ loadword 0, gUnknown_819F494
+ callstd 4
+ release
+ end
+
+EventScript_16FF7F:: @ 816FF7F
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ setvar VAR_0x8004, 129
+ specialvar VAR_RESULT, sub_80CC48C
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16FFF5
+ special sub_80A096C
+ loadword 0, gUnknown_819F2DB
+ callstd 4
+ special sub_80BF8FC
+ waitstate
+ copyvar VAR_RESULT, VAR_0x8004
+ compare_var_to_value VAR_RESULT, 6
+ goto_if 4, EventScript_16FFFF
+ special sub_80A0984
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_170001
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_17000B
+ compare_var_to_value VAR_RESULT, 3
+ goto_if 1, EventScript_170031
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_17001E
+ release
+ end
+
+EventScript_16FFF5:: @ 816FFF5
+ loadword 0, gUnknown_819F217
+ callstd 4
+ release
+ end
+
+EventScript_16FFFF:: @ 816FFFF
+ release
+ end
+
+EventScript_170001:: @ 8170001
+ loadword 0, gUnknown_819F468
+ callstd 4
+ release
+ end
+
+EventScript_17000B:: @ 817000B
+ checkflag FLAG_0x29C
+ goto_if 0, EventScript_170031
+ loadword 0, gUnknown_819F40A
+ callstd 4
+ release
+ end
+
+EventScript_17001E:: @ 817001E
+ checkflag FLAG_0x29C
+ goto_if 0, EventScript_170031
+ loadword 0, gUnknown_819F3CB
+ callstd 4
+ release
+ end
+
+EventScript_170031:: @ 8170031
+ setflag FLAG_0x29C
+ loadword 0, gUnknown_819F31B
+ callstd 4
+ setorcopyvar VAR_0x8000, 6
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_17005D
+ loadword 0, gUnknown_819F395
+ callstd 4
+ release
+ end
+
+EventScript_17005D:: @ 817005D
+ loadword 0, gUnknown_819F494
+ callstd 4
+ release
+ end
+
+Route12_FishingHouse_EventScript_170067:: @ 8170067
+ lockall
+ checkflag FLAG_0x29C
+ goto_if 1, EventScript_17007B
+ loadword 0, gUnknown_819F50C
+ callstd 4
+ releaseall
+ end
+
+EventScript_17007B:: @ 817007B
+ special sub_80A096C
+ loadword 0, gUnknown_819F4CF
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/Route12_NorthEntrance_1F/scripts.inc b/data/maps/Route12_NorthEntrance_1F/scripts.inc
new file mode 100644
index 000000000..19b7315df
--- /dev/null
+++ b/data/maps/Route12_NorthEntrance_1F/scripts.inc
@@ -0,0 +1,7 @@
+Route12_NorthEntrance_1F_MapScripts:: @ 816FE6D
+ .byte 0
+
+Route12_NorthEntrance_1F_EventScript_16FE6E:: @ 816FE6E
+ loadword 0, gUnknown_819EDA7
+ callstd 2
+ end
diff --git a/data/maps/Route12_NorthEntrance_2F/scripts.inc b/data/maps/Route12_NorthEntrance_2F/scripts.inc
new file mode 100644
index 000000000..822f721f5
--- /dev/null
+++ b/data/maps/Route12_NorthEntrance_2F/scripts.inc
@@ -0,0 +1,59 @@
+Route12_NorthEntrance_2F_MapScripts:: @ 816FE77
+ .byte 0
+
+Route12_NorthEntrance_2F_EventScript_16FE78:: @ 816FE78
+ loadword 0, gUnknown_819EF5D
+ callstd 3
+ end
+
+Route12_NorthEntrance_2F_EventScript_16FE81:: @ 816FE81
+ loadword 0, gUnknown_819EFA0
+ callstd 3
+ end
+
+Route12_NorthEntrance_2F_EventScript_16FE8A:: @ 816FE8A
+ lock
+ faceplayer
+ checkflag FLAG_0x25B
+ goto_if 1, EventScript_16FF01
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16FEE5
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_16FEEE
+ checkitemspace ITEM_TM27, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16FEF7
+ additem ITEM_TM27, 1
+ loadword 0, gUnknown_819EE9F
+ setorcopyvar VAR_0x8000, 315
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ loadword 0, gUnknown_819EEC6
+ callstd 4
+ setflag FLAG_0x25B
+ release
+ end
+
+EventScript_16FEE5:: @ 816FEE5
+ loadword 0, gUnknown_819EDE1
+ callstd 4
+ return
+
+EventScript_16FEEE:: @ 816FEEE
+ loadword 0, gUnknown_819EE40
+ callstd 4
+ return
+
+EventScript_16FEF7:: @ 816FEF7
+ loadword 0, gUnknown_819EF3F
+ callstd 4
+ release
+ end
+
+EventScript_16FF01:: @ 816FF01
+ loadword 0, gUnknown_819EEC6
+ callstd 4
+ release
+ end
diff --git a/data/maps/Route13/scripts.inc b/data/maps/Route13/scripts.inc
new file mode 100644
index 000000000..a2c8ca7c9
--- /dev/null
+++ b/data/maps/Route13/scripts.inc
@@ -0,0 +1,17 @@
+Route13_MapScripts:: @ 81680B5
+ .byte 0
+
+Route13_EventScript_1680B6:: @ 81680B6
+ loadword 0, gUnknown_8185DB7
+ callstd 3
+ end
+
+Route13_EventScript_1680BF:: @ 81680BF
+ loadword 0, gUnknown_8185DEF
+ callstd 3
+ end
+
+Route13_EventScript_1680C8:: @ 81680C8
+ loadword 0, gUnknown_8185E2C
+ callstd 3
+ end
diff --git a/data/maps/Route14/scripts.inc b/data/maps/Route14/scripts.inc
new file mode 100644
index 000000000..20cc90520
--- /dev/null
+++ b/data/maps/Route14/scripts.inc
@@ -0,0 +1,7 @@
+Route14_MapScripts:: @ 81680D1
+ .byte 0
+
+Route14_EventScript_1680D2:: @ 81680D2
+ loadword 0, gUnknown_8186399
+ callstd 3
+ end
diff --git a/data/maps/Route15/scripts.inc b/data/maps/Route15/scripts.inc
new file mode 100644
index 000000000..2f19dbbcc
--- /dev/null
+++ b/data/maps/Route15/scripts.inc
@@ -0,0 +1,7 @@
+Route15_MapScripts:: @ 81680DB
+ .byte 0
+
+Route15_EventScript_1680DC:: @ 81680DC
+ loadword 0, gUnknown_8186A77
+ callstd 3
+ end
diff --git a/data/maps/Route15_WestEntrance_1F/scripts.inc b/data/maps/Route15_WestEntrance_1F/scripts.inc
new file mode 100644
index 000000000..32085e1e7
--- /dev/null
+++ b/data/maps/Route15_WestEntrance_1F/scripts.inc
@@ -0,0 +1,7 @@
+Route15_WestEntrance_1F_MapScripts:: @ 8170088
+ .byte 0
+
+Route15_WestEntrance_1F_EventScript_170089:: @ 8170089
+ loadword 0, gUnknown_819F560
+ callstd 2
+ end
diff --git a/data/maps/Route15_WestEntrance_2F/scripts.inc b/data/maps/Route15_WestEntrance_2F/scripts.inc
new file mode 100644
index 000000000..67ccc5214
--- /dev/null
+++ b/data/maps/Route15_WestEntrance_2F/scripts.inc
@@ -0,0 +1,64 @@
+Route15_WestEntrance_2F_MapScripts:: @ 8170092
+ .byte 0
+
+Route15_WestEntrance_2F_EventScript_170093:: @ 8170093
+ lockall
+ loadword 0, gUnknown_819F79C
+ callstd 4
+ drawmonpic SPECIES_ARTICUNO, 10, 3
+ delay 20
+ waitbuttonpress
+ erasemonpic
+ setvar VAR_0x8004, 144
+ special sub_80CBDCC
+ releaseall
+ end
+
+Route15_WestEntrance_2F_EventScript_1700B0:: @ 81700B0
+ loadword 0, gUnknown_819F7F8
+ callstd 3
+ end
+
+Route15_WestEntrance_2F_EventScript_1700B9:: @ 81700B9
+ lock
+ faceplayer
+ call EventScript_170145
+ checkflag FLAG_0x256
+ goto_if 1, EventScript_17013B
+ loadword 0, gUnknown_819F5AB
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AD1
+ setvar VAR_0x8004, 0
+ specialvar VAR_RESULT, sub_80CA3D8
+ getnumberstring 2, VAR_0x8006
+ call EventScript_170145
+ compare_var_to_value VAR_0x8006, 50
+ goto_if 0, EventScript_1A7ABD
+ loadword 0, gUnknown_819F6AA
+ callstd 4
+ checkitemspace ITEM_EXP_SHARE, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AC7
+ additem ITEM_EXP_SHARE, 1
+ loadword 0, gUnknown_819F6FD
+ setorcopyvar VAR_0x8000, 182
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x256
+ loadword 0, gUnknown_819F71F
+ callstd 4
+ release
+ end
+
+EventScript_17013B:: @ 817013B
+ loadword 0, gUnknown_819F71F
+ callstd 4
+ release
+ end
+
+EventScript_170145:: @ 8170145
+ getnumberstring 0, 50
+ getitemname 1, ITEM_EXP_SHARE
+ return
diff --git a/data/maps/Route16/scripts.inc b/data/maps/Route16/scripts.inc
new file mode 100644
index 000000000..e06522f56
--- /dev/null
+++ b/data/maps/Route16/scripts.inc
@@ -0,0 +1,90 @@
+Route16_MapScripts:: @ 81680E5
+ map_script 5, Route16_MapScript1_1680F5
+ map_script 3, Route16_MapScript2_168103
+ map_script 4, Route16_MapScript3_168113
+ .byte 0
+
+Route16_MapScript1_1680F5:: @ 81680F5
+ checkflag 2055
+ call_if 1, EventScript_1680FF
+ end
+
+EventScript_1680FF:: @ 81680FF
+ removeobject VAR_LAST_TALKED
+ return
+
+Route16_MapScript2_168103:: @ 8168103
+ compare_var_to_value VAR_0x405E, 1
+ call_if 1, EventScript_16810F
+ end
+
+EventScript_16810F:: @ 816810F
+ setflag 2096
+ return
+
+Route16_MapScript3_168113:: @ 8168113
+ map_script_2 VAR_0x405E, 1, EventScript_16811D
+ .2byte 0
+
+EventScript_16811D:: @ 816811D
+ special sub_80CA630
+ end
+
+Route16_EventScript_168121:: @ 8168121
+ lock
+ faceplayer
+ checkflag FLAG_0x23D
+ goto_if 0, EventScript_1681A3
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ loadword 0, gUnknown_81853CC
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_168197
+ call EventScript_1A924B
+ setwildbattle SPECIES_SNORLAX, 30, ITEM_NONE
+ waitse
+ playmoncry SPECIES_SNORLAX, 2
+ delay 40
+ waitmoncry
+ setflag FLAG_0x080
+ setflag 2055
+ dowildbattle
+ clearflag 2055
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_168199
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_168199
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_168199
+ release
+ end
+
+EventScript_168197:: @ 8168197
+ release
+ end
+
+EventScript_168199:: @ 8168199
+ loadword 0, gUnknown_8185383
+ callstd 4
+ release
+ end
+
+EventScript_1681A3:: @ 81681A3
+ loadword 0, gUnknown_8186F3D
+ callstd 4
+ release
+ end
+
+Route16_EventScript_1681AD:: @ 81681AD
+ loadword 0, gUnknown_8186F7A
+ callstd 3
+ end
+
+Route16_EventScript_1681B6:: @ 81681B6
+ loadword 0, gUnknown_8186F98
+ callstd 3
+ end
diff --git a/data/maps/Route16_House/scripts.inc b/data/maps/Route16_House/scripts.inc
new file mode 100644
index 000000000..12a4251d8
--- /dev/null
+++ b/data/maps/Route16_House/scripts.inc
@@ -0,0 +1,47 @@
+Route16_House_MapScripts:: @ 817014E
+ .byte 0
+
+Route16_House_EventScript_17014F:: @ 817014F
+ lock
+ faceplayer
+ checkflag FLAG_0x238
+ goto_if 1, EventScript_1701A5
+ loadword 0, gUnknown_819F851
+ callstd 4
+ checkitemspace ITEM_HM02, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_17019B
+ additem ITEM_HM02, 1
+ loadword 0, gUnknown_819F8C0
+ setorcopyvar VAR_0x8000, 340
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ loadword 0, gUnknown_819F8E0
+ callstd 4
+ setflag FLAG_0x238
+ release
+ end
+
+EventScript_17019B:: @ 817019B
+ loadword 0, gUnknown_819F92D
+ callstd 4
+ release
+ end
+
+EventScript_1701A5:: @ 81701A5
+ loadword 0, gUnknown_819F8E0
+ callstd 4
+ release
+ end
+
+Route16_House_EventScript_1701AF:: @ 81701AF
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_FEAROW, 0
+ loadword 0, gUnknown_819F94F
+ callstd 4
+ waitmoncry
+ release
+ end
diff --git a/data/maps/Route16_NorthEntrance_1F/scripts.inc b/data/maps/Route16_NorthEntrance_1F/scripts.inc
new file mode 100644
index 000000000..b288d45ce
--- /dev/null
+++ b/data/maps/Route16_NorthEntrance_1F/scripts.inc
@@ -0,0 +1,123 @@
+Route16_NorthEntrance_1F_MapScripts:: @ 81701C2
+ map_script 3, Route16_NorthEntrance_1F_MapScript1_1701C8
+ .byte 0
+
+Route16_NorthEntrance_1F_MapScript1_1701C8:: @ 81701C8
+ clearflag 2096
+ checkflag FLAG_0x271
+ call_if 1, EventScript_1701D5
+ end
+
+EventScript_1701D5:: @ 81701D5
+ setvar VAR_0x4001, 1
+ return
+
+Route16_NorthEntrance_1F_EventScript_1701DB:: @ 81701DB
+ loadword 0, gUnknown_819F98B
+ callstd 2
+ end
+
+Route16_NorthEntrance_1F_EventScript_1701E4:: @ 81701E4
+ lockall
+ setvar VAR_0x8008, 0
+ goto EventScript_170220
+ end
+
+Route16_NorthEntrance_1F_EventScript_1701F0:: @ 81701F0
+ lockall
+ setvar VAR_0x8008, 1
+ goto EventScript_170220
+ end
+
+Route16_NorthEntrance_1F_EventScript_1701FC:: @ 81701FC
+ lockall
+ setvar VAR_0x8008, 2
+ goto EventScript_170220
+ end
+
+Route16_NorthEntrance_1F_EventScript_170208:: @ 8170208
+ lockall
+ setvar VAR_0x8008, 3
+ goto EventScript_170220
+ end
+
+Route16_NorthEntrance_1F_EventScript_170214:: @ 8170214
+ lockall
+ setvar VAR_0x8008, 4
+ goto EventScript_170220
+ end
+
+EventScript_170220:: @ 8170220
+ textcolor 0
+ loadword 0, gUnknown_819F9CC
+ callstd 4
+ closemessage
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ delay 20
+ compare_var_to_value VAR_0x8008, 1
+ call_if 1, EventScript_170279
+ compare_var_to_value VAR_0x8008, 2
+ call_if 1, EventScript_170284
+ compare_var_to_value VAR_0x8008, 3
+ call_if 1, EventScript_17028F
+ compare_var_to_value VAR_0x8008, 4
+ call_if 1, EventScript_17029A
+ loadword 0, gUnknown_819F95F
+ callstd 4
+ closemessage
+ applymovement 255, Movement_1702B3
+ waitmovement 0
+ releaseall
+ end
+
+EventScript_170279:: @ 8170279
+ applymovement 255, Movement_1702A5
+ waitmovement 0
+ return
+
+EventScript_170284:: @ 8170284
+ applymovement 255, Movement_1702A7
+ waitmovement 0
+ return
+
+EventScript_17028F:: @ 817028F
+ applymovement 255, Movement_1702AA
+ waitmovement 0
+ return
+
+EventScript_17029A:: @ 817029A
+ applymovement 255, Movement_1702AE
+ waitmovement 0
+ return
+
+Movement_1702A5:: @ 81702A5
+ step_11
+ step_end
+
+Movement_1702A7:: @ 81702A7
+ step_11
+ step_11
+ step_end
+
+Movement_1702AA:: @ 81702AA
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_1702AE:: @ 81702AE
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_1702B3:: @ 81702B3
+ step_13
+ step_end
+
+Route16_NorthEntrance_1F_EventScript_1702B5:: @ 81702B5
+ loadword 0, gUnknown_819F9E8
+ callstd 2
+ end
diff --git a/data/maps/Route16_NorthEntrance_2F/scripts.inc b/data/maps/Route16_NorthEntrance_2F/scripts.inc
new file mode 100644
index 000000000..3a5a2a48b
--- /dev/null
+++ b/data/maps/Route16_NorthEntrance_2F/scripts.inc
@@ -0,0 +1,66 @@
+Route16_NorthEntrance_2F_MapScripts:: @ 81702BE
+ .byte 0
+
+Route16_NorthEntrance_2F_EventScript_1702BF:: @ 81702BF
+ loadword 0, gUnknown_819FA07
+ callstd 2
+ end
+
+Route16_NorthEntrance_2F_EventScript_1702C8:: @ 81702C8
+ loadword 0, gUnknown_819FA41
+ callstd 2
+ end
+
+Route16_NorthEntrance_2F_EventScript_1702D1:: @ 81702D1
+ loadword 0, gUnknown_819FA6F
+ callstd 3
+ end
+
+Route16_NorthEntrance_2F_EventScript_1702DA:: @ 81702DA
+ loadword 0, gUnknown_819FAB9
+ callstd 3
+ end
+
+Route16_NorthEntrance_2F_EventScript_1702E3:: @ 81702E3
+ lock
+ faceplayer
+ call EventScript_17036F
+ checkflag FLAG_0x2FD
+ goto_if 1, EventScript_170365
+ loadword 0, gUnknown_819FB0E
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AD1
+ setvar VAR_0x8004, 0
+ specialvar VAR_RESULT, sub_80CA3D8
+ getnumberstring 2, VAR_0x8006
+ call EventScript_17036F
+ compare_var_to_value VAR_0x8006, 40
+ goto_if 0, EventScript_1A7ABD
+ loadword 0, gUnknown_819FC15
+ callstd 4
+ checkitemspace ITEM_AMULET_COIN, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AC7
+ additem ITEM_AMULET_COIN, 1
+ loadword 0, gUnknown_819FC68
+ setorcopyvar VAR_0x8000, 189
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x2FD
+ loadword 0, gUnknown_819FC93
+ callstd 4
+ release
+ end
+
+EventScript_170365:: @ 8170365
+ loadword 0, gUnknown_819FC93
+ callstd 4
+ release
+ end
+
+EventScript_17036F:: @ 817036F
+ getnumberstring 0, 40
+ getitemname 1, ITEM_AMULET_COIN
+ return
diff --git a/data/maps/Route17/scripts.inc b/data/maps/Route17/scripts.inc
new file mode 100644
index 000000000..8278392d0
--- /dev/null
+++ b/data/maps/Route17/scripts.inc
@@ -0,0 +1,32 @@
+Route17_MapScripts:: @ 81681BF
+ .byte 0
+
+Route17_EventScript_1681C0:: @ 81681C0
+ loadword 0, gUnknown_81874E4
+ callstd 3
+ end
+
+Route17_EventScript_1681C9:: @ 81681C9
+ loadword 0, gUnknown_8187512
+ callstd 3
+ end
+
+Route17_EventScript_1681D2:: @ 81681D2
+ loadword 0, gUnknown_818757B
+ callstd 3
+ end
+
+Route17_EventScript_1681DB:: @ 81681DB
+ loadword 0, gUnknown_81875BE
+ callstd 3
+ end
+
+Route17_EventScript_1681E4:: @ 81681E4
+ loadword 0, gUnknown_81875E3
+ callstd 3
+ end
+
+Route17_EventScript_1681ED:: @ 81681ED
+ loadword 0, gUnknown_8187622
+ callstd 3
+ end
diff --git a/data/maps/Route18/scripts.inc b/data/maps/Route18/scripts.inc
new file mode 100644
index 000000000..b7fcc41ab
--- /dev/null
+++ b/data/maps/Route18/scripts.inc
@@ -0,0 +1,31 @@
+Route18_MapScripts:: @ 81681F6
+ map_script 3, Route18_MapScript1_168201
+ map_script 4, Route18_MapScript2_168211
+ .byte 0
+
+Route18_MapScript1_168201:: @ 8168201
+ compare_var_to_value VAR_0x405E, 1
+ call_if 1, EventScript_16820D
+ end
+
+EventScript_16820D:: @ 816820D
+ setflag 2096
+ return
+
+Route18_MapScript2_168211:: @ 8168211
+ map_script_2 VAR_0x405E, 1, EventScript_16821B
+ .2byte 0
+
+EventScript_16821B:: @ 816821B
+ special sub_80CA630
+ end
+
+Route18_EventScript_16821F:: @ 816821F
+ loadword 0, gUnknown_8187757
+ callstd 3
+ end
+
+Route18_EventScript_168228:: @ 8168228
+ loadword 0, gUnknown_818777C
+ callstd 3
+ end
diff --git a/data/maps/Route18_EastEntrance_1F/scripts.inc b/data/maps/Route18_EastEntrance_1F/scripts.inc
new file mode 100644
index 000000000..0a55befaa
--- /dev/null
+++ b/data/maps/Route18_EastEntrance_1F/scripts.inc
@@ -0,0 +1,118 @@
+Route18_EastEntrance_1F_MapScripts:: @ 8170378
+ map_script 3, Route18_EastEntrance_1F_MapScript1_17037E
+ .byte 0
+
+Route18_EastEntrance_1F_MapScript1_17037E:: @ 817037E
+ clearflag 2096
+ checkflag FLAG_0x271
+ call_if 1, EventScript_17038B
+ end
+
+EventScript_17038B:: @ 817038B
+ setvar VAR_0x4001, 1
+ return
+
+Route18_EastEntrance_1F_EventScript_170391:: @ 8170391
+ loadword 0, gUnknown_819FD3A
+ callstd 2
+ end
+
+Route18_EastEntrance_1F_EventScript_17039A:: @ 817039A
+ lockall
+ setvar VAR_0x8008, 0
+ goto EventScript_1703D6
+ end
+
+Route18_EastEntrance_1F_EventScript_1703A6:: @ 81703A6
+ lockall
+ setvar VAR_0x8008, 1
+ goto EventScript_1703D6
+ end
+
+Route18_EastEntrance_1F_EventScript_1703B2:: @ 81703B2
+ lockall
+ setvar VAR_0x8008, 2
+ goto EventScript_1703D6
+ end
+
+Route18_EastEntrance_1F_EventScript_1703BE:: @ 81703BE
+ lockall
+ setvar VAR_0x8008, 3
+ goto EventScript_1703D6
+ end
+
+Route18_EastEntrance_1F_EventScript_1703CA:: @ 81703CA
+ lockall
+ setvar VAR_0x8008, 4
+ goto EventScript_1703D6
+ end
+
+EventScript_1703D6:: @ 81703D6
+ textcolor 0
+ loadword 0, gUnknown_819FD60
+ callstd 4
+ closemessage
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ delay 20
+ compare_var_to_value VAR_0x8008, 1
+ call_if 1, EventScript_17042F
+ compare_var_to_value VAR_0x8008, 2
+ call_if 1, EventScript_17043A
+ compare_var_to_value VAR_0x8008, 3
+ call_if 1, EventScript_170445
+ compare_var_to_value VAR_0x8008, 4
+ call_if 1, EventScript_170450
+ loadword 0, gUnknown_819FD0C
+ callstd 4
+ closemessage
+ applymovement 255, Movement_170469
+ waitmovement 0
+ releaseall
+ end
+
+EventScript_17042F:: @ 817042F
+ applymovement 255, Movement_17045B
+ waitmovement 0
+ return
+
+EventScript_17043A:: @ 817043A
+ applymovement 255, Movement_17045D
+ waitmovement 0
+ return
+
+EventScript_170445:: @ 8170445
+ applymovement 255, Movement_170460
+ waitmovement 0
+ return
+
+EventScript_170450:: @ 8170450
+ applymovement 255, Movement_170464
+ waitmovement 0
+ return
+
+Movement_17045B:: @ 817045B
+ step_11
+ step_end
+
+Movement_17045D:: @ 817045D
+ step_11
+ step_11
+ step_end
+
+Movement_170460:: @ 8170460
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_170464:: @ 8170464
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_170469:: @ 8170469
+ step_13
+ step_end
diff --git a/data/maps/Route18_EastEntrance_2F/scripts.inc b/data/maps/Route18_EastEntrance_2F/scripts.inc
new file mode 100644
index 000000000..84bcd23b3
--- /dev/null
+++ b/data/maps/Route18_EastEntrance_2F/scripts.inc
@@ -0,0 +1,55 @@
+Route18_EastEntrance_2F_MapScripts:: @ 817046B
+ .byte 0
+
+Route18_EastEntrance_2F_EventScript_17046C:: @ 817046C
+ loadword 0, gUnknown_819FD6B
+ callstd 3
+ end
+
+Route18_EastEntrance_2F_EventScript_170475:: @ 8170475
+ loadword 0, gUnknown_819FDB3
+ callstd 3
+ end
+
+Route18_EastEntrance_2F_EventScript_17047E:: @ 817047E
+ lock
+ faceplayer
+ setvar VAR_0x8008, 5
+ call EventScript_1A8CAD
+ checkflag FLAG_0x257
+ goto_if 1, EventScript_1704F0
+ loadword 0, gUnknown_81A597B
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1704D8
+ call EventScript_1A8CBD
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_1704D8
+ call EventScript_1A8CC9
+ compare_var_to_var VAR_RESULT, VAR_0x8009
+ goto_if 5, EventScript_1704E2
+ call EventScript_1A8CD9
+ loadword 0, gUnknown_81A59DA
+ callstd 4
+ setflag FLAG_0x257
+ release
+ end
+
+EventScript_1704D8:: @ 81704D8
+ loadword 0, gUnknown_81A59B6
+ callstd 4
+ release
+ end
+
+EventScript_1704E2:: @ 81704E2
+ getspeciesname 0, 32777
+ loadword 0, gUnknown_81A59C6
+ callstd 4
+ release
+ end
+
+EventScript_1704F0:: @ 81704F0
+ loadword 0, gUnknown_81A59E7
+ callstd 4
+ release
+ end
diff --git a/data/maps/Route19/scripts.inc b/data/maps/Route19/scripts.inc
new file mode 100644
index 000000000..19af9f870
--- /dev/null
+++ b/data/maps/Route19/scripts.inc
@@ -0,0 +1,7 @@
+Route19_MapScripts:: @ 8168231
+ .byte 0
+
+Route19_EventScript_168232:: @ 8168232
+ loadword 0, gUnknown_8187C06
+ callstd 3
+ end
diff --git a/data/maps/Route2/scripts.inc b/data/maps/Route2/scripts.inc
new file mode 100644
index 000000000..8623b3622
--- /dev/null
+++ b/data/maps/Route2/scripts.inc
@@ -0,0 +1,12 @@
+Route2_MapScripts:: @ 8167F64
+ .byte 0
+
+Route2_EventScript_167F65:: @ 8167F65
+ loadword 0, gUnknown_818345E
+ callstd 3
+ end
+
+Route2_EventScript_167F6E:: @ 8167F6E
+ loadword 0, gUnknown_8183482
+ callstd 3
+ end
diff --git a/data/maps/Route20/scripts.inc b/data/maps/Route20/scripts.inc
new file mode 100644
index 000000000..e611d1f73
--- /dev/null
+++ b/data/maps/Route20/scripts.inc
@@ -0,0 +1,35 @@
+Route20_MapScripts:: @ 816823B
+ map_script 3, Route20_MapScript1_168241
+ .byte 0
+
+Route20_MapScript1_168241:: @ 8168241
+ checkflag FLAG_0x2D2
+ call_if 0, EventScript_168254
+ checkflag FLAG_0x2D3
+ call_if 0, EventScript_16826D
+ end
+
+EventScript_168254:: @ 8168254
+ clearflag FLAG_0x040
+ clearflag FLAG_0x041
+ setflag FLAG_0x042
+ setflag FLAG_0x043
+ setflag FLAG_0x044
+ setflag FLAG_0x045
+ setflag FLAG_0x046
+ setflag FLAG_0x047
+ return
+
+EventScript_16826D:: @ 816826D
+ clearflag FLAG_0x048
+ clearflag FLAG_0x049
+ clearflag FLAG_0x04A
+ clearflag FLAG_0x04B
+ setflag FLAG_0x04C
+ setflag FLAG_0x04D
+ return
+
+Route20_EventScript_168280:: @ 8168280
+ loadword 0, gUnknown_81882D1
+ callstd 3
+ end
diff --git a/data/maps/Route21_North/scripts.inc b/data/maps/Route21_North/scripts.inc
new file mode 100644
index 000000000..a7436e8ec
--- /dev/null
+++ b/data/maps/Route21_North/scripts.inc
@@ -0,0 +1,2 @@
+Route21_North_MapScripts:: @ 8168289
+ .byte 0
diff --git a/data/maps/Route21_South/scripts.inc b/data/maps/Route21_South/scripts.inc
new file mode 100644
index 000000000..ea3478a2b
--- /dev/null
+++ b/data/maps/Route21_South/scripts.inc
@@ -0,0 +1,2 @@
+Route21_South_MapScripts:: @ 816828A
+ .byte 0
diff --git a/data/maps/Route22/scripts.inc b/data/maps/Route22/scripts.inc
new file mode 100644
index 000000000..30dbed8a1
--- /dev/null
+++ b/data/maps/Route22/scripts.inc
@@ -0,0 +1,266 @@
+Route22_MapScripts:: @ 816828B
+ .byte 0
+
+Route22_EventScript_16828C:: @ 816828C
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_1682BE
+
+EventScript_168297:: @ 8168297
+ end
+
+Route22_EventScript_168298:: @ 8168298
+ lockall
+ setvar VAR_0x4001, 1
+ setobjectxyperm 1, 25, 5
+ goto EventScript_1682BE
+
+EventScript_1682AA:: @ 81682AA
+ end
+
+Route22_EventScript_1682AB:: @ 81682AB
+ lockall
+ setvar VAR_0x4001, 2
+ setobjectxyperm 1, 25, 5
+ goto EventScript_1682BE
+
+EventScript_1682BD:: @ 81682BD
+ end
+
+EventScript_1682BE:: @ 81682BE
+ textcolor 0
+ playbgm BGM_FRLG_RIVAL, 0
+ addobject 1
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_168350
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_168350
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_16835B
+ delay 6
+ loadword 0, gUnknown_8188890
+ callstd 4
+ compare_var_to_value VAR_STARTER_MON, 2
+ call_if 1, EventScript_16836D
+ compare_var_to_value VAR_STARTER_MON, 1
+ call_if 1, EventScript_16837C
+ compare_var_to_value VAR_STARTER_MON, 0
+ call_if 1, EventScript_16838B
+ loadword 0, gUnknown_8188974
+ callstd 4
+ closemessage
+ delay 10
+ playbgm BGM_FRLG_RIVAL_POSTBATTLE, 0
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16839A
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16839A
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_1683A5
+ fadedefaultbgm
+ removeobject 1
+ setvar VAR_0x4054, 2
+ releaseall
+ end
+
+EventScript_168350:: @ 8168350
+ applymovement 1, Movement_1683D1
+ waitmovement 0
+ return
+
+EventScript_16835B:: @ 816835B
+ applymovement 1, Movement_1683D9
+ applymovement 255, Movement_1683E3
+ waitmovement 0
+ return
+
+EventScript_16836D:: @ 816836D
+ trainerbattle 9, 329, 0, Text_188959, Text_18DE1A
+ return
+
+EventScript_16837C:: @ 816837C
+ trainerbattle 9, 330, 0, Text_188959, Text_18DE1A
+ return
+
+EventScript_16838B:: @ 816838B
+ trainerbattle 9, 331, 0, Text_188959, Text_18DE1A
+ return
+
+EventScript_16839A:: @ 816839A
+ applymovement 1, Movement_1683B8
+ waitmovement 0
+ return
+
+EventScript_1683A5:: @ 81683A5
+ applymovement 1, Movement_1683C5
+ waitmovement 0
+ return
+
+Movement_1683B0:: @ 8
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_1683B8:: @ 81683B8
+ step_10
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_1683C5:: @ 81683C5
+ step_13
+ step_13
+ step_13
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_1683D1:: @ 81683D1
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_end
+
+Movement_1683D9:: @ 81683D9
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_13
+ step_2d
+ step_end
+
+Movement_1683E3:: @ 81683E3
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_1b
+ step_2e
+ step_end
+
+Route22_EventScript_1683ED:: @ 81683ED
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16841F
+
+EventScript_1683F8:: @ 81683F8
+ end
+
+Route22_EventScript_1683F9:: @ 81683F9
+ lockall
+ setvar VAR_0x4001, 1
+ setobjectxyperm 1, 25, 5
+ goto EventScript_16841F
+
+EventScript_16840B:: @ 816840B
+ end
+
+Route22_EventScript_16840C:: @ 816840C
+ lockall
+ setvar VAR_0x4001, 2
+ setobjectxyperm 1, 25, 5
+ goto EventScript_16841F
+
+EventScript_16841E:: @ 816841E
+ end
+
+EventScript_16841F:: @ 816841F
+ textcolor 0
+ playbgm BGM_FRLG_RIVAL, 0
+ addobject 1
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16849C
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16849C
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_1684A7
+ loadword 0, gUnknown_8188A3C
+ callstd 4
+ setvar VAR_LAST_TALKED, 1
+ compare_var_to_value VAR_STARTER_MON, 2
+ call_if 1, EventScript_1684B9
+ compare_var_to_value VAR_STARTER_MON, 1
+ call_if 1, EventScript_1684C4
+ compare_var_to_value VAR_STARTER_MON, 0
+ call_if 1, EventScript_1684CF
+ loadword 0, gUnknown_8188B29
+ callstd 4
+ closemessage
+ delay 10
+ playbgm BGM_FRLG_RIVAL_POSTBATTLE, 0
+ applymovement 1, Movement_1684DA
+ waitmovement 0
+ fadedefaultbgm
+ removeobject 1
+ setvar VAR_0x4054, 4
+ releaseall
+ end
+
+EventScript_16849C:: @ 816849C
+ applymovement 1, Movement_1683D1
+ waitmovement 0
+ return
+
+EventScript_1684A7:: @ 81684A7
+ applymovement 1, Movement_1683D9
+ applymovement 255, Movement_1683E3
+ waitmovement 0
+ return
+
+EventScript_1684B9:: @ 81684B9
+ trainerbattle 3, 435, 0, Text_188B08
+ return
+
+EventScript_1684C4:: @ 81684C4
+ trainerbattle 3, 436, 0, Text_188B08
+ return
+
+EventScript_1684CF:: @ 81684CF
+ trainerbattle 3, 437, 0, Text_188B08
+ return
+
+Movement_1684DA:: @ 81684DA
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_12
+ step_end
+
+Route22_EventScript_1684E2:: @ 81684E2
+ loadword 0, gUnknown_8188BFF
+ callstd 3
+ end
diff --git a/data/maps/Route22_NorthEntrance/scripts.inc b/data/maps/Route22_NorthEntrance/scripts.inc
new file mode 100644
index 000000000..d7d7c61da
--- /dev/null
+++ b/data/maps/Route22_NorthEntrance/scripts.inc
@@ -0,0 +1,18 @@
+Route22_NorthEntrance_MapScripts:: @ 81704FB
+ .byte 0
+
+Route22_NorthEntrance_EventScript_1704FC:: @ 81704FC
+ lock
+ faceplayer
+ setvar VAR_0x4001, 1
+ getstdstring 0, 15
+ goto EventScript_1A7803
+ end
+
+Route22_NorthEntrance_EventScript_17050D:: @ 817050D
+ lockall
+ setvar VAR_0x4001, 1
+ setvar VAR_0x8009, 1
+ getstdstring 0, 15
+ goto EventScript_1A796E
+ end
diff --git a/data/maps/Route23/scripts.inc b/data/maps/Route23/scripts.inc
new file mode 100644
index 000000000..3154a6f0e
--- /dev/null
+++ b/data/maps/Route23/scripts.inc
@@ -0,0 +1,129 @@
+Route23_MapScripts:: @ 81684EB
+ map_script 3, Route23_MapScript1_1684F1
+ .byte 0
+
+Route23_MapScript1_1684F1:: @ 81684F1
+ clearflag FLAG_0x059
+ setflag FLAG_0x058
+ setvar VAR_0x4064, 0
+ setvar VAR_0x4065, 0
+ setvar VAR_0x4066, 0
+ setvar VAR_0x4067, 0
+ end
+
+Route23_EventScript_16850C:: @ 816850C
+ lock
+ faceplayer
+ setvar VAR_0x4001, 2
+ getstdstring 0, 16
+ goto EventScript_1A786C
+ end
+
+Route23_EventScript_16851D:: @ 816851D
+ lock
+ faceplayer
+ setvar VAR_0x4001, 3
+ getstdstring 0, 17
+ goto EventScript_1A786C
+ end
+
+Route23_EventScript_16852E:: @ 816852E
+ lock
+ faceplayer
+ setvar VAR_0x4001, 4
+ getstdstring 0, 18
+ goto EventScript_1A786C
+ end
+
+Route23_EventScript_16853F:: @ 816853F
+ lock
+ faceplayer
+ setvar VAR_0x4001, 5
+ getstdstring 0, 19
+ goto EventScript_1A786C
+ end
+
+Route23_EventScript_168550:: @ 8168550
+ lock
+ faceplayer
+ setvar VAR_0x4001, 6
+ getstdstring 0, 20
+ goto EventScript_1A786C
+ end
+
+Route23_EventScript_168561:: @ 8168561
+ lock
+ faceplayer
+ setvar VAR_0x4001, 7
+ getstdstring 0, 21
+ goto EventScript_1A786C
+ end
+
+Route23_EventScript_168572:: @ 8168572
+ lock
+ faceplayer
+ setvar VAR_0x4001, 8
+ getstdstring 0, 22
+ goto EventScript_1A786C
+ end
+
+Route23_EventScript_168583:: @ 8168583
+ lockall
+ setvar VAR_0x4001, 2
+ setvar VAR_0x8009, 1
+ getstdstring 0, 16
+ goto EventScript_1A796E
+ end
+
+Route23_EventScript_168598:: @ 8168598
+ lockall
+ setvar VAR_0x4001, 3
+ setvar VAR_0x8009, 2
+ getstdstring 0, 17
+ goto EventScript_1A796E
+ end
+
+Route23_EventScript_1685AD:: @ 81685AD
+ lockall
+ setvar VAR_0x4001, 4
+ setvar VAR_0x8009, 3
+ getstdstring 0, 18
+ goto EventScript_1A796E
+ end
+
+Route23_EventScript_1685C2:: @ 81685C2
+ lockall
+ setvar VAR_0x4001, 5
+ setvar VAR_0x8009, 4
+ getstdstring 0, 19
+ goto EventScript_1A796E
+ end
+
+Route23_EventScript_1685D7:: @ 81685D7
+ lockall
+ setvar VAR_0x4001, 6
+ setvar VAR_0x8009, 5
+ getstdstring 0, 20
+ goto EventScript_1A796E
+ end
+
+Route23_EventScript_1685EC:: @ 81685EC
+ lockall
+ setvar VAR_0x4001, 7
+ setvar VAR_0x8009, 6
+ getstdstring 0, 21
+ goto EventScript_1A796E
+ end
+
+Route23_EventScript_168601:: @ 8168601
+ lockall
+ setvar VAR_0x4001, 8
+ setvar VAR_0x8009, 7
+ getstdstring 0, 22
+ goto EventScript_1A796E
+ end
+
+Route23_EventScript_168616:: @ 8168616
+ loadword 0, gUnknown_8188C19
+ callstd 3
+ end
diff --git a/data/maps/Route24/scripts.inc b/data/maps/Route24/scripts.inc
new file mode 100644
index 000000000..811f194a2
--- /dev/null
+++ b/data/maps/Route24/scripts.inc
@@ -0,0 +1,114 @@
+Route24_MapScripts:: @ 816861F
+ .byte 0
+
+Route24_EventScript_168620:: @ 8168620
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x406B, 1
+ goto_if 1, EventScript_168656
+ loadword 0, gUnknown_8188C3C
+ callstd 4
+ checkitemspace ITEM_NUGGET, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16864C
+ call EventScript_1686B9
+ release
+ end
+
+EventScript_16864C:: @ 816864C
+ loadword 0, gUnknown_8188CC2
+ callstd 4
+ release
+ end
+
+EventScript_168656:: @ 8168656
+ loadword 0, gUnknown_8188DF1
+ callstd 4
+ release
+ end
+
+Route24_EventScript_168660:: @ 8168660
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_168678
+ end
+
+Route24_EventScript_16866C:: @ 816866C
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_168678
+ end
+
+EventScript_168678:: @ 8168678
+ textcolor 0
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_1686FD
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_168708
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ loadword 0, gUnknown_8188C3C
+ callstd 4
+ checkitemspace ITEM_NUGGET, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_168713
+ call EventScript_1686B9
+ releaseall
+ end
+
+EventScript_1686B9:: @ 81686B9
+ additem ITEM_NUGGET, 1
+ loadword 0, gUnknown_8188C93
+ setorcopyvar VAR_0x8000, 110
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ message Text_188CDB
+ waitmessage
+ playbgm BGM_FRLG_SUSPICIOUS_EYE, 0
+ waitbuttonpress
+ setvar VAR_LAST_TALKED, 1
+ trainerbattle 3, 356, 0, Text_188DDC
+ loadword 0, gUnknown_8188DF1
+ callstd 4
+ setvar VAR_0x406B, 1
+ return
+
+EventScript_1686FD:: @ 81686FD
+ applymovement 1, Movement_16873E
+ waitmovement 0
+ return
+
+EventScript_168708:: @ 8168708
+ applymovement 1, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_168713:: @ 8168713
+ loadword 0, gUnknown_8188CC2
+ callstd 4
+ closemessage
+ applymovement 255, Movement_168743
+ waitmovement 0
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_168733
+ release
+ end
+
+EventScript_168733:: @ 8168733
+ applymovement 1, Movement_168740
+ waitmovement 0
+ return
+
+Movement_16873E:: @ 816873E
+ step_12
+ step_end
+
+Movement_168740:: @ 8168740
+ step_13
+ step_2f
+ step_end
+
+Movement_168743:: @ 8168743
+ step_10
+ step_end
diff --git a/data/maps/Route25/scripts.inc b/data/maps/Route25/scripts.inc
new file mode 100644
index 000000000..88bbc1efa
--- /dev/null
+++ b/data/maps/Route25/scripts.inc
@@ -0,0 +1,12 @@
+Route25_MapScripts:: @ 8168745
+ .byte 0
+
+Route25_EventScript_168746:: @ 8168746
+ loadword 0, gUnknown_818954C
+ callstd 3
+ end
+
+Route25_EventScript_16874F:: @ 816874F
+ loadword 0, gUnknown_81895C2
+ callstd 2
+ end
diff --git a/data/maps/Route25_SeaCottage/scripts.inc b/data/maps/Route25_SeaCottage/scripts.inc
new file mode 100644
index 000000000..c88ed3054
--- /dev/null
+++ b/data/maps/Route25_SeaCottage/scripts.inc
@@ -0,0 +1,337 @@
+Route25_SeaCottage_MapScripts:: @ 8170523
+ map_script 3, Route25_SeaCottage_MapScript1_170529
+ .byte 0
+
+Route25_SeaCottage_MapScript1_170529:: @ 8170529
+ checkflag FLAG_0x233
+ call_if 0, EventScript_17053C
+ checkflag FLAG_0x234
+ call_if 1, EventScript_170547
+ end
+
+EventScript_17053C:: @ 817053C
+ clearflag FLAG_0x032
+ setobjectxyperm 1, 3, 3
+ return
+
+EventScript_170547:: @ 8170547
+ setflag FLAG_0x003
+ return
+
+Route25_SeaCottage_EventScript_17054B:: @ 817054B
+ lock
+ faceplayer
+ checkflag FLAG_0x003
+ goto_if 1, EventScript_1706C8
+ checkflag FLAG_0x234
+ goto_if 1, EventScript_170640
+ checkflag FLAG_0x233
+ goto_if 1, EventScript_17064A
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_170580
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_17058E
+ end
+
+EventScript_170580:: @ 8170580
+ loadword 0, gUnknown_819FDFA
+ callstd 5
+ goto EventScript_17059C
+ end
+
+EventScript_17058E:: @ 817058E
+ loadword 0, gUnknown_819FEE6
+ callstd 5
+ goto EventScript_17059C
+ end
+
+EventScript_17059C:: @ 817059C
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_170600
+ loadword 0, gUnknown_819FFD3
+ callstd 4
+ closemessage
+ delay 10
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_17062A
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_170635
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_170635
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_170635
+ opendoor 10, 3
+ waitdooranim
+ applymovement 2, Movement_1706DB
+ waitmovement 0
+ removeobject 2
+ playse SE_EXPMAX
+ closedoor 10, 3
+ waitdooranim
+ setflag FLAG_0x002
+ release
+ end
+
+EventScript_170600:: @ 8170600
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_170618
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_170621
+ return
+
+EventScript_170618:: @ 8170618
+ loadword 0, gUnknown_81A0035
+ callstd 4
+ return
+
+EventScript_170621:: @ 8170621
+ loadword 0, gUnknown_81A00B6
+ callstd 4
+ return
+
+EventScript_17062A:: @ 817062A
+ applymovement 2, Movement_1706D5
+ waitmovement 0
+ return
+
+EventScript_170635:: @ 8170635
+ applymovement 2, Movement_1706D2
+ waitmovement 0
+ return
+
+EventScript_170640:: @ 8170640
+ loadword 0, gUnknown_81A02CF
+ callstd 4
+ release
+ end
+
+EventScript_17064A:: @ 817064A
+ setvar VAR_0x8004, 13
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_1706AC
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_1706B5
+ checkitemspace ITEM_SS_TICKET, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1706BE
+ additem ITEM_SS_TICKET, 1
+ loadword 0, gUnknown_81A028E
+ setorcopyvar VAR_0x8000, 265
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ setflag FLAG_0x235
+ setflag FLAG_0x031
+ setflag FLAG_0x234
+ setflag 2100
+ goto EventScript_170640
+ end
+
+EventScript_1706AC:: @ 81706AC
+ loadword 0, gUnknown_81A013B
+ callstd 4
+ return
+
+EventScript_1706B5:: @ 81706B5
+ loadword 0, gUnknown_81A01E4
+ callstd 4
+ return
+
+EventScript_1706BE:: @ 81706BE
+ loadword 0, gUnknown_81A02B4
+ callstd 4
+ release
+ end
+
+EventScript_1706C8:: @ 81706C8
+ loadword 0, gUnknown_81A03AB
+ callstd 4
+ release
+ end
+
+Movement_1706D2:: @ 81706D2
+ step_11
+ step_11
+ step_end
+
+Movement_1706D5:: @ 81706D5
+ step_13
+ step_11
+ step_11
+ step_12
+ step_2e
+ step_end
+
+Movement_1706DB:: @ 81706DB
+ step_11
+ step_end
+
+Route25_SeaCottage_EventScript_1706DD:: @ 81706DD
+ lockall
+ checkflag FLAG_0x003
+ goto_if 1, EventScript_1707CA
+ checkflag FLAG_0x002
+ goto_if 1, EventScript_1706FA
+ loadword 0, gUnknown_81A0402
+ callstd 4
+ releaseall
+ end
+
+EventScript_1706FA:: @ 81706FA
+ fadeoutbgm 0
+ loadword 0, gUnknown_81A042D
+ callstd 4
+ closemessage
+ clearflag FLAG_0x002
+ setflag FLAG_0x233
+ special SpawnScriptFieldObject
+ applymovement 127, Movement_1707BE
+ waitmovement 0
+ delay 35
+ playse SE_PIN
+ waitse
+ setvar VAR_0x8004, 0
+ special sub_809C4A8
+ delay 10
+ call EventScript_1707B6
+ call EventScript_1707B6
+ call EventScript_1707B6
+ call EventScript_1707B6
+ call EventScript_1707B6
+ call EventScript_1707B6
+ call EventScript_1707B6
+ setvar VAR_0x8004, 1
+ special sub_809C4A8
+ playse SE_FU_ZUZUZU
+ special sub_809C5FC
+ waitse
+ call EventScript_1707B6
+ call EventScript_1707B6
+ call EventScript_1707B6
+ call EventScript_1707B6
+ call EventScript_1707B6
+ opendoor 3, 3
+ waitdooranim
+ fadeinbgm 0
+ addobject 1
+ clearflag FLAG_0x033
+ delay 50
+ playfanfare MUS_FANFA1
+ applymovement 1, Movement_170888
+ waitmovement 0
+ waitfanfare
+ applymovement 127, Movement_1707C3
+ waitmovement 0
+ playse SE_EXPMAX
+ closedoor 3, 3
+ waitdooranim
+ applymovement 1, Movement_170881
+ waitmovement 0
+ special RemoveScriptFieldObject
+ releaseall
+ end
+
+EventScript_1707B6:: @ 81707B6
+ playse SE_BOWA
+ waitse
+ delay 20
+ return
+
+Movement_1707BE:: @ 81707BE
+ step_11
+ step_11
+ step_13
+ step_13
+ step_end
+
+Movement_1707C3:: @ 81707C3
+ step_1c
+ step_1c
+ step_10
+ step_10
+ step_12
+ step_12
+ step_end
+
+EventScript_1707CA:: @ 81707CA
+ loadword 0, gUnknown_81A045B
+ callstd 4
+ goto EventScript_1707D8
+ end
+
+EventScript_1707D8:: @ 81707D8
+ message Text_1A0479
+ waitmessage
+ multichoice 0, 0, 1, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_17082B
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_170840
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_170855
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_17086A
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_17087F
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_17087F
+ end
+
+EventScript_17082B:: @ 817082B
+ drawmonpic SPECIES_EEVEE, 10, 3
+ waitbuttonpress
+ erasemonpic
+ setvar VAR_0x8004, 133
+ special sub_80CBDCC
+ goto EventScript_1707D8
+ end
+
+EventScript_170840:: @ 8170840
+ drawmonpic SPECIES_FLAREON, 10, 3
+ waitbuttonpress
+ erasemonpic
+ setvar VAR_0x8004, 136
+ special sub_80CBDCC
+ goto EventScript_1707D8
+ end
+
+EventScript_170855:: @ 8170855
+ drawmonpic SPECIES_JOLTEON, 10, 3
+ waitbuttonpress
+ erasemonpic
+ setvar VAR_0x8004, 135
+ special sub_80CBDCC
+ goto EventScript_1707D8
+ end
+
+EventScript_17086A:: @ 817086A
+ drawmonpic SPECIES_VAPOREON, 10, 3
+ waitbuttonpress
+ erasemonpic
+ setvar VAR_0x8004, 134
+ special sub_80CBDCC
+ goto EventScript_1707D8
+ end
+
+EventScript_17087F:: @ 817087F
+ releaseall
+ end
+
+Movement_170881:: @ 8170881
+ step_13
+ step_13
+ step_13
+ step_13
+ step_10
+ step_10
+ step_end
+
+Movement_170888:: @ 8170888
+ step_10
+ step_end
diff --git a/data/maps/Route2_EastBuilding/scripts.inc b/data/maps/Route2_EastBuilding/scripts.inc
new file mode 100644
index 000000000..ac1fcb6bb
--- /dev/null
+++ b/data/maps/Route2_EastBuilding/scripts.inc
@@ -0,0 +1,51 @@
+Route2_EastBuilding_MapScripts:: @ 816F67E
+ .byte 0
+
+Route2_EastBuilding_EventScript_16F67F:: @ 816F67F
+ lock
+ faceplayer
+ call EventScript_16F70B
+ checkflag FLAG_0x23B
+ goto_if 1, EventScript_16F701
+ loadword 0, gUnknown_819D64F
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AD1
+ setvar VAR_0x8004, 0
+ specialvar VAR_RESULT, sub_80CA3D8
+ getnumberstring 2, VAR_0x8006
+ call EventScript_16F70B
+ compare_var_to_value VAR_0x8006, 10
+ goto_if 0, EventScript_1A7ABD
+ loadword 0, gUnknown_819D74E
+ callstd 4
+ checkitemspace ITEM_HM05, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A7AC7
+ additem ITEM_HM05, 1
+ loadword 0, gUnknown_819D7A1
+ setorcopyvar VAR_0x8000, 343
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x23B
+ loadword 0, gUnknown_819D7C1
+ callstd 4
+ release
+ end
+
+EventScript_16F701:: @ 816F701
+ loadword 0, gUnknown_819D7C1
+ callstd 4
+ release
+ end
+
+EventScript_16F70B:: @ 816F70B
+ getnumberstring 0, 10
+ getitemname 1, ITEM_HM05
+ return
+
+Route2_EastBuilding_EventScript_16F714:: @ 816F714
+ loadword 0, gUnknown_819D81E
+ callstd 2
+ end
diff --git a/data/maps/Route2_House/scripts.inc b/data/maps/Route2_House/scripts.inc
new file mode 100644
index 000000000..8f7305c29
--- /dev/null
+++ b/data/maps/Route2_House/scripts.inc
@@ -0,0 +1,50 @@
+Route2_House_MapScripts:: @ 816F5F8
+ .byte 0
+
+Route2_House_EventScript_16F5F9:: @ 816F5F9
+ loadword 0, gUnknown_819D5E7
+ callstd 2
+ end
+
+Route2_House_EventScript_16F602:: @ 816F602
+ lock
+ faceplayer
+ setvar VAR_0x8008, 0
+ call EventScript_1A8CAD
+ checkflag FLAG_0x248
+ goto_if 1, EventScript_16F674
+ loadword 0, gUnknown_81A597B
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16F65C
+ call EventScript_1A8CBD
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_16F65C
+ call EventScript_1A8CC9
+ compare_var_to_var VAR_RESULT, VAR_0x8009
+ goto_if 5, EventScript_16F666
+ call EventScript_1A8CD9
+ loadword 0, gUnknown_81A59DA
+ callstd 4
+ setflag FLAG_0x248
+ release
+ end
+
+EventScript_16F65C:: @ 816F65C
+ loadword 0, gUnknown_81A59B6
+ callstd 4
+ release
+ end
+
+EventScript_16F666:: @ 816F666
+ getspeciesname 0, 32777
+ loadword 0, gUnknown_81A59C6
+ callstd 4
+ release
+ end
+
+EventScript_16F674:: @ 816F674
+ loadword 0, gUnknown_81A59E7
+ callstd 4
+ release
+ end
diff --git a/data/maps/Route2_ViridianForest_NorthEntrance/scripts.inc b/data/maps/Route2_ViridianForest_NorthEntrance/scripts.inc
new file mode 100644
index 000000000..d84ef1b6e
--- /dev/null
+++ b/data/maps/Route2_ViridianForest_NorthEntrance/scripts.inc
@@ -0,0 +1,17 @@
+Route2_ViridianForest_NorthEntrance_MapScripts:: @ 816F71D
+ .byte 0
+
+Route2_ViridianForest_NorthEntrance_EventScript_16F71E:: @ 816F71E
+ loadword 0, gUnknown_819D85C
+ callstd 2
+ end
+
+Route2_ViridianForest_NorthEntrance_EventScript_16F727:: @ 816F727
+ loadword 0, gUnknown_819D8D0
+ callstd 2
+ end
+
+Route2_ViridianForest_NorthEntrance_EventScript_16F730:: @ 816F730
+ loadword 0, gUnknown_819D93B
+ callstd 2
+ end
diff --git a/data/maps/Route2_ViridianForest_SouthEntrance/scripts.inc b/data/maps/Route2_ViridianForest_SouthEntrance/scripts.inc
new file mode 100644
index 000000000..f81d39f8c
--- /dev/null
+++ b/data/maps/Route2_ViridianForest_SouthEntrance/scripts.inc
@@ -0,0 +1,12 @@
+Route2_ViridianForest_SouthEntrance_MapScripts:: @ 816F5E5
+ .byte 0
+
+Route2_ViridianForest_SouthEntrance_EventScript_16F5E6:: @ 816F5E6
+ loadword 0, gUnknown_819D52C
+ callstd 2
+ end
+
+Route2_ViridianForest_SouthEntrance_EventScript_16F5EF:: @ 816F5EF
+ loadword 0, gUnknown_819D58B
+ callstd 2
+ end
diff --git a/data/maps/Route3/scripts.inc b/data/maps/Route3/scripts.inc
new file mode 100644
index 000000000..c74a4401a
--- /dev/null
+++ b/data/maps/Route3/scripts.inc
@@ -0,0 +1,12 @@
+Route3_MapScripts:: @ 8167F77
+ .byte 0
+
+Route3_EventScript_167F78:: @ 8167F78
+ loadword 0, gUnknown_8183491
+ callstd 2
+ end
+
+Route3_EventScript_167F81:: @ 8167F81
+ loadword 0, gUnknown_81838C0
+ callstd 3
+ end
diff --git a/data/maps/Route4/scripts.inc b/data/maps/Route4/scripts.inc
new file mode 100644
index 000000000..51f60f02f
--- /dev/null
+++ b/data/maps/Route4/scripts.inc
@@ -0,0 +1,20 @@
+Route4_MapScripts:: @ 8167F8A
+ .byte 0
+
+Route4_EventScript_167F8B:: @ 8167F8B
+ end
+
+Route4_EventScript_167F8C:: @ 8167F8C
+ loadword 0, gUnknown_81838D7
+ callstd 2
+ end
+
+Route4_EventScript_167F95:: @ 8167F95
+ loadword 0, gUnknown_818399B
+ callstd 3
+ end
+
+Route4_EventScript_167F9E:: @ 8167F9E
+ loadword 0, gUnknown_81839B4
+ callstd 3
+ end
diff --git a/data/maps/Route4_PokemonCenter_1F/scripts.inc b/data/maps/Route4_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..e488082c2
--- /dev/null
+++ b/data/maps/Route4_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,181 @@
+Route4_PokemonCenter_1F_MapScripts:: @ 816F739
+ map_script 3, Route4_PokemonCenter_1F_MapScript1_16F744
+ map_script 5, Route4_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+Route4_PokemonCenter_1F_MapScript1_16F744:: @ 816F744
+ setworldmapflag 2210
+ setrespawn 12
+ end
+
+Route4_PokemonCenter_1F_EventScript_16F74B:: @ 816F74B
+ loadword 0, gUnknown_819D9D4
+ callstd 2
+ end
+
+Route4_PokemonCenter_1F_EventScript_16F754:: @ 816F754
+ lock
+ loadword 0, gUnknown_819DA3A
+ callstd 4
+ release
+ end
+
+Route4_PokemonCenter_1F_EventScript_16F75F:: @ 816F75F
+ lock
+ faceplayer
+ checkflag FLAG_0x249
+ goto_if 1, EventScript_16F8A2
+ showmoneybox 0, 0, 0
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16F786
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F794
+ end
+
+EventScript_16F786:: @ 816F786
+ loadword 0, gUnknown_819DA9A
+ callstd 5
+ goto EventScript_16F7A2
+ end
+
+EventScript_16F794:: @ 816F794
+ loadword 0, gUnknown_819DB34
+ callstd 5
+ goto EventScript_16F7A2
+ end
+
+EventScript_16F7A2:: @ 816F7A2
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16F888
+ checkmoney 500, 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16F895
+ textcolor 3
+ setvar VAR_0x4001, 129
+ givemon SPECIES_MAGIKARP, 5, ITEM_NONE, 0, 0, 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16F7F6
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F822
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_16F8AC
+ end
+
+EventScript_16F7F6:: @ 816F7F6
+ call EventScript_16F86F
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16F861
+ call EventScript_1A8C27
+ fadescreen 1
+ hidemoneybox
+ .byte 0
+ .byte 0
+ special ChangePokemonNickname
+ waitstate
+ goto EventScript_16F86A
+ end
+
+EventScript_16F822:: @ 816F822
+ call EventScript_16F86F
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16F84B
+ fadescreen 1
+ hidemoneybox
+ .byte 0
+ .byte 0
+ special ChangeBoxPokemonNickname
+ waitstate
+ lock
+ faceplayer
+ goto EventScript_16F856
+ end
+
+EventScript_16F84B:: @ 816F84B
+ call EventScript_1A8C3C
+ goto EventScript_16F861
+ end
+
+EventScript_16F856:: @ 816F856
+ call EventScript_1A8C3C
+ goto EventScript_16F86A
+ end
+
+EventScript_16F861:: @ 816F861
+ hidemoneybox
+ .byte 0
+ .byte 0
+ goto EventScript_16F86A
+ end
+
+EventScript_16F86A:: @ 816F86A
+ setflag FLAG_0x249
+ release
+ end
+
+EventScript_16F86F:: @ 816F86F
+ takemoney 500, 0
+ updatemoneybox 0, 0, 0
+ playfanfare MUS_FANFA1
+ message Text_19DBD3
+ waitmessage
+ waitfanfare
+ getspeciesname 0, SPECIES_MAGIKARP
+ return
+
+EventScript_16F888:: @ 816F888
+ loadword 0, gUnknown_819DC07
+ callstd 4
+ hidemoneybox
+ .byte 0
+ .byte 0
+ release
+ end
+
+EventScript_16F895:: @ 816F895
+ loadword 0, gUnknown_819DC78
+ callstd 4
+ hidemoneybox
+ .byte 0
+ .byte 0
+ release
+ end
+
+EventScript_16F8A2:: @ 816F8A2
+ loadword 0, gUnknown_819DC9A
+ callstd 4
+ release
+ end
+
+EventScript_16F8AC:: @ 816F8AC
+ textcolor 0
+ loadword 0, gUnknown_819DC3E
+ callstd 4
+ hidemoneybox
+ .byte 0
+ .byte 0
+ release
+ end
+
+Route4_PokemonCenter_1F_EventScript_16F8BB:: @ 816F8BB
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+Route4_PokemonCenter_1F_EventScript_16F8C4:: @ 816F8C4
+ loadword 0, gUnknown_819DCDB
+ callstd 2
+ end
+
+Route4_PokemonCenter_1F_EventScript_16F8CD:: @ 816F8CD
+ lock
+ loadword 0, gUnknown_819DD54
+ callstd 4
+ release
+ end
diff --git a/data/maps/Route4_PokemonCenter_2F/scripts.inc b/data/maps/Route4_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..172b29972
--- /dev/null
+++ b/data/maps/Route4_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+Route4_PokemonCenter_2F_MapScripts:: @ 816F8D8
+ map_script 2, Route4_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, Route4_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, Route4_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, Route4_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+Route4_PokemonCenter_2F_EventScript_16F8ED:: @ 816F8ED
+ call EventScript_1BB4A3
+ end
+
+EventScript_16F8F3:: @ 816F8F3
+ call EventScript_1BB6AB
+ end
+
+EventScript_16F8F9:: @ 816F8F9
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/Route5/scripts.inc b/data/maps/Route5/scripts.inc
new file mode 100644
index 000000000..a5fde8a87
--- /dev/null
+++ b/data/maps/Route5/scripts.inc
@@ -0,0 +1,7 @@
+Route5_MapScripts:: @ 8167FA7
+ .byte 0
+
+Route5_EventScript_167FA8:: @ 8167FA8
+ loadword 0, gUnknown_8183DD4
+ callstd 3
+ end
diff --git a/data/maps/Route5_PokemonDayCare/scripts.inc b/data/maps/Route5_PokemonDayCare/scripts.inc
new file mode 100644
index 000000000..3946ef43b
--- /dev/null
+++ b/data/maps/Route5_PokemonDayCare/scripts.inc
@@ -0,0 +1,2 @@
+Route5_PokemonDayCare_MapScripts:: @ 816F8FF
+ .byte 0
diff --git a/data/maps/Route5_SouthEntrance/scripts.inc b/data/maps/Route5_SouthEntrance/scripts.inc
new file mode 100644
index 000000000..9e4b41a51
--- /dev/null
+++ b/data/maps/Route5_SouthEntrance/scripts.inc
@@ -0,0 +1,92 @@
+Route5_SouthEntrance_MapScripts:: @ 816F900
+ .byte 0
+
+Route5_SouthEntrance_EventScript_16F901:: @ 816F901
+ loadword 0, gUnknown_819E16D
+ callstd 2
+ end
+
+Route5_SouthEntrance_EventScript_16F90A:: @ 816F90A
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16F92E
+ end
+
+Route5_SouthEntrance_EventScript_16F916:: @ 816F916
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16F92E
+ end
+
+Route5_SouthEntrance_EventScript_16F922:: @ 816F922
+ lockall
+ setvar VAR_0x4001, 2
+ goto EventScript_16F92E
+ end
+
+EventScript_16F92E:: @ 816F92E
+ textcolor 0
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ checkflag FLAG_0x2A6
+ goto_if 1, EventScript_16F958
+ loadword 0, gUnknown_819E04B
+ callstd 4
+ closemessage
+ applymovement 255, Movement_16F9C4
+ waitmovement 0
+ releaseall
+ end
+
+EventScript_16F958:: @ 816F958
+ removeitem ITEM_TEA, 1
+ goto EventScript_16F963
+ end
+
+EventScript_16F963:: @ 816F963
+ loadword 0, gUnknown_819E09B
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16F99C
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16F9A7
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_16F9B2
+ loadword 0, gUnknown_819E0C1
+ callstd 4
+ setvar VAR_0x4062, 1
+ releaseall
+ end
+
+EventScript_16F99C:: @ 816F99C
+ applymovement 255, Movement_16F9C2
+ waitmovement 0
+ return
+
+EventScript_16F9A7:: @ 816F9A7
+ applymovement 255, Movement_16F9BD
+ waitmovement 0
+ return
+
+EventScript_16F9B2:: @ 816F9B2
+ applymovement 255, Movement_16F9BF
+ waitmovement 0
+ return
+
+Movement_16F9BD:: @ 816F9BD
+ step_12
+ step_end
+
+Movement_16F9BF:: @ 816F9BF
+ step_12
+ step_12
+ step_end
+
+Movement_16F9C2:: @ 816F9C2
+ step_27
+ step_end
+
+Movement_16F9C4:: @ 816F9C4
+ step_11
+ step_end
diff --git a/data/maps/Route6/scripts.inc b/data/maps/Route6/scripts.inc
new file mode 100644
index 000000000..8cbe2db5a
--- /dev/null
+++ b/data/maps/Route6/scripts.inc
@@ -0,0 +1,7 @@
+Route6_MapScripts:: @ 8167FB1
+ .byte 0
+
+Route6_EventScript_167FB2:: @ 8167FB2
+ loadword 0, gUnknown_8184067
+ callstd 3
+ end
diff --git a/data/maps/Route6_NorthEntrance/scripts.inc b/data/maps/Route6_NorthEntrance/scripts.inc
new file mode 100644
index 000000000..836396d94
--- /dev/null
+++ b/data/maps/Route6_NorthEntrance/scripts.inc
@@ -0,0 +1,92 @@
+Route6_NorthEntrance_MapScripts:: @ 816F9C6
+ .byte 0
+
+Route6_NorthEntrance_EventScript_16F9C7:: @ 816F9C7
+ loadword 0, gUnknown_819E2A3
+ callstd 2
+ end
+
+Route6_NorthEntrance_EventScript_16F9D0:: @ 816F9D0
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16F9F4
+ end
+
+Route6_NorthEntrance_EventScript_16F9DC:: @ 816F9DC
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16F9F4
+ end
+
+Route6_NorthEntrance_EventScript_16F9E8:: @ 816F9E8
+ lockall
+ setvar VAR_0x4001, 2
+ goto EventScript_16F9F4
+ end
+
+EventScript_16F9F4:: @ 816F9F4
+ textcolor 0
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ checkflag FLAG_0x2A6
+ goto_if 1, EventScript_16FA1E
+ loadword 0, gUnknown_819E181
+ callstd 4
+ closemessage
+ applymovement 255, Movement_16FA8A
+ waitmovement 0
+ releaseall
+ end
+
+EventScript_16FA1E:: @ 816FA1E
+ removeitem ITEM_TEA, 1
+ goto EventScript_16FA29
+ end
+
+EventScript_16FA29:: @ 816FA29
+ loadword 0, gUnknown_819E1D1
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16FA62
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16FA6D
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_16FA78
+ loadword 0, gUnknown_819E1F7
+ callstd 4
+ setvar VAR_0x4062, 1
+ releaseall
+ end
+
+EventScript_16FA62:: @ 816FA62
+ applymovement 255, Movement_16FA83
+ waitmovement 0
+ return
+
+EventScript_16FA6D:: @ 816FA6D
+ applymovement 255, Movement_16FA86
+ waitmovement 0
+ return
+
+EventScript_16FA78:: @ 816FA78
+ applymovement 255, Movement_16FA88
+ waitmovement 0
+ return
+
+Movement_16FA83:: @ 816FA83
+ step_13
+ step_13
+ step_end
+
+Movement_16FA86:: @ 816FA86
+ step_13
+ step_end
+
+Movement_16FA88:: @ 816FA88
+ step_28
+ step_end
+
+Movement_16FA8A:: @ 816FA8A
+ step_10
+ step_end
diff --git a/data/maps/Route7/scripts.inc b/data/maps/Route7/scripts.inc
new file mode 100644
index 000000000..7ec9bd6a0
--- /dev/null
+++ b/data/maps/Route7/scripts.inc
@@ -0,0 +1,7 @@
+Route7_MapScripts:: @ 8167FBB
+ .byte 0
+
+Route7_EventScript_167FBC:: @ 8167FBC
+ loadword 0, gUnknown_8184097
+ callstd 3
+ end
diff --git a/data/maps/Route7_EastEntrance/scripts.inc b/data/maps/Route7_EastEntrance/scripts.inc
new file mode 100644
index 000000000..242081916
--- /dev/null
+++ b/data/maps/Route7_EastEntrance/scripts.inc
@@ -0,0 +1,92 @@
+Route7_EastEntrance_MapScripts:: @ 816FA8D
+ .byte 0
+
+Route7_EastEntrance_EventScript_16FA8E:: @ 816FA8E
+ loadword 0, gUnknown_819E3D9
+ callstd 2
+ end
+
+Route7_EastEntrance_EventScript_16FA97:: @ 816FA97
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16FABB
+ end
+
+Route7_EastEntrance_EventScript_16FAA3:: @ 816FAA3
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16FABB
+ end
+
+Route7_EastEntrance_EventScript_16FAAF:: @ 816FAAF
+ lockall
+ setvar VAR_0x4001, 2
+ goto EventScript_16FABB
+ end
+
+EventScript_16FABB:: @ 816FABB
+ textcolor 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ checkflag FLAG_0x2A6
+ goto_if 1, EventScript_16FAE5
+ loadword 0, gUnknown_819E2B7
+ callstd 4
+ closemessage
+ applymovement 255, Movement_16FB51
+ waitmovement 0
+ releaseall
+ end
+
+EventScript_16FAE5:: @ 816FAE5
+ removeitem ITEM_TEA, 1
+ goto EventScript_16FAF0
+ end
+
+EventScript_16FAF0:: @ 816FAF0
+ loadword 0, gUnknown_819E307
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16FB29
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16FB34
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_16FB3F
+ loadword 0, gUnknown_819E32D
+ callstd 4
+ setvar VAR_0x4062, 1
+ releaseall
+ end
+
+EventScript_16FB29:: @ 816FB29
+ applymovement 255, Movement_16FB4F
+ waitmovement 0
+ return
+
+EventScript_16FB34:: @ 816FB34
+ applymovement 255, Movement_16FB4A
+ waitmovement 0
+ return
+
+EventScript_16FB3F:: @ 816FB3F
+ applymovement 255, Movement_16FB4C
+ waitmovement 0
+ return
+
+Movement_16FB4A:: @ 816FB4A
+ step_11
+ step_end
+
+Movement_16FB4C:: @ 816FB4C
+ step_11
+ step_11
+ step_end
+
+Movement_16FB4F:: @ 816FB4F
+ step_26
+ step_end
+
+Movement_16FB51:: @ 816FB51
+ step_12
+ step_end
diff --git a/data/maps/Route8/scripts.inc b/data/maps/Route8/scripts.inc
new file mode 100644
index 000000000..d789a05d6
--- /dev/null
+++ b/data/maps/Route8/scripts.inc
@@ -0,0 +1,7 @@
+Route8_MapScripts:: @ 8167FC5
+ .byte 0
+
+Route8_EventScript_167FC6:: @ 8167FC6
+ loadword 0, gUnknown_8184576
+ callstd 3
+ end
diff --git a/data/maps/Route8_WestEntrance/scripts.inc b/data/maps/Route8_WestEntrance/scripts.inc
new file mode 100644
index 000000000..472bb5b8f
--- /dev/null
+++ b/data/maps/Route8_WestEntrance/scripts.inc
@@ -0,0 +1,102 @@
+Route8_WestEntrance_MapScripts:: @ 816FB53
+ .byte 0
+
+Route8_WestEntrance_EventScript_16FB54:: @ 816FB54
+ loadword 0, gUnknown_819E50F
+ callstd 2
+ end
+
+Route8_WestEntrance_EventScript_16FB5D:: @ 816FB5D
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_16FB81
+ end
+
+Route8_WestEntrance_EventScript_16FB69:: @ 816FB69
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_16FB81
+ end
+
+Route8_WestEntrance_EventScript_16FB75:: @ 816FB75
+ lockall
+ setvar VAR_0x4001, 2
+ goto EventScript_16FB81
+ end
+
+EventScript_16FB81:: @ 816FB81
+ textcolor 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ checkflag FLAG_0x2A6
+ goto_if 1, EventScript_16FBAB
+ loadword 0, gUnknown_819E3ED
+ callstd 4
+ closemessage
+ applymovement 255, Movement_16FC2D
+ waitmovement 0
+ releaseall
+ end
+
+EventScript_16FBAB:: @ 816FBAB
+ removeitem ITEM_TEA, 1
+ goto EventScript_16FBCC
+ end
+
+EventScript_16FBB6:: @ 816FBB6
+ removeitem ITEM_SODA_POP, 1
+ goto EventScript_16FBCC
+ end
+
+EventScript_16FBC1:: @ 816FBC1
+ removeitem ITEM_LEMONADE, 1
+ goto EventScript_16FBCC
+ end
+
+EventScript_16FBCC:: @ 816FBCC
+ loadword 0, gUnknown_819E43D
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_16FC05
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_16FC10
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_16FC1B
+ loadword 0, gUnknown_819E463
+ callstd 4
+ setvar VAR_0x4062, 1
+ releaseall
+ end
+
+EventScript_16FC05:: @ 816FC05
+ applymovement 255, Movement_16FC2B
+ waitmovement 0
+ return
+
+EventScript_16FC10:: @ 816FC10
+ applymovement 255, Movement_16FC26
+ waitmovement 0
+ return
+
+EventScript_16FC1B:: @ 816FC1B
+ applymovement 255, Movement_16FC28
+ waitmovement 0
+ return
+
+Movement_16FC26:: @ 816FC26
+ step_11
+ step_end
+
+Movement_16FC28:: @ 816FC28
+ step_11
+ step_11
+ step_end
+
+Movement_16FC2B:: @ 816FC2B
+ step_26
+ step_end
+
+Movement_16FC2D:: @ 816FC2D
+ step_13
+ step_end
diff --git a/data/maps/Route9/scripts.inc b/data/maps/Route9/scripts.inc
new file mode 100644
index 000000000..a6492a3e1
--- /dev/null
+++ b/data/maps/Route9/scripts.inc
@@ -0,0 +1,7 @@
+Route9_MapScripts:: @ 8167FCF
+ .byte 0
+
+Route9_EventScript_167FD0:: @ 8167FD0
+ loadword 0, gUnknown_8184B66
+ callstd 3
+ end
diff --git a/data/maps/SSAnne_1F_Corridor/scripts.inc b/data/maps/SSAnne_1F_Corridor/scripts.inc
new file mode 100644
index 000000000..0d84f7851
--- /dev/null
+++ b/data/maps/SSAnne_1F_Corridor/scripts.inc
@@ -0,0 +1,12 @@
+SSAnne_1F_Corridor_MapScripts:: @ 81608CB
+ .byte 0
+
+SSAnne_1F_Corridor_EventScript_1608CC:: @ 81608CC
+ loadword 0, gUnknown_8172EE7
+ callstd 2
+ end
+
+SSAnne_1F_Corridor_EventScript_1608D5:: @ 81608D5
+ loadword 0, gUnknown_8172F60
+ callstd 2
+ end
diff --git a/data/maps/SSAnne_1F_Room1/scripts.inc b/data/maps/SSAnne_1F_Room1/scripts.inc
new file mode 100644
index 000000000..578278550
--- /dev/null
+++ b/data/maps/SSAnne_1F_Room1/scripts.inc
@@ -0,0 +1,7 @@
+SSAnne_1F_Room1_MapScripts:: @ 8160BDB
+ .byte 0
+
+SSAnne_1F_Room1_EventScript_160BDC:: @ 8160BDC
+ loadword 0, gUnknown_817393B
+ callstd 2
+ end
diff --git a/data/maps/SSAnne_1F_Room11/scripts.inc b/data/maps/SSAnne_1F_Room11/scripts.inc
new file mode 100644
index 000000000..4fe45988b
--- /dev/null
+++ b/data/maps/SSAnne_1F_Room11/scripts.inc
@@ -0,0 +1,92 @@
+SSAnne_1F_Room11_MapScripts:: @ 8164559
+ map_script 3, SSAnne_1F_Room11_MapScript1_16455F
+ .byte 0
+
+SSAnne_1F_Room11_MapScript1_16455F:: @ 816455F
+ setworldmapflag 2237
+ getplayerxy VAR_0x4001, VAR_0x4002
+ compare_var_to_value VAR_0x4001, 50
+ call_if 4, EventScript_16457E
+ compare_var_to_value VAR_0x4001, 49
+ call_if 3, EventScript_164587
+ end
+
+EventScript_16457E:: @ 816457E
+ setescapewarp MAP_SIXISLAND_GREENPATH, 255, 64, 10
+ return
+
+EventScript_164587:: @ 8164587
+ setescapewarp MAP_SIXISLAND_GREENPATH, 255, 45, 10
+ return
+
+SSAnne_1F_Room11_EventScript_164590:: @ 8164590
+ trainerbattle 0, 609, 0, Text_17BF3A, Text_17BF66
+ loadword 0, gUnknown_817BF97
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_1645A7:: @ 81645A7
+ trainerbattle 0, 610, 0, Text_17BFEB, Text_17C028
+ loadword 0, gUnknown_817C056
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_1645BE:: @ 81645BE
+ trainerbattle 0, 611, 0, Text_17C0BE, Text_17C0F2
+ loadword 0, gUnknown_817C113
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_1645D5:: @ 81645D5
+ trainerbattle 0, 612, 0, Text_17C155, Text_17C196
+ loadword 0, gUnknown_817C1D0
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_1645EC:: @ 81645EC
+ trainerbattle 0, 613, 0, Text_17C246, Text_17C275
+ loadword 0, gUnknown_817C2A4
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_164603:: @ 8164603
+ trainerbattle 0, 614, 0, Text_17C2D9, Text_17C30D
+ loadword 0, gUnknown_817C31C
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_16461A:: @ 816461A
+ trainerbattle 0, 615, 0, Text_17C373, Text_17C3A5
+ loadword 0, gUnknown_817C3CE
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_164631:: @ 8164631
+ trainerbattle 0, 616, 0, Text_17C42B, Text_17C458
+ loadword 0, gUnknown_817C490
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_164648:: @ 8164648
+ trainerbattle 0, 617, 0, Text_17C4FE, Text_17C552
+ loadword 0, gUnknown_817C590
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_16465F:: @ 816465F
+ trainerbattle 0, 618, 0, Text_17C5DB, Text_17C609
+ loadword 0, gUnknown_817C615
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_164676:: @ 8164676
+ trainerbattle 0, 619, 0, Text_17C63E, Text_17C660
+ loadword 0, gUnknown_817C68E
+ callstd 6
+ end
+
+SSAnne_1F_Room11_EventScript_16468D:: @ 816468D
+ trainerbattle 0, 620, 0, Text_17C6C9, Text_17C6FB
+ loadword 0, gUnknown_817C728
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_1F_Room12/scripts.inc b/data/maps/SSAnne_1F_Room12/scripts.inc
new file mode 100644
index 000000000..5f52018d8
--- /dev/null
+++ b/data/maps/SSAnne_1F_Room12/scripts.inc
@@ -0,0 +1,7 @@
+SSAnne_1F_Room12_MapScripts:: @ 81646A4
+ map_script 3, SSAnne_1F_Room12_MapScript1_1646AA
+ .byte 0
+
+SSAnne_1F_Room12_MapScript1_1646AA:: @ 81646AA
+ setworldmapflag 2238
+ end
diff --git a/data/maps/SSAnne_1F_Room2/scripts.inc b/data/maps/SSAnne_1F_Room2/scripts.inc
new file mode 100644
index 000000000..f0670a7e6
--- /dev/null
+++ b/data/maps/SSAnne_1F_Room2/scripts.inc
@@ -0,0 +1,19 @@
+SSAnne_1F_Room2_MapScripts:: @ 8160BE5
+ .byte 0
+
+SSAnne_1F_Room2_EventScript_160BE6:: @ 8160BE6
+ loadword 0, gUnknown_8173AC5
+ callstd 2
+ end
+
+SSAnne_1F_Room2_EventScript_160BEF:: @ 8160BEF
+ trainerbattle 0, 126, 0, Text_173A1A, Text_173A4F
+ loadword 0, gUnknown_8173A7A
+ callstd 6
+ end
+
+SSAnne_1F_Room2_EventScript_160C06:: @ 8160C06
+ trainerbattle 0, 96, 0, Text_173999, Text_1739B1
+ loadword 0, gUnknown_81739C5
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_1F_Room3/scripts.inc b/data/maps/SSAnne_1F_Room3/scripts.inc
new file mode 100644
index 000000000..a1f69d1da
--- /dev/null
+++ b/data/maps/SSAnne_1F_Room3/scripts.inc
@@ -0,0 +1,23 @@
+SSAnne_1F_Room3_MapScripts:: @ 8160C1D
+ .byte 0
+
+SSAnne_1F_Room3_EventScript_160C1E:: @ 8160C1E
+ loadword 0, gUnknown_8173B21
+ callstd 2
+ end
+
+SSAnne_1F_Room3_EventScript_160C27:: @ 8160C27
+ loadword 0, gUnknown_8173AFA
+ callstd 2
+ end
+
+SSAnne_1F_Room3_EventScript_160C30:: @ 8160C30
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_WIGGLYTUFF, 0
+ loadword 0, gUnknown_8173B61
+ callstd 4
+ waitmoncry
+ release
+ end
diff --git a/data/maps/SSAnne_1F_Room4/scripts.inc b/data/maps/SSAnne_1F_Room4/scripts.inc
new file mode 100644
index 000000000..224bd98fd
--- /dev/null
+++ b/data/maps/SSAnne_1F_Room4/scripts.inc
@@ -0,0 +1,19 @@
+SSAnne_1F_Room4_MapScripts:: @ 8160C43
+ .byte 0
+
+SSAnne_1F_Room4_EventScript_160C44:: @ 8160C44
+ lock
+ faceplayer
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_160C5C
+ loadword 0, gUnknown_8173BA4
+ callstd 4
+ release
+ end
+
+EventScript_160C5C:: @ 8160C5C
+ loadword 0, gUnknown_8173B79
+ callstd 4
+ release
+ end
diff --git a/data/maps/SSAnne_1F_Room5/scripts.inc b/data/maps/SSAnne_1F_Room5/scripts.inc
new file mode 100644
index 000000000..e56b3d1fc
--- /dev/null
+++ b/data/maps/SSAnne_1F_Room5/scripts.inc
@@ -0,0 +1,8 @@
+SSAnne_1F_Room5_MapScripts:: @ 8160C66
+ .byte 0
+
+SSAnne_1F_Room5_EventScript_160C67:: @ 8160C67
+ trainerbattle 0, 422, 0, Text_173BD1, Text_173BFA
+ loadword 0, gUnknown_8173C30
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_1F_Room6/scripts.inc b/data/maps/SSAnne_1F_Room6/scripts.inc
new file mode 100644
index 000000000..9ebb100d8
--- /dev/null
+++ b/data/maps/SSAnne_1F_Room6/scripts.inc
@@ -0,0 +1,31 @@
+SSAnne_1F_Room6_MapScripts:: @ 8160DF2
+ .byte 0
+
+SSAnne_1F_Room6_EventScript_160DF3:: @ 8160DF3
+ lock
+ faceplayer
+ loadword 0, gUnknown_817445B
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_160E18
+ closemessage
+ call EventScript_1A6C26
+ loadword 0, gUnknown_8174490
+ callstd 4
+ release
+ end
+
+EventScript_160E18:: @ 8160E18
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_160E2E
+ loadword 0, gUnknown_8174515
+ callstd 4
+ release
+ end
+
+EventScript_160E2E:: @ 8160E2E
+ loadword 0, gUnknown_81744D0
+ callstd 4
+ release
+ end
diff --git a/data/maps/SSAnne_1F_Room7/scripts.inc b/data/maps/SSAnne_1F_Room7/scripts.inc
new file mode 100644
index 000000000..7e5387084
--- /dev/null
+++ b/data/maps/SSAnne_1F_Room7/scripts.inc
@@ -0,0 +1,8 @@
+SSAnne_1F_Room7_MapScripts:: @ 8160C7E
+ .byte 0
+
+SSAnne_1F_Room7_EventScript_160C7F:: @ 8160C7F
+ trainerbattle 0, 421, 0, Text_173C52, Text_173CB4
+ loadword 0, gUnknown_8173CC4
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_2F_Corridor/scripts.inc b/data/maps/SSAnne_2F_Corridor/scripts.inc
new file mode 100644
index 000000000..0cecaff2e
--- /dev/null
+++ b/data/maps/SSAnne_2F_Corridor/scripts.inc
@@ -0,0 +1,187 @@
+SSAnne_2F_Corridor_MapScripts:: @ 81608DE
+ .byte 0
+
+SSAnne_2F_Corridor_EventScript_1608DF:: @ 81608DF
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_160903
+
+EventScript_1608EA:: @ 81608EA
+ end
+
+SSAnne_2F_Corridor_EventScript_1608EB:: @ 81608EB
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_160903
+
+EventScript_1608F6:: @ 81608F6
+ end
+
+SSAnne_2F_Corridor_EventScript_1608F7:: @ 81608F7
+ lockall
+ setvar VAR_0x4001, 2
+ goto EventScript_160903
+
+EventScript_160902:: @ 8160902
+ end
+
+EventScript_160903:: @ 8160903
+ textcolor 0
+ playse SE_KAIDAN
+ delay 5
+ playbgm BGM_FRLG_RIVAL, 0
+ addobject 1
+ delay 10
+ applymovement 1, Movement_1A75ED
+ waitmovement 0
+ delay 20
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_1609AD
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_1609B8
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_1609CA
+ loadword 0, gUnknown_8173035
+ callstd 4
+ setvar VAR_LAST_TALKED, 1
+ compare_var_to_value VAR_STARTER_MON, 2
+ call_if 1, EventScript_1609DC
+ compare_var_to_value VAR_STARTER_MON, 1
+ call_if 1, EventScript_1609E7
+ compare_var_to_value VAR_STARTER_MON, 0
+ call_if 1, EventScript_1609F2
+ loadword 0, gUnknown_8173164
+ callstd 4
+ closemessage
+ delay 10
+ playbgm BGM_FRLG_RIVAL_POSTBATTLE, 0
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_1609FD
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_160A08
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_160A13
+ fadedefaultbgm
+ removeobject 1
+ setvar VAR_0x405B, 1
+ releaseall
+ end
+
+EventScript_1609AD:: @ 81609AD
+ applymovement 1, Movement_160A2A
+ waitmovement 0
+ return
+
+EventScript_1609B8:: @ 81609B8
+ applymovement 1, Movement_160A2E
+ applymovement 255, Movement_160A24
+ waitmovement 0
+ return
+
+EventScript_1609CA:: @ 81609CA
+ applymovement 255, Movement_160A1E
+ applymovement 1, Movement_160A34
+ waitmovement 0
+ return
+
+EventScript_1609DC:: @ 81609DC
+ trainerbattle 3, 426, 0, Text_173110
+ return
+
+EventScript_1609E7:: @ 81609E7
+ trainerbattle 3, 427, 0, Text_173110
+ return
+
+EventScript_1609F2:: @ 81609F2
+ trainerbattle 3, 428, 0, Text_173110
+ return
+
+EventScript_1609FD:: @ 81609FD
+ applymovement 1, Movement_160A3B
+ waitmovement 0
+ return
+
+EventScript_160A08:: @ 8160A08
+ applymovement 1, Movement_160A44
+ waitmovement 0
+ return
+
+EventScript_160A13:: @ 8160A13
+ applymovement 1, Movement_160A4C
+ waitmovement 0
+ return
+
+Movement_160A1E:: @ 8160A1E
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_2f
+ step_end
+
+Movement_160A24:: @ 8160A24
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_2f
+ step_end
+
+Movement_160A2A:: @ 8160A2A
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_160A2E:: @ 8160A2E
+ step_10
+ step_10
+ step_10
+ step_10
+ step_30
+ step_end
+
+Movement_160A34:: @ 8160A34
+ step_10
+ step_10
+ step_10
+ step_10
+ step_13
+ step_1a
+ step_end
+
+Movement_160A3B:: @ 8160A3B
+ step_13
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_160A44:: @ 8160A44
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_160A4C:: @ 8160A4C
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
+
+SSAnne_2F_Corridor_EventScript_160A54:: @ 8160A54
+ loadword 0, gUnknown_8172FC3
+ callstd 2
+ end
diff --git a/data/maps/SSAnne_2F_Room1/scripts.inc b/data/maps/SSAnne_2F_Room1/scripts.inc
new file mode 100644
index 000000000..65f373a77
--- /dev/null
+++ b/data/maps/SSAnne_2F_Room1/scripts.inc
@@ -0,0 +1,15 @@
+SSAnne_2F_Room1_MapScripts:: @ 8160C96
+ .byte 0
+
+SSAnne_2F_Room1_EventScript_160C97:: @ 8160C97
+ lock
+ faceplayer
+ message Text_173CE3
+ waitmessage
+ setvar VAR_0x8004, 143
+ special sub_80CBDCC
+ drawmonpic SPECIES_SNORLAX, 10, 3
+ waitbuttonpress
+ erasemonpic
+ release
+ end
diff --git a/data/maps/SSAnne_2F_Room2/scripts.inc b/data/maps/SSAnne_2F_Room2/scripts.inc
new file mode 100644
index 000000000..0adab213c
--- /dev/null
+++ b/data/maps/SSAnne_2F_Room2/scripts.inc
@@ -0,0 +1,14 @@
+SSAnne_2F_Room2_MapScripts:: @ 8160CB0
+ .byte 0
+
+SSAnne_2F_Room2_EventScript_160CB1:: @ 8160CB1
+ trainerbattle 0, 223, 0, Text_173DDB, Text_173DF7
+ loadword 0, gUnknown_8173E04
+ callstd 6
+ end
+
+SSAnne_2F_Room2_EventScript_160CC8:: @ 8160CC8
+ trainerbattle 0, 482, 0, Text_173D63, Text_173D92
+ loadword 0, gUnknown_8173DB6
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_2F_Room3/scripts.inc b/data/maps/SSAnne_2F_Room3/scripts.inc
new file mode 100644
index 000000000..e2acc4ccd
--- /dev/null
+++ b/data/maps/SSAnne_2F_Room3/scripts.inc
@@ -0,0 +1,12 @@
+SSAnne_2F_Room3_MapScripts:: @ 8160CDF
+ .byte 0
+
+SSAnne_2F_Room3_EventScript_160CE0:: @ 8160CE0
+ loadword 0, gUnknown_8173E3A
+ callstd 2
+ end
+
+SSAnne_2F_Room3_EventScript_160CE9:: @ 8160CE9
+ loadword 0, gUnknown_8173E7B
+ callstd 2
+ end
diff --git a/data/maps/SSAnne_2F_Room4/scripts.inc b/data/maps/SSAnne_2F_Room4/scripts.inc
new file mode 100644
index 000000000..d9ffc8a55
--- /dev/null
+++ b/data/maps/SSAnne_2F_Room4/scripts.inc
@@ -0,0 +1,14 @@
+SSAnne_2F_Room4_MapScripts:: @ 8160CF2
+ .byte 0
+
+SSAnne_2F_Room4_EventScript_160CF3:: @ 8160CF3
+ trainerbattle 0, 483, 0, Text_173F07, Text_173F42
+ loadword 0, gUnknown_8173F55
+ callstd 6
+ end
+
+SSAnne_2F_Room4_EventScript_160D0A:: @ 8160D0A
+ trainerbattle 0, 127, 0, Text_173F83, Text_173FAB
+ loadword 0, gUnknown_8173FB9
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_2F_Room5/scripts.inc b/data/maps/SSAnne_2F_Room5/scripts.inc
new file mode 100644
index 000000000..e3d94ecff
--- /dev/null
+++ b/data/maps/SSAnne_2F_Room5/scripts.inc
@@ -0,0 +1,12 @@
+SSAnne_2F_Room5_MapScripts:: @ 8160D21
+ .byte 0
+
+SSAnne_2F_Room5_EventScript_160D22:: @ 8160D22
+ loadword 0, gUnknown_8173FF7
+ callstd 2
+ end
+
+SSAnne_2F_Room5_EventScript_160D2B:: @ 8160D2B
+ loadword 0, gUnknown_817404F
+ callstd 2
+ end
diff --git a/data/maps/SSAnne_2F_Room6/scripts.inc b/data/maps/SSAnne_2F_Room6/scripts.inc
new file mode 100644
index 000000000..3c43d9243
--- /dev/null
+++ b/data/maps/SSAnne_2F_Room6/scripts.inc
@@ -0,0 +1,12 @@
+SSAnne_2F_Room6_MapScripts:: @ 8160D34
+ .byte 0
+
+SSAnne_2F_Room6_EventScript_160D35:: @ 8160D35
+ loadword 0, gUnknown_81740A1
+ callstd 2
+ end
+
+SSAnne_2F_Room6_EventScript_160D3E:: @ 8160D3E
+ loadword 0, gUnknown_81740D6
+ callstd 2
+ end
diff --git a/data/maps/SSAnne_3F_Corridor/scripts.inc b/data/maps/SSAnne_3F_Corridor/scripts.inc
new file mode 100644
index 000000000..21017b2a2
--- /dev/null
+++ b/data/maps/SSAnne_3F_Corridor/scripts.inc
@@ -0,0 +1,7 @@
+SSAnne_3F_Corridor_MapScripts:: @ 8160A5D
+ .byte 0
+
+SSAnne_3F_Corridor_EventScript_160A5E:: @ 8160A5E
+ loadword 0, gUnknown_817320C
+ callstd 2
+ end
diff --git a/data/maps/SSAnne_B1F_Corridor/scripts.inc b/data/maps/SSAnne_B1F_Corridor/scripts.inc
new file mode 100644
index 000000000..3e4641593
--- /dev/null
+++ b/data/maps/SSAnne_B1F_Corridor/scripts.inc
@@ -0,0 +1,2 @@
+SSAnne_B1F_Corridor_MapScripts:: @ 8160A67
+ .byte 0
diff --git a/data/maps/SSAnne_B1F_Room1/scripts.inc b/data/maps/SSAnne_B1F_Room1/scripts.inc
new file mode 100644
index 000000000..4bbfb167a
--- /dev/null
+++ b/data/maps/SSAnne_B1F_Room1/scripts.inc
@@ -0,0 +1,14 @@
+SSAnne_B1F_Room1_MapScripts:: @ 8160D47
+ .byte 0
+
+SSAnne_B1F_Room1_EventScript_160D48:: @ 8160D48
+ trainerbattle 0, 224, 0, Text_174177, Text_1741EF
+ loadword 0, gUnknown_817420E
+ callstd 6
+ end
+
+SSAnne_B1F_Room1_EventScript_160D5F:: @ 8160D5F
+ trainerbattle 0, 140, 0, Text_1740F6, Text_174123
+ loadword 0, gUnknown_817413A
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_B1F_Room2/scripts.inc b/data/maps/SSAnne_B1F_Room2/scripts.inc
new file mode 100644
index 000000000..d982818bc
--- /dev/null
+++ b/data/maps/SSAnne_B1F_Room2/scripts.inc
@@ -0,0 +1,8 @@
+SSAnne_B1F_Room2_MapScripts:: @ 8160D76
+ .byte 0
+
+SSAnne_B1F_Room2_EventScript_160D77:: @ 8160D77
+ trainerbattle 0, 138, 0, Text_174239, Text_17425C
+ loadword 0, gUnknown_8174272
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_B1F_Room3/scripts.inc b/data/maps/SSAnne_B1F_Room3/scripts.inc
new file mode 100644
index 000000000..b61516005
--- /dev/null
+++ b/data/maps/SSAnne_B1F_Room3/scripts.inc
@@ -0,0 +1,8 @@
+SSAnne_B1F_Room3_MapScripts:: @ 8160D8E
+ .byte 0
+
+SSAnne_B1F_Room3_EventScript_160D8F:: @ 8160D8F
+ trainerbattle 0, 139, 0, Text_1742A6, Text_1742C3
+ loadword 0, gUnknown_81742D2
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_B1F_Room4/scripts.inc b/data/maps/SSAnne_B1F_Room4/scripts.inc
new file mode 100644
index 000000000..c81c58192
--- /dev/null
+++ b/data/maps/SSAnne_B1F_Room4/scripts.inc
@@ -0,0 +1,14 @@
+SSAnne_B1F_Room4_MapScripts:: @ 8160DA6
+ .byte 0
+
+SSAnne_B1F_Room4_EventScript_160DA7:: @ 8160DA7
+ trainerbattle 0, 136, 0, Text_174315, Text_174348
+ loadword 0, gUnknown_8174362
+ callstd 6
+ end
+
+SSAnne_B1F_Room4_EventScript_160DBE:: @ 8160DBE
+ trainerbattle 0, 137, 0, Text_174385, Text_1743B3
+ loadword 0, gUnknown_81743C8
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_B1F_Room5/scripts.inc b/data/maps/SSAnne_B1F_Room5/scripts.inc
new file mode 100644
index 000000000..b38ab6265
--- /dev/null
+++ b/data/maps/SSAnne_B1F_Room5/scripts.inc
@@ -0,0 +1,18 @@
+SSAnne_B1F_Room5_MapScripts:: @ 8160DD5
+ .byte 0
+
+SSAnne_B1F_Room5_EventScript_160DD6:: @ 8160DD6
+ loadword 0, gUnknown_81743F8
+ callstd 2
+ end
+
+SSAnne_B1F_Room5_EventScript_160DDF:: @ 8160DDF
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_MACHOKE, 0
+ loadword 0, gUnknown_8174444
+ callstd 4
+ waitmoncry
+ release
+ end
diff --git a/data/maps/SSAnne_CaptainsOffice/scripts.inc b/data/maps/SSAnne_CaptainsOffice/scripts.inc
new file mode 100644
index 000000000..98b9c8b42
--- /dev/null
+++ b/data/maps/SSAnne_CaptainsOffice/scripts.inc
@@ -0,0 +1,59 @@
+SSAnne_CaptainsOffice_MapScripts:: @ 8160B39
+ .byte 0
+
+SSAnne_CaptainsOffice_EventScript_160B3A:: @ 8160B3A
+ lock
+ checkflag FLAG_0x237
+ goto_if 1, EventScript_160BB5
+ loadword 0, gUnknown_8173646
+ callstd 4
+ textcolor 3
+ message Text_173676
+ waitmessage
+ playfanfare MUS_ME_ASA
+ waitfanfare
+ call EventScript_1A6675
+ delay 50
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81736A6
+ callstd 4
+ additem ITEM_HM01, 1
+ loadword 0, gUnknown_81737AF
+ setorcopyvar VAR_0x8000, 339
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ loadword 0, gUnknown_81737D2
+ callstd 4
+ setflag FLAG_0x237
+ setvar VAR_0x407E, 1
+ release
+ end
+
+EventScript_160BA0:: @ 8160BA0
+ loadword 0, gUnknown_81738C3
+ callstd 4
+ closemessage
+ applymovement 1, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+EventScript_160BB5:: @ 8160BB5
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_8173831
+ callstd 4
+ release
+ end
+
+SSAnne_CaptainsOffice_EventScript_160BC9:: @ 8160BC9
+ loadword 0, gUnknown_81738E6
+ callstd 3
+ end
+
+SSAnne_CaptainsOffice_EventScript_160BD2:: @ 8160BD2
+ loadword 0, gUnknown_8173903
+ callstd 3
+ end
diff --git a/data/maps/SSAnne_CaptainsOffice2/scripts.inc b/data/maps/SSAnne_CaptainsOffice2/scripts.inc
new file mode 100644
index 000000000..fb9065ad4
--- /dev/null
+++ b/data/maps/SSAnne_CaptainsOffice2/scripts.inc
@@ -0,0 +1,2 @@
+SSAnne_CaptainsOffice2_MapScripts:: @ 8163D81
+ .byte 0
diff --git a/data/maps/SSAnne_CaptainsOffice3/scripts.inc b/data/maps/SSAnne_CaptainsOffice3/scripts.inc
new file mode 100644
index 000000000..350845084
--- /dev/null
+++ b/data/maps/SSAnne_CaptainsOffice3/scripts.inc
@@ -0,0 +1,201 @@
+SSAnne_CaptainsOffice3_MapScripts:: @ 8163D82
+ map_script 3, SSAnne_CaptainsOffice3_MapScript1_163D88
+ .byte 0
+
+SSAnne_CaptainsOffice3_MapScript1_163D88:: @ 8163D88
+ compare_var_to_value VAR_0x4080, 1
+ call_if 1, EventScript_163D94
+ end
+
+EventScript_163D94:: @ 8163D94
+ setflag FLAG_0x08B
+ return
+
+SSAnne_CaptainsOffice3_EventScript_163D98:: @ 8163D98
+ lockall
+ textcolor 1
+ loadword 0, gUnknown_817B04F
+ callstd 4
+ applymovement 1, Movement_163EE8
+ waitmovement 0
+ textcolor 0
+ loadword 0, gUnknown_817B0B9
+ callstd 4
+ closemessage
+ playse SE_PIN
+ applymovement 3, Movement_1A75DB
+ waitmovement 0
+ applymovement 3, Movement_1A75ED
+ waitmovement 0
+ applymovement 3, Movement_1A75DD
+ waitmovement 0
+ textcolor 1
+ loadword 0, gUnknown_817B109
+ callstd 4
+ closemessage
+ applymovement 3, Movement_1A75EB
+ waitmovement 0
+ delay 18
+ applymovement 3, Movement_1A75ED
+ waitmovement 0
+ delay 35
+ applymovement 4, Movement_163F11
+ applymovement 3, Movement_163F18
+ applymovement 255, Movement_163EDD
+ waitmovement 0
+ applymovement 2, Movement_163EE8
+ waitmovement 0
+ playbgm BGM_FRLG_SUSPICIOUS_EYE, 0
+ textcolor 0
+ loadword 0, gUnknown_817B20B
+ callstd 4
+ setvar VAR_LAST_TALKED, 4
+ trainerbattle 3, 539, 0, Text_17B251
+ applymovement 3, Movement_163F1B
+ waitmovement 0
+ textcolor 1
+ loadword 0, gUnknown_817B269
+ callstd 4
+ textcolor 0
+ loadword 0, gUnknown_817B2EF
+ callstd 4
+ textcolor 1
+ message Text_17B313
+ waitmessage
+ waitse
+ playmoncry SPECIES_LAPRAS, 2
+ waitbuttonpress
+ waitmoncry
+ applymovement 1, Movement_163EEE
+ waitmovement 0
+ textcolor 0
+ loadword 0, gUnknown_817B399
+ callstd 4
+ closemessage
+ applymovement 3, Movement_163F1D
+ applymovement 255, Movement_163EE2
+ applymovement 1, Movement_163EF0
+ applymovement 2, Movement_163EFA
+ applymovement 4, Movement_163F05
+ waitmovement 0
+ removeobject 1
+ removeobject 2
+ removeobject 4
+ delay 50
+ applymovement 3, Movement_163F23
+ waitmovement 0
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ textcolor 1
+ loadword 0, gUnknown_817B457
+ callstd 4
+ setflag FLAG_0x08E
+ clearflag FLAG_0x08C
+ setvar VAR_0x4080, 1
+ releaseall
+ end
+
+Movement_163EDD:: @ 8163EDD
+ step_11
+ step_11
+ step_13
+ step_11
+ step_end
+
+Movement_163EE2:: @ 8163EE2
+ step_1c
+ step_2f
+ step_1c
+ step_1c
+ step_2d
+ step_end
+
+Movement_163EE8:: @ 8163EE8
+ step_25
+ step_end
+
+gUnknown_163EEA:: @ 8163EEA
+ step_4c
+ step_13
+ step_4d
+ step_end
+
+Movement_163EEE:: @ 8163EEE
+ step_29
+ step_end
+
+Movement_163EF0:: @ 8163EF0
+ step_13
+ step_10
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_end
+
+Movement_163EFA:: @ 8163EFA
+ step_1c
+ step_12
+ step_10
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_end
+
+Movement_163F05:: @ 8163F05
+ step_1c
+ step_10
+ step_1c
+ step_10
+ step_20
+ step_20
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_end
+
+Movement_163F11:: @ 8163F11
+ step_1c
+ step_1b
+ step_30
+ step_end
+
+Movement_163F15:: @ 8163F15
+ step_12
+ step_12
+ step_end
+
+Movement_163F18:: @ 8163F18
+ step_12
+ step_11
+ step_end
+
+Movement_163F1B:: @ 8163F1B
+ step_26
+ step_end
+
+Movement_163F1D:: @ 8163F1D
+ step_1b
+ step_30
+ step_1c
+ step_1c
+ step_2d
+ step_end
+
+Movement_163F23:: @ 8163F23
+ step_13
+ step_end
+
+SSAnne_CaptainsOffice3_EventScript_163F25:: @ 8163F25
+ loadword 0, gUnknown_817B457
+ callstd 2
+ end
diff --git a/data/maps/SSAnne_CaptainsOffice4/scripts.inc b/data/maps/SSAnne_CaptainsOffice4/scripts.inc
new file mode 100644
index 000000000..ac4d141be
--- /dev/null
+++ b/data/maps/SSAnne_CaptainsOffice4/scripts.inc
@@ -0,0 +1,202 @@
+SSAnne_CaptainsOffice4_MapScripts:: @ 8163F2E
+ map_script 1, SSAnne_CaptainsOffice4_MapScript1_163F3D
+ map_script 3, SSAnne_CaptainsOffice4_MapScript2_163F39
+ .byte 0
+
+SSAnne_CaptainsOffice4_MapScript2_163F39:: @ 8163F39
+ setworldmapflag 2233
+ end
+
+SSAnne_CaptainsOffice4_MapScript1_163F3D:: @ 8163F3D
+ checktrainerflag 543
+ call_if 1, EventScript_163F47
+ end
+
+EventScript_163F47:: @ 8163F47
+ setmetatile 26, 20, 672, 0
+ setmetatile 27, 20, 672, 0
+ return
+
+SSAnne_CaptainsOffice4_EventScript_163F5A:: @ 8163F5A
+ lockall
+ checkflag FLAG_0x2D5
+ goto_if 1, EventScript_163F6E
+ loadword 0, gUnknown_817B4E3
+ callstd 4
+ releaseall
+ end
+
+EventScript_163F6E:: @ 8163F6E
+ loadword 0, gUnknown_817B512
+ callstd 4
+ releaseall
+ end
+
+SSAnne_CaptainsOffice4_EventScript_163F78:: @ 8163F78
+ loadword 0, gUnknown_817BB15
+ callstd 3
+ end
+
+SSAnne_CaptainsOffice4_EventScript_163F81:: @ 8163F81
+ lockall
+ applymovement 4, Movement_1A75E7
+ waitmovement 0
+ setvar VAR_0x4088, 1
+ releaseall
+ end
+
+SSAnne_CaptainsOffice4_EventScript_163F93:: @ 8163F93
+ trainerbattle 2, 545, 0, Text_17BBAF, Text_17BC55, EventScript_163FCD
+ checkflag 2116
+ goto_if 1, EventScript_163FB7
+ loadword 0, gUnknown_817BCA3
+ callstd 6
+ end
+
+EventScript_163FB7:: @ 8163FB7
+ setvar VAR_0x8004, 15
+ setvar VAR_0x8005, 5
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_817BCD7
+ callstd 6
+ end
+
+EventScript_163FCD:: @ 8163FCD
+ loadword 0, gUnknown_817BC6C
+ callstd 4
+ setflag FLAG_0x2DC
+ setorcopyvar VAR_0x8000, 374
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ release
+ end
+
+SSAnne_CaptainsOffice4_EventScript_163FE6:: @ 8163FE6
+ trainerbattle 0, 541, 0, Text_17B54D, Text_17B585
+ loadword 0, gUnknown_817B5A6
+ callstd 6
+ end
+
+SSAnne_CaptainsOffice4_EventScript_163FFD:: @ 8163FFD
+ trainerbattle 0, 542, 0, Text_17B677, Text_17B6D9
+ loadword 0, gUnknown_817B6EF
+ callstd 6
+ end
+
+SSAnne_CaptainsOffice4_EventScript_164014:: @ 8164014
+ trainerbattle 2, 544, 0, Text_17B8DA, Text_17B9FB, EventScript_16402F
+ loadword 0, gUnknown_817BA64
+ callstd 6
+ end
+
+EventScript_16402F:: @ 816402F
+ getplayerxy VAR_0x8004, VAR_0x8005
+ compare_var_to_value VAR_0x8004, 24
+ call_if 3, EventScript_164065
+ loadword 0, gUnknown_817BA64
+ callstd 4
+ closemessage
+ fadescreen 1
+ removeobject 1
+ removeobject 2
+ removeobject 4
+ removeobject 3
+ setflag FLAG_0x088
+ fadescreen 0
+ setvar VAR_0x4088, 1
+ setflag FLAG_0x2D5
+ release
+ end
+
+EventScript_164065:: @ 8164065
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ return
+
+SSAnne_CaptainsOffice4_EventScript_164070:: @ 8164070
+ trainerbattle 0, 516, 0, Text_17B5D6, Text_17B62F
+ loadword 0, gUnknown_817B642
+ callstd 6
+ end
+
+SSAnne_CaptainsOffice4_EventScript_164087:: @ 8164087
+ trainerbattle 2, 543, 0, Text_17B72D, Text_17B79C, EventScript_1640A2
+ loadword 0, gUnknown_817B7FA
+ callstd 6
+ end
+
+EventScript_1640A2:: @ 81640A2
+ getplayerxy VAR_0x8004, VAR_0x8005
+ specialvar VAR_RESULT, player_get_direction_lower_nybble
+ compare_var_to_value VAR_RESULT, 2
+ call_if 1, EventScript_16412E
+ loadword 0, gUnknown_817B7AE
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_0x8004, 24
+ call_if 3, EventScript_164144
+ compare_var_to_value VAR_0x8004, 25
+ call_if 1, EventScript_16414F
+ compare_var_to_value VAR_0x8004, 26
+ call_if 1, EventScript_16415A
+ compare_var_to_value VAR_0x8004, 27
+ call_if 1, EventScript_16415A
+ playse SE_PIN
+ call EventScript_163F47
+ special DrawWholeMapView
+ waitse
+ compare_var_to_value VAR_0x8004, 24
+ call_if 3, EventScript_164165
+ compare_var_to_value VAR_0x8004, 25
+ call_if 1, EventScript_164165
+ compare_var_to_value VAR_0x8004, 26
+ call_if 1, EventScript_164165
+ compare_var_to_value VAR_0x8004, 27
+ call_if 1, EventScript_164170
+ loadword 0, gUnknown_817B7FA
+ callstd 4
+ release
+ end
+
+EventScript_16412E:: @ 816412E
+ compare_var_to_value VAR_0x8004, 27
+ goto_if 1, EventScript_1A77A9
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ return
+
+EventScript_164144:: @ 8164144
+ applymovement 3, Movement_16417B
+ waitmovement 0
+ return
+
+EventScript_16414F:: @ 816414F
+ applymovement 3, Movement_16417F
+ waitmovement 0
+ return
+
+EventScript_16415A:: @ 816415A
+ applymovement 3, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_164165:: @ 8164165
+ applymovement 3, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_164170:: @ 8164170
+ applymovement 3, Movement_1A75ED
+ waitmovement 0
+ return
+
+Movement_16417B:: @ 816417B
+ step_13
+ step_13
+ step_2e
+ step_end
+
+Movement_16417F:: @ 816417F
+ step_13
+ step_2e
+ step_end
diff --git a/data/maps/SSAnne_CaptainsOffice5/scripts.inc b/data/maps/SSAnne_CaptainsOffice5/scripts.inc
new file mode 100644
index 000000000..7effe1b4a
--- /dev/null
+++ b/data/maps/SSAnne_CaptainsOffice5/scripts.inc
@@ -0,0 +1,35 @@
+SSAnne_CaptainsOffice5_MapScripts:: @ 8164182
+ map_script 3, SSAnne_CaptainsOffice5_MapScript1_164188
+ .byte 0
+
+SSAnne_CaptainsOffice5_MapScript1_164188:: @ 8164188
+ setworldmapflag 2235
+ end
+
+SixIsland_DottedHole_B1F_EventScript_16418C:: @ 816418C
+ lockall
+ braillemessage gUnknown_81A9288
+ waitbuttonpress
+ releaseall
+ end
+
+SSAnne_CaptainsOffice9_EventScript_164195:: @ 8164195
+ lockall
+ braillemessage gUnknown_81A928B
+ waitbuttonpress
+ releaseall
+ end
+
+SixIsland_DottedHole_B3F_EventScript_16419E:: @ 816419E
+ lockall
+ braillemessage gUnknown_81A9290
+ waitbuttonpress
+ releaseall
+ end
+
+SixIsland_DottedHole_B2F_EventScript_1641A7:: @ 81641A7
+ lockall
+ braillemessage gUnknown_81A9296
+ waitbuttonpress
+ releaseall
+ end
diff --git a/data/maps/SSAnne_CaptainsOffice9/scripts.inc b/data/maps/SSAnne_CaptainsOffice9/scripts.inc
new file mode 100644
index 000000000..5ce3448b5
--- /dev/null
+++ b/data/maps/SSAnne_CaptainsOffice9/scripts.inc
@@ -0,0 +1,2 @@
+SSAnne_CaptainsOffice9_MapScripts:: @ 81641B3
+ .byte 0
diff --git a/data/maps/SSAnne_Deck/scripts.inc b/data/maps/SSAnne_Deck/scripts.inc
new file mode 100644
index 000000000..204f994e9
--- /dev/null
+++ b/data/maps/SSAnne_Deck/scripts.inc
@@ -0,0 +1,29 @@
+SSAnne_Deck_MapScripts:: @ 8160A68
+ .byte 0
+
+SSAnne_Deck_EventScript_160A69:: @ 8160A69
+ loadword 0, gUnknown_817326F
+ callstd 2
+ end
+
+SSAnne_Deck_EventScript_160A72:: @ 8160A72
+ loadword 0, gUnknown_81732C6
+ callstd 2
+ end
+
+SSAnne_Deck_EventScript_160A7B:: @ 8160A7B
+ loadword 0, gUnknown_81732A2
+ callstd 2
+ end
+
+SSAnne_Deck_EventScript_160A84:: @ 8160A84
+ trainerbattle 0, 134, 0, Text_173308, Text_17332B
+ loadword 0, gUnknown_817333E
+ callstd 6
+ end
+
+SSAnne_Deck_EventScript_160A9B:: @ 8160A9B
+ trainerbattle 0, 135, 0, Text_173382, Text_1733A0
+ loadword 0, gUnknown_81733B5
+ callstd 6
+ end
diff --git a/data/maps/SSAnne_Exterior/scripts.inc b/data/maps/SSAnne_Exterior/scripts.inc
new file mode 100644
index 000000000..1bcec87a2
--- /dev/null
+++ b/data/maps/SSAnne_Exterior/scripts.inc
@@ -0,0 +1,67 @@
+SSAnne_Exterior_MapScripts:: @ 8160840
+ map_script 3, SSAnne_Exterior_MapScript1_16084B
+ map_script 2, SSAnne_Exterior_MapScript2_16084F
+ .byte 0
+
+SSAnne_Exterior_MapScript1_16084B:: @ 816084B
+ setworldmapflag 2214
+ end
+
+SSAnne_Exterior_MapScript2_16084F:: @ 816084F
+ map_script_2 VAR_0x407E, 1, SSAnne_Exterior_160859
+ .2byte 0
+
+SSAnne_Exterior_160859:: @ 8160859
+ lockall
+ getplayerxy VAR_0x8004, VAR_0x8005
+ compare_var_to_value VAR_0x8005, 6
+ call_if 3, EventScript_1608A1
+ compare_var_to_value VAR_0x8005, 7
+ call_if 4, EventScript_1608AC
+ fadenewbgm BGM_FRLG_SURF
+ delay 50
+ special sub_815D334
+ waitstate
+ removeobject 1
+ applymovement 255, Movement_1608B7
+ waitmovement 0
+ setvar VAR_0x407E, 2
+ setvar VAR_0x4053, 0
+ warp MAP_VERMILIONCITY, 255, 23, 34
+ waitstate
+ releaseall
+ end
+
+EventScript_1608A1:: @ 81608A1
+ applymovement 255, Movement_1608C1
+ waitmovement 0
+ return
+
+EventScript_1608AC:: @ 81608AC
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ return
+
+Movement_1608B7:: @ 81608B7
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_11
+ step_end
+
+Movement_1608C1:: @ 81608C1
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_10
+ step_end
diff --git a/data/maps/SSAnne_Kitchen/scripts.inc b/data/maps/SSAnne_Kitchen/scripts.inc
new file mode 100644
index 000000000..79aa88852
--- /dev/null
+++ b/data/maps/SSAnne_Kitchen/scripts.inc
@@ -0,0 +1,63 @@
+SSAnne_Kitchen_MapScripts:: @ 8160AB2
+ .byte 0
+
+SSAnne_Kitchen_EventScript_160AB3:: @ 8160AB3
+ loadword 0, gUnknown_81733F8
+ callstd 2
+ end
+
+SSAnne_Kitchen_EventScript_160ABC:: @ 8160ABC
+ loadword 0, gUnknown_8173429
+ callstd 2
+ end
+
+SSAnne_Kitchen_EventScript_160AC5:: @ 8160AC5
+ loadword 0, gUnknown_8173462
+ callstd 2
+ end
+
+SSAnne_Kitchen_EventScript_160ACE:: @ 8160ACE
+ lock
+ faceplayer
+ loadword 0, gUnknown_8173570
+ callstd 4
+ random 3
+ copyvar VAR_0x8008, VAR_RESULT
+ compare_var_to_value VAR_0x8008, 0
+ call_if 1, EventScript_160B03
+ compare_var_to_value VAR_0x8008, 1
+ call_if 1, EventScript_160B0C
+ compare_var_to_value VAR_0x8008, 2
+ call_if 1, EventScript_160B15
+ release
+ end
+
+EventScript_160B03:: @ 8160B03
+ loadword 0, gUnknown_817359F
+ callstd 4
+ return
+
+EventScript_160B0C:: @ 8160B0C
+ loadword 0, gUnknown_81735DF
+ callstd 4
+ return
+
+EventScript_160B15:: @ 8160B15
+ loadword 0, gUnknown_8173611
+ callstd 4
+ return
+
+SSAnne_Kitchen_EventScript_160B1E:: @ 8160B1E
+ loadword 0, gUnknown_81734A0
+ callstd 2
+ end
+
+SSAnne_Kitchen_EventScript_160B27:: @ 8160B27
+ loadword 0, gUnknown_81734D3
+ callstd 2
+ end
+
+SSAnne_Kitchen_EventScript_160B30:: @ 8160B30
+ loadword 0, gUnknown_817353E
+ callstd 2
+ end
diff --git a/data/maps/SSAnne_Kitchen3/scripts.inc b/data/maps/SSAnne_Kitchen3/scripts.inc
new file mode 100644
index 000000000..a6a4664e3
--- /dev/null
+++ b/data/maps/SSAnne_Kitchen3/scripts.inc
@@ -0,0 +1,2 @@
+SSAnne_Kitchen3_MapScripts:: @ 8163C45
+ .byte 0
diff --git a/data/maps/SafariZone_Building1/scripts.inc b/data/maps/SafariZone_Building1/scripts.inc
new file mode 100644
index 000000000..03f5b8b68
--- /dev/null
+++ b/data/maps/SafariZone_Building1/scripts.inc
@@ -0,0 +1,12 @@
+SafariZone_Building1_MapScripts:: @ 81623EB
+ .byte 0
+
+SafariZone_Building1_EventScript_1623EC:: @ 81623EC
+ loadword 0, gUnknown_8177A5A
+ callstd 2
+ end
+
+SafariZone_Building1_EventScript_1623F5:: @ 81623F5
+ loadword 0, gUnknown_8177A82
+ callstd 2
+ end
diff --git a/data/maps/SafariZone_Building2/scripts.inc b/data/maps/SafariZone_Building2/scripts.inc
new file mode 100644
index 000000000..55e12e864
--- /dev/null
+++ b/data/maps/SafariZone_Building2/scripts.inc
@@ -0,0 +1,17 @@
+SafariZone_Building2_MapScripts:: @ 81623FE
+ .byte 0
+
+SafariZone_Building2_EventScript_1623FF:: @ 81623FF
+ loadword 0, gUnknown_8177AE2
+ callstd 2
+ end
+
+SafariZone_Building2_EventScript_162408:: @ 8162408
+ loadword 0, gUnknown_8177AAE
+ callstd 2
+ end
+
+SafariZone_Building2_EventScript_162411:: @ 8162411
+ loadword 0, gUnknown_8177B16
+ callstd 2
+ end
diff --git a/data/maps/SafariZone_Building3/scripts.inc b/data/maps/SafariZone_Building3/scripts.inc
new file mode 100644
index 000000000..1a3832fd4
--- /dev/null
+++ b/data/maps/SafariZone_Building3/scripts.inc
@@ -0,0 +1,17 @@
+SafariZone_Building3_MapScripts:: @ 816241A
+ .byte 0
+
+SafariZone_Building3_EventScript_16241B:: @ 816241B
+ loadword 0, gUnknown_8177BAB
+ callstd 2
+ end
+
+SafariZone_Building3_EventScript_162424:: @ 8162424
+ loadword 0, gUnknown_8177B38
+ callstd 2
+ end
+
+SafariZone_Building3_EventScript_16242D:: @ 816242D
+ loadword 0, gUnknown_8177BEC
+ callstd 2
+ end
diff --git a/data/maps/SafariZone_Building4/scripts.inc b/data/maps/SafariZone_Building4/scripts.inc
new file mode 100644
index 000000000..2b6aec4b6
--- /dev/null
+++ b/data/maps/SafariZone_Building4/scripts.inc
@@ -0,0 +1,17 @@
+SafariZone_Building4_MapScripts:: @ 8162436
+ .byte 0
+
+SafariZone_Building4_EventScript_162437:: @ 8162437
+ loadword 0, gUnknown_8177D39
+ callstd 2
+ end
+
+SafariZone_Building4_EventScript_162440:: @ 8162440
+ loadword 0, gUnknown_8177CEB
+ callstd 2
+ end
+
+SafariZone_Building4_EventScript_162449:: @ 8162449
+ loadword 0, gUnknown_8177D8B
+ callstd 2
+ end
diff --git a/data/maps/SafariZone_Center/scripts.inc b/data/maps/SafariZone_Center/scripts.inc
new file mode 100644
index 000000000..9a869247c
--- /dev/null
+++ b/data/maps/SafariZone_Center/scripts.inc
@@ -0,0 +1,22 @@
+SafariZone_Center_MapScripts:: @ 8162357
+ map_script 3, SafariZone_Center_MapScript1_16235D
+ .byte 0
+
+SafariZone_Center_MapScript1_16235D:: @ 816235D
+ setworldmapflag 2222
+ end
+
+SafariZone_Center_EventScript_162361:: @ 8162361
+ loadword 0, gUnknown_81777F2
+ callstd 3
+ end
+
+SafariZone_Center_EventScript_16236A:: @ 816236A
+ loadword 0, gUnknown_81777FD
+ callstd 3
+ end
+
+SafariZone_Center_EventScript_162373:: @ 8162373
+ loadword 0, gUnknown_817782F
+ callstd 3
+ end
diff --git a/data/maps/SafariZone_East/scripts.inc b/data/maps/SafariZone_East/scripts.inc
new file mode 100644
index 000000000..8c4edfe07
--- /dev/null
+++ b/data/maps/SafariZone_East/scripts.inc
@@ -0,0 +1,17 @@
+SafariZone_East_MapScripts:: @ 816237C
+ .byte 0
+
+SafariZone_East_EventScript_16237D:: @ 816237D
+ loadword 0, gUnknown_817783B
+ callstd 3
+ end
+
+SafariZone_East_EventScript_162386:: @ 8162386
+ loadword 0, gUnknown_8177846
+ callstd 3
+ end
+
+SafariZone_East_EventScript_16238F:: @ 816238F
+ loadword 0, gUnknown_8177884
+ callstd 3
+ end
diff --git a/data/maps/SafariZone_North/scripts.inc b/data/maps/SafariZone_North/scripts.inc
new file mode 100644
index 000000000..d507c330b
--- /dev/null
+++ b/data/maps/SafariZone_North/scripts.inc
@@ -0,0 +1,27 @@
+SafariZone_North_MapScripts:: @ 8162398
+ .byte 0
+
+SafariZone_North_EventScript_162399:: @ 8162399
+ loadword 0, gUnknown_817789D
+ callstd 3
+ end
+
+SafariZone_North_EventScript_1623A2:: @ 81623A2
+ loadword 0, gUnknown_81778A8
+ callstd 3
+ end
+
+SafariZone_North_EventScript_1623AB:: @ 81623AB
+ loadword 0, gUnknown_81778D6
+ callstd 3
+ end
+
+SafariZone_North_EventScript_1623B4:: @ 81623B4
+ loadword 0, gUnknown_81778DD
+ callstd 3
+ end
+
+SafariZone_North_EventScript_1623BD:: @ 81623BD
+ loadword 0, gUnknown_8177935
+ callstd 3
+ end
diff --git a/data/maps/SafariZone_SecretHouse/scripts.inc b/data/maps/SafariZone_SecretHouse/scripts.inc
new file mode 100644
index 000000000..3be84b145
--- /dev/null
+++ b/data/maps/SafariZone_SecretHouse/scripts.inc
@@ -0,0 +1,36 @@
+SafariZone_SecretHouse_MapScripts:: @ 8162452
+ .byte 0
+
+SafariZone_SecretHouse_EventScript_162453:: @ 8162453
+ lock
+ faceplayer
+ checkflag FLAG_0x239
+ goto_if 1, EventScript_1624A9
+ loadword 0, gUnknown_8177DC1
+ callstd 4
+ checkitemspace ITEM_HM03, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16249F
+ additem ITEM_HM03, 1
+ loadword 0, gUnknown_8177E92
+ setorcopyvar VAR_0x8000, 341
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ loadword 0, gUnknown_8177EB7
+ callstd 4
+ setflag FLAG_0x239
+ release
+ end
+
+EventScript_16249F:: @ 816249F
+ loadword 0, gUnknown_8177F72
+ callstd 4
+ release
+ end
+
+EventScript_1624A9:: @ 81624A9
+ loadword 0, gUnknown_8177EB7
+ callstd 4
+ release
+ end
diff --git a/data/maps/SafariZone_West/scripts.inc b/data/maps/SafariZone_West/scripts.inc
new file mode 100644
index 000000000..c4a42268c
--- /dev/null
+++ b/data/maps/SafariZone_West/scripts.inc
@@ -0,0 +1,22 @@
+SafariZone_West_MapScripts:: @ 81623C6
+ .byte 0
+
+SafariZone_West_EventScript_1623C7:: @ 81623C7
+ loadword 0, gUnknown_817796E
+ callstd 3
+ end
+
+SafariZone_West_EventScript_1623D0:: @ 81623D0
+ loadword 0, gUnknown_8177979
+ callstd 3
+ end
+
+SafariZone_West_EventScript_1623D9:: @ 81623D9
+ loadword 0, gUnknown_81779F8
+ callstd 3
+ end
+
+SafariZone_West_EventScript_1623E2:: @ 81623E2
+ loadword 0, gUnknown_8177A41
+ callstd 3
+ end
diff --git a/data/maps/SaffronCity/scripts.inc b/data/maps/SaffronCity/scripts.inc
new file mode 100644
index 000000000..4b90fa5b3
--- /dev/null
+++ b/data/maps/SaffronCity/scripts.inc
@@ -0,0 +1,2 @@
+SaffronCity_MapScripts:: @ 8167483
+ .byte 0
diff --git a/data/maps/SaffronCity_Dojo/scripts.inc b/data/maps/SaffronCity_Dojo/scripts.inc
new file mode 100644
index 000000000..f9a91069d
--- /dev/null
+++ b/data/maps/SaffronCity_Dojo/scripts.inc
@@ -0,0 +1,174 @@
+SaffronCity_Dojo_MapScripts:: @ 816EBDB
+ .byte 0
+
+SaffronCity_Dojo_EventScript_16EBDC:: @ 816EBDC
+ lockall
+ setvar VAR_0x4081, 1
+ applymovement 5, Movement_1A75E7
+ waitmovement 0
+ releaseall
+ end
+
+SaffronCity_Dojo_EventScript_16EBEE:: @ 816EBEE
+ lockall
+ setvar VAR_0x4081, 1
+ applymovement 5, Movement_1A75EB
+ waitmovement 0
+ releaseall
+ end
+
+SaffronCity_Dojo_EventScript_16EC00:: @ 816EC00
+ lock
+ faceplayer
+ checkflag FLAG_0x278
+ goto_if 1, EventScript_16EC3C
+ drawmonpic SPECIES_HITMONLEE, 10, 3
+ setvar VAR_0x4001, 106
+ applymovement 5, Movement_1A75E9
+ waitmovement 0
+ textcolor 0
+ loadword 0, gUnknown_819B44E
+ callstd 5
+ call EventScript_1A6675
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16EC82
+ erasemonpic
+ release
+ end
+
+EventScript_16EC3C:: @ 816EC3C
+ loadword 0, gUnknown_819B4E1
+ callstd 4
+ release
+ end
+
+SaffronCity_Dojo_EventScript_16EC46:: @ 816EC46
+ lock
+ faceplayer
+ checkflag FLAG_0x278
+ goto_if 1, EventScript_16EC3C
+ drawmonpic SPECIES_HITMONCHAN, 10, 3
+ setvar VAR_0x4001, 107
+ applymovement 5, Movement_1A75E9
+ waitmovement 0
+ textcolor 0
+ loadword 0, gUnknown_819B49E
+ callstd 5
+ call EventScript_1A6675
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16EC82
+ erasemonpic
+ release
+ end
+
+EventScript_16EC82:: @ 816EC82
+ erasemonpic
+ givemon 16385, 25, ITEM_NONE, 0, 0, 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16ECB5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16ECEC
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A927C
+ release
+ end
+
+EventScript_16ECB5:: @ 816ECB5
+ removeobject VAR_LAST_TALKED
+ getspeciesname 0, 16385
+ playfanfare MUS_FANFA1
+ message Text_19B473
+ waitmessage
+ waitfanfare
+ setflag FLAG_0x278
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16ED29
+ call EventScript_1A8C27
+ call EventScript_1A74EB
+ goto EventScript_16ED29
+ end
+
+EventScript_16ECEC:: @ 816ECEC
+ removeobject VAR_LAST_TALKED
+ getspeciesname 0, 16385
+ playfanfare MUS_FANFA1
+ message Text_19B473
+ waitmessage
+ waitfanfare
+ setflag FLAG_0x278
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16ED1E
+ call EventScript_1A8C33
+ goto EventScript_16ED1E
+ end
+
+EventScript_16ED1E:: @ 816ED1E
+ call EventScript_1A8C3C
+ goto EventScript_16ED29
+ end
+
+EventScript_16ED29:: @ 816ED29
+ release
+ end
+
+SaffronCity_Dojo_EventScript_16ED2B:: @ 816ED2B
+ loadword 0, gUnknown_819B52E
+ callstd 3
+ end
+
+SaffronCity_Dojo_EventScript_16ED34:: @ 816ED34
+ loadword 0, gUnknown_819B4F8
+ callstd 3
+ end
+
+SaffronCity_Dojo_EventScript_16ED3D:: @ 816ED3D
+ loadword 0, gUnknown_819B50F
+ callstd 3
+ end
+
+SaffronCity_Dojo_EventScript_16ED46:: @ 816ED46
+ trainerbattle 0, 321, 0, Text_19B3DF, Text_19B40F
+ loadword 0, gUnknown_819B41F
+ callstd 6
+ end
+
+SaffronCity_Dojo_EventScript_16ED5D:: @ 816ED5D
+ trainerbattle 0, 319, 0, Text_19B2E0, Text_19B2FD
+ loadword 0, gUnknown_819B30F
+ callstd 6
+ end
+
+SaffronCity_Dojo_EventScript_16ED74:: @ 816ED74
+ trainerbattle 0, 320, 0, Text_19B341, Text_19B396
+ loadword 0, gUnknown_819B3AC
+ callstd 6
+ end
+
+SaffronCity_Dojo_EventScript_16ED8B:: @ 816ED8B
+ trainerbattle 0, 318, 0, Text_19B275, Text_19B292
+ loadword 0, gUnknown_819B29D
+ callstd 6
+ end
+
+SaffronCity_Dojo_EventScript_16EDA2:: @ 816EDA2
+ trainerbattle 2, 317, 0, Text_19B12C, Text_19B193, EventScript_16EDD0
+ checkflag FLAG_0x278
+ goto_if 1, EventScript_16EDC6
+ loadword 0, gUnknown_819B1A7
+ callstd 6
+ end
+
+EventScript_16EDC6:: @ 816EDC6
+ loadword 0, gUnknown_819B24C
+ callstd 4
+ release
+ end
+
+EventScript_16EDD0:: @ 816EDD0
+ setvar VAR_0x4081, 1
+ release
+ end
diff --git a/data/maps/SaffronCity_Duplicate/scripts.inc b/data/maps/SaffronCity_Duplicate/scripts.inc
new file mode 100644
index 000000000..70dface9b
--- /dev/null
+++ b/data/maps/SaffronCity_Duplicate/scripts.inc
@@ -0,0 +1,152 @@
+SaffronCity_Duplicate_MapScripts:: @ 816735F
+ map_script 3, SaffronCity_Duplicate_MapScript1_167365
+ .byte 0
+
+SaffronCity_Duplicate_MapScript1_167365:: @ 8167365
+ setworldmapflag 2202
+ checkflag FLAG_0x23C
+ call_if 0, EventScript_167372
+ end
+
+EventScript_167372:: @ 8167372
+ setobjectxyperm 6, 33, 31
+ return
+
+SaffronCity_Duplicate_EventScript_16737A:: @ 816737A
+ loadword 0, gUnknown_8181003
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_167383:: @ 8167383
+ loadword 0, gUnknown_818101F
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_16738C:: @ 816738C
+ loadword 0, gUnknown_818105A
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_167395:: @ 8167395
+ loadword 0, gUnknown_8181087
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_16739E:: @ 816739E
+ loadword 0, gUnknown_81810A7
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_1673A7:: @ 81673A7
+ loadword 0, gUnknown_81810D5
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_1673B0:: @ 81673B0
+ loadword 0, gUnknown_81810F5
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_1673B9:: @ 81673B9
+ lock
+ checkflag FLAG_0x23C
+ goto_if 1, EventScript_1673D7
+ applymovement 6, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81812CA
+ callstd 4
+ release
+ end
+
+EventScript_1673D7:: @ 81673D7
+ textcolor 3
+ loadword 0, gUnknown_8181302
+ callstd 4
+ release
+ end
+
+SaffronCity_Duplicate_EventScript_1673E3:: @ 81673E3
+ loadword 0, gUnknown_8181159
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_1673EC:: @ 81673EC
+ loadword 0, gUnknown_8181189
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_1673F5:: @ 81673F5
+ loadword 0, gUnknown_81811BF
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_1673FE:: @ 81673FE
+ loadword 0, gUnknown_8181225
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_167407:: @ 8167407
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_PIDGEOT, 0
+ loadword 0, gUnknown_8181286
+ callstd 4
+ waitmoncry
+ release
+ end
+
+SaffronCity_Duplicate_EventScript_16741A:: @ 816741A
+ loadword 0, gUnknown_8181299
+ callstd 2
+ end
+
+SaffronCity_Duplicate_EventScript_167423:: @ 8167423
+ loadword 0, gUnknown_8181326
+ callstd 3
+ end
+
+SaffronCity_Duplicate_EventScript_16742C:: @ 816742C
+ loadword 0, gUnknown_8181354
+ callstd 3
+ end
+
+SaffronCity_Duplicate_EventScript_167435:: @ 8167435
+ lockall
+ setvar VAR_0x8004, 7
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8181362
+ callstd 4
+ releaseall
+ end
+
+SaffronCity_Duplicate_EventScript_16744D:: @ 816744D
+ loadword 0, gUnknown_81813AA
+ callstd 3
+ end
+
+SaffronCity_Duplicate_EventScript_167456:: @ 8167456
+ loadword 0, gUnknown_8181452
+ callstd 3
+ end
+
+SaffronCity_Duplicate_EventScript_16745F:: @ 816745F
+ loadword 0, gUnknown_81814B9
+ callstd 3
+ end
+
+SaffronCity_Duplicate_EventScript_167468:: @ 8167468
+ loadword 0, gUnknown_81814D3
+ callstd 3
+ end
+
+SaffronCity_Duplicate_EventScript_167471:: @ 8167471
+ loadword 0, gUnknown_81814E7
+ callstd 3
+ end
+
+SaffronCity_Duplicate_EventScript_16747A:: @ 816747A
+ loadword 0, gUnknown_8181519
+ callstd 3
+ end
diff --git a/data/maps/SaffronCity_Gym/scripts.inc b/data/maps/SaffronCity_Gym/scripts.inc
new file mode 100644
index 000000000..bb101e266
--- /dev/null
+++ b/data/maps/SaffronCity_Gym/scripts.inc
@@ -0,0 +1,129 @@
+SaffronCity_Gym_MapScripts:: @ 816EDD7
+ .byte 0
+
+SaffronCity_Gym_EventScript_16EDD8:: @ 816EDD8
+ setvar VAR_0x8004, 7
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ trainerbattle 1, 420, 0, Text_19B53C, Text_19B602, EventScript_16EE0A
+ checkflag FLAG_0x29A
+ goto_if 0, EventScript_16EE3D
+ loadword 0, gUnknown_819B7F2
+ callstd 4
+ release
+ end
+
+EventScript_16EE0A:: @ 816EE0A
+ setvar VAR_0x8004, 7
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ setvar VAR_0x8004, 7
+ setvar VAR_0x8005, 3
+ special SetFlavorTextFlagFromSpecialVars
+ clearflag FLAG_0x0AE
+ setflag FLAG_0x4B5
+ setflag 2085
+ setvar VAR_0x8008, 6
+ call EventScript_1A6B18
+ goto EventScript_16EE3D
+ end
+
+EventScript_16EE3D:: @ 816EE3D
+ loadword 0, gUnknown_819B6FA
+ callstd 4
+ checkitemspace ITEM_TM04, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16EE7E
+ additem ITEM_TM04, 1
+ loadword 0, gUnknown_819B7D3
+ setorcopyvar VAR_0x8000, 292
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x29A
+ loadword 0, gUnknown_819B685
+ callstd 4
+ release
+ end
+
+EventScript_16EE7E:: @ 816EE7E
+ loadword 0, gUnknown_819B849
+ callstd 4
+ release
+ end
+
+SaffronCity_Gym_EventScript_16EE88:: @ 816EE88
+ trainerbattle 0, 280, 0, Text_19B936, Text_19B957
+ loadword 0, gUnknown_819B96D
+ callstd 6
+ end
+
+SaffronCity_Gym_EventScript_16EE9F:: @ 816EE9F
+ trainerbattle 0, 281, 0, Text_19BA45, Text_19BA9E
+ setvar VAR_0x8004, 7
+ setvar VAR_0x8005, 5
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_819BAB4
+ callstd 6
+ end
+
+SaffronCity_Gym_EventScript_16EEC3:: @ 816EEC3
+ trainerbattle 0, 282, 0, Text_19BB49, Text_19BBA1
+ loadword 0, gUnknown_819BBB3
+ callstd 6
+ end
+
+SaffronCity_Gym_EventScript_16EEDA:: @ 816EEDA
+ trainerbattle 0, 283, 0, Text_19BC57, Text_19BCBC
+ loadword 0, gUnknown_819BCC4
+ callstd 6
+ end
+
+SaffronCity_Gym_EventScript_16EEF1:: @ 816EEF1
+ trainerbattle 0, 462, 0, Text_19B86A, Text_19B8A8
+ loadword 0, gUnknown_819B8B9
+ callstd 6
+ end
+
+SaffronCity_Gym_EventScript_16EF08:: @ 816EF08
+ trainerbattle 0, 463, 0, Text_19B998, Text_19B9EC
+ loadword 0, gUnknown_819B9F7
+ callstd 6
+ end
+
+SaffronCity_Gym_EventScript_16EF1F:: @ 816EF1F
+ trainerbattle 0, 464, 0, Text_19BAE8, Text_19BB0D
+ loadword 0, gUnknown_819BB1F
+ callstd 6
+ end
+
+SaffronCity_Gym_EventScript_16EF36:: @ 816EF36
+ lock
+ faceplayer
+ checkflag FLAG_0x4B5
+ goto_if 1, EventScript_16EF4B
+ loadword 0, gUnknown_819BCF6
+ callstd 4
+ release
+ end
+
+EventScript_16EF4B:: @ 816EF4B
+ loadword 0, gUnknown_819BDBB
+ callstd 4
+ release
+ end
+
+SaffronCity_Gym_EventScript_16EF55:: @ 816EF55
+ lockall
+ checkflag 2085
+ goto_if 1, EventScript_16EF69
+ loadword 0, gUnknown_819BDFE
+ callstd 4
+ releaseall
+ end
+
+EventScript_16EF69:: @ 816EF69
+ loadword 0, gUnknown_819BE37
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/SaffronCity_House1_1F/scripts.inc b/data/maps/SaffronCity_House1_1F/scripts.inc
new file mode 100644
index 000000000..2f788d241
--- /dev/null
+++ b/data/maps/SaffronCity_House1_1F/scripts.inc
@@ -0,0 +1,23 @@
+SaffronCity_House1_1F_MapScripts:: @ 816EB36
+ .byte 0
+
+SaffronCity_House1_1F_EventScript_16EB37:: @ 816EB37
+ loadword 0, gUnknown_819AB9B
+ callstd 2
+ end
+
+SaffronCity_House1_1F_EventScript_16EB40:: @ 816EB40
+ loadword 0, gUnknown_819ABD7
+ callstd 2
+ end
+
+SaffronCity_House1_1F_EventScript_16EB49:: @ 816EB49
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_CHANSEY, 0
+ loadword 0, gUnknown_819AC4B
+ callstd 4
+ waitmoncry
+ release
+ end
diff --git a/data/maps/SaffronCity_House1_2F/scripts.inc b/data/maps/SaffronCity_House1_2F/scripts.inc
new file mode 100644
index 000000000..5923bd693
--- /dev/null
+++ b/data/maps/SaffronCity_House1_2F/scripts.inc
@@ -0,0 +1,58 @@
+SaffronCity_House1_2F_MapScripts:: @ 816EB5C
+ .byte 0
+
+SaffronCity_House1_2F_EventScript_16EB5D:: @ 816EB5D
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_DODUO, 0
+ loadword 0, gUnknown_819B030
+ callstd 4
+ waitmoncry
+ release
+ end
+
+SaffronCity_House1_2F_EventScript_16EB70:: @ 816EB70
+ lock
+ loadword 0, gUnknown_819B071
+ callstd 4
+ release
+ end
+
+SaffronCity_House1_2F_EventScript_16EB7B:: @ 816EB7B
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ checkitem ITEM_POKE_DOLL, 1
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_1C4CF6
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16EBB7
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_16EBC0
+ release
+ end
+
+EventScript_16EBB7:: @ 816EBB7
+ loadword 0, gUnknown_819AC60
+ callstd 4
+ return
+
+EventScript_16EBC0:: @ 816EBC0
+ loadword 0, gUnknown_819ACF1
+ callstd 4
+ return
+
+SaffronCity_House1_2F_EventScript_16EBC9:: @ 816EBC9
+ loadword 0, gUnknown_819B0D0
+ callstd 3
+ end
+
+SaffronCity_House1_2F_EventScript_16EBD2:: @ 816EBD2
+ loadword 0, gUnknown_819B0A0
+ callstd 3
+ end
diff --git a/data/maps/SaffronCity_House2/scripts.inc b/data/maps/SaffronCity_House2/scripts.inc
new file mode 100644
index 000000000..ed38659ee
--- /dev/null
+++ b/data/maps/SaffronCity_House2/scripts.inc
@@ -0,0 +1,28 @@
+SaffronCity_House2_MapScripts:: @ 816EF73
+ .byte 0
+
+SaffronCity_House2_EventScript_16EF74:: @ 816EF74
+ loadword 0, gUnknown_819BE74
+ callstd 2
+ end
+
+SaffronCity_House2_EventScript_16EF7D:: @ 816EF7D
+ loadword 0, gUnknown_819BED5
+ callstd 2
+ end
+
+SaffronCity_House2_EventScript_16EF86:: @ 816EF86
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_PIDGEY, 0
+ loadword 0, gUnknown_819BEC3
+ callstd 4
+ waitmoncry
+ release
+ end
+
+SaffronCity_House2_EventScript_16EF99:: @ 816EF99
+ loadword 0, gUnknown_819BF07
+ callstd 3
+ end
diff --git a/data/maps/SaffronCity_House3/scripts.inc b/data/maps/SaffronCity_House3/scripts.inc
new file mode 100644
index 000000000..2ce0781fc
--- /dev/null
+++ b/data/maps/SaffronCity_House3/scripts.inc
@@ -0,0 +1,36 @@
+SaffronCity_House3_MapScripts:: @ 816F05E
+ .byte 0
+
+SaffronCity_House3_EventScript_16F05F:: @ 816F05F
+ lock
+ faceplayer
+ checkflag FLAG_0x245
+ goto_if 1, EventScript_16F0B5
+ loadword 0, gUnknown_819C142
+ callstd 4
+ checkitemspace ITEM_TM29, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16F0AB
+ additem ITEM_TM29, 1
+ loadword 0, gUnknown_819C16C
+ setorcopyvar VAR_0x8000, 317
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ loadword 0, gUnknown_819C18F
+ callstd 4
+ setflag FLAG_0x245
+ release
+ end
+
+EventScript_16F0AB:: @ 816F0AB
+ loadword 0, gUnknown_819C1FC
+ callstd 4
+ release
+ end
+
+EventScript_16F0B5:: @ 816F0B5
+ loadword 0, gUnknown_819C18F
+ callstd 4
+ release
+ end
diff --git a/data/maps/SaffronCity_Mart/scripts.inc b/data/maps/SaffronCity_Mart/scripts.inc
new file mode 100644
index 000000000..c72f5237b
--- /dev/null
+++ b/data/maps/SaffronCity_Mart/scripts.inc
@@ -0,0 +1,38 @@
+SaffronCity_Mart_MapScripts:: @ 816EFA2
+ .byte 0
+
+SaffronCity_Mart_EventScript_16EFA3:: @ 816EFA3
+ loadword 0, gUnknown_819BFF1
+ callstd 2
+ end
+
+SaffronCity_Mart_EventScript_16EFAC:: @ 816EFAC
+ loadword 0, gUnknown_819BF8F
+ callstd 2
+ end
+
+SaffronCity_Mart_EventScript_16EFB5:: @ 816EFB5
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16EFDC
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16EFDC:: @ 816EFDC
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/SaffronCity_PokemonCenter_1F/scripts.inc b/data/maps/SaffronCity_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..6eb760d16
--- /dev/null
+++ b/data/maps/SaffronCity_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,41 @@
+SaffronCity_PokemonCenter_1F_MapScripts:: @ 816EFEC
+ map_script 3, SaffronCity_PokemonCenter_1F_MapScript1_16EFF7
+ map_script 5, SaffronCity_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+SaffronCity_PokemonCenter_1F_MapScript1_16EFF7:: @ 816EFF7
+ setrespawn 11
+ end
+
+SaffronCity_PokemonCenter_1F_EventScript_16EFFB:: @ 816EFFB
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+SaffronCity_PokemonCenter_1F_EventScript_16F004:: @ 816F004
+ loadword 0, gUnknown_819C058
+ callstd 2
+ end
+
+SaffronCity_PokemonCenter_1F_EventScript_16F00D:: @ 816F00D
+ loadword 0, gUnknown_819C023
+ callstd 2
+ end
+
+SaffronCity_PokemonCenter_1F_EventScript_16F016:: @ 816F016
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 1, EventScript_16F02D
+ loadword 0, gUnknown_819C0B4
+ callstd 4
+ release
+ end
+
+EventScript_16F02D:: @ 816F02D
+ loadword 0, gUnknown_819C102
+ callstd 4
+ release
+ end
diff --git a/data/maps/SaffronCity_PokemonCenter_2F/scripts.inc b/data/maps/SaffronCity_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..c6f69cc82
--- /dev/null
+++ b/data/maps/SaffronCity_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+SaffronCity_PokemonCenter_2F_MapScripts:: @ 816F037
+ map_script 2, SaffronCity_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, SaffronCity_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, SaffronCity_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, SaffronCity_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+SaffronCity_PokemonCenter_2F_EventScript_16F04C:: @ 816F04C
+ call EventScript_1BB4A3
+ end
+
+EventScript_16F052:: @ 816F052
+ call EventScript_1BB6AB
+ end
+
+EventScript_16F058:: @ 816F058
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/SaffronCity_PokemonTrainerFanClub/scripts.inc b/data/maps/SaffronCity_PokemonTrainerFanClub/scripts.inc
new file mode 100644
index 000000000..debc83be8
--- /dev/null
+++ b/data/maps/SaffronCity_PokemonTrainerFanClub/scripts.inc
@@ -0,0 +1,492 @@
+SaffronCity_PokemonTrainerFanClub_MapScripts:: @ 816F0BF
+ map_script 2, SaffronCity_PokemonTrainerFanClub_MapScript1_16F0CA
+ map_script 3, SaffronCity_PokemonTrainerFanClub_MapScript2_16F144
+ .byte 0
+
+SaffronCity_PokemonTrainerFanClub_MapScript1_16F0CA:: @ 816F0CA
+ map_script_2 VAR_0x4073, 1, EventScript_16F0D4
+ .2byte 0
+
+EventScript_16F0D4:: @ 816F0D4
+ lockall
+ textcolor 1
+ applymovement 1, Movement_1A75ED
+ waitmovement 0
+ playse SE_PIN
+ applymovement 1, Movement_1A75DB
+ waitmovement 0
+ applymovement 1, Movement_1A75DD
+ waitmovement 0
+ loadword 0, gUnknown_819C22B
+ callstd 4
+ closemessage
+ applymovement 1, Movement_16F124
+ waitmovement 0
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ loadword 0, gUnknown_819C235
+ callstd 4
+ setvar VAR_0x4073, 2
+ releaseall
+ end
+
+Movement_16F124:: @ 816F124
+ step_1c
+ step_1b
+ step_10
+ step_1c
+ step_10
+ step_1b
+ step_12
+ step_end
+
+Movement_16F12C:: @ 816F12C
+ step_1b
+ step_2d
+ step_10
+ step_10
+ step_10
+ step_12
+ step_12
+ step_end
+
+Movement_16F134:: @ 816F134
+ step_1f
+ step_1f
+ step_1d
+ step_1d
+ step_1f
+ step_1d
+ step_end
+
+Movement_16F13B:: @ 816F13B
+ step_10
+ step_30
+ step_end
+
+Movement_16F13E:: @ 816F13E
+ step_55
+ step_1e
+ step_1e
+ step_20
+ step_2d
+ step_end
+
+SaffronCity_PokemonTrainerFanClub_MapScript2_16F144:: @ 816F144
+ compare_var_to_value VAR_0x4073, 1
+ goto_if 1, EventScript_16F267
+ compare_var_to_value VAR_0x4073, 2
+ goto_if 1, EventScript_16F15B
+ end
+
+EventScript_16F15B:: @ 816F15B
+ special sub_81132CC
+ setvar VAR_0x8004, 0
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16F207
+ setvar VAR_0x8004, 1
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16F213
+ setvar VAR_0x8004, 2
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16F21F
+ setvar VAR_0x8004, 3
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16F22B
+ setvar VAR_0x8004, 4
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16F237
+ setvar VAR_0x8004, 5
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16F243
+ setvar VAR_0x8004, 6
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16F24F
+ setvar VAR_0x8004, 7
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_16F25B
+ end
+
+EventScript_16F207:: @ 816F207
+ setobjectxyperm 1, 5, 2
+ setobjectmovementtype 1, 7
+ return
+
+EventScript_16F213:: @ 816F213
+ setobjectxyperm 3, 7, 4
+ setobjectmovementtype 3, 9
+ return
+
+EventScript_16F21F:: @ 816F21F
+ setobjectxyperm 4, 2, 2
+ setobjectmovementtype 4, 7
+ return
+
+EventScript_16F22B:: @ 816F22B
+ setobjectxyperm 2, 3, 4
+ setobjectmovementtype 2, 10
+ return
+
+EventScript_16F237:: @ 816F237
+ setobjectxyperm 6, 4, 6
+ setobjectmovementtype 6, 7
+ return
+
+EventScript_16F243:: @ 816F243
+ setobjectxyperm 5, 10, 3
+ setobjectmovementtype 5, 7
+ return
+
+EventScript_16F24F:: @ 816F24F
+ setobjectxyperm 7, 7, 5
+ setobjectmovementtype 7, 9
+ return
+
+EventScript_16F25B:: @ 816F25B
+ setobjectxyperm 8, 9, 6
+ setobjectmovementtype 8, 9
+ return
+
+EventScript_16F267:: @ 816F267
+ call EventScript_16F22B
+ call EventScript_16F237
+ call EventScript_16F243
+ call EventScript_16F24F
+ call EventScript_16F25B
+ end
+
+SaffronCity_PokemonTrainerFanClub_EventScript_16F281:: @ 816F281
+ lock
+ faceplayer
+ setvar VAR_0x8004, 0
+ special sub_81133A4
+ compare_var_to_value VAR_0x4073, 0
+ goto_if 1, EventScript_16F2EE
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F2C0
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 1, EventScript_16F2E4
+ loadword 0, gUnknown_819C420
+ callstd 4
+ release
+ end
+
+EventScript_16F2C0:: @ 816F2C0
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F2DA
+ loadword 0, gUnknown_819C390
+ callstd 4
+ release
+ end
+
+EventScript_16F2DA:: @ 816F2DA
+ loadword 0, gUnknown_819C3BD
+ callstd 4
+ release
+ end
+
+EventScript_16F2E4:: @ 816F2E4
+ loadword 0, gUnknown_819C4A5
+ callstd 4
+ release
+ end
+
+EventScript_16F2EE:: @ 816F2EE
+ loadword 0, gUnknown_819C55C
+ callstd 4
+ release
+ end
+
+SaffronCity_PokemonTrainerFanClub_EventScript_16F2F8:: @ 816F2F8
+ lock
+ faceplayer
+ setvar VAR_0x8004, 3
+ special sub_81133A4
+ compare_var_to_value VAR_0x4073, 0
+ goto_if 1, EventScript_16F365
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F337
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 1, EventScript_16F35B
+ loadword 0, gUnknown_819CBD3
+ callstd 4
+ release
+ end
+
+EventScript_16F337:: @ 816F337
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F351
+ loadword 0, gUnknown_819CB32
+ callstd 4
+ release
+ end
+
+EventScript_16F351:: @ 816F351
+ loadword 0, gUnknown_819CB62
+ callstd 4
+ release
+ end
+
+EventScript_16F35B:: @ 816F35B
+ loadword 0, gUnknown_819CC2B
+ callstd 4
+ release
+ end
+
+EventScript_16F365:: @ 816F365
+ loadword 0, gUnknown_819CCC2
+ callstd 4
+ release
+ end
+
+SaffronCity_PokemonTrainerFanClub_EventScript_16F36F:: @ 816F36F
+ lock
+ faceplayer
+ setvar VAR_0x8004, 1
+ special sub_81133A4
+ compare_var_to_value VAR_0x4073, 0
+ goto_if 1, EventScript_16F3DC
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F3AE
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 1, EventScript_16F3D2
+ loadword 0, gUnknown_819C6BA
+ callstd 4
+ release
+ end
+
+EventScript_16F3AE:: @ 816F3AE
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F3C8
+ loadword 0, gUnknown_819C5A9
+ callstd 4
+ release
+ end
+
+EventScript_16F3C8:: @ 816F3C8
+ loadword 0, gUnknown_819C600
+ callstd 4
+ release
+ end
+
+EventScript_16F3D2:: @ 816F3D2
+ loadword 0, gUnknown_819C73A
+ callstd 4
+ release
+ end
+
+EventScript_16F3DC:: @ 816F3DC
+ loadword 0, gUnknown_819C7C8
+ callstd 4
+ release
+ end
+
+SaffronCity_PokemonTrainerFanClub_EventScript_16F3E6:: @ 816F3E6
+ lock
+ faceplayer
+ setvar VAR_0x8004, 2
+ special sub_81133A4
+ compare_var_to_value VAR_0x4073, 0
+ goto_if 1, EventScript_16F453
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F425
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 1, EventScript_16F449
+ loadword 0, gUnknown_819C986
+ callstd 4
+ release
+ end
+
+EventScript_16F425:: @ 816F425
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F43F
+ loadword 0, gUnknown_819C81E
+ callstd 4
+ release
+ end
+
+EventScript_16F43F:: @ 816F43F
+ loadword 0, gUnknown_819C8C1
+ callstd 4
+ release
+ end
+
+EventScript_16F449:: @ 816F449
+ loadword 0, gUnknown_819C9D5
+ callstd 4
+ release
+ end
+
+EventScript_16F453:: @ 816F453
+ loadword 0, gUnknown_819CA7C
+ callstd 4
+ release
+ end
+
+SaffronCity_PokemonTrainerFanClub_EventScript_16F45D:: @ 816F45D
+ lock
+ faceplayer
+ setvar VAR_0x8004, 5
+ special sub_81133A4
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F491
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 1, EventScript_16F4B5
+ loadword 0, gUnknown_819D01F
+ callstd 4
+ release
+ end
+
+EventScript_16F491:: @ 816F491
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F4AB
+ loadword 0, gUnknown_819CEDF
+ callstd 4
+ release
+ end
+
+EventScript_16F4AB:: @ 816F4AB
+ loadword 0, gUnknown_819CF6D
+ callstd 4
+ release
+ end
+
+EventScript_16F4B5:: @ 816F4B5
+ loadword 0, gUnknown_819D075
+ callstd 4
+ release
+ end
+
+SaffronCity_PokemonTrainerFanClub_EventScript_16F4BF:: @ 816F4BF
+ lock
+ faceplayer
+ setvar VAR_0x8004, 4
+ special sub_81133A4
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F4F3
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 1, EventScript_16F517
+ loadword 0, gUnknown_819CDDA
+ callstd 4
+ release
+ end
+
+EventScript_16F4F3:: @ 816F4F3
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F50D
+ loadword 0, gUnknown_819CCF3
+ callstd 4
+ release
+ end
+
+EventScript_16F50D:: @ 816F50D
+ loadword 0, gUnknown_819CD4E
+ callstd 4
+ release
+ end
+
+EventScript_16F517:: @ 816F517
+ loadword 0, gUnknown_819CE3A
+ callstd 4
+ release
+ end
+
+SaffronCity_PokemonTrainerFanClub_EventScript_16F521:: @ 816F521
+ lock
+ faceplayer
+ setvar VAR_0x8004, 6
+ special sub_81133A4
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F555
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 1, EventScript_16F579
+ loadword 0, gUnknown_819D1AE
+ callstd 4
+ release
+ end
+
+EventScript_16F555:: @ 816F555
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F56F
+ loadword 0, gUnknown_819D0E3
+ callstd 4
+ release
+ end
+
+EventScript_16F56F:: @ 816F56F
+ loadword 0, gUnknown_819D148
+ callstd 4
+ release
+ end
+
+EventScript_16F579:: @ 816F579
+ loadword 0, gUnknown_819D211
+ callstd 4
+ release
+ end
+
+SaffronCity_PokemonTrainerFanClub_EventScript_16F583:: @ 816F583
+ lock
+ faceplayer
+ setvar VAR_0x8004, 7
+ special sub_81133A4
+ specialvar VAR_RESULT, sub_8113364
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F5B7
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 1, EventScript_16F5DB
+ loadword 0, gUnknown_819D3D2
+ callstd 4
+ release
+ end
+
+EventScript_16F5B7:: @ 816F5B7
+ specialvar VAR_RESULT, sub_8113288
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16F5D1
+ loadword 0, gUnknown_819D2B4
+ callstd 4
+ release
+ end
+
+EventScript_16F5D1:: @ 816F5D1
+ loadword 0, gUnknown_819D31F
+ callstd 4
+ release
+ end
+
+EventScript_16F5DB:: @ 816F5DB
+ loadword 0, gUnknown_819D477
+ callstd 4
+ release
+ end
diff --git a/data/maps/SeafoamIslands_1F/scripts.inc b/data/maps/SeafoamIslands_1F/scripts.inc
new file mode 100644
index 000000000..8306f6f4c
--- /dev/null
+++ b/data/maps/SeafoamIslands_1F/scripts.inc
@@ -0,0 +1,7 @@
+SeafoamIslands_1F_MapScripts:: @ 8162F43
+ map_script 3, SeafoamIslands_1F_MapScript1_162F49
+ .byte 0
+
+SeafoamIslands_1F_MapScript1_162F49:: @ 8162F49
+ setworldmapflag 2225
+ end
diff --git a/data/maps/SeafoamIslands_B1F/scripts.inc b/data/maps/SeafoamIslands_B1F/scripts.inc
new file mode 100644
index 000000000..a3cb050ee
--- /dev/null
+++ b/data/maps/SeafoamIslands_B1F/scripts.inc
@@ -0,0 +1,2 @@
+SeafoamIslands_B1F_MapScripts:: @ 8162F4D
+ .byte 0
diff --git a/data/maps/SeafoamIslands_B2F/scripts.inc b/data/maps/SeafoamIslands_B2F/scripts.inc
new file mode 100644
index 000000000..21a4cd8fb
--- /dev/null
+++ b/data/maps/SeafoamIslands_B2F/scripts.inc
@@ -0,0 +1,2 @@
+SeafoamIslands_B2F_MapScripts:: @ 8162F4E
+ .byte 0
diff --git a/data/maps/SeafoamIslands_B3F/scripts.inc b/data/maps/SeafoamIslands_B3F/scripts.inc
new file mode 100644
index 000000000..1469509eb
--- /dev/null
+++ b/data/maps/SeafoamIslands_B3F/scripts.inc
@@ -0,0 +1,103 @@
+SeafoamIslands_B3F_MapScripts:: @ 8162F4F
+ map_script 3, SeafoamIslands_B3F_MapScript1_162F5A
+ map_script 2, SeafoamIslands_B3F_MapScript2_162F98
+ .byte 0
+
+SeafoamIslands_B3F_MapScript1_162F5A:: @ 8162F5A
+ checkflag FLAG_0x2D2
+ call_if 0, EventScript_162F6D
+ checkflag FLAG_0x2D2
+ call_if 1, EventScript_162F94
+ end
+
+EventScript_162F6D:: @ 8162F6D
+ setvar VAR_0x4002, 0
+ checkflag FLAG_0x046
+ call_if 0, EventScript_162FF0
+ checkflag FLAG_0x047
+ call_if 0, EventScript_162FF0
+ compare_var_to_value VAR_0x4002, 2
+ call_if 1, EventScript_162F90
+ return
+
+EventScript_162F90:: @ 8162F90
+ setflag FLAG_0x2D2
+ return
+
+EventScript_162F94:: @ 8162F94
+ setmaplayoutindex LAYOUT_UNUSEDLAYOUT_833B6EC
+ return
+
+SeafoamIslands_B3F_MapScript2_162F98:: @ 8162F98
+ map_script_2 VAR_0x4001, 1, EventScript_162FA2
+ .2byte 0
+
+EventScript_162FA2:: @ 8162FA2
+ lockall
+ setvar VAR_0x4002, 0
+ checkflag FLAG_0x046
+ call_if 0, EventScript_162FF0
+ checkflag FLAG_0x047
+ call_if 0, EventScript_162FF0
+ compare_var_to_value VAR_0x4002, 2
+ goto_if 1, EventScript_16300C
+ getplayerxy VAR_0x8008, VAR_0x8009
+ compare_var_to_value VAR_0x8008, 24
+ call_if 0, EventScript_162FF6
+ compare_var_to_value VAR_0x8008, 24
+ call_if 4, EventScript_163001
+ setvar VAR_0x4063, 1
+ warp MAP_SEAFOAMISLANDS_B4F, 255, 27, 21
+ waitstate
+ releaseall
+ end
+
+EventScript_162FF0:: @ 8162FF0
+ addvar VAR_0x4002, 1
+ return
+
+EventScript_162FF6:: @ 8162FF6
+ applymovement 255, Movement_163013
+ waitmovement 0
+ return
+
+EventScript_163001:: @ 8163001
+ applymovement 255, Movement_163021
+ waitmovement 0
+ return
+
+EventScript_16300C:: @ 816300C
+ setvar VAR_0x4001, 0
+ releaseall
+ end
+
+Movement_163013:: @ 8163013
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_20
+ step_20
+ step_20
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_end
+
+Movement_163021:: @ 8163021
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_20
+ step_20
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_1d
+ step_end
diff --git a/data/maps/SeafoamIslands_B4F/scripts.inc b/data/maps/SeafoamIslands_B4F/scripts.inc
new file mode 100644
index 000000000..a202650ee
--- /dev/null
+++ b/data/maps/SeafoamIslands_B4F/scripts.inc
@@ -0,0 +1,218 @@
+SeafoamIslands_B4F_MapScripts:: @ 816302E
+ map_script 3, SeafoamIslands_B4F_MapScript1_163066
+ map_script 5, SeafoamIslands_B4F_MapScript2_163048
+ map_script 1, SeafoamIslands_B4F_MapScript3_1630B1
+ map_script 4, SeafoamIslands_B4F_MapScript4_1630E7
+ map_script 2, SeafoamIslands_B4F_MapScript5_1630F9
+ .byte 0
+
+SeafoamIslands_B4F_MapScript2_163048:: @ 8163048
+ checkflag 2055
+ call_if 1, EventScript_163052
+ end
+
+EventScript_163052:: @ 8163052
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 7
+ goto_if 5, EventScript_1A77A9
+ removeobject VAR_LAST_TALKED
+ return
+
+SeafoamIslands_B4F_MapScript1_163066:: @ 8163066
+ checkflag FLAG_0x2BE
+ call_if 0, EventScript_1630AD
+ checkflag FLAG_0x2D3
+ call_if 0, EventScript_163082
+ checkflag FLAG_0x2D3
+ call_if 1, EventScript_1630A9
+ end
+
+EventScript_163082:: @ 8163082
+ setvar VAR_0x4002, 0
+ checkflag FLAG_0x04C
+ call_if 0, EventScript_163169
+ checkflag FLAG_0x04D
+ call_if 0, EventScript_163169
+ compare_var_to_value VAR_0x4002, 2
+ call_if 1, EventScript_1630A5
+ return
+
+EventScript_1630A5:: @ 81630A5
+ setflag FLAG_0x2D3
+ return
+
+EventScript_1630A9:: @ 81630A9
+ setmaplayoutindex LAYOUT_UNUSEDLAYOUT_833BE30
+ return
+
+EventScript_1630AD:: @ 81630AD
+ clearflag FLAG_0x082
+ return
+
+SeafoamIslands_B4F_MapScript3_1630B1:: @ 81630B1
+ setvar VAR_0x4002, 0
+ checkflag FLAG_0x04C
+ call_if 0, EventScript_163169
+ checkflag FLAG_0x04D
+ call_if 0, EventScript_163169
+ compare_var_to_value VAR_0x4002, 2
+ goto_if 1, EventScript_1630D4
+ end
+
+EventScript_1630D4:: @ 81630D4
+ setmetatile 12, 14, 299, 0
+ setmetatile 13, 14, 299, 0
+ end
+
+SeafoamIslands_B4F_MapScript4_1630E7:: @ 81630E7
+ map_script_2 VAR_0x4063, 1, EventScript_1630F1
+ .2byte 0
+
+EventScript_1630F1:: @ 81630F1
+ turnobject 255, 2
+ special sub_80CBD80
+ end
+
+SeafoamIslands_B4F_MapScript5_1630F9:: @ 81630F9
+ map_script_2 VAR_0x4063, 1, EventScript_16310B
+ map_script_2 VAR_0x4001, 1, EventScript_163121
+ .2byte 0
+
+EventScript_16310B:: @ 816310B
+ lockall
+ applymovement 255, Movement_16311D
+ waitmovement 0
+ setvar VAR_0x4063, 0
+ releaseall
+ end
+
+Movement_16311D:: @ 816311D
+ step_1e
+ step_1e
+ step_1e
+ step_end
+
+EventScript_163121:: @ 8163121
+ lockall
+ setvar VAR_0x4002, 0
+ checkflag FLAG_0x04C
+ call_if 0, EventScript_163169
+ checkflag FLAG_0x04D
+ call_if 0, EventScript_163169
+ compare_var_to_value VAR_0x4002, 2
+ goto_if 1, EventScript_163185
+ getplayerxy VAR_0x8008, VAR_0x8009
+ compare_var_to_value VAR_0x8008, 9
+ call_if 0, EventScript_16316F
+ compare_var_to_value VAR_0x8008, 9
+ call_if 4, EventScript_16317A
+ special sub_805D1A8
+ setvar VAR_0x4001, 0
+ releaseall
+ end
+
+EventScript_163169:: @ 8163169
+ addvar VAR_0x4002, 1
+ return
+
+EventScript_16316F:: @ 816316F
+ applymovement 255, Movement_16318C
+ waitmovement 0
+ return
+
+EventScript_16317A:: @ 816317A
+ applymovement 255, Movement_163195
+ waitmovement 0
+ return
+
+EventScript_163185:: @ 8163185
+ setvar VAR_0x4001, 0
+ releaseall
+ end
+
+Movement_16318C:: @ 816318C
+ step_11
+ step_11
+ step_11
+ step_13
+ step_13
+ step_13
+ step_13
+ step_11
+ step_end
+
+Movement_163195:: @ 8163195
+ step_11
+ step_11
+ step_11
+ step_13
+ step_13
+ step_13
+ step_11
+ step_end
+
+SeafoamIslands_B4F_EventScript_16319D:: @ 816319D
+ lockall
+ applymovement 255, Movement_1631AA
+ waitmovement 0
+ releaseall
+ end
+
+Movement_1631AA:: @ 81631AA
+ step_11
+ step_end
+
+SeafoamIslands_B4F_EventScript_1631AC:: @ 81631AC
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ setwildbattle SPECIES_ARTICUNO, 50, ITEM_NONE
+ waitse
+ playmoncry SPECIES_ARTICUNO, 2
+ message Text_1A6448
+ waitmessage
+ waitmoncry
+ delay 10
+ playbgm BGM_FRLG_LEADER_EYE, 0
+ waitbuttonpress
+ setflag 2055
+ special sub_807F9D8
+ waitstate
+ clearflag 2055
+ specialvar VAR_RESULT, sub_80CA74C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16320F
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_163218
+ compare_var_to_value VAR_RESULT, 5
+ goto_if 1, EventScript_163218
+ setflag FLAG_0x2BE
+ release
+ end
+
+EventScript_16320F:: @ 816320F
+ setflag FLAG_0x2BE
+ goto EventScript_1A922D
+
+EventScript_163217:: @ 8163217
+ end
+
+EventScript_163218:: @ 8163218
+ setvar VAR_0x8004, 144
+ goto EventScript_1A9236
+
+EventScript_163222:: @ 8163222
+ end
+
+SeafoamIslands_B4F_EventScript_163223:: @ 8163223
+ loadword 0, gUnknown_8179B36
+ callstd 3
+ end
+
+SeafoamIslands_B4F_EventScript_16322C:: @ 816322C
+ loadword 0, gUnknown_8179B65
+ callstd 3
+ end
diff --git a/data/maps/SevenIsland/scripts.inc b/data/maps/SevenIsland/scripts.inc
new file mode 100644
index 000000000..5b932458c
--- /dev/null
+++ b/data/maps/SevenIsland/scripts.inc
@@ -0,0 +1,22 @@
+SevenIsland_MapScripts:: @ 8167EB3
+ map_script 3, SevenIsland_MapScript1_167EB9
+ .byte 0
+
+SevenIsland_MapScript1_167EB9:: @ 8167EB9
+ setworldmapflag 2208
+ end
+
+SevenIsland_EventScript_167EBD:: @ 8167EBD
+ loadword 0, gUnknown_8183046
+ callstd 3
+ end
+
+SevenIsland_EventScript_167EC6:: @ 8167EC6
+ loadword 0, gUnknown_818306C
+ callstd 2
+ end
+
+SevenIsland_EventScript_167ECF:: @ 8167ECF
+ loadword 0, gUnknown_8183143
+ callstd 2
+ end
diff --git a/data/maps/SevenIsland_Harbor/scripts.inc b/data/maps/SevenIsland_Harbor/scripts.inc
new file mode 100644
index 000000000..565aa55ee
--- /dev/null
+++ b/data/maps/SevenIsland_Harbor/scripts.inc
@@ -0,0 +1,11 @@
+SevenIsland_Harbor_MapScripts:: @ 8170BE4
+ .byte 0
+
+SevenIsland_Harbor_EventScript_170BE5:: @ 8170BE5
+ lock
+ faceplayer
+ message Text_181726
+ waitmessage
+ setvar VAR_0x8004, 7
+ goto EventScript_1A900F
+ end
diff --git a/data/maps/SevenIsland_House_Room1/scripts.inc b/data/maps/SevenIsland_House_Room1/scripts.inc
new file mode 100644
index 000000000..4838fb2cf
--- /dev/null
+++ b/data/maps/SevenIsland_House_Room1/scripts.inc
@@ -0,0 +1,194 @@
+SevenIsland_House_Room1_MapScripts:: @ 817088A
+ map_script 3, SevenIsland_House_Room1_MapScript1_170895
+ map_script 2, SevenIsland_House_Room1_MapScript2_1708CF
+ .byte 0
+
+SevenIsland_House_Room1_MapScript1_170895:: @ 8170895
+ special ValidateEReaderTrainer
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_1708AF
+ compare_var_to_value VAR_0x4074, 0
+ call_if 5, EventScript_1708C3
+ end
+
+EventScript_1708AF:: @ 81708AF
+ setvar VAR_0x4001, 1
+ setobjectxyperm 1, 4, 2
+ setobjectmovementtype 1, 8
+ setmaplayoutindex LAYOUT_UNUSEDLAYOUT_8338B4C
+ return
+
+EventScript_1708C3:: @ 81708C3
+ setobjectxyperm 1, 3, 2
+ setobjectmovementtype 1, 10
+ return
+
+SevenIsland_House_Room1_MapScript2_1708CF:: @ 81708CF
+ map_script_2 VAR_0x4074, 1, EventScript_1708E9
+ map_script_2 VAR_0x4074, 2, EventScript_1708E9
+ map_script_2 VAR_0x4074, 3, EventScript_1708E9
+ .2byte 0
+
+EventScript_1708E9:: @ 1708E9
+ lockall
+ textcolor 1
+ applymovement 255, Movement_170953
+ waitmovement 0
+ applymovement 1, Movement_170955
+ waitmovement 0
+ moveobjectoffscreen 1
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ compare_var_to_value VAR_0x4074, 1
+ call_if 1, EventScript_170938
+ compare_var_to_value VAR_0x4074, 2
+ call_if 1, EventScript_170941
+ compare_var_to_value VAR_0x4074, 3
+ call_if 1, EventScript_17094A
+ special LoadPlayerParty
+ setvar VAR_0x4074, 0
+ releaseall
+ end
+
+EventScript_170938:: @ 8170938
+ loadword 0, gUnknown_81A088C
+ callstd 4
+ return
+
+EventScript_170941:: @ 8170941
+ loadword 0, gUnknown_81A0971
+ callstd 4
+ return
+
+EventScript_17094A:: @ 817094A
+ loadword 0, gUnknown_81A0807
+ callstd 4
+ return
+
+Movement_170953:: @ 8170953
+ step_10
+ step_end
+
+Movement_170955:: @ 8170955
+ step_13
+ step_2d
+ step_end
+
+SevenIsland_House_Room1_EventScript_170958:: @ 8170958
+ lock
+ faceplayer
+ special ValidateEReaderTrainer
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_17097D
+ compare_var_to_value VAR_0x4001, 1
+ goto_if 1, EventScript_170987
+ loadword 0, gUnknown_81A049B
+ callstd 4
+ release
+ end
+
+EventScript_17097D:: @ 817097D
+ loadword 0, gUnknown_81A049B
+ callstd 4
+ release
+ end
+
+EventScript_170987:: @ 8170987
+ special SavePlayerParty
+ special sub_80CAAAC
+ loadword 0, gUnknown_81A0598
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_170A11
+ call EventScript_170A1E
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_170A11
+ loadword 0, gUnknown_81A0788
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_170A11
+ special LoadPlayerParty
+ call EventScript_1A4EAF
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_170A11
+ special SavePlayerParty
+ special sub_80A03D8
+ loadword 0, gUnknown_81A07C4
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_170A2D
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_170A3F
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_170A51
+ warp MAP_SEVENISLAND_HOUSE_ROOM2, 255, 3, 1
+ waitstate
+ release
+ end
+
+EventScript_170A11:: @ 8170A11
+ special LoadPlayerParty
+ loadword 0, gUnknown_81A064E
+ callstd 4
+ release
+ end
+
+EventScript_170A1E:: @ 8170A1E
+ loadword 0, gUnknown_81A06AB
+ callstd 4
+ fadescreen 1
+ special sub_80A0334
+ waitstate
+ return
+
+EventScript_170A2D:: @ 8170A2D
+ applymovement VAR_LAST_TALKED, Movement_170A6F
+ applymovement 255, Movement_170A63
+ waitmovement 0
+ return
+
+EventScript_170A3F:: @ 8170A3F
+ applymovement VAR_LAST_TALKED, Movement_170A72
+ applymovement 255, Movement_170A67
+ waitmovement 0
+ return
+
+EventScript_170A51:: @ 8170A51
+ applymovement VAR_LAST_TALKED, Movement_170A6F
+ applymovement 255, Movement_170A6B
+ waitmovement 0
+ return
+
+Movement_170A63:: @ 8170A63
+ step_1c
+ step_11
+ step_11
+ step_end
+
+Movement_170A67:: @ 8170A67
+ step_1c
+ step_13
+ step_11
+ step_end
+
+Movement_170A6B:: @ 8170A6B
+ step_1c
+ step_12
+ step_11
+ step_end
+
+Movement_170A6F:: @ 8170A6F
+ step_12
+ step_30
+ step_end
+
+Movement_170A72:: @ 8170A72
+ step_13
+ step_2f
+ step_end
+
+SevenIsland_House_Room1_EventScript_170A75:: @ 8170A75
+ loadword 0, gUnknown_81A0567
+ callstd 3
+ end
diff --git a/data/maps/SevenIsland_House_Room2/scripts.inc b/data/maps/SevenIsland_House_Room2/scripts.inc
new file mode 100644
index 000000000..13d5e0170
--- /dev/null
+++ b/data/maps/SevenIsland_House_Room2/scripts.inc
@@ -0,0 +1,79 @@
+SevenIsland_House_Room2_MapScripts:: @ 8170A7E
+ map_script 3, SevenIsland_House_Room2_MapScript1_170A89
+ map_script 2, SevenIsland_House_Room2_MapScript2_170A8D
+ .byte 0
+
+SevenIsland_House_Room2_MapScript1_170A89:: @ 8170A89
+ special sub_80E5E70
+ end
+
+SevenIsland_House_Room2_MapScript2_170A8D:: @ 8170A8D
+ map_script_2 VAR_0x4001, 0, EventScript_170A97
+ .2byte 0
+
+EventScript_170A97:: @ 8170A97
+ lockall
+ applymovement 255, Movement_170B22
+ waitmovement 0
+ special sub_80E7538
+ loadword 0, gStringVar4 @ 2021D18
+ callstd 4
+ closemessage
+ setvar VAR_0x8004, 2
+ setvar VAR_0x8005, 0
+ special sub_80E6900
+ waitstate
+ compare_var_to_value VAR_RESULT, 3
+ call_if 1, EventScript_170AFE
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_170B0C
+ compare_var_to_value VAR_RESULT, 2
+ call_if 1, EventScript_170B17
+ closemessage
+ special sp000_heal_pokemon
+ applymovement 255, Movement_170B28
+ waitmovement 0
+ special LoadPlayerParty
+ setvar VAR_0x4001, 1
+ warp MAP_SEVENISLAND_HOUSE_ROOM1, 255, 4, 1
+ waitstate
+ releaseall
+ end
+
+EventScript_170AFE:: @ 8170AFE
+ setvar VAR_0x4074, 3
+ loadword 0, gUnknown_81A07EC
+ callstd 4
+ return
+
+EventScript_170B0C:: @ 8170B0C
+ setvar VAR_0x4074, 1
+ special sub_80CA68C
+ waitmessage
+ waitbuttonpress
+ return
+
+EventScript_170B17:: @ 8170B17
+ setvar VAR_0x4074, 2
+ special sub_80CA68C
+ waitmessage
+ waitbuttonpress
+ return
+
+Movement_170B22:: @ 8170B22
+ step_10
+ step_10
+ step_10
+ step_13
+ step_13
+ step_end
+
+Movement_170B28:: @ 8170B28
+ step_12
+ step_12
+ step_11
+ step_11
+ step_11
+ step_11
+ step_1b
+ step_end
diff --git a/data/maps/SevenIsland_Mart/scripts.inc b/data/maps/SevenIsland_Mart/scripts.inc
new file mode 100644
index 000000000..c93fb13cb
--- /dev/null
+++ b/data/maps/SevenIsland_Mart/scripts.inc
@@ -0,0 +1,46 @@
+SevenIsland_Mart_MapScripts:: @ 8170B30
+ .byte 0
+
+SevenIsland_Mart_EventScript_170B31:: @ 8170B31
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_170B58
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_170B58:: @ 8170B58
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_FULL_RESTORE
+ .2byte ITEM_MAX_POTION
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_NONE
+ release
+ end
+
+SevenIsland_Mart_EventScript_170B6E:: @ 8170B6E
+ loadword 0, gUnknown_81A0A4F
+ callstd 2
+ end
+
+SevenIsland_Mart_EventScript_170B77:: @ 8170B77
+ loadword 0, gUnknown_81A0ACC
+ callstd 2
+ end
+
+SevenIsland_Mart_EventScript_170B80:: @ 8170B80
+ loadword 0, gUnknown_81A0B09
+ callstd 2
+ end
diff --git a/data/maps/SevenIsland_PokemonCenter_1F/scripts.inc b/data/maps/SevenIsland_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..41a994d4e
--- /dev/null
+++ b/data/maps/SevenIsland_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,30 @@
+SevenIsland_PokemonCenter_1F_MapScripts:: @ 8170B89
+ map_script 3, SevenIsland_PokemonCenter_1F_MapScript1_170B94
+ map_script 5, SevenIsland_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+SevenIsland_PokemonCenter_1F_MapScript1_170B94:: @ 8170B94
+ setrespawn 19
+ end
+
+SevenIsland_PokemonCenter_1F_EventScript_170B98:: @ 8170B98
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+SevenIsland_PokemonCenter_1F_EventScript_170BA1:: @ 8170BA1
+ loadword 0, gUnknown_81A0B98
+ callstd 2
+ end
+
+SevenIsland_PokemonCenter_1F_EventScript_170BAA:: @ 8170BAA
+ loadword 0, gUnknown_81A0C1F
+ callstd 2
+ end
+
+SevenIsland_PokemonCenter_1F_EventScript_170BB3:: @ 8170BB3
+ loadword 0, gUnknown_81A0CA5
+ callstd 2
+ end
diff --git a/data/maps/SevenIsland_PokemonCenter_2F/scripts.inc b/data/maps/SevenIsland_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..31cc13d6c
--- /dev/null
+++ b/data/maps/SevenIsland_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+SevenIsland_PokemonCenter_2F_MapScripts:: @ 8170BBC
+ map_script 2, SevenIsland_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, SevenIsland_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, SevenIsland_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, SevenIsland_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+SevenIsland_PokemonCenter_2F_EventScript_170BD1:: @ 8170BD1
+ call EventScript_1BB4A3
+ end
+
+EventScript_170BD7:: @ 8170BD7
+ call EventScript_1BB6AB
+ end
+
+EventScript_170BDD:: @ 8170BDD
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/SevenIsland_SeavaultCanyon_TanobyKey/scripts.inc b/data/maps/SevenIsland_SeavaultCanyon_TanobyKey/scripts.inc
new file mode 100644
index 000000000..2ed7255f0
--- /dev/null
+++ b/data/maps/SevenIsland_SeavaultCanyon_TanobyKey/scripts.inc
@@ -0,0 +1,144 @@
+SevenIsland_SeavaultCanyon_TanobyKey_MapScripts:: @ 8164DCC
+ map_script 3, SevenIsland_SeavaultCanyon_TanobyKey_MapScript1_164DD2
+ .byte 0
+
+SevenIsland_SeavaultCanyon_TanobyKey_MapScript1_164DD2:: @ 8164DD2
+ setworldmapflag 2241
+ checkflag 2121
+ call_if 1, EventScript_164E07
+ setvar VAR_0x4001, 0
+ setvar VAR_0x4002, 0
+ setvar VAR_0x4003, 0
+ setvar VAR_0x4004, 0
+ setvar VAR_0x4005, 0
+ setvar VAR_0x4006, 0
+ setvar VAR_0x4007, 0
+ setvar VAR_0x4008, 0
+ end
+
+EventScript_164E07:: @ 8164E07
+ setobjectxyperm 1, 7, 2
+ setobjectxyperm 2, 4, 4
+ setobjectxyperm 3, 10, 4
+ setobjectxyperm 4, 5, 6
+ setobjectxyperm 5, 9, 6
+ setobjectxyperm 6, 5, 8
+ setobjectxyperm 7, 9, 8
+ return
+
+SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E39:: @ 8164E39
+ lockall
+ compare_var_to_value VAR_0x4001, 100
+ goto_if 1, EventScript_164F8A
+ call EventScript_164F2E
+ setvar VAR_0x4001, 100
+ compare_var_to_value VAR_0x4008, 7
+ goto_if 1, EventScript_164F8C
+ releaseall
+ end
+
+SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E5C:: @ 8164E5C
+ lockall
+ compare_var_to_value VAR_0x4002, 100
+ goto_if 1, EventScript_164F8A
+ call EventScript_164F2E
+ setvar VAR_0x4002, 100
+ compare_var_to_value VAR_0x4008, 7
+ goto_if 1, EventScript_164F8C
+ releaseall
+ end
+
+SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164E7F:: @ 8164E7F
+ lockall
+ compare_var_to_value VAR_0x4003, 100
+ goto_if 1, EventScript_164F8A
+ call EventScript_164F2E
+ setvar VAR_0x4003, 100
+ compare_var_to_value VAR_0x4008, 7
+ goto_if 1, EventScript_164F8C
+ releaseall
+ end
+
+SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EA2:: @ 8164EA2
+ lockall
+ compare_var_to_value VAR_0x4004, 100
+ goto_if 1, EventScript_164F8A
+ call EventScript_164F2E
+ setvar VAR_0x4004, 100
+ compare_var_to_value VAR_0x4008, 7
+ goto_if 1, EventScript_164F8C
+ releaseall
+ end
+
+SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EC5:: @ 8164EC5
+ lockall
+ compare_var_to_value VAR_0x4005, 100
+ goto_if 1, EventScript_164F8A
+ call EventScript_164F2E
+ setvar VAR_0x4005, 100
+ compare_var_to_value VAR_0x4008, 7
+ goto_if 1, EventScript_164F8C
+ releaseall
+ end
+
+SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164EE8:: @ 8164EE8
+ lockall
+ compare_var_to_value VAR_0x4006, 100
+ goto_if 1, EventScript_164F8A
+ call EventScript_164F2E
+ setvar VAR_0x4006, 100
+ compare_var_to_value VAR_0x4008, 7
+ goto_if 1, EventScript_164F8C
+ releaseall
+ end
+
+SevenIsland_SeavaultCanyon_TanobyKey_EventScript_164F0B:: @ 8164F0B
+ lockall
+ compare_var_to_value VAR_0x4007, 100
+ goto_if 1, EventScript_164F8A
+ call EventScript_164F2E
+ setvar VAR_0x4007, 100
+ compare_var_to_value VAR_0x4008, 7
+ goto_if 1, EventScript_164F8C
+ releaseall
+ end
+
+EventScript_164F2E:: @ 8164F2E
+ addvar VAR_0x4008, 1
+ playse SE_RU_HYUU
+ setvar VAR_0x8004, 1
+ setvar VAR_0x8005, 1
+ setvar VAR_0x8006, 8
+ setvar VAR_0x8007, 3
+ special sub_80CAC28
+ delay 60
+ return
+
+EventScript_164F51:: @ 8164F51
+ setvar VAR_0x8004, 2
+ setvar VAR_0x8005, 2
+ setvar VAR_0x8006, 10
+ setvar VAR_0x8007, 3
+ special sub_80CAC28
+ delay 60
+ setvar VAR_0x8004, 3
+ setvar VAR_0x8005, 3
+ setvar VAR_0x8006, 12
+ setvar VAR_0x8007, 2
+ special sub_80CAC28
+ delay 60
+ playse SE_EXP
+ waitse
+ return
+
+EventScript_164F8A:: @ 8164F8A
+ releaseall
+ end
+
+EventScript_164F8C:: @ 8164F8C
+ call EventScript_164F51
+ loadword 0, gUnknown_817D31B
+ callstd 4
+ setflag 2121
+ releaseall
+ end
diff --git a/data/maps/SevenIsland_SevaultCanyon/scripts.inc b/data/maps/SevenIsland_SevaultCanyon/scripts.inc
new file mode 100644
index 000000000..862439936
--- /dev/null
+++ b/data/maps/SevenIsland_SevaultCanyon/scripts.inc
@@ -0,0 +1,7 @@
+SevenIsland_SevaultCanyon_MapScripts:: @ 8168BFD
+ .byte 0
+
+SevenIsland_SevaultCanyon_EventScript_168BFE:: @ 8168BFE
+ loadword 0, gUnknown_818CF2B
+ callstd 3
+ end
diff --git a/data/maps/SevenIsland_SevaultCanyon_Entrance/scripts.inc b/data/maps/SevenIsland_SevaultCanyon_Entrance/scripts.inc
new file mode 100644
index 000000000..696ed9483
--- /dev/null
+++ b/data/maps/SevenIsland_SevaultCanyon_Entrance/scripts.inc
@@ -0,0 +1,7 @@
+SevenIsland_SevaultCanyon_Entrance_MapScripts:: @ 8168BF3
+ .byte 0
+
+SevenIsland_SevaultCanyon_Entrance_EventScript_168BF4:: @ 8168BF4
+ loadword 0, gUnknown_818C82D
+ callstd 3
+ end
diff --git a/data/maps/SevenIsland_SevaultCanyon_House/scripts.inc b/data/maps/SevenIsland_SevaultCanyon_House/scripts.inc
new file mode 100644
index 000000000..31df02ba3
--- /dev/null
+++ b/data/maps/SevenIsland_SevaultCanyon_House/scripts.inc
@@ -0,0 +1,89 @@
+SevenIsland_SevaultCanyon_House_MapScripts:: @ 8172182
+ .byte 0
+
+SevenIsland_SevaultCanyon_House_EventScript_172183:: @ 8172183
+ lock
+ checkflag FLAG_0x002
+ goto_if 1, EventScript_172211
+ playbgm 267, 0
+ applymovement 1, Movement_172231
+ waitmovement 0
+ fadedefaultbgm
+ delay 30
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81A4D72
+ callstd 4
+ textcolor 3
+ loadword 0, gUnknown_81A4DAF
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_172225
+ loadword 0, gUnknown_81A4DD8
+ callstd 4
+ closemessage
+ call EventScript_1A6675
+ compare_var_to_value VAR_FACING, 1
+ call_if 5, EventScript_172206
+ delay 30
+ playbgm 267, 0
+ applymovement 255, Movement_172231
+ waitmovement 0
+ fadedefaultbgm
+ delay 30
+ call EventScript_1A6C26
+ loadword 0, gUnknown_81A4DF5
+ callstd 4
+ setflag FLAG_0x002
+ release
+ end
+
+EventScript_172206:: @ 8172206
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_172211:: @ 8172211
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81A4D72
+ callstd 4
+ release
+ end
+
+EventScript_172225:: @ 8172225
+ textcolor 0
+ loadword 0, gUnknown_81A4DC8
+ callstd 4
+ release
+ end
+
+Movement_172231:: @ 8172231
+ step_25
+ step_1c
+ step_25
+ step_1c
+ step_25
+ step_1c
+ step_25
+ step_1c
+ step_30
+ step_1a
+ step_2e
+ step_1a
+ step_2f
+ step_1a
+ step_2d
+ step_1a
+ step_end
+
+SevenIsland_SevaultCanyon_House_EventScript_172242:: @ 8172242
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_CHANSEY, 0
+ loadword 0, gUnknown_81A4E26
+ callstd 4
+ waitmoncry
+ release
+ end
diff --git a/data/maps/SevenIsland_TanobyRuins/scripts.inc b/data/maps/SevenIsland_TanobyRuins/scripts.inc
new file mode 100644
index 000000000..57a3462f1
--- /dev/null
+++ b/data/maps/SevenIsland_TanobyRuins/scripts.inc
@@ -0,0 +1,2 @@
+SevenIsland_TanobyRuins_MapScripts:: @ 8168C07
+ .byte 0
diff --git a/data/maps/SevenIsland_TanobyRuins_DilfordChamber/scripts.inc b/data/maps/SevenIsland_TanobyRuins_DilfordChamber/scripts.inc
new file mode 100644
index 000000000..421d3c72b
--- /dev/null
+++ b/data/maps/SevenIsland_TanobyRuins_DilfordChamber/scripts.inc
@@ -0,0 +1,7 @@
+SevenIsland_TanobyRuins_DilfordChamber_MapScripts:: @ 8164CF6
+ map_script 3, SevenIsland_TanobyRuins_DilfordChamber_MapScript1_164CFC
+ .byte 0
+
+SevenIsland_TanobyRuins_DilfordChamber_MapScript1_164CFC:: @ 8164CFC
+ call EventScript_1A925E
+ end
diff --git a/data/maps/SevenIsland_TanobyRuins_LiptooChamber/scripts.inc b/data/maps/SevenIsland_TanobyRuins_LiptooChamber/scripts.inc
new file mode 100644
index 000000000..084d58658
--- /dev/null
+++ b/data/maps/SevenIsland_TanobyRuins_LiptooChamber/scripts.inc
@@ -0,0 +1,7 @@
+SevenIsland_TanobyRuins_LiptooChamber_MapScripts:: @ 8164CDE
+ map_script 3, SevenIsland_TanobyRuins_LiptooChamber_MapScript1_164CE4
+ .byte 0
+
+SevenIsland_TanobyRuins_LiptooChamber_MapScript1_164CE4:: @ 8164CE4
+ call EventScript_1A925E
+ end
diff --git a/data/maps/SevenIsland_TanobyRuins_MoneanChamber/scripts.inc b/data/maps/SevenIsland_TanobyRuins_MoneanChamber/scripts.inc
new file mode 100644
index 000000000..776299736
--- /dev/null
+++ b/data/maps/SevenIsland_TanobyRuins_MoneanChamber/scripts.inc
@@ -0,0 +1,8 @@
+SevenIsland_TanobyRuins_MoneanChamber_MapScripts:: @ 8164CCF
+ map_script 3, SevenIsland_TanobyRuins_MoneanChamber_MapScript1_164CD5
+ .byte 0
+
+SevenIsland_TanobyRuins_MoneanChamber_MapScript1_164CD5:: @ 8164CD5
+ setworldmapflag 2239
+ call EventScript_1A925E
+ end
diff --git a/data/maps/SevenIsland_TanobyRuins_RixyChamber/scripts.inc b/data/maps/SevenIsland_TanobyRuins_RixyChamber/scripts.inc
new file mode 100644
index 000000000..cb97039f3
--- /dev/null
+++ b/data/maps/SevenIsland_TanobyRuins_RixyChamber/scripts.inc
@@ -0,0 +1,7 @@
+SevenIsland_TanobyRuins_RixyChamber_MapScripts:: @ 8164D0E
+ map_script 3, SevenIsland_TanobyRuins_RixyChamber_MapScript1_164D14
+ .byte 0
+
+SevenIsland_TanobyRuins_RixyChamber_MapScript1_164D14:: @ 8164D14
+ call EventScript_1A925E
+ end
diff --git a/data/maps/SevenIsland_TanobyRuins_ScufibChamber/scripts.inc b/data/maps/SevenIsland_TanobyRuins_ScufibChamber/scripts.inc
new file mode 100644
index 000000000..4c825e5c3
--- /dev/null
+++ b/data/maps/SevenIsland_TanobyRuins_ScufibChamber/scripts.inc
@@ -0,0 +1,7 @@
+SevenIsland_TanobyRuins_ScufibChamber_MapScripts:: @ 8164D02
+ map_script 3, SevenIsland_TanobyRuins_ScufibChamber_MapScript1_164D08
+ .byte 0
+
+SevenIsland_TanobyRuins_ScufibChamber_MapScript1_164D08:: @ 8164D08
+ call EventScript_1A925E
+ end
diff --git a/data/maps/SevenIsland_TanobyRuins_ViapoisChamber/scripts.inc b/data/maps/SevenIsland_TanobyRuins_ViapoisChamber/scripts.inc
new file mode 100644
index 000000000..8a6d8d90d
--- /dev/null
+++ b/data/maps/SevenIsland_TanobyRuins_ViapoisChamber/scripts.inc
@@ -0,0 +1,7 @@
+SevenIsland_TanobyRuins_ViapoisChamber_MapScripts:: @ 8164D1A
+ map_script 3, SevenIsland_TanobyRuins_ViapoisChamber_MapScript1_164D20
+ .byte 0
+
+SevenIsland_TanobyRuins_ViapoisChamber_MapScript1_164D20:: @ 8164D20
+ call EventScript_1A925E
+ end
diff --git a/data/maps/SevenIsland_TanobyRuins_WeepthChamber/scripts.inc b/data/maps/SevenIsland_TanobyRuins_WeepthChamber/scripts.inc
new file mode 100644
index 000000000..facb265c2
--- /dev/null
+++ b/data/maps/SevenIsland_TanobyRuins_WeepthChamber/scripts.inc
@@ -0,0 +1,7 @@
+SevenIsland_TanobyRuins_WeepthChamber_MapScripts:: @ 8164CEA
+ map_script 3, SevenIsland_TanobyRuins_WeepthChamber_MapScript1_164CF0
+ .byte 0
+
+SevenIsland_TanobyRuins_WeepthChamber_MapScript1_164CF0:: @ 8164CF0
+ call EventScript_1A925E
+ end
diff --git a/data/maps/SevenIsland_TrainerTower/scripts.inc b/data/maps/SevenIsland_TrainerTower/scripts.inc
new file mode 100644
index 000000000..db1321f48
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower/scripts.inc
@@ -0,0 +1,17 @@
+SevenIsland_TrainerTower_MapScripts:: @ 8168BD5
+ map_script 3, SevenIsland_TrainerTower_MapScript1_168BDB
+ .byte 0
+
+SevenIsland_TrainerTower_MapScript1_168BDB:: @ 8168BDB
+ setvar VAR_0x4082, 0
+ end
+
+SevenIsland_TrainerTower_EventScript_168BE1:: @ 8168BE1
+ loadword 0, gUnknown_818C338
+ callstd 3
+ end
+
+SevenIsland_TrainerTower_EventScript_168BEA:: @ 8168BEA
+ loadword 0, gUnknown_818C370
+ callstd 3
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_1F/scripts.inc b/data/maps/SevenIsland_TrainerTower_1F/scripts.inc
new file mode 100644
index 000000000..8ff1c438f
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_1F/scripts.inc
@@ -0,0 +1,60 @@
+SevenIsland_TrainerTower_1F_MapScripts:: @ 81646B8
+ map_script 5, SevenIsland_TrainerTower_1F_MapScript1_1C4F54
+ map_script 3, SevenIsland_TrainerTower_1F_MapScript2_1C4F62
+ map_script 2, SevenIsland_TrainerTower_1F_MapScript3_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_2F_EventScript_1646C8:: @ 81646C8
+SevenIsland_TrainerTower_4F_EventScript_1646C8:: @ 81646C8
+SevenIsland_TrainerTower_6F_EventScript_1646C8:: @ 81646C8
+SevenIsland_TrainerTower_8F_EventScript_1646C8:: @ 81646C8
+SevenIsland_TrainerTower_5F_EventScript_1646C8:: @ 81646C8
+SevenIsland_TrainerTower_7F_EventScript_1646C8:: @ 81646C8
+SevenIsland_TrainerTower_3F_EventScript_1646C8:: @ 81646C8
+SevenIsland_TrainerTower_1F_EventScript_1646C8:: @ 81646C8
+ call EventScript_1C52F4
+ end
+
+SevenIsland_TrainerTower_2F_EventScript_1646CE:: @ 81646CE
+SevenIsland_TrainerTower_4F_EventScript_1646CE:: @ 81646CE
+SevenIsland_TrainerTower_6F_EventScript_1646CE:: @ 81646CE
+SevenIsland_TrainerTower_8F_EventScript_1646CE:: @ 81646CE
+SevenIsland_TrainerTower_5F_EventScript_1646CE:: @ 81646CE
+SevenIsland_TrainerTower_7F_EventScript_1646CE:: @ 81646CE
+SevenIsland_TrainerTower_3F_EventScript_1646CE:: @ 81646CE
+SevenIsland_TrainerTower_1F_EventScript_1646CE:: @ 81646CE
+ call EventScript_1C533B
+ end
+
+SevenIsland_TrainerTower_2F_EventScript_1646D4:: @ 81646D4
+SevenIsland_TrainerTower_4F_EventScript_1646D4:: @ 81646D4
+SevenIsland_TrainerTower_6F_EventScript_1646D4:: @ 81646D4
+SevenIsland_TrainerTower_8F_EventScript_1646D4:: @ 81646D4
+SevenIsland_TrainerTower_5F_EventScript_1646D4:: @ 81646D4
+SevenIsland_TrainerTower_7F_EventScript_1646D4:: @ 81646D4
+SevenIsland_TrainerTower_3F_EventScript_1646D4:: @ 81646D4
+SevenIsland_TrainerTower_1F_EventScript_1646D4:: @ 81646D4
+ call EventScript_1C5382
+ end
+
+SevenIsland_TrainerTower_2F_EventScript_1646DA:: @ 81646DA
+SevenIsland_TrainerTower_4F_EventScript_1646DA:: @ 81646DA
+SevenIsland_TrainerTower_6F_EventScript_1646DA:: @ 81646DA
+SevenIsland_TrainerTower_8F_EventScript_1646DA:: @ 81646DA
+SevenIsland_TrainerTower_5F_EventScript_1646DA:: @ 81646DA
+SevenIsland_TrainerTower_7F_EventScript_1646DA:: @ 81646DA
+SevenIsland_TrainerTower_3F_EventScript_1646DA:: @ 81646DA
+SevenIsland_TrainerTower_1F_EventScript_1646DA:: @ 81646DA
+ call EventScript_1C538C
+ end
+
+SevenIsland_TrainerTower_2F_EventScript_1646E0:: @ 81646E0
+SevenIsland_TrainerTower_4F_EventScript_1646E0:: @ 81646E0
+SevenIsland_TrainerTower_6F_EventScript_1646E0:: @ 81646E0
+SevenIsland_TrainerTower_8F_EventScript_1646E0:: @ 81646E0
+SevenIsland_TrainerTower_7F_EventScript_1646E0:: @ 81646E0
+SevenIsland_TrainerTower_Roof_EventScript_1646E0:: @ 81646E0
+SevenIsland_TrainerTower_5F_EventScript_1646E0:: @ 81646E0
+SevenIsland_TrainerTower_3F_EventScript_1646E0:: @ 81646E0
+ call EventScript_1C53AA
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_2F/scripts.inc b/data/maps/SevenIsland_TrainerTower_2F/scripts.inc
new file mode 100644
index 000000000..c62250bb9
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_2F/scripts.inc
@@ -0,0 +1,25 @@
+SevenIsland_TrainerTower_2F_MapScripts:: @ 81646E6
+ map_script 5, SevenIsland_TrainerTower_2F_MapScript1_1C4F54
+ map_script 3, SevenIsland_TrainerTower_2F_MapScript2_1C4F62
+ map_script 2, SevenIsland_TrainerTower_2F_MapScript3_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_2F_EventScript_1646F6:: @ 81646F6
+ call EventScript_1C52F4
+ end
+
+EventScript_1646FC:: @ 81646FC
+ call EventScript_1C533B
+ end
+
+EventScript_164702:: @ 8164702
+ call EventScript_1C5382
+ end
+
+EventScript_164708:: @ 8164708
+ call EventScript_1C538C
+ end
+
+EventScript_16470E:: @ 816470E
+ call EventScript_1C53AA
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_3F/scripts.inc b/data/maps/SevenIsland_TrainerTower_3F/scripts.inc
new file mode 100644
index 000000000..c2dcd426f
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_3F/scripts.inc
@@ -0,0 +1,25 @@
+SevenIsland_TrainerTower_3F_MapScripts:: @ 8164714
+ map_script 5, SevenIsland_TrainerTower_3F_MapScript1_1C4F54
+ map_script 3, SevenIsland_TrainerTower_3F_MapScript2_1C4F62
+ map_script 2, SevenIsland_TrainerTower_3F_MapScript3_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_3F_EventScript_164724:: @ 8164724
+ call EventScript_1C52F4
+ end
+
+EventScript_16472A:: @ 816472A
+ call EventScript_1C533B
+ end
+
+EventScript_164730:: @ 8164730
+ call EventScript_1C5382
+ end
+
+EventScript_164736:: @ 8164736
+ call EventScript_1C538C
+ end
+
+EventScript_16473C:: @ 816473C
+ call EventScript_1C53AA
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_4F/scripts.inc b/data/maps/SevenIsland_TrainerTower_4F/scripts.inc
new file mode 100644
index 000000000..d1cf8a2fc
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_4F/scripts.inc
@@ -0,0 +1,25 @@
+SevenIsland_TrainerTower_4F_MapScripts:: @ 8164742
+ map_script 5, SevenIsland_TrainerTower_4F_MapScript1_1C4F54
+ map_script 3, SevenIsland_TrainerTower_4F_MapScript2_1C4F62
+ map_script 2, SevenIsland_TrainerTower_4F_MapScript3_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_4F_EventScript_164752:: @ 8164752
+ call EventScript_1C52F4
+ end
+
+EventScript_164758:: @ 8164758
+ call EventScript_1C533B
+ end
+
+EventScript_16475E:: @ 816475E
+ call EventScript_1C5382
+ end
+
+EventScript_164764:: @ 8164764
+ call EventScript_1C538C
+ end
+
+EventScript_16476A:: @ 816476A
+ call EventScript_1C53AA
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_5F/scripts.inc b/data/maps/SevenIsland_TrainerTower_5F/scripts.inc
new file mode 100644
index 000000000..de118c6ca
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_5F/scripts.inc
@@ -0,0 +1,25 @@
+SevenIsland_TrainerTower_5F_MapScripts:: @ 8164770
+ map_script 5, SevenIsland_TrainerTower_5F_MapScript1_1C4F54
+ map_script 3, SevenIsland_TrainerTower_5F_MapScript2_1C4F62
+ map_script 2, SevenIsland_TrainerTower_5F_MapScript3_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_5F_EventScript_164780:: @ 8164780
+ call EventScript_1C52F4
+ end
+
+EventScript_164786:: @ 8164786
+ call EventScript_1C533B
+ end
+
+EventScript_16478C:: @ 816478C
+ call EventScript_1C5382
+ end
+
+EventScript_164792:: @ 8164792
+ call EventScript_1C538C
+ end
+
+EventScript_164798:: @ 8164798
+ call EventScript_1C53AA
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_6F/scripts.inc b/data/maps/SevenIsland_TrainerTower_6F/scripts.inc
new file mode 100644
index 000000000..d3b558300
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_6F/scripts.inc
@@ -0,0 +1,25 @@
+SevenIsland_TrainerTower_6F_MapScripts:: @ 816479E
+ map_script 5, SevenIsland_TrainerTower_6F_MapScript1_1C4F54
+ map_script 3, SevenIsland_TrainerTower_6F_MapScript2_1C4F62
+ map_script 2, SevenIsland_TrainerTower_6F_MapScript3_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_6F_EventScript_1647AE:: @ 81647AE
+ call EventScript_1C52F4
+ end
+
+EventScript_1647B4:: @ 81647B4
+ call EventScript_1C533B
+ end
+
+EventScript_1647BA:: @ 81647BA
+ call EventScript_1C5382
+ end
+
+EventScript_1647C0:: @ 81647C0
+ call EventScript_1C538C
+ end
+
+EventScript_1647C6:: @ 81647C6
+ call EventScript_1C53AA
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_7F/scripts.inc b/data/maps/SevenIsland_TrainerTower_7F/scripts.inc
new file mode 100644
index 000000000..e59cc0166
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_7F/scripts.inc
@@ -0,0 +1,25 @@
+SevenIsland_TrainerTower_7F_MapScripts:: @ 81647CC
+ map_script 5, SevenIsland_TrainerTower_7F_MapScript1_1C4F54
+ map_script 3, SevenIsland_TrainerTower_7F_MapScript2_1C4F62
+ map_script 2, SevenIsland_TrainerTower_7F_MapScript3_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_7F_EventScript_1647DC:: @ 81647DC
+ call EventScript_1C52F4
+ end
+
+EventScript_1647E2:: @ 81647E2
+ call EventScript_1C533B
+ end
+
+EventScript_1647E8:: @ 81647E8
+ call EventScript_1C5382
+ end
+
+EventScript_1647EE:: @ 81647EE
+ call EventScript_1C538C
+ end
+
+EventScript_1647F4:: @ 81647F4
+ call EventScript_1C53AA
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_8F/scripts.inc b/data/maps/SevenIsland_TrainerTower_8F/scripts.inc
new file mode 100644
index 000000000..1907ddebc
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_8F/scripts.inc
@@ -0,0 +1,25 @@
+SevenIsland_TrainerTower_8F_MapScripts:: @ 81647FA
+ map_script 5, SevenIsland_TrainerTower_8F_MapScript1_1C4F54
+ map_script 3, SevenIsland_TrainerTower_8F_MapScript2_1C4F62
+ map_script 2, SevenIsland_TrainerTower_8F_MapScript3_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_8F_EventScript_16480A:: @ 816480A
+ call EventScript_1C52F4
+ end
+
+EventScript_164810:: @ 8164810
+ call EventScript_1C533B
+ end
+
+EventScript_164816:: @ 8164816
+ call EventScript_1C5382
+ end
+
+EventScript_16481C:: @ 816481C
+ call EventScript_1C538C
+ end
+
+EventScript_164822:: @ 8164822
+ call EventScript_1C53AA
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_Elevator/scripts.inc b/data/maps/SevenIsland_TrainerTower_Elevator/scripts.inc
new file mode 100644
index 000000000..b26dec885
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_Elevator/scripts.inc
@@ -0,0 +1,87 @@
+SevenIsland_TrainerTower_Elevator_MapScripts:: @ 8164AF8
+ map_script 5, SevenIsland_TrainerTower_Elevator_MapScript1_1C4F54
+ map_script 2, SevenIsland_TrainerTower_Elevator_MapScript2_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_Elevator_EventScript_164B03:: @ 8164B03
+ lockall
+ setvar VAR_0x8004, 6
+ checkflag FLAG_0x002
+ call_if 0, EventScript_1A7AB9
+ copyvar VAR_0x8005, VAR_0x403A
+ special sub_80CB580
+ message Text_1A535C
+ waitmessage
+ setvar VAR_0x8004, 6
+ specialvar VAR_RESULT, sub_80CB328
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_164B46
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_164B52
+ end
+
+EventScript_164B46:: @ 8164B46
+ multichoicedefault 0, 0, 20, 0, 0
+ goto EventScript_164B5E
+ end
+
+EventScript_164B52:: @ 8164B52
+ multichoicedefault 0, 0, 20, 1, 0
+ goto EventScript_164B5E
+ end
+
+EventScript_164B5E:: @ 8164B5E
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_164BCD
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_164B90
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_164BD3
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_164BD3
+ end
+
+EventScript_164B90:: @ 8164B90
+ setvar VAR_0x8006, 3
+ setdynamicwarp MAP_SEVENISLAND_TRAINERTOWER_LOBBY, 255, 17, 8
+ compare_var_to_value VAR_0x403A, 3
+ goto_if 1, EventScript_164BD3
+ call EventScript_164BD8
+ setvar VAR_0x403A, 3
+ special sub_80CB63C
+ delay 25
+ applymovement 255, Movement_164BE5
+ waitmovement 0
+ warp MAP_SEVENISLAND_TRAINERTOWER_LOBBY, 255, 17, 8
+ waitstate
+ releaseall
+ end
+
+EventScript_164BCD:: @ 8164BCD
+ goto EventScript_164BD3
+ end
+
+EventScript_164BD3:: @ 8164BD3
+ special sub_80CB63C
+ releaseall
+ end
+
+EventScript_164BD8:: @ 8164BD8
+ special sub_80CB63C
+ closemessage
+ waitse
+ special sub_80CB498
+ waitstate
+ setflag FLAG_0x002
+ return
+
+Movement_164BE5:: @ 8164BE5
+ step_2d
+ step_1c
+ step_10
+ step_13
+ step_13
+ step_10
+ step_end
diff --git a/data/maps/SevenIsland_TrainerTower_Lobby/scripts.inc b/data/maps/SevenIsland_TrainerTower_Lobby/scripts.inc
new file mode 100644
index 000000000..060847ef0
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_Lobby/scripts.inc
@@ -0,0 +1,263 @@
+SevenIsland_TrainerTower_Lobby_MapScripts:: @ 8164839
+ map_script 5, SevenIsland_TrainerTower_Lobby_MapScript1_164853
+ map_script 7, SevenIsland_TrainerTower_Lobby_MapScript2_164887
+ map_script 3, SevenIsland_TrainerTower_Lobby_MapScript3_1648AD
+ map_script 1, SevenIsland_TrainerTower_Lobby_MapScript4_164897
+ map_script 2, SevenIsland_TrainerTower_Lobby_MapScript5_1648B6
+ .byte 0
+
+SevenIsland_TrainerTower_Lobby_MapScript1_164853:: @ 8164853
+ setvar VAR_0x4002, 0
+ setvar VAR_0x8004, 10
+ special sub_815D9E8
+ setvar VAR_0x8004, 18
+ special sub_815D9E8
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_164886
+ setvar VAR_0x4000, 0
+ setobjectxy 255, 9, 7
+ applymovement 255, Movement_164AD4
+
+EventScript_164886:: @ 8164886
+ end
+
+SevenIsland_TrainerTower_Lobby_MapScript2_164887:: @ 8164887
+ addobject 1
+ addobject 2
+ addobject 3
+ addobject 4
+ addobject 5
+ end
+
+SevenIsland_TrainerTower_Lobby_MapScript4_164897:: @ 8164897
+ compare_var_to_value VAR_0x400D, 17
+ call_if 1, EventScript_1648A3
+ end
+
+EventScript_1648A3:: @ 81648A3
+ setmetatile 17, 10, 647, 0
+ return
+
+SevenIsland_TrainerTower_Lobby_MapScript3_1648AD:: @ 81648AD
+ setworldmapflag 2234
+ getplayerxy VAR_0x400D, VAR_RESULT
+ end
+
+SevenIsland_TrainerTower_Lobby_MapScript5_1648B6:: @ 81648B6
+ map_script_2 VAR_0x4000, 0, EventScript_1648ED
+ map_script_2 VAR_0x400D, 0x11, EventScript_1648C8
+ .2byte 0
+
+EventScript_1648C8:: @ 81648C8
+ lockall
+ applymovement 255, Movement_1648EA
+ waitmovement 0
+ setmetatile 17, 10, 692, 1
+ special DrawWholeMapView
+ playse SE_N
+ waitse
+ setvar VAR_0x400D, 0
+ releaseall
+ end
+
+Movement_1648EA:: @ 81648EA
+ step_10
+ step_10
+ step_end
+
+EventScript_1648ED:: @ 81648ED
+ setvar VAR_0x4000, 1
+ setvar VAR_0x8004, 12
+ special sub_815D9E8
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_164920
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_164938
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16495C
+
+EventScript_164920:: @ 8164920
+ lock
+ faceplayer
+ applymovement 255, Movement_164AD4
+ textcolor 1
+ loadword 0, gUnknown_817C937
+ callstd 4
+ goto EventScript_16494B
+
+EventScript_164938:: @ 8164938
+ lock
+ faceplayer
+ applymovement 255, Movement_164AD4
+ textcolor 1
+ loadword 0, gUnknown_817C9C0
+ callstd 4
+
+EventScript_16494B:: @ 816494B
+ closemessage
+ applymovement 255, Movement_164AD6
+ waitmovement 0
+ setvar VAR_0x4082, 0
+ release
+
+EventScript_16495C:: @ 816495C
+ end
+
+SevenIsland_TrainerTower_Lobby_EventScript_16495D:: @ 816495D
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+SevenIsland_TrainerTower_Lobby_EventScript_164966:: @ 8164966
+ lock
+ faceplayer
+ setvar VAR_0x8004, 20
+ special sub_815D9E8
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_164988
+ loadword 0, gUnknown_817C9A2
+ callstd 4
+ goto EventScript_164990
+
+EventScript_164988:: @ 8164988
+ loadword 0, gUnknown_817CE1F
+ callstd 4
+
+EventScript_164990:: @ 8164990
+ release
+ end
+
+SevenIsland_TrainerTower_Lobby_EventScript_164992:: @ 8164992
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_1649B8
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_1649B8:: @ 81649B8
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_FULL_RESTORE
+ .2byte ITEM_MAX_POTION
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_NONE
+ release
+ end
+
+SevenIsland_TrainerTower_Lobby_EventScript_1649CE:: @ 81649CE
+ lockall
+ applymovement 255, Movement_164AD4
+ textcolor 1
+ loadword 0, gUnknown_817C794
+ callstd 4
+ setvar VAR_0x8004, 17
+ special sub_815D9E8
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_164A00
+ loadword 0, gUnknown_817C7D9
+ callstd 4
+ goto EventScript_164A08
+
+EventScript_164A00:: @ 8164A00
+ loadword 0, gUnknown_817C850
+ callstd 4
+
+EventScript_164A08:: @ 8164A08
+ message Text_17C88D
+ waitmessage
+ multichoice 18, 6, 16, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_164A53
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_164ABF
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_164A45
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_164ABF
+ end
+
+EventScript_164A45:: @ 8164A45
+ loadword 0, gUnknown_817CCC9
+ callstd 4
+ goto EventScript_164A08
+ end
+
+EventScript_164A53:: @ 8164A53
+ multichoice 13, 3, 64, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_164AA0
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_164AA0
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_164AA0
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_164AA0
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_164ABF
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_164ABF
+ end
+
+EventScript_164AA0:: @ 8164AA0
+ copyvar VAR_0x8005, VAR_RESULT
+ setvar VAR_0x4082, 1
+ special sp000_heal_pokemon
+ loadword 0, gUnknown_817C8BF
+ callstd 4
+ setvar VAR_0x8004, 6
+ special sub_815D9E8
+ releaseall
+ end
+
+EventScript_164ABF:: @ 8164ABF
+ loadword 0, gUnknown_817C91D
+ callstd 4
+ closemessage
+ applymovement 255, Movement_164AD6
+ waitmovement 0
+ releaseall
+ end
+
+Movement_164AD4:: @ 8164AD4
+ step_03
+ step_end
+
+Movement_164AD6:: @ 8164AD6
+ step_10
+ step_end
+
+SevenIsland_TrainerTower_Lobby_EventScript_164AD8:: @ 8164AD8
+ lockall
+ fadescreen 1
+ setvar VAR_0x8004, 1
+ special sub_80CD228
+ waitstate
+ releaseall
+ end
+
+SevenIsland_TrainerTower_Lobby_EventScript_164AE6:: @ 8164AE6
+ loadword 0, gUnknown_817CE38
+ callstd 2
+ end
+
+SevenIsland_TrainerTower_Lobby_EventScript_164AEF:: @ 8164AEF
+ loadword 0, gUnknown_817CE9F
+ callstd 2
+ end
diff --git a/data/maps/SevenIsland_TrainerTower_Roof/scripts.inc b/data/maps/SevenIsland_TrainerTower_Roof/scripts.inc
new file mode 100644
index 000000000..731f6ab97
--- /dev/null
+++ b/data/maps/SevenIsland_TrainerTower_Roof/scripts.inc
@@ -0,0 +1,8 @@
+SevenIsland_TrainerTower_Roof_MapScripts:: @ 8164828
+ map_script 5, SevenIsland_TrainerTower_Roof_MapScript1_1C4F54
+ map_script 2, SevenIsland_TrainerTower_Roof_MapScript2_1C5046
+ .byte 0
+
+SevenIsland_TrainerTower_Roof_EventScript_164833:: @ 8164833
+ call EventScript_1C53AA
+ end
diff --git a/data/maps/SilphCo_10F/scripts.inc b/data/maps/SilphCo_10F/scripts.inc
new file mode 100644
index 000000000..01ad0175d
--- /dev/null
+++ b/data/maps/SilphCo_10F/scripts.inc
@@ -0,0 +1,41 @@
+SilphCo_10F_MapScripts:: @ 8161D86
+ map_script 1, SilphCo_10F_MapScript1_161D8C
+ .byte 0
+
+SilphCo_10F_MapScript1_161D8C:: @ 8161D8C
+ checkflag FLAG_0x28C
+ call_if 0, EventScript_1A84D6
+ end
+
+SilphCo_10F_EventScript_161D96:: @ 8161D96
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_161DAD
+ loadword 0, gUnknown_8176DBA
+ callstd 4
+ release
+ end
+
+EventScript_161DAD:: @ 8161DAD
+ loadword 0, gUnknown_8176DCE
+ callstd 4
+ release
+ end
+
+SilphCo_10F_EventScript_161DB7:: @ 8161DB7
+ loadword 0, gUnknown_8176DF8
+ callstd 3
+ end
+
+SilphCo_10F_EventScript_161DC0:: @ 8161DC0
+ trainerbattle 0, 345, 0, Text_176D57, Text_176D73
+ loadword 0, gUnknown_8176D86
+ callstd 6
+ end
+
+SilphCo_10F_EventScript_161DD7:: @ 8161DD7
+ trainerbattle 0, 389, 0, Text_176CED, Text_176D18
+ loadword 0, gUnknown_8176D25
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_11F/scripts.inc b/data/maps/SilphCo_11F/scripts.inc
new file mode 100644
index 000000000..0167964bb
--- /dev/null
+++ b/data/maps/SilphCo_11F/scripts.inc
@@ -0,0 +1,160 @@
+SilphCo_11F_MapScripts:: @ 8161DEE
+ map_script 1, SilphCo_11F_MapScript1_161DF4
+ .byte 0
+
+SilphCo_11F_MapScript1_161DF4:: @ 8161DF4
+ checkflag FLAG_0x28D
+ call_if 0, EventScript_1A8504
+ end
+
+SilphCo_11F_EventScript_161DFE:: @ 8161DFE
+ lock
+ faceplayer
+ checkflag FLAG_0x250
+ goto_if 1, EventScript_161E75
+ checkplayergender
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_161E59
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_161E62
+ checkitemspace ITEM_MASTER_BALL, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_161E6B
+ additem ITEM_MASTER_BALL, 1
+ loadword 0, gUnknown_8176FBD
+ setorcopyvar VAR_0x8000, 1
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ loadword 0, gUnknown_8176FEB
+ callstd 4
+ setflag FLAG_0x250
+ release
+ end
+
+EventScript_161E59:: @ 8161E59
+ loadword 0, gUnknown_8176E12
+ callstd 4
+ return
+
+EventScript_161E62:: @ 8161E62
+ loadword 0, gUnknown_8176EE7
+ callstd 4
+ return
+
+EventScript_161E6B:: @ 8161E6B
+ loadword 0, gUnknown_817708E
+ callstd 4
+ release
+ end
+
+EventScript_161E75:: @ 8161E75
+ loadword 0, gUnknown_8176FEB
+ callstd 4
+ release
+ end
+
+SilphCo_11F_EventScript_161E7F:: @ 8161E7F
+ loadword 0, gUnknown_81770A9
+ callstd 2
+ end
+
+SilphCo_11F_EventScript_161E88:: @ 8161E88
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_161EA0
+
+EventScript_161E93:: @ 8161E93
+ end
+
+SilphCo_11F_EventScript_161E94:: @ 8161E94
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_161EA0
+
+EventScript_161E9F:: @ 8161E9F
+ end
+
+EventScript_161EA0:: @ 8161EA0
+ textcolor 0
+ applymovement 3, Movement_1A75ED
+ waitmovement 0
+ delay 25
+ loadword 0, gUnknown_8177108
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_161F00
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_161F12
+ setvar VAR_LAST_TALKED, 3
+ trainerbattle 3, 349, 0, Text_1771AB
+ loadword 0, gUnknown_81771C2
+ callstd 4
+ closemessage
+ fadescreen 1
+ removeobject 3
+ removeobject 4
+ removeobject 6
+ fadescreen 0
+ setvar VAR_0x4060, 1
+ setflag FLAG_0x03E
+ clearflag FLAG_0x03F
+ releaseall
+ end
+
+EventScript_161F00:: @ 8161F00
+ applymovement 3, Movement_161F1D
+ applymovement 255, Movement_161F27
+ waitmovement 0
+ return
+
+EventScript_161F12:: @ 8161F12
+ applymovement 3, Movement_161F23
+ waitmovement 0
+ return
+
+Movement_161F1D:: @ 8161F1D
+ step_10
+ step_10
+ step_10
+ step_10
+ step_2f
+ step_end
+
+Movement_161F23:: @ 8161F23
+ step_10
+ step_10
+ step_10
+ step_end
+
+Movement_161F27:: @ 8161F27
+ step_1c
+ step_1c
+ step_1c
+ step_1b
+ step_1a
+ step_30
+ step_end
+
+EventScript_161F2E:: @ 8161F2E
+ loadword 0, gUnknown_817732B
+ callstd 3
+ end
+
+SilphCo_11F_EventScript_161F37:: @ 8161F37
+ loadword 0, gUnknown_817734A
+ callstd 3
+ end
+
+SilphCo_11F_EventScript_161F40:: @ 8161F40
+ trainerbattle 0, 390, 0, Text_1772B8, Text_1772E7
+ loadword 0, gUnknown_81772F9
+ callstd 6
+ end
+
+SilphCo_11F_EventScript_161F57:: @ 8161F57
+ trainerbattle 0, 391, 0, Text_17726A, Text_17728C
+ loadword 0, gUnknown_817729B
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_1F/scripts.inc b/data/maps/SilphCo_1F/scripts.inc
new file mode 100644
index 000000000..2fffdc782
--- /dev/null
+++ b/data/maps/SilphCo_1F/scripts.inc
@@ -0,0 +1,17 @@
+SilphCo_1F_MapScripts:: @ 8161625
+ map_script 3, SilphCo_1F_MapScript1_16162B
+ .byte 0
+
+SilphCo_1F_MapScript1_16162B:: @ 816162B
+ setworldmapflag 2220
+ end
+
+SilphCo_1F_EventScript_16162F:: @ 816162F
+ loadword 0, gUnknown_81754F7
+ callstd 2
+ end
+
+SilphCo_1F_EventScript_161638:: @ 8161638
+ loadword 0, gUnknown_8175549
+ callstd 3
+ end
diff --git a/data/maps/SilphCo_2F/scripts.inc b/data/maps/SilphCo_2F/scripts.inc
new file mode 100644
index 000000000..1c9046768
--- /dev/null
+++ b/data/maps/SilphCo_2F/scripts.inc
@@ -0,0 +1,45 @@
+SilphCo_2F_MapScripts:: @ 8161641
+ map_script 1, SilphCo_2F_MapScript1_161647
+ .byte 0
+
+SilphCo_2F_MapScript1_161647:: @ 8161647
+ checkflag FLAG_0x27A
+ call_if 0, EventScript_1A8149
+ checkflag FLAG_0x27B
+ call_if 0, EventScript_1A8177
+ end
+
+SilphCo_2F_EventScript_16165A:: @ 816165A
+ goto EventScript_1C4816
+
+EventScript_16165F:: @ 816165F
+ end
+
+SilphCo_2F_EventScript_161660:: @ 8161660
+ loadword 0, gUnknown_8175894
+ callstd 3
+ end
+
+SilphCo_2F_EventScript_161669:: @ 8161669
+ trainerbattle 0, 336, 0, Text_175562, Text_17557E
+ loadword 0, gUnknown_817559F
+ callstd 6
+ end
+
+SilphCo_2F_EventScript_161680:: @ 8161680
+ trainerbattle 0, 337, 0, Text_1755C6, Text_1755E5
+ loadword 0, gUnknown_81755F2
+ callstd 6
+ end
+
+SilphCo_2F_EventScript_161697:: @ 8161697
+ trainerbattle 0, 373, 0, Text_17562D, Text_17564A
+ loadword 0, gUnknown_8175651
+ callstd 6
+ end
+
+SilphCo_2F_EventScript_1616AE:: @ 81616AE
+ trainerbattle 0, 374, 0, Text_1756AD, Text_1756D8
+ loadword 0, gUnknown_81756E2
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_3F/scripts.inc b/data/maps/SilphCo_3F/scripts.inc
new file mode 100644
index 000000000..3575a73f9
--- /dev/null
+++ b/data/maps/SilphCo_3F/scripts.inc
@@ -0,0 +1,43 @@
+SilphCo_3F_MapScripts:: @ 81616C5
+ map_script 1, SilphCo_3F_MapScript1_1616CB
+ .byte 0
+
+SilphCo_3F_MapScript1_1616CB:: @ 81616CB
+ checkflag FLAG_0x27C
+ call_if 0, EventScript_1A81A5
+ checkflag FLAG_0x27D
+ call_if 0, EventScript_1A81DC
+ end
+
+SilphCo_3F_EventScript_1616DE:: @ 81616DE
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_1616F5
+ loadword 0, gUnknown_81758AD
+ callstd 4
+ release
+ end
+
+EventScript_1616F5:: @ 81616F5
+ loadword 0, gUnknown_81758D3
+ callstd 4
+ release
+ end
+
+SilphCo_3F_EventScript_1616FF:: @ 81616FF
+ loadword 0, gUnknown_81759DC
+ callstd 3
+ end
+
+SilphCo_3F_EventScript_161708:: @ 8161708
+ trainerbattle 0, 338, 0, Text_175948, Text_17597D
+ loadword 0, gUnknown_8175990
+ callstd 6
+ end
+
+SilphCo_3F_EventScript_16171F:: @ 816171F
+ trainerbattle 0, 375, 0, Text_1758F6, Text_175911
+ loadword 0, gUnknown_817591C
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_4F/scripts.inc b/data/maps/SilphCo_4F/scripts.inc
new file mode 100644
index 000000000..ce3ecaa70
--- /dev/null
+++ b/data/maps/SilphCo_4F/scripts.inc
@@ -0,0 +1,49 @@
+SilphCo_4F_MapScripts:: @ 8161736
+ map_script 1, SilphCo_4F_MapScript1_16173C
+ .byte 0
+
+SilphCo_4F_MapScript1_16173C:: @ 816173C
+ checkflag FLAG_0x27E
+ call_if 0, EventScript_1A8213
+ checkflag FLAG_0x27F
+ call_if 0, EventScript_1A8241
+ end
+
+SilphCo_4F_EventScript_16174F:: @ 816174F
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_161766
+ loadword 0, gUnknown_81759F5
+ callstd 4
+ release
+ end
+
+EventScript_161766:: @ 8161766
+ loadword 0, gUnknown_8175A15
+ callstd 4
+ release
+ end
+
+SilphCo_4F_EventScript_161770:: @ 8161770
+ loadword 0, gUnknown_8175B57
+ callstd 3
+ end
+
+SilphCo_4F_EventScript_161779:: @ 8161779
+ trainerbattle 0, 339, 0, Text_175A90, Text_175AB0
+ loadword 0, gUnknown_8175AC8
+ callstd 6
+ end
+
+SilphCo_4F_EventScript_161790:: @ 8161790
+ trainerbattle 0, 376, 0, Text_175A2F, Text_175A5B
+ loadword 0, gUnknown_8175A62
+ callstd 6
+ end
+
+SilphCo_4F_EventScript_1617A7:: @ 81617A7
+ trainerbattle 0, 377, 0, Text_175B19, Text_175B2B
+ loadword 0, gUnknown_8175B38
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_5F/scripts.inc b/data/maps/SilphCo_5F/scripts.inc
new file mode 100644
index 000000000..df816db5e
--- /dev/null
+++ b/data/maps/SilphCo_5F/scripts.inc
@@ -0,0 +1,72 @@
+SilphCo_5F_MapScripts:: @ 81617BE
+ map_script 1, SilphCo_5F_MapScript1_1617C4
+ .byte 0
+
+SilphCo_5F_MapScript1_1617C4:: @ 81617C4
+ checkflag FLAG_0x280
+ call_if 0, EventScript_1A826F
+ checkflag FLAG_0x281
+ call_if 0, EventScript_1A82A6
+ checkflag FLAG_0x282
+ call_if 0, EventScript_1A82DD
+ end
+
+SilphCo_5F_EventScript_1617E0:: @ 81617E0
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_1617F7
+ loadword 0, gUnknown_8175B70
+ callstd 4
+ release
+ end
+
+EventScript_1617F7:: @ 81617F7
+ loadword 0, gUnknown_8175BB3
+ callstd 4
+ release
+ end
+
+SilphCo_5F_EventScript_161801:: @ 8161801
+ loadword 0, gUnknown_8175D89
+ callstd 3
+ end
+
+SilphCo_5F_EventScript_16180A:: @ 816180A
+ loadword 0, gUnknown_8175DE0
+ callstd 3
+ end
+
+SilphCo_5F_EventScript_161813:: @ 8161813
+ loadword 0, gUnknown_8175E28
+ callstd 3
+ end
+
+SilphCo_5F_EventScript_16181C:: @ 816181C
+ loadword 0, gUnknown_8175E80
+ callstd 3
+ end
+
+SilphCo_5F_EventScript_161825:: @ 8161825
+ trainerbattle 0, 340, 0, Text_175C40, Text_175C6D
+ loadword 0, gUnknown_8175C7D
+ callstd 6
+ end
+
+SilphCo_5F_EventScript_16183C:: @ 816183C
+ trainerbattle 0, 378, 0, Text_175BE5, Text_175C09
+ loadword 0, gUnknown_8175C0F
+ callstd 6
+ end
+
+SilphCo_5F_EventScript_161853:: @ 8161853
+ trainerbattle 0, 379, 0, Text_175D28, Text_175D4B
+ loadword 0, gUnknown_8175D59
+ callstd 6
+ end
+
+SilphCo_5F_EventScript_16186A:: @ 816186A
+ trainerbattle 0, 286, 0, Text_175CBD, Text_175CEB
+ loadword 0, gUnknown_8175CF9
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_6F/scripts.inc b/data/maps/SilphCo_6F/scripts.inc
new file mode 100644
index 000000000..013d2e129
--- /dev/null
+++ b/data/maps/SilphCo_6F/scripts.inc
@@ -0,0 +1,111 @@
+SilphCo_6F_MapScripts:: @ 8161881
+ map_script 1, SilphCo_6F_MapScript1_161887
+ .byte 0
+
+SilphCo_6F_MapScript1_161887:: @ 8161887
+ checkflag FLAG_0x283
+ call_if 0, EventScript_1A8314
+ end
+
+SilphCo_6F_EventScript_161891:: @ 8161891
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_1618A8
+ loadword 0, gUnknown_817607E
+ callstd 4
+ release
+ end
+
+EventScript_1618A8:: @ 81618A8
+ loadword 0, gUnknown_81760B6
+ callstd 4
+ release
+ end
+
+SilphCo_6F_EventScript_1618B2:: @ 81618B2
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_1618C9
+ loadword 0, gUnknown_8175F24
+ callstd 4
+ release
+ end
+
+EventScript_1618C9:: @ 81618C9
+ loadword 0, gUnknown_8175F51
+ callstd 4
+ release
+ end
+
+SilphCo_6F_EventScript_1618D3:: @ 81618D3
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_1618EA
+ loadword 0, gUnknown_8175F70
+ callstd 4
+ release
+ end
+
+EventScript_1618EA:: @ 81618EA
+ loadword 0, gUnknown_8175F93
+ callstd 4
+ release
+ end
+
+SilphCo_6F_EventScript_1618F4:: @ 81618F4
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_16190B
+ loadword 0, gUnknown_8175FAA
+ callstd 4
+ release
+ end
+
+EventScript_16190B:: @ 816190B
+ loadword 0, gUnknown_8175FD3
+ callstd 4
+ release
+ end
+
+SilphCo_6F_EventScript_161915:: @ 8161915
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_16192C
+ loadword 0, gUnknown_8176012
+ callstd 4
+ release
+ end
+
+EventScript_16192C:: @ 816192C
+ loadword 0, gUnknown_817604B
+ callstd 4
+ release
+ end
+
+SilphCo_6F_EventScript_161936:: @ 8161936
+ loadword 0, gUnknown_817624D
+ callstd 3
+ end
+
+SilphCo_6F_EventScript_16193F:: @ 816193F
+ trainerbattle 0, 341, 0, Text_176136, Text_1761BD
+ loadword 0, gUnknown_81761C4
+ callstd 6
+ end
+
+SilphCo_6F_EventScript_161956:: @ 8161956
+ trainerbattle 0, 380, 0, Text_1760DE, Text_176104
+ loadword 0, gUnknown_817610F
+ callstd 6
+ end
+
+SilphCo_6F_EventScript_16196D:: @ 816196D
+ trainerbattle 0, 381, 0, Text_1761F1, Text_17620E
+ loadword 0, gUnknown_817621B
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_7F/scripts.inc b/data/maps/SilphCo_7F/scripts.inc
new file mode 100644
index 000000000..b1ec6b6b6
--- /dev/null
+++ b/data/maps/SilphCo_7F/scripts.inc
@@ -0,0 +1,282 @@
+SilphCo_7F_MapScripts:: @ 8161984
+ map_script 1, SilphCo_7F_MapScript1_16198F
+ map_script 3, SilphCo_7F_MapScript2_1619AB
+ .byte 0
+
+SilphCo_7F_MapScript1_16198F:: @ 816198F
+ checkflag FLAG_0x284
+ call_if 0, EventScript_1A834B
+ checkflag FLAG_0x285
+ call_if 0, EventScript_1A8379
+ checkflag FLAG_0x286
+ call_if 0, EventScript_1A83A7
+ end
+
+SilphCo_7F_MapScript2_1619AB:: @ 81619AB
+ compare_var_to_value VAR_0x4060, 1
+ call_if 4, EventScript_1619B7
+ end
+
+EventScript_1619B7:: @ 81619B7
+ setobjectmovementtype 8, 7
+ return
+
+SilphCo_7F_EventScript_1619BC:: @ 81619BC
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_1619D4
+
+EventScript_1619C7:: @ 81619C7
+ end
+
+SilphCo_7F_EventScript_1619C8:: @ 81619C8
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_1619D4
+
+EventScript_1619D3:: @ 81619D3
+ end
+
+EventScript_1619D4:: @ 81619D4
+ textcolor 0
+ playbgm BGM_FRLG_RIVAL, 0
+ applymovement 1, Movement_1A75DB
+ waitmovement 0
+ applymovement 255, Movement_1A75ED
+ applymovement 1, Movement_1A75DD
+ waitmovement 0
+ loadword 0, gUnknown_8176710
+ callstd 4
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_161A73
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_161A7F
+ loadword 0, gUnknown_8176727
+ callstd 4
+ setvar VAR_LAST_TALKED, 1
+ compare_var_to_value VAR_STARTER_MON, 2
+ call_if 1, EventScript_161A80
+ compare_var_to_value VAR_STARTER_MON, 1
+ call_if 1, EventScript_161A8B
+ compare_var_to_value VAR_STARTER_MON, 0
+ call_if 1, EventScript_161A96
+ loadword 0, gUnknown_8176827
+ callstd 4
+ closemessage
+ playbgm BGM_FRLG_RIVAL_POSTBATTLE, 0
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_161AA1
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_161AAC
+ playse SE_FU_ZUZUZU
+ fadedefaultbgm
+ removeobject 1
+ waitse
+ setvar VAR_0x405C, 1
+ releaseall
+ end
+
+EventScript_161A73:: @ 8161A73
+ closemessage
+ applymovement 1, Movement_161AB7
+ waitmovement 0
+ return
+
+EventScript_161A7F:: @ 8161A7F
+ return
+
+EventScript_161A80:: @ 8161A80
+ trainerbattle 3, 432, 0, Text_1767D0
+ return
+
+EventScript_161A8B:: @ 8161A8B
+ trainerbattle 3, 433, 0, Text_1767D0
+ return
+
+EventScript_161A96:: @ 8161A96
+ trainerbattle 3, 434, 0, Text_1767D0
+ return
+
+EventScript_161AA1:: @ 8161AA1
+ applymovement 1, Movement_161AB9
+ waitmovement 0
+ return
+
+EventScript_161AAC:: @ 8161AAC
+ applymovement 1, Movement_161ABF
+ waitmovement 0
+ return
+
+Movement_161AB7:: @ 8161AB7
+ step_11
+ step_end
+
+Movement_161AB9:: @ 8161AB9
+ step_13
+ step_13
+ step_13
+ step_11
+ step_1c
+ step_end
+
+Movement_161ABF:: @ 8161ABF
+ step_12
+ step_11
+ step_11
+ step_13
+ step_13
+ step_13
+ step_13
+ step_1c
+ step_end
+
+SilphCo_7F_EventScript_161AC8:: @ 8161AC8
+ lock
+ faceplayer
+ checkflag FLAG_0x246
+ goto_if 1, EventScript_161B8D
+ loadword 0, gUnknown_8176266
+ callstd 4
+ setvar VAR_0x4001, 131
+ givemon SPECIES_LAPRAS, 25, ITEM_NONE, 0, 0, 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_161B12
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_161B45
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A927C
+ release
+ end
+
+EventScript_161B12:: @ 8161B12
+ textcolor 3
+ playfanfare MUS_FANFA1
+ message Text_1762D7
+ waitmessage
+ waitfanfare
+ getspeciesname 0, SPECIES_LAPRAS
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_161B7E
+ call EventScript_1A8C27
+ call EventScript_1A74EB
+ goto EventScript_161B7E
+
+EventScript_161B44:: @ 8161B44
+ end
+
+EventScript_161B45:: @ 8161B45
+ textcolor 3
+ playfanfare MUS_FANFA1
+ message Text_1762D7
+ waitmessage
+ waitfanfare
+ getspeciesname 0, SPECIES_LAPRAS
+ loadword 0, gUnknown_81A56A7
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_161B73
+ call EventScript_1A8C33
+ goto EventScript_161B73
+
+EventScript_161B72:: @ 8161B72
+ end
+
+EventScript_161B73:: @ 8161B73
+ call EventScript_1A8C3C
+ goto EventScript_161B7E
+
+EventScript_161B7D:: @ 8161B7D
+ end
+
+EventScript_161B7E:: @ 8161B7E
+ textcolor 0
+ loadword 0, gUnknown_8176305
+ callstd 4
+ setflag FLAG_0x246
+ release
+ end
+
+EventScript_161B8D:: @ 8161B8D
+ loadword 0, gUnknown_81763DD
+ callstd 4
+ release
+ end
+
+SilphCo_7F_EventScript_161B97:: @ 8161B97
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_161BAE
+ loadword 0, gUnknown_8176444
+ callstd 4
+ release
+ end
+
+EventScript_161BAE:: @ 8161BAE
+ loadword 0, gUnknown_8176486
+ callstd 4
+ release
+ end
+
+SilphCo_7F_EventScript_161BB8:: @ 8161BB8
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_161BCF
+ loadword 0, gUnknown_81764C2
+ callstd 4
+ release
+ end
+
+EventScript_161BCF:: @ 8161BCF
+ loadword 0, gUnknown_8176501
+ callstd 4
+ release
+ end
+
+SilphCo_7F_EventScript_161BD9:: @ 8161BD9
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_161BF0
+ loadword 0, gUnknown_8176532
+ callstd 4
+ release
+ end
+
+EventScript_161BF0:: @ 8161BF0
+ loadword 0, gUnknown_8176573
+ callstd 4
+ release
+ end
+
+SilphCo_7F_EventScript_161BFA:: @ 8161BFA
+ loadword 0, gUnknown_8176954
+ callstd 3
+ end
+
+SilphCo_7F_EventScript_161C03:: @ 8161C03
+ trainerbattle 0, 342, 0, Text_1765E2, Text_17660C
+ loadword 0, gUnknown_8176616
+ callstd 6
+ end
+
+SilphCo_7F_EventScript_161C1A:: @ 8161C1A
+ trainerbattle 0, 383, 0, Text_176643, Text_176669
+ loadword 0, gUnknown_8176681
+ callstd 6
+ end
+
+SilphCo_7F_EventScript_161C31:: @ 8161C31
+ trainerbattle 0, 384, 0, Text_1766B3, Text_1766D7
+ loadword 0, gUnknown_81766E5
+ callstd 6
+ end
+
+SilphCo_7F_EventScript_161C48:: @ 8161C48
+ trainerbattle 0, 385, 0, Text_176586, Text_1765A5
+ loadword 0, gUnknown_81765B1
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_8F/scripts.inc b/data/maps/SilphCo_8F/scripts.inc
new file mode 100644
index 000000000..d8e3f18b6
--- /dev/null
+++ b/data/maps/SilphCo_8F/scripts.inc
@@ -0,0 +1,47 @@
+SilphCo_8F_MapScripts:: @ 8161C5F
+ map_script 1, SilphCo_8F_MapScript1_161C65
+ .byte 0
+
+SilphCo_8F_MapScript1_161C65:: @ 8161C65
+ checkflag FLAG_0x287
+ call_if 0, EventScript_1A83D5
+ end
+
+SilphCo_8F_EventScript_161C6F:: @ 8161C6F
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_161C86
+ loadword 0, gUnknown_817696D
+ callstd 4
+ release
+ end
+
+EventScript_161C86:: @ 8161C86
+ loadword 0, gUnknown_817698C
+ callstd 4
+ release
+ end
+
+SilphCo_8F_EventScript_161C90:: @ 8161C90
+ loadword 0, gUnknown_8176AB2
+ callstd 3
+ end
+
+SilphCo_8F_EventScript_161C99:: @ 8161C99
+ trainerbattle 0, 343, 0, Text_1769FD, Text_176A19
+ loadword 0, gUnknown_8176A26
+ callstd 6
+ end
+
+SilphCo_8F_EventScript_161CB0:: @ 8161CB0
+ trainerbattle 0, 382, 0, Text_1769A2, Text_1769BE
+ loadword 0, gUnknown_81769CF
+ callstd 6
+ end
+
+SilphCo_8F_EventScript_161CC7:: @ 8161CC7
+ trainerbattle 0, 386, 0, Text_176A56, Text_176A7C
+ loadword 0, gUnknown_8176A90
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_9F/scripts.inc b/data/maps/SilphCo_9F/scripts.inc
new file mode 100644
index 000000000..cf234a1b0
--- /dev/null
+++ b/data/maps/SilphCo_9F/scripts.inc
@@ -0,0 +1,57 @@
+SilphCo_9F_MapScripts:: @ 8161CDE
+ map_script 1, SilphCo_9F_MapScript1_161CE4
+ .byte 0
+
+SilphCo_9F_MapScript1_161CE4:: @ 8161CE4
+ checkflag FLAG_0x288
+ call_if 0, EventScript_1A840C
+ checkflag FLAG_0x289
+ call_if 0, EventScript_1A8443
+ checkflag FLAG_0x28A
+ call_if 0, EventScript_1A847A
+ checkflag FLAG_0x28B
+ call_if 0, EventScript_1A84A8
+ end
+
+SilphCo_9F_EventScript_161D09:: @ 8161D09
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4060, 1
+ goto_if 4, EventScript_161D2E
+ loadword 0, gUnknown_8176B54
+ callstd 4
+ closemessage
+ call EventScript_1A6C26
+ loadword 0, gUnknown_8176B81
+ callstd 4
+ release
+ end
+
+EventScript_161D2E:: @ 8161D2E
+ loadword 0, gUnknown_8176B90
+ callstd 4
+ release
+ end
+
+SilphCo_9F_EventScript_161D38:: @ 8161D38
+ loadword 0, gUnknown_8176CD4
+ callstd 3
+ end
+
+SilphCo_9F_EventScript_161D41:: @ 8161D41
+ trainerbattle 0, 344, 0, Text_176BFB, Text_176C2B
+ loadword 0, gUnknown_8176C3C
+ callstd 6
+ end
+
+SilphCo_9F_EventScript_161D58:: @ 8161D58
+ trainerbattle 0, 387, 0, Text_176BA3, Text_176BC8
+ loadword 0, gUnknown_8176BD0
+ callstd 6
+ end
+
+SilphCo_9F_EventScript_161D6F:: @ 8161D6F
+ trainerbattle 0, 388, 0, Text_176C7A, Text_176CA0
+ loadword 0, gUnknown_8176CB8
+ callstd 6
+ end
diff --git a/data/maps/SilphCo_Elevator/scripts.inc b/data/maps/SilphCo_Elevator/scripts.inc
new file mode 100644
index 000000000..2f2760c5f
--- /dev/null
+++ b/data/maps/SilphCo_Elevator/scripts.inc
@@ -0,0 +1,190 @@
+SilphCo_Elevator_MapScripts:: @ 8161F6E
+ .byte 0
+
+SilphCo_Elevator_EventScript_161F6F:: @ 8161F6F
+ lockall
+ setvar VAR_0x8004, 1
+ checkflag FLAG_0x002
+ call_if 0, EventScript_1A7AB9
+ copyvar VAR_0x8005, VAR_0x403A
+ special sub_80CB580
+ message Text_1A535C
+ waitmessage
+ setvar VAR_0x8004, 1
+ specialvar VAR_RESULT, sub_80CB328
+ special sub_80CB7C4
+ waitstate
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_1621BF
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_162197
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16216F
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_162147
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16211F
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_1620F7
+ compare_var_to_value VAR_0x8000, 6
+ goto_if 1, EventScript_1620CF
+ compare_var_to_value VAR_0x8000, 7
+ goto_if 1, EventScript_1620A7
+ compare_var_to_value VAR_0x8000, 8
+ goto_if 1, EventScript_16207F
+ compare_var_to_value VAR_0x8000, 9
+ goto_if 1, EventScript_162057
+ compare_var_to_value VAR_0x8000, 10
+ goto_if 1, EventScript_16202F
+ compare_var_to_value VAR_0x8000, 11
+ goto_if 1, EventScript_1621E7
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_1621E7
+ end
+
+EventScript_16202F:: @ 816202F
+ setvar VAR_0x8006, 4
+ setdynamicwarp MAP_SILPHCO_1F, 255, 22, 3
+ compare_var_to_value VAR_0x403A, 4
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 4
+ goto EventScript_1621E7
+
+EventScript_162056:: @ 8162056
+ end
+
+EventScript_162057:: @ 8162057
+ setvar VAR_0x8006, 5
+ setdynamicwarp MAP_SILPHCO_2F, 255, 22, 3
+ compare_var_to_value VAR_0x403A, 5
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 5
+ goto EventScript_1621E7
+
+EventScript_16207E:: @ 816207E
+ end
+
+EventScript_16207F:: @ 816207F
+ setvar VAR_0x8006, 6
+ setdynamicwarp MAP_SILPHCO_3F, 255, 22, 3
+ compare_var_to_value VAR_0x403A, 6
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 6
+ goto EventScript_1621E7
+
+EventScript_1620A6:: @ 81620A6
+ end
+
+EventScript_1620A7:: @ 81620A7
+ setvar VAR_0x8006, 7
+ setdynamicwarp MAP_SILPHCO_4F, 255, 22, 3
+ compare_var_to_value VAR_0x403A, 7
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 7
+ goto EventScript_1621E7
+
+EventScript_1620CE:: @ 81620CE
+ end
+
+EventScript_1620CF:: @ 81620CF
+ setvar VAR_0x8006, 8
+ setdynamicwarp MAP_SILPHCO_5F, 255, 22, 3
+ compare_var_to_value VAR_0x403A, 8
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 8
+ goto EventScript_1621E7
+
+EventScript_1620F6:: @ 81620F6
+ end
+
+EventScript_1620F7:: @ 81620F7
+ setvar VAR_0x8006, 9
+ setdynamicwarp MAP_SILPHCO_6F, 255, 20, 3
+ compare_var_to_value VAR_0x403A, 9
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 9
+ goto EventScript_1621E7
+
+EventScript_16211E:: @ 816211E
+ end
+
+EventScript_16211F:: @ 816211F
+ setvar VAR_0x8006, 10
+ setdynamicwarp MAP_SILPHCO_7F, 255, 23, 3
+ compare_var_to_value VAR_0x403A, 10
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 10
+ goto EventScript_1621E7
+
+EventScript_162146:: @ 8162146
+ end
+
+EventScript_162147:: @ 8162147
+ setvar VAR_0x8006, 11
+ setdynamicwarp MAP_SILPHCO_8F, 255, 22, 3
+ compare_var_to_value VAR_0x403A, 11
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 11
+ goto EventScript_1621E7
+
+EventScript_16216E:: @ 816216E
+ end
+
+EventScript_16216F:: @ 816216F
+ setvar VAR_0x8006, 12
+ setdynamicwarp MAP_SILPHCO_9F, 255, 24, 3
+ compare_var_to_value VAR_0x403A, 12
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 12
+ goto EventScript_1621E7
+
+EventScript_162196:: @ 8162196
+ end
+
+EventScript_162197:: @ 8162197
+ setvar VAR_0x8006, 13
+ setdynamicwarp MAP_SILPHCO_10F, 255, 13, 3
+ compare_var_to_value VAR_0x403A, 13
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 13
+ goto EventScript_1621E7
+
+EventScript_1621BE:: @ 81621BE
+ end
+
+EventScript_1621BF:: @ 81621BF
+ setvar VAR_0x8006, 14
+ setdynamicwarp MAP_SILPHCO_11F, 255, 13, 3
+ compare_var_to_value VAR_0x403A, 14
+ goto_if 1, EventScript_1621E7
+ call EventScript_1621EC
+ setvar VAR_0x403A, 14
+ goto EventScript_1621E7
+
+EventScript_1621E6:: @ 81621E6
+ end
+
+EventScript_1621E7:: @ 81621E7
+ special sub_80CB63C
+ releaseall
+ end
+
+EventScript_1621EC:: @ 81621EC
+ special sub_80CB63C
+ closemessage
+ waitse
+ special sub_80CB498
+ waitstate
+ setflag FLAG_0x002
+ return
diff --git a/data/maps/SixIsland/scripts.inc b/data/maps/SixIsland/scripts.inc
new file mode 100644
index 000000000..17e350a3d
--- /dev/null
+++ b/data/maps/SixIsland/scripts.inc
@@ -0,0 +1,22 @@
+SixIsland_MapScripts:: @ 8167ED8
+ map_script 3, SixIsland_MapScript1_167EDE
+ .byte 0
+
+SixIsland_MapScript1_167EDE:: @ 8167EDE
+ setworldmapflag 2209
+ end
+
+SixIsland_EventScript_167EE2:: @ 8167EE2
+ loadword 0, gUnknown_81831EF
+ callstd 2
+ end
+
+SixIsland_EventScript_167EEB:: @ 8167EEB
+ loadword 0, gUnknown_8183255
+ callstd 2
+ end
+
+SixIsland_EventScript_167EF4:: @ 8167EF4
+ loadword 0, gUnknown_81831C6
+ callstd 3
+ end
diff --git a/data/maps/SixIsland_DottedHole_B1F/scripts.inc b/data/maps/SixIsland_DottedHole_B1F/scripts.inc
new file mode 100644
index 000000000..09fe57766
--- /dev/null
+++ b/data/maps/SixIsland_DottedHole_B1F/scripts.inc
@@ -0,0 +1,2 @@
+SixIsland_DottedHole_B1F_MapScripts:: @ 81641B0
+ .byte 0
diff --git a/data/maps/SixIsland_DottedHole_B2F/scripts.inc b/data/maps/SixIsland_DottedHole_B2F/scripts.inc
new file mode 100644
index 000000000..2647365cc
--- /dev/null
+++ b/data/maps/SixIsland_DottedHole_B2F/scripts.inc
@@ -0,0 +1,2 @@
+SixIsland_DottedHole_B2F_MapScripts:: @ 81641B1
+ .byte 0
diff --git a/data/maps/SixIsland_DottedHole_B3F/scripts.inc b/data/maps/SixIsland_DottedHole_B3F/scripts.inc
new file mode 100644
index 000000000..68690d897
--- /dev/null
+++ b/data/maps/SixIsland_DottedHole_B3F/scripts.inc
@@ -0,0 +1,2 @@
+SixIsland_DottedHole_B3F_MapScripts:: @ 81641B2
+ .byte 0
diff --git a/data/maps/SixIsland_DottedHole_SapphireRoom/scripts.inc b/data/maps/SixIsland_DottedHole_SapphireRoom/scripts.inc
new file mode 100644
index 000000000..f4143ca78
--- /dev/null
+++ b/data/maps/SixIsland_DottedHole_SapphireRoom/scripts.inc
@@ -0,0 +1,306 @@
+SixIsland_DottedHole_SapphireRoom_MapScripts:: @ 81641B4
+ .byte 0
+
+SixIsland_DottedHole_SapphireRoom_EventScript_1641B5:: @ 81641B5
+ lock
+ faceplayer
+ textcolor 3
+ playfanfare BGM_FRLG_ME_KEYITEM
+ message Text_17BD82
+ waitmessage
+ waitfanfare
+ closemessage
+ setobjectxyperm 2, 5, 0
+ addobject 2
+ playse SE_FU_ZAKU
+ applymovement 2, Movement_16440F
+ waitmovement 0
+ playse SE_W115
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_16430F
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_16430F
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_16431A
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_16431A
+ setvar VAR_0x8004, 3
+ setvar VAR_0x8005, 0
+ setvar VAR_0x8006, 12
+ setvar VAR_0x8007, 3
+ special sub_80CAC28
+ delay 60
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_164325
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_164330
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_16433B
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_164346
+ textcolor 0
+ loadword 0, gUnknown_817BD97
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_164351
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_164366
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_16437B
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_164390
+ removeobject 1
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_1642F9
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_1642F9
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_164304
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_164304
+ loadword 0, gUnknown_817BDD4
+ callstd 4
+ closemessage
+ compare_var_to_value VAR_FACING, 2
+ call_if 1, EventScript_1643A5
+ compare_var_to_value VAR_FACING, 1
+ call_if 1, EventScript_1643B7
+ compare_var_to_value VAR_FACING, 4
+ call_if 1, EventScript_1643C9
+ compare_var_to_value VAR_FACING, 3
+ call_if 1, EventScript_1643DB
+ playse SE_KAIDAN
+ delay 35
+ removeobject 2
+ setflag FLAG_0x2D8
+ release
+ end
+
+EventScript_1642F9:: @ 81642F9
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_164304:: @ 8164304
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_16430F:: @ 816430F
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_16431A:: @ 816431A
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_164325:: @ 8164325
+ applymovement 2, Movement_1643ED
+ waitmovement 0
+ return
+
+EventScript_164330:: @ 8164330
+ applymovement 2, Movement_1643ED
+ waitmovement 0
+ return
+
+EventScript_16433B:: @ 816433B
+ applymovement 2, Movement_1643F1
+ waitmovement 0
+ return
+
+EventScript_164346:: @ 8164346
+ applymovement 2, Movement_1643F1
+ waitmovement 0
+ return
+
+EventScript_164351:: @ 8164351
+ applymovement 2, Movement_1643F5
+ waitmovement 0
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_164366:: @ 8164366
+ applymovement 2, Movement_1643F5
+ waitmovement 0
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_16437B:: @ 816437B
+ applymovement 2, Movement_1643F7
+ waitmovement 0
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ return
+
+EventScript_164390:: @ 8164390
+ applymovement 2, Movement_1643F7
+ waitmovement 0
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_1643A5:: @ 81643A5
+ applymovement 255, Movement_16441C
+ applymovement 2, Movement_1643F9
+ waitmovement 0
+ return
+
+EventScript_1643B7:: @ 81643B7
+ applymovement 255, Movement_16441C
+ applymovement 2, Movement_164401
+ waitmovement 0
+ return
+
+EventScript_1643C9:: @ 81643C9
+ applymovement 255, Movement_16441C
+ applymovement 2, Movement_164409
+ waitmovement 0
+ return
+
+EventScript_1643DB:: @ 81643DB
+ applymovement 255, Movement_16441C
+ applymovement 2, Movement_164409
+ waitmovement 0
+ return
+
+Movement_1643ED:: @ 81643ED
+ step_11
+ step_11
+ step_30
+ step_end
+
+Movement_1643F1:: @ 81643F1
+ step_13
+ step_13
+ step_2e
+ step_end
+
+Movement_1643F5:: @ 81643F5
+ step_13
+ step_end
+
+Movement_1643F7:: @ 81643F7
+ step_11
+ step_end
+
+Movement_1643F9:: @ 81643F9
+ step_1e
+ step_20
+ step_20
+ step_20
+ step_1d
+ step_20
+ step_20
+ step_end
+
+Movement_164401:: @ 8164401
+ step_1d
+ step_20
+ step_20
+ step_20
+ step_1e
+ step_20
+ step_20
+ step_end
+
+Movement_164409:: @ 8164409
+ step_20
+ step_20
+ step_20
+ step_20
+ step_1e
+ step_end
+
+Movement_16440F:: @ 816440F
+ step_00
+ step_5e
+ step_39
+ step_39
+ step_39
+ step_39
+ step_39
+ step_39
+ step_39
+ step_39
+ step_39
+ step_5f
+ step_end
+
+Movement_16441C:: @ 816441C
+ step_1c
+ step_30
+ step_end
+
+SixIsland_DottedHole_SapphireRoom_EventScript_16441F:: @ 816441F
+ lockall
+ setvar VAR_0x8005, 130
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A9321
+ getbraillestringwidth gUnknown_81A9321
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A932D
+ getbraillestringwidth gUnknown_81A932D
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A9338
+ getbraillestringwidth gUnknown_81A9338
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A933F
+ getbraillestringwidth gUnknown_81A933F
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A934A
+ getbraillestringwidth gUnknown_81A934A
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A9356
+ getbraillestringwidth gUnknown_81A9356
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A9362
+ getbraillestringwidth gUnknown_81A9362
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A9368
+ getbraillestringwidth gUnknown_81A9368
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A9374
+ getbraillestringwidth gUnknown_81A9374
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A937C
+ getbraillestringwidth gUnknown_81A937C
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A9387
+ getbraillestringwidth gUnknown_81A9387
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A9393
+ getbraillestringwidth gUnknown_81A9393
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A939F
+ getbraillestringwidth gUnknown_81A939F
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A93AB
+ getbraillestringwidth gUnknown_81A93AB
+ call EventScript_1A926C
+ setvar VAR_0x8006, 0
+ braillemessage gUnknown_81A93B4
+ getbraillestringwidth gUnknown_81A93B4
+ call EventScript_1A926C
+ braillemessage gUnknown_81A93C0
+ waitbuttonpress
+ releaseall
+ end
diff --git a/data/maps/SixIsland_GreenPath/scripts.inc b/data/maps/SixIsland_GreenPath/scripts.inc
new file mode 100644
index 000000000..860d1a964
--- /dev/null
+++ b/data/maps/SixIsland_GreenPath/scripts.inc
@@ -0,0 +1,12 @@
+SixIsland_GreenPath_MapScripts:: @ 8168B2D
+ .byte 0
+
+SixIsland_GreenPath_EventScript_168B2E:: @ 8168B2E
+ loadword 0, gUnknown_818B84D
+ callstd 3
+ end
+
+SixIsland_GreenPath_EventScript_168B37:: @ 8168B37
+ loadword 0, gUnknown_818B86B
+ callstd 3
+ end
diff --git a/data/maps/SixIsland_Harbor/scripts.inc b/data/maps/SixIsland_Harbor/scripts.inc
new file mode 100644
index 000000000..575746338
--- /dev/null
+++ b/data/maps/SixIsland_Harbor/scripts.inc
@@ -0,0 +1,11 @@
+SixIsland_Harbor_MapScripts:: @ 8171E47
+ .byte 0
+
+SixIsland_Harbor_EventScript_171E48:: @ 8171E48
+ lock
+ faceplayer
+ message Text_181726
+ waitmessage
+ setvar VAR_0x8004, 6
+ goto EventScript_1A900F
+ end
diff --git a/data/maps/SixIsland_House/scripts.inc b/data/maps/SixIsland_House/scripts.inc
new file mode 100644
index 000000000..d1f6d2c78
--- /dev/null
+++ b/data/maps/SixIsland_House/scripts.inc
@@ -0,0 +1,7 @@
+SixIsland_House_MapScripts:: @ 8171E5B
+ .byte 0
+
+SixIsland_House_EventScript_171E5C:: @ 8171E5C
+ loadword 0, gUnknown_81A412E
+ callstd 2
+ end
diff --git a/data/maps/SixIsland_Mart/scripts.inc b/data/maps/SixIsland_Mart/scripts.inc
new file mode 100644
index 000000000..ea29b5359
--- /dev/null
+++ b/data/maps/SixIsland_Mart/scripts.inc
@@ -0,0 +1,35 @@
+SixIsland_Mart_MapScripts:: @ 8171E65
+ .byte 0
+
+SixIsland_Mart_EventScript_171E66:: @ 8171E66
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_171E8C
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_171E8C:: @ 8171E8C
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_FULL_RESTORE
+ .2byte ITEM_MAX_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_DREAM_MAIL
+ .2byte ITEM_NONE
+ release
+ end
+
+SixIsland_Mart_EventScript_171EA0:: @ 8171EA0
+ loadword 0, gUnknown_81A4271
+ callstd 2
+ end
diff --git a/data/maps/SixIsland_OutcastIsland/scripts.inc b/data/maps/SixIsland_OutcastIsland/scripts.inc
new file mode 100644
index 000000000..68a9dd535
--- /dev/null
+++ b/data/maps/SixIsland_OutcastIsland/scripts.inc
@@ -0,0 +1,8 @@
+SixIsland_OutcastIsland_MapScripts:: @ 8168B15
+ .byte 0
+
+SixIsland_OutcastIsland_EventScript_168B16:: @ 8168B16
+ trainerbattle 0, 540, 0, Text_18B35A, Text_18B3C2
+ loadword 0, gUnknown_818B3C8
+ callstd 6
+ end
diff --git a/data/maps/SixIsland_PokemonCenter_1F/scripts.inc b/data/maps/SixIsland_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..e578c36b7
--- /dev/null
+++ b/data/maps/SixIsland_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,82 @@
+SixIsland_PokemonCenter_1F_MapScripts:: @ 8171D6A
+ map_script 3, SixIsland_PokemonCenter_1F_MapScript1_171D7A
+ map_script 5, SixIsland_PokemonCenter_1F_MapScript2_1BC05C
+ map_script 2, SixIsland_PokemonCenter_1F_MapScript3_171D8D
+ .byte 0
+
+SixIsland_PokemonCenter_1F_MapScript1_171D7A:: @ 8171D7A
+ setrespawn 20
+ compare_var_to_value VAR_0x4089, 0
+ call_if 1, EventScript_171D89
+ end
+
+EventScript_171D89:: @ 8171D89
+ clearflag FLAG_0x098
+ return
+
+SixIsland_PokemonCenter_1F_MapScript3_171D8D:: @ 8171D8D
+ map_script_2 VAR_0x4089, 0, EventScript_171D97
+ .2byte 0
+
+EventScript_171D97:: @ 8171D97
+ lockall
+ textcolor 0
+ applymovement 2, Movement_1A75ED
+ waitmovement 0
+ playbgm BGM_FRLG_RIVAL, 0
+ applymovement 2, Movement_1A75DB
+ waitmovement 0
+ applymovement 2, Movement_1A75DD
+ waitmovement 0
+ delay 25
+ applymovement 2, Movement_171DF9
+ waitmovement 0
+ loadword 0, gUnknown_81A3F30
+ callstd 4
+ closemessage
+ applymovement 255, Movement_171E02
+ applymovement 2, Movement_171DFE
+ waitmovement 0
+ fadedefaultbgm
+ playse SE_KAIDAN
+ delay 35
+ removeobject 2
+ setvar VAR_0x4089, 1
+ setvar VAR_0x4086, 1
+ releaseall
+ end
+
+Movement_171DF9:: @ 8171DF9
+ step_13
+ step_13
+ step_10
+ step_10
+ step_end
+
+Movement_171DFE:: @ 8171DFE
+ step_1c
+ step_1a
+ step_10
+ step_end
+
+Movement_171E02:: @ 8171E02
+ step_12
+ step_30
+ step_end
+
+SixIsland_PokemonCenter_1F_EventScript_171E05:: @ 8171E05
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+SixIsland_PokemonCenter_1F_EventScript_171E0E:: @ 8171E0E
+ loadword 0, gUnknown_81A3E02
+ callstd 2
+ end
+
+SixIsland_PokemonCenter_1F_EventScript_171E17:: @ 8171E17
+ loadword 0, gUnknown_81A3E87
+ callstd 2
+ end
diff --git a/data/maps/SixIsland_PokemonCenter_2F/scripts.inc b/data/maps/SixIsland_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..652c22240
--- /dev/null
+++ b/data/maps/SixIsland_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+SixIsland_PokemonCenter_2F_MapScripts:: @ 8171E20
+ map_script 2, SixIsland_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, SixIsland_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, SixIsland_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, SixIsland_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+SixIsland_PokemonCenter_2F_EventScript_171E35:: @ 8171E35
+ call EventScript_1BB4A3
+ end
+
+EventScript_171E3B:: @ 8171E3B
+ call EventScript_1BB6AB
+ end
+
+EventScript_171E41:: @ 8171E41
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/SixIsland_RuinValley/scripts.inc b/data/maps/SixIsland_RuinValley/scripts.inc
new file mode 100644
index 000000000..825822e1a
--- /dev/null
+++ b/data/maps/SixIsland_RuinValley/scripts.inc
@@ -0,0 +1,52 @@
+SixIsland_RuinValley_MapScripts:: @ 8168B53
+ map_script 1, SixIsland_RuinValley_MapScript1_168B59
+ .byte 0
+
+SixIsland_RuinValley_MapScript1_168B59:: @ 8168B59
+ checkflag FLAG_0x2E3
+ call_if 1, EventScript_168B63
+ end
+
+EventScript_168B63:: @ 8168B63
+ setmetatile 24, 24, 856, 0
+ return
+
+SixIsland_RuinValley_EventScript_168B6D:: @ 8168B6D
+ lock
+ loadword 0, gUnknown_818BD47
+ callstd 4
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_818BD7A
+ callstd 4
+ applymovement 1, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+SixIsland_RuinValley_EventScript_168B94:: @ 8168B94
+ lockall
+ checkflag FLAG_0x2E3
+ goto_if 1, EventScript_168BC1
+ loadword 0, gUnknown_818BDC0
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_168BCB
+ loadword 0, gUnknown_818BE11
+ callstd 4
+ braillemessage gUnknown_81A929B
+ waitbuttonpress
+ releaseall
+ end
+
+EventScript_168BC1:: @ 8168BC1
+ loadword 0, gUnknown_818BE4B
+ callstd 4
+ releaseall
+ end
+
+EventScript_168BCB:: @ 8168BCB
+ loadword 0, gUnknown_818BDF9
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/SixIsland_WaterPath/scripts.inc b/data/maps/SixIsland_WaterPath/scripts.inc
new file mode 100644
index 000000000..5d8c10058
--- /dev/null
+++ b/data/maps/SixIsland_WaterPath/scripts.inc
@@ -0,0 +1,12 @@
+SixIsland_WaterPath_MapScripts:: @ 8168B40
+ .byte 0
+
+SixIsland_WaterPath_EventScript_168B41:: @ 8168B41
+ loadword 0, gUnknown_818BD0C
+ callstd 3
+ end
+
+SixIsland_WaterPath_EventScript_168B4A:: @ 8168B4A
+ loadword 0, gUnknown_818BD27
+ callstd 3
+ end
diff --git a/data/maps/SixIsland_WaterPath_House1/scripts.inc b/data/maps/SixIsland_WaterPath_House1/scripts.inc
new file mode 100644
index 000000000..d93d01435
--- /dev/null
+++ b/data/maps/SixIsland_WaterPath_House1/scripts.inc
@@ -0,0 +1,101 @@
+SixIsland_WaterPath_House1_MapScripts:: @ 817206C
+ .byte 0
+
+SixIsland_WaterPath_House1_EventScript_17206D:: @ 817206D
+ lock
+ faceplayer
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ setvar VAR_0x8004, 214
+ specialvar VAR_RESULT, sub_80CC48C
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1720E5
+ special sub_80A0918
+ loadword 0, gUnknown_81A4A3F
+ callstd 4
+ special sub_80BF8FC
+ waitstate
+ copyvar VAR_RESULT, VAR_0x8004
+ compare_var_to_value VAR_RESULT, 6
+ goto_if 4, EventScript_1720EF
+ special sub_80A0930
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_1720F1
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1720FB
+ compare_var_to_value VAR_RESULT, 3
+ goto_if 1, EventScript_172121
+ compare_var_to_value VAR_RESULT, 4
+ goto_if 1, EventScript_17210E
+ release
+ end
+
+EventScript_1720E5:: @ 81720E5
+ loadword 0, gUnknown_81A49E9
+ callstd 4
+ release
+ end
+
+EventScript_1720EF:: @ 81720EF
+ release
+ end
+
+EventScript_1720F1:: @ 81720F1
+ loadword 0, gUnknown_81A4BEF
+ callstd 4
+ release
+ end
+
+EventScript_1720FB:: @ 81720FB
+ checkflag FLAG_0x2D9
+ goto_if 0, EventScript_172121
+ loadword 0, gUnknown_81A4B7A
+ callstd 4
+ release
+ end
+
+EventScript_17210E:: @ 817210E
+ checkflag FLAG_0x2D9
+ goto_if 0, EventScript_172121
+ loadword 0, gUnknown_81A4B39
+ callstd 4
+ release
+ end
+
+EventScript_172121:: @ 8172121
+ setflag FLAG_0x2D9
+ loadword 0, gUnknown_81A4A88
+ callstd 4
+ setorcopyvar VAR_0x8000, 8
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_17214D
+ loadword 0, gUnknown_81A4AD9
+ callstd 4
+ release
+ end
+
+EventScript_17214D:: @ 817214D
+ loadword 0, gUnknown_81A4C47
+ callstd 4
+ release
+ end
+
+SixIsland_WaterPath_House1_EventScript_172157:: @ 8172157
+ lockall
+ checkflag FLAG_0x2D9
+ goto_if 1, EventScript_17216B
+ loadword 0, gUnknown_81A4CB9
+ callstd 4
+ releaseall
+ end
+
+EventScript_17216B:: @ 817216B
+ special sub_80A0918
+ loadword 0, gUnknown_81A4C6E
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/SixIsland_WaterPath_House2/scripts.inc b/data/maps/SixIsland_WaterPath_House2/scripts.inc
new file mode 100644
index 000000000..916bf5fbd
--- /dev/null
+++ b/data/maps/SixIsland_WaterPath_House2/scripts.inc
@@ -0,0 +1,7 @@
+SixIsland_WaterPath_House2_MapScripts:: @ 8172178
+ .byte 0
+
+SixIsland_WaterPath_House2_EventScript_172179:: @ 8172179
+ loadword 0, gUnknown_81A4D0D
+ callstd 2
+ end
diff --git a/data/maps/ThreeIsland/scripts.inc b/data/maps/ThreeIsland/scripts.inc
new file mode 100644
index 000000000..76813e4ad
--- /dev/null
+++ b/data/maps/ThreeIsland/scripts.inc
@@ -0,0 +1,443 @@
+ThreeIsland_MapScripts:: @ 81677AD
+ map_script 3, ThreeIsland_MapScript1_1677B3
+ .byte 0
+
+ThreeIsland_MapScript1_1677B3:: @ 81677B3
+ setworldmapflag 2205
+ checkflag FLAG_0x2A3
+ call_if 1, EventScript_1677CB
+ compare_var_to_value VAR_0x407B, 4
+ call_if 1, EventScript_1677CF
+ end
+
+EventScript_1677CB:: @ 81677CB
+ setflag FLAG_0x07E
+ return
+
+EventScript_1677CF:: @ 81677CF
+ setobjectmovementtype 1, 1
+ setobjectmovementtype 2, 1
+ return
+
+ThreeIsland_EventScript_1677D8:: @ 81677D8
+ lock
+ setvar VAR_0x4001, 2
+ call EventScript_16786F
+ release
+ end
+
+ThreeIsland_EventScript_1677E5:: @ 81677E5
+ lock
+ checkflag FLAG_0x2FC
+ goto_if 1, EventScript_167806
+ compare_var_to_value VAR_0x407B, 4
+ goto_if 1, EventScript_16781A
+ setvar VAR_0x4001, 0
+ call EventScript_16786F
+ release
+ end
+
+EventScript_167806:: @ 8167806
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_81827F1
+ callstd 4
+ release
+ end
+
+EventScript_16781A:: @ 816781A
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_818275A
+ callstd 4
+ checkitemspace ITEM_FULL_RESTORE, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_167865
+ loadword 0, gUnknown_81827BE
+ setorcopyvar VAR_0x8000, 19
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ additem ITEM_FULL_RESTORE, 1
+ setflag FLAG_0x2FC
+ loadword 0, gUnknown_81827F1
+ callstd 4
+ release
+ end
+
+EventScript_167865:: @ 8167865
+ loadword 0, gUnknown_81827DB
+ callstd 4
+ release
+ end
+
+EventScript_16786F:: @ 816786F
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_167947
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_167947
+ applymovement 1, Movement_167A1B
+ waitmovement 0
+ loadword 0, gUnknown_81820C0
+ callstd 4
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_167952
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_167952
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_16795D
+ applymovement 5, Movement_167A19
+ waitmovement 0
+ loadword 0, gUnknown_8182125
+ callstd 4
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_167931
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_167931
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_167973
+ applymovement 2, Movement_167A1B
+ waitmovement 0
+ loadword 0, gUnknown_81821A9
+ callstd 4
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_167952
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_167952
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_16795D
+ applymovement 4, Movement_167A19
+ waitmovement 0
+ loadword 0, gUnknown_81821DC
+ callstd 4
+ return
+
+EventScript_167931:: @ 8167931
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ return
+
+EventScript_16793C:: @ 816793C
+ applymovement 255, Movement_1A75ED
+ waitmovement 0
+ return
+
+EventScript_167947:: @ 8167947
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ return
+
+EventScript_167952:: @ 8167952
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ return
+
+EventScript_16795D:: @ 816795D
+ getplayerxy VAR_0x8004, VAR_0x8005
+ compare_var_to_value VAR_0x8004, 9
+ goto_if 4, EventScript_167931
+ goto EventScript_167952
+ end
+
+EventScript_167973:: @ 8167973
+ getplayerxy VAR_0x8004, VAR_0x8005
+ compare_var_to_value VAR_0x8004, 9
+ goto_if 4, EventScript_167947
+ goto EventScript_167931
+ end
+
+ThreeIsland_EventScript_167989:: @ 8167989
+ lock
+ compare_var_to_value VAR_0x407B, 4
+ goto_if 1, EventScript_1679A1
+ setvar VAR_0x4001, 1
+ call EventScript_16786F
+ release
+ end
+
+EventScript_1679A1:: @ 81679A1
+ applymovement 2, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_8182823
+ callstd 4
+ release
+ end
+
+ThreeIsland_EventScript_1679B5:: @ 81679B5
+ lockall
+ textcolor 0
+ applymovement 1, Movement_167A1B
+ waitmovement 0
+ loadword 0, gUnknown_81821F1
+ callstd 4
+ applymovement 3, Movement_167A19
+ waitmovement 0
+ loadword 0, gUnknown_818221F
+ callstd 4
+ applymovement 1, Movement_167A1B
+ waitmovement 0
+ loadword 0, gUnknown_8182275
+ callstd 4
+ applymovement 3, Movement_167A19
+ waitmovement 0
+ loadword 0, gUnknown_81822FB
+ callstd 4
+ applymovement 1, Movement_167A1B
+ waitmovement 0
+ loadword 0, gUnknown_81823C7
+ callstd 4
+ setvar VAR_0x407B, 3
+ releaseall
+ end
+
+Movement_167A19:: @ 8167A19
+ step_27
+ step_end
+
+Movement_167A1B:: @ 8167A1B
+ step_28
+ step_end
+
+ThreeIsland_EventScript_167A1D:: @ 8167A1D
+ lockall
+ setvar VAR_0x4001, 0
+ goto EventScript_167A59
+ end
+
+ThreeIsland_EventScript_167A29:: @ 8167A29
+ lockall
+ setvar VAR_0x4001, 1
+ goto EventScript_167A59
+ end
+
+ThreeIsland_EventScript_167A35:: @ 8167A35
+ lockall
+ setvar VAR_0x4001, 2
+ goto EventScript_167A59
+ end
+
+ThreeIsland_EventScript_167A41:: @ 8167A41
+ lockall
+ setvar VAR_0x4001, 3
+ goto EventScript_167A59
+ end
+
+ThreeIsland_EventScript_167A4D:: @ 8167A4D
+ lockall
+ setvar VAR_0x4001, 4
+ goto EventScript_167A59
+ end
+
+EventScript_167A59:: @ 8167A59
+ textcolor 0
+ applymovement 5, Movement_1A75ED
+ waitmovement 0
+ playse SE_PIN
+ applymovement 5, Movement_1A75DB
+ waitmovement 0
+ applymovement 5, Movement_1A75DD
+ waitmovement 0
+ applymovement 5, Movement_167C57
+ waitmovement 0
+ playbgm BGM_FRLG_BOY_EYE, 0
+ loadword 0, gUnknown_81823ED
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_167C35
+ loadword 0, gUnknown_818247D
+ callstd 4
+ setvar VAR_LAST_TALKED, 5
+ trainerbattle 3, 527, 0, Text_1824B7
+ applymovement 5, Movement_167C5C
+ waitmovement 0
+ loadword 0, gUnknown_81824CF
+ callstd 4
+ closemessage
+ applymovement 7, Movement_167C57
+ waitmovement 0
+ playbgm BGM_FRLG_BOY_EYE, 0
+ loadword 0, gUnknown_81824EF
+ callstd 4
+ setvar VAR_LAST_TALKED, 7
+ trainerbattle 3, 528, 0, Text_182521
+ applymovement 7, Movement_167C5C
+ waitmovement 0
+ loadword 0, gUnknown_8182536
+ callstd 4
+ closemessage
+ applymovement 4, Movement_167C57
+ waitmovement 0
+ playbgm BGM_FRLG_BOY_EYE, 0
+ loadword 0, gUnknown_8182582
+ callstd 4
+ setvar VAR_LAST_TALKED, 4
+ trainerbattle 3, 529, 0, Text_1825D4
+ applymovement 4, Movement_1A75E7
+ waitmovement 0
+ applymovement 6, Movement_1A75ED
+ applymovement 8, Movement_1A75ED
+ waitmovement 0
+ loadword 0, gUnknown_81825E2
+ callstd 4
+ closemessage
+ delay 45
+ compare_var_to_value VAR_0x4001, 0
+ call_if 1, EventScript_167BC6
+ compare_var_to_value VAR_0x4001, 1
+ call_if 1, EventScript_167BD8
+ compare_var_to_value VAR_0x4001, 2
+ call_if 1, EventScript_167BEA
+ compare_var_to_value VAR_0x4001, 3
+ call_if 1, EventScript_167C03
+ compare_var_to_value VAR_0x4001, 4
+ call_if 1, EventScript_167C1C
+ playbgm BGM_FRLG_BOY_EYE, 0
+ loadword 0, gUnknown_8182623
+ callstd 4
+ setvar VAR_LAST_TALKED, 3
+ trainerbattle 3, 742, 0, Text_1826B7
+ loadword 0, gUnknown_818271D
+ callstd 4
+ closemessage
+ fadescreen 1
+ removeobject 3
+ removeobject 5
+ removeobject 7
+ removeobject 4
+ removeobject 6
+ removeobject 8
+ removeobject 14
+ fadescreen 0
+ setvar VAR_0x407B, 4
+ releaseall
+ end
+
+EventScript_167BC6:: @ 8167BC6
+ applymovement 4, Movement_1A75ED
+ applymovement 3, Movement_167C5E
+ waitmovement 0
+ return
+
+EventScript_167BD8:: @ 8167BD8
+ applymovement 4, Movement_1A75ED
+ applymovement 3, Movement_167C62
+ waitmovement 0
+ return
+
+EventScript_167BEA:: @ 8167BEA
+ applymovement 4, Movement_1A75ED
+ applymovement 3, Movement_167C64
+ applymovement 255, Movement_167C68
+ waitmovement 0
+ return
+
+EventScript_167C03:: @ 8167C03
+ applymovement 4, Movement_1A75ED
+ applymovement 255, Movement_167C68
+ applymovement 3, Movement_167C6C
+ waitmovement 0
+ return
+
+EventScript_167C1C:: @ 8167C1C
+ applymovement 4, Movement_1A75ED
+ applymovement 255, Movement_167C68
+ applymovement 3, Movement_167C71
+ waitmovement 0
+ return
+
+EventScript_167C35:: @ 8167C35
+ loadword 0, gUnknown_8182453
+ callstd 4
+ closemessage
+ applymovement 255, Movement_167C55
+ waitmovement 0
+ applymovement 5, Movement_167C59
+ waitmovement 0
+ fadedefaultbgm
+ releaseall
+ end
+
+Movement_167C55:: @ 8167C55
+ step_10
+ step_end
+
+Movement_167C57:: @ 8167C57
+ step_10
+ step_end
+
+Movement_167C59:: @ 8167C59
+ step_11
+ step_2f
+ step_end
+
+Movement_167C5C:: @ 8167C5C
+ step_25
+ step_end
+
+Movement_167C5E:: @ 8167C5E
+ step_10
+ step_12
+ step_2d
+ step_end
+
+Movement_167C62:: @ 8167C62
+ step_10
+ step_end
+
+Movement_167C64:: @ 8167C64
+ step_10
+ step_10
+ step_30
+ step_end
+
+Movement_167C68:: @ 8167C68
+ step_1c
+ step_1c
+ step_2f
+ step_end
+
+Movement_167C6C:: @ 8167C6C
+ step_10
+ step_10
+ step_13
+ step_30
+ step_end
+
+Movement_167C71:: @ 8167C71
+ step_10
+ step_10
+ step_13
+ step_13
+ step_30
+ step_end
+
+ThreeIsland_EventScript_167C77:: @ 8167C77
+ loadword 0, gUnknown_81828EB
+ callstd 2
+ end
+
+ThreeIsland_EventScript_167C80:: @ 8167C80
+ loadword 0, gUnknown_818298A
+ callstd 2
+ end
+
+ThreeIsland_EventScript_167C89:: @ 8167C89
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_DODUO, 0
+ loadword 0, gUnknown_81829F4
+ callstd 4
+ waitmoncry
+ release
+ end
+
+ThreeIsland_EventScript_167C9C:: @ 8167C9C
+ loadword 0, gUnknown_8182061
+ callstd 3
+ end
+
+ThreeIsland_EventScript_167CA5:: @ 8167CA5
+ loadword 0, gUnknown_818208B
+ callstd 2
+ end
diff --git a/data/maps/ThreeIsland_BerryForest/scripts.inc b/data/maps/ThreeIsland_BerryForest/scripts.inc
new file mode 100644
index 000000000..d6cbbdedf
--- /dev/null
+++ b/data/maps/ThreeIsland_BerryForest/scripts.inc
@@ -0,0 +1,74 @@
+ThreeIsland_BerryForest_MapScripts:: @ 8163C71
+ map_script 3, ThreeIsland_BerryForest_MapScript1_163C77
+ .byte 0
+
+ThreeIsland_BerryForest_MapScript1_163C77:: @ 8163C77
+ setworldmapflag 2231
+ setescapewarp MAP_THREEISLAND_BONDBRIDGE, 255, 12, 6
+ end
+
+ThreeIsland_BerryForest_EventScript_163C83:: @ 8163C83
+ lock
+ faceplayer
+ loadword 0, gUnknown_817ADD6
+ callstd 4
+ playse SE_PIN
+ applymovement 1, Movement_1A75DB
+ waitmovement 0
+ applymovement 1, Movement_163D22
+ waitmovement 0
+ loadword 0, gUnknown_817AE8E
+ callstd 4
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ waitse
+ playmoncry SPECIES_HYPNO, 2
+ waitmoncry
+ setwildbattle SPECIES_HYPNO, 30, ITEM_NONE
+ dowildbattle
+ special sub_8112364
+ applymovement 1, Movement_1A75E1
+ waitmovement 0
+ loadword 0, gUnknown_817AEE1
+ callstd 4
+ setorcopyvar VAR_0x8000, 147
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ call_if 1, EventScript_163D19
+ special sub_80CA6DC
+ loadword 0, gUnknown_817AF3B
+ callstd 4
+ closemessage
+ setflag FLAG_0x2A3
+ setflag FLAG_0x07A
+ setvar VAR_0x4079, 2
+ clearflag FLAG_0x075
+ warp MAP_TWOISLAND_JOYFULGAMECORNER, 255, 6, 6
+ waitstate
+ release
+ end
+
+EventScript_163D19:: @ 8163D19
+ loadword 0, gUnknown_817AF9F
+ callstd 4
+ return
+
+Movement_163D22:: @ 8163D22
+ step_2f
+ step_1c
+ step_30
+ step_1b
+ step_2f
+ step_end
+
+ThreeIsland_BerryForest_EventScript_163D28:: @ 8163D28
+ loadword 0, gUnknown_817AFD6
+ callstd 3
+ end
+
+ThreeIsland_BerryForest_EventScript_163D31:: @ 8163D31
+ loadword 0, gUnknown_817B029
+ callstd 3
+ end
diff --git a/data/maps/ThreeIsland_BondBridge/scripts.inc b/data/maps/ThreeIsland_BondBridge/scripts.inc
new file mode 100644
index 000000000..567cbfcb8
--- /dev/null
+++ b/data/maps/ThreeIsland_BondBridge/scripts.inc
@@ -0,0 +1,12 @@
+ThreeIsland_BondBridge_MapScripts:: @ 8168776
+ .byte 0
+
+ThreeIsland_BondBridge_EventScript_168777:: @ 8168777
+ loadword 0, gUnknown_818A210
+ callstd 3
+ end
+
+ThreeIsland_BondBridge_EventScript_168780:: @ 8168780
+ loadword 0, gUnknown_818A223
+ callstd 3
+ end
diff --git a/data/maps/ThreeIsland_DunsparceTunnel/scripts.inc b/data/maps/ThreeIsland_DunsparceTunnel/scripts.inc
new file mode 100644
index 000000000..d90dbfd44
--- /dev/null
+++ b/data/maps/ThreeIsland_DunsparceTunnel/scripts.inc
@@ -0,0 +1,62 @@
+ThreeIsland_DunsparceTunnel_MapScripts:: @ 8164D26
+ map_script 3, ThreeIsland_DunsparceTunnel_MapScript1_164D2C
+ .byte 0
+
+ThreeIsland_DunsparceTunnel_MapScript1_164D2C:: @ 8164D2C
+ setworldmapflag 2240
+ specialvar VAR_RESULT, sub_806E25C
+ copyvar VAR_0x8008, VAR_RESULT
+ compare_var_to_value VAR_0x8008, 1
+ call_if 1, EventScript_164D50
+ compare_var_to_value VAR_0x8008, 0
+ call_if 1, EventScript_164D54
+ end
+
+EventScript_164D50:: @ 8164D50
+ setmaplayoutindex LAYOUT_UNUSEDLAYOUT_83453C0
+ return
+
+EventScript_164D54:: @ 8164D54
+ setobjectxyperm 1, 6, 3
+ setobjectmovementtype 1, 10
+ return
+
+ThreeIsland_DunsparceTunnel_EventScript_164D60:: @ 8164D60
+ lock
+ faceplayer
+ checkflag FLAG_0x2E2
+ goto_if 1, EventScript_164DC2
+ specialvar VAR_RESULT, sub_806E25C
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_164D90
+ loadword 0, gUnknown_817D13B
+ callstd 4
+ closemessage
+ applymovement 1, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+EventScript_164D90:: @ 8164D90
+ loadword 0, gUnknown_817D1C9
+ callstd 4
+ setorcopyvar VAR_0x8000, 110
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_164DB8
+ setflag FLAG_0x2E2
+ goto EventScript_164DC2
+ end
+
+EventScript_164DB8:: @ 8164DB8
+ loadword 0, gUnknown_817D2DC
+ callstd 4
+ release
+ end
+
+EventScript_164DC2:: @ 8164DC2
+ loadword 0, gUnknown_817D28C
+ callstd 4
+ release
+ end
diff --git a/data/maps/ThreeIsland_Harbor/scripts.inc b/data/maps/ThreeIsland_Harbor/scripts.inc
new file mode 100644
index 000000000..da8f083b2
--- /dev/null
+++ b/data/maps/ThreeIsland_Harbor/scripts.inc
@@ -0,0 +1,11 @@
+ThreeIsland_Harbor_MapScripts:: @ 8171EA9
+ .byte 0
+
+ThreeIsland_Harbor_EventScript_171EAA:: @ 8171EAA
+ lock
+ faceplayer
+ message Text_181726
+ waitmessage
+ setvar VAR_0x8004, 3
+ goto EventScript_1A900F
+ end
diff --git a/data/maps/ThreeIsland_House1/scripts.inc b/data/maps/ThreeIsland_House1/scripts.inc
new file mode 100644
index 000000000..62eb26709
--- /dev/null
+++ b/data/maps/ThreeIsland_House1/scripts.inc
@@ -0,0 +1,16 @@
+ThreeIsland_House1_MapScripts:: @ 8171819
+ .byte 0
+
+ThreeIsland_House1_EventScript_17181A:: @ 817181A
+ lock
+ faceplayer
+ special sub_80CA6DC
+ loadword 0, gUnknown_81A2F3E
+ callstd 4
+ release
+ end
+
+ThreeIsland_House1_EventScript_171829:: @ 8171829
+ loadword 0, gUnknown_81A2F92
+ callstd 3
+ end
diff --git a/data/maps/ThreeIsland_House2/scripts.inc b/data/maps/ThreeIsland_House2/scripts.inc
new file mode 100644
index 000000000..21e85b131
--- /dev/null
+++ b/data/maps/ThreeIsland_House2/scripts.inc
@@ -0,0 +1,18 @@
+ThreeIsland_House2_MapScripts:: @ 81718DF
+ .byte 0
+
+ThreeIsland_House2_EventScript_1718E0:: @ 81718E0
+ lock
+ faceplayer
+ setvar VAR_0x8004, 7
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_81A32CA
+ callstd 4
+ release
+ end
+
+ThreeIsland_House2_EventScript_1718F9:: @ 81718F9
+ loadword 0, gUnknown_81A3245
+ callstd 2
+ end
diff --git a/data/maps/ThreeIsland_House3/scripts.inc b/data/maps/ThreeIsland_House3/scripts.inc
new file mode 100644
index 000000000..370290b0d
--- /dev/null
+++ b/data/maps/ThreeIsland_House3/scripts.inc
@@ -0,0 +1,7 @@
+ThreeIsland_House3_MapScripts:: @ 8171902
+ .byte 0
+
+ThreeIsland_House3_EventScript_171903:: @ 8171903
+ loadword 0, gUnknown_81A3379
+ callstd 2
+ end
diff --git a/data/maps/ThreeIsland_House4/scripts.inc b/data/maps/ThreeIsland_House4/scripts.inc
new file mode 100644
index 000000000..27ec90e70
--- /dev/null
+++ b/data/maps/ThreeIsland_House4/scripts.inc
@@ -0,0 +1,12 @@
+ThreeIsland_House4_MapScripts:: @ 817190C
+ .byte 0
+
+ThreeIsland_House4_EventScript_17190D:: @ 817190D
+ loadword 0, gUnknown_81A33DB
+ callstd 2
+ end
+
+ThreeIsland_House4_EventScript_171916:: @ 8171916
+ loadword 0, gUnknown_81A342F
+ callstd 2
+ end
diff --git a/data/maps/ThreeIsland_House5/scripts.inc b/data/maps/ThreeIsland_House5/scripts.inc
new file mode 100644
index 000000000..9559b9a23
--- /dev/null
+++ b/data/maps/ThreeIsland_House5/scripts.inc
@@ -0,0 +1,18 @@
+ThreeIsland_House5_MapScripts:: @ 817191F
+ .byte 0
+
+ThreeIsland_House5_EventScript_171920:: @ 8171920
+ lock
+ faceplayer
+ checkflag FLAG_0x2A3
+ goto_if 1, EventScript_171935
+ loadword 0, gUnknown_81A3469
+ callstd 4
+ release
+ end
+
+EventScript_171935:: @ 8171935
+ loadword 0, gUnknown_81A34DB
+ callstd 4
+ release
+ end
diff --git a/data/maps/ThreeIsland_Mart/scripts.inc b/data/maps/ThreeIsland_Mart/scripts.inc
new file mode 100644
index 000000000..4060673a9
--- /dev/null
+++ b/data/maps/ThreeIsland_Mart/scripts.inc
@@ -0,0 +1,43 @@
+ThreeIsland_Mart_MapScripts:: @ 817188C
+ .byte 0
+
+ThreeIsland_Mart_EventScript_17188D:: @ 817188D
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_1718B4
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_1718B4:: @ 81718B4
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_HYPER_POTION
+ .2byte ITEM_REVIVE
+ .2byte ITEM_FULL_HEAL
+ .2byte ITEM_ESCAPE_ROPE
+ .2byte ITEM_MAX_REPEL
+ .2byte ITEM_NONE
+ release
+ end
+
+ThreeIsland_Mart_EventScript_1718C4:: @ 81718C4
+ loadword 0, gUnknown_81A3114
+ callstd 2
+ end
+
+ThreeIsland_Mart_EventScript_1718CD:: @ 81718CD
+ loadword 0, gUnknown_81A315C
+ callstd 2
+ end
+
+ThreeIsland_Mart_EventScript_1718D6:: @ 81718D6
+ loadword 0, gUnknown_81A31F0
+ callstd 2
+ end
diff --git a/data/maps/ThreeIsland_PokemonCenter_1F/scripts.inc b/data/maps/ThreeIsland_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..711e63498
--- /dev/null
+++ b/data/maps/ThreeIsland_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,30 @@
+ThreeIsland_PokemonCenter_1F_MapScripts:: @ 8171832
+ map_script 3, ThreeIsland_PokemonCenter_1F_MapScript1_17183D
+ map_script 5, ThreeIsland_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+ThreeIsland_PokemonCenter_1F_MapScript1_17183D:: @ 817183D
+ setrespawn 16
+ end
+
+ThreeIsland_PokemonCenter_1F_EventScript_171841:: @ 8171841
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+ThreeIsland_PokemonCenter_1F_EventScript_17184A:: @ 817184A
+ loadword 0, gUnknown_81A303B
+ callstd 2
+ end
+
+ThreeIsland_PokemonCenter_1F_EventScript_171853:: @ 8171853
+ loadword 0, gUnknown_81A30A3
+ callstd 2
+ end
+
+ThreeIsland_PokemonCenter_1F_EventScript_17185C:: @ 817185C
+ loadword 0, gUnknown_81A2FB5
+ callstd 2
+ end
diff --git a/data/maps/ThreeIsland_PokemonCenter_2F/scripts.inc b/data/maps/ThreeIsland_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..a87ceda5a
--- /dev/null
+++ b/data/maps/ThreeIsland_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+ThreeIsland_PokemonCenter_2F_MapScripts:: @ 8171865
+ map_script 2, ThreeIsland_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, ThreeIsland_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, ThreeIsland_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, ThreeIsland_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+ThreeIsland_PokemonCenter_2F_EventScript_17187A:: @ 817187A
+ call EventScript_1BB4A3
+ end
+
+EventScript_171880:: @ 8171880
+ call EventScript_1BB6AB
+ end
+
+EventScript_171886:: @ 8171886
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/ThreeIsland_Port/scripts.inc b/data/maps/ThreeIsland_Port/scripts.inc
new file mode 100644
index 000000000..876acaaac
--- /dev/null
+++ b/data/maps/ThreeIsland_Port/scripts.inc
@@ -0,0 +1,44 @@
+ThreeIsland_Port_MapScripts:: @ 8168789
+ map_script 3, ThreeIsland_Port_MapScript1_16878F
+ .byte 0
+
+ThreeIsland_Port_MapScript1_16878F:: @ 816878F
+ clearflag 2113
+ setflag FLAG_0x2A1
+ end
+
+ThreeIsland_Port_EventScript_168796:: @ 8168796
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4079, 2
+ goto_if 4, EventScript_1687B8
+ compare_var_to_value VAR_0x407B, 4
+ goto_if 4, EventScript_1687C2
+ loadword 0, gUnknown_818A307
+ callstd 4
+ release
+ end
+
+EventScript_1687B8:: @ 81687B8
+ loadword 0, gUnknown_818A38B
+ callstd 4
+ release
+ end
+
+EventScript_1687C2:: @ 81687C2
+ loadword 0, gUnknown_818A339
+ callstd 4
+ release
+ end
+
+ThreeIsland_Port_EventScript_1687CC:: @ 81687CC
+ loadword 0, gUnknown_818A261
+ callstd 2
+ end
+
+ThreeIsland_Port_EventScript_1687D5:: @ 81687D5
+ lock
+ loadword 0, gUnknown_818A2D8
+ callstd 4
+ release
+ end
diff --git a/data/maps/TwoIsland/scripts.inc b/data/maps/TwoIsland/scripts.inc
new file mode 100644
index 000000000..3cec3aad1
--- /dev/null
+++ b/data/maps/TwoIsland/scripts.inc
@@ -0,0 +1,254 @@
+TwoIsland_MapScripts:: @ 8167564
+ map_script 3, TwoIsland_MapScript1_16756A
+ .byte 0
+
+TwoIsland_MapScript1_16756A:: @ 816756A
+ setworldmapflag 2204
+ setflag FLAG_0x2A2
+ call EventScript_167576
+ end
+
+EventScript_167576:: @ 8167576
+ checkflag 2116
+ goto_if 1, EventScript_167597
+ checkflag 2092
+ goto_if 1, EventScript_1675B8
+ checkflag FLAG_0x2A3
+ goto_if 1, EventScript_1675D9
+ goto EventScript_1675E8
+ end
+
+EventScript_167597:: @ 8167597
+ checkflag FLAG_0x29D
+ goto_if 0, EventScript_1675EE
+ checkflag FLAG_0x29E
+ goto_if 0, EventScript_1675F4
+ checkflag FLAG_0x29F
+ goto_if 0, EventScript_1675FD
+ goto EventScript_167606
+ end
+
+EventScript_1675B8:: @ 81675B8
+ checkflag FLAG_0x29D
+ goto_if 0, EventScript_1675EE
+ checkflag FLAG_0x2A3
+ goto_if 0, EventScript_1675EE
+ checkflag FLAG_0x29E
+ goto_if 0, EventScript_1675F4
+ goto EventScript_1675FD
+ end
+
+EventScript_1675D9:: @ 81675D9
+ checkflag FLAG_0x29D
+ goto_if 0, EventScript_1675EE
+ goto EventScript_1675F4
+ end
+
+EventScript_1675E8:: @ 81675E8
+ goto EventScript_1675EE
+ end
+
+EventScript_1675EE:: @ 81675EE
+ setvar VAR_0x4078, 1
+ return
+
+EventScript_1675F4:: @ 81675F4
+ setvar VAR_0x4078, 2
+ clearflag FLAG_0x07B
+ return
+
+EventScript_1675FD:: @ 81675FD
+ setvar VAR_0x4078, 3
+ clearflag FLAG_0x07C
+ return
+
+EventScript_167606:: @ 8167606
+ setvar VAR_0x4078, 4
+ clearflag FLAG_0x07D
+ return
+
+TwoIsland_EventScript_16760F:: @ 816760F
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4078, 4
+ goto_if 1, EventScript_167646
+ compare_var_to_value VAR_0x4078, 3
+ goto_if 1, EventScript_16765E
+ compare_var_to_value VAR_0x4078, 2
+ goto_if 1, EventScript_167676
+ goto EventScript_16768E
+ end
+
+EventScript_167646:: @ 8167646
+ checkflag FLAG_0x2A0
+ goto_if 1, EventScript_1676A6
+ setflag FLAG_0x2A0
+ message Text_181CAE
+ waitmessage
+ goto EventScript_167728
+ end
+
+EventScript_16765E:: @ 816765E
+ checkflag FLAG_0x29F
+ goto_if 1, EventScript_1676A6
+ setflag FLAG_0x29F
+ message Text_181C77
+ waitmessage
+ goto EventScript_167708
+ end
+
+EventScript_167676:: @ 8167676
+ checkflag FLAG_0x29E
+ goto_if 1, EventScript_1676A6
+ setflag FLAG_0x29E
+ message Text_181B7C
+ waitmessage
+ goto EventScript_1676EC
+ end
+
+EventScript_16768E:: @ 816768E
+ checkflag FLAG_0x29D
+ goto_if 1, EventScript_1676A6
+ setflag FLAG_0x29D
+ message Text_181AFE
+ waitmessage
+ goto EventScript_1676D3
+ end
+
+EventScript_1676A6:: @ 81676A6
+ message Text_1A6211
+ waitmessage
+ compare_var_to_value VAR_0x4078, 4
+ goto_if 1, EventScript_167728
+ compare_var_to_value VAR_0x4078, 3
+ goto_if 1, EventScript_167708
+ compare_var_to_value VAR_0x4078, 2
+ goto_if 1, EventScript_1676EC
+ goto EventScript_1676D3
+ end
+
+EventScript_1676D3:: @ 81676D3
+ pokemart Items_1676E4
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_1676E4:: @ 81676E4
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_FRESH_WATER
+ .2byte ITEM_NONE
+ release
+ end
+
+EventScript_1676EC:: @ 81676EC
+ pokemart Items_1676FC
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_1676FC:: @ 81676FC
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_SODA_POP
+ .2byte ITEM_FRESH_WATER
+ .2byte ITEM_NONE
+ release
+ end
+
+EventScript_167708:: @ 8167708
+ pokemart Items_167718
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_167718:: @ 8167718
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_GREAT_BALL
+ .2byte ITEM_LEMONADE
+ .2byte ITEM_SODA_POP
+ .2byte ITEM_FRESH_WATER
+ .2byte ITEM_MOOMOO_MILK
+ .2byte ITEM_NONE
+ release
+ end
+
+EventScript_167728:: @ 8167728
+ pokemart Items_167738
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_167738:: @ 8167738
+ .2byte ITEM_ULTRA_BALL
+ .2byte ITEM_REPEAT_BALL
+ .2byte ITEM_TIMER_BALL
+ .2byte ITEM_LEMONADE
+ .2byte ITEM_SODA_POP
+ .2byte ITEM_FRESH_WATER
+ .2byte ITEM_MOOMOO_MILK
+ .2byte ITEM_LAVA_COOKIE
+ .2byte ITEM_NONE
+ release
+ end
+
+TwoIsland_EventScript_16774C:: @ 816774C
+ loadword 0, gUnknown_8181D2F
+ callstd 2
+ end
+
+TwoIsland_EventScript_167755:: @ 8167755
+ loadword 0, gUnknown_8181DCA
+ callstd 2
+ end
+
+TwoIsland_EventScript_16775E:: @ 816775E
+ lock
+ faceplayer
+ setvar VAR_0x8004, 10
+ setvar VAR_0x8005, 4
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8181E47
+ callstd 4
+ release
+ end
+
+TwoIsland_EventScript_167777:: @ 8167777
+ loadword 0, gUnknown_8181F28
+ callstd 2
+ end
+
+TwoIsland_EventScript_167780:: @ 8167780
+ loadword 0, gUnknown_8181F5D
+ callstd 2
+ end
+
+TwoIsland_EventScript_167789:: @ 8167789
+ loadword 0, gUnknown_8181FCE
+ callstd 2
+ end
+
+TwoIsland_EventScript_167792:: @ 8167792
+ loadword 0, gUnknown_8181A88
+ callstd 3
+ end
+
+TwoIsland_EventScript_16779B:: @ 816779B
+ loadword 0, gUnknown_8181AA7
+ callstd 3
+ end
+
+TwoIsland_EventScript_1677A4:: @ 81677A4
+ loadword 0, gUnknown_8181AC8
+ callstd 3
+ end
diff --git a/data/maps/TwoIsland_CapeBrink/scripts.inc b/data/maps/TwoIsland_CapeBrink/scripts.inc
new file mode 100644
index 000000000..f3bfb9df1
--- /dev/null
+++ b/data/maps/TwoIsland_CapeBrink/scripts.inc
@@ -0,0 +1,2 @@
+TwoIsland_CapeBrink_MapScripts:: @ 8168775
+ .byte 0
diff --git a/data/maps/TwoIsland_CapeBrink_House/scripts.inc b/data/maps/TwoIsland_CapeBrink_House/scripts.inc
new file mode 100644
index 000000000..77b08f93d
--- /dev/null
+++ b/data/maps/TwoIsland_CapeBrink_House/scripts.inc
@@ -0,0 +1,2 @@
+TwoIsland_CapeBrink_House_MapScripts:: @ 817206B
+ .byte 0
diff --git a/data/maps/TwoIsland_Harbor/scripts.inc b/data/maps/TwoIsland_Harbor/scripts.inc
new file mode 100644
index 000000000..0fdd3694d
--- /dev/null
+++ b/data/maps/TwoIsland_Harbor/scripts.inc
@@ -0,0 +1,11 @@
+TwoIsland_Harbor_MapScripts:: @ 8171805
+ .byte 0
+
+TwoIsland_Harbor_EventScript_171806:: @ 8171806
+ lock
+ faceplayer
+ message Text_181726
+ waitmessage
+ setvar VAR_0x8004, 2
+ goto EventScript_1A8F54
+ end
diff --git a/data/maps/TwoIsland_House/scripts.inc b/data/maps/TwoIsland_House/scripts.inc
new file mode 100644
index 000000000..907c02348
--- /dev/null
+++ b/data/maps/TwoIsland_House/scripts.inc
@@ -0,0 +1,143 @@
+TwoIsland_House_MapScripts:: @ 8171618
+ .byte 0
+
+TwoIsland_House_EventScript_171619:: @ 8171619
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ lock
+ faceplayer
+ clearflag FLAG_0x002
+ clearflag FLAG_0x003
+ clearflag FLAG_0x004
+ checkflag FLAG_0x001
+ goto_if 1, EventScript_17164F
+ loadword 0, gUnknown_81A2B88
+ callstd 4
+ setflag FLAG_0x001
+ goto EventScript_17164F
+ end
+
+EventScript_17164F:: @ 817164F
+ checkitem ITEM_BIG_MUSHROOM, 1
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_1717A8
+ checkitem ITEM_TINY_MUSHROOM, 2
+ compare_var_to_value VAR_RESULT, 1
+ call_if 1, EventScript_1717AC
+ checkflag FLAG_0x002
+ goto_if 1, EventScript_171687
+ checkflag FLAG_0x003
+ goto_if 1, EventScript_171696
+ goto EventScript_17179E
+ end
+
+EventScript_171687:: @ 8171687
+ checkflag FLAG_0x003
+ call_if 1, EventScript_1717B0
+ goto EventScript_1716A5
+ end
+
+EventScript_171696:: @ 8171696
+ checkflag FLAG_0x002
+ call_if 1, EventScript_1717B0
+ goto EventScript_1716A5
+ end
+
+EventScript_1716A5:: @ 81716A5
+ loadword 0, gUnknown_81A2C63
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_17179E
+ goto EventScript_1716BE
+ end
+
+EventScript_1716BE:: @ 81716BE
+ loadword 0, gUnknown_81A2CC3
+ callstd 4
+ special sub_80BF93C
+ waitstate
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_17179E
+ special sub_80BFC14
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_171790
+ compare_var_to_value VAR_0x8005, 0
+ goto_if 1, EventScript_171782
+ goto EventScript_1716F4
+ end
+
+EventScript_1716F4:: @ 81716F4
+ loadword 0, gUnknown_81A2CE1
+ callstd 4
+ special sub_80E4634
+ waitstate
+ compare_var_to_value VAR_0x8004, 0
+ goto_if 1, EventScript_1716BE
+ checkflag FLAG_0x004
+ goto_if 1, EventScript_17175B
+ checkflag FLAG_0x002
+ goto_if 1, EventScript_171727
+ checkflag FLAG_0x003
+ goto_if 1, EventScript_171741
+ end
+
+EventScript_171727:: @ 8171727
+ removeitem ITEM_BIG_MUSHROOM, 1
+ textcolor 3
+ loadword 0, gUnknown_81A2DB3
+ callstd 4
+ call EventScript_1A6675
+ goto EventScript_17179E
+ end
+
+EventScript_171741:: @ 8171741
+ removeitem ITEM_TINY_MUSHROOM, 2
+ textcolor 3
+ loadword 0, gUnknown_81A2D85
+ callstd 4
+ call EventScript_1A6675
+ goto EventScript_17179E
+ end
+
+EventScript_17175B:: @ 817175B
+ message Text_1A2D43
+ waitmessage
+ multichoice 0, 0, 51, 1
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_171741
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_171727
+ end
+
+EventScript_171782:: @ 8171782
+ loadword 0, gUnknown_81A2CFC
+ callstd 4
+ goto EventScript_1716BE
+ end
+
+EventScript_171790:: @ 8171790
+ loadword 0, gUnknown_81A2E20
+ callstd 4
+ goto EventScript_1716BE
+ end
+
+EventScript_17179E:: @ 817179E
+ loadword 0, gUnknown_81A2DE0
+ callstd 4
+ release
+ end
+
+EventScript_1717A8:: @ 81717A8
+ setflag FLAG_0x002
+ return
+
+EventScript_1717AC:: @ 81717AC
+ setflag FLAG_0x003
+ return
+
+EventScript_1717B0:: @ 81717B0
+ setflag FLAG_0x004
+ return
diff --git a/data/maps/TwoIsland_JoyfulGameCorner/scripts.inc b/data/maps/TwoIsland_JoyfulGameCorner/scripts.inc
new file mode 100644
index 000000000..2d6b06c70
--- /dev/null
+++ b/data/maps/TwoIsland_JoyfulGameCorner/scripts.inc
@@ -0,0 +1,216 @@
+TwoIsland_JoyfulGameCorner_MapScripts:: @ 81713D0
+ map_script 3, TwoIsland_JoyfulGameCorner_MapScript1_1713E5
+ map_script 4, TwoIsland_JoyfulGameCorner_MapScript2_171404
+ map_script 2, TwoIsland_JoyfulGameCorner_MapScript3_17141B
+ map_script 1, TwoIsland_JoyfulGameCorner_MapScript4_1BB237
+ .byte 0
+
+TwoIsland_JoyfulGameCorner_MapScript1_1713E5:: @ 81713E5
+ checkflag FLAG_0x2FB
+ call_if 1, EventScript_1713EF
+ end
+
+EventScript_1713EF:: @ 81713EF
+ setobjectxyperm 1, 6, 2
+ setobjectmovementtype 1, 8
+ setobjectmovementtype 3, 1
+ setvar VAR_0x4079, 4
+ return
+
+TwoIsland_JoyfulGameCorner_MapScript2_171404:: @ 8171404
+ map_script_2 VAR_0x4079, 2, EventScript_171416
+ map_script_2 VAR_0x406F, 8, EventScript_1BB227
+ .2byte 0
+
+EventScript_171416:: @ 8171416
+ turnobject 255, 2
+ end
+
+TwoIsland_JoyfulGameCorner_MapScript3_17141B:: @ 817141B
+ map_script_2 VAR_0x4079, 0, EventScript_17145F
+ map_script_2 VAR_0x4079, 2, EventScript_171435
+ map_script_2 VAR_0x406F, 8, EventScript_1BB2FD
+ .2byte 0
+
+EventScript_171435:: @ 8171435
+ lockall
+ textcolor 0
+ loadword 0, gUnknown_81A28B2
+ callstd 4
+ textcolor 1
+ special sub_80CA6DC
+ loadword 0, gUnknown_81A2931
+ callstd 4
+ closemessage
+ applymovement 3, Movement_1A75ED
+ waitmovement 0
+ setvar VAR_0x4079, 3
+ releaseall
+ end
+
+EventScript_17145F:: @ 817145F
+ lockall
+ textcolor 0
+ applymovement 1, Movement_171520
+ waitmovement 0
+ loadword 0, gUnknown_81A2408
+ callstd 4
+ closemessage
+ applymovement 1, Movement_1A75ED
+ waitmovement 0
+ playse SE_PIN
+ applymovement 1, Movement_1A75DB
+ waitmovement 0
+ applymovement 1, Movement_1A75DD
+ waitmovement 0
+ applymovement 1, Movement_171527
+ waitmovement 0
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ loadword 0, gUnknown_81A2465
+ callstd 4
+ closemessage
+ playse SE_DOOR
+ waitse
+ applymovement 255, Movement_17152C
+ waitmovement 0
+ playbgm BGM_FRLG_BOY_EYE, 0
+ addobject 2
+ applymovement 2, Movement_17152F
+ waitmovement 0
+ loadword 0, gUnknown_81A259A
+ callstd 4
+ applymovement 2, Movement_1A75EB
+ waitmovement 0
+ loadword 0, gUnknown_81A2658
+ callstd 4
+ loadword 0, gUnknown_81A26D5
+ callstd 4
+ closemessage
+ applymovement 2, Movement_1A75ED
+ waitmovement 0
+ playse SE_KAIDAN
+ removeobject 2
+ fadedefaultbgm
+ delay 60
+ loadword 0, gUnknown_81A270C
+ callstd 4
+ clearflag FLAG_0x091
+ setvar VAR_0x407B, 2
+ setvar VAR_0x4079, 1
+ releaseall
+ end
+
+Movement_171520:: @ 8171520
+ step_12
+ step_13
+ step_13
+ step_1b
+ step_2e
+ step_1c
+ step_end
+
+Movement_171527:: @ 8171527
+ step_10
+ step_10
+ step_10
+ step_2f
+ step_end
+
+Movement_17152C:: @ 817152C
+ step_12
+ step_30
+ step_end
+
+Movement_17152F:: @ 817152F
+ step_2f
+ step_1b
+ step_30
+ step_1b
+ step_2e
+ step_end
+
+TwoIsland_JoyfulGameCorner_EventScript_171535:: @ 8171535
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4079, 4
+ goto_if 1, EventScript_1BC060
+ checkflag FLAG_0x2A3
+ goto_if 1, EventScript_171555
+ loadword 0, gUnknown_81A285C
+ callstd 4
+ release
+ end
+
+EventScript_171555:: @ 8171555
+ loadword 0, gUnknown_81A288A
+ callstd 4
+ release
+ end
+
+TwoIsland_JoyfulGameCorner_EventScript_17155F:: @ 817155F
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4079, 4
+ goto_if 1, EventScript_1BC0CE
+ checkflag FLAG_0x2FB
+ goto_if 1, EventScript_1715F5
+ compare_var_to_value VAR_0x4079, 3
+ goto_if 1, EventScript_17158A
+ loadword 0, gUnknown_81A2743
+ callstd 4
+ release
+ end
+
+EventScript_17158A:: @ 817158A
+ checkflag FLAG_0x2FE
+ goto_if 1, EventScript_1715C4
+ loadword 0, gUnknown_81A296A
+ callstd 4
+ setvar VAR_0x4076, 2
+ textcolor 3
+ playfanfare MUS_ME_WAZA
+ message Text_1A29F7
+ waitmessage
+ waitfanfare
+ call EventScript_1A6675
+ removeitem ITEM_METEORITE, 1
+ loadword 0, gUnknown_81A2A24
+ callstd 4
+ goto EventScript_1715C4
+ end
+
+EventScript_1715C4:: @ 81715C4
+ checkitemspace ITEM_MOON_STONE, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1715FF
+ additem ITEM_MOON_STONE, 1
+ setflag FLAG_0x2FB
+ loadword 0, gUnknown_81A2A9A
+ setorcopyvar VAR_0x8000, 94
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ release
+ end
+
+EventScript_1715F5:: @ 81715F5
+ loadword 0, gUnknown_81A2AF5
+ callstd 4
+ release
+ end
+
+EventScript_1715FF:: @ 81715FF
+ setflag FLAG_0x2FE
+ loadword 0, gUnknown_81A2ACA
+ callstd 4
+ release
+ end
+
+TwoIsland_JoyfulGameCorner_EventScript_17160C:: @ 817160C
+ lock
+ faceplayer
+ loadword 0, gUnknown_81A2B53
+ callstd 4
+ release
+ end
diff --git a/data/maps/TwoIsland_PokemonCenter_1F/scripts.inc b/data/maps/TwoIsland_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..3f4196829
--- /dev/null
+++ b/data/maps/TwoIsland_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,25 @@
+TwoIsland_PokemonCenter_1F_MapScripts:: @ 81717B4
+ map_script 3, TwoIsland_PokemonCenter_1F_MapScript1_1717BF
+ map_script 5, TwoIsland_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+TwoIsland_PokemonCenter_1F_MapScript1_1717BF:: @ 81717BF
+ setrespawn 15
+ end
+
+TwoIsland_PokemonCenter_1F_EventScript_1717C3:: @ 81717C3
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+TwoIsland_PokemonCenter_1F_EventScript_1717CC:: @ 81717CC
+ loadword 0, gUnknown_81A2E59
+ callstd 2
+ end
+
+TwoIsland_PokemonCenter_1F_EventScript_1717D5:: @ 81717D5
+ loadword 0, gUnknown_81A2EBE
+ callstd 2
+ end
diff --git a/data/maps/TwoIsland_PokemonCenter_2F/scripts.inc b/data/maps/TwoIsland_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..b96339801
--- /dev/null
+++ b/data/maps/TwoIsland_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+TwoIsland_PokemonCenter_2F_MapScripts:: @ 81717DE
+ map_script 2, TwoIsland_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, TwoIsland_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, TwoIsland_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, TwoIsland_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+TwoIsland_PokemonCenter_2F_EventScript_1717F3:: @ 81717F3
+ call EventScript_1BB4A3
+ end
+
+EventScript_1717F9:: @ 81717F9
+ call EventScript_1BB6AB
+ end
+
+EventScript_1717FF:: @ 81717FF
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/UndergroundPath_EastEntrance/scripts.inc b/data/maps/UndergroundPath_EastEntrance/scripts.inc
new file mode 100644
index 000000000..bb7b47f87
--- /dev/null
+++ b/data/maps/UndergroundPath_EastEntrance/scripts.inc
@@ -0,0 +1,7 @@
+UndergroundPath_EastEntrance_MapScripts:: @ 8160EDD
+ .byte 0
+
+UndergroundPath_EastEntrance_EventScript_160EDE:: @ 8160EDE
+ loadword 0, gUnknown_81745D9
+ callstd 2
+ end
diff --git a/data/maps/UndergroundPath_EastWestTunnel/scripts.inc b/data/maps/UndergroundPath_EastWestTunnel/scripts.inc
new file mode 100644
index 000000000..14132bc0d
--- /dev/null
+++ b/data/maps/UndergroundPath_EastWestTunnel/scripts.inc
@@ -0,0 +1,7 @@
+UndergroundPath_EastWestTunnel_MapScripts:: @ 8160ED3
+ map_script 3, UndergroundPath_EastWestTunnel_MapScript1_160ED9
+ .byte 0
+
+UndergroundPath_EastWestTunnel_MapScript1_160ED9:: @ 8160ED9
+ setworldmapflag 2216
+ end
diff --git a/data/maps/UndergroundPath_NorthEntrance/scripts.inc b/data/maps/UndergroundPath_NorthEntrance/scripts.inc
new file mode 100644
index 000000000..38531be14
--- /dev/null
+++ b/data/maps/UndergroundPath_NorthEntrance/scripts.inc
@@ -0,0 +1,45 @@
+UndergroundPath_NorthEntrance_MapScripts:: @ 8160E38
+ .byte 0
+
+UndergroundPath_NorthEntrance_EventScript_160E39:: @ 8160E39
+ lock
+ faceplayer
+ setvar VAR_0x8008, 2
+ call EventScript_1A8CAD
+ checkflag FLAG_0x24B
+ goto_if 1, EventScript_160EAB
+ loadword 0, gUnknown_81A5AD6
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_160E93
+ call EventScript_1A8CBD
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_160E93
+ call EventScript_1A8CC9
+ compare_var_to_var VAR_RESULT, VAR_0x8009
+ goto_if 5, EventScript_160E9D
+ call EventScript_1A8CD9
+ loadword 0, gUnknown_81A5B4A
+ callstd 4
+ setflag FLAG_0x24B
+ release
+ end
+
+EventScript_160E93:: @ 8160E93
+ loadword 0, gUnknown_81A5B08
+ callstd 4
+ release
+ end
+
+EventScript_160E9D:: @ 8160E9D
+ getspeciesname 0, 32777
+ loadword 0, gUnknown_81A5B18
+ callstd 4
+ release
+ end
+
+EventScript_160EAB:: @ 8160EAB
+ loadword 0, gUnknown_81A5B60
+ callstd 4
+ release
+ end
diff --git a/data/maps/UndergroundPath_NorthSouthTunnel/scripts.inc b/data/maps/UndergroundPath_NorthSouthTunnel/scripts.inc
new file mode 100644
index 000000000..237373dc8
--- /dev/null
+++ b/data/maps/UndergroundPath_NorthSouthTunnel/scripts.inc
@@ -0,0 +1,7 @@
+UndergroundPath_NorthSouthTunnel_MapScripts:: @ 8160EB5
+ map_script 3, UndergroundPath_NorthSouthTunnel_MapScript1_160EBB
+ .byte 0
+
+UndergroundPath_NorthSouthTunnel_MapScript1_160EBB:: @ 8160EBB
+ setworldmapflag 2215
+ end
diff --git a/data/maps/UndergroundPath_SouthEntrance/scripts.inc b/data/maps/UndergroundPath_SouthEntrance/scripts.inc
new file mode 100644
index 000000000..c425e67d4
--- /dev/null
+++ b/data/maps/UndergroundPath_SouthEntrance/scripts.inc
@@ -0,0 +1,7 @@
+UndergroundPath_SouthEntrance_MapScripts:: @ 8160EBF
+ .byte 0
+
+UndergroundPath_SouthEntrance_EventScript_160EC0:: @ 8160EC0
+ loadword 0, gUnknown_8174559
+ callstd 2
+ end
diff --git a/data/maps/UndergroundPath_WestEntrance/scripts.inc b/data/maps/UndergroundPath_WestEntrance/scripts.inc
new file mode 100644
index 000000000..77a20cf4b
--- /dev/null
+++ b/data/maps/UndergroundPath_WestEntrance/scripts.inc
@@ -0,0 +1,7 @@
+UndergroundPath_WestEntrance_MapScripts:: @ 8160EC9
+ .byte 0
+
+UndergroundPath_WestEntrance_EventScript_160ECA:: @ 8160ECA
+ loadword 0, gUnknown_817459B
+ callstd 2
+ end
diff --git a/data/maps/UnknownMap_00_00/scripts.inc b/data/maps/UnknownMap_00_00/scripts.inc
new file mode 100644
index 000000000..73507301f
--- /dev/null
+++ b/data/maps/UnknownMap_00_00/scripts.inc
@@ -0,0 +1,2 @@
+UnknownMap_00_00_MapScripts:: @ 8160478
+ .byte 0
diff --git a/data/maps/UnknownMap_00_01/scripts.inc b/data/maps/UnknownMap_00_01/scripts.inc
new file mode 100644
index 000000000..c419b60c7
--- /dev/null
+++ b/data/maps/UnknownMap_00_01/scripts.inc
@@ -0,0 +1,2 @@
+UnknownMap_00_01_MapScripts:: @ 8160479
+ .byte 0
diff --git a/data/maps/UnknownMap_00_02/scripts.inc b/data/maps/UnknownMap_00_02/scripts.inc
new file mode 100644
index 000000000..ab36a21eb
--- /dev/null
+++ b/data/maps/UnknownMap_00_02/scripts.inc
@@ -0,0 +1,2 @@
+UnknownMap_00_02_MapScripts:: @ 816047A
+ .byte 0
diff --git a/data/maps/UnknownMap_00_03/scripts.inc b/data/maps/UnknownMap_00_03/scripts.inc
new file mode 100644
index 000000000..feca41b0f
--- /dev/null
+++ b/data/maps/UnknownMap_00_03/scripts.inc
@@ -0,0 +1,2 @@
+UnknownMap_00_03_MapScripts:: @ 816047B
+ .byte 0
diff --git a/data/maps/UnknownMap_00_04/scripts.inc b/data/maps/UnknownMap_00_04/scripts.inc
new file mode 100644
index 000000000..739bdee00
--- /dev/null
+++ b/data/maps/UnknownMap_00_04/scripts.inc
@@ -0,0 +1,106 @@
+UnknownMap_00_04_MapScripts:: @ 816047C
+ map_script 5, UnknownMap_00_04_MapScript1_160487
+ map_script 3, UnknownMap_00_04_MapScript2_1604BB
+ .byte 0
+
+UnknownMap_00_04_MapScript1_160487:: @ 8160487
+ setflag FLAG_0x063
+ setflag FLAG_0x064
+ setflag FLAG_0x065
+ setflag FLAG_0x066
+ setflag FLAG_0x067
+ setflag FLAG_0x068
+ setflag FLAG_0x069
+ setflag FLAG_0x06A
+ removeobject 9
+ removeobject 8
+ removeobject 7
+ removeobject 2
+ removeobject 6
+ removeobject 5
+ removeobject 4
+ removeobject 3
+ special UnionRoomSpecial
+ end
+
+UnknownMap_00_04_MapScript2_1604BB:: @ 81604BB
+ end
+
+UnknownMap_00_04_EventScript_1604BC:: @ 81604BC
+ lock
+ faceplayer
+ setvar VAR_RESULT, 1
+ waitstate
+ release
+ end
+
+UnknownMap_00_04_EventScript_1604C6:: @ 81604C6
+ lock
+ faceplayer
+ setvar VAR_RESULT, 2
+ waitstate
+ release
+ end
+
+UnknownMap_00_04_EventScript_1604D0:: @ 81604D0
+ lock
+ faceplayer
+ setvar VAR_RESULT, 3
+ waitstate
+ release
+ end
+
+UnknownMap_00_04_EventScript_1604DA:: @ 81604DA
+ lock
+ faceplayer
+ setvar VAR_RESULT, 4
+ waitstate
+ release
+ end
+
+UnknownMap_00_04_EventScript_1604E4:: @ 81604E4
+ lock
+ faceplayer
+ setvar VAR_RESULT, 5
+ waitstate
+ release
+ end
+
+UnknownMap_00_04_EventScript_1604EE:: @ 81604EE
+ lock
+ faceplayer
+ setvar VAR_RESULT, 6
+ waitstate
+ release
+ end
+
+UnknownMap_00_04_EventScript_1604F8:: @ 81604F8
+ lock
+ faceplayer
+ setvar VAR_RESULT, 7
+ waitstate
+ release
+ end
+
+UnknownMap_00_04_EventScript_160502:: @ 8160502
+ lock
+ faceplayer
+ setvar VAR_RESULT, 8
+ waitstate
+ release
+ end
+
+UnknownMap_00_04_EventScript_16050C:: @ 816050C
+ lock
+ faceplayer
+ setvar VAR_RESULT, 9
+ waitstate
+ release
+ end
+
+UnknownMap_00_04_EventScript_160516:: @ 8160516
+ lockall
+ setvar VAR_RESULT, 10
+ waitstate
+ releaseall
+ end
diff --git a/data/maps/UnknownMap_03_50/scripts.inc b/data/maps/UnknownMap_03_50/scripts.inc
new file mode 100644
index 000000000..c18211933
--- /dev/null
+++ b/data/maps/UnknownMap_03_50/scripts.inc
@@ -0,0 +1,2 @@
+UnknownMap_03_50_MapScripts:: @ 81687E0
+ .byte 0
diff --git a/data/maps/UnknownMap_03_51/scripts.inc b/data/maps/UnknownMap_03_51/scripts.inc
new file mode 100644
index 000000000..09f9ef2d4
--- /dev/null
+++ b/data/maps/UnknownMap_03_51/scripts.inc
@@ -0,0 +1,2 @@
+UnknownMap_03_51_MapScripts:: @ 81687E1
+ .byte 0
diff --git a/data/maps/UnknownMap_03_52/scripts.inc b/data/maps/UnknownMap_03_52/scripts.inc
new file mode 100644
index 000000000..15fc8b160
--- /dev/null
+++ b/data/maps/UnknownMap_03_52/scripts.inc
@@ -0,0 +1,2 @@
+UnknownMap_03_52_MapScripts:: @ 81687E2
+ .byte 0
diff --git a/data/maps/UnknownMap_03_53/scripts.inc b/data/maps/UnknownMap_03_53/scripts.inc
new file mode 100644
index 000000000..2ef4453ea
--- /dev/null
+++ b/data/maps/UnknownMap_03_53/scripts.inc
@@ -0,0 +1,2 @@
+UnknownMap_03_53_MapScripts:: @ 81687E3
+ .byte 0
diff --git a/data/maps/UnknownMap_18_01/scripts.inc b/data/maps/UnknownMap_18_01/scripts.inc
new file mode 100644
index 000000000..461deaf9b
--- /dev/null
+++ b/data/maps/UnknownMap_18_01/scripts.inc
@@ -0,0 +1,2 @@
+UnknownMap_18_01_MapScripts:: @ 816FA8C
+ .byte 0
diff --git a/data/maps/UnusedHouse_27_00/scripts.inc b/data/maps/UnusedHouse_27_00/scripts.inc
new file mode 100644
index 000000000..02c992573
--- /dev/null
+++ b/data/maps/UnusedHouse_27_00/scripts.inc
@@ -0,0 +1,2 @@
+UnusedHouse_27_00_MapScripts:: @ 81704FA
+ .byte 0
diff --git a/data/maps/UnusedHouse_29_00/scripts.inc b/data/maps/UnusedHouse_29_00/scripts.inc
new file mode 100644
index 000000000..7e984394b
--- /dev/null
+++ b/data/maps/UnusedHouse_29_00/scripts.inc
@@ -0,0 +1,2 @@
+UnusedHouse_29_00_MapScripts:: @ 8170522
+ .byte 0
diff --git a/data/maps/UnusedHouse_31_05/scripts.inc b/data/maps/UnusedHouse_31_05/scripts.inc
new file mode 100644
index 000000000..11dae233d
--- /dev/null
+++ b/data/maps/UnusedHouse_31_05/scripts.inc
@@ -0,0 +1,2 @@
+UnusedHouse_31_05_MapScripts:: @ 8170BE3
+ .byte 0
diff --git a/data/maps/VermilionCity/scripts.inc b/data/maps/VermilionCity/scripts.inc
new file mode 100644
index 000000000..b516e0939
--- /dev/null
+++ b/data/maps/VermilionCity/scripts.inc
@@ -0,0 +1,330 @@
+VermilionCity_MapScripts:: @ 81668DC
+ map_script 3, VermilionCity_MapScript1_166906
+ map_script 2, VermilionCity_MapScript2_1668E7
+ .byte 0
+
+VermilionCity_MapScript2_1668E7:: @ 81668E7
+ map_script_2 VAR_0x407E, 2, EventScript_1668F1
+ .2byte 0
+
+EventScript_1668F1:: @ 81668F1
+ lockall
+ applymovement 255, Movement_166903
+ waitmovement 0
+ setvar VAR_0x407E, 3
+ releaseall
+ end
+
+Movement_166903:: @ 8166903
+ step_11
+ step_11
+ step_end
+
+VermilionCity_MapScript1_166906:: @ 8166906
+ setworldmapflag 2197
+ checkflag FLAG_0x2F9
+ call_if 1, EventScript_166913
+ end
+
+EventScript_166913:: @ 8166913
+ setflag FLAG_0x0A1
+ return
+
+VermilionCity_EventScript_166917:: @ 8166917
+ loadword 0, gUnknown_817F723
+ callstd 2
+ end
+
+VermilionCity_EventScript_166920:: @ 8166920
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x407E, 3
+ goto_if 1, EventScript_166937
+ loadword 0, gUnknown_817F776
+ callstd 4
+ release
+ end
+
+EventScript_166937:: @ 8166937
+ loadword 0, gUnknown_817F7A6
+ callstd 4
+ release
+ end
+
+VermilionCity_EventScript_166941:: @ 8166941
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x407E, 3
+ goto_if 1, EventScript_166996
+ loadword 0, gUnknown_817FA22
+ callstd 4
+ release
+ end
+
+EventScript_166958:: @ 8166958
+ checkflag 2122
+ goto_if 0, EventScript_1A77B0
+ checkitem ITEM_MYSTIC_TICKET, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A77B0
+ goto EventScript_1A77AA
+ end
+
+EventScript_166977:: @ 8166977
+ checkflag 2123
+ goto_if 0, EventScript_1A77B0
+ checkitem ITEM_AURORA_TICKET, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_1A77B0
+ goto EventScript_1A77AA
+ end
+
+EventScript_166996:: @ 8166996
+ setvar VAR_0x8004, 0
+ compare_var_to_value VAR_0x4076, 5
+ goto_if 4, EventScript_1669BB
+ compare_var_to_value VAR_0x4076, 1
+ goto_if 4, EventScript_166B3B
+ loadword 0, gUnknown_817FB10
+ callstd 4
+ release
+ end
+
+EventScript_1669BB:: @ 81669BB
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ call EventScript_166958
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_1669FD
+ call EventScript_166977
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_166A5F
+ setvar VAR_0x8004, 0
+ message Text_17FBB8
+ waitmessage
+ goto EventScript_1A911E
+ end
+
+EventScript_1669FD:: @ 81669FD
+ call EventScript_166977
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_166AB1
+ checkflag FLAG_0x2F0
+ call_if 0, EventScript_166A53
+ message Text_17FCC1
+ waitmessage
+ multichoice 17, 6, 54, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_1A911E
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_166B0B
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_1A90F6
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_1A90F6
+ end
+
+EventScript_166A53:: @ 8166A53
+ setflag FLAG_0x2F0
+ loadword 0, gUnknown_817FC00
+ callstd 4
+ return
+
+EventScript_166A5F:: @ 8166A5F
+ checkflag FLAG_0x2F1
+ call_if 0, EventScript_166AA5
+ message Text_17FCC1
+ waitmessage
+ multichoice 13, 6, 55, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_1A911E
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_166B23
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_1A90F6
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_1A90F6
+ end
+
+EventScript_166AA5:: @ 8166AA5
+ setflag FLAG_0x2F1
+ loadword 0, gUnknown_817FC5F
+ callstd 4
+ return
+
+EventScript_166AB1:: @ 8166AB1
+ checkflag FLAG_0x2F0
+ call_if 0, EventScript_166A53
+ checkflag FLAG_0x2F1
+ call_if 0, EventScript_166AA5
+ message Text_17FCC1
+ waitmessage
+ multichoice 13, 5, 56, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_1A911E
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_166B0B
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_166B23
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_1A90F6
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_1A90F6
+ end
+
+EventScript_166B0B:: @ 8166B0B
+ loadword 0, gUnknown_817FCEC
+ callstd 4
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8006, 9
+ goto EventScript_1A90DA
+ end
+
+EventScript_166B23:: @ 8166B23
+ loadword 0, gUnknown_817FD5F
+ callstd 4
+ setvar VAR_0x8004, 0
+ setvar VAR_0x8006, 10
+ goto EventScript_1A90DA
+ end
+
+EventScript_166B3B:: @ 8166B3B
+ message Text_17FB23
+ waitmessage
+ setvar VAR_0x8004, 0
+ multichoice 19, 5, 57, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_1A8FEE
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_1A8FF9
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_1A9004
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_1A90F6
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_1A90F6
+ end
+
+EventScript_166B88:: @ 8166B88
+ release
+ end
+
+VermilionCity_EventScript_166B8A:: @ 8166B8A
+ lockall
+ goto EventScript_166BA0
+ end
+
+VermilionCity_EventScript_166B91:: @ 8166B91
+ lockall
+ goto EventScript_166BA0
+ end
+
+VermilionCity_EventScript_166B98:: @ 8166B98
+ lockall
+ setvar VAR_0x4053, 0
+ releaseall
+ end
+
+EventScript_166BA0:: @ 8166BA0
+ textcolor 0
+ applymovement 6, Movement_1A75E7
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ compare_var_to_value VAR_0x407E, 3
+ goto_if 1, EventScript_166BED
+ loadword 0, gUnknown_817FA3C
+ callstd 4
+ checkflag FLAG_0x234
+ goto_if 0, EventScript_166BDE
+ loadword 0, gUnknown_817FA77
+ callstd 4
+ setvar VAR_0x4053, 1
+ releaseall
+ end
+
+EventScript_166BDE:: @ 8166BDE
+ loadword 0, gUnknown_817FABA
+ callstd 4
+ closemessage
+ goto EventScript_1A9108
+ end
+
+EventScript_166BED:: @ 8166BED
+ setvar VAR_0x8004, 0
+ compare_var_to_value VAR_0x4076, 5
+ goto_if 4, EventScript_1669BB
+ compare_var_to_value VAR_0x4076, 1
+ goto_if 4, EventScript_166B3B
+ loadword 0, gUnknown_817FB10
+ callstd 4
+ closemessage
+ goto EventScript_1A9108
+ end
+
+VermilionCity_EventScript_166C17:: @ 8166C17
+ loadword 0, gUnknown_817F8AC
+ callstd 2
+ end
+
+VermilionCity_EventScript_166C20:: @ 8166C20
+ lock
+ faceplayer
+ setflag FLAG_0x2F9
+ loadword 0, gUnknown_817FDD2
+ callstd 4
+ release
+ end
+
+VermilionCity_EventScript_166C2F:: @ 8166C2F
+ loadword 0, gUnknown_817F7FD
+ callstd 2
+ end
+
+VermilionCity_EventScript_166C38:: @ 8166C38
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_MACHOP, 0
+ loadword 0, gUnknown_817F871
+ callstd 4
+ waitmoncry
+ loadword 0, gUnknown_817F888
+ callstd 4
+ release
+ end
+
+VermilionCity_EventScript_166C53:: @ 8166C53
+ loadword 0, gUnknown_817F8FB
+ callstd 3
+ end
+
+VermilionCity_EventScript_166C5C:: @ 8166C5C
+ loadword 0, gUnknown_817F928
+ callstd 3
+ end
+
+VermilionCity_EventScript_166C65:: @ 8166C65
+ loadword 0, gUnknown_817F9A1
+ callstd 3
+ end
+
+VermilionCity_EventScript_166C6E:: @ 8166C6E
+ lockall
+ setvar VAR_0x8004, 4
+ setvar VAR_0x8005, 0
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_817F9CC
+ callstd 4
+ releaseall
+ end
+
+VermilionCity_EventScript_166C86:: @ 8166C86
+ loadword 0, gUnknown_817FA11
+ callstd 3
+ end
diff --git a/data/maps/VermilionCity_Gym/scripts.inc b/data/maps/VermilionCity_Gym/scripts.inc
new file mode 100644
index 000000000..3d8cd6a52
--- /dev/null
+++ b/data/maps/VermilionCity_Gym/scripts.inc
@@ -0,0 +1,329 @@
+VermilionCity_Gym_MapScripts:: @ 816B69E
+ map_script 1, VermilionCity_Gym_MapScript1_16B6A9
+ map_script 3, VermilionCity_Gym_MapScript2_16B772
+ .byte 0
+
+VermilionCity_Gym_MapScript1_16B6A9:: @ 816B6A9
+ checkflag FLAG_0x001
+ call_if 1, EventScript_16B6BC
+ checkflag FLAG_0x264
+ call_if 1, EventScript_16B717
+ end
+
+EventScript_16B6BC:: @ 816B6BC
+ setmetatile 3, 6, 699, 1
+ setmetatile 4, 6, 700, 1
+ setmetatile 5, 6, 701, 1
+ setmetatile 6, 6, 702, 1
+ setmetatile 7, 6, 703, 1
+ setmetatile 3, 7, 707, 1
+ setmetatile 4, 7, 708, 1
+ setmetatile 5, 7, 709, 1
+ setmetatile 6, 7, 710, 1
+ setmetatile 7, 7, 711, 1
+ return
+
+EventScript_16B717:: @ 816B717
+ setmetatile 3, 6, 659, 1
+ setmetatile 4, 6, 660, 0
+ setmetatile 5, 6, 641, 0
+ setmetatile 6, 6, 661, 0
+ setmetatile 7, 6, 662, 1
+ setmetatile 3, 7, 667, 1
+ setmetatile 4, 7, 668, 0
+ setmetatile 5, 7, 641, 0
+ setmetatile 6, 7, 669, 0
+ setmetatile 7, 7, 670, 1
+ return
+
+VermilionCity_Gym_MapScript2_16B772:: @ 816B772
+ call EventScript_16B778
+ end
+
+EventScript_16B778:: @ 816B778
+ checkflag FLAG_0x264
+ goto_if 1, EventScript_1A77A9
+ special sub_80CADEC
+ copyvar VAR_0x4000, VAR_0x8004
+ copyvar VAR_0x4001, VAR_0x8005
+ return
+
+VermilionCity_Gym_EventScript_16B78F:: @ 816B78F
+ lockall
+ setvar VAR_0x8008, 1
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B79B:: @ 816B79B
+ lockall
+ setvar VAR_0x8008, 2
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B7A7:: @ 816B7A7
+ lockall
+ setvar VAR_0x8008, 3
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B7B3:: @ 816B7B3
+ lockall
+ setvar VAR_0x8008, 4
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B7BF:: @ 816B7BF
+ lockall
+ setvar VAR_0x8008, 5
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B7CB:: @ 816B7CB
+ lockall
+ setvar VAR_0x8008, 6
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B7D7:: @ 816B7D7
+ lockall
+ setvar VAR_0x8008, 7
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B7E3:: @ 816B7E3
+ lockall
+ setvar VAR_0x8008, 8
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B7EF:: @ 816B7EF
+ lockall
+ setvar VAR_0x8008, 9
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B7FB:: @ 816B7FB
+ lockall
+ setvar VAR_0x8008, 10
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B807:: @ 816B807
+ lockall
+ setvar VAR_0x8008, 11
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B813:: @ 816B813
+ lockall
+ setvar VAR_0x8008, 12
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B81F:: @ 816B81F
+ lockall
+ setvar VAR_0x8008, 13
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B82B:: @ 816B82B
+ lockall
+ setvar VAR_0x8008, 14
+ goto EventScript_16B843
+ end
+
+VermilionCity_Gym_EventScript_16B837:: @ 816B837
+ lockall
+ setvar VAR_0x8008, 15
+ goto EventScript_16B843
+ end
+
+EventScript_16B843:: @ 816B843
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ copyvar VAR_0x8004, VAR_0x4000
+ copyvar VAR_0x8005, VAR_0x4001
+ checkflag FLAG_0x264
+ goto_if 1, EventScript_16B8E5
+ checkflag FLAG_0x001
+ goto_if 1, EventScript_16B89E
+ compare_var_to_var VAR_0x8004, VAR_0x8008
+ goto_if 1, EventScript_16B885
+ loadword 0, gUnknown_8195289
+ callstd 4
+ releaseall
+ end
+
+EventScript_16B885:: @ 816B885
+ loadword 0, gUnknown_81952A8
+ callstd 4
+ playse SE_PIN
+ waitse
+ call EventScript_16B6BC
+ special DrawWholeMapView
+ setflag FLAG_0x001
+ releaseall
+ end
+
+EventScript_16B89E:: @ 816B89E
+ compare_var_to_var VAR_0x8005, VAR_0x8008
+ goto_if 1, EventScript_16B8CB
+ loadword 0, gUnknown_819536C
+ callstd 4
+ clearflag FLAG_0x001
+ special sub_80CADEC
+ copyvar VAR_0x4000, VAR_0x8004
+ copyvar VAR_0x4001, VAR_0x8005
+ call EventScript_16B8EF
+ special DrawWholeMapView
+ releaseall
+ end
+
+EventScript_16B8CB:: @ 816B8CB
+ loadword 0, gUnknown_8195330
+ callstd 4
+ closemessage
+ call EventScript_16B717
+ special DrawWholeMapView
+ playse SE_FU_ZAKU2
+ waitse
+ setflag FLAG_0x264
+ releaseall
+ end
+
+EventScript_16B8E5:: @ 816B8E5
+ loadword 0, gUnknown_8195289
+ callstd 4
+ releaseall
+ end
+
+EventScript_16B8EF:: @ 816B8EF
+ setmetatile 3, 6, 681, 1
+ setmetatile 4, 6, 682, 1
+ setmetatile 5, 6, 645, 1
+ setmetatile 6, 6, 683, 1
+ setmetatile 7, 6, 684, 1
+ setmetatile 3, 7, 689, 1
+ setmetatile 4, 7, 690, 1
+ setmetatile 5, 7, 653, 1
+ setmetatile 6, 7, 691, 1
+ setmetatile 7, 7, 692, 1
+ return
+
+VermilionCity_Gym_EventScript_16B94A:: @ 816B94A
+ setvar VAR_0x8004, 4
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ trainerbattle 1, 416, 0, Text_194BA4, Text_194E03, EventScript_16B97C
+ checkflag FLAG_0x231
+ goto_if 0, EventScript_16B9AF
+ loadword 0, gUnknown_8194C8E
+ callstd 4
+ release
+ end
+
+EventScript_16B97C:: @ 816B97C
+ setvar VAR_0x8004, 4
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ checkflag FLAG_0x23B
+ call_if 0, EventScript_16B9AB
+ clearflag FLAG_0x0A0
+ setflag FLAG_0x4B2
+ setflag 2082
+ setvar VAR_0x8008, 3
+ call EventScript_1A6B18
+ goto EventScript_16B9AF
+ end
+
+EventScript_16B9AB:: @ 816B9AB
+ clearflag FLAG_0x0A1
+ return
+
+EventScript_16B9AF:: @ 816B9AF
+ loadword 0, gUnknown_8194CFA
+ callstd 4
+ checkitemspace ITEM_TM34, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16B9F0
+ additem ITEM_TM34, 1
+ loadword 0, gUnknown_8194D87
+ setorcopyvar VAR_0x8000, 322
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x231
+ loadword 0, gUnknown_8194DA8
+ callstd 4
+ release
+ end
+
+EventScript_16B9F0:: @ 816B9F0
+ loadword 0, gUnknown_8194DE3
+ callstd 4
+ release
+ end
+
+VermilionCity_Gym_EventScript_16B9FA:: @ 816B9FA
+ trainerbattle 0, 141, 0, Text_194FBD, Text_194FF1
+ setvar VAR_0x8004, 4
+ setvar VAR_0x8005, 4
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8195004
+ callstd 6
+ end
+
+VermilionCity_Gym_EventScript_16BA1E:: @ 816BA1E
+ trainerbattle 0, 220, 0, Text_194F1F, Text_194F6F
+ loadword 0, gUnknown_8194F76
+ callstd 6
+ end
+
+VermilionCity_Gym_EventScript_16BA35:: @ 816BA35
+ trainerbattle 2, 423, 0, Text_194E57, Text_194EA5, EventScript_16BA5D
+ setvar VAR_0x8004, 4
+ setvar VAR_0x8005, 3
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8194EBD
+ callstd 6
+ end
+
+EventScript_16BA5D:: @ 816BA5D
+ setvar VAR_0x8004, 4
+ setvar VAR_0x8005, 2
+ special SetFlavorTextFlagFromSpecialVars
+ release
+ end
+
+VermilionCity_Gym_EventScript_16BA6C:: @ 816BA6C
+ lock
+ faceplayer
+ checkflag FLAG_0x4B2
+ goto_if 1, EventScript_16BA81
+ loadword 0, gUnknown_81950B4
+ callstd 4
+ release
+ end
+
+EventScript_16BA81:: @ 816BA81
+ loadword 0, gUnknown_81951EC
+ callstd 4
+ release
+ end
+
+VermilionCity_Gym_EventScript_16BA8B:: @ 816BA8B
+ lockall
+ checkflag 2082
+ goto_if 1, EventScript_16BA9F
+ loadword 0, gUnknown_819520B
+ callstd 4
+ releaseall
+ end
+
+EventScript_16BA9F:: @ 816BA9F
+ loadword 0, gUnknown_8195248
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/VermilionCity_House1/scripts.inc b/data/maps/VermilionCity_House1/scripts.inc
new file mode 100644
index 000000000..984961c29
--- /dev/null
+++ b/data/maps/VermilionCity_House1/scripts.inc
@@ -0,0 +1,46 @@
+VermilionCity_House1_MapScripts:: @ 816B3A6
+ .byte 0
+
+VermilionCity_House1_EventScript_16B3A7:: @ 816B3A7
+ lock
+ faceplayer
+ checkflag FLAG_0x240
+ goto_if 1, EventScript_16B3CF
+ loadword 0, gUnknown_8193EC1
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16B3D9
+ loadword 0, gUnknown_8194028
+ callstd 4
+ release
+ end
+
+EventScript_16B3CF:: @ 816B3CF
+ loadword 0, gUnknown_8194045
+ callstd 4
+ release
+ end
+
+EventScript_16B3D9:: @ 816B3D9
+ checkitemspace ITEM_OLD_ROD, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16B41A
+ additem ITEM_OLD_ROD, 1
+ loadword 0, gUnknown_8193F2A
+ callstd 4
+ loadword 0, gUnknown_8193F81
+ setorcopyvar VAR_0x8000, 262
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x240
+ loadword 0, gUnknown_8193FAF
+ callstd 4
+ release
+ end
+
+EventScript_16B41A:: @ 816B41A
+ loadword 0, gUnknown_819406F
+ callstd 4
+ release
+ end
diff --git a/data/maps/VermilionCity_House2/scripts.inc b/data/maps/VermilionCity_House2/scripts.inc
new file mode 100644
index 000000000..9179fa716
--- /dev/null
+++ b/data/maps/VermilionCity_House2/scripts.inc
@@ -0,0 +1 @@
+@ .include "data/maps/VermilionCity_House2/scripts.inc"
diff --git a/data/maps/VermilionCity_House3/scripts.inc b/data/maps/VermilionCity_House3/scripts.inc
new file mode 100644
index 000000000..0624992be
--- /dev/null
+++ b/data/maps/VermilionCity_House3/scripts.inc
@@ -0,0 +1,28 @@
+VermilionCity_House3_MapScripts:: @ 816BAA9
+ .byte 0
+
+VermilionCity_House3_EventScript_16BAAA:: @ 816BAAA
+ loadword 0, gUnknown_81953AF
+ callstd 2
+ end
+
+VermilionCity_House3_EventScript_16BAB3:: @ 816BAB3
+ loadword 0, gUnknown_8195471
+ callstd 2
+ end
+
+VermilionCity_House3_EventScript_16BABC:: @ 816BABC
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_PIDGEY, 0
+ loadword 0, gUnknown_81953EE
+ callstd 4
+ waitmoncry
+ release
+ end
+
+VermilionCity_House3_EventScript_16BACF:: @ 816BACF
+ loadword 0, gUnknown_8195400
+ callstd 3
+ end
diff --git a/data/maps/VermilionCity_Mart/scripts.inc b/data/maps/VermilionCity_Mart/scripts.inc
new file mode 100644
index 000000000..712e0c6df
--- /dev/null
+++ b/data/maps/VermilionCity_Mart/scripts.inc
@@ -0,0 +1,39 @@
+VermilionCity_Mart_MapScripts:: @ 816B653
+ .byte 0
+
+VermilionCity_Mart_EventScript_16B654:: @ 816B654
+ loadword 0, gUnknown_8194B65
+ callstd 2
+ end
+
+VermilionCity_Mart_EventScript_16B65D:: @ 816B65D
+ loadword 0, gUnknown_8194A77
+ callstd 2
+ end
+
+VermilionCity_Mart_EventScript_16B666:: @ 816B666
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ lock
+ faceplayer
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16B68C
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16B68C:: @ 816B68C
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_SUPER_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_AWAKENING
+ .2byte ITEM_ICE_HEAL
+ .2byte ITEM_REPEL
+ .2byte ITEM_NONE
+ release
+ end
diff --git a/data/maps/VermilionCity_PokemonCenter_1F/scripts.inc b/data/maps/VermilionCity_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..d6a5c01f2
--- /dev/null
+++ b/data/maps/VermilionCity_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,30 @@
+VermilionCity_PokemonCenter_1F_MapScripts:: @ 816B424
+ map_script 3, VermilionCity_PokemonCenter_1F_MapScript1_16B42F
+ map_script 5, VermilionCity_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+VermilionCity_PokemonCenter_1F_MapScript1_16B42F:: @ 816B42F
+ setrespawn 6
+ end
+
+VermilionCity_PokemonCenter_1F_EventScript_16B433:: @ 816B433
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+VermilionCity_PokemonCenter_1F_EventScript_16B43C:: @ 816B43C
+ loadword 0, gUnknown_8194145
+ callstd 2
+ end
+
+VermilionCity_PokemonCenter_1F_EventScript_16B445:: @ 816B445
+ loadword 0, gUnknown_81940AF
+ callstd 2
+ end
+
+VermilionCity_PokemonCenter_1F_EventScript_16B44E:: @ 816B44E
+ loadword 0, gUnknown_8194180
+ callstd 2
+ end
diff --git a/data/maps/VermilionCity_PokemonCenter_2F/scripts.inc b/data/maps/VermilionCity_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..d6ddecd4a
--- /dev/null
+++ b/data/maps/VermilionCity_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+VermilionCity_PokemonCenter_2F_MapScripts:: @ 816B457
+ map_script 2, VermilionCity_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, VermilionCity_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, VermilionCity_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, VermilionCity_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+VermilionCity_PokemonCenter_2F_EventScript_16B46C:: @ 816B46C
+ call EventScript_1BB4A3
+ end
+
+EventScript_16B472:: @ 816B472
+ call EventScript_1BB6AB
+ end
+
+EventScript_16B478:: @ 816B478
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/VermilionCity_PokemonFanClub/scripts.inc b/data/maps/VermilionCity_PokemonFanClub/scripts.inc
new file mode 100644
index 000000000..d963b6ef3
--- /dev/null
+++ b/data/maps/VermilionCity_PokemonFanClub/scripts.inc
@@ -0,0 +1,191 @@
+VermilionCity_PokemonFanClub_MapScripts:: @ 816B47E
+ .byte 0
+
+VermilionCity_PokemonFanClub_EventScript_16B47F:: @ 816B47F
+ lock
+ faceplayer
+ checkflag FLAG_0x241
+ goto_if 1, EventScript_16B4A7
+ loadword 0, gUnknown_819457E
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_16B4B1
+ loadword 0, gUnknown_8194860
+ callstd 4
+ release
+ end
+
+EventScript_16B4A7:: @ 816B4A7
+ loadword 0, gUnknown_819488E
+ callstd 4
+ release
+ end
+
+EventScript_16B4B1:: @ 816B4B1
+ loadword 0, gUnknown_8194628
+ callstd 4
+ checkitemspace ITEM_BIKE_VOUCHER, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16B4F2
+ setflag FLAG_0x241
+ additem ITEM_BIKE_VOUCHER, 1
+ loadword 0, gUnknown_819474E
+ setorcopyvar VAR_0x8000, 352
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ loadword 0, gUnknown_819477C
+ callstd 4
+ release
+ end
+
+EventScript_16B4F2:: @ 816B4F2
+ loadword 0, gUnknown_81948D2
+ callstd 4
+ release
+ end
+
+VermilionCity_PokemonFanClub_EventScript_16B4FC:: @ 816B4FC
+ lock
+ faceplayer
+ checkflag 2092
+ goto_if 1, EventScript_16B511
+ loadword 0, gUnknown_81948E6
+ callstd 4
+ release
+ end
+
+EventScript_16B511:: @ 816B511
+ setvar VAR_0x8004, 1
+ setvar VAR_0x8005, 1
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_8194960
+ callstd 4
+ release
+ end
+
+VermilionCity_PokemonFanClub_EventScript_16B528:: @ 816B528
+ lock
+ faceplayer
+ checkflag FLAG_0x003
+ goto_if 1, EventScript_16B54B
+ loadword 0, gUnknown_81944CC
+ callstd 4
+ closemessage
+ applymovement 5, Movement_1A75E5
+ waitmovement 0
+ setflag FLAG_0x002
+ release
+ end
+
+EventScript_16B54B:: @ 816B54B
+ loadword 0, gUnknown_8194518
+ callstd 4
+ closemessage
+ applymovement 5, Movement_1A75E5
+ waitmovement 0
+ clearflag FLAG_0x003
+ release
+ end
+
+VermilionCity_PokemonFanClub_EventScript_16B563:: @ 816B563
+ lock
+ faceplayer
+ checkflag FLAG_0x002
+ goto_if 1, EventScript_16B586
+ loadword 0, gUnknown_819446F
+ callstd 4
+ closemessage
+ applymovement 6, Movement_1A75E5
+ waitmovement 0
+ setflag FLAG_0x003
+ release
+ end
+
+EventScript_16B586:: @ 816B586
+ loadword 0, gUnknown_819449C
+ callstd 4
+ closemessage
+ applymovement 6, Movement_1A75E5
+ waitmovement 0
+ clearflag FLAG_0x002
+ release
+ end
+
+VermilionCity_PokemonFanClub_EventScript_16B59E:: @ 816B59E
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_PIKACHU, 0
+ loadword 0, gUnknown_819455A
+ callstd 4
+ waitmoncry
+ release
+ end
+
+VermilionCity_PokemonFanClub_EventScript_16B5B1:: @ 816B5B1
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_SEEL, 0
+ loadword 0, gUnknown_8194571
+ callstd 4
+ waitmoncry
+ release
+ end
+
+VermilionCity_PokemonFanClub_EventScript_16B5C4:: @ 816B5C4
+ loadword 0, gUnknown_8194910
+ callstd 3
+ end
+
+VermilionCity_PokemonFanClub_EventScript_16B5CD:: @ 816B5CD
+ loadword 0, gUnknown_819493D
+ callstd 3
+ end
+
+VermilionCity_House2_MapScripts:: @ 816B5D6
+ .byte 0
+
+VermilionCity_House2_EventScript_16B5D7:: @ 816B5D7
+ lock
+ faceplayer
+ setvar VAR_0x8008, 3
+ call EventScript_1A8CAD
+ checkflag FLAG_0x24D
+ goto_if 1, EventScript_16B649
+ loadword 0, gUnknown_81949CB
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16B631
+ call EventScript_1A8CBD
+ compare_var_to_value VAR_0x8004, 6
+ goto_if 4, EventScript_16B631
+ call EventScript_1A8CC9
+ compare_var_to_var VAR_RESULT, VAR_0x8009
+ goto_if 5, EventScript_16B63B
+ call EventScript_1A8CD9
+ loadword 0, gUnknown_8194A44
+ callstd 4
+ setflag FLAG_0x24D
+ release
+ end
+
+EventScript_16B631:: @ 816B631
+ loadword 0, gUnknown_81949FD
+ callstd 4
+ release
+ end
+
+EventScript_16B63B:: @ 816B63B
+ getspeciesname 0, 32777
+ loadword 0, gUnknown_8194A0D
+ callstd 4
+ release
+ end
+
+EventScript_16B649:: @ 816B649
+ loadword 0, gUnknown_8194A4F
+ callstd 4
+ release
+ end
diff --git a/data/maps/VictoryRoad_1F/scripts.inc b/data/maps/VictoryRoad_1F/scripts.inc
new file mode 100644
index 000000000..fbd89857b
--- /dev/null
+++ b/data/maps/VictoryRoad_1F/scripts.inc
@@ -0,0 +1,48 @@
+VictoryRoad_1F_MapScripts:: @ 8160F05
+ map_script 1, VictoryRoad_1F_MapScript1_160F10
+ map_script 3, VictoryRoad_1F_MapScript2_160F2F
+ .byte 0
+
+VictoryRoad_1F_MapScript1_160F10:: @ 8160F10
+ compare_var_to_value VAR_0x4064, 100
+ call_if 5, EventScript_160F1C
+ end
+
+EventScript_160F1C:: @ 8160F1C
+ setmetatile 12, 14, 775, 1
+ setmetatile 12, 15, 791, 1
+ return
+
+VictoryRoad_1F_MapScript2_160F2F:: @ 8160F2F
+ setworldmapflag 2218
+ end
+
+VictoryRoad_1F_EventScript_160F33:: @ 8160F33
+ lockall
+ compare_var_to_value VAR_0x4064, 100
+ goto_if 1, EventScript_160F62
+ setmetatile 12, 14, 721, 0
+ setmetatile 12, 15, 737, 0
+ playse SE_MU_PACHI
+ special DrawWholeMapView
+ waitse
+ moveobjectoffscreen 5
+ setvar VAR_0x4064, 100
+ releaseall
+ end
+
+EventScript_160F62:: @ 8160F62
+ releaseall
+ end
+
+VictoryRoad_1F_EventScript_160F64:: @ 8160F64
+ trainerbattle 0, 406, 0, Text_174710, Text_174738
+ loadword 0, gUnknown_8174744
+ callstd 6
+ end
+
+VictoryRoad_1F_EventScript_160F7B:: @ 8160F7B
+ trainerbattle 0, 396, 0, Text_174784, Text_1747B8
+ loadword 0, gUnknown_81747C8
+ callstd 6
+ end
diff --git a/data/maps/VictoryRoad_2F/scripts.inc b/data/maps/VictoryRoad_2F/scripts.inc
new file mode 100644
index 000000000..20476dac4
--- /dev/null
+++ b/data/maps/VictoryRoad_2F/scripts.inc
@@ -0,0 +1,86 @@
+VictoryRoad_2F_MapScripts:: @ 8160F92
+ map_script 1, VictoryRoad_2F_MapScript1_160F98
+ .byte 0
+
+VictoryRoad_2F_MapScript1_160F98:: @ 8160F98
+ compare_var_to_value VAR_0x4065, 100
+ call_if 5, EventScript_160FAF
+ compare_var_to_value VAR_0x4066, 100
+ call_if 5, EventScript_160FC2
+ end
+
+EventScript_160FAF:: @ 8160FAF
+ setmetatile 13, 10, 775, 1
+ setmetatile 13, 11, 791, 1
+ return
+
+EventScript_160FC2:: @ 8160FC2
+ setmetatile 33, 16, 775, 1
+ setmetatile 33, 17, 791, 1
+ return
+
+VictoryRoad_2F_EventScript_160FD5:: @ 8160FD5
+ lockall
+ compare_var_to_value VAR_0x4065, 100
+ goto_if 1, EventScript_161004
+ setmetatile 13, 10, 721, 0
+ setmetatile 13, 11, 737, 0
+ playse SE_MU_PACHI
+ special DrawWholeMapView
+ waitse
+ moveobjectoffscreen 11
+ setvar VAR_0x4065, 100
+ releaseall
+ end
+
+EventScript_161004:: @ 8161004
+ releaseall
+ end
+
+VictoryRoad_2F_EventScript_161006:: @ 8161006
+ lockall
+ compare_var_to_value VAR_0x4066, 100
+ goto_if 1, EventScript_161035
+ setmetatile 33, 16, 721, 0
+ setmetatile 33, 17, 737, 0
+ playse SE_MU_PACHI
+ special DrawWholeMapView
+ waitse
+ moveobjectoffscreen 12
+ setvar VAR_0x4066, 100
+ releaseall
+ end
+
+EventScript_161035:: @ 8161035
+ releaseall
+ end
+
+VictoryRoad_2F_EventScript_161037:: @ 8161037
+ trainerbattle 0, 167, 0, Text_1747EF, Text_17482C
+ loadword 0, gUnknown_817483E
+ callstd 6
+ end
+
+VictoryRoad_2F_EventScript_16104E:: @ 816104E
+ trainerbattle 0, 325, 0, Text_174877, Text_1748B4
+ loadword 0, gUnknown_81748BB
+ callstd 6
+ end
+
+VictoryRoad_2F_EventScript_161065:: @ 8161065
+ trainerbattle 0, 287, 0, Text_1748EE, Text_17491B
+ loadword 0, gUnknown_8174927
+ callstd 6
+ end
+
+VictoryRoad_2F_EventScript_16107C:: @ 816107C
+ trainerbattle 0, 290, 0, Text_174995, Text_1749B0
+ loadword 0, gUnknown_81749BB
+ callstd 6
+ end
+
+VictoryRoad_2F_EventScript_161093:: @ 8161093
+ trainerbattle 0, 298, 0, Text_174942, Text_17495A
+ loadword 0, gUnknown_8174969
+ callstd 6
+ end
diff --git a/data/maps/VictoryRoad_3F/scripts.inc b/data/maps/VictoryRoad_3F/scripts.inc
new file mode 100644
index 000000000..5172cbba9
--- /dev/null
+++ b/data/maps/VictoryRoad_3F/scripts.inc
@@ -0,0 +1,68 @@
+VictoryRoad_3F_MapScripts:: @ 81610AA
+ map_script 1, VictoryRoad_3F_MapScript1_1610B0
+ .byte 0
+
+VictoryRoad_3F_MapScript1_1610B0:: @ 81610B0
+ compare_var_to_value VAR_0x4067, 100
+ call_if 5, EventScript_1610BC
+ end
+
+EventScript_1610BC:: @ 81610BC
+ setmetatile 12, 12, 775, 1
+ setmetatile 12, 13, 791, 1
+ return
+
+VictoryRoad_3F_EventScript_1610CF:: @ 81610CF
+ lockall
+ compare_var_to_value VAR_0x4067, 100
+ goto_if 1, EventScript_161101
+ setmetatile 12, 12, 721, 0
+ setmetatile 12, 13, 737, 0
+ playse SE_MU_PACHI
+ special DrawWholeMapView
+ waitse
+ moveobjectoffscreen 7
+ moveobjectoffscreen 10
+ setvar VAR_0x4067, 100
+ releaseall
+ end
+
+EventScript_161101:: @ 8161101
+ releaseall
+ end
+
+VictoryRoad_3F_EventScript_161103:: @ 8161103
+ trainerbattle 0, 393, 0, Text_174B60, Text_174B83
+ loadword 0, gUnknown_8174B99
+ callstd 6
+ end
+
+VictoryRoad_3F_EventScript_16111A:: @ 816111A
+ trainerbattle 0, 394, 0, Text_174C8A, Text_174CA9
+ loadword 0, gUnknown_8174CBD
+ callstd 6
+ end
+
+VictoryRoad_3F_EventScript_161131:: @ 8161131
+ trainerbattle 0, 403, 0, Text_174C30, Text_174C5A
+ loadword 0, gUnknown_8174C67
+ callstd 6
+ end
+
+VictoryRoad_3F_EventScript_161148:: @ 8161148
+ trainerbattle 0, 404, 0, Text_174BCA, Text_174BF4
+ loadword 0, gUnknown_8174C03
+ callstd 6
+ end
+
+VictoryRoad_3F_EventScript_16115F:: @ 816115F
+ trainerbattle 4, 485, 0, Text_174D0C, Text_174D45, Text_174D96
+ loadword 0, gUnknown_8174D64
+ callstd 6
+ end
+
+VictoryRoad_3F_EventScript_16117A:: @ 816117A
+ trainerbattle 4, 485, 0, Text_174E08, Text_174E39, Text_174E8D
+ loadword 0, gUnknown_8174E48
+ callstd 6
+ end
diff --git a/data/maps/ViridianCity/scripts.inc b/data/maps/ViridianCity/scripts.inc
new file mode 100644
index 000000000..2f8f28b74
--- /dev/null
+++ b/data/maps/ViridianCity/scripts.inc
@@ -0,0 +1,284 @@
+ViridianCity_MapScripts:: @ 81658D3
+ map_script 3, ViridianCity_MapScript1_1658D9
+ .byte 0
+
+ViridianCity_MapScript1_1658D9:: @ 81658D9
+ setworldmapflag 2193
+ compare_var_to_value VAR_0x4051, 0
+ call_if 1, EventScript_165920
+ compare_var_to_value VAR_0x4051, 1
+ call_if 1, EventScript_16590F
+ compare_var_to_value VAR_0x4051, 2
+ call_if 4, EventScript_165909
+ compare_var_to_value VAR_0x405A, 0
+ call_if 1, EventScript_165931
+ end
+
+EventScript_165909:: @ 8165909
+ setvar VAR_0x4010, 32
+ return
+
+EventScript_16590F:: @ 816590F
+ setvar VAR_0x4010, 32
+ setobjectxyperm 4, 21, 8
+ setobjectmovementtype 4, 1
+ return
+
+EventScript_165920:: @ 8165920
+ setvar VAR_0x4010, 34
+ setobjectxyperm 4, 21, 11
+ setobjectmovementtype 4, 8
+ return
+
+EventScript_165931:: @ 8165931
+ checkflag 2081
+ goto_if 0, EventScript_1A77A9
+ checkflag 2082
+ goto_if 0, EventScript_1A77A9
+ checkflag 2083
+ goto_if 0, EventScript_1A77A9
+ checkflag FLAG_UNK824
+ goto_if 0, EventScript_1A77A9
+ checkflag 2085
+ goto_if 0, EventScript_1A77A9
+ checkflag FLAG_UNK826
+ goto_if 0, EventScript_1A77A9
+ setvar VAR_0x405A, 1
+ return
+
+ViridianCity_EventScript_16596D:: @ 816596D
+ lockall
+ textcolor 3
+ applymovement 255, Movement_1A75E9
+ waitmovement 0
+ delay 20
+ loadword 0, gUnknown_817E2F5
+ callstd 4
+ closemessage
+ applymovement 255, Movement_165992
+ waitmovement 0
+ releaseall
+ end
+
+Movement_165992:: @ 8165992
+ step_14
+ step_end
+
+ViridianCity_EventScript_165994:: @ 8165994
+ loadword 0, gUnknown_817E1BB
+ callstd 3
+ end
+
+ViridianCity_EventScript_16599D:: @ 816599D
+ loadword 0, gUnknown_817E1E7
+ callstd 3
+ end
+
+ViridianCity_EventScript_1659A6:: @ 81659A6
+ loadword 0, gUnknown_817E24D
+ callstd 3
+ end
+
+ViridianCity_EventScript_1659AF:: @ 81659AF
+ loadword 0, gUnknown_817E2DB
+ callstd 3
+ end
+
+ViridianCity_EventScript_1659B8:: @ 81659B8
+ loadword 0, gUnknown_817E2F5
+ callstd 3
+ end
+
+ViridianCity_EventScript_1659C1:: @ 81659C1
+ loadword 0, gUnknown_817DABB
+ callstd 2
+ end
+
+ViridianCity_EventScript_1659CA:: @ 81659CA
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x405A, 1
+ goto_if 1, EventScript_1659EC
+ loadword 0, gUnknown_817DB39
+ callstd 4
+ closemessage
+ applymovement 3, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+EventScript_1659EC:: @ 81659EC
+ loadword 0, gUnknown_817DB78
+ callstd 4
+ release
+ end
+
+ViridianCity_EventScript_1659F6:: @ 81659F6
+ lock
+ faceplayer
+ checkflag FLAG_UNK820
+ goto_if 1, EventScript_165A23
+ compare_var_to_value VAR_0x4051, 2
+ goto_if 4, EventScript_165A4A
+ compare_var_to_value VAR_0x4051, 1
+ goto_if 1, EventScript_165A54
+ compare_var_to_value VAR_0x4051, 0
+ goto_if 1, EventScript_165A84
+ end
+
+EventScript_165A23:: @ 8165A23
+ loadword 0, gUnknown_817E046
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_165A40
+ loadword 0, gUnknown_817E0EA
+ callstd 4
+ release
+ end
+
+EventScript_165A40:: @ 8165A40
+ loadword 0, gUnknown_817E14E
+ callstd 4
+ release
+ end
+
+EventScript_165A4A:: @ 8165A4A
+ loadword 0, gUnknown_817DF61
+ callstd 4
+ release
+ end
+
+EventScript_165A54:: @ 8165A54
+ call EventScript_165B4C
+ release
+ end
+
+EventScript_165A5B:: @ 8165A5B
+ loadword 0, gUnknown_817DEEB
+ callstd 4
+ release
+ end
+
+EventScript_165A65:: @ 8165A65
+ loadword 0, gUnknown_817DE9B
+ callstd 4
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ special sub_807F888
+ waitstate
+ release
+ end
+
+EventScript_165A84:: @ 8165A84
+ loadword 0, gUnknown_817DD03
+ callstd 4
+ closemessage
+ release
+ end
+
+ViridianCity_EventScript_165A8F:: @ 8165A8F
+ lock
+ faceplayer
+ loadword 0, gUnknown_817DB98
+ callstd 5
+ compare_var_to_value VAR_RESULT, 1
+ goto_if 1, EventScript_165AB0
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_165ABA
+ end
+
+EventScript_165AB0:: @ 8165AB0
+ loadword 0, gUnknown_817DBE4
+ callstd 4
+ release
+ end
+
+EventScript_165ABA:: @ 8165ABA
+ loadword 0, gUnknown_817DBD5
+ callstd 4
+ release
+ end
+
+ViridianCity_EventScript_165AC4:: @ 8165AC4
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4051, 0
+ goto_if 1, EventScript_165ADB
+ loadword 0, gUnknown_817DC99
+ callstd 4
+ release
+ end
+
+EventScript_165ADB:: @ 8165ADB
+ loadword 0, gUnknown_817DC4E
+ callstd 4
+ closemessage
+ applymovement 5, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+ViridianCity_EventScript_165AF0:: @ 8165AF0
+ goto EventScript_1C4A1E
+ end
+
+ViridianCity_EventScript_165AF6:: @ 8165AF6
+ lockall
+ textcolor 0
+ loadword 0, gUnknown_817DD03
+ callstd 4
+ closemessage
+ applymovement 255, Movement_165B0E
+ waitmovement 0
+ releaseall
+ end
+
+Movement_165B0E:: @ 8165B0E
+ step_10
+ step_end
+
+ViridianCity_EventScript_165B10:: @ 8165B10
+ lockall
+ textcolor 0
+ applymovement 4, Movement_1A75E7
+ waitmovement 0
+ applymovement 255, Movement_1A75EB
+ waitmovement 0
+ call EventScript_165B4C
+ release
+ end
+
+ViridianCity_EventScript_165B2E:: @ 8165B2E
+ lockall
+ textcolor 0
+ applymovement 4, Movement_1A75EB
+ waitmovement 0
+ applymovement 255, Movement_1A75E7
+ waitmovement 0
+ call EventScript_165B4C
+ release
+ end
+
+EventScript_165B4C:: @ 8165B4C
+ loadword 0, gUnknown_817DD4E
+ callstd 4
+ closemessage
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ special sub_8112364
+ special sub_807F888
+ waitstate
+ lock
+ faceplayer
+ loadword 0, gUnknown_817DE9B
+ callstd 4
+ setvar VAR_0x4051, 2
+ setorcopyvar VAR_0x8000, 366
+ setorcopyvar VAR_0x8001, 1
+ callstd 0
+ loadword 0, gUnknown_817DEEB
+ callstd 4
+ return
diff --git a/data/maps/ViridianCity_Gym/scripts.inc b/data/maps/ViridianCity_Gym/scripts.inc
new file mode 100644
index 000000000..bd65c80e5
--- /dev/null
+++ b/data/maps/ViridianCity_Gym/scripts.inc
@@ -0,0 +1,137 @@
+ViridianCity_Gym_MapScripts:: @ 8169EC9
+ .byte 0
+
+ViridianCity_Gym_EventScript_169ECA:: @ 8169ECA
+ setvar VAR_0x8004, 15
+ setvar VAR_0x8005, 2
+ special UpdatePickStateFromSpecialVar8005
+ trainerbattle 1, 350, 0, Text_18F352, Text_18F43F, EventScript_169F04
+ checkflag FLAG_0x298
+ goto_if 0, EventScript_169F2F
+ loadword 0, gUnknown_818F4A2
+ callstd 4
+ closemessage
+ fadescreen 1
+ removeobject 8
+ fadescreen 0
+ release
+ end
+
+EventScript_169F04:: @ 8169F04
+ setvar VAR_0x8004, 15
+ setvar VAR_0x8005, 3
+ special SetFlavorTextFlagFromSpecialVars
+ setflag FLAG_0x0AD
+ setflag FLAG_0x4B7
+ setflag 2087
+ setvar VAR_0x4054, 3
+ setvar VAR_0x8008, 8
+ call EventScript_1A6B18
+ goto EventScript_169F2F
+ end
+
+EventScript_169F2F:: @ 8169F2F
+ loadword 0, gUnknown_818F586
+ callstd 4
+ checkitemspace ITEM_TM26, 1
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_169F70
+ additem ITEM_TM26, 1
+ loadword 0, gUnknown_818F675
+ setorcopyvar VAR_0x8000, 314
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 257
+ callstd 9
+ setflag FLAG_0x298
+ loadword 0, gUnknown_818F695
+ callstd 4
+ release
+ end
+
+EventScript_169F70:: @ 8169F70
+ loadword 0, gUnknown_818F71B
+ callstd 4
+ release
+ end
+
+ViridianCity_Gym_EventScript_169F7A:: @ 8169F7A
+ trainerbattle 0, 296, 0, Text_18F7F3, Text_18F824
+ loadword 0, gUnknown_818F840
+ callstd 6
+ end
+
+ViridianCity_Gym_EventScript_169F91:: @ 8169F91
+ trainerbattle 0, 297, 0, Text_18F98A, Text_18F9BB
+ loadword 0, gUnknown_818F9CC
+ callstd 6
+ end
+
+ViridianCity_Gym_EventScript_169FA8:: @ 8169FA8
+ trainerbattle 0, 322, 0, Text_18F7AD, Text_18F7D6
+ loadword 0, gUnknown_818F7DD
+ callstd 6
+ end
+
+ViridianCity_Gym_EventScript_169FBF:: @ 8169FBF
+ trainerbattle 0, 323, 0, Text_18F86C, Text_18F899
+ loadword 0, gUnknown_818F8A0
+ callstd 6
+ end
+
+ViridianCity_Gym_EventScript_169FD6:: @ 8169FD6
+ trainerbattle 0, 324, 0, Text_18F92C, Text_18F95A
+ loadword 0, gUnknown_818F960
+ callstd 6
+ end
+
+ViridianCity_Gym_EventScript_169FED:: @ 8169FED
+ trainerbattle 0, 392, 0, Text_18F9E7, Text_18FA2D
+ loadword 0, gUnknown_818FA3B
+ callstd 6
+ end
+
+ViridianCity_Gym_EventScript_16A004:: @ 816A004
+ trainerbattle 0, 400, 0, Text_18F73B, Text_18F769
+ loadword 0, gUnknown_818F77B
+ callstd 6
+ end
+
+ViridianCity_Gym_EventScript_16A01B:: @ 816A01B
+ trainerbattle 0, 401, 0, Text_18F8CB, Text_18F8EE
+ loadword 0, gUnknown_818F8FE
+ callstd 6
+ end
+
+ViridianCity_Gym_EventScript_16A032:: @ 816A032
+ lock
+ faceplayer
+ checkflag FLAG_0x4B7
+ goto_if 1, EventScript_16A047
+ loadword 0, gUnknown_818FA81
+ callstd 4
+ release
+ end
+
+EventScript_16A047:: @ 816A047
+ setvar VAR_0x8004, 15
+ setvar VAR_0x8005, 4
+ special SetFlavorTextFlagFromSpecialVars
+ loadword 0, gUnknown_818FB56
+ callstd 4
+ release
+ end
+
+ViridianCity_Gym_EventScript_16A05E:: @ 816A05E
+ lockall
+ checkflag 2087
+ goto_if 1, EventScript_16A072
+ loadword 0, gUnknown_818FB8D
+ callstd 4
+ releaseall
+ end
+
+EventScript_16A072:: @ 816A072
+ loadword 0, gUnknown_818FBC1
+ callstd 4
+ releaseall
+ end
diff --git a/data/maps/ViridianCity_House1/scripts.inc b/data/maps/ViridianCity_House1/scripts.inc
new file mode 100644
index 000000000..3ea1f8cd0
--- /dev/null
+++ b/data/maps/ViridianCity_House1/scripts.inc
@@ -0,0 +1,28 @@
+ViridianCity_House1_MapScripts:: @ 8169E9A
+ .byte 0
+
+ViridianCity_House1_EventScript_169E9B:: @ 8169E9B
+ loadword 0, gUnknown_818F292
+ callstd 2
+ end
+
+ViridianCity_House1_EventScript_169EA4:: @ 8169EA4
+ loadword 0, gUnknown_818F30F
+ callstd 2
+ end
+
+ViridianCity_House1_EventScript_169EAD:: @ 8169EAD
+ lock
+ faceplayer
+ waitse
+ playmoncry SPECIES_SPEAROW, 0
+ loadword 0, gUnknown_818F32C
+ callstd 4
+ waitmoncry
+ release
+ end
+
+ViridianCity_House1_EventScript_169EC0:: @ 8169EC0
+ loadword 0, gUnknown_818F33D
+ callstd 3
+ end
diff --git a/data/maps/ViridianCity_House2/scripts.inc b/data/maps/ViridianCity_House2/scripts.inc
new file mode 100644
index 000000000..da2dec8d2
--- /dev/null
+++ b/data/maps/ViridianCity_House2/scripts.inc
@@ -0,0 +1,120 @@
+ViridianCity_House2_MapScripts:: @ 816A07C
+ .byte 0
+
+ViridianCity_House2_EventScript_16A07D:: @ 816A07D
+ lock
+ faceplayer
+ loadword 0, gUnknown_818FC00
+ callstd 4
+ closemessage
+ applymovement 2, Movement_1A75E9
+ waitmovement 0
+ release
+ end
+
+ViridianCity_House2_EventScript_16A094:: @ 816A094
+ lock
+ faceplayer
+ loadword 0, gUnknown_818FC2B
+ callstd 4
+ closemessage
+ applymovement 1, Movement_1A75E5
+ waitmovement 0
+ release
+ end
+
+ViridianCity_House2_EventScript_16A0AB:: @ 816A0AB
+ lockall
+ loadword 0, gUnknown_818FC65
+ callstd 4
+ loadword 0, gUnknown_818FF19
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16A11B
+ loadword 0, gUnknown_818FD23
+ callstd 4
+ loadword 0, gUnknown_818FF19
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16A11B
+ loadword 0, gUnknown_818FDA8
+ callstd 4
+ loadword 0, gUnknown_818FF19
+ callstd 5
+ compare_var_to_value VAR_RESULT, 0
+ goto_if 1, EventScript_16A11B
+ loadword 0, gUnknown_818FE5C
+ callstd 4
+ applymovement 2, Movement_1A75E9
+ waitmovement 0
+ textcolor 1
+ loadword 0, gUnknown_818FF28
+ callstd 4
+ releaseall
+ end
+
+EventScript_16A11B:: @ 816A11B
+ releaseall
+ end
+
+ViridianCity_House2_EventScript_16A11D:: @ 816A11D
+ lockall
+ loadword 0, gUnknown_818FF4B
+ callstd 4
+ goto EventScript_16A12C
+ end
+
+EventScript_16A12C:: @ 816A12C
+ message Text_18FF88
+ waitmessage
+ multichoicegrid 7, 1, 15, 3, 0
+ copyvar VAR_0x8000, VAR_RESULT
+ compare_var_to_value VAR_0x8000, 0
+ goto_if 1, EventScript_16A18B
+ compare_var_to_value VAR_0x8000, 1
+ goto_if 1, EventScript_16A1A7
+ compare_var_to_value VAR_0x8000, 2
+ goto_if 1, EventScript_16A1C3
+ compare_var_to_value VAR_0x8000, 3
+ goto_if 1, EventScript_16A199
+ compare_var_to_value VAR_0x8000, 4
+ goto_if 1, EventScript_16A1B5
+ compare_var_to_value VAR_0x8000, 5
+ goto_if 1, EventScript_16A1D1
+ compare_var_to_value VAR_0x8000, 127
+ goto_if 1, EventScript_16A1D1
+ end
+
+EventScript_16A18B:: @ 816A18B
+ loadword 0, gUnknown_818FFA9
+ callstd 4
+ goto EventScript_16A12C
+ end
+
+EventScript_16A199:: @ 816A199
+ loadword 0, gUnknown_8190025
+ callstd 4
+ goto EventScript_16A12C
+ end
+
+EventScript_16A1A7:: @ 816A1A7
+ loadword 0, gUnknown_819009F
+ callstd 4
+ goto EventScript_16A12C
+ end
+
+EventScript_16A1B5:: @ 816A1B5
+ loadword 0, gUnknown_819010F
+ callstd 4
+ goto EventScript_16A12C
+ end
+
+EventScript_16A1C3:: @ 816A1C3
+ loadword 0, gUnknown_8190199
+ callstd 4
+ goto EventScript_16A12C
+ end
+
+EventScript_16A1D1:: @ 816A1D1
+ releaseall
+ end
diff --git a/data/maps/ViridianCity_Mart/scripts.inc b/data/maps/ViridianCity_Mart/scripts.inc
new file mode 100644
index 000000000..9d36cb183
--- /dev/null
+++ b/data/maps/ViridianCity_Mart/scripts.inc
@@ -0,0 +1,100 @@
+ViridianCity_Mart_MapScripts:: @ 816A1D3
+ map_script 1, ViridianCity_Mart_MapScript1_16A1DE
+ map_script 2, ViridianCity_Mart_MapScript2_16A1FB
+ .byte 0
+
+ViridianCity_Mart_MapScript1_16A1DE:: @ 816A1DE
+ checkflag 2089
+ goto_if 0, EventScript_16A1E8
+ end
+
+EventScript_16A1E8:: @ 816A1E8
+ setmetatile 1, 3, 703, 1
+ setmetatile 1, 4, 704, 1
+ end
+
+ViridianCity_Mart_MapScript2_16A1FB:: @ 816A1FB
+ map_script_2 VAR_0x4057, 0, EventScript_16A205
+ .2byte 0
+
+EventScript_16A205:: @ 816A205
+ lockall
+ textcolor 0
+ applymovement 1, Movement_1A75ED
+ waitmovement 0
+ loadword 0, gUnknown_819021A
+ callstd 4
+ closemessage
+ applymovement 1, Movement_16A262
+ applymovement 255, Movement_16A25C
+ waitmovement 0
+ loadword 0, gUnknown_819023A
+ callstd 4
+ setvar VAR_0x4057, 1
+ additem ITEM_OAKS_PARCEL, 1
+ loadword 0, gUnknown_8190289
+ setorcopyvar VAR_0x8000, 349
+ setorcopyvar VAR_0x8001, 1
+ setorcopyvar VAR_0x8002, 318
+ callstd 9
+ setvar VAR_0x4055, 5
+ releaseall
+ end
+
+Movement_16A25C:: @ 816A25C
+ step_11
+ step_11
+ step_11
+ step_11
+ step_2f
+ step_end
+
+Movement_16A262:: @ 816A262
+ step_1c
+ step_1c
+ step_1c
+ step_1c
+ step_30
+ step_end
+
+ViridianCity_Mart_EventScript_16A268:: @ 816A268
+ lock
+ faceplayer
+ compare_var_to_value VAR_0x4057, 1
+ goto_if 1, EventScript_16A2A4
+ special sub_8110AB4
+ compare_var_to_value VAR_RESULT, 2
+ goto_if 1, EventScript_1A7AE0
+ message Text_1A6211
+ waitmessage
+ pokemart Items_16A298
+ loadword 0, gUnknown_81A5190
+ callstd 4
+ release
+ end
+
+ .align 2
+Items_16A298:: @ 816A298
+ .2byte ITEM_POKE_BALL
+ .2byte ITEM_POTION
+ .2byte ITEM_ANTIDOTE
+ .2byte ITEM_PARALYZE_HEAL
+ .2byte ITEM_NONE
+ release
+ end
+
+EventScript_16A2A4:: @ 816A2A4
+ loadword 0, Text_1902BF
+ callstd 4
+ release
+ end
+
+ViridianCity_Mart_EventScript_16A2AE:: @ 816A2AE
+ loadword 0, gUnknown_81902F5
+ callstd 2
+ end
+
+ViridianCity_Mart_EventScript_16A2B7:: @ 816A2B7
+ loadword 0, gUnknown_819032C
+ callstd 2
+ end
diff --git a/data/maps/ViridianCity_PokemonCenter_1F/scripts.inc b/data/maps/ViridianCity_PokemonCenter_1F/scripts.inc
new file mode 100644
index 000000000..da39670a3
--- /dev/null
+++ b/data/maps/ViridianCity_PokemonCenter_1F/scripts.inc
@@ -0,0 +1,30 @@
+ViridianCity_PokemonCenter_1F_MapScripts:: @ 816A2C0
+ map_script 3, ViridianCity_PokemonCenter_1F_MapScript1_16A2CB
+ map_script 5, ViridianCity_PokemonCenter_1F_MapScript2_1BC05C
+ .byte 0
+
+ViridianCity_PokemonCenter_1F_MapScript1_16A2CB:: @ 816A2CB
+ setrespawn 2
+ end
+
+ViridianCity_PokemonCenter_1F_EventScript_16A2CF:: @ 816A2CF
+ lock
+ faceplayer
+ call EventScript_1A6578
+ release
+ end
+
+ViridianCity_PokemonCenter_1F_EventScript_16A2D8:: @ 816A2D8
+ loadword 0, gUnknown_81903E5
+ callstd 2
+ end
+
+ViridianCity_PokemonCenter_1F_EventScript_16A2E1:: @ 816A2E1
+ loadword 0, gUnknown_8190384
+ callstd 2
+ end
+
+ViridianCity_PokemonCenter_1F_EventScript_16A2EA:: @ 816A2EA
+ loadword 0, gUnknown_8190450
+ callstd 2
+ end
diff --git a/data/maps/ViridianCity_PokemonCenter_2F/scripts.inc b/data/maps/ViridianCity_PokemonCenter_2F/scripts.inc
new file mode 100644
index 000000000..79df14869
--- /dev/null
+++ b/data/maps/ViridianCity_PokemonCenter_2F/scripts.inc
@@ -0,0 +1,18 @@
+ViridianCity_PokemonCenter_2F_MapScripts:: @ 816A2F3
+ map_script 2, ViridianCity_PokemonCenter_2F_MapScript1_1BB2A3
+ map_script 4, ViridianCity_PokemonCenter_2F_MapScript2_1BB1ED
+ map_script 1, ViridianCity_PokemonCenter_2F_MapScript3_1BB237
+ map_script 3, ViridianCity_PokemonCenter_2F_MapScript4_1BB1B4
+ .byte 0
+
+ViridianCity_PokemonCenter_2F_EventScript_16A308:: @ 816A308
+ call EventScript_1BB4A3
+ end
+
+EventScript_16A30E:: @ 816A30E
+ call EventScript_1BB6AB
+ end
+
+EventScript_16A314:: @ 816A314
+ call EventScript_1BB7DE
+ end
diff --git a/data/maps/ViridianForest/scripts.inc b/data/maps/ViridianForest/scripts.inc
new file mode 100644
index 000000000..f5d7b956f
--- /dev/null
+++ b/data/maps/ViridianForest/scripts.inc
@@ -0,0 +1,77 @@
+ViridianForest_MapScripts:: @ 816051F
+ map_script 3, ViridianForest_MapScript1_160525
+ .byte 0
+
+ViridianForest_MapScript1_160525:: @ 8160525
+ setworldmapflag 2212
+ end
+
+ViridianForest_EventScript_160529:: @ 8160529
+ loadword 0, gUnknown_8172255
+ callstd 2
+ end
+
+ViridianForest_EventScript_160532:: @ 8160532
+ loadword 0, gUnknown_8172559
+ callstd 2
+ end
+
+ViridianForest_EventScript_16053B:: @ 816053B
+ loadword 0, gUnknown_81725C7
+ callstd 3
+ end
+
+ViridianForest_EventScript_160544:: @ 8160544
+ loadword 0, gUnknown_8172629
+ callstd 3
+ end
+
+ViridianForest_EventScript_16054D:: @ 816054D
+ loadword 0, gUnknown_817265C
+ callstd 3
+ end
+
+ViridianForest_EventScript_160556:: @ 8160556
+ loadword 0, gUnknown_81726A3
+ callstd 3
+ end
+
+ViridianForest_EventScript_16055F:: @ 816055F
+ loadword 0, gUnknown_817271D
+ callstd 3
+ end
+
+ViridianForest_EventScript_160568:: @ 8160568
+ loadword 0, gUnknown_8172773
+ callstd 3
+ end
+
+ViridianForest_EventScript_160571:: @ 8160571
+ trainerbattle 0, 102, 0, Text_1722C7, Text_1722F9
+ loadword 0, gUnknown_8172315
+ callstd 6
+ end
+
+ViridianForest_EventScript_160588:: @ 8160588
+ trainerbattle 0, 103, 0, Text_17234A, Text_17237D
+ loadword 0, gUnknown_8172398
+ callstd 6
+ end
+
+ViridianForest_EventScript_16059F:: @ 816059F
+ trainerbattle 0, 104, 0, Text_1723D4, Text_172402
+ loadword 0, gUnknown_817241F
+ callstd 6
+ end
+
+ViridianForest_EventScript_1605B6:: @ 81605B6
+ trainerbattle 0, 531, 0, Text_172482, Text_1724BF
+ loadword 0, gUnknown_81724DC
+ callstd 6
+ end
+
+ViridianForest_EventScript_1605CD:: @ 81605CD
+ trainerbattle 0, 532, 0, Text_1724F9, Text_17251B
+ loadword 0, gUnknown_8172527
+ callstd 6
+ end