shithub: pokecrystal

Download patch

ref: a551e345df45897dd17c7cd5c7423851f8f210ba
parent: a827c02757ce4b214afb0e079ed68242430a671c
author: Remy Oukaour <remy.oukaour@gmail.com>
date: Sun Dec 10 17:34:42 EST 2017

PokeCenter → Pokecenter (consistent with the POKECENTER map constants)

--- a/engine/pokecenter_pc.asm
+++ b/engine/pokecenter_pc.asm
@@ -2,9 +2,9 @@
 	call PC_CheckPartyForPokemon
 	ret c
 	call PC_PlayBootSound
-	ld hl, PokeCenterPCText_BootedUpPC
+	ld hl, PokecenterPCText_BootedUpPC
 	call PC_DisplayText
-	ld hl, PokeCenterPCText_AccessWhosePC
+	ld hl, PokecenterPCText_AccessWhosePC
 	call PC_DisplayTextWaitMenu
 	ld hl, .TopMenu
 	call LoadMenuDataHeader
@@ -103,7 +103,7 @@
 
 BillsPC: ; 15668
 	call PC_PlayChoosePCSound
-	ld hl, PokeCenterPCText_AccessedBillsPC
+	ld hl, PokecenterPCText_AccessedBillsPC
 	call PC_DisplayText
 	callba _BillsPC
 	and a
@@ -112,7 +112,7 @@
 
 PlayersPC: ; 15679
 	call PC_PlayChoosePCSound
-	ld hl, PokeCenterPCText_AccessedOwnPC
+	ld hl, PokecenterPCText_AccessedOwnPC
 	call PC_DisplayText
 	ld b, $0
 	call _PlayersPC
@@ -122,7 +122,7 @@
 
 OaksPC: ; 15689
 	call PC_PlayChoosePCSound
-	ld hl, PokeCenterPCText_AccessedOaksPC
+	ld hl, PokecenterPCText_AccessedOaksPC
 	call PC_DisplayText
 	callba ProfOaksPC
 	and a
@@ -139,7 +139,7 @@
 ; 156ab
 
 TurnOffPC: ; 156ab
-	ld hl, PokeCenterPCText_LinkClosed
+	ld hl, PokecenterPCText_LinkClosed
 	call PrintText
 	scf
 	ret
@@ -641,37 +641,37 @@
 	ret
 ; 15a27
 
-PokeCenterPCText_BootedUpPC: ; 0x15a27
+PokecenterPCText_BootedUpPC: ; 0x15a27
 	; turned on the PC.
 	text_jump UnknownText_0x1c144d
 	db "@"
 ; 0x15a2c
 
-PokeCenterPCText_AccessWhosePC: ; 0x15a2c
+PokecenterPCText_AccessWhosePC: ; 0x15a2c
 	; Access whose PC?
 	text_jump UnknownText_0x1c1462
 	db "@"
 ; 0x15a31
 
-PokeCenterPCText_AccessedBillsPC: ; 0x15a31
+PokecenterPCText_AccessedBillsPC: ; 0x15a31
 	; BILL's PC accessed. #MON Storage System opened.
 	text_jump UnknownText_0x1c1474
 	db "@"
 ; 0x15a36
 
-PokeCenterPCText_AccessedOwnPC: ; 0x15a36
+PokecenterPCText_AccessedOwnPC: ; 0x15a36
 	; Accessed own PC. Item Storage System opened.
 	text_jump UnknownText_0x1c14a4
 	db "@"
 ; 0x15a3b
 
-PokeCenterPCText_AccessedOaksPC: ; 0x15a3b
+PokecenterPCText_AccessedOaksPC: ; 0x15a3b
 	; PROF.OAK's PC accessed. #DEX Rating System opened.
 	text_jump UnknownText_0x1c14d2
 	db "@"
 ; 0x15a40
 
-PokeCenterPCText_LinkClosed: ; 0x15a40
+PokecenterPCText_LinkClosed: ; 0x15a40
 	; … Link closed…
 	text_jump UnknownText_0x1c1505
 	db "@"
--- a/engine/std_scripts.asm
+++ b/engine/std_scripts.asm
@@ -1,5 +1,5 @@
 StdScripts::
-	dba PokeCenterNurseScript
+	dba PokecenterNurseScript
 	dba DifficultBookshelfScript
 	dba PictureBookshelfScript
 	dba MagazineBookshelfScript
@@ -15,7 +15,7 @@
 	dba TrashCanScript
 	dba StrengthBoulderScript
 	dba SmashRockScript
-	dba PokeCenterSignScript
+	dba PokecenterSignScript
 	dba MartSignScript
 	dba GoldenrodRocketsScript
 	dba RadioTowerRocketsScript
@@ -52,7 +52,7 @@
 	dba GameCornerCoinVendorScript
 	dba HappinessCheckScript
 
-PokeCenterNurseScript:
+PokecenterNurseScript:
 ; EVENT_WELCOMED_TO_POKECOM_CENTER is never set
 
 	opentext
@@ -236,8 +236,8 @@
 SmashRockScript:
 	farjump AskRockSmashScript
 
-PokeCenterSignScript:
-	farjumptext PokeCenterSignText
+PokecenterSignScript:
+	farjumptext PokecenterSignText
 
 MartSignScript
 	farjumptext MartSignText
--- a/main.asm
+++ b/main.asm
@@ -3118,10 +3118,10 @@
 	ld a, [MapNumber]
 	ld c, a
 	cp MAP_POKECENTER_2F
-	jr nz, .NotPokeCenter2F
+	jr nz, .NotPokecenter2F
 	ld a, b
 	cp GROUP_POKECENTER_2F
-	jr nz, .NotPokeCenter2F
+	jr nz, .NotPokecenter2F
 
 	ld a, [BackupMapGroup]
 	ld b, a
@@ -3128,7 +3128,7 @@
 	ld a, [BackupMapNumber]
 	ld c, a
 
-.NotPokeCenter2F:
+.NotPokecenter2F:
 	call GetWorldMapLocation
 	ld b, a
 	ld a, [PlayerGender]
--- a/maps.asm
+++ b/maps.asm
@@ -74,7 +74,7 @@
 INCLUDE "maps/RadioTower5F.asm"
 INCLUDE "maps/OlivineLighthouse5F.asm"
 INCLUDE "maps/OlivineLighthouse6F.asm"
-INCLUDE "maps/GoldenrodPokeCenter1F.asm"
+INCLUDE "maps/GoldenrodPokecenter1F.asm"
 INCLUDE "maps/GoldenrodPokeComCenter2FMobile.asm"
 INCLUDE "maps/IlexForestAzaleaGate.asm"
 INCLUDE "maps/Route34IlexForestGate.asm"
@@ -88,10 +88,10 @@
 INCLUDE "maps/VioletGym.asm"
 INCLUDE "maps/EarlsPokemonAcademy.asm"
 INCLUDE "maps/VioletNicknameSpeechHouse.asm"
-INCLUDE "maps/VioletPokeCenter1F.asm"
+INCLUDE "maps/VioletPokecenter1F.asm"
 INCLUDE "maps/VioletOnixTradeHouse.asm"
 INCLUDE "maps/Route32RuinsOfAlphGate.asm"
-INCLUDE "maps/Route32PokeCenter1F.asm"
+INCLUDE "maps/Route32Pokecenter1F.asm"
 INCLUDE "maps/Route35GoldenrodGate.asm"
 INCLUDE "maps/Route35NationalParkGate.asm"
 INCLUDE "maps/Route36RuinsOfAlphGate.asm"
@@ -123,8 +123,8 @@
 INCLUDE "maps/CeladonMansion3F.asm"
 INCLUDE "maps/CeladonMansionRoof.asm"
 INCLUDE "maps/CeladonMansionRoofHouse.asm"
-INCLUDE "maps/CeladonPokeCenter1F.asm"
-INCLUDE "maps/CeladonPokeCenter2FBeta.asm"
+INCLUDE "maps/CeladonPokecenter1F.asm"
+INCLUDE "maps/CeladonPokecenter2FBeta.asm"
 INCLUDE "maps/CeladonGameCorner.asm"
 INCLUDE "maps/CeladonGameCornerPrizeRoom.asm"
 INCLUDE "maps/CeladonGym.asm"
@@ -189,8 +189,8 @@
 INCLUDE "maps/IcePathB2FMahoganySide.asm"
 INCLUDE "maps/IcePathB2FBlackthornSide.asm"
 INCLUDE "maps/IcePathB3F.asm"
-INCLUDE "maps/LavenderPokeCenter1F.asm"
-INCLUDE "maps/LavenderPokeCenter2FBeta.asm"
+INCLUDE "maps/LavenderPokecenter1F.asm"
+INCLUDE "maps/LavenderPokecenter2FBeta.asm"
 INCLUDE "maps/MrFujisHouse.asm"
 INCLUDE "maps/LavenderTownSpeechHouse.asm"
 INCLUDE "maps/LavenderNameRater.asm"
@@ -205,7 +205,7 @@
 
 INCLUDE "maps/EcruteakHouse.asm"
 INCLUDE "maps/WiseTriosRoom.asm"
-INCLUDE "maps/EcruteakPokeCenter1F.asm"
+INCLUDE "maps/EcruteakPokecenter1F.asm"
 INCLUDE "maps/EcruteakLugiaSpeechHouse.asm"
 INCLUDE "maps/DanceTheatre.asm"
 INCLUDE "maps/EcruteakMart.asm"
@@ -216,8 +216,8 @@
 INCLUDE "maps/TrainerHouse1F.asm"
 INCLUDE "maps/TrainerHouseB1F.asm"
 INCLUDE "maps/ViridianMart.asm"
-INCLUDE "maps/ViridianPokeCenter1F.asm"
-INCLUDE "maps/ViridianPokeCenter2FBeta.asm"
+INCLUDE "maps/ViridianPokecenter1F.asm"
+INCLUDE "maps/ViridianPokecenter2FBeta.asm"
 INCLUDE "maps/Route2NuggetSpeechHouse.asm"
 INCLUDE "maps/Route2Gate.asm"
 INCLUDE "maps/VictoryRoadGate.asm"
@@ -225,7 +225,7 @@
 
 SECTION "Map Scripts 12", ROMX
 
-INCLUDE "maps/OlivinePokeCenter1F.asm"
+INCLUDE "maps/OlivinePokecenter1F.asm"
 INCLUDE "maps/OlivineGym.asm"
 INCLUDE "maps/OlivineTimsHouse.asm"
 INCLUDE "maps/OlivineHouseBeta.asm"
@@ -238,7 +238,7 @@
 INCLUDE "maps/Route39Farmhouse.asm"
 INCLUDE "maps/ManiasHouse.asm"
 INCLUDE "maps/CianwoodGym.asm"
-INCLUDE "maps/CianwoodPokeCenter1F.asm"
+INCLUDE "maps/CianwoodPokecenter1F.asm"
 INCLUDE "maps/CianwoodPharmacy.asm"
 INCLUDE "maps/CianwoodCityPhotoStudio.asm"
 INCLUDE "maps/CianwoodLugiaSpeechHouse.asm"
@@ -253,7 +253,7 @@
 
 SECTION "Map Scripts 13", ROMX
 
-INCLUDE "maps/IndigoPlateauPokeCenter1F.asm"
+INCLUDE "maps/IndigoPlateauPokecenter1F.asm"
 INCLUDE "maps/WillsRoom.asm"
 INCLUDE "maps/KogasRoom.asm"
 INCLUDE "maps/BrunosRoom.asm"
@@ -286,19 +286,19 @@
 INCLUDE "maps/CeruleanGymBadgeSpeechHouse.asm"
 INCLUDE "maps/CeruleanPoliceStation.asm"
 INCLUDE "maps/CeruleanTradeSpeechHouse.asm"
-INCLUDE "maps/CeruleanPokeCenter1F.asm"
-INCLUDE "maps/CeruleanPokeCenter2FBeta.asm"
+INCLUDE "maps/CeruleanPokecenter1F.asm"
+INCLUDE "maps/CeruleanPokecenter2FBeta.asm"
 INCLUDE "maps/CeruleanGym.asm"
 INCLUDE "maps/CeruleanMart.asm"
-INCLUDE "maps/Route10PokeCenter1F.asm"
-INCLUDE "maps/Route10PokeCenter2FBeta.asm"
+INCLUDE "maps/Route10Pokecenter1F.asm"
+INCLUDE "maps/Route10Pokecenter2FBeta.asm"
 INCLUDE "maps/PowerPlant.asm"
 INCLUDE "maps/BillsHouse.asm"
 INCLUDE "maps/FightingDojo.asm"
 INCLUDE "maps/SaffronGym.asm"
 INCLUDE "maps/SaffronMart.asm"
-INCLUDE "maps/SaffronPokeCenter1F.asm"
-INCLUDE "maps/SaffronPokeCenter2FBeta.asm"
+INCLUDE "maps/SaffronPokecenter1F.asm"
+INCLUDE "maps/SaffronPokecenter2FBeta.asm"
 INCLUDE "maps/MrPsychicsHouse.asm"
 INCLUDE "maps/SaffronTrainStation.asm"
 INCLUDE "maps/SilphCo1F.asm"
@@ -330,7 +330,7 @@
 INCLUDE "maps/DragonsDenB1F.asm"
 INCLUDE "maps/DragonShrine.asm"
 INCLUDE "maps/TohjoFalls.asm"
-INCLUDE "maps/AzaleaPokeCenter1F.asm"
+INCLUDE "maps/AzaleaPokecenter1F.asm"
 INCLUDE "maps/CharcoalKiln.asm"
 INCLUDE "maps/AzaleaMart.asm"
 INCLUDE "maps/KurtsHouse.asm"
@@ -342,8 +342,8 @@
 INCLUDE "maps/MahoganyTown.asm"
 INCLUDE "maps/Route32.asm"
 INCLUDE "maps/VermilionHouseFishingSpeechHouse.asm"
-INCLUDE "maps/VermilionPokeCenter1F.asm"
-INCLUDE "maps/VermilionPokeCenter2FBeta.asm"
+INCLUDE "maps/VermilionPokecenter1F.asm"
+INCLUDE "maps/VermilionPokecenter2FBeta.asm"
 INCLUDE "maps/PokemonFanClub.asm"
 INCLUDE "maps/VermilionMagnetTrainSpeechHouse.asm"
 INCLUDE "maps/VermilionMart.asm"
@@ -351,7 +351,7 @@
 INCLUDE "maps/VermilionGym.asm"
 INCLUDE "maps/Route6SaffronGate.asm"
 INCLUDE "maps/Route6UndergroundEntrance.asm"
-INCLUDE "maps/PokeCenter2F.asm"
+INCLUDE "maps/Pokecenter2F.asm"
 INCLUDE "maps/TradeCenter.asm"
 INCLUDE "maps/Colosseum.asm"
 INCLUDE "maps/TimeCapsule.asm"
@@ -368,18 +368,18 @@
 INCLUDE "maps/BlackthornDragonSpeechHouse.asm"
 INCLUDE "maps/BlackthornEmysHouse.asm"
 INCLUDE "maps/BlackthornMart.asm"
-INCLUDE "maps/BlackthornPokeCenter1F.asm"
+INCLUDE "maps/BlackthornPokecenter1F.asm"
 INCLUDE "maps/MoveDeletersHouse.asm"
 INCLUDE "maps/FuchsiaMart.asm"
 INCLUDE "maps/SafariZoneMainOffice.asm"
 INCLUDE "maps/FuchsiaGym.asm"
 INCLUDE "maps/FuchsiaBillSpeechHouse.asm"
-INCLUDE "maps/FuchsiaPokeCenter1F.asm"
-INCLUDE "maps/FuchsiaPokeCenter2FBeta.asm"
+INCLUDE "maps/FuchsiaPokecenter1F.asm"
+INCLUDE "maps/FuchsiaPokecenter2FBeta.asm"
 INCLUDE "maps/SafariZoneWardensHome.asm"
 INCLUDE "maps/Route15FuchsiaGate.asm"
 INCLUDE "maps/CherrygroveMart.asm"
-INCLUDE "maps/CherrygrovePokeCenter1F.asm"
+INCLUDE "maps/CherrygrovePokecenter1F.asm"
 INCLUDE "maps/CherrygroveGymSpeechHouse.asm"
 INCLUDE "maps/GuideGentsHouse.asm"
 INCLUDE "maps/CherrygroveEvolutionSpeechHouse.asm"
@@ -395,7 +395,7 @@
 INCLUDE "maps/SaffronCity.asm"
 INCLUDE "maps/MahoganyRedGyaradosSpeechHouse.asm"
 INCLUDE "maps/MahoganyGym.asm"
-INCLUDE "maps/MahoganyPokeCenter1F.asm"
+INCLUDE "maps/MahoganyPokecenter1F.asm"
 INCLUDE "maps/Route42EcruteakGate.asm"
 INCLUDE "maps/LakeOfRageHiddenPowerHouse.asm"
 INCLUDE "maps/LakeOfRageMagikarpHouse.asm"
@@ -429,8 +429,8 @@
 INCLUDE "maps/PewterNidoranSpeechHouse.asm"
 INCLUDE "maps/PewterGym.asm"
 INCLUDE "maps/PewterMart.asm"
-INCLUDE "maps/PewterPokeCenter1F.asm"
-INCLUDE "maps/PewterPokeCenter2FBeta.asm"
+INCLUDE "maps/PewterPokecenter1F.asm"
+INCLUDE "maps/PewterPokecenter2FBeta.asm"
 INCLUDE "maps/PewterSnoozeSpeechHouse.asm"
 
 
@@ -460,8 +460,8 @@
 INCLUDE "maps/Route15.asm"
 INCLUDE "maps/VermilionCity.asm"
 INCLUDE "maps/Route9.asm"
-INCLUDE "maps/CinnabarPokeCenter1F.asm"
-INCLUDE "maps/CinnabarPokeCenter2FBeta.asm"
+INCLUDE "maps/CinnabarPokecenter1F.asm"
+INCLUDE "maps/CinnabarPokecenter2FBeta.asm"
 INCLUDE "maps/Route19FuchsiaGate.asm"
 INCLUDE "maps/SeafoamGym.asm"
 
@@ -488,7 +488,7 @@
 INCLUDE "maps/Route4.asm"
 INCLUDE "maps/Route10South.asm"
 INCLUDE "maps/Route23.asm"
-INCLUDE "maps/SilverCavePokeCenter1F.asm"
+INCLUDE "maps/SilverCavePokecenter1F.asm"
 INCLUDE "maps/Route28FamousSpeechHouse.asm"
 
 
--- a/maps/AzaleaPokeCenter1F.asm
+++ /dev/null
@@ -1,100 +1,0 @@
-const_value set 2
-	const AZALEAPOKECENTER1F_NURSE
-	const AZALEAPOKECENTER1F_GENTLEMAN
-	const AZALEAPOKECENTER1F_FISHING_GURU
-	const AZALEAPOKECENTER1F_POKEFAN_F
-
-AzaleaPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 1
-	maptrigger .DummyTrigger
-
-.MapCallbacks:
-	db 0
-
-.DummyTrigger:
-	end
-
-AzaleaPokeCenter1FNurseScript:
-	jumpstd pokecenternurse
-
-AzaleaPokeCenter1FGentlemanScript:
-	jumptextfaceplayer AzaleaPokeCenter1FGentlemanText
-
-AzaleaPokeCenter1FFishingGuruScript:
-	jumptextfaceplayer AzaleaPokeCenter1FFishingGuruText
-
-AzaleaPokeCenter1FPokefanFScript:
-	jumptextfaceplayer AzaleaPokeCenter1FPokefanFText
-
-AzaleaPokeCenter1FGentlemanText:
-	text "Do your #MON"
-	line "know HM moves?"
-
-	para "Those moves can"
-	line "be used even if"
-
-	para "your #MON has"
-	line "fainted."
-	done
-
-AzaleaPokeCenter1FUnusedText:
-	text "This BILL guy"
-	line "created the system"
-
-	para "for storing"
-	line "#MON in a PC."
-
-	para "BILL's PC can"
-	line "store up to 20"
-	cont "#MON per BOX."
-	done
-
-AzaleaPokeCenter1FFishingGuruText:
-	text "BILL's PC can"
-	line "store up to 20"
-	cont "#MON per BOX."
-	done
-
-AzaleaPokeCenter1FPokefanFText:
-	text "Do you know about"
-	line "APRICORNS?"
-
-	para "Crack one open,"
-	line "hollow it out and"
-
-	para "fit it with a"
-	line "special device."
-
-	para "Then you can catch"
-	line "#MON with it."
-
-	para "Before # BALLS"
-	line "were invented,"
-
-	para "everyone used"
-	line "APRICORNS."
-	done
-
-AzaleaPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 1, AZALEA_TOWN
-	warp_def $7, $4, 1, AZALEA_TOWN
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, AzaleaPokeCenter1FNurseScript, -1
-	person_event SPRITE_GENTLEMAN, 6, 9, SPRITEMOVEDATA_WALK_UP_DOWN, 1, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, AzaleaPokeCenter1FGentlemanScript, -1
-	person_event SPRITE_FISHING_GURU, 1, 6, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, AzaleaPokeCenter1FFishingGuruScript, -1
-	person_event SPRITE_POKEFAN_F, 4, 1, SPRITEMOVEDATA_WANDER, 2, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, AzaleaPokeCenter1FPokefanFScript, -1
--- /dev/null
+++ b/maps/AzaleaPokecenter1F.asm
@@ -1,0 +1,100 @@
+const_value set 2
+	const AZALEAPOKECENTER1F_NURSE
+	const AZALEAPOKECENTER1F_GENTLEMAN
+	const AZALEAPOKECENTER1F_FISHING_GURU
+	const AZALEAPOKECENTER1F_POKEFAN_F
+
+AzaleaPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 1
+	maptrigger .DummyTrigger
+
+.MapCallbacks:
+	db 0
+
+.DummyTrigger:
+	end
+
+AzaleaPokecenter1FNurseScript:
+	jumpstd pokecenternurse
+
+AzaleaPokecenter1FGentlemanScript:
+	jumptextfaceplayer AzaleaPokecenter1FGentlemanText
+
+AzaleaPokecenter1FFishingGuruScript:
+	jumptextfaceplayer AzaleaPokecenter1FFishingGuruText
+
+AzaleaPokecenter1FPokefanFScript:
+	jumptextfaceplayer AzaleaPokecenter1FPokefanFText
+
+AzaleaPokecenter1FGentlemanText:
+	text "Do your #MON"
+	line "know HM moves?"
+
+	para "Those moves can"
+	line "be used even if"
+
+	para "your #MON has"
+	line "fainted."
+	done
+
+AzaleaPokecenter1FUnusedText:
+	text "This BILL guy"
+	line "created the system"
+
+	para "for storing"
+	line "#MON in a PC."
+
+	para "BILL's PC can"
+	line "store up to 20"
+	cont "#MON per BOX."
+	done
+
+AzaleaPokecenter1FFishingGuruText:
+	text "BILL's PC can"
+	line "store up to 20"
+	cont "#MON per BOX."
+	done
+
+AzaleaPokecenter1FPokefanFText:
+	text "Do you know about"
+	line "APRICORNS?"
+
+	para "Crack one open,"
+	line "hollow it out and"
+
+	para "fit it with a"
+	line "special device."
+
+	para "Then you can catch"
+	line "#MON with it."
+
+	para "Before # BALLS"
+	line "were invented,"
+
+	para "everyone used"
+	line "APRICORNS."
+	done
+
+AzaleaPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 1, AZALEA_TOWN
+	warp_def $7, $4, 1, AZALEA_TOWN
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, AzaleaPokecenter1FNurseScript, -1
+	person_event SPRITE_GENTLEMAN, 6, 9, SPRITEMOVEDATA_WALK_UP_DOWN, 1, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, AzaleaPokecenter1FGentlemanScript, -1
+	person_event SPRITE_FISHING_GURU, 1, 6, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, AzaleaPokecenter1FFishingGuruScript, -1
+	person_event SPRITE_POKEFAN_F, 4, 1, SPRITEMOVEDATA_WANDER, 2, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, AzaleaPokecenter1FPokefanFScript, -1
--- a/maps/AzaleaTown.asm
+++ b/maps/AzaleaTown.asm
@@ -201,7 +201,7 @@
 AzaleaTownIlextForestSign:
 	jumptext AzaleaTownIlexForestSignText
 
-AzaleaTownPokeCenterSign:
+AzaleaTownPokecenterSign:
 	jumpstd pokecentersign
 
 AzaleaTownMartSign:
@@ -483,7 +483,7 @@
 	signpost 15, 14, SIGNPOST_READ, AzaleaGymSign
 	signpost 7, 29, SIGNPOST_READ, SlowpokeWellSign
 	signpost 13, 19, SIGNPOST_READ, CharcoalKilnSign
-	signpost 9, 16, SIGNPOST_READ, AzaleaTownPokeCenterSign
+	signpost 9, 16, SIGNPOST_READ, AzaleaTownPokecenterSign
 	signpost 5, 22, SIGNPOST_READ, AzaleaTownMartSign
 	signpost 9, 3, SIGNPOST_READ, AzaleaTownIlextForestSign
 	signpost 6, 31, SIGNPOST_ITEM, AzaleaTownHiddenFullHeal
--- a/maps/BetaPokeCenterMainHouse.blk
+++ /dev/null
@@ -1,1 +1,0 @@
-	
'
\ No newline at end of file
--- a/maps/BetaPokeCenterTradeStation.blk
+++ /dev/null
@@ -1,1 +1,0 @@
-'
\ No newline at end of file
--- /dev/null
+++ b/maps/BetaPokecenterMainHouse.blk
@@ -1,0 +1,1 @@
+	
'
\ No newline at end of file
--- /dev/null
+++ b/maps/BetaPokecenterTradeStation.blk
@@ -1,0 +1,1 @@
+'
\ No newline at end of file
--- a/maps/BlackthornCity.asm
+++ b/maps/BlackthornCity.asm
@@ -138,7 +138,7 @@
 BlackthornCityTrainerTips:
 	jumptext BlackthornCityTrainerTipsText
 
-BlackthornCityPokeCenterSign:
+BlackthornCityPokecenterSign:
 	jumpstd pokecentersign
 
 BlackthornCityMartSign:
@@ -338,7 +338,7 @@
 	signpost 3, 21, SIGNPOST_READ, DragonDensSign
 	signpost 25, 5, SIGNPOST_READ, BlackthornCityTrainerTips
 	signpost 29, 16, SIGNPOST_READ, BlackthornCityMartSign
-	signpost 29, 22, SIGNPOST_READ, BlackthornCityPokeCenterSign
+	signpost 29, 22, SIGNPOST_READ, BlackthornCityPokecenterSign
 
 .PersonEvents:
 	db 9
--- a/maps/BlackthornPokeCenter1F.asm
+++ /dev/null
@@ -1,73 +1,0 @@
-const_value set 2
-	const BLACKTHORNPOKECENTER1F_NURSE
-	const BLACKTHORNPOKECENTER1F_GENTLEMAN
-	const BLACKTHORNPOKECENTER1F_TWIN
-	const BLACKTHORNPOKECENTER1F_COOLTRAINER_M
-
-BlackthornPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x195b79:
-	jumpstd pokecenternurse
-
-GentlemanScript_0x195b7c:
-	jumptextfaceplayer UnknownText_0x195b85
-
-TwinScript_0x195b7f:
-	jumptextfaceplayer UnknownText_0x195bfd
-
-CooltrainerMScript_0x195b82:
-	jumpstd happinesschecknpc
-
-UnknownText_0x195b85:
-	text "Deep inside far-"
-	line "off INDIGO PLATEAU"
-
-	para "is the #MON"
-	line "LEAGUE."
-
-	para "I hear the best"
-	line "trainers gather"
-
-	para "there from around"
-	line "the country."
-	done
-
-UnknownText_0x195bfd:
-	text "There was this"
-	line "move I just had"
-
-	para "to teach my #-"
-	line "MON."
-
-	para "So I got the MOVE"
-	line "DELETER to make it"
-	cont "forget an HM move."
-	done
-
-BlackthornPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 5, BLACKTHORN_CITY
-	warp_def $7, $4, 5, BLACKTHORN_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x195b79, -1
-	person_event SPRITE_GENTLEMAN, 3, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x195b7c, -1
-	person_event SPRITE_TWIN, 4, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TwinScript_0x195b7f, -1
-	person_event SPRITE_COOLTRAINER_M, 6, 7, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CooltrainerMScript_0x195b82, -1
--- /dev/null
+++ b/maps/BlackthornPokecenter1F.asm
@@ -1,0 +1,73 @@
+const_value set 2
+	const BLACKTHORNPOKECENTER1F_NURSE
+	const BLACKTHORNPOKECENTER1F_GENTLEMAN
+	const BLACKTHORNPOKECENTER1F_TWIN
+	const BLACKTHORNPOKECENTER1F_COOLTRAINER_M
+
+BlackthornPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x195b79:
+	jumpstd pokecenternurse
+
+GentlemanScript_0x195b7c:
+	jumptextfaceplayer UnknownText_0x195b85
+
+TwinScript_0x195b7f:
+	jumptextfaceplayer UnknownText_0x195bfd
+
+CooltrainerMScript_0x195b82:
+	jumpstd happinesschecknpc
+
+UnknownText_0x195b85:
+	text "Deep inside far-"
+	line "off INDIGO PLATEAU"
+
+	para "is the #MON"
+	line "LEAGUE."
+
+	para "I hear the best"
+	line "trainers gather"
+
+	para "there from around"
+	line "the country."
+	done
+
+UnknownText_0x195bfd:
+	text "There was this"
+	line "move I just had"
+
+	para "to teach my #-"
+	line "MON."
+
+	para "So I got the MOVE"
+	line "DELETER to make it"
+	cont "forget an HM move."
+	done
+
+BlackthornPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 5, BLACKTHORN_CITY
+	warp_def $7, $4, 5, BLACKTHORN_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x195b79, -1
+	person_event SPRITE_GENTLEMAN, 3, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x195b7c, -1
+	person_event SPRITE_TWIN, 4, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TwinScript_0x195b7f, -1
+	person_event SPRITE_COOLTRAINER_M, 6, 7, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CooltrainerMScript_0x195b82, -1
--- a/maps/CeladonCity.asm
+++ b/maps/CeladonCity.asm
@@ -71,7 +71,7 @@
 CeladonCityTrainerTips:
 	jumptext CeladonCityTrainerTipsText
 
-CeladonCityPokeCenterSign:
+CeladonCityPokecenterSign:
 	jumpstd pokecentersign
 
 CeladonCityHiddenPpUp:
@@ -261,7 +261,7 @@
 	signpost 9, 13, SIGNPOST_READ, CeladonCityMansionSign
 	signpost 21, 19, SIGNPOST_READ, CeladonCityGameCornerSign
 	signpost 21, 29, SIGNPOST_READ, CeladonCityTrainerTips
-	signpost 9, 30, SIGNPOST_READ, CeladonCityPokeCenterSign
+	signpost 9, 30, SIGNPOST_READ, CeladonCityPokecenterSign
 	signpost 21, 37, SIGNPOST_ITEM, CeladonCityHiddenPpUp
 
 .PersonEvents:
--- a/maps/CeladonPokeCenter1F.asm
+++ /dev/null
@@ -1,170 +1,0 @@
-const_value set 2
-	const CELADONPOKECENTER1F_NURSE
-	const CELADONPOKECENTER1F_GENTLEMAN
-	const CELADONPOKECENTER1F_PHARMACIST
-	const CELADONPOKECENTER1F_COOLTRAINER_F
-	const CELADONPOKECENTER1F_EUSINE
-
-CeladonPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x71e22:
-	jumpstd pokecenternurse
-
-GentlemanScript_0x71e25:
-	jumpstd happinesschecknpc
-
-CooltrainerFScript_0x71e28:
-	jumptextfaceplayer UnknownText_0x71e70
-
-PharmacistScript_0x71e2b:
-	jumptextfaceplayer UnknownText_0x71ec1
-
-CeladonEusine:
-	faceplayer
-	opentext
-	writetext CeladonEusineText1
-	buttonsound
-	writebyte SUICUNE
-	special SpecialMonCheck
-	iffalse .NoSuicune
-	special SpecialBeastsCheck
-	iftrue .HoOh
-	writetext NoBeastsText
-	waitbutton
-.NoSuicune:
-	closetext
-	end
-
-.HoOh:
-	writetext EusineLeavesCeladonText
-	waitbutton
-	closetext
-	checkcode VAR_FACING
-	if_equal $1, .Location1
-	applymovement CELADONPOKECENTER1F_EUSINE, .Movement1
-	jump .Continue
-
-.Location1:
-	applymovement CELADONPOKECENTER1F_EUSINE, .Movement2
-.Continue:
-	disappear CELADONPOKECENTER1F_EUSINE
-	playsound SFX_EXIT_BUILDING
-	waitsfx
-	end
-
-.Movement2:
-	step LEFT
-	step DOWN
-	step DOWN
-	step DOWN
-	step DOWN
-	step_end
-
-.Movement1:
-	step DOWN
-	step DOWN
-	step DOWN
-	step DOWN
-	step_end
-
-UnknownText_0x71e70:
-	text "ERIKA is a master"
-	line "of grass #MON."
-
-	para "She'll make you"
-	line "pay if you don't"
-	cont "watch yourself."
-	done
-
-UnknownText_0x71ec1:
-	text "TEAM ROCKET's"
-	line "hideout is in the"
-
-	para "basement of the"
-	line "GAME CORNER."
-
-	para "Oh, wait. That was"
-	line "three years ago."
-	done
-
-CeladonEusineText1:
-	text "EUSINE: Hi!"
-
-	para "I'm back visiting"
-	line "my hometown."
-
-	para "It's been quite a"
-	line "while."
-	done
-
-EusineLeavesCeladonText:
-	text "<PLAYER>, have you"
-	line "heard?"
-
-	para "There have been"
-	line "fresh rumors of a"
-
-	para "rainbow-colored"
-	line "#MON appearing"
-	cont "at TIN TOWER."
-
-	para "I've just had my"
-	line "party healed, so"
-
-	para "now I'm headed to"
-	line "ECRUTEAK."
-
-	para "I'll be seeing"
-	line "you, <PLAYER>!"
-	done
-
-NoBeastsText:
-	text "Oh, by the way,"
-	line "<PLAYER>."
-
-	para "Have you caught"
-	line "the legendary"
-
-	para "#MON RAIKOU and"
-	line "ENTEI?"
-
-	para $56, $56, $56
-
-	para "Okay…"
-
-	para "If you catch even"
-	line "one, I hope that"
-	cont "you'll inform me."
-
-	para "I'm counting on"
-	line "you, <PLAYER>!"
-	done
-
-CeladonPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 5, CELADON_CITY
-	warp_def $7, $4, 5, CELADON_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 5
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x71e22, -1
-	person_event SPRITE_GENTLEMAN, 5, 1, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x71e25, -1
-	person_event SPRITE_PHARMACIST, 3, 0, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, PharmacistScript_0x71e2b, -1
-	person_event SPRITE_COOLTRAINER_F, 6, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x71e28, -1
-	person_event SPRITE_SUPER_NERD, 3, 4, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, CeladonEusine, EVENT_SET_WHEN_FOUGHT_HO_OH
--- a/maps/CeladonPokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-CeladonPokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-CeladonPokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 3, CELADON_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/CeladonPokecenter1F.asm
@@ -1,0 +1,170 @@
+const_value set 2
+	const CELADONPOKECENTER1F_NURSE
+	const CELADONPOKECENTER1F_GENTLEMAN
+	const CELADONPOKECENTER1F_PHARMACIST
+	const CELADONPOKECENTER1F_COOLTRAINER_F
+	const CELADONPOKECENTER1F_EUSINE
+
+CeladonPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x71e22:
+	jumpstd pokecenternurse
+
+GentlemanScript_0x71e25:
+	jumpstd happinesschecknpc
+
+CooltrainerFScript_0x71e28:
+	jumptextfaceplayer UnknownText_0x71e70
+
+PharmacistScript_0x71e2b:
+	jumptextfaceplayer UnknownText_0x71ec1
+
+CeladonEusine:
+	faceplayer
+	opentext
+	writetext CeladonEusineText1
+	buttonsound
+	writebyte SUICUNE
+	special SpecialMonCheck
+	iffalse .NoSuicune
+	special SpecialBeastsCheck
+	iftrue .HoOh
+	writetext NoBeastsText
+	waitbutton
+.NoSuicune:
+	closetext
+	end
+
+.HoOh:
+	writetext EusineLeavesCeladonText
+	waitbutton
+	closetext
+	checkcode VAR_FACING
+	if_equal $1, .Location1
+	applymovement CELADONPOKECENTER1F_EUSINE, .Movement1
+	jump .Continue
+
+.Location1:
+	applymovement CELADONPOKECENTER1F_EUSINE, .Movement2
+.Continue:
+	disappear CELADONPOKECENTER1F_EUSINE
+	playsound SFX_EXIT_BUILDING
+	waitsfx
+	end
+
+.Movement2:
+	step LEFT
+	step DOWN
+	step DOWN
+	step DOWN
+	step DOWN
+	step_end
+
+.Movement1:
+	step DOWN
+	step DOWN
+	step DOWN
+	step DOWN
+	step_end
+
+UnknownText_0x71e70:
+	text "ERIKA is a master"
+	line "of grass #MON."
+
+	para "She'll make you"
+	line "pay if you don't"
+	cont "watch yourself."
+	done
+
+UnknownText_0x71ec1:
+	text "TEAM ROCKET's"
+	line "hideout is in the"
+
+	para "basement of the"
+	line "GAME CORNER."
+
+	para "Oh, wait. That was"
+	line "three years ago."
+	done
+
+CeladonEusineText1:
+	text "EUSINE: Hi!"
+
+	para "I'm back visiting"
+	line "my hometown."
+
+	para "It's been quite a"
+	line "while."
+	done
+
+EusineLeavesCeladonText:
+	text "<PLAYER>, have you"
+	line "heard?"
+
+	para "There have been"
+	line "fresh rumors of a"
+
+	para "rainbow-colored"
+	line "#MON appearing"
+	cont "at TIN TOWER."
+
+	para "I've just had my"
+	line "party healed, so"
+
+	para "now I'm headed to"
+	line "ECRUTEAK."
+
+	para "I'll be seeing"
+	line "you, <PLAYER>!"
+	done
+
+NoBeastsText:
+	text "Oh, by the way,"
+	line "<PLAYER>."
+
+	para "Have you caught"
+	line "the legendary"
+
+	para "#MON RAIKOU and"
+	line "ENTEI?"
+
+	para $56, $56, $56
+
+	para "Okay…"
+
+	para "If you catch even"
+	line "one, I hope that"
+	cont "you'll inform me."
+
+	para "I'm counting on"
+	line "you, <PLAYER>!"
+	done
+
+CeladonPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 5, CELADON_CITY
+	warp_def $7, $4, 5, CELADON_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 5
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x71e22, -1
+	person_event SPRITE_GENTLEMAN, 5, 1, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x71e25, -1
+	person_event SPRITE_PHARMACIST, 3, 0, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, PharmacistScript_0x71e2b, -1
+	person_event SPRITE_COOLTRAINER_F, 6, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x71e28, -1
+	person_event SPRITE_SUPER_NERD, 3, 4, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, CeladonEusine, EVENT_SET_WHEN_FOUGHT_HO_OH
--- /dev/null
+++ b/maps/CeladonPokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+CeladonPokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+CeladonPokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 3, CELADON_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/CeruleanCity.asm
+++ b/maps/CeruleanCity.asm
@@ -140,7 +140,7 @@
 CeruleanLockedDoor:
 	jumptext CeruleanLockedDoorText
 
-CeruleanCityPokeCenterSign:
+CeruleanCityPokecenterSign:
 	jumpstd pokecentersign
 
 CeruleanCityMartSign:
@@ -299,7 +299,7 @@
 	signpost 17, 25, SIGNPOST_READ, CeruleanPoliceSign
 	signpost 7, 23, SIGNPOST_READ, CeruleanCapeSign
 	signpost 29, 14, SIGNPOST_READ, CeruleanLockedDoor
-	signpost 21, 20, SIGNPOST_READ, CeruleanCityPokeCenterSign
+	signpost 21, 20, SIGNPOST_READ, CeruleanCityPokecenterSign
 	signpost 29, 26, SIGNPOST_READ, CeruleanCityMartSign
 	signpost 12, 2, SIGNPOST_ITEM, CeruleanCityHiddenBerserkGene
 
--- a/maps/CeruleanPokeCenter1F.asm
+++ /dev/null
@@ -1,85 +1,0 @@
-const_value set 2
-	const CERULEANPOKECENTER1F_NURSE
-	const CERULEANPOKECENTER1F_SUPER_NERD
-	const CERULEANPOKECENTER1F_GYM_GUY
-
-CeruleanPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x18820f:
-	jumpstd pokecenternurse
-
-SuperNerdScript_0x188212:
-	special Mobile_DummyReturnFalse
-	iftrue .mobile
-	jumptextfaceplayer UnknownText_0x188221
-
-.mobile
-	jumptextfaceplayer UnknownText_0x18828c
-
-GymGuyScript_0x18821e:
-	jumptextfaceplayer UnknownText_0x1882ff
-
-UnknownText_0x188221:
-	text "For battles, I'd"
-	line "much rather use"
-
-	para "#MON I've been"
-	line "raising, even if"
-
-	para "they're weaker"
-	line "than some newly"
-	cont "caught #MON."
-	done
-
-UnknownText_0x18828c:
-	text "Do you battle by"
-	line "mobile phone?"
-
-	para "If time runs out"
-	line "during a battle,"
-
-	para "waiting to see who"
-	line "won is really"
-	cont "nerve wracking."
-	done
-
-UnknownText_0x1882ff:
-	text "The MAGNET TRAIN"
-	line "travels at over"
-
-	para "340 mph. It goes"
-	line "between KANTO and"
-
-	para "JOHTO in almost no"
-	line "time at all."
-
-	para "It really makes"
-	line "JOHTO accessible."
-	done
-
-CeruleanPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 4, CERULEAN_CITY
-	warp_def $7, $4, 4, CERULEAN_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 3
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x18820f, -1
-	person_event SPRITE_SUPER_NERD, 4, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, SuperNerdScript_0x188212, -1
-	person_event SPRITE_GYM_GUY, 5, 1, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, GymGuyScript_0x18821e, -1
--- a/maps/CeruleanPokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-CeruleanPokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-CeruleanPokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 1, CERULEAN_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/CeruleanPokecenter1F.asm
@@ -1,0 +1,85 @@
+const_value set 2
+	const CERULEANPOKECENTER1F_NURSE
+	const CERULEANPOKECENTER1F_SUPER_NERD
+	const CERULEANPOKECENTER1F_GYM_GUY
+
+CeruleanPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x18820f:
+	jumpstd pokecenternurse
+
+SuperNerdScript_0x188212:
+	special Mobile_DummyReturnFalse
+	iftrue .mobile
+	jumptextfaceplayer UnknownText_0x188221
+
+.mobile
+	jumptextfaceplayer UnknownText_0x18828c
+
+GymGuyScript_0x18821e:
+	jumptextfaceplayer UnknownText_0x1882ff
+
+UnknownText_0x188221:
+	text "For battles, I'd"
+	line "much rather use"
+
+	para "#MON I've been"
+	line "raising, even if"
+
+	para "they're weaker"
+	line "than some newly"
+	cont "caught #MON."
+	done
+
+UnknownText_0x18828c:
+	text "Do you battle by"
+	line "mobile phone?"
+
+	para "If time runs out"
+	line "during a battle,"
+
+	para "waiting to see who"
+	line "won is really"
+	cont "nerve wracking."
+	done
+
+UnknownText_0x1882ff:
+	text "The MAGNET TRAIN"
+	line "travels at over"
+
+	para "340 mph. It goes"
+	line "between KANTO and"
+
+	para "JOHTO in almost no"
+	line "time at all."
+
+	para "It really makes"
+	line "JOHTO accessible."
+	done
+
+CeruleanPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 4, CERULEAN_CITY
+	warp_def $7, $4, 4, CERULEAN_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 3
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x18820f, -1
+	person_event SPRITE_SUPER_NERD, 4, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, SuperNerdScript_0x188212, -1
+	person_event SPRITE_GYM_GUY, 5, 1, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, GymGuyScript_0x18821e, -1
--- /dev/null
+++ b/maps/CeruleanPokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+CeruleanPokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+CeruleanPokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 1, CERULEAN_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/CherrygroveCity.asm
+++ b/maps/CherrygroveCity.asm
@@ -40,7 +40,7 @@
 	follow CHERRYGROVECITY_GRAMPS, PLAYER
 	applymovement CHERRYGROVECITY_GRAMPS, GuideGentMovement1
 	opentext
-	writetext GuideGentPokeCenterText
+	writetext GuideGentPokecenterText
 	waitbutton
 	closetext
 	applymovement CHERRYGROVECITY_GRAMPS, GuideGentMovement2
@@ -231,7 +231,7 @@
 GuideGentsHouseSign:
 	jumptext GuideGentsHouseSignText
 
-CherrygroveCityPokeCenterSign:
+CherrygroveCityPokecenterSign:
 	jumpstd pokecentersign
 
 CherrygroveCityMartSign:
@@ -354,7 +354,7 @@
 	line "Follow me!"
 	done
 
-GuideGentPokeCenterText:
+GuideGentPokecenterText:
 	text "This is a #MON"
 	line "CENTER. They heal"
 
@@ -568,7 +568,7 @@
 	signpost 8, 30, SIGNPOST_READ, CherrygroveCitySign
 	signpost 9, 23, SIGNPOST_READ, GuideGentsHouseSign
 	signpost 3, 24, SIGNPOST_READ, CherrygroveCityMartSign
-	signpost 3, 30, SIGNPOST_READ, CherrygroveCityPokeCenterSign
+	signpost 3, 30, SIGNPOST_READ, CherrygroveCityPokecenterSign
 
 .PersonEvents:
 	db 5
--- a/maps/CherrygrovePokeCenter1F.asm
+++ /dev/null
@@ -1,92 +1,0 @@
-const_value set 2
-	const CHERRYGROVEPOKECENTER1F_NURSE
-	const CHERRYGROVEPOKECENTER1F_FISHER
-	const CHERRYGROVEPOKECENTER1F_GENTLEMAN
-	const CHERRYGROVEPOKECENTER1F_TEACHER
-
-CherrygrovePokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x19696d:
-	jumpstd pokecenternurse
-
-FisherScript_0x196970:
-	jumptextfaceplayer UnknownText_0x19698a
-
-GentlemanScript_0x196973:
-	jumptextfaceplayer UnknownText_0x1969c8
-
-TeacherScript_0x196976:
-	faceplayer
-	opentext
-	checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
-	iftrue UnknownScript_0x196984
-	writetext UnknownText_0x1969f1
-	waitbutton
-	closetext
-	end
-
-UnknownScript_0x196984:
-	writetext UnknownText_0x196a46
-	waitbutton
-	closetext
-	end
-
-UnknownText_0x19698a:
-	text "It's great. I can"
-	line "store any number"
-
-	para "of #MON, and"
-	line "it's all free."
-	done
-
-UnknownText_0x1969c8:
-	text "That PC is free"
-	line "for any trainer"
-	cont "to use."
-	done
-
-UnknownText_0x1969f1:
-	text "The COMMUNICATION"
-	line "CENTER upstairs"
-	cont "was just built."
-
-	para "But they're still"
-	line "finishing it up."
-	done
-
-UnknownText_0x196a46:
-	text "The COMMUNICATION"
-	line "CENTER upstairs"
-	cont "was just built."
-
-	para "I traded #MON"
-	line "there already!"
-	done
-
-CherrygrovePokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 2, CHERRYGROVE_CITY
-	warp_def $7, $4, 2, CHERRYGROVE_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x19696d, -1
-	person_event SPRITE_FISHER, 3, 2, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, FisherScript_0x196970, -1
-	person_event SPRITE_GENTLEMAN, 6, 8, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x196973, -1
-	person_event SPRITE_TEACHER, 6, 1, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TeacherScript_0x196976, -1
--- /dev/null
+++ b/maps/CherrygrovePokecenter1F.asm
@@ -1,0 +1,92 @@
+const_value set 2
+	const CHERRYGROVEPOKECENTER1F_NURSE
+	const CHERRYGROVEPOKECENTER1F_FISHER
+	const CHERRYGROVEPOKECENTER1F_GENTLEMAN
+	const CHERRYGROVEPOKECENTER1F_TEACHER
+
+CherrygrovePokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x19696d:
+	jumpstd pokecenternurse
+
+FisherScript_0x196970:
+	jumptextfaceplayer UnknownText_0x19698a
+
+GentlemanScript_0x196973:
+	jumptextfaceplayer UnknownText_0x1969c8
+
+TeacherScript_0x196976:
+	faceplayer
+	opentext
+	checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
+	iftrue UnknownScript_0x196984
+	writetext UnknownText_0x1969f1
+	waitbutton
+	closetext
+	end
+
+UnknownScript_0x196984:
+	writetext UnknownText_0x196a46
+	waitbutton
+	closetext
+	end
+
+UnknownText_0x19698a:
+	text "It's great. I can"
+	line "store any number"
+
+	para "of #MON, and"
+	line "it's all free."
+	done
+
+UnknownText_0x1969c8:
+	text "That PC is free"
+	line "for any trainer"
+	cont "to use."
+	done
+
+UnknownText_0x1969f1:
+	text "The COMMUNICATION"
+	line "CENTER upstairs"
+	cont "was just built."
+
+	para "But they're still"
+	line "finishing it up."
+	done
+
+UnknownText_0x196a46:
+	text "The COMMUNICATION"
+	line "CENTER upstairs"
+	cont "was just built."
+
+	para "I traded #MON"
+	line "there already!"
+	done
+
+CherrygrovePokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 2, CHERRYGROVE_CITY
+	warp_def $7, $4, 2, CHERRYGROVE_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x19696d, -1
+	person_event SPRITE_FISHER, 3, 2, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, FisherScript_0x196970, -1
+	person_event SPRITE_GENTLEMAN, 6, 8, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x196973, -1
+	person_event SPRITE_TEACHER, 6, 1, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TeacherScript_0x196976, -1
--- a/maps/CianwoodCity.asm
+++ b/maps/CianwoodCity.asm
@@ -138,7 +138,7 @@
 CianwoodPokeSeerSign:
 	jumptext CianwoodPokeSeerSignText
 
-CianwoodPokeCenterSign:
+CianwoodPokecenterSign:
 	jumpstd pokecentersign
 
 CianwoodCityRock:
@@ -402,7 +402,7 @@
 	db 8
 	signpost 34, 20, SIGNPOST_READ, CianwoodCitySign
 	signpost 45, 7, SIGNPOST_READ, CianwoodGymSign
-	signpost 43, 24, SIGNPOST_READ, CianwoodPokeCenterSign
+	signpost 43, 24, SIGNPOST_READ, CianwoodPokecenterSign
 	signpost 47, 19, SIGNPOST_READ, CianwoodPharmacySign
 	signpost 32, 8, SIGNPOST_READ, CianwoodPhotoStudioSign
 	signpost 24, 8, SIGNPOST_READ, CianwoodPokeSeerSign
--- a/maps/CianwoodPokeCenter1F.asm
+++ /dev/null
@@ -1,155 +1,0 @@
-const_value set 2
-	const CIANWOODPOKECENTER1F_NURSE
-	const CIANWOODPOKECENTER1F_LASS
-	const CIANWOODPOKECENTER1F_GYM_GUY
-	const CIANWOODPOKECENTER1F_SUPER_NERD
-
-CianwoodPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x9dbcf:
-	jumpstd pokecenternurse
-
-LassScript_0x9dbd2:
-	jumptextfaceplayer UnknownText_0x9dbed
-
-CianwoodGymGuyScript:
-	faceplayer
-	checkevent EVENT_BEAT_CHUCK
-	iftrue .CianwoodGymGuyWinScript
-	opentext
-	writetext CianwoodGymGuyText
-	waitbutton
-	closetext
-	end
-
-.CianwoodGymGuyWinScript:
-	opentext
-	writetext CianwoodGymGuyWinText
-	waitbutton
-	closetext
-	end
-
-SuperNerdScript_0x9dbea:
-	jumptextfaceplayer UnknownText_0x9ded7
-
-UnknownText_0x9dbed:
-	text "Did you meet the"
-	line "#MANIAC?"
-
-	para "He's always brag-"
-	line "ging about his"
-	cont "rare #MON."
-	done
-
-CianwoodGymGuyText:
-	text "The #MON GYM"
-	line "trainers here are"
-	cont "macho bullies."
-
-	para "If I stick around,"
-	line "they might come"
-	cont "after me."
-
-	para "Here's some ad-"
-	line "vice: the GYM"
-
-	para "LEADER uses the"
-	line "fighting-type."
-
-	para "So you should"
-	line "confound him with"
-	cont "psychic #MON."
-
-	para "Wipe out his #-"
-	line "MON before they"
-
-	para "can use their"
-	line "physical strength."
-
-	para "And those boulders"
-	line "in the middle of"
-	cont "the GYM?"
-
-	para "If you don't move"
-	line "them correctly,"
-
-	para "you won't reach"
-	line "the GYM LEADER."
-
-	para "If you get stuck,"
-	line "go outside."
-	done
-
-CianwoodGymGuyWinText:
-	text "<PLAYER>! You won!"
-	line "I could tell by"
-	cont "looking at you!"
-	done
-
-UnknownText_0x9ddf2:
-	text "Don't you get the"
-	line "urge to show off"
-
-	para "your #MON to"
-	line "friends?"
-
-	para "I wish I could"
-	line "show the #MON I"
-
-	para "raised to my pal"
-	line "in VIOLET."
-	done
-
-UnknownText_0x9de66:
-	text "I've been battling"
-	line "my pal in VIOLET"
-
-	para "using a MOBILE"
-	line "ADAPTER link."
-
-	para "I'm down 5-7"
-	line "against him. I've"
-	cont "gotta crank it up!"
-	done
-
-UnknownText_0x9ded7:
-	text "I love showing off"
-	line "the #MON that"
-
-	para "I've raised."
-	line "Don't you?"
-
-	para "I'm going to get"
-	line "into a bunch of"
-
-	para "battles, and show"
-	line "off my #MON!"
-	done
-
-CianwoodPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 3, CIANWOOD_CITY
-	warp_def $7, $4, 3, CIANWOOD_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x9dbcf, -1
-	person_event SPRITE_LASS, 5, 1, SPRITEMOVEDATA_WALK_UP_DOWN, 1, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, LassScript_0x9dbd2, -1
-	person_event SPRITE_GYM_GUY, 3, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CianwoodGymGuyScript, -1
-	person_event SPRITE_SUPER_NERD, 6, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, SuperNerdScript_0x9dbea, -1
--- /dev/null
+++ b/maps/CianwoodPokecenter1F.asm
@@ -1,0 +1,155 @@
+const_value set 2
+	const CIANWOODPOKECENTER1F_NURSE
+	const CIANWOODPOKECENTER1F_LASS
+	const CIANWOODPOKECENTER1F_GYM_GUY
+	const CIANWOODPOKECENTER1F_SUPER_NERD
+
+CianwoodPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x9dbcf:
+	jumpstd pokecenternurse
+
+LassScript_0x9dbd2:
+	jumptextfaceplayer UnknownText_0x9dbed
+
+CianwoodGymGuyScript:
+	faceplayer
+	checkevent EVENT_BEAT_CHUCK
+	iftrue .CianwoodGymGuyWinScript
+	opentext
+	writetext CianwoodGymGuyText
+	waitbutton
+	closetext
+	end
+
+.CianwoodGymGuyWinScript:
+	opentext
+	writetext CianwoodGymGuyWinText
+	waitbutton
+	closetext
+	end
+
+SuperNerdScript_0x9dbea:
+	jumptextfaceplayer UnknownText_0x9ded7
+
+UnknownText_0x9dbed:
+	text "Did you meet the"
+	line "#MANIAC?"
+
+	para "He's always brag-"
+	line "ging about his"
+	cont "rare #MON."
+	done
+
+CianwoodGymGuyText:
+	text "The #MON GYM"
+	line "trainers here are"
+	cont "macho bullies."
+
+	para "If I stick around,"
+	line "they might come"
+	cont "after me."
+
+	para "Here's some ad-"
+	line "vice: the GYM"
+
+	para "LEADER uses the"
+	line "fighting-type."
+
+	para "So you should"
+	line "confound him with"
+	cont "psychic #MON."
+
+	para "Wipe out his #-"
+	line "MON before they"
+
+	para "can use their"
+	line "physical strength."
+
+	para "And those boulders"
+	line "in the middle of"
+	cont "the GYM?"
+
+	para "If you don't move"
+	line "them correctly,"
+
+	para "you won't reach"
+	line "the GYM LEADER."
+
+	para "If you get stuck,"
+	line "go outside."
+	done
+
+CianwoodGymGuyWinText:
+	text "<PLAYER>! You won!"
+	line "I could tell by"
+	cont "looking at you!"
+	done
+
+UnknownText_0x9ddf2:
+	text "Don't you get the"
+	line "urge to show off"
+
+	para "your #MON to"
+	line "friends?"
+
+	para "I wish I could"
+	line "show the #MON I"
+
+	para "raised to my pal"
+	line "in VIOLET."
+	done
+
+UnknownText_0x9de66:
+	text "I've been battling"
+	line "my pal in VIOLET"
+
+	para "using a MOBILE"
+	line "ADAPTER link."
+
+	para "I'm down 5-7"
+	line "against him. I've"
+	cont "gotta crank it up!"
+	done
+
+UnknownText_0x9ded7:
+	text "I love showing off"
+	line "the #MON that"
+
+	para "I've raised."
+	line "Don't you?"
+
+	para "I'm going to get"
+	line "into a bunch of"
+
+	para "battles, and show"
+	line "off my #MON!"
+	done
+
+CianwoodPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 3, CIANWOOD_CITY
+	warp_def $7, $4, 3, CIANWOOD_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x9dbcf, -1
+	person_event SPRITE_LASS, 5, 1, SPRITEMOVEDATA_WALK_UP_DOWN, 1, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, LassScript_0x9dbd2, -1
+	person_event SPRITE_GYM_GUY, 3, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CianwoodGymGuyScript, -1
+	person_event SPRITE_SUPER_NERD, 6, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, SuperNerdScript_0x9dbea, -1
--- a/maps/CinnabarIsland.asm
+++ b/maps/CinnabarIsland.asm
@@ -31,7 +31,7 @@
 CinnabarIslandSign:
 	jumptext CinnabarIslandSignText
 
-CinnabarIslandPokeCenterSign:
+CinnabarIslandPokecenterSign:
 	jumpstd pokecentersign
 
 CinnabarIslandHiddenRareCandy:
@@ -140,7 +140,7 @@
 
 .Signposts:
 	db 4
-	signpost 11, 12, SIGNPOST_READ, CinnabarIslandPokeCenterSign
+	signpost 11, 12, SIGNPOST_READ, CinnabarIslandPokecenterSign
 	signpost 11, 9, SIGNPOST_READ, CinnabarIslandGymSign
 	signpost 7, 7, SIGNPOST_READ, CinnabarIslandSign
 	signpost 1, 9, SIGNPOST_ITEM, CinnabarIslandHiddenRareCandy
--- a/maps/CinnabarPokeCenter1F.asm
+++ /dev/null
@@ -1,57 +1,0 @@
-const_value set 2
-	const CINNABARPOKECENTER1F_NURSE
-	const CINNABARPOKECENTER1F_COOLTRAINER_F
-	const CINNABARPOKECENTER1F_FISHER
-
-CinnabarPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x1ab32c:
-	jumpstd pokecenternurse
-
-CooltrainerFScript_0x1ab32f:
-	jumptextfaceplayer UnknownText_0x1ab335
-
-FisherScript_0x1ab332:
-	jumptextfaceplayer UnknownText_0x1ab37f
-
-UnknownText_0x1ab335:
-	text "CINNABAR GYM's"
-	line "BLAINE apparently"
-
-	para "lives alone in the"
-	line "SEAFOAM ISLANDS"
-	cont "cave…"
-	done
-
-UnknownText_0x1ab37f:
-	text "It's been a year"
-	line "since the volcano"
-	cont "erupted."
-	done
-
-CinnabarPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 1, CINNABAR_ISLAND
-	warp_def $7, $4, 1, CINNABAR_ISLAND
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 3
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x1ab32c, -1
-	person_event SPRITE_COOLTRAINER_F, 6, 7, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 2, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x1ab32f, -1
-	person_event SPRITE_FISHER, 4, 2, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, FisherScript_0x1ab332, -1
--- a/maps/CinnabarPokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-CinnabarPokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-CinnabarPokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 3, CINNABAR_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/CinnabarPokecenter1F.asm
@@ -1,0 +1,57 @@
+const_value set 2
+	const CINNABARPOKECENTER1F_NURSE
+	const CINNABARPOKECENTER1F_COOLTRAINER_F
+	const CINNABARPOKECENTER1F_FISHER
+
+CinnabarPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x1ab32c:
+	jumpstd pokecenternurse
+
+CooltrainerFScript_0x1ab32f:
+	jumptextfaceplayer UnknownText_0x1ab335
+
+FisherScript_0x1ab332:
+	jumptextfaceplayer UnknownText_0x1ab37f
+
+UnknownText_0x1ab335:
+	text "CINNABAR GYM's"
+	line "BLAINE apparently"
+
+	para "lives alone in the"
+	line "SEAFOAM ISLANDS"
+	cont "cave…"
+	done
+
+UnknownText_0x1ab37f:
+	text "It's been a year"
+	line "since the volcano"
+	cont "erupted."
+	done
+
+CinnabarPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 1, CINNABAR_ISLAND
+	warp_def $7, $4, 1, CINNABAR_ISLAND
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 3
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x1ab32c, -1
+	person_event SPRITE_COOLTRAINER_F, 6, 7, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 2, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x1ab32f, -1
+	person_event SPRITE_FISHER, 4, 2, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, FisherScript_0x1ab332, -1
--- /dev/null
+++ b/maps/CinnabarPokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+CinnabarPokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+CinnabarPokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 3, CINNABAR_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/Colosseum.asm
+++ b/maps/Colosseum.asm
@@ -12,10 +12,10 @@
 .MapCallbacks:
 	db 2
 	dbw MAPCALLBACK_OBJECTS, .SetWhichChris
-	dbw MAPCALLBACK_NEWMAP, .PreparePokeCenter2F
+	dbw MAPCALLBACK_NEWMAP, .PreparePokecenter2F
 
 .InitializeColosseum:
-	priorityjump .InitializeAndPreparePokeCenter2F
+	priorityjump .InitializeAndPreparePokecenter2F
 	end
 
 .DummyTrigger1:
@@ -36,11 +36,11 @@
 	appear COLOSSEUM_CHRIS2
 	return
 
-.PreparePokeCenter2F:
+.PreparePokecenter2F:
 	domaptrigger POKECENTER_2F, $2
 	return
 
-.InitializeAndPreparePokeCenter2F:
+.InitializeAndPreparePokecenter2F:
 	dotrigger $1
 	domaptrigger POKECENTER_2F, $2
 	end
--- a/maps/EcruteakCity.asm
+++ b/maps/EcruteakCity.asm
@@ -81,7 +81,7 @@
 BurnedTowerSign:
 	jumptext BurnedTowerSignText
 
-EcruteakCityPokeCenterSign:
+EcruteakCityPokecenterSign:
 	jumpstd pokecentersign
 
 EcruteakCityMartSign:
@@ -291,7 +291,7 @@
 	signpost 28, 8, SIGNPOST_READ, EcruteakGymSign
 	signpost 21, 21, SIGNPOST_READ, EcruteakDanceTheaterSign
 	signpost 10, 2, SIGNPOST_READ, BurnedTowerSign
-	signpost 27, 24, SIGNPOST_READ, EcruteakCityPokeCenterSign
+	signpost 27, 24, SIGNPOST_READ, EcruteakCityPokecenterSign
 	signpost 21, 30, SIGNPOST_READ, EcruteakCityMartSign
 	signpost 14, 23, SIGNPOST_ITEM, EcruteakCityHiddenHyperPotion
 
--- a/maps/EcruteakPokeCenter1F.asm
+++ /dev/null
@@ -1,231 +1,0 @@
-const_value set 2
-	const ECRUTEAKPOKECENTER1F_NURSE
-	const ECRUTEAKPOKECENTER1F_POKEFAN_M
-	const ECRUTEAKPOKECENTER1F_COOLTRAINER_F
-	const ECRUTEAKPOKECENTER1F_GYM_GUY
-	const ECRUTEAKPOKECENTER1F_BILL
-
-EcruteakPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 2
-	maptrigger .MeetBill
-	maptrigger .DummyTrigger
-
-.MapCallbacks:
-	db 0
-
-.MeetBill:
-	priorityjump .BillActivatesTimeCapsule
-	end
-
-.DummyTrigger:
-	end
-
-.BillActivatesTimeCapsule:
-	pause 30
-	playsound SFX_EXIT_BUILDING
-	appear ECRUTEAKPOKECENTER1F_BILL
-	waitsfx
-	applymovement ECRUTEAKPOKECENTER1F_BILL, EcruteakPokeCenter1FBillMovement1
-	applymovement PLAYER, EcruteakPokeCenter1FPlayerMovement1
-	spriteface ECRUTEAKPOKECENTER1F_NURSE, UP
-	pause 10
-	spriteface ECRUTEAKPOKECENTER1F_NURSE, DOWN
-	pause 30
-	spriteface ECRUTEAKPOKECENTER1F_NURSE, UP
-	pause 10
-	spriteface ECRUTEAKPOKECENTER1F_NURSE, DOWN
-	pause 20
-	spriteface ECRUTEAKPOKECENTER1F_BILL, DOWN
-	pause 10
-	opentext
-	writetext EcruteakPokeCenter1F_BillText1
-	buttonsound
-	jump .PointlessJump
-
-.PointlessJump:
-	writetext EcruteakPokeCenter1F_BillText2
-	waitbutton
-	closetext
-	spriteface PLAYER, DOWN
-	applymovement ECRUTEAKPOKECENTER1F_BILL, EcruteakPokeCenter1FBillMovement2
-	playsound SFX_EXIT_BUILDING
-	disappear ECRUTEAKPOKECENTER1F_BILL
-	clearevent EVENT_MET_BILL
-	setflag ENGINE_TIME_CAPSULE
-	dotrigger $1
-	waitsfx
-	end
-
-EcruteakPokeCenter1FNurseScript:
-	jumpstd pokecenternurse
-
-EcruteakPokeCenter1FPokefanMScript:
-	special Mobile_DummyReturnFalse
-	iftrue .mobile
-	jumptextfaceplayer EcruteakPokeCenter1FPokefanMText
-
-.mobile
-	jumptextfaceplayer EcruteakPokeCenter1FPokefanMTextMobile
-
-EcruteakPokeCenter1FCooltrainerFScript:
-	jumptextfaceplayer EcruteakPokeCenter1FCooltrainerFText
-
-EcruteakPokeCenter1FGymGuyScript:
-	jumptextfaceplayer EcruteakPokeCenter1FGymGuyText
-
-EcruteakPokeCenter1FBillMovement1:
-	step UP
-	step UP
-	step UP
-	step UP
-	step RIGHT
-	step RIGHT
-	step RIGHT
-	turn_head UP
-	step_end
-
-EcruteakPokeCenter1FBillMovement2:
-	step RIGHT
-	step DOWN
-	step DOWN
-	step DOWN
-	step DOWN
-	step_end
-
-EcruteakPokeCenter1FPlayerMovement1:
-	step UP
-	step UP
-	step UP
-	step_end
-
-EcruteakPokeCenter1F_BillText1:
-	text "Hi, I'm BILL. And"
-	line "who are you?"
-
-	para "Hmm, <PLAYER>, huh?"
-	line "You've come at the"
-	cont "right time."
-	done
-
-EcruteakPokeCenter1F_BillText2:
-	text "I just finished"
-	line "adjustments on my"
-	cont "TIME CAPSULE."
-
-	para "You know that"
-	line "#MON can be"
-	cont "traded, right?"
-
-	para "My TIME CAPSULE"
-	line "was developed to"
-
-	para "enable trades with"
-	line "the past."
-
-	para "But you can't send"
-	line "anything that"
-
-	para "didn't exist in"
-	line "the past."
-
-	para "If you did, the PC"
-	line "in the past would"
-	cont "have a breakdown."
-
-	para "So you have to"
-	line "remove anything"
-
-	para "that wasn't around"
-	line "in the past."
-
-	para "Put simply, no"
-	line "sending new moves"
-
-	para "or new #MON in"
-	line "the TIME CAPSULE."
-
-	para "Don't you worry."
-	line "I'm done with the"
-	cont "adjustments."
-
-	para "Tomorrow, TIME"
-	line "CAPSULES will be"
-
-	para "running at all"
-	line "#MON CENTERS."
-
-	para "I have to hurry on"
-	line "back to GOLDENROD"
-	cont "and see my folks."
-
-	para "Buh-bye!"
-	done
-
-EcruteakPokeCenter1FPokefanMText:
-	text "The way the KIMONO"
-	line "GIRLS dance is"
-
-	para "marvelous. Just"
-	line "like the way they"
-	cont "use their #MON."
-	done
-
-EcruteakPokeCenter1FPokefanMTextMobile:
-	text "You must be hoping"
-	line "to battle more"
-
-	para "people, right?"
-	line "There's apparently"
-
-	para "some place where"
-	line "trainers gather."
-
-	para "Where, you ask?"
-
-	para "It's a little past"
-	line "OLIVINE CITY."
-	done
-
-EcruteakPokeCenter1FCooltrainerFText:
-	text "MORTY, the GYM"
-	line "LEADER, is soooo"
-	cont "cool."
-
-	para "His #MON are"
-	line "really tough too."
-	done
-
-EcruteakPokeCenter1FGymGuyText:
-	text "LAKE OF RAGE…"
-
-	para "The appearance of"
-	line "a GYARADOS swarm…"
-
-	para "I smell a conspir-"
-	line "acy. I know it!"
-	done
-
-EcruteakPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 6, ECRUTEAK_CITY
-	warp_def $7, $4, 6, ECRUTEAK_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 5
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, EcruteakPokeCenter1FNurseScript, -1
-	person_event SPRITE_POKEFAN_M, 6, 7, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, EcruteakPokeCenter1FPokefanMScript, -1
-	person_event SPRITE_COOLTRAINER_F, 4, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, EcruteakPokeCenter1FCooltrainerFScript, -1
-	person_event SPRITE_GYM_GUY, 1, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, EcruteakPokeCenter1FGymGuyScript, -1
-	person_event SPRITE_BILL, 7, 0, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, ObjectEvent, EVENT_ECRUTEAK_POKE_CENTER_BILL
--- /dev/null
+++ b/maps/EcruteakPokecenter1F.asm
@@ -1,0 +1,231 @@
+const_value set 2
+	const ECRUTEAKPOKECENTER1F_NURSE
+	const ECRUTEAKPOKECENTER1F_POKEFAN_M
+	const ECRUTEAKPOKECENTER1F_COOLTRAINER_F
+	const ECRUTEAKPOKECENTER1F_GYM_GUY
+	const ECRUTEAKPOKECENTER1F_BILL
+
+EcruteakPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 2
+	maptrigger .MeetBill
+	maptrigger .DummyTrigger
+
+.MapCallbacks:
+	db 0
+
+.MeetBill:
+	priorityjump .BillActivatesTimeCapsule
+	end
+
+.DummyTrigger:
+	end
+
+.BillActivatesTimeCapsule:
+	pause 30
+	playsound SFX_EXIT_BUILDING
+	appear ECRUTEAKPOKECENTER1F_BILL
+	waitsfx
+	applymovement ECRUTEAKPOKECENTER1F_BILL, EcruteakPokecenter1FBillMovement1
+	applymovement PLAYER, EcruteakPokecenter1FPlayerMovement1
+	spriteface ECRUTEAKPOKECENTER1F_NURSE, UP
+	pause 10
+	spriteface ECRUTEAKPOKECENTER1F_NURSE, DOWN
+	pause 30
+	spriteface ECRUTEAKPOKECENTER1F_NURSE, UP
+	pause 10
+	spriteface ECRUTEAKPOKECENTER1F_NURSE, DOWN
+	pause 20
+	spriteface ECRUTEAKPOKECENTER1F_BILL, DOWN
+	pause 10
+	opentext
+	writetext EcruteakPokecenter1F_BillText1
+	buttonsound
+	jump .PointlessJump
+
+.PointlessJump:
+	writetext EcruteakPokecenter1F_BillText2
+	waitbutton
+	closetext
+	spriteface PLAYER, DOWN
+	applymovement ECRUTEAKPOKECENTER1F_BILL, EcruteakPokecenter1FBillMovement2
+	playsound SFX_EXIT_BUILDING
+	disappear ECRUTEAKPOKECENTER1F_BILL
+	clearevent EVENT_MET_BILL
+	setflag ENGINE_TIME_CAPSULE
+	dotrigger $1
+	waitsfx
+	end
+
+EcruteakPokecenter1FNurseScript:
+	jumpstd pokecenternurse
+
+EcruteakPokecenter1FPokefanMScript:
+	special Mobile_DummyReturnFalse
+	iftrue .mobile
+	jumptextfaceplayer EcruteakPokecenter1FPokefanMText
+
+.mobile
+	jumptextfaceplayer EcruteakPokecenter1FPokefanMTextMobile
+
+EcruteakPokecenter1FCooltrainerFScript:
+	jumptextfaceplayer EcruteakPokecenter1FCooltrainerFText
+
+EcruteakPokecenter1FGymGuyScript:
+	jumptextfaceplayer EcruteakPokecenter1FGymGuyText
+
+EcruteakPokecenter1FBillMovement1:
+	step UP
+	step UP
+	step UP
+	step UP
+	step RIGHT
+	step RIGHT
+	step RIGHT
+	turn_head UP
+	step_end
+
+EcruteakPokecenter1FBillMovement2:
+	step RIGHT
+	step DOWN
+	step DOWN
+	step DOWN
+	step DOWN
+	step_end
+
+EcruteakPokecenter1FPlayerMovement1:
+	step UP
+	step UP
+	step UP
+	step_end
+
+EcruteakPokecenter1F_BillText1:
+	text "Hi, I'm BILL. And"
+	line "who are you?"
+
+	para "Hmm, <PLAYER>, huh?"
+	line "You've come at the"
+	cont "right time."
+	done
+
+EcruteakPokecenter1F_BillText2:
+	text "I just finished"
+	line "adjustments on my"
+	cont "TIME CAPSULE."
+
+	para "You know that"
+	line "#MON can be"
+	cont "traded, right?"
+
+	para "My TIME CAPSULE"
+	line "was developed to"
+
+	para "enable trades with"
+	line "the past."
+
+	para "But you can't send"
+	line "anything that"
+
+	para "didn't exist in"
+	line "the past."
+
+	para "If you did, the PC"
+	line "in the past would"
+	cont "have a breakdown."
+
+	para "So you have to"
+	line "remove anything"
+
+	para "that wasn't around"
+	line "in the past."
+
+	para "Put simply, no"
+	line "sending new moves"
+
+	para "or new #MON in"
+	line "the TIME CAPSULE."
+
+	para "Don't you worry."
+	line "I'm done with the"
+	cont "adjustments."
+
+	para "Tomorrow, TIME"
+	line "CAPSULES will be"
+
+	para "running at all"
+	line "#MON CENTERS."
+
+	para "I have to hurry on"
+	line "back to GOLDENROD"
+	cont "and see my folks."
+
+	para "Buh-bye!"
+	done
+
+EcruteakPokecenter1FPokefanMText:
+	text "The way the KIMONO"
+	line "GIRLS dance is"
+
+	para "marvelous. Just"
+	line "like the way they"
+	cont "use their #MON."
+	done
+
+EcruteakPokecenter1FPokefanMTextMobile:
+	text "You must be hoping"
+	line "to battle more"
+
+	para "people, right?"
+	line "There's apparently"
+
+	para "some place where"
+	line "trainers gather."
+
+	para "Where, you ask?"
+
+	para "It's a little past"
+	line "OLIVINE CITY."
+	done
+
+EcruteakPokecenter1FCooltrainerFText:
+	text "MORTY, the GYM"
+	line "LEADER, is soooo"
+	cont "cool."
+
+	para "His #MON are"
+	line "really tough too."
+	done
+
+EcruteakPokecenter1FGymGuyText:
+	text "LAKE OF RAGE…"
+
+	para "The appearance of"
+	line "a GYARADOS swarm…"
+
+	para "I smell a conspir-"
+	line "acy. I know it!"
+	done
+
+EcruteakPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 6, ECRUTEAK_CITY
+	warp_def $7, $4, 6, ECRUTEAK_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 5
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, EcruteakPokecenter1FNurseScript, -1
+	person_event SPRITE_POKEFAN_M, 6, 7, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, EcruteakPokecenter1FPokefanMScript, -1
+	person_event SPRITE_COOLTRAINER_F, 4, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, EcruteakPokecenter1FCooltrainerFScript, -1
+	person_event SPRITE_GYM_GUY, 1, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, EcruteakPokecenter1FGymGuyScript, -1
+	person_event SPRITE_BILL, 7, 0, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, ObjectEvent, EVENT_ECRUTEAK_POKE_CENTER_BILL
--- a/maps/FuchsiaCity.asm
+++ b/maps/FuchsiaCity.asm
@@ -43,7 +43,7 @@
 NoLitteringSign:
 	jumptext NoLitteringSignText
 
-FuchsiaCityPokeCenterSign:
+FuchsiaCityPokecenterSign:
 	jumpstd pokecentersign
 
 FuchsiaCityMartSign:
@@ -153,7 +153,7 @@
 	signpost 29, 27, SIGNPOST_READ, WardensHomeSign
 	signpost 5, 17, SIGNPOST_READ, SafariZoneClosedSign
 	signpost 15, 13, SIGNPOST_READ, NoLitteringSign
-	signpost 27, 20, SIGNPOST_READ, FuchsiaCityPokeCenterSign
+	signpost 27, 20, SIGNPOST_READ, FuchsiaCityPokecenterSign
 	signpost 13, 6, SIGNPOST_READ, FuchsiaCityMartSign
 
 .PersonEvents:
--- a/maps/FuchsiaPokeCenter1F.asm
+++ /dev/null
@@ -1,112 +1,0 @@
-const_value set 2
-	const FUCHSIAPOKECENTER1F_NURSE
-	const FUCHSIAPOKECENTER1F_COOLTRAINER_M
-	const FUCHSIAPOKECENTER1F_COOLTRAINER_F
-	const FUCHSIAPOKECENTER1F_JANINE_IMPERSONATOR
-
-FuchsiaPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 1
-	maptrigger .DummyTrigger
-
-.MapCallbacks:
-	db 0
-
-.DummyTrigger:
-	end
-
-NurseScript_0x196459:
-	jumpstd pokecenternurse
-
-CooltrainerMScript_0x19645c:
-	jumptextfaceplayer UnknownText_0x196494
-
-CooltrainerFScript_0x19645f:
-	jumptextfaceplayer UnknownText_0x1964dc
-
-JanineImpersonatorScript_0x196462:
-	faceplayer
-	opentext
-	writetext UnknownText_0x19652e
-	waitbutton
-	closetext
-	applymovement FUCHSIAPOKECENTER1F_JANINE_IMPERSONATOR, MovementData_0x196486
-	faceplayer
-	variablesprite SPRITE_JANINE_IMPERSONATOR, SPRITE_JANINE
-	special MapCallbackSprites_LoadUsedSpritesGFX
-	opentext
-	writetext UnknownText_0x19654e
-	waitbutton
-	closetext
-	applymovement FUCHSIAPOKECENTER1F_JANINE_IMPERSONATOR, MovementData_0x196486
-	faceplayer
-	variablesprite SPRITE_JANINE_IMPERSONATOR, SPRITE_LASS
-	special MapCallbackSprites_LoadUsedSpritesGFX
-	end
-
-MovementData_0x196486:
-	turn_head DOWN
-	turn_head LEFT
-	turn_head UP
-	turn_head RIGHT
-	turn_head DOWN
-	turn_head LEFT
-	turn_head UP
-	turn_head RIGHT
-	turn_head DOWN
-	turn_head LEFT
-	turn_head UP
-	turn_head RIGHT
-	turn_head DOWN
-	step_end
-
-UnknownText_0x196494:
-	text "Hey! You have a"
-	line "brand new kind of"
-	cont "#DEX."
-
-	para "Did PROF.OAK give"
-	line "that to you?"
-	done
-
-UnknownText_0x1964dc:
-	text "I got quite a"
-	line "shock at the GYM."
-
-	para "There were all"
-	line "these girls who"
-	cont "looked identical."
-	done
-
-UnknownText_0x19652e:
-	text "I'm JANINE! Hocus-"
-	line "pocus… Poof!"
-	done
-
-UnknownText_0x19654e:
-	text "See? I look just"
-	line "like her now!"
-	done
-
-FuchsiaPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 5, FUCHSIA_CITY
-	warp_def $7, $4, 5, FUCHSIA_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, NurseScript_0x196459, -1
-	person_event SPRITE_COOLTRAINER_M, 4, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerMScript_0x19645c, -1
-	person_event SPRITE_COOLTRAINER_F, 4, 1, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x19645f, -1
-	person_event SPRITE_JANINE_IMPERSONATOR, 3, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, JanineImpersonatorScript_0x196462, -1
--- a/maps/FuchsiaPokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-FuchsiaPokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-FuchsiaPokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 3, FUCHSIA_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/FuchsiaPokecenter1F.asm
@@ -1,0 +1,112 @@
+const_value set 2
+	const FUCHSIAPOKECENTER1F_NURSE
+	const FUCHSIAPOKECENTER1F_COOLTRAINER_M
+	const FUCHSIAPOKECENTER1F_COOLTRAINER_F
+	const FUCHSIAPOKECENTER1F_JANINE_IMPERSONATOR
+
+FuchsiaPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 1
+	maptrigger .DummyTrigger
+
+.MapCallbacks:
+	db 0
+
+.DummyTrigger:
+	end
+
+NurseScript_0x196459:
+	jumpstd pokecenternurse
+
+CooltrainerMScript_0x19645c:
+	jumptextfaceplayer UnknownText_0x196494
+
+CooltrainerFScript_0x19645f:
+	jumptextfaceplayer UnknownText_0x1964dc
+
+JanineImpersonatorScript_0x196462:
+	faceplayer
+	opentext
+	writetext UnknownText_0x19652e
+	waitbutton
+	closetext
+	applymovement FUCHSIAPOKECENTER1F_JANINE_IMPERSONATOR, MovementData_0x196486
+	faceplayer
+	variablesprite SPRITE_JANINE_IMPERSONATOR, SPRITE_JANINE
+	special MapCallbackSprites_LoadUsedSpritesGFX
+	opentext
+	writetext UnknownText_0x19654e
+	waitbutton
+	closetext
+	applymovement FUCHSIAPOKECENTER1F_JANINE_IMPERSONATOR, MovementData_0x196486
+	faceplayer
+	variablesprite SPRITE_JANINE_IMPERSONATOR, SPRITE_LASS
+	special MapCallbackSprites_LoadUsedSpritesGFX
+	end
+
+MovementData_0x196486:
+	turn_head DOWN
+	turn_head LEFT
+	turn_head UP
+	turn_head RIGHT
+	turn_head DOWN
+	turn_head LEFT
+	turn_head UP
+	turn_head RIGHT
+	turn_head DOWN
+	turn_head LEFT
+	turn_head UP
+	turn_head RIGHT
+	turn_head DOWN
+	step_end
+
+UnknownText_0x196494:
+	text "Hey! You have a"
+	line "brand new kind of"
+	cont "#DEX."
+
+	para "Did PROF.OAK give"
+	line "that to you?"
+	done
+
+UnknownText_0x1964dc:
+	text "I got quite a"
+	line "shock at the GYM."
+
+	para "There were all"
+	line "these girls who"
+	cont "looked identical."
+	done
+
+UnknownText_0x19652e:
+	text "I'm JANINE! Hocus-"
+	line "pocus… Poof!"
+	done
+
+UnknownText_0x19654e:
+	text "See? I look just"
+	line "like her now!"
+	done
+
+FuchsiaPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 5, FUCHSIA_CITY
+	warp_def $7, $4, 5, FUCHSIA_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, NurseScript_0x196459, -1
+	person_event SPRITE_COOLTRAINER_M, 4, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerMScript_0x19645c, -1
+	person_event SPRITE_COOLTRAINER_F, 4, 1, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x19645f, -1
+	person_event SPRITE_JANINE_IMPERSONATOR, 3, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, JanineImpersonatorScript_0x196462, -1
--- /dev/null
+++ b/maps/FuchsiaPokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+FuchsiaPokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+FuchsiaPokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 3, FUCHSIA_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/GoldenrodCity.asm
+++ b/maps/GoldenrodCity.asm
@@ -266,7 +266,7 @@
 GoldenrodCityUndergroundSignSouth:
 	jumptext GoldenrodCityUndergroundSignSouthText
 
-GoldenrodCityPokeCenterSign:
+GoldenrodCityPokecenterSign:
 	jumpstd pokecentersign
 
 GoldenrodCityFlowerShopSign:
@@ -591,7 +591,7 @@
 	signpost 7, 12, SIGNPOST_READ, GoldenrodCityNameRaterSign
 	signpost 6, 8, SIGNPOST_READ, GoldenrodCityUndergroundSignNorth
 	signpost 30, 12, SIGNPOST_READ, GoldenrodCityUndergroundSignSouth
-	signpost 27, 16, SIGNPOST_UP, GoldenrodCityPokeCenterSign
+	signpost 27, 16, SIGNPOST_UP, GoldenrodCityPokecenterSign
 	signpost 6, 30, SIGNPOST_READ, GoldenrodCityFlowerShopSign
 
 .PersonEvents:
--- a/maps/GoldenrodPokeCenter1F.asm
+++ /dev/null
@@ -1,832 +1,0 @@
-const_value set 2
-	const GOLDENRODPOKECENTER1F_NURSE
-	const GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
-	const GOLDENRODPOKECENTER1F_GAMEBOY_KID
-	const GOLDENRODPOKECENTER1F_LASS
-	const GOLDENRODPOKECENTER1F_POKEFAN_F
-
-GoldenrodPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x60f91:
-	jumpstd pokecenternurse
-
-GoldenrodPokeCenter1F_GSBallTriggerLeft:
-	writebyte BATTLETOWERACTION_CHECKMOBILEEVENT
-	special BattleTowerAction
-	if_equal MOBILE_EVENT_OBJECT_GS_BALL, .gsball
-	end
-
-.gsball
-	checkevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
-	iftrue .cancel
-	playsound SFX_EXIT_BUILDING
-	moveperson GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, $0, $7
-	disappear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
-	appear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
-	playmusic MUSIC_SHOW_ME_AROUND
-	applymovement GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, MovementData_0x6105a
-	spriteface PLAYER, UP
-	opentext
-	writetext UnknownText_0x622f0
-	waitbutton
-	verbosegiveitem GS_BALL
-	setevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
-	setevent EVENT_CAN_GIVE_GS_BALL_TO_KURT
-	writetext UnknownText_0x62359
-	waitbutton
-	closetext
-	applymovement GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, MovementData_0x61060
-	special RestartMapMusic
-	disappear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
-	playsound SFX_EXIT_BUILDING
-.cancel
-	end
-
-GoldenrodPokeCenter1F_GSBallTriggerRight:
-	writebyte BATTLETOWERACTION_CHECKMOBILEEVENT
-	special BattleTowerAction
-	if_equal MOBILE_EVENT_OBJECT_GS_BALL, .gsball
-	end
-
-.gsball
-	checkevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
-	iftrue .cancel
-	playsound SFX_EXIT_BUILDING
-	moveperson GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, $0, $7
-	disappear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
-	appear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
-	playmusic MUSIC_SHOW_ME_AROUND
-	applymovement GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, MovementData_0x61065
-	spriteface PLAYER, UP
-	opentext
-	writetext UnknownText_0x622f0
-	waitbutton
-	verbosegiveitem GS_BALL
-	setevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
-	setevent EVENT_CAN_GIVE_GS_BALL_TO_KURT
-	writetext UnknownText_0x62359
-	waitbutton
-	closetext
-	applymovement GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, MovementData_0x6106c
-	special RestartMapMusic
-	disappear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
-	playsound SFX_EXIT_BUILDING
-.cancel
-	end
-
-GameboyKidScript_0x6101e:
-	jumptextfaceplayer UnknownText_0x62105
-
-LassScript_0x61021:
-	jumptextfaceplayer UnknownText_0x62260
-
-PokefanFScript_0x61024:
-	faceplayer
-	opentext
-	writetext UnknownText_0x623fb
-	waitbutton
-	writetext UnknownText_0x6248c
-	yesorno
-	iffalse UnknownScript_0x6104b
-	takeitem EON_MAIL
-	iffalse UnknownScript_0x6104b
-	writetext UnknownText_0x62549
-	waitbutton
-	writetext UnknownText_0x624a4
-	waitbutton
-	verbosegiveitem REVIVE
-	iffalse UnknownScript_0x61051
-	writetext UnknownText_0x624e9
-	waitbutton
-	closetext
-	end
-
-UnknownScript_0x6104b:
-	writetext UnknownText_0x62509
-	waitbutton
-	closetext
-	end
-
-UnknownScript_0x61051:
-	giveitem EON_MAIL
-	writetext UnknownText_0x6252a
-	waitbutton
-	closetext
-	end
-
-MovementData_0x6105a:
-	step UP
-	step RIGHT
-	step RIGHT
-	step RIGHT
-	turn_head DOWN
-	step_end
-
-MovementData_0x61060:
-	step LEFT
-	step LEFT
-	step LEFT
-	step DOWN
-	step_end
-
-MovementData_0x61065:
-	step UP
-	step RIGHT
-	step RIGHT
-	step RIGHT
-	step RIGHT
-	turn_head DOWN
-	step_end
-
-MovementData_0x6106c:
-	step LEFT
-	step LEFT
-	step LEFT
-	step LEFT
-	step DOWN
-	step_end
-
-; unused
-UnknownText_0x61072:
-	text "Hello! Welcome to"
-	line "#COM CENTER"
-	cont "TRADE CORNER."
-
-	para "You can trade"
-	line "#MON with other"
-	cont "people far away."
-	done
-
-UnknownText_0x610ce:
-	text "To make a trade,"
-	line "we must hold your"
-	cont "#MON."
-
-	para "Would you like to"
-	line "trade?"
-	done
-
-UnknownText_0x61111:
-	text "What kind of"
-	line "#MON do you"
-	cont "want in return?"
-	done
-
-UnknownText_0x6113b:
-	text "Fine. We will try"
-	line "to trade your"
-
-	para "@"
-	text_from_ram StringBuffer3
-	text " for"
-	line "@"
-	text_from_ram StringBuffer4
-	text "."
-
-	para "We'll have to hold"
-	line "your #MON"
-	cont "during the trade."
-
-	para "Please wait while"
-	line "we prepare the"
-	cont "room for it."
-	done
-
-UnknownText_0x611c9:
-	text "Fine. We will try"
-	line "to trade your"
-
-	para "@"
-	text_from_ram StringBuffer3
-	text " for a"
-	line "#MON that you"
-	cont "have never seen."
-
-	para "We'll have to hold"
-	line "your #MON"
-	cont "during the trade."
-
-	para "Please wait while"
-	line "we prepare the"
-	cont "room for it."
-	done
-
-UnknownText_0x61271:
-	text "Your trade #MON"
-	line "has been received."
-
-	para "It will take time"
-	line "to find a trade"
-
-	para "partner. Please"
-	line "come back later."
-	done
-
-UnknownText_0x612d8:
-	text "Oh? You have only"
-	line "one #MON in"
-	cont "your party. "
-
-	para "Please come back"
-	line "once you've in-"
-	cont "creased the size"
-	cont "of your party."
-	done
-
-UnknownText_0x61344:
-	text "We hope to see you"
-	line "again."
-	done
-
-UnknownText_0x6135f:
-	text "Communication"
-	line "error…"
-	done
-
-UnknownText_0x61375:
-	text "If we accept that"
-	line "#MON, what will"
-	cont "you battle with?"
-	done
-
-UnknownText_0x613a9:
-	text "Sorry. We can't"
-	line "accept an EGG."
-	done
-
-UnknownText_0x613c8:
-	text "Sorry, but your"
-	line "#MON appears to"
-
-	para "be abnormal. We"
-	line "can't accept it."
-	done
-
-UnknownText_0x61409:
-	text "Oh? Aren't we"
-	line "already holding a"
-	cont "#MON of yours?"
-	done
-
-UnknownText_0x61438:
-	text "We'll check the"
-	line "rooms."
-
-	para "Please wait."
-	done
-
-UnknownText_0x6145c:
-	text "Thank you for your"
-	line "patience."
-
-	para "A trade partner"
-	line "has been found."
-	done
-
-UnknownText_0x6149a:
-	text "It's your new"
-	line "partner."
-
-	para "Please take care"
-	line "of it with love."
-
-	para "We hope to see you"
-	line "again."
-	done
-
-UnknownText_0x614ed:
-	text "Uh-oh. Your party"
-	line "is already full."
-
-	para "Please come back"
-	line "when you have room"
-	cont "in your party."
-	done
-
-UnknownText_0x61544:
-	text "It's unfortunate,"
-	line "but no one has"
-
-	para "come forward as a"
-	line "trade partner."
-
-	para "Would you like"
-	line "your #MON back?"
-	done
-
-UnknownText_0x615a5:
-	text "We have returned"
-	line "your #MON."
-	done
-
-UnknownText_0x615c2:
-	text "It's unfortunate,"
-	line "but no one has"
-
-	para "come forward as a"
-	line "trade partner."
-
-	para "We've held your"
-	line "#MON for a long"
-
-	para "time. As a result,"
-	line "it is very lonely."
-
-	para "Sorry, but we must"
-	line "return it to you."
-	done
-
-UnknownText_0x6166e:
-	text "We hope to see you"
-	line "again."
-	done
-
-UnknownText_0x61689:
-	text "Fine. We will"
-	line "continue to hold"
-	cont "your #MON."
-	done
-
-UnknownText_0x616b4:
-	text "Oh? You left your"
-	line "#MON with us"
-	cont "only recently."
-
-	para "Please come back"
-	line "later."
-	done
-
-UnknownText_0x616fb:
-	text "We'll SAVE before"
-	line "connecting to the"
-	cont "CENTER."
-	done
-
-UnknownText_0x61727:
-	text "Which #MON do"
-	line "you want to trade?"
-	done
-
-UnknownText_0x61749:
-	text "Sorry, but we must"
-	line "cancel the trade."
-	done
-
-UnknownText_0x6176f:
-	text "Oh!"
-
-	para "I see you have an"
-	line "EGG TICKET!"
-
-	para "It's a coupon that"
-	line "special people can"
-
-	para "redeem for a"
-	line "special #MON!"
-	done
-
-UnknownText_0x617d2:
-	text "Let me give you a"
-	line "quick briefing."
-
-	para "Trades held at the"
-	line "TRADE CORNER are"
-
-	para "between two"
-	line "trainers who don't"
-
-	para "know each other's"
-	line "identity."
-
-	para "As a result, it"
-	line "may take time."
-
-	para "However, an ODD"
-	line "EGG is available"
-	cont "just for you."
-
-	para "It will be sent to"
-	line "you right away."
-
-	para "Please choose one"
-	line "of the rooms in"
-
-	para "the CENTER."
-	line "An ODD EGG will be"
-
-	para "sent from the"
-	line "chosen room."
-	done
-
-UnknownText_0x6191f:
-	text "Please wait a"
-	line "moment."
-	done
-
-UnknownText_0x61936:
-	text "Thank you for"
-	line "waiting."
-
-	para "We received your"
-	line "ODD EGG."
-
-	para "Here it is!"
-
-	para "Please raise it"
-	line "with loving care."
-	done
-
-UnknownText_0x61996:
-	text "I'm awfully sorry."
-
-	para "The EGG TICKET"
-	line "exchange service"
-	cont "isn't running now."
-	done
-
-UnknownText_0x619db:
-	text "It's a #MON"
-	line "NEWS MACHINE."
-	done
-
-UnknownText_0x619f5:
-	text "What would you"
-	line "like to do?"
-	done
-
-UnknownText_0x61a11:
-	text "#MON NEWS is"
-	line "news compiled from"
-
-	para "the SAVE files of"
-	line "#MON trainers."
-
-	para "When reading the"
-	line "NEWS, your SAVE"
-
-	para "file may be sent"
-	line "out."
-
-	para "The SAVE file data"
-	line "will contain your"
-
-	para "adventure log and"
-	line "mobile profile."
-
-	para "Your phone number"
-	line "will not be sent."
-
-	para "The contents of"
-	line "the NEWS will vary"
-
-	para "depending on the"
-	line "SAVE files sent by"
-
-	para "you and the other"
-	line "#MON trainers."
-
-	para "You might even be"
-	line "in the NEWS!"
-	done
-
-UnknownText_0x61b7c:
-	text "Would you like to"
-	line "get the NEWS?"
-	done
-
-UnknownText_0x61b9d:
-	text "Reading the latest"
-	line "NEWS… Please wait."
-	done
-
-UnknownText_0x61bc4:
-	text "There is no old"
-	line "NEWS…"
-	done
-
-UnknownText_0x61bdb:
-	text "The NEWS data is"
-	line "corrupted."
-
-	para "Please download"
-	line "the NEWS again."
-	done
-
-UnknownText_0x61c18:
-	text "We're making"
-	line "preparations."
-
-	para "Please come back"
-	line "later."
-	done
-
-UnknownText_0x61c4b:
-	text "We will SAVE your"
-	line "progress before"
-
-	para "starting the NEWS"
-	line "MACHINE."
-	done
-
-UnknownText_0x61c89:
-	text "Whoa, this #MON"
-	line "CENTER is huge."
-
-	para "They just built"
-	line "this place. They"
-
-	para "installed lots of"
-	line "new machines too."
-	done
-
-UnknownText_0x61cef:
-	text "I thought up a fun"
-	line "new thing for the"
-	cont "TRADE CORNER!"
-
-	para "I make a PIDGEY"
-	line "hold MAIL, then"
-
-	para "put it up for"
-	line "trade for another"
-	cont "one!"
-
-	para "If everyone did"
-	line "that, MAIL could"
-
-	para "be traded with all"
-	line "sorts of people!"
-
-	para "I call it PIDGEY"
-	line "MAIL!"
-
-	para "If it becomes"
-	line "popular, I might"
-
-	para "make lots of new"
-	line "friends!"
-	done
-
-UnknownText_0x61dfd:
-	text "They said you can"
-	line "trade #MON with"
-
-	para "total strangers up"
-	line "here."
-
-	para "But they're still"
-	line "adjusting things."
-	done
-
-UnknownText_0x61e5c:
-	text "Some girl I don't"
-	line "know sent me her"
-
-	para "HOPPIP."
-	line "You should trade"
-
-	para "for a #MON that"
-	line "you want."
-	done
-
-UnknownText_0x61eb2:
-	text "I received a"
-	line "female HOPPIP, but"
-	cont "its named STANLEY!"
-
-	para "That's my dad's"
-	line "name!"
-	done
-
-UnknownText_0x61efa:
-	text "What is the NEWS"
-	line "MACHINE?"
-
-	para "Does it get news"
-	line "from a wider area"
-	cont "than the radio?"
-	done
-
-UnknownText_0x61f48:
-	text "The #COM CENTER"
-	line "will link with all"
-
-	para "#MON CENTERS in"
-	line "a wireless net."
-
-	para "That must mean"
-	line "I'll be able to"
-
-	para "link with all"
-	line "sorts of people."
-	done
-
-UnknownText_0x61fc9:
-	text "The machines here"
-	line "can't be used yet."
-
-	para "Still, it's nice"
-	line "coming to a trendy"
-
-	para "place before other"
-	line "people."
-	done
-
-UnknownText_0x6202c:
-	text "My friend was in"
-	line "the NEWS a while"
-
-	para "back. I was really"
-	line "surprised!"
-	done
-
-UnknownText_0x6206d:
-	text "I get anxious if I"
-	line "don't check out"
-	cont "the latest NEWS!"
-	done
-
-UnknownText_0x620a1:
-	text "If I get in the"
-	line "NEWS and become"
-
-	para "famous, I bet I'll"
-	line "be adored."
-
-	para "I wonder how I"
-	line "could get in the"
-	cont "NEWS?"
-	done
-
-UnknownText_0x62105:
-	text "The COLOSSEUM"
-	line "upstairs is for"
-	cont "link battles."
-
-	para "Battle records are"
-	line "posted on the"
-
-	para "wall, so I can't"
-	line "afford to lose."
-	done
-
-UnknownText_0x62173:
-	text "I came over here"
-	line "when I got word"
-
-	para "that GOLDENROD's"
-	line "#MON CENTER has"
-
-	para "new machines that"
-	line "no one's ever seen"
-	cont "before."
-
-	para "But it looks like"
-	line "they're still busy"
-
-	para "with all their"
-	line "preparations…"
-	done
-
-UnknownText_0x62222:
-	text "Just seeing all"
-	line "these new things"
-
-	para "here makes me feel"
-	line "younger!"
-	done
-
-UnknownText_0x62260:
-	text "A higher level"
-	line "#MON doesn't"
-	cont "always win."
-
-	para "After all, it may"
-	line "have a type dis-"
-	cont "advantage."
-
-	para "I don't think"
-	line "there is a single"
-
-	para "#MON that is"
-	line "the toughest."
-	done
-
-UnknownText_0x622f0:
-	text "<PLAYER>, isn't it?"
-
-	para "Congratulations!"
-
-	para "As a special deal,"
-	line "a GS BALL has been"
-	cont "sent just for you!"
-
-	para "Please accept it!"
-	done
-
-UnknownText_0x62359:
-	text "Please do come"
-	line "again!"
-	done
-
-UnknownText_0x62370:
-	text "#COM CENTER"
-	line "1F INFORMATION"
-
-	para "Left:"
-	line "ADMINISTRATION"
-
-	para "Center:"
-	line "TRADE CORNER"
-
-	para "Right:"
-	line "#MON NEWS"
-	done
-
-UnknownText_0x623c7:
-	text "It's a #MON"
-	line "NEWS MACHINE!"
-
-	para "It's not in"
-	line "operation yet…"
-	done
-
-UnknownText_0x623fb:
-	text "Oh my, your pack"
-	line "looks so heavy!"
-
-	para "Oh! Do you happen"
-	line "to have something"
-	cont "named EON MAIL?"
-
-	para "My daughter is"
-	line "after one."
-
-	para "You can part with"
-	line "one, can't you?"
-	done
-
-UnknownText_0x6248c:
-	text "Give away an EON"
-	line "MAIL?"
-	done
-
-UnknownText_0x624a4:
-	text "Oh, that's great!"
-	line "Thank you, honey!"
-
-	para "Here, this is for"
-	line "you in return!"
-	done
-
-UnknownText_0x624e9:
-	text "My daughter will"
-	line "be delighted!"
-	done
-
-UnknownText_0x62509:
-	text "Oh? You don't have"
-	line "one? Too bad."
-	done
-
-UnknownText_0x6252a:
-	text "Oh… Well, another"
-	line "time, then."
-	done
-
-UnknownText_0x62549:
-	text "<PLAYER> gave away"
-	line "the EON MAIL."
-	done
-
-GoldenrodPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 4
-	warp_def $7, $3, 15, GOLDENROD_CITY
-	warp_def $7, $4, 15, GOLDENROD_CITY
-	warp_def $6, $0, 1, GOLDENROD_POKECOM_CENTER_2F_MOBILE
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 2
-	xy_trigger 0, $7, $3, $0, GoldenrodPokeCenter1F_GSBallTriggerLeft, $0, $0
-	xy_trigger 0, $7, $4, $0, GoldenrodPokeCenter1F_GSBallTriggerRight, $0, $0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 5
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x60f91, -1
-	person_event SPRITE_LINK_RECEPTIONIST, 8, 16, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, ObjectEvent, -1
-	person_event SPRITE_GAMEBOY_KID, 1, 6, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, GameboyKidScript_0x6101e, -1
-	person_event SPRITE_LASS, 4, 1, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, LassScript_0x61021, -1
-	person_event SPRITE_POKEFAN_F, 5, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BROWN, PERSONTYPE_SCRIPT, 0, PokefanFScript_0x61024, -1
--- /dev/null
+++ b/maps/GoldenrodPokecenter1F.asm
@@ -1,0 +1,832 @@
+const_value set 2
+	const GOLDENRODPOKECENTER1F_NURSE
+	const GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
+	const GOLDENRODPOKECENTER1F_GAMEBOY_KID
+	const GOLDENRODPOKECENTER1F_LASS
+	const GOLDENRODPOKECENTER1F_POKEFAN_F
+
+GoldenrodPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x60f91:
+	jumpstd pokecenternurse
+
+GoldenrodPokecenter1F_GSBallTriggerLeft:
+	writebyte BATTLETOWERACTION_CHECKMOBILEEVENT
+	special BattleTowerAction
+	if_equal MOBILE_EVENT_OBJECT_GS_BALL, .gsball
+	end
+
+.gsball
+	checkevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
+	iftrue .cancel
+	playsound SFX_EXIT_BUILDING
+	moveperson GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, $0, $7
+	disappear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
+	appear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
+	playmusic MUSIC_SHOW_ME_AROUND
+	applymovement GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, MovementData_0x6105a
+	spriteface PLAYER, UP
+	opentext
+	writetext UnknownText_0x622f0
+	waitbutton
+	verbosegiveitem GS_BALL
+	setevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
+	setevent EVENT_CAN_GIVE_GS_BALL_TO_KURT
+	writetext UnknownText_0x62359
+	waitbutton
+	closetext
+	applymovement GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, MovementData_0x61060
+	special RestartMapMusic
+	disappear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
+	playsound SFX_EXIT_BUILDING
+.cancel
+	end
+
+GoldenrodPokecenter1F_GSBallTriggerRight:
+	writebyte BATTLETOWERACTION_CHECKMOBILEEVENT
+	special BattleTowerAction
+	if_equal MOBILE_EVENT_OBJECT_GS_BALL, .gsball
+	end
+
+.gsball
+	checkevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
+	iftrue .cancel
+	playsound SFX_EXIT_BUILDING
+	moveperson GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, $0, $7
+	disappear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
+	appear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
+	playmusic MUSIC_SHOW_ME_AROUND
+	applymovement GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, MovementData_0x61065
+	spriteface PLAYER, UP
+	opentext
+	writetext UnknownText_0x622f0
+	waitbutton
+	verbosegiveitem GS_BALL
+	setevent EVENT_GOT_GS_BALL_FROM_POKECOM_CENTER
+	setevent EVENT_CAN_GIVE_GS_BALL_TO_KURT
+	writetext UnknownText_0x62359
+	waitbutton
+	closetext
+	applymovement GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST, MovementData_0x6106c
+	special RestartMapMusic
+	disappear GOLDENRODPOKECENTER1F_LINK_RECEPTIONIST
+	playsound SFX_EXIT_BUILDING
+.cancel
+	end
+
+GameboyKidScript_0x6101e:
+	jumptextfaceplayer UnknownText_0x62105
+
+LassScript_0x61021:
+	jumptextfaceplayer UnknownText_0x62260
+
+PokefanFScript_0x61024:
+	faceplayer
+	opentext
+	writetext UnknownText_0x623fb
+	waitbutton
+	writetext UnknownText_0x6248c
+	yesorno
+	iffalse UnknownScript_0x6104b
+	takeitem EON_MAIL
+	iffalse UnknownScript_0x6104b
+	writetext UnknownText_0x62549
+	waitbutton
+	writetext UnknownText_0x624a4
+	waitbutton
+	verbosegiveitem REVIVE
+	iffalse UnknownScript_0x61051
+	writetext UnknownText_0x624e9
+	waitbutton
+	closetext
+	end
+
+UnknownScript_0x6104b:
+	writetext UnknownText_0x62509
+	waitbutton
+	closetext
+	end
+
+UnknownScript_0x61051:
+	giveitem EON_MAIL
+	writetext UnknownText_0x6252a
+	waitbutton
+	closetext
+	end
+
+MovementData_0x6105a:
+	step UP
+	step RIGHT
+	step RIGHT
+	step RIGHT
+	turn_head DOWN
+	step_end
+
+MovementData_0x61060:
+	step LEFT
+	step LEFT
+	step LEFT
+	step DOWN
+	step_end
+
+MovementData_0x61065:
+	step UP
+	step RIGHT
+	step RIGHT
+	step RIGHT
+	step RIGHT
+	turn_head DOWN
+	step_end
+
+MovementData_0x6106c:
+	step LEFT
+	step LEFT
+	step LEFT
+	step LEFT
+	step DOWN
+	step_end
+
+; unused
+UnknownText_0x61072:
+	text "Hello! Welcome to"
+	line "#COM CENTER"
+	cont "TRADE CORNER."
+
+	para "You can trade"
+	line "#MON with other"
+	cont "people far away."
+	done
+
+UnknownText_0x610ce:
+	text "To make a trade,"
+	line "we must hold your"
+	cont "#MON."
+
+	para "Would you like to"
+	line "trade?"
+	done
+
+UnknownText_0x61111:
+	text "What kind of"
+	line "#MON do you"
+	cont "want in return?"
+	done
+
+UnknownText_0x6113b:
+	text "Fine. We will try"
+	line "to trade your"
+
+	para "@"
+	text_from_ram StringBuffer3
+	text " for"
+	line "@"
+	text_from_ram StringBuffer4
+	text "."
+
+	para "We'll have to hold"
+	line "your #MON"
+	cont "during the trade."
+
+	para "Please wait while"
+	line "we prepare the"
+	cont "room for it."
+	done
+
+UnknownText_0x611c9:
+	text "Fine. We will try"
+	line "to trade your"
+
+	para "@"
+	text_from_ram StringBuffer3
+	text " for a"
+	line "#MON that you"
+	cont "have never seen."
+
+	para "We'll have to hold"
+	line "your #MON"
+	cont "during the trade."
+
+	para "Please wait while"
+	line "we prepare the"
+	cont "room for it."
+	done
+
+UnknownText_0x61271:
+	text "Your trade #MON"
+	line "has been received."
+
+	para "It will take time"
+	line "to find a trade"
+
+	para "partner. Please"
+	line "come back later."
+	done
+
+UnknownText_0x612d8:
+	text "Oh? You have only"
+	line "one #MON in"
+	cont "your party. "
+
+	para "Please come back"
+	line "once you've in-"
+	cont "creased the size"
+	cont "of your party."
+	done
+
+UnknownText_0x61344:
+	text "We hope to see you"
+	line "again."
+	done
+
+UnknownText_0x6135f:
+	text "Communication"
+	line "error…"
+	done
+
+UnknownText_0x61375:
+	text "If we accept that"
+	line "#MON, what will"
+	cont "you battle with?"
+	done
+
+UnknownText_0x613a9:
+	text "Sorry. We can't"
+	line "accept an EGG."
+	done
+
+UnknownText_0x613c8:
+	text "Sorry, but your"
+	line "#MON appears to"
+
+	para "be abnormal. We"
+	line "can't accept it."
+	done
+
+UnknownText_0x61409:
+	text "Oh? Aren't we"
+	line "already holding a"
+	cont "#MON of yours?"
+	done
+
+UnknownText_0x61438:
+	text "We'll check the"
+	line "rooms."
+
+	para "Please wait."
+	done
+
+UnknownText_0x6145c:
+	text "Thank you for your"
+	line "patience."
+
+	para "A trade partner"
+	line "has been found."
+	done
+
+UnknownText_0x6149a:
+	text "It's your new"
+	line "partner."
+
+	para "Please take care"
+	line "of it with love."
+
+	para "We hope to see you"
+	line "again."
+	done
+
+UnknownText_0x614ed:
+	text "Uh-oh. Your party"
+	line "is already full."
+
+	para "Please come back"
+	line "when you have room"
+	cont "in your party."
+	done
+
+UnknownText_0x61544:
+	text "It's unfortunate,"
+	line "but no one has"
+
+	para "come forward as a"
+	line "trade partner."
+
+	para "Would you like"
+	line "your #MON back?"
+	done
+
+UnknownText_0x615a5:
+	text "We have returned"
+	line "your #MON."
+	done
+
+UnknownText_0x615c2:
+	text "It's unfortunate,"
+	line "but no one has"
+
+	para "come forward as a"
+	line "trade partner."
+
+	para "We've held your"
+	line "#MON for a long"
+
+	para "time. As a result,"
+	line "it is very lonely."
+
+	para "Sorry, but we must"
+	line "return it to you."
+	done
+
+UnknownText_0x6166e:
+	text "We hope to see you"
+	line "again."
+	done
+
+UnknownText_0x61689:
+	text "Fine. We will"
+	line "continue to hold"
+	cont "your #MON."
+	done
+
+UnknownText_0x616b4:
+	text "Oh? You left your"
+	line "#MON with us"
+	cont "only recently."
+
+	para "Please come back"
+	line "later."
+	done
+
+UnknownText_0x616fb:
+	text "We'll SAVE before"
+	line "connecting to the"
+	cont "CENTER."
+	done
+
+UnknownText_0x61727:
+	text "Which #MON do"
+	line "you want to trade?"
+	done
+
+UnknownText_0x61749:
+	text "Sorry, but we must"
+	line "cancel the trade."
+	done
+
+UnknownText_0x6176f:
+	text "Oh!"
+
+	para "I see you have an"
+	line "EGG TICKET!"
+
+	para "It's a coupon that"
+	line "special people can"
+
+	para "redeem for a"
+	line "special #MON!"
+	done
+
+UnknownText_0x617d2:
+	text "Let me give you a"
+	line "quick briefing."
+
+	para "Trades held at the"
+	line "TRADE CORNER are"
+
+	para "between two"
+	line "trainers who don't"
+
+	para "know each other's"
+	line "identity."
+
+	para "As a result, it"
+	line "may take time."
+
+	para "However, an ODD"
+	line "EGG is available"
+	cont "just for you."
+
+	para "It will be sent to"
+	line "you right away."
+
+	para "Please choose one"
+	line "of the rooms in"
+
+	para "the CENTER."
+	line "An ODD EGG will be"
+
+	para "sent from the"
+	line "chosen room."
+	done
+
+UnknownText_0x6191f:
+	text "Please wait a"
+	line "moment."
+	done
+
+UnknownText_0x61936:
+	text "Thank you for"
+	line "waiting."
+
+	para "We received your"
+	line "ODD EGG."
+
+	para "Here it is!"
+
+	para "Please raise it"
+	line "with loving care."
+	done
+
+UnknownText_0x61996:
+	text "I'm awfully sorry."
+
+	para "The EGG TICKET"
+	line "exchange service"
+	cont "isn't running now."
+	done
+
+UnknownText_0x619db:
+	text "It's a #MON"
+	line "NEWS MACHINE."
+	done
+
+UnknownText_0x619f5:
+	text "What would you"
+	line "like to do?"
+	done
+
+UnknownText_0x61a11:
+	text "#MON NEWS is"
+	line "news compiled from"
+
+	para "the SAVE files of"
+	line "#MON trainers."
+
+	para "When reading the"
+	line "NEWS, your SAVE"
+
+	para "file may be sent"
+	line "out."
+
+	para "The SAVE file data"
+	line "will contain your"
+
+	para "adventure log and"
+	line "mobile profile."
+
+	para "Your phone number"
+	line "will not be sent."
+
+	para "The contents of"
+	line "the NEWS will vary"
+
+	para "depending on the"
+	line "SAVE files sent by"
+
+	para "you and the other"
+	line "#MON trainers."
+
+	para "You might even be"
+	line "in the NEWS!"
+	done
+
+UnknownText_0x61b7c:
+	text "Would you like to"
+	line "get the NEWS?"
+	done
+
+UnknownText_0x61b9d:
+	text "Reading the latest"
+	line "NEWS… Please wait."
+	done
+
+UnknownText_0x61bc4:
+	text "There is no old"
+	line "NEWS…"
+	done
+
+UnknownText_0x61bdb:
+	text "The NEWS data is"
+	line "corrupted."
+
+	para "Please download"
+	line "the NEWS again."
+	done
+
+UnknownText_0x61c18:
+	text "We're making"
+	line "preparations."
+
+	para "Please come back"
+	line "later."
+	done
+
+UnknownText_0x61c4b:
+	text "We will SAVE your"
+	line "progress before"
+
+	para "starting the NEWS"
+	line "MACHINE."
+	done
+
+UnknownText_0x61c89:
+	text "Whoa, this #MON"
+	line "CENTER is huge."
+
+	para "They just built"
+	line "this place. They"
+
+	para "installed lots of"
+	line "new machines too."
+	done
+
+UnknownText_0x61cef:
+	text "I thought up a fun"
+	line "new thing for the"
+	cont "TRADE CORNER!"
+
+	para "I make a PIDGEY"
+	line "hold MAIL, then"
+
+	para "put it up for"
+	line "trade for another"
+	cont "one!"
+
+	para "If everyone did"
+	line "that, MAIL could"
+
+	para "be traded with all"
+	line "sorts of people!"
+
+	para "I call it PIDGEY"
+	line "MAIL!"
+
+	para "If it becomes"
+	line "popular, I might"
+
+	para "make lots of new"
+	line "friends!"
+	done
+
+UnknownText_0x61dfd:
+	text "They said you can"
+	line "trade #MON with"
+
+	para "total strangers up"
+	line "here."
+
+	para "But they're still"
+	line "adjusting things."
+	done
+
+UnknownText_0x61e5c:
+	text "Some girl I don't"
+	line "know sent me her"
+
+	para "HOPPIP."
+	line "You should trade"
+
+	para "for a #MON that"
+	line "you want."
+	done
+
+UnknownText_0x61eb2:
+	text "I received a"
+	line "female HOPPIP, but"
+	cont "its named STANLEY!"
+
+	para "That's my dad's"
+	line "name!"
+	done
+
+UnknownText_0x61efa:
+	text "What is the NEWS"
+	line "MACHINE?"
+
+	para "Does it get news"
+	line "from a wider area"
+	cont "than the radio?"
+	done
+
+UnknownText_0x61f48:
+	text "The #COM CENTER"
+	line "will link with all"
+
+	para "#MON CENTERS in"
+	line "a wireless net."
+
+	para "That must mean"
+	line "I'll be able to"
+
+	para "link with all"
+	line "sorts of people."
+	done
+
+UnknownText_0x61fc9:
+	text "The machines here"
+	line "can't be used yet."
+
+	para "Still, it's nice"
+	line "coming to a trendy"
+
+	para "place before other"
+	line "people."
+	done
+
+UnknownText_0x6202c:
+	text "My friend was in"
+	line "the NEWS a while"
+
+	para "back. I was really"
+	line "surprised!"
+	done
+
+UnknownText_0x6206d:
+	text "I get anxious if I"
+	line "don't check out"
+	cont "the latest NEWS!"
+	done
+
+UnknownText_0x620a1:
+	text "If I get in the"
+	line "NEWS and become"
+
+	para "famous, I bet I'll"
+	line "be adored."
+
+	para "I wonder how I"
+	line "could get in the"
+	cont "NEWS?"
+	done
+
+UnknownText_0x62105:
+	text "The COLOSSEUM"
+	line "upstairs is for"
+	cont "link battles."
+
+	para "Battle records are"
+	line "posted on the"
+
+	para "wall, so I can't"
+	line "afford to lose."
+	done
+
+UnknownText_0x62173:
+	text "I came over here"
+	line "when I got word"
+
+	para "that GOLDENROD's"
+	line "#MON CENTER has"
+
+	para "new machines that"
+	line "no one's ever seen"
+	cont "before."
+
+	para "But it looks like"
+	line "they're still busy"
+
+	para "with all their"
+	line "preparations…"
+	done
+
+UnknownText_0x62222:
+	text "Just seeing all"
+	line "these new things"
+
+	para "here makes me feel"
+	line "younger!"
+	done
+
+UnknownText_0x62260:
+	text "A higher level"
+	line "#MON doesn't"
+	cont "always win."
+
+	para "After all, it may"
+	line "have a type dis-"
+	cont "advantage."
+
+	para "I don't think"
+	line "there is a single"
+
+	para "#MON that is"
+	line "the toughest."
+	done
+
+UnknownText_0x622f0:
+	text "<PLAYER>, isn't it?"
+
+	para "Congratulations!"
+
+	para "As a special deal,"
+	line "a GS BALL has been"
+	cont "sent just for you!"
+
+	para "Please accept it!"
+	done
+
+UnknownText_0x62359:
+	text "Please do come"
+	line "again!"
+	done
+
+UnknownText_0x62370:
+	text "#COM CENTER"
+	line "1F INFORMATION"
+
+	para "Left:"
+	line "ADMINISTRATION"
+
+	para "Center:"
+	line "TRADE CORNER"
+
+	para "Right:"
+	line "#MON NEWS"
+	done
+
+UnknownText_0x623c7:
+	text "It's a #MON"
+	line "NEWS MACHINE!"
+
+	para "It's not in"
+	line "operation yet…"
+	done
+
+UnknownText_0x623fb:
+	text "Oh my, your pack"
+	line "looks so heavy!"
+
+	para "Oh! Do you happen"
+	line "to have something"
+	cont "named EON MAIL?"
+
+	para "My daughter is"
+	line "after one."
+
+	para "You can part with"
+	line "one, can't you?"
+	done
+
+UnknownText_0x6248c:
+	text "Give away an EON"
+	line "MAIL?"
+	done
+
+UnknownText_0x624a4:
+	text "Oh, that's great!"
+	line "Thank you, honey!"
+
+	para "Here, this is for"
+	line "you in return!"
+	done
+
+UnknownText_0x624e9:
+	text "My daughter will"
+	line "be delighted!"
+	done
+
+UnknownText_0x62509:
+	text "Oh? You don't have"
+	line "one? Too bad."
+	done
+
+UnknownText_0x6252a:
+	text "Oh… Well, another"
+	line "time, then."
+	done
+
+UnknownText_0x62549:
+	text "<PLAYER> gave away"
+	line "the EON MAIL."
+	done
+
+GoldenrodPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 4
+	warp_def $7, $3, 15, GOLDENROD_CITY
+	warp_def $7, $4, 15, GOLDENROD_CITY
+	warp_def $6, $0, 1, GOLDENROD_POKECOM_CENTER_2F_MOBILE
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 2
+	xy_trigger 0, $7, $3, $0, GoldenrodPokecenter1F_GSBallTriggerLeft, $0, $0
+	xy_trigger 0, $7, $4, $0, GoldenrodPokecenter1F_GSBallTriggerRight, $0, $0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 5
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x60f91, -1
+	person_event SPRITE_LINK_RECEPTIONIST, 8, 16, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, ObjectEvent, -1
+	person_event SPRITE_GAMEBOY_KID, 1, 6, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, GameboyKidScript_0x6101e, -1
+	person_event SPRITE_LASS, 4, 1, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, LassScript_0x61021, -1
+	person_event SPRITE_POKEFAN_F, 5, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BROWN, PERSONTYPE_SCRIPT, 0, PokefanFScript_0x61024, -1
--- a/maps/IndigoPlateauPokeCenter1F.asm
+++ /dev/null
@@ -1,331 +1,0 @@
-const_value set 2
-	const INDIGOPLATEAUPOKECENTER1F_NURSE
-	const INDIGOPLATEAUPOKECENTER1F_CLERK
-	const INDIGOPLATEAUPOKECENTER1F_COOLTRAINER_M
-	const INDIGOPLATEAUPOKECENTER1F_SILVER
-	const INDIGOPLATEAUPOKECENTER1F_GRAMPS
-	const INDIGOPLATEAUPOKECENTER1F_ABRA
-
-IndigoPlateauPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 1
-	maptrigger .DummyTrigger
-
-.MapCallbacks:
-	db 1
-	dbw MAPCALLBACK_NEWMAP, .PrepareElite4
-
-.DummyTrigger:
-	end
-
-.PrepareElite4:
-	domaptrigger WILLS_ROOM, $0
-	domaptrigger KOGAS_ROOM, $0
-	domaptrigger BRUNOS_ROOM, $0
-	domaptrigger KARENS_ROOM, $0
-	domaptrigger LANCES_ROOM, $0
-	domaptrigger HALL_OF_FAME, $0
-	clearevent EVENT_WILLS_ROOM_ENTRANCE_CLOSED
-	clearevent EVENT_WILLS_ROOM_EXIT_OPEN
-	clearevent EVENT_KOGAS_ROOM_ENTRANCE_CLOSED
-	clearevent EVENT_KOGAS_ROOM_EXIT_OPEN
-	clearevent EVENT_BRUNOS_ROOM_ENTRANCE_CLOSED
-	clearevent EVENT_BRUNOS_ROOM_EXIT_OPEN
-	clearevent EVENT_KARENS_ROOM_ENTRANCE_CLOSED
-	clearevent EVENT_KARENS_ROOM_EXIT_OPEN
-	clearevent EVENT_LANCES_ROOM_ENTRANCE_CLOSED
-	clearevent EVENT_LANCES_ROOM_EXIT_OPEN
-	clearevent EVENT_BEAT_ELITE_4_WILL
-	clearevent EVENT_BEAT_ELITE_4_KOGA
-	clearevent EVENT_BEAT_ELITE_4_BRUNO
-	clearevent EVENT_BEAT_ELITE_4_KAREN
-	clearevent EVENT_BEAT_CHAMPION_LANCE
-	setevent EVENT_LANCES_ROOM_OAK_AND_MARY
-	return
-
-PlateauRivalBattle1:
-	checkevent EVENT_BEAT_RIVAL_IN_MT_MOON
-	iffalse PlateauRivalScriptDone
-	checkflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
-	iftrue PlateauRivalScriptDone
-	checkcode VAR_WEEKDAY
-	if_equal SUNDAY, PlateauRivalScriptDone
-	if_equal TUESDAY, PlateauRivalScriptDone
-	if_equal THURSDAY, PlateauRivalScriptDone
-	if_equal FRIDAY, PlateauRivalScriptDone
-	if_equal SATURDAY, PlateauRivalScriptDone
-	moveperson INDIGOPLATEAUPOKECENTER1F_SILVER, $11, $9
-	appear INDIGOPLATEAUPOKECENTER1F_SILVER
-	spriteface PLAYER, DOWN
-	showemote EMOTE_SHOCK, PLAYER, 15
-	special Special_FadeOutMusic
-	pause 15
-	applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalMovement1
-	playmusic MUSIC_RIVAL_ENCOUNTER
-	spriteface PLAYER, RIGHT
-	jump PlateauRivalBattleCommon
-
-PlateauRivalBattle2:
-	checkevent EVENT_BEAT_RIVAL_IN_MT_MOON
-	iffalse PlateauRivalScriptDone
-	checkflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
-	iftrue PlateauRivalScriptDone
-	checkcode VAR_WEEKDAY
-	if_equal SUNDAY, PlateauRivalScriptDone
-	if_equal TUESDAY, PlateauRivalScriptDone
-	if_equal THURSDAY, PlateauRivalScriptDone
-	if_equal FRIDAY, PlateauRivalScriptDone
-	if_equal SATURDAY, PlateauRivalScriptDone
-	appear INDIGOPLATEAUPOKECENTER1F_SILVER
-	spriteface PLAYER, DOWN
-	showemote EMOTE_SHOCK, PLAYER, 15
-	special Special_FadeOutMusic
-	pause 15
-	applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalMovement2
-	playmusic MUSIC_RIVAL_ENCOUNTER
-	spriteface PLAYER, LEFT
-PlateauRivalBattleCommon:
-	opentext
-	writetext PlateauRivalText1
-	waitbutton
-	closetext
-	setevent EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL
-	checkevent EVENT_GOT_TOTODILE_FROM_ELM
-	iftrue .Totodile
-	checkevent EVENT_GOT_CHIKORITA_FROM_ELM
-	iftrue .Chikorita
-	; Cyndaquil
-	winlosstext PlateauRivalWinText, PlateauRivalLoseText
-	setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER
-	loadtrainer RIVAL2, RIVAL2_2_TOTODILE
-	startbattle
-	dontrestartmapmusic
-	reloadmapafterbattle
-	jump PlateauRivalPostBattle
-
-.Totodile:
-	winlosstext PlateauRivalWinText, PlateauRivalLoseText
-	setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER
-	loadtrainer RIVAL2, RIVAL2_2_CHIKORITA
-	startbattle
-	dontrestartmapmusic
-	reloadmapafterbattle
-	jump PlateauRivalPostBattle
-
-.Chikorita:
-	winlosstext PlateauRivalWinText, PlateauRivalLoseText
-	setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER
-	loadtrainer RIVAL2, RIVAL2_2_CYNDAQUIL
-	startbattle
-	dontrestartmapmusic
-	reloadmapafterbattle
-	jump PlateauRivalPostBattle
-
-PlateauRivalPostBattle:
-	playmusic MUSIC_RIVAL_AFTER
-	opentext
-	writetext PlateauRivalText2
-	waitbutton
-	closetext
-	spriteface PLAYER, DOWN
-	applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalLeavesMovement
-	disappear INDIGOPLATEAUPOKECENTER1F_SILVER
-	dotrigger $0
-	playmapmusic
-	setflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
-PlateauRivalScriptDone:
-	end
-
-NurseScript_0x18012c:
-	jumpstd pokecenternurse
-
-ClerkScript_0x18012f:
-	opentext
-	pokemart MARTTYPE_STANDARD, MART_INDIGO_PLATEAU
-	closetext
-	end
-
-CooltrainerMScript_0x180136:
-	jumptextfaceplayer UnknownText_0x180178
-
-TeleportGuyScript:
-	faceplayer
-	opentext
-	writetext TeleportGuyText1
-	yesorno
-	iffalse .No
-	writetext TeleportGuyYesText
-	waitbutton
-	closetext
-	playsound SFX_WARP_TO
-	special FadeOutPalettes
-	waitsfx
-	warp NEW_BARK_TOWN, $d, $6
-	end
-
-.No:
-	writetext TeleportGuyNoText
-	waitbutton
-	closetext
-	end
-
-AbraScript:
-	opentext
-	writetext AbraText
-	cry ABRA
-	waitbutton
-	closetext
-	end
-
-PlateauRivalMovement1:
-	step UP
-	step UP
-	step UP
-	step UP
-	step UP
-	turn_head LEFT
-	step_end
-
-PlateauRivalMovement2:
-	step UP
-	step UP
-	step UP
-	step UP
-	step UP
-	turn_head RIGHT
-	step_end
-
-PlateauRivalLeavesMovement:
-	step DOWN
-	step DOWN
-	step DOWN
-	step DOWN
-	step DOWN
-	step_end
-
-UnknownText_0x180178:
-	text "At the #MON"
-	line "LEAGUE, you'll get"
-
-	para "tested by the"
-	line "ELITE FOUR."
-
-	para "You have to beat"
-	line "them all. If you"
-
-	para "lose, you have to"
-	line "start all over!"
-	done
-
-PlateauRivalText1:
-	text "Hold it."
-
-	para "You're going to"
-	line "take the #MON"
-
-	para "LEAGUE challenge"
-	line "now?"
-
-	para "That's not going"
-	line "to happen."
-
-	para "My super-well-"
-	line "trained #MON"
-
-	para "are going to pound"
-	line "you."
-
-	para "<PLAYER>!"
-	line "I challenge you!"
-	done
-
-PlateauRivalWinText:
-	text "…"
-
-	para "OK--I lost…"
-	done
-
-PlateauRivalText2:
-	text "…Darn… I still"
-	line "can't win…"
-
-	para "I… I have to think"
-	line "more about my"
-	cont "#MON…"
-
-	para "Humph! Try not to"
-	line "lose!"
-	done
-
-PlateauRivalLoseText:
-	text "…"
-
-	para "Whew…"
-	line "With my partners,"
-
-	para "I'm going to be"
-	line "the CHAMPION!"
-	done
-
-TeleportGuyText1:
-	text "Ah! You're chal-"
-	line "lenging the ELITE"
-
-	para "FOUR? Are you sure"
-	line "you're ready?"
-
-	para "If you need to"
-	line "train some more,"
-
-	para "my ABRA can help"
-	line "you."
-
-	para "It can TELEPORT"
-	line "you home."
-
-	para "Would you like to"
-	line "go home now?"
-	done
-
-TeleportGuyYesText:
-	text "OK, OK. Picture"
-	line "your house in your"
-	cont "mind…"
-	done
-
-TeleportGuyNoText:
-	text "OK, OK. The best"
-	line "of luck to you!"
-	done
-
-AbraText:
-	text "ABRA: Aabra…"
-	done
-
-IndigoPlateauPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 4
-	warp_def $d, $5, 1, ROUTE_23
-	warp_def $d, $6, 2, ROUTE_23
-	warp_def $d, $0, 1, POKECENTER_2F
-	warp_def $3, $e, 1, WILLS_ROOM
-
-.XYTriggers:
-	db 2
-	xy_trigger 0, $4, $10, $0, PlateauRivalBattle1, $0, $0
-	xy_trigger 0, $4, $11, $0, PlateauRivalBattle2, $0, $0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 6
-	person_event SPRITE_NURSE, 7, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x18012c, -1
-	person_event SPRITE_CLERK, 7, 11, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, ClerkScript_0x18012f, -1
-	person_event SPRITE_COOLTRAINER_M, 11, 11, SPRITEMOVEDATA_WANDER, 2, 2, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerMScript_0x180136, -1
-	person_event SPRITE_SILVER, 9, 16, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, ObjectEvent, EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL
-	person_event SPRITE_GRAMPS, 9, 1, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, TeleportGuyScript, EVENT_TELEPORT_GUY
-	person_event SPRITE_JYNX, 9, 0, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_BROWN, PERSONTYPE_SCRIPT, 0, AbraScript, EVENT_TELEPORT_GUY
--- a/maps/IndigoPlateauPokeCenter1F.blk
+++ /dev/null
@@ -1,1 +1,0 @@
-*,'
\ No newline at end of file
--- /dev/null
+++ b/maps/IndigoPlateauPokecenter1F.asm
@@ -1,0 +1,331 @@
+const_value set 2
+	const INDIGOPLATEAUPOKECENTER1F_NURSE
+	const INDIGOPLATEAUPOKECENTER1F_CLERK
+	const INDIGOPLATEAUPOKECENTER1F_COOLTRAINER_M
+	const INDIGOPLATEAUPOKECENTER1F_SILVER
+	const INDIGOPLATEAUPOKECENTER1F_GRAMPS
+	const INDIGOPLATEAUPOKECENTER1F_ABRA
+
+IndigoPlateauPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 1
+	maptrigger .DummyTrigger
+
+.MapCallbacks:
+	db 1
+	dbw MAPCALLBACK_NEWMAP, .PrepareElite4
+
+.DummyTrigger:
+	end
+
+.PrepareElite4:
+	domaptrigger WILLS_ROOM, $0
+	domaptrigger KOGAS_ROOM, $0
+	domaptrigger BRUNOS_ROOM, $0
+	domaptrigger KARENS_ROOM, $0
+	domaptrigger LANCES_ROOM, $0
+	domaptrigger HALL_OF_FAME, $0
+	clearevent EVENT_WILLS_ROOM_ENTRANCE_CLOSED
+	clearevent EVENT_WILLS_ROOM_EXIT_OPEN
+	clearevent EVENT_KOGAS_ROOM_ENTRANCE_CLOSED
+	clearevent EVENT_KOGAS_ROOM_EXIT_OPEN
+	clearevent EVENT_BRUNOS_ROOM_ENTRANCE_CLOSED
+	clearevent EVENT_BRUNOS_ROOM_EXIT_OPEN
+	clearevent EVENT_KARENS_ROOM_ENTRANCE_CLOSED
+	clearevent EVENT_KARENS_ROOM_EXIT_OPEN
+	clearevent EVENT_LANCES_ROOM_ENTRANCE_CLOSED
+	clearevent EVENT_LANCES_ROOM_EXIT_OPEN
+	clearevent EVENT_BEAT_ELITE_4_WILL
+	clearevent EVENT_BEAT_ELITE_4_KOGA
+	clearevent EVENT_BEAT_ELITE_4_BRUNO
+	clearevent EVENT_BEAT_ELITE_4_KAREN
+	clearevent EVENT_BEAT_CHAMPION_LANCE
+	setevent EVENT_LANCES_ROOM_OAK_AND_MARY
+	return
+
+PlateauRivalBattle1:
+	checkevent EVENT_BEAT_RIVAL_IN_MT_MOON
+	iffalse PlateauRivalScriptDone
+	checkflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
+	iftrue PlateauRivalScriptDone
+	checkcode VAR_WEEKDAY
+	if_equal SUNDAY, PlateauRivalScriptDone
+	if_equal TUESDAY, PlateauRivalScriptDone
+	if_equal THURSDAY, PlateauRivalScriptDone
+	if_equal FRIDAY, PlateauRivalScriptDone
+	if_equal SATURDAY, PlateauRivalScriptDone
+	moveperson INDIGOPLATEAUPOKECENTER1F_SILVER, $11, $9
+	appear INDIGOPLATEAUPOKECENTER1F_SILVER
+	spriteface PLAYER, DOWN
+	showemote EMOTE_SHOCK, PLAYER, 15
+	special Special_FadeOutMusic
+	pause 15
+	applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalMovement1
+	playmusic MUSIC_RIVAL_ENCOUNTER
+	spriteface PLAYER, RIGHT
+	jump PlateauRivalBattleCommon
+
+PlateauRivalBattle2:
+	checkevent EVENT_BEAT_RIVAL_IN_MT_MOON
+	iffalse PlateauRivalScriptDone
+	checkflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
+	iftrue PlateauRivalScriptDone
+	checkcode VAR_WEEKDAY
+	if_equal SUNDAY, PlateauRivalScriptDone
+	if_equal TUESDAY, PlateauRivalScriptDone
+	if_equal THURSDAY, PlateauRivalScriptDone
+	if_equal FRIDAY, PlateauRivalScriptDone
+	if_equal SATURDAY, PlateauRivalScriptDone
+	appear INDIGOPLATEAUPOKECENTER1F_SILVER
+	spriteface PLAYER, DOWN
+	showemote EMOTE_SHOCK, PLAYER, 15
+	special Special_FadeOutMusic
+	pause 15
+	applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalMovement2
+	playmusic MUSIC_RIVAL_ENCOUNTER
+	spriteface PLAYER, LEFT
+PlateauRivalBattleCommon:
+	opentext
+	writetext PlateauRivalText1
+	waitbutton
+	closetext
+	setevent EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL
+	checkevent EVENT_GOT_TOTODILE_FROM_ELM
+	iftrue .Totodile
+	checkevent EVENT_GOT_CHIKORITA_FROM_ELM
+	iftrue .Chikorita
+	; Cyndaquil
+	winlosstext PlateauRivalWinText, PlateauRivalLoseText
+	setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER
+	loadtrainer RIVAL2, RIVAL2_2_TOTODILE
+	startbattle
+	dontrestartmapmusic
+	reloadmapafterbattle
+	jump PlateauRivalPostBattle
+
+.Totodile:
+	winlosstext PlateauRivalWinText, PlateauRivalLoseText
+	setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER
+	loadtrainer RIVAL2, RIVAL2_2_CHIKORITA
+	startbattle
+	dontrestartmapmusic
+	reloadmapafterbattle
+	jump PlateauRivalPostBattle
+
+.Chikorita:
+	winlosstext PlateauRivalWinText, PlateauRivalLoseText
+	setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER
+	loadtrainer RIVAL2, RIVAL2_2_CYNDAQUIL
+	startbattle
+	dontrestartmapmusic
+	reloadmapafterbattle
+	jump PlateauRivalPostBattle
+
+PlateauRivalPostBattle:
+	playmusic MUSIC_RIVAL_AFTER
+	opentext
+	writetext PlateauRivalText2
+	waitbutton
+	closetext
+	spriteface PLAYER, DOWN
+	applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalLeavesMovement
+	disappear INDIGOPLATEAUPOKECENTER1F_SILVER
+	dotrigger $0
+	playmapmusic
+	setflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT
+PlateauRivalScriptDone:
+	end
+
+NurseScript_0x18012c:
+	jumpstd pokecenternurse
+
+ClerkScript_0x18012f:
+	opentext
+	pokemart MARTTYPE_STANDARD, MART_INDIGO_PLATEAU
+	closetext
+	end
+
+CooltrainerMScript_0x180136:
+	jumptextfaceplayer UnknownText_0x180178
+
+TeleportGuyScript:
+	faceplayer
+	opentext
+	writetext TeleportGuyText1
+	yesorno
+	iffalse .No
+	writetext TeleportGuyYesText
+	waitbutton
+	closetext
+	playsound SFX_WARP_TO
+	special FadeOutPalettes
+	waitsfx
+	warp NEW_BARK_TOWN, $d, $6
+	end
+
+.No:
+	writetext TeleportGuyNoText
+	waitbutton
+	closetext
+	end
+
+AbraScript:
+	opentext
+	writetext AbraText
+	cry ABRA
+	waitbutton
+	closetext
+	end
+
+PlateauRivalMovement1:
+	step UP
+	step UP
+	step UP
+	step UP
+	step UP
+	turn_head LEFT
+	step_end
+
+PlateauRivalMovement2:
+	step UP
+	step UP
+	step UP
+	step UP
+	step UP
+	turn_head RIGHT
+	step_end
+
+PlateauRivalLeavesMovement:
+	step DOWN
+	step DOWN
+	step DOWN
+	step DOWN
+	step DOWN
+	step_end
+
+UnknownText_0x180178:
+	text "At the #MON"
+	line "LEAGUE, you'll get"
+
+	para "tested by the"
+	line "ELITE FOUR."
+
+	para "You have to beat"
+	line "them all. If you"
+
+	para "lose, you have to"
+	line "start all over!"
+	done
+
+PlateauRivalText1:
+	text "Hold it."
+
+	para "You're going to"
+	line "take the #MON"
+
+	para "LEAGUE challenge"
+	line "now?"
+
+	para "That's not going"
+	line "to happen."
+
+	para "My super-well-"
+	line "trained #MON"
+
+	para "are going to pound"
+	line "you."
+
+	para "<PLAYER>!"
+	line "I challenge you!"
+	done
+
+PlateauRivalWinText:
+	text "…"
+
+	para "OK--I lost…"
+	done
+
+PlateauRivalText2:
+	text "…Darn… I still"
+	line "can't win…"
+
+	para "I… I have to think"
+	line "more about my"
+	cont "#MON…"
+
+	para "Humph! Try not to"
+	line "lose!"
+	done
+
+PlateauRivalLoseText:
+	text "…"
+
+	para "Whew…"
+	line "With my partners,"
+
+	para "I'm going to be"
+	line "the CHAMPION!"
+	done
+
+TeleportGuyText1:
+	text "Ah! You're chal-"
+	line "lenging the ELITE"
+
+	para "FOUR? Are you sure"
+	line "you're ready?"
+
+	para "If you need to"
+	line "train some more,"
+
+	para "my ABRA can help"
+	line "you."
+
+	para "It can TELEPORT"
+	line "you home."
+
+	para "Would you like to"
+	line "go home now?"
+	done
+
+TeleportGuyYesText:
+	text "OK, OK. Picture"
+	line "your house in your"
+	cont "mind…"
+	done
+
+TeleportGuyNoText:
+	text "OK, OK. The best"
+	line "of luck to you!"
+	done
+
+AbraText:
+	text "ABRA: Aabra…"
+	done
+
+IndigoPlateauPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 4
+	warp_def $d, $5, 1, ROUTE_23
+	warp_def $d, $6, 2, ROUTE_23
+	warp_def $d, $0, 1, POKECENTER_2F
+	warp_def $3, $e, 1, WILLS_ROOM
+
+.XYTriggers:
+	db 2
+	xy_trigger 0, $4, $10, $0, PlateauRivalBattle1, $0, $0
+	xy_trigger 0, $4, $11, $0, PlateauRivalBattle2, $0, $0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 6
+	person_event SPRITE_NURSE, 7, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x18012c, -1
+	person_event SPRITE_CLERK, 7, 11, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, ClerkScript_0x18012f, -1
+	person_event SPRITE_COOLTRAINER_M, 11, 11, SPRITEMOVEDATA_WANDER, 2, 2, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerMScript_0x180136, -1
+	person_event SPRITE_SILVER, 9, 16, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, ObjectEvent, EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL
+	person_event SPRITE_GRAMPS, 9, 1, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, TeleportGuyScript, EVENT_TELEPORT_GUY
+	person_event SPRITE_JYNX, 9, 0, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_BROWN, PERSONTYPE_SCRIPT, 0, AbraScript, EVENT_TELEPORT_GUY
--- /dev/null
+++ b/maps/IndigoPlateauPokecenter1F.blk
@@ -1,0 +1,1 @@
+*,'
\ No newline at end of file
--- a/maps/LavenderPokeCenter1F.asm
+++ /dev/null
@@ -1,104 +1,0 @@
-const_value set 2
-	const LAVENDERPOKECENTER1F_NURSE
-	const LAVENDERPOKECENTER1F_GENTLEMAN
-	const LAVENDERPOKECENTER1F_TEACHER
-	const LAVENDERPOKECENTER1F_YOUNGSTER
-
-LavenderPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x7e6a0:
-	jumpstd pokecenternurse
-
-GentlemanScript_0x7e6a3:
-	jumptextfaceplayer UnknownText_0x7e6bd
-
-TeacherScript_0x7e6a6:
-	jumptextfaceplayer UnknownText_0x7e710
-
-YoungsterScript_0x7e6a9:
-	faceplayer
-	opentext
-	checkevent EVENT_RETURNED_MACHINE_PART
-	iftrue UnknownScript_0x7e6b7
-	writetext UnknownText_0x7e779
-	waitbutton
-	closetext
-	end
-
-UnknownScript_0x7e6b7:
-	writetext UnknownText_0x7e7ed
-	waitbutton
-	closetext
-	end
-
-UnknownText_0x7e6bd:
-	text "To the north of"
-	line "LAVENDER is ROCK"
-
-	para "TUNNEL. Go through"
-	line "it to get to the"
-	cont "POWER PLANT."
-	done
-
-UnknownText_0x7e710:
-	text "There's a radio"
-	line "program that plays"
-	cont "# FLUTE music."
-
-	para "Oh? Ah, your radio"
-	line "needs an EXPN CARD"
-	cont "to tune into it."
-	done
-
-UnknownText_0x7e779:
-	text "If the POWER PLANT"
-	line "isn't running, the"
-
-	para "MAGNET TRAIN won't"
-	line "run either…"
-
-	para "It also means the"
-	line "RADIO STATION"
-	cont "can't broadcast…"
-	done
-
-UnknownText_0x7e7ed:
-	text "The DIRECTOR of"
-	line "the RADIO STATION"
-	cont "sure was happy."
-
-	para "He said they're"
-	line "back on the air"
-
-	para "because the POWER"
-	line "PLANT is running"
-	cont "smoothly again."
-	done
-
-LavenderPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 1, LAVENDER_TOWN
-	warp_def $7, $4, 1, LAVENDER_TOWN
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x7e6a0, -1
-	person_event SPRITE_GENTLEMAN, 6, 7, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x7e6a3, -1
-	person_event SPRITE_TEACHER, 3, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TeacherScript_0x7e6a6, -1
-	person_event SPRITE_YOUNGSTER, 5, 1, SPRITEMOVEDATA_WALK_UP_DOWN, 1, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, YoungsterScript_0x7e6a9, -1
--- a/maps/LavenderPokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-LavenderPokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-LavenderPokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 3, LAVENDER_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/LavenderPokecenter1F.asm
@@ -1,0 +1,104 @@
+const_value set 2
+	const LAVENDERPOKECENTER1F_NURSE
+	const LAVENDERPOKECENTER1F_GENTLEMAN
+	const LAVENDERPOKECENTER1F_TEACHER
+	const LAVENDERPOKECENTER1F_YOUNGSTER
+
+LavenderPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x7e6a0:
+	jumpstd pokecenternurse
+
+GentlemanScript_0x7e6a3:
+	jumptextfaceplayer UnknownText_0x7e6bd
+
+TeacherScript_0x7e6a6:
+	jumptextfaceplayer UnknownText_0x7e710
+
+YoungsterScript_0x7e6a9:
+	faceplayer
+	opentext
+	checkevent EVENT_RETURNED_MACHINE_PART
+	iftrue UnknownScript_0x7e6b7
+	writetext UnknownText_0x7e779
+	waitbutton
+	closetext
+	end
+
+UnknownScript_0x7e6b7:
+	writetext UnknownText_0x7e7ed
+	waitbutton
+	closetext
+	end
+
+UnknownText_0x7e6bd:
+	text "To the north of"
+	line "LAVENDER is ROCK"
+
+	para "TUNNEL. Go through"
+	line "it to get to the"
+	cont "POWER PLANT."
+	done
+
+UnknownText_0x7e710:
+	text "There's a radio"
+	line "program that plays"
+	cont "# FLUTE music."
+
+	para "Oh? Ah, your radio"
+	line "needs an EXPN CARD"
+	cont "to tune into it."
+	done
+
+UnknownText_0x7e779:
+	text "If the POWER PLANT"
+	line "isn't running, the"
+
+	para "MAGNET TRAIN won't"
+	line "run either…"
+
+	para "It also means the"
+	line "RADIO STATION"
+	cont "can't broadcast…"
+	done
+
+UnknownText_0x7e7ed:
+	text "The DIRECTOR of"
+	line "the RADIO STATION"
+	cont "sure was happy."
+
+	para "He said they're"
+	line "back on the air"
+
+	para "because the POWER"
+	line "PLANT is running"
+	cont "smoothly again."
+	done
+
+LavenderPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 1, LAVENDER_TOWN
+	warp_def $7, $4, 1, LAVENDER_TOWN
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x7e6a0, -1
+	person_event SPRITE_GENTLEMAN, 6, 7, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x7e6a3, -1
+	person_event SPRITE_TEACHER, 3, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TeacherScript_0x7e6a6, -1
+	person_event SPRITE_YOUNGSTER, 5, 1, SPRITEMOVEDATA_WALK_UP_DOWN, 1, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, YoungsterScript_0x7e6a9, -1
--- /dev/null
+++ b/maps/LavenderPokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+LavenderPokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+LavenderPokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 3, LAVENDER_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/LavenderTown.asm
+++ b/maps/LavenderTown.asm
@@ -40,7 +40,7 @@
 SoulHouseSign:
 	jumptext SoulHouseSignText
 
-LavenderPokeCenterSignText:
+LavenderPokecenterSignText:
 	jumpstd pokecentersign
 
 LavenderMartSignText:
@@ -128,7 +128,7 @@
 	signpost 7, 15, SIGNPOST_READ, KantoRadioStationSign
 	signpost 9, 3, SIGNPOST_READ, VolunteerPokemonHouseSign
 	signpost 13, 15, SIGNPOST_READ, SoulHouseSign
-	signpost 5, 6, SIGNPOST_READ, LavenderPokeCenterSignText
+	signpost 5, 6, SIGNPOST_READ, LavenderPokecenterSignText
 	signpost 5, 2, SIGNPOST_READ, LavenderMartSignText
 
 .PersonEvents:
--- a/maps/MahoganyPokeCenter1F.asm
+++ /dev/null
@@ -1,77 +1,0 @@
-const_value set 2
-	const MAHOGANYPOKECENTER1F_NURSE
-	const MAHOGANYPOKECENTER1F_POKEFAN_M
-	const MAHOGANYPOKECENTER1F_YOUNGSTER
-	const MAHOGANYPOKECENTER1F_COOLTRAINER_F
-
-MahoganyPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x19a356:
-	jumpstd pokecenternurse
-
-PokefanMScript_0x19a359:
-	jumptextfaceplayer UnknownText_0x19a362
-
-YoungsterScript_0x19a35c:
-	jumptextfaceplayer UnknownText_0x19a3b3
-
-CooltrainerFScript_0x19a35f:
-	jumptextfaceplayer UnknownText_0x19a418
-
-UnknownText_0x19a362:
-	text "What's this? TEAM"
-	line "ROCKET has come"
-	cont "back?"
-
-	para "I saw some men in"
-	line "black at LAKE OF"
-	cont "RAGE…"
-	done
-
-UnknownText_0x19a3b3:
-	text "I stop my #MON"
-	line "from evolving too"
-	cont "early."
-
-	para "I make them learn"
-	line "certain moves be-"
-	cont "fore I let them"
-	cont "evolve."
-	done
-
-UnknownText_0x19a418:
-	text "#MON do become"
-	line "stronger when they"
-
-	para "evolve, but they"
-	line "also learn moves"
-	cont "more slowly."
-	done
-
-MahoganyPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 4, MAHOGANY_TOWN
-	warp_def $7, $4, 4, MAHOGANY_TOWN
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x19a356, -1
-	person_event SPRITE_POKEFAN_M, 2, 7, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, PokefanMScript_0x19a359, -1
-	person_event SPRITE_YOUNGSTER, 3, 1, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, YoungsterScript_0x19a35c, -1
-	person_event SPRITE_COOLTRAINER_F, 3, 2, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x19a35f, -1
--- /dev/null
+++ b/maps/MahoganyPokecenter1F.asm
@@ -1,0 +1,77 @@
+const_value set 2
+	const MAHOGANYPOKECENTER1F_NURSE
+	const MAHOGANYPOKECENTER1F_POKEFAN_M
+	const MAHOGANYPOKECENTER1F_YOUNGSTER
+	const MAHOGANYPOKECENTER1F_COOLTRAINER_F
+
+MahoganyPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x19a356:
+	jumpstd pokecenternurse
+
+PokefanMScript_0x19a359:
+	jumptextfaceplayer UnknownText_0x19a362
+
+YoungsterScript_0x19a35c:
+	jumptextfaceplayer UnknownText_0x19a3b3
+
+CooltrainerFScript_0x19a35f:
+	jumptextfaceplayer UnknownText_0x19a418
+
+UnknownText_0x19a362:
+	text "What's this? TEAM"
+	line "ROCKET has come"
+	cont "back?"
+
+	para "I saw some men in"
+	line "black at LAKE OF"
+	cont "RAGE…"
+	done
+
+UnknownText_0x19a3b3:
+	text "I stop my #MON"
+	line "from evolving too"
+	cont "early."
+
+	para "I make them learn"
+	line "certain moves be-"
+	cont "fore I let them"
+	cont "evolve."
+	done
+
+UnknownText_0x19a418:
+	text "#MON do become"
+	line "stronger when they"
+
+	para "evolve, but they"
+	line "also learn moves"
+	cont "more slowly."
+	done
+
+MahoganyPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 4, MAHOGANY_TOWN
+	warp_def $7, $4, 4, MAHOGANY_TOWN
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x19a356, -1
+	person_event SPRITE_POKEFAN_M, 2, 7, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, PokefanMScript_0x19a359, -1
+	person_event SPRITE_YOUNGSTER, 3, 1, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, YoungsterScript_0x19a35c, -1
+	person_event SPRITE_COOLTRAINER_F, 3, 2, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x19a35f, -1
--- a/maps/MahoganyTown.asm
+++ b/maps/MahoganyTown.asm
@@ -118,7 +118,7 @@
 MahoganyGymSign:
 	jumptext MahoganyGymSignText
 
-MahoganyTownPokeCenterSign:
+MahoganyTownPokecenterSign:
 	jumpstd pokecentersign
 
 MovementData_0x1900a4:
@@ -266,7 +266,7 @@
 	signpost 5, 1, SIGNPOST_READ, MahoganyTownSign
 	signpost 7, 9, SIGNPOST_READ, MahoganyTownRagecandybarSign
 	signpost 13, 3, SIGNPOST_READ, MahoganyGymSign
-	signpost 13, 16, SIGNPOST_READ, MahoganyTownPokeCenterSign
+	signpost 13, 16, SIGNPOST_READ, MahoganyTownPokecenterSign
 
 .PersonEvents:
 	db 4
--- a/maps/MobileBattleRoom.asm
+++ b/maps/MobileBattleRoom.asm
@@ -8,13 +8,13 @@
 	db 0
 
 .InitializeMobileBattleRoom:
-	priorityjump .InitializeAndPreparePokeCenter2F
+	priorityjump .InitializeAndPreparePokecenter2F
 	end
 
 .DummyTrigger:
 	end
 
-.InitializeAndPreparePokeCenter2F:
+.InitializeAndPreparePokecenter2F:
 	dotrigger $1
 	domaptrigger POKECENTER_2F, $5
 	end
--- a/maps/MobileTradeRoomMobile.asm
+++ b/maps/MobileTradeRoomMobile.asm
@@ -8,13 +8,13 @@
 	db 0
 
 .InitializeMobileTradeRoomMobile:
-	priorityjump .InitializeAndPreparePokeCenter2F
+	priorityjump .InitializeAndPreparePokecenter2F
 	end
 
 .DummyTrigger:
 	end
 
-.InitializeAndPreparePokeCenter2F:
+.InitializeAndPreparePokecenter2F:
 	dotrigger $1
 	domaptrigger POKECENTER_2F, $4
 	end
--- a/maps/OlivineCity.asm
+++ b/maps/OlivineCity.asm
@@ -109,7 +109,7 @@
 OlivineCityBattleTowerSign:
 	jumptext OlivineCityBattleTowerSignText
 
-OlivineCityPokeCenterSign:
+OlivineCityPokecenterSign:
 	jumpstd pokecentersign
 
 OlivineCityMartSign:
@@ -317,7 +317,7 @@
 	signpost 11, 7, SIGNPOST_READ, OlivineGymSign
 	signpost 28, 30, SIGNPOST_READ, OlivineLighthouseSign
 	signpost 23, 3, SIGNPOST_READ, OlivineCityBattleTowerSign
-	signpost 21, 14, SIGNPOST_READ, OlivineCityPokeCenterSign
+	signpost 21, 14, SIGNPOST_READ, OlivineCityPokecenterSign
 	signpost 17, 20, SIGNPOST_READ, OlivineCityMartSign
 
 .PersonEvents:
--- a/maps/OlivinePokeCenter1F.asm
+++ /dev/null
@@ -1,71 +1,0 @@
-const_value set 2
-	const OLIVINEPOKECENTER1F_NURSE
-	const OLIVINEPOKECENTER1F_FISHING_GURU
-	const OLIVINEPOKECENTER1F_FISHER
-	const OLIVINEPOKECENTER1F_TEACHER
-
-OlivinePokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x9c002:
-	jumpstd pokecenternurse
-
-FishingGuruScript_0x9c005:
-	jumpstd happinesschecknpc
-
-FisherScript_0x9c008:
-	jumptextfaceplayer UnknownText_0x9c00e
-
-TeacherScript_0x9c00b:
-	jumptextfaceplayer UnknownText_0x9c086
-
-UnknownText_0x9c00e:
-	text "The SAILOR in the"
-	line "OLIVINE CAFE next"
-
-	para "door is really"
-	line "generous."
-
-	para "He taught my"
-	line "#MON STRENGTH."
-
-	para "Now it can move"
-	line "big boulders."
-	done
-
-UnknownText_0x9c086:
-	text "There's a person"
-	line "in CIANWOOD CITY"
-	cont "across the sea."
-
-	para "I heard him brag-"
-	line "ging about his"
-	cont "rare #MON."
-	done
-
-OlivinePokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 1, OLIVINE_CITY
-	warp_def $7, $4, 1, OLIVINE_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x9c002, -1
-	person_event SPRITE_FISHING_GURU, 4, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, FishingGuruScript_0x9c005, -1
-	person_event SPRITE_FISHER, 3, 2, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, FisherScript_0x9c008, -1
-	person_event SPRITE_TEACHER, 1, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, TeacherScript_0x9c00b, -1
--- /dev/null
+++ b/maps/OlivinePokecenter1F.asm
@@ -1,0 +1,71 @@
+const_value set 2
+	const OLIVINEPOKECENTER1F_NURSE
+	const OLIVINEPOKECENTER1F_FISHING_GURU
+	const OLIVINEPOKECENTER1F_FISHER
+	const OLIVINEPOKECENTER1F_TEACHER
+
+OlivinePokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x9c002:
+	jumpstd pokecenternurse
+
+FishingGuruScript_0x9c005:
+	jumpstd happinesschecknpc
+
+FisherScript_0x9c008:
+	jumptextfaceplayer UnknownText_0x9c00e
+
+TeacherScript_0x9c00b:
+	jumptextfaceplayer UnknownText_0x9c086
+
+UnknownText_0x9c00e:
+	text "The SAILOR in the"
+	line "OLIVINE CAFE next"
+
+	para "door is really"
+	line "generous."
+
+	para "He taught my"
+	line "#MON STRENGTH."
+
+	para "Now it can move"
+	line "big boulders."
+	done
+
+UnknownText_0x9c086:
+	text "There's a person"
+	line "in CIANWOOD CITY"
+	cont "across the sea."
+
+	para "I heard him brag-"
+	line "ging about his"
+	cont "rare #MON."
+	done
+
+OlivinePokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 1, OLIVINE_CITY
+	warp_def $7, $4, 1, OLIVINE_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x9c002, -1
+	person_event SPRITE_FISHING_GURU, 4, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, FishingGuruScript_0x9c005, -1
+	person_event SPRITE_FISHER, 3, 2, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, FisherScript_0x9c008, -1
+	person_event SPRITE_TEACHER, 1, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, TeacherScript_0x9c00b, -1
--- a/maps/PewterCity.asm
+++ b/maps/PewterCity.asm
@@ -56,7 +56,7 @@
 PewterCityWelcomeSign:
 	jumptext PewterCityWelcomeSignText
 
-PewterCityPokeCenterSign:
+PewterCityPokecenterSign:
 	jumpstd pokecentersign
 
 PewterCityMartSign:
@@ -174,7 +174,7 @@
 	signpost 9, 15, SIGNPOST_READ, PewterMuseumSign
 	signpost 19, 33, SIGNPOST_READ, PewterCityMtMoonGiftShopSign
 	signpost 29, 19, SIGNPOST_READ, PewterCityWelcomeSign
-	signpost 25, 14, SIGNPOST_READ, PewterCityPokeCenterSign
+	signpost 25, 14, SIGNPOST_READ, PewterCityPokecenterSign
 	signpost 17, 24, SIGNPOST_READ, PewterCityMartSign
 
 .PersonEvents:
--- a/maps/PewterPokeCenter1F.asm
+++ /dev/null
@@ -1,92 +1,0 @@
-const_value set 2
-	const PEWTERPOKECENTER1F_NURSE
-	const PEWTERPOKECENTER1F_TEACHER
-	const PEWTERPOKECENTER1F_JIGGLYPUFF
-	const PEWTERPOKECENTER1F_BUG_CATCHER
-	const PEWTERPOKECENTER1F_CHRIS
-
-PewterPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x1a2ee7:
-	jumpstd pokecenternurse
-
-TeacherScript_0x1a2eea:
-	jumptextfaceplayer UnknownText_0x1a2f01
-
-PewterJigglypuff:
-	opentext
-	writetext PewterJigglypuffText
-	cry JIGGLYPUFF
-	waitbutton
-	closetext
-	end
-
-BugCatcherScript_0x1a2ef7:
-	jumptextfaceplayer UnknownText_0x1a2f75
-
-Chris:
-	faceplayer
-	opentext
-	trade $4
-	waitbutton
-	closetext
-	end
-
-UnknownText_0x1a2f01:
-	text "…Yeah, and the"
-	line "GYM in CINNABAR's"
-
-	para "gone. I was really"
-	line "amazed."
-
-	para "…Yes? I'm on the"
-	line "phone. Go away!"
-	done
-
-PewterJigglypuffText:
-	text "JIGGLYPUFF: Puu"
-	line "pupuu."
-	done
-
-UnknownText_0x1a2f75:
-	text "Most #MON get"
-	line "drowsy if they"
-
-	para "hear a JIGGLYPUFF"
-	line "singing."
-
-	para "There are several"
-	line "moves that can be"
-
-	para "used only while a"
-	line "#MON is asleep."
-	done
-
-PewterPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 4, PEWTER_CITY
-	warp_def $7, $4, 4, PEWTER_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 5
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x1a2ee7, -1
-	person_event SPRITE_TEACHER, 6, 8, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TeacherScript_0x1a2eea, -1
-	person_event SPRITE_JIGGLYPUFF, 3, 1, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, PewterJigglypuff, -1
-	person_event SPRITE_BUG_CATCHER, 3, 2, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, BugCatcherScript_0x1a2ef7, -1
-	person_event SPRITE_POKEFAN_M, 2, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, Chris, -1
--- a/maps/PewterPokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-PewterPokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-PewterPokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 3, PEWTER_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/PewterPokecenter1F.asm
@@ -1,0 +1,92 @@
+const_value set 2
+	const PEWTERPOKECENTER1F_NURSE
+	const PEWTERPOKECENTER1F_TEACHER
+	const PEWTERPOKECENTER1F_JIGGLYPUFF
+	const PEWTERPOKECENTER1F_BUG_CATCHER
+	const PEWTERPOKECENTER1F_CHRIS
+
+PewterPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x1a2ee7:
+	jumpstd pokecenternurse
+
+TeacherScript_0x1a2eea:
+	jumptextfaceplayer UnknownText_0x1a2f01
+
+PewterJigglypuff:
+	opentext
+	writetext PewterJigglypuffText
+	cry JIGGLYPUFF
+	waitbutton
+	closetext
+	end
+
+BugCatcherScript_0x1a2ef7:
+	jumptextfaceplayer UnknownText_0x1a2f75
+
+Chris:
+	faceplayer
+	opentext
+	trade $4
+	waitbutton
+	closetext
+	end
+
+UnknownText_0x1a2f01:
+	text "…Yeah, and the"
+	line "GYM in CINNABAR's"
+
+	para "gone. I was really"
+	line "amazed."
+
+	para "…Yes? I'm on the"
+	line "phone. Go away!"
+	done
+
+PewterJigglypuffText:
+	text "JIGGLYPUFF: Puu"
+	line "pupuu."
+	done
+
+UnknownText_0x1a2f75:
+	text "Most #MON get"
+	line "drowsy if they"
+
+	para "hear a JIGGLYPUFF"
+	line "singing."
+
+	para "There are several"
+	line "moves that can be"
+
+	para "used only while a"
+	line "#MON is asleep."
+	done
+
+PewterPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 4, PEWTER_CITY
+	warp_def $7, $4, 4, PEWTER_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 5
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x1a2ee7, -1
+	person_event SPRITE_TEACHER, 6, 8, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TeacherScript_0x1a2eea, -1
+	person_event SPRITE_JIGGLYPUFF, 3, 1, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, PewterJigglypuff, -1
+	person_event SPRITE_BUG_CATCHER, 3, 2, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, BugCatcherScript_0x1a2ef7, -1
+	person_event SPRITE_POKEFAN_M, 2, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, Chris, -1
--- /dev/null
+++ b/maps/PewterPokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+PewterPokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+PewterPokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 3, PEWTER_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/PokeCenter1F.blk
+++ /dev/null
@@ -1,1 +1,0 @@
-./'./
\ No newline at end of file
--- a/maps/PokeCenter2F.asm
+++ /dev/null
@@ -1,1050 +1,0 @@
-const_value set 2
-	const POKECENTER2F_TRADE_RECEPTIONIST
-	const POKECENTER2F_BATTLE_RECEPTIONIST
-	const POKECENTER2F_TIME_CAPSULE_RECEPTIONIST
-	const POKECENTER2F_OFFICER
-
-PokeCenter2F_MapScriptHeader:
-.MapTriggers:
-	db 6
-	maptrigger .Trigger0
-	maptrigger .Trigger1
-	maptrigger .Trigger2
-	maptrigger .Trigger3
-	maptrigger .Trigger4
-	maptrigger .Trigger5
-
-.MapCallbacks:
-	db 0
-
-.Trigger0:
-	special Special_CheckMysteryGift
-	if_equal $0, .Trigger0Done
-	clearevent EVENT_MYSTERY_GIFT_DELIVERY_GUY
-	checkevent EVENT_RECEIVED_BALLS_FROM_KURT
-	iftrue .Trigger0Done
-	priorityjump PokeCenter2F_AppearMysteryGiftDeliveryGuy
-
-.Trigger0Done:
-	end
-
-.Trigger1:
-	priorityjump Script_LeftCableTradeCenter
-	end
-
-.Trigger2:
-	priorityjump Script_LeftCableColosseum
-	end
-
-.Trigger3:
-	priorityjump Script_LeftTimeCapsule
-	end
-
-.Trigger4:
-	priorityjump Script_LeftMobileTradeRoom
-	end
-
-.Trigger5:
-	priorityjump Script_LeftMobileBattleRoom
-	end
-
-PokeCenter2F_AppearMysteryGiftDeliveryGuy:
-	appear POKECENTER2F_OFFICER
-	setevent EVENT_RECEIVED_BALLS_FROM_KURT
-	end
-
-Script_TradeCenterClosed:
-	faceplayer
-	opentext
-	writetext Text_TradeRoomClosed
-	waitbutton
-	closetext
-	end
-
-Script_BattleRoomClosed:
-	faceplayer
-	opentext
-	writetext Text_BattleRoomClosed
-	waitbutton
-	closetext
-	end
-
-LinkReceptionistScript_Trade:
-	checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
-	iffalse Script_TradeCenterClosed
-	opentext
-	writetext Text_TradeReceptionistIntro
-	yesorno
-	iffalse .Cancel
-	special Mobile_DummyReturnFalse ; always returns false
-	iffalse .NoMobile
-	writetext Text_TradeReceptionistMobile
-	special AskMobileOrCable
-	iffalse .Cancel
-	if_equal $1, .Mobile
-.NoMobile:
-	special Special_SetBitsForLinkTradeRequest
-	writetext Text_PleaseWait
-	special Special_WaitForLinkedFriend
-	iffalse .FriendNotReady
-	writetext Text_MustSaveGame
-	yesorno
-	iffalse .DidNotSave
-	special Special_TryQuickSave
-	iffalse .DidNotSave
-	writetext Text_PleaseWait
-	special Special_CheckLinkTimeout
-	iffalse .LinkTimedOut
-	copybytetovar wOtherPlayerLinkMode
-	iffalse .LinkedToFirstGen
-	special Special_CheckBothSelectedSameRoom
-	iffalse .IncompatibleRooms
-	writetext Text_PleaseComeIn2
-	waitbutton
-	closetext
-	scall PokeCenter2F_CheckGender
-	warpcheck
-	end
-
-.FriendNotReady:
-	special WaitForOtherPlayerToExit
-	writetext Text_FriendNotReady
-	closetext
-	end
-
-.LinkedToFirstGen:
-	special Special_FailedLinkToPast
-	writetext Text_CantLinkToThePast
-	special Special_CloseLink
-	closetext
-	end
-
-.IncompatibleRooms:
-	writetext Text_IncompatibleRooms
-	special Special_CloseLink
-	closetext
-	end
-
-.LinkTimedOut:
-	writetext Text_LinkTimedOut
-	jump .AbortLink
-
-.DidNotSave:
-	writetext Text_PleaseComeAgain
-.AbortLink:
-	special WaitForOtherPlayerToExit
-.Cancel:
-	closetext
-	end
-
-.Mobile:
-	scall .Mobile_TrySave
-	iftrue .Mobile_Abort
-	scall BattleTradeMobile_WalkIn
-	warpcheck
-	end
-
-.Mobile_Abort:
-	end
-
-.Mobile_TrySave:
-	writetext Text_MustSaveGame
-	yesorno
-	iffalse .Mobile_DidNotSave
-	special Special_TryQuickSave
-	iffalse .Mobile_DidNotSave
-	special Function1011f1
-	writetext Text_PleaseComeIn2
-	waitbutton
-	closetext
-	writebyte $0
-	end
-
-.Mobile_DidNotSave:
-	writetext Text_PleaseComeAgain
-	closetext
-	writebyte $1
-	end
-
-BattleTradeMobile_WalkIn:
-	applymovement2 PokeCenter2FMobileMobileMovementData_ReceptionistWalksUpAndLeft_LookDown
-	applymovement PLAYER, PokeCenter2FMobileMovementData_PlayerWalksIntoMobileBattleRoom
-	end
-
-LinkReceptionistScript_Battle:
-	checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
-	iffalse Script_BattleRoomClosed
-	opentext
-	writetext Text_BattleReceptionistIntro
-	yesorno
-	iffalse .Cancel
-	special Mobile_DummyReturnFalse ; always returns false
-	iffalse .NoMobile
-	writetext Text_BattleReceptionistMobile
-	special AskMobileOrCable
-	iffalse .Cancel
-	if_equal $1, .Mobile
-.NoMobile:
-	special Special_SetBitsForBattleRequest
-	writetext Text_PleaseWait
-	special Special_WaitForLinkedFriend
-	iffalse .FriendNotReady
-	writetext Text_MustSaveGame
-	yesorno
-	iffalse .DidNotSave
-	special Special_TryQuickSave
-	iffalse .DidNotSave
-	writetext Text_PleaseWait
-	special Special_CheckLinkTimeout
-	iffalse .LinkTimedOut
-	copybytetovar wOtherPlayerLinkMode
-	iffalse .LinkedToFirstGen
-	special Special_CheckBothSelectedSameRoom
-	iffalse .IncompatibleRooms
-	writetext Text_PleaseComeIn2
-	waitbutton
-	closetext
-	scall PokeCenter2F_CheckGender
-	warpcheck
-	end
-
-.FriendNotReady:
-	special WaitForOtherPlayerToExit
-	writetext Text_FriendNotReady
-	closetext
-	end
-
-.LinkedToFirstGen:
-	special Special_FailedLinkToPast
-	writetext Text_CantLinkToThePast
-	special Special_CloseLink
-	closetext
-	end
-
-.IncompatibleRooms:
-	writetext Text_IncompatibleRooms
-	special Special_CloseLink
-	closetext
-	end
-
-.LinkTimedOut:
-	writetext Text_LinkTimedOut
-	jump .AbortLink
-
-.DidNotSave:
-	writetext Text_PleaseComeAgain
-.AbortLink:
-	special WaitForOtherPlayerToExit
-.Cancel:
-	closetext
-	end
-
-.Mobile:
-	scall .SelectThreeMons
-	iffalse .Mobile_Abort
-	scall .Mobile_TrySave
-	iftrue .Mobile_Abort
-	scall BattleTradeMobile_WalkIn
-	warpcheck
-	end
-
-.Mobile_Abort:
-	end
-
-.Mobile_TrySave:
-	writetext Text_MustSaveGame
-	yesorno
-	iffalse .Mobile_DidNotSave
-	special Function103780
-	iffalse .Mobile_DidNotSave
-	special Function1011f1
-	writetext Text_PleaseComeIn2
-	waitbutton
-	closetext
-	writebyte $0
-	end
-
-.Mobile_DidNotSave:
-	writetext Text_PleaseComeAgain
-	closetext
-	writebyte $1
-	end
-
-.SelectThreeMons:
-	special Mobile_SelectThreeMons
-	iffalse .Mobile_DidNotSelect
-	if_equal $1, .Mobile_OK
-	if_equal $2, .Mobile_OK
-	if_equal $3, .Mobile_InvalidParty
-	jump .Mobile_DidNotSelect
-
-.Mobile_InvalidParty:
-	writetext Text_BrokeStadiumRules
-	waitbutton
-.Mobile_DidNotSelect:
-	closetext
-	writebyte $0
-	end
-
-.Mobile_OK:
-	writebyte $1
-	end
-
-Script_TimeCapsuleClosed:
-	faceplayer
-	opentext
-	writetext Text_TimeCapsuleClosed
-	waitbutton
-	closetext
-	end
-
-LinkReceptionistScript_TimeCapsule:
-	checkevent EVENT_MET_BILL
-	iftrue Script_TimeCapsuleClosed
-	checkflag ENGINE_TIME_CAPSULE
-	iftrue Script_TimeCapsuleClosed
-	special Special_SetBitsForTimeCapsuleRequest
-	faceplayer
-	opentext
-	writetext Text_TimeCapsuleReceptionistIntro
-	yesorno
-	iffalse .Cancel
-	special Special_CheckTimeCapsuleCompatibility
-	if_equal $1, .MonTooNew
-	if_equal $2, .MonMoveTooNew
-	if_equal $3, .MonHasMail
-	writetext Text_PleaseWait
-	special Special_WaitForLinkedFriend
-	iffalse .FriendNotReady
-	writetext Text_MustSaveGame
-	yesorno
-	iffalse .DidNotSave
-	special Special_TryQuickSave
-	iffalse .DidNotSave
-	writetext Text_PleaseWait
-	special Special_CheckLinkTimeout
-	iffalse .LinkTimedOut
-	copybytetovar wOtherPlayerLinkMode
-	iffalse .OK
-	special Special_CheckBothSelectedSameRoom
-	writetext Text_IncompatibleRooms
-	special Special_CloseLink
-	closetext
-	end
-
-.OK:
-	special Special_EnterTimeCapsule
-	writetext Text_PleaseComeIn2
-	waitbutton
-	closetext
-	scall TimeCapsuleScript_CheckPlayerGender
-	warpcheck
-	end
-
-.FriendNotReady:
-	special WaitForOtherPlayerToExit
-	writetext Text_FriendNotReady
-	closetext
-	end
-
-.LinkTimedOut:
-	writetext Text_LinkTimedOut
-	jump .Cancel
-
-.DidNotSave:
-	writetext Text_PleaseComeAgain
-.Cancel:
-	special WaitForOtherPlayerToExit
-	closetext
-	end
-
-.MonTooNew:
-	writetext Text_RejectNewMon
-	closetext
-	end
-
-.MonMoveTooNew:
-	writetext Text_RejectMonWithNewMove
-	closetext
-	end
-
-.MonHasMail:
-	writetext Text_RejectMonWithMail
-	closetext
-	end
-
-Script_LeftCableTradeCenter:
-	special WaitForOtherPlayerToExit
-	scall Script_WalkOutOfLinkTradeRoom
-	dotrigger $0
-	domaptrigger TRADE_CENTER, $0
-	end
-
-Script_LeftMobileTradeRoom:
-	special Function101220
-	scall Script_WalkOutOfMobileTradeRoom
-	dotrigger $0
-	domaptrigger MOBILE_TRADE_ROOM_MOBILE, $0
-	end
-
-Script_WalkOutOfMobileTradeRoom:
-	applymovement POKECENTER2F_TRADE_RECEPTIONIST, PokeCenter2FMobileMovementData_ReceptionistWalksUpAndLeft
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerWalksOutOfMobileRoom
-	applymovement POKECENTER2F_TRADE_RECEPTIONIST, PokeCenter2FMobileMovementData_ReceptionistWalksRightAndDown
-	end
-
-Script_LeftCableColosseum:
-	special WaitForOtherPlayerToExit
-	scall Script_WalkOutOfLinkBattleRoom
-	dotrigger $0
-	domaptrigger COLOSSEUM, $0
-	end
-
-Script_LeftMobileBattleRoom:
-	special Function101220
-	scall Script_WalkOutOfMobileBattleRoom
-	dotrigger $0
-	domaptrigger MOBILE_BATTLE_ROOM, $0
-	end
-
-Script_WalkOutOfMobileBattleRoom:
-	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, PokeCenter2FMobileMovementData_ReceptionistWalksUpAndLeft
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerWalksOutOfMobileRoom
-	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, PokeCenter2FMobileMovementData_ReceptionistWalksRightAndDown
-	end
-
-PokeCenter2F_CheckGender:
-	checkflag ENGINE_PLAYER_IS_FEMALE
-	iftrue .Female
-	applymovement2 PokeCenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesThreeStepsUp
-	end
-
-.Female:
-	applymovement2 PokeCenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight_2
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesTwoStepsUp
-	opentext
-	writetext Text_OhPleaseWait
-	waitbutton
-	closetext
-	applymovement2 PokeCenter2FMovementData_ReceptionistLooksRight
-	spriteface PLAYER, LEFT
-	opentext
-	writetext Text_ChangeTheLook
-	waitbutton
-	closetext
-	playsound SFX_TINGLE
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
-	writebyte (PAL_NPC_RED << 4)
-	special Special_SetPlayerPalette
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
-	setflag ENGINE_KRIS_IN_CABLE_CLUB
-	special ReplaceKrisSprite
-	opentext
-	writetext Text_LikeTheLook
-	waitbutton
-	closetext
-	showemote EMOTE_SHOCK, PLAYER, 15
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesOneStepUp
-	end
-
-Script_WalkOutOfLinkTradeRoom:
-	checkflag ENGINE_KRIS_IN_CABLE_CLUB
-	iftrue .Female
-	applymovement POKECENTER2F_TRADE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightLooksDown_3
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesThreeStepsDown
-	applymovement POKECENTER2F_TRADE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightAndDown
-	end
-
-.Female:
-	applymovement POKECENTER2F_TRADE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightLooksDown_3
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesOneStepDown_2
-	clearflag ENGINE_KRIS_IN_CABLE_CLUB
-	playsound SFX_TINGLE
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
-	writebyte (PAL_NPC_BLUE << 4)
-	special Special_SetPlayerPalette
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
-	special ReplaceKrisSprite
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesTwoStepsDown_2
-	applymovement POKECENTER2F_TRADE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightAndDown
-	end
-
-Script_WalkOutOfLinkBattleRoom:
-	checkflag ENGINE_KRIS_IN_CABLE_CLUB
-	iftrue .Female
-	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightLooksDown_3
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesThreeStepsDown
-	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightAndDown
-	end
-
-.Female:
-	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightLooksDown_3
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesOneStepDown_2
-	clearflag ENGINE_KRIS_IN_CABLE_CLUB
-	playsound SFX_TINGLE
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
-	writebyte (PAL_NPC_BLUE << 4)
-	special Special_SetPlayerPalette
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
-	special ReplaceKrisSprite
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesTwoStepsDown_2
-	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightAndDown
-	end
-
-TimeCapsuleScript_CheckPlayerGender:
-	checkflag ENGINE_PLAYER_IS_FEMALE
-	iftrue .Female
-	checkcode VAR_FACING
-	if_equal LEFT, .MaleFacingLeft
-	if_equal RIGHT, .MaleFacingRight
-	applymovement2 PokeCenter2FMovementData_ReceptionistStepsLeftLooksDown
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesTwoStepsUp_2
-	end
-
-.MaleFacingLeft:
-	applymovement2 PokeCenter2FMovementData_ReceptionistStepsLeftLooksDown
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerWalksLeftAndUp
-	end
-
-.MaleFacingRight:
-	applymovement2 PokeCenter2FMovementData_ReceptionistStepsRightLooksDown
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerWalksRightAndUp
-	end
-
-.Female:
-	checkcode VAR_FACING
-	if_equal RIGHT, .FemaleFacingRight
-	if_equal LEFT, .FemaleFacingLeft
-	applymovement2 PokeCenter2FMovementData_ReceptionistStepsLeftLooksRight_2
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesOneStepUp_2
-	jump .FemaleContinue
-
-.FemaleFacingRight:
-	applymovement2 PokeCenter2FMovementData_ReceptionistStepsRightLooksLeft_2
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesOneStepRight
-	jump .FemaleContinue
-
-.FemaleFacingLeft:
-	applymovement2 PokeCenter2FMovementData_ReceptionistStepsLeftLooksRight_2
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesOneStepLeft
-.FemaleContinue:
-	opentext
-	writetext Text_OhPleaseWait
-	waitbutton
-	closetext
-	checkcode VAR_FACING
-	if_not_equal UP, .FemaleChangeApperance
-	spriteface PLAYER, LEFT
-.FemaleChangeApperance:
-	opentext
-	writetext Text_ChangeTheLook
-	waitbutton
-	closetext
-	playsound SFX_TINGLE
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
-	writebyte (PAL_NPC_RED << 4)
-	special Special_SetPlayerPalette
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingDown
-	faceperson PLAYER, POKECENTER2F_TIME_CAPSULE_RECEPTIONIST
-	setflag ENGINE_KRIS_IN_CABLE_CLUB
-	special ReplaceKrisSprite
-	opentext
-	writetext Text_LikeTheLook
-	waitbutton
-	closetext
-	showemote EMOTE_SHOCK, PLAYER, 15
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesOneStepUp_2
-	end
-
-Script_LeftTimeCapsule:
-	special WaitForOtherPlayerToExit
-	checkflag ENGINE_KRIS_IN_CABLE_CLUB
-	iftrue .Female
-	applymovement POKECENTER2F_TIME_CAPSULE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsLeftLooksRight
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesTwoStepsDown
-	applymovement POKECENTER2F_TIME_CAPSULE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightLooksDown_2
-	jump .Done
-
-.Female:
-	applymovement POKECENTER2F_TIME_CAPSULE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsLeftLooksRight
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesOneStepDown
-	clearflag ENGINE_KRIS_IN_CABLE_CLUB
-	playsound SFX_TINGLE
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
-	writebyte (PAL_NPC_BLUE << 4)
-	special Special_SetPlayerPalette
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
-	special ReplaceKrisSprite
-	applymovement PLAYER, PokeCenter2FMovementData_PlayerTakesOneStepDown
-	applymovement POKECENTER2F_TIME_CAPSULE_RECEPTIONIST, PokeCenter2FMovementData_ReceptionistStepsRightLooksDown_2
-.Done:
-	dotrigger $0
-	domaptrigger TIME_CAPSULE, $0
-	end
-
-MapPokeCenter2FSignpost0Script:
-	refreshscreen $0
-	special Special_DisplayLinkRecord
-	closetext
-	end
-
-OfficerScript_0x192c9a:
-	faceplayer
-	opentext
-	checkevent EVENT_MYSTERY_GIFT_DELIVERY_GUY
-	iftrue .AlreadyGotGift
-	writetext Text_MysteryGiftDeliveryGuy_Intro
-	yesorno
-	iffalse .RefusedGift
-	writetext Text_MysteryGiftDeliveryGuy_HereYouGo
-	buttonsound
-	waitsfx
-	special Special_GetMysteryGiftItem
-	iffalse .BagIsFull
-	itemnotify
-	setevent EVENT_MYSTERY_GIFT_DELIVERY_GUY
-.AlreadyGotGift:
-	writetext Text_MysteryGiftDeliveryGuy_Outro
-	waitbutton
-	closetext
-	end
-
-.BagIsFull:
-	writetext Text_MysteryGiftDeliveryGuy_NoRoom
-	waitbutton
-	closetext
-	end
-
-.RefusedGift:
-	writetext Text_MysteryGiftDeliveryGuy_SaidNo
-	waitbutton
-	closetext
-	end
-
-PokeCenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight:
-	slow_step UP
-	slow_step LEFT
-	turn_head RIGHT
-	step_end
-
-PokeCenter2FMobileMobileMovementData_ReceptionistWalksUpAndLeft_LookDown:
-	slow_step UP
-	slow_step LEFT
-	turn_head DOWN
-	step_end
-
-PokeCenter2FMovementData_ReceptionistStepsLeftLooksDown:
-	slow_step LEFT
-	turn_head DOWN
-	step_end
-
-PokeCenter2FMovementData_ReceptionistStepsRightLooksDown:
-	slow_step RIGHT
-	turn_head DOWN
-	step_end
-
-PokeCenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight_2:
-	slow_step UP
-	slow_step LEFT
-	turn_head RIGHT
-	step_end
-
-PokeCenter2FMovementData_ReceptionistLooksRight:
-	turn_head RIGHT
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesThreeStepsUp:
-	step UP
-	step UP
-	step UP
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesTwoStepsUp:
-	step UP
-	step UP
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesOneStepUp:
-	step UP
-	step_end
-
-PokeCenter2FMobileMovementData_PlayerWalksIntoMobileBattleRoom:
-	step UP
-	step UP
-	step RIGHT
-	step UP
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesTwoStepsUp_2:
-	step UP
-	step UP
-	step_end
-
-PokeCenter2FMovementData_PlayerWalksLeftAndUp:
-	step LEFT
-	step UP
-	step_end
-
-PokeCenter2FMovementData_PlayerWalksRightAndUp:
-	step RIGHT
-	step UP
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesThreeStepsDown:
-	step DOWN
-	step DOWN
-	step DOWN
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesTwoStepsDown:
-	step DOWN
-	step DOWN
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesOneStepDown:
-	step DOWN
-	step_end
-
-PokeCenter2FMovementData_ReceptionistStepsRightAndDown:
-	slow_step RIGHT
-	slow_step DOWN
-	step_end
-
-PokeCenter2FMovementData_ReceptionistStepsRightLooksDown_2:
-	slow_step RIGHT
-	turn_head DOWN
-	step_end
-
-PokeCenter2FMovementData_ReceptionistStepsRightLooksDown_3:
-	slow_step UP
-	slow_step LEFT
-	turn_head RIGHT
-	step_end
-
-PokeCenter2FMovementData_ReceptionistStepsLeftLooksRight:
-	slow_step LEFT
-	turn_head RIGHT
-	step_end
-
-PokeCenter2FMobileMovementData_ReceptionistWalksUpAndLeft:
-	slow_step UP
-	slow_step LEFT
-	turn_head RIGHT
-	step_end
-
-PokeCenter2FMovementData_PlayerWalksOutOfMobileRoom:
-	step DOWN
-	step LEFT
-	step DOWN
-	step DOWN
-	step_end
-
-PokeCenter2FMobileMovementData_ReceptionistWalksRightAndDown:
-	slow_step RIGHT
-	slow_step DOWN
-	step_end
-
-PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight:
-	turn_head DOWN
-	turn_head LEFT
-	turn_head UP
-	turn_head RIGHT
-	step_end
-
-PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft:
-	turn_head DOWN
-	turn_head LEFT
-	turn_head UP
-	turn_head RIGHT
-	turn_head LEFT
-	step_end
-
-PokeCenter2FMovementData_PlayerSpinsClockwiseEndsFacingDown:
-	turn_head DOWN
-	turn_head LEFT
-	turn_head UP
-	turn_head RIGHT
-	turn_head DOWN
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesOneStepDown_2:
-	step DOWN
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesTwoStepsDown_2:
-	step DOWN
-	step DOWN
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesOneStepUp_2:
-	step UP
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesOneStepRight:
-	step RIGHT
-	step_end
-
-PokeCenter2FMovementData_PlayerTakesOneStepLeft:
-	step LEFT
-	step_end
-
-PokeCenter2FMovementData_ReceptionistStepsLeftLooksRight_2:
-	slow_step LEFT
-	turn_head RIGHT
-	step_end
-
-PokeCenter2FMovementData_ReceptionistStepsRightLooksLeft_2:
-	slow_step RIGHT
-	turn_head LEFT
-	step_end
-
-Text_BattleReceptionistMobile:
-	text "Would you like to"
-	line "battle over a GAME"
-
-	para "LINK cable or by"
-	line "mobile phone?"
-	done
-
-Text_TradeReceptionistMobile:
-	text "Would you like to"
-	line "trade over a GAME"
-
-	para "LINK cable or by"
-	line "mobile phone?"
-	done
-
-Text_ThisWayToMobileRoom:
-	text "This way to the"
-	line "MOBILE ROOM."
-	done
-
-Text_BattleReceptionistIntro:
-	text "Welcome to CABLE"
-	line "CLUB COLOSSEUM."
-
-	para "You may battle a"
-	line "friend here."
-
-	para "Would you like to"
-	line "battle?"
-	done
-
-Text_TradeReceptionistIntro:
-	text "Welcome to CABLE"
-	line "TRADE CENTER."
-
-	para "You may trade your"
-	line "#MON here with"
-	cont "a friend."
-
-	para "Would you like to"
-	line "trade?"
-	done
-
-Text_TimeCapsuleReceptionistIntro:
-	text "Welcome to CABLE"
-	line "CLUB TIME CAPSULE."
-
-	para "You can travel to"
-	line "the past and trade"
-	cont "your #MON."
-
-	para "Would you like to"
-	line "trade across time?"
-	done
-
-Text_FriendNotReady:
-	text "Your friend is not"
-	line "ready."
-	prompt
-
-Text_MustSaveGame:
-	text "Before opening the"
-	line "link, you must"
-	cont "save your game."
-	done
-
-Text_PleaseWait:
-	text "Please wait."
-	done
-
-Text_LinkTimedOut:
-	text "The link has been"
-	line "closed because of"
-	cont "inactivity."
-
-	para "Please contact"
-	line "your friend and"
-	cont "come again."
-	prompt
-
-Text_PleaseComeAgain:
-	text "Please come again."
-	prompt
-
-Text_PleaseComeIn:
-	text "Please come in."
-	prompt
-
-Text_TemporaryStagingInLinkRoom:
-	text "We'll put you in"
-	line "the link room for"
-	cont "the time being."
-	done
-
-Text_CantLinkToThePast:
-	text "You can't link to"
-	line "the past here."
-	prompt
-
-Text_IncompatibleRooms:
-	text "Incompatible rooms"
-	line "were chosen."
-	prompt
-
-Text_PleaseComeIn2:
-	text "Please come in."
-	done
-
-Text_PleaseEnter:
-	text "Please enter."
-	prompt
-
-Text_RejectNewMon:
-	text "Sorry--@"
-	text_from_ram StringBuffer1
-	text ""
-	line "can't be taken."
-	prompt
-
-Text_RejectMonWithNewMove:
-	text "You can't take the"
-	line "@"
-	text_from_ram StringBuffer1
-	text " with a"
-	cont "@"
-	text_from_ram StringBuffer2
-	text "."
-	prompt
-
-Text_RejectMonWithMail:
-	text "You can't take the"
-	line "@"
-	text_from_ram StringBuffer1
-	text " that"
-	cont "has MAIL with you."
-	prompt
-
-Text_TimeCapsuleClosed:
-	text "I'm sorry--the"
-	line "TIME CAPSULE is"
-	cont "being adjusted."
-	done
-
-Text_TradeRoomClosed:
-	text "I'm sorry--the"
-	line "TRADE MACHINE is"
-	cont "being adjusted."
-	done
-
-Text_BattleRoomClosed:
-	text "I'm sorry--the"
-	line "BATTLE MACHINE is"
-	cont "being adjusted."
-	done
-
-Text_MysteryGiftDeliveryGuy_Intro:
-	text "Hello! You're"
-	line "<PLAYER>, right?"
-
-	para "I have some-"
-	line "thing for you."
-	done
-
-Text_MysteryGiftDeliveryGuy_HereYouGo:
-	text "Here you go!"
-	done
-
-Text_MysteryGiftDeliveryGuy_Outro:
-	text "We hope to serve"
-	line "you again."
-	done
-
-Text_MysteryGiftDeliveryGuy_NoRoom:
-	text "Oh, you have no"
-	line "space for this."
-
-	para "Stop in at any"
-	line "#MON CENTER"
-
-	para "across the country"
-	line "to pick it up."
-	done
-
-Text_MysteryGiftDeliveryGuy_SaidNo:
-	text "No? That's very"
-	line "strange…"
-	done
-
-Text_OhPleaseWait:
-	text "Oh, please wait."
-	done
-
-Text_ChangeTheLook:
-	text "We need to change"
-	line "the look here…"
-	done
-
-Text_LikeTheLook:
-	text "How does this"
-	line "style look to you?"
-	done
-
-Text_BrokeStadiumRules:
-	text "Excuse me!"
-
-	para "For STADIUM rules,"
-	line "please bring six"
-
-	para "different #MON,"
-	line "excluding EGGS."
-
-	para "The six #MON"
-	line "must be different."
-
-	para "Also, they must"
-	line "not be holding"
-	cont "identical items."
-
-	para "Please come back"
-	line "when you're ready."
-	done
-
-PokeCenter2F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 6
-	warp_def $7, $0, -1, POKECENTER_2F
-	warp_def $0, $5, 1, TRADE_CENTER
-	warp_def $0, $9, 1, COLOSSEUM
-	warp_def $2, $d, 1, TIME_CAPSULE
-	warp_def $0, $6, 1, MOBILE_TRADE_ROOM_MOBILE
-	warp_def $0, $a, 1, MOBILE_BATTLE_ROOM
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 1
-	signpost 3, 7, SIGNPOST_READ, MapPokeCenter2FSignpost0Script
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_LINK_RECEPTIONIST, 2, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, LinkReceptionistScript_Trade, -1
-	person_event SPRITE_LINK_RECEPTIONIST, 2, 9, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, LinkReceptionistScript_Battle, -1
-	person_event SPRITE_LINK_RECEPTIONIST, 3, 13, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, LinkReceptionistScript_TimeCapsule, -1
-	person_event SPRITE_OFFICER, 1, 1, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, OfficerScript_0x192c9a, EVENT_MYSTERY_GIFT_DELIVERY_GUY
--- a/maps/PokeCenter2F.blk
+++ /dev/null
@@ -1,2 +1,0 @@
-1+
-28(8-)-)
\ No newline at end of file
--- /dev/null
+++ b/maps/Pokecenter1F.blk
@@ -1,0 +1,1 @@
+./'./
\ No newline at end of file
--- /dev/null
+++ b/maps/Pokecenter2F.asm
@@ -1,0 +1,1050 @@
+const_value set 2
+	const POKECENTER2F_TRADE_RECEPTIONIST
+	const POKECENTER2F_BATTLE_RECEPTIONIST
+	const POKECENTER2F_TIME_CAPSULE_RECEPTIONIST
+	const POKECENTER2F_OFFICER
+
+Pokecenter2F_MapScriptHeader:
+.MapTriggers:
+	db 6
+	maptrigger .Trigger0
+	maptrigger .Trigger1
+	maptrigger .Trigger2
+	maptrigger .Trigger3
+	maptrigger .Trigger4
+	maptrigger .Trigger5
+
+.MapCallbacks:
+	db 0
+
+.Trigger0:
+	special Special_CheckMysteryGift
+	if_equal $0, .Trigger0Done
+	clearevent EVENT_MYSTERY_GIFT_DELIVERY_GUY
+	checkevent EVENT_RECEIVED_BALLS_FROM_KURT
+	iftrue .Trigger0Done
+	priorityjump Pokecenter2F_AppearMysteryGiftDeliveryGuy
+
+.Trigger0Done:
+	end
+
+.Trigger1:
+	priorityjump Script_LeftCableTradeCenter
+	end
+
+.Trigger2:
+	priorityjump Script_LeftCableColosseum
+	end
+
+.Trigger3:
+	priorityjump Script_LeftTimeCapsule
+	end
+
+.Trigger4:
+	priorityjump Script_LeftMobileTradeRoom
+	end
+
+.Trigger5:
+	priorityjump Script_LeftMobileBattleRoom
+	end
+
+Pokecenter2F_AppearMysteryGiftDeliveryGuy:
+	appear POKECENTER2F_OFFICER
+	setevent EVENT_RECEIVED_BALLS_FROM_KURT
+	end
+
+Script_TradeCenterClosed:
+	faceplayer
+	opentext
+	writetext Text_TradeRoomClosed
+	waitbutton
+	closetext
+	end
+
+Script_BattleRoomClosed:
+	faceplayer
+	opentext
+	writetext Text_BattleRoomClosed
+	waitbutton
+	closetext
+	end
+
+LinkReceptionistScript_Trade:
+	checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
+	iffalse Script_TradeCenterClosed
+	opentext
+	writetext Text_TradeReceptionistIntro
+	yesorno
+	iffalse .Cancel
+	special Mobile_DummyReturnFalse ; always returns false
+	iffalse .NoMobile
+	writetext Text_TradeReceptionistMobile
+	special AskMobileOrCable
+	iffalse .Cancel
+	if_equal $1, .Mobile
+.NoMobile:
+	special Special_SetBitsForLinkTradeRequest
+	writetext Text_PleaseWait
+	special Special_WaitForLinkedFriend
+	iffalse .FriendNotReady
+	writetext Text_MustSaveGame
+	yesorno
+	iffalse .DidNotSave
+	special Special_TryQuickSave
+	iffalse .DidNotSave
+	writetext Text_PleaseWait
+	special Special_CheckLinkTimeout
+	iffalse .LinkTimedOut
+	copybytetovar wOtherPlayerLinkMode
+	iffalse .LinkedToFirstGen
+	special Special_CheckBothSelectedSameRoom
+	iffalse .IncompatibleRooms
+	writetext Text_PleaseComeIn2
+	waitbutton
+	closetext
+	scall Pokecenter2F_CheckGender
+	warpcheck
+	end
+
+.FriendNotReady:
+	special WaitForOtherPlayerToExit
+	writetext Text_FriendNotReady
+	closetext
+	end
+
+.LinkedToFirstGen:
+	special Special_FailedLinkToPast
+	writetext Text_CantLinkToThePast
+	special Special_CloseLink
+	closetext
+	end
+
+.IncompatibleRooms:
+	writetext Text_IncompatibleRooms
+	special Special_CloseLink
+	closetext
+	end
+
+.LinkTimedOut:
+	writetext Text_LinkTimedOut
+	jump .AbortLink
+
+.DidNotSave:
+	writetext Text_PleaseComeAgain
+.AbortLink:
+	special WaitForOtherPlayerToExit
+.Cancel:
+	closetext
+	end
+
+.Mobile:
+	scall .Mobile_TrySave
+	iftrue .Mobile_Abort
+	scall BattleTradeMobile_WalkIn
+	warpcheck
+	end
+
+.Mobile_Abort:
+	end
+
+.Mobile_TrySave:
+	writetext Text_MustSaveGame
+	yesorno
+	iffalse .Mobile_DidNotSave
+	special Special_TryQuickSave
+	iffalse .Mobile_DidNotSave
+	special Function1011f1
+	writetext Text_PleaseComeIn2
+	waitbutton
+	closetext
+	writebyte $0
+	end
+
+.Mobile_DidNotSave:
+	writetext Text_PleaseComeAgain
+	closetext
+	writebyte $1
+	end
+
+BattleTradeMobile_WalkIn:
+	applymovement2 Pokecenter2FMobileMobileMovementData_ReceptionistWalksUpAndLeft_LookDown
+	applymovement PLAYER, Pokecenter2FMobileMovementData_PlayerWalksIntoMobileBattleRoom
+	end
+
+LinkReceptionistScript_Battle:
+	checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM
+	iffalse Script_BattleRoomClosed
+	opentext
+	writetext Text_BattleReceptionistIntro
+	yesorno
+	iffalse .Cancel
+	special Mobile_DummyReturnFalse ; always returns false
+	iffalse .NoMobile
+	writetext Text_BattleReceptionistMobile
+	special AskMobileOrCable
+	iffalse .Cancel
+	if_equal $1, .Mobile
+.NoMobile:
+	special Special_SetBitsForBattleRequest
+	writetext Text_PleaseWait
+	special Special_WaitForLinkedFriend
+	iffalse .FriendNotReady
+	writetext Text_MustSaveGame
+	yesorno
+	iffalse .DidNotSave
+	special Special_TryQuickSave
+	iffalse .DidNotSave
+	writetext Text_PleaseWait
+	special Special_CheckLinkTimeout
+	iffalse .LinkTimedOut
+	copybytetovar wOtherPlayerLinkMode
+	iffalse .LinkedToFirstGen
+	special Special_CheckBothSelectedSameRoom
+	iffalse .IncompatibleRooms
+	writetext Text_PleaseComeIn2
+	waitbutton
+	closetext
+	scall Pokecenter2F_CheckGender
+	warpcheck
+	end
+
+.FriendNotReady:
+	special WaitForOtherPlayerToExit
+	writetext Text_FriendNotReady
+	closetext
+	end
+
+.LinkedToFirstGen:
+	special Special_FailedLinkToPast
+	writetext Text_CantLinkToThePast
+	special Special_CloseLink
+	closetext
+	end
+
+.IncompatibleRooms:
+	writetext Text_IncompatibleRooms
+	special Special_CloseLink
+	closetext
+	end
+
+.LinkTimedOut:
+	writetext Text_LinkTimedOut
+	jump .AbortLink
+
+.DidNotSave:
+	writetext Text_PleaseComeAgain
+.AbortLink:
+	special WaitForOtherPlayerToExit
+.Cancel:
+	closetext
+	end
+
+.Mobile:
+	scall .SelectThreeMons
+	iffalse .Mobile_Abort
+	scall .Mobile_TrySave
+	iftrue .Mobile_Abort
+	scall BattleTradeMobile_WalkIn
+	warpcheck
+	end
+
+.Mobile_Abort:
+	end
+
+.Mobile_TrySave:
+	writetext Text_MustSaveGame
+	yesorno
+	iffalse .Mobile_DidNotSave
+	special Function103780
+	iffalse .Mobile_DidNotSave
+	special Function1011f1
+	writetext Text_PleaseComeIn2
+	waitbutton
+	closetext
+	writebyte $0
+	end
+
+.Mobile_DidNotSave:
+	writetext Text_PleaseComeAgain
+	closetext
+	writebyte $1
+	end
+
+.SelectThreeMons:
+	special Mobile_SelectThreeMons
+	iffalse .Mobile_DidNotSelect
+	if_equal $1, .Mobile_OK
+	if_equal $2, .Mobile_OK
+	if_equal $3, .Mobile_InvalidParty
+	jump .Mobile_DidNotSelect
+
+.Mobile_InvalidParty:
+	writetext Text_BrokeStadiumRules
+	waitbutton
+.Mobile_DidNotSelect:
+	closetext
+	writebyte $0
+	end
+
+.Mobile_OK:
+	writebyte $1
+	end
+
+Script_TimeCapsuleClosed:
+	faceplayer
+	opentext
+	writetext Text_TimeCapsuleClosed
+	waitbutton
+	closetext
+	end
+
+LinkReceptionistScript_TimeCapsule:
+	checkevent EVENT_MET_BILL
+	iftrue Script_TimeCapsuleClosed
+	checkflag ENGINE_TIME_CAPSULE
+	iftrue Script_TimeCapsuleClosed
+	special Special_SetBitsForTimeCapsuleRequest
+	faceplayer
+	opentext
+	writetext Text_TimeCapsuleReceptionistIntro
+	yesorno
+	iffalse .Cancel
+	special Special_CheckTimeCapsuleCompatibility
+	if_equal $1, .MonTooNew
+	if_equal $2, .MonMoveTooNew
+	if_equal $3, .MonHasMail
+	writetext Text_PleaseWait
+	special Special_WaitForLinkedFriend
+	iffalse .FriendNotReady
+	writetext Text_MustSaveGame
+	yesorno
+	iffalse .DidNotSave
+	special Special_TryQuickSave
+	iffalse .DidNotSave
+	writetext Text_PleaseWait
+	special Special_CheckLinkTimeout
+	iffalse .LinkTimedOut
+	copybytetovar wOtherPlayerLinkMode
+	iffalse .OK
+	special Special_CheckBothSelectedSameRoom
+	writetext Text_IncompatibleRooms
+	special Special_CloseLink
+	closetext
+	end
+
+.OK:
+	special Special_EnterTimeCapsule
+	writetext Text_PleaseComeIn2
+	waitbutton
+	closetext
+	scall TimeCapsuleScript_CheckPlayerGender
+	warpcheck
+	end
+
+.FriendNotReady:
+	special WaitForOtherPlayerToExit
+	writetext Text_FriendNotReady
+	closetext
+	end
+
+.LinkTimedOut:
+	writetext Text_LinkTimedOut
+	jump .Cancel
+
+.DidNotSave:
+	writetext Text_PleaseComeAgain
+.Cancel:
+	special WaitForOtherPlayerToExit
+	closetext
+	end
+
+.MonTooNew:
+	writetext Text_RejectNewMon
+	closetext
+	end
+
+.MonMoveTooNew:
+	writetext Text_RejectMonWithNewMove
+	closetext
+	end
+
+.MonHasMail:
+	writetext Text_RejectMonWithMail
+	closetext
+	end
+
+Script_LeftCableTradeCenter:
+	special WaitForOtherPlayerToExit
+	scall Script_WalkOutOfLinkTradeRoom
+	dotrigger $0
+	domaptrigger TRADE_CENTER, $0
+	end
+
+Script_LeftMobileTradeRoom:
+	special Function101220
+	scall Script_WalkOutOfMobileTradeRoom
+	dotrigger $0
+	domaptrigger MOBILE_TRADE_ROOM_MOBILE, $0
+	end
+
+Script_WalkOutOfMobileTradeRoom:
+	applymovement POKECENTER2F_TRADE_RECEPTIONIST, Pokecenter2FMobileMovementData_ReceptionistWalksUpAndLeft
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerWalksOutOfMobileRoom
+	applymovement POKECENTER2F_TRADE_RECEPTIONIST, Pokecenter2FMobileMovementData_ReceptionistWalksRightAndDown
+	end
+
+Script_LeftCableColosseum:
+	special WaitForOtherPlayerToExit
+	scall Script_WalkOutOfLinkBattleRoom
+	dotrigger $0
+	domaptrigger COLOSSEUM, $0
+	end
+
+Script_LeftMobileBattleRoom:
+	special Function101220
+	scall Script_WalkOutOfMobileBattleRoom
+	dotrigger $0
+	domaptrigger MOBILE_BATTLE_ROOM, $0
+	end
+
+Script_WalkOutOfMobileBattleRoom:
+	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, Pokecenter2FMobileMovementData_ReceptionistWalksUpAndLeft
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerWalksOutOfMobileRoom
+	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, Pokecenter2FMobileMovementData_ReceptionistWalksRightAndDown
+	end
+
+Pokecenter2F_CheckGender:
+	checkflag ENGINE_PLAYER_IS_FEMALE
+	iftrue .Female
+	applymovement2 Pokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesThreeStepsUp
+	end
+
+.Female:
+	applymovement2 Pokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight_2
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesTwoStepsUp
+	opentext
+	writetext Text_OhPleaseWait
+	waitbutton
+	closetext
+	applymovement2 Pokecenter2FMovementData_ReceptionistLooksRight
+	spriteface PLAYER, LEFT
+	opentext
+	writetext Text_ChangeTheLook
+	waitbutton
+	closetext
+	playsound SFX_TINGLE
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
+	writebyte (PAL_NPC_RED << 4)
+	special Special_SetPlayerPalette
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
+	setflag ENGINE_KRIS_IN_CABLE_CLUB
+	special ReplaceKrisSprite
+	opentext
+	writetext Text_LikeTheLook
+	waitbutton
+	closetext
+	showemote EMOTE_SHOCK, PLAYER, 15
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepUp
+	end
+
+Script_WalkOutOfLinkTradeRoom:
+	checkflag ENGINE_KRIS_IN_CABLE_CLUB
+	iftrue .Female
+	applymovement POKECENTER2F_TRADE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightLooksDown_3
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesThreeStepsDown
+	applymovement POKECENTER2F_TRADE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightAndDown
+	end
+
+.Female:
+	applymovement POKECENTER2F_TRADE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightLooksDown_3
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepDown_2
+	clearflag ENGINE_KRIS_IN_CABLE_CLUB
+	playsound SFX_TINGLE
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
+	writebyte (PAL_NPC_BLUE << 4)
+	special Special_SetPlayerPalette
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
+	special ReplaceKrisSprite
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesTwoStepsDown_2
+	applymovement POKECENTER2F_TRADE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightAndDown
+	end
+
+Script_WalkOutOfLinkBattleRoom:
+	checkflag ENGINE_KRIS_IN_CABLE_CLUB
+	iftrue .Female
+	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightLooksDown_3
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesThreeStepsDown
+	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightAndDown
+	end
+
+.Female:
+	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightLooksDown_3
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepDown_2
+	clearflag ENGINE_KRIS_IN_CABLE_CLUB
+	playsound SFX_TINGLE
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
+	writebyte (PAL_NPC_BLUE << 4)
+	special Special_SetPlayerPalette
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
+	special ReplaceKrisSprite
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesTwoStepsDown_2
+	applymovement POKECENTER2F_BATTLE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightAndDown
+	end
+
+TimeCapsuleScript_CheckPlayerGender:
+	checkflag ENGINE_PLAYER_IS_FEMALE
+	iftrue .Female
+	checkcode VAR_FACING
+	if_equal LEFT, .MaleFacingLeft
+	if_equal RIGHT, .MaleFacingRight
+	applymovement2 Pokecenter2FMovementData_ReceptionistStepsLeftLooksDown
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesTwoStepsUp_2
+	end
+
+.MaleFacingLeft:
+	applymovement2 Pokecenter2FMovementData_ReceptionistStepsLeftLooksDown
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerWalksLeftAndUp
+	end
+
+.MaleFacingRight:
+	applymovement2 Pokecenter2FMovementData_ReceptionistStepsRightLooksDown
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerWalksRightAndUp
+	end
+
+.Female:
+	checkcode VAR_FACING
+	if_equal RIGHT, .FemaleFacingRight
+	if_equal LEFT, .FemaleFacingLeft
+	applymovement2 Pokecenter2FMovementData_ReceptionistStepsLeftLooksRight_2
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepUp_2
+	jump .FemaleContinue
+
+.FemaleFacingRight:
+	applymovement2 Pokecenter2FMovementData_ReceptionistStepsRightLooksLeft_2
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepRight
+	jump .FemaleContinue
+
+.FemaleFacingLeft:
+	applymovement2 Pokecenter2FMovementData_ReceptionistStepsLeftLooksRight_2
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepLeft
+.FemaleContinue:
+	opentext
+	writetext Text_OhPleaseWait
+	waitbutton
+	closetext
+	checkcode VAR_FACING
+	if_not_equal UP, .FemaleChangeApperance
+	spriteface PLAYER, LEFT
+.FemaleChangeApperance:
+	opentext
+	writetext Text_ChangeTheLook
+	waitbutton
+	closetext
+	playsound SFX_TINGLE
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
+	writebyte (PAL_NPC_RED << 4)
+	special Special_SetPlayerPalette
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingDown
+	faceperson PLAYER, POKECENTER2F_TIME_CAPSULE_RECEPTIONIST
+	setflag ENGINE_KRIS_IN_CABLE_CLUB
+	special ReplaceKrisSprite
+	opentext
+	writetext Text_LikeTheLook
+	waitbutton
+	closetext
+	showemote EMOTE_SHOCK, PLAYER, 15
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepUp_2
+	end
+
+Script_LeftTimeCapsule:
+	special WaitForOtherPlayerToExit
+	checkflag ENGINE_KRIS_IN_CABLE_CLUB
+	iftrue .Female
+	applymovement POKECENTER2F_TIME_CAPSULE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsLeftLooksRight
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesTwoStepsDown
+	applymovement POKECENTER2F_TIME_CAPSULE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightLooksDown_2
+	jump .Done
+
+.Female:
+	applymovement POKECENTER2F_TIME_CAPSULE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsLeftLooksRight
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepDown
+	clearflag ENGINE_KRIS_IN_CABLE_CLUB
+	playsound SFX_TINGLE
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight
+	writebyte (PAL_NPC_BLUE << 4)
+	special Special_SetPlayerPalette
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft
+	special ReplaceKrisSprite
+	applymovement PLAYER, Pokecenter2FMovementData_PlayerTakesOneStepDown
+	applymovement POKECENTER2F_TIME_CAPSULE_RECEPTIONIST, Pokecenter2FMovementData_ReceptionistStepsRightLooksDown_2
+.Done:
+	dotrigger $0
+	domaptrigger TIME_CAPSULE, $0
+	end
+
+MapPokecenter2FSignpost0Script:
+	refreshscreen $0
+	special Special_DisplayLinkRecord
+	closetext
+	end
+
+OfficerScript_0x192c9a:
+	faceplayer
+	opentext
+	checkevent EVENT_MYSTERY_GIFT_DELIVERY_GUY
+	iftrue .AlreadyGotGift
+	writetext Text_MysteryGiftDeliveryGuy_Intro
+	yesorno
+	iffalse .RefusedGift
+	writetext Text_MysteryGiftDeliveryGuy_HereYouGo
+	buttonsound
+	waitsfx
+	special Special_GetMysteryGiftItem
+	iffalse .BagIsFull
+	itemnotify
+	setevent EVENT_MYSTERY_GIFT_DELIVERY_GUY
+.AlreadyGotGift:
+	writetext Text_MysteryGiftDeliveryGuy_Outro
+	waitbutton
+	closetext
+	end
+
+.BagIsFull:
+	writetext Text_MysteryGiftDeliveryGuy_NoRoom
+	waitbutton
+	closetext
+	end
+
+.RefusedGift:
+	writetext Text_MysteryGiftDeliveryGuy_SaidNo
+	waitbutton
+	closetext
+	end
+
+Pokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight:
+	slow_step UP
+	slow_step LEFT
+	turn_head RIGHT
+	step_end
+
+Pokecenter2FMobileMobileMovementData_ReceptionistWalksUpAndLeft_LookDown:
+	slow_step UP
+	slow_step LEFT
+	turn_head DOWN
+	step_end
+
+Pokecenter2FMovementData_ReceptionistStepsLeftLooksDown:
+	slow_step LEFT
+	turn_head DOWN
+	step_end
+
+Pokecenter2FMovementData_ReceptionistStepsRightLooksDown:
+	slow_step RIGHT
+	turn_head DOWN
+	step_end
+
+Pokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight_2:
+	slow_step UP
+	slow_step LEFT
+	turn_head RIGHT
+	step_end
+
+Pokecenter2FMovementData_ReceptionistLooksRight:
+	turn_head RIGHT
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesThreeStepsUp:
+	step UP
+	step UP
+	step UP
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesTwoStepsUp:
+	step UP
+	step UP
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesOneStepUp:
+	step UP
+	step_end
+
+Pokecenter2FMobileMovementData_PlayerWalksIntoMobileBattleRoom:
+	step UP
+	step UP
+	step RIGHT
+	step UP
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesTwoStepsUp_2:
+	step UP
+	step UP
+	step_end
+
+Pokecenter2FMovementData_PlayerWalksLeftAndUp:
+	step LEFT
+	step UP
+	step_end
+
+Pokecenter2FMovementData_PlayerWalksRightAndUp:
+	step RIGHT
+	step UP
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesThreeStepsDown:
+	step DOWN
+	step DOWN
+	step DOWN
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesTwoStepsDown:
+	step DOWN
+	step DOWN
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesOneStepDown:
+	step DOWN
+	step_end
+
+Pokecenter2FMovementData_ReceptionistStepsRightAndDown:
+	slow_step RIGHT
+	slow_step DOWN
+	step_end
+
+Pokecenter2FMovementData_ReceptionistStepsRightLooksDown_2:
+	slow_step RIGHT
+	turn_head DOWN
+	step_end
+
+Pokecenter2FMovementData_ReceptionistStepsRightLooksDown_3:
+	slow_step UP
+	slow_step LEFT
+	turn_head RIGHT
+	step_end
+
+Pokecenter2FMovementData_ReceptionistStepsLeftLooksRight:
+	slow_step LEFT
+	turn_head RIGHT
+	step_end
+
+Pokecenter2FMobileMovementData_ReceptionistWalksUpAndLeft:
+	slow_step UP
+	slow_step LEFT
+	turn_head RIGHT
+	step_end
+
+Pokecenter2FMovementData_PlayerWalksOutOfMobileRoom:
+	step DOWN
+	step LEFT
+	step DOWN
+	step DOWN
+	step_end
+
+Pokecenter2FMobileMovementData_ReceptionistWalksRightAndDown:
+	slow_step RIGHT
+	slow_step DOWN
+	step_end
+
+Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight:
+	turn_head DOWN
+	turn_head LEFT
+	turn_head UP
+	turn_head RIGHT
+	step_end
+
+Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft:
+	turn_head DOWN
+	turn_head LEFT
+	turn_head UP
+	turn_head RIGHT
+	turn_head LEFT
+	step_end
+
+Pokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingDown:
+	turn_head DOWN
+	turn_head LEFT
+	turn_head UP
+	turn_head RIGHT
+	turn_head DOWN
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesOneStepDown_2:
+	step DOWN
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesTwoStepsDown_2:
+	step DOWN
+	step DOWN
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesOneStepUp_2:
+	step UP
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesOneStepRight:
+	step RIGHT
+	step_end
+
+Pokecenter2FMovementData_PlayerTakesOneStepLeft:
+	step LEFT
+	step_end
+
+Pokecenter2FMovementData_ReceptionistStepsLeftLooksRight_2:
+	slow_step LEFT
+	turn_head RIGHT
+	step_end
+
+Pokecenter2FMovementData_ReceptionistStepsRightLooksLeft_2:
+	slow_step RIGHT
+	turn_head LEFT
+	step_end
+
+Text_BattleReceptionistMobile:
+	text "Would you like to"
+	line "battle over a GAME"
+
+	para "LINK cable or by"
+	line "mobile phone?"
+	done
+
+Text_TradeReceptionistMobile:
+	text "Would you like to"
+	line "trade over a GAME"
+
+	para "LINK cable or by"
+	line "mobile phone?"
+	done
+
+Text_ThisWayToMobileRoom:
+	text "This way to the"
+	line "MOBILE ROOM."
+	done
+
+Text_BattleReceptionistIntro:
+	text "Welcome to CABLE"
+	line "CLUB COLOSSEUM."
+
+	para "You may battle a"
+	line "friend here."
+
+	para "Would you like to"
+	line "battle?"
+	done
+
+Text_TradeReceptionistIntro:
+	text "Welcome to CABLE"
+	line "TRADE CENTER."
+
+	para "You may trade your"
+	line "#MON here with"
+	cont "a friend."
+
+	para "Would you like to"
+	line "trade?"
+	done
+
+Text_TimeCapsuleReceptionistIntro:
+	text "Welcome to CABLE"
+	line "CLUB TIME CAPSULE."
+
+	para "You can travel to"
+	line "the past and trade"
+	cont "your #MON."
+
+	para "Would you like to"
+	line "trade across time?"
+	done
+
+Text_FriendNotReady:
+	text "Your friend is not"
+	line "ready."
+	prompt
+
+Text_MustSaveGame:
+	text "Before opening the"
+	line "link, you must"
+	cont "save your game."
+	done
+
+Text_PleaseWait:
+	text "Please wait."
+	done
+
+Text_LinkTimedOut:
+	text "The link has been"
+	line "closed because of"
+	cont "inactivity."
+
+	para "Please contact"
+	line "your friend and"
+	cont "come again."
+	prompt
+
+Text_PleaseComeAgain:
+	text "Please come again."
+	prompt
+
+Text_PleaseComeIn:
+	text "Please come in."
+	prompt
+
+Text_TemporaryStagingInLinkRoom:
+	text "We'll put you in"
+	line "the link room for"
+	cont "the time being."
+	done
+
+Text_CantLinkToThePast:
+	text "You can't link to"
+	line "the past here."
+	prompt
+
+Text_IncompatibleRooms:
+	text "Incompatible rooms"
+	line "were chosen."
+	prompt
+
+Text_PleaseComeIn2:
+	text "Please come in."
+	done
+
+Text_PleaseEnter:
+	text "Please enter."
+	prompt
+
+Text_RejectNewMon:
+	text "Sorry--@"
+	text_from_ram StringBuffer1
+	text ""
+	line "can't be taken."
+	prompt
+
+Text_RejectMonWithNewMove:
+	text "You can't take the"
+	line "@"
+	text_from_ram StringBuffer1
+	text " with a"
+	cont "@"
+	text_from_ram StringBuffer2
+	text "."
+	prompt
+
+Text_RejectMonWithMail:
+	text "You can't take the"
+	line "@"
+	text_from_ram StringBuffer1
+	text " that"
+	cont "has MAIL with you."
+	prompt
+
+Text_TimeCapsuleClosed:
+	text "I'm sorry--the"
+	line "TIME CAPSULE is"
+	cont "being adjusted."
+	done
+
+Text_TradeRoomClosed:
+	text "I'm sorry--the"
+	line "TRADE MACHINE is"
+	cont "being adjusted."
+	done
+
+Text_BattleRoomClosed:
+	text "I'm sorry--the"
+	line "BATTLE MACHINE is"
+	cont "being adjusted."
+	done
+
+Text_MysteryGiftDeliveryGuy_Intro:
+	text "Hello! You're"
+	line "<PLAYER>, right?"
+
+	para "I have some-"
+	line "thing for you."
+	done
+
+Text_MysteryGiftDeliveryGuy_HereYouGo:
+	text "Here you go!"
+	done
+
+Text_MysteryGiftDeliveryGuy_Outro:
+	text "We hope to serve"
+	line "you again."
+	done
+
+Text_MysteryGiftDeliveryGuy_NoRoom:
+	text "Oh, you have no"
+	line "space for this."
+
+	para "Stop in at any"
+	line "#MON CENTER"
+
+	para "across the country"
+	line "to pick it up."
+	done
+
+Text_MysteryGiftDeliveryGuy_SaidNo:
+	text "No? That's very"
+	line "strange…"
+	done
+
+Text_OhPleaseWait:
+	text "Oh, please wait."
+	done
+
+Text_ChangeTheLook:
+	text "We need to change"
+	line "the look here…"
+	done
+
+Text_LikeTheLook:
+	text "How does this"
+	line "style look to you?"
+	done
+
+Text_BrokeStadiumRules:
+	text "Excuse me!"
+
+	para "For STADIUM rules,"
+	line "please bring six"
+
+	para "different #MON,"
+	line "excluding EGGS."
+
+	para "The six #MON"
+	line "must be different."
+
+	para "Also, they must"
+	line "not be holding"
+	cont "identical items."
+
+	para "Please come back"
+	line "when you're ready."
+	done
+
+Pokecenter2F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 6
+	warp_def $7, $0, -1, POKECENTER_2F
+	warp_def $0, $5, 1, TRADE_CENTER
+	warp_def $0, $9, 1, COLOSSEUM
+	warp_def $2, $d, 1, TIME_CAPSULE
+	warp_def $0, $6, 1, MOBILE_TRADE_ROOM_MOBILE
+	warp_def $0, $a, 1, MOBILE_BATTLE_ROOM
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 1
+	signpost 3, 7, SIGNPOST_READ, MapPokecenter2FSignpost0Script
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_LINK_RECEPTIONIST, 2, 5, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, LinkReceptionistScript_Trade, -1
+	person_event SPRITE_LINK_RECEPTIONIST, 2, 9, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, LinkReceptionistScript_Battle, -1
+	person_event SPRITE_LINK_RECEPTIONIST, 3, 13, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, LinkReceptionistScript_TimeCapsule, -1
+	person_event SPRITE_OFFICER, 1, 1, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, OfficerScript_0x192c9a, EVENT_MYSTERY_GIFT_DELIVERY_GUY
--- /dev/null
+++ b/maps/Pokecenter2F.blk
@@ -1,0 +1,2 @@
+1+
+28(8-)-)
\ No newline at end of file
--- a/maps/Route10North.asm
+++ b/maps/Route10North.asm
@@ -8,7 +8,7 @@
 PowerPlantSign:
 	jumptext PowerPlantSignText
 
-Route10PokeCenterSign:
+Route10PokecenterSign:
 	jumpstd pokecentersign
 
 PowerPlantSignText:
@@ -30,7 +30,7 @@
 .Signposts:
 	db 2
 	signpost 11, 5, SIGNPOST_READ, PowerPlantSign
-	signpost 1, 12, SIGNPOST_READ, Route10PokeCenterSign
+	signpost 1, 12, SIGNPOST_READ, Route10PokecenterSign
 
 .PersonEvents:
 	db 0
--- a/maps/Route10PokeCenter1F.asm
+++ /dev/null
@@ -1,104 +1,0 @@
-const_value set 2
-	const ROUTE10POKECENTER1F_NURSE
-	const ROUTE10POKECENTER1F_GENTLEMAN
-	const ROUTE10POKECENTER1F_GYM_GUY
-	const ROUTE10POKECENTER1F_COOLTRAINER_F
-
-Route10PokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x188bd4:
-	jumpstd pokecenternurse
-
-GentlemanScript_0x188bd7:
-	jumptextfaceplayer UnknownText_0x188bf1
-
-GymGuyScript_0x188bda:
-	faceplayer
-	opentext
-	checkevent EVENT_RETURNED_MACHINE_PART
-	iftrue UnknownScript_0x188be8
-	writetext UnknownText_0x188c26
-	waitbutton
-	closetext
-	end
-
-UnknownScript_0x188be8:
-	writetext UnknownText_0x188c9e
-	waitbutton
-	closetext
-	end
-
-CooltrainerFScript_0x188bee:
-	jumptextfaceplayer UnknownText_0x188d0c
-
-UnknownText_0x188bf1:
-	text "A #MON CENTER"
-	line "near a cave?"
-
-	para "That's mighty"
-	line "convenient."
-	done
-
-UnknownText_0x188c26:
-	text "The POWER PLANT's"
-	line "MANAGER is looking"
-
-	para "for a strong #-"
-	line "MON trainer."
-
-	para "He needs help"
-	line "getting back"
-
-	para "something that"
-	line "was stolen."
-	done
-
-UnknownText_0x188c9e:
-	text "I hear TEAM ROCKET"
-	line "got back together"
-
-	para "in JOHTO but fell"
-	line "apart right away."
-
-	para "I didn't know any-"
-	line "thing about that."
-	done
-
-UnknownText_0x188d0c:
-	text "When you go out-"
-	line "side, you can see"
-
-	para "the roof of a big"
-	line "building."
-
-	para "That's the POWER"
-	line "PLANT."
-	done
-
-Route10PokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 1, ROUTE_10_NORTH
-	warp_def $7, $4, 1, ROUTE_10_NORTH
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x188bd4, -1
-	person_event SPRITE_GENTLEMAN, 6, 7, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x188bd7, -1
-	person_event SPRITE_GYM_GUY, 2, 7, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, GymGuyScript_0x188bda, -1
-	person_event SPRITE_COOLTRAINER_F, 3, 1, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x188bee, -1
--- a/maps/Route10PokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-Route10PokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-Route10PokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 3, ROUTE_10_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/Route10Pokecenter1F.asm
@@ -1,0 +1,104 @@
+const_value set 2
+	const ROUTE10POKECENTER1F_NURSE
+	const ROUTE10POKECENTER1F_GENTLEMAN
+	const ROUTE10POKECENTER1F_GYM_GUY
+	const ROUTE10POKECENTER1F_COOLTRAINER_F
+
+Route10Pokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x188bd4:
+	jumpstd pokecenternurse
+
+GentlemanScript_0x188bd7:
+	jumptextfaceplayer UnknownText_0x188bf1
+
+GymGuyScript_0x188bda:
+	faceplayer
+	opentext
+	checkevent EVENT_RETURNED_MACHINE_PART
+	iftrue UnknownScript_0x188be8
+	writetext UnknownText_0x188c26
+	waitbutton
+	closetext
+	end
+
+UnknownScript_0x188be8:
+	writetext UnknownText_0x188c9e
+	waitbutton
+	closetext
+	end
+
+CooltrainerFScript_0x188bee:
+	jumptextfaceplayer UnknownText_0x188d0c
+
+UnknownText_0x188bf1:
+	text "A #MON CENTER"
+	line "near a cave?"
+
+	para "That's mighty"
+	line "convenient."
+	done
+
+UnknownText_0x188c26:
+	text "The POWER PLANT's"
+	line "MANAGER is looking"
+
+	para "for a strong #-"
+	line "MON trainer."
+
+	para "He needs help"
+	line "getting back"
+
+	para "something that"
+	line "was stolen."
+	done
+
+UnknownText_0x188c9e:
+	text "I hear TEAM ROCKET"
+	line "got back together"
+
+	para "in JOHTO but fell"
+	line "apart right away."
+
+	para "I didn't know any-"
+	line "thing about that."
+	done
+
+UnknownText_0x188d0c:
+	text "When you go out-"
+	line "side, you can see"
+
+	para "the roof of a big"
+	line "building."
+
+	para "That's the POWER"
+	line "PLANT."
+	done
+
+Route10Pokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 1, ROUTE_10_NORTH
+	warp_def $7, $4, 1, ROUTE_10_NORTH
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x188bd4, -1
+	person_event SPRITE_GENTLEMAN, 6, 7, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x188bd7, -1
+	person_event SPRITE_GYM_GUY, 2, 7, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, GymGuyScript_0x188bda, -1
+	person_event SPRITE_COOLTRAINER_F, 3, 1, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x188bee, -1
--- /dev/null
+++ b/maps/Route10Pokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+Route10Pokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+Route10Pokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 3, ROUTE_10_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/Route32.asm
+++ b/maps/Route32.asm
@@ -502,7 +502,7 @@
 Route32UnionCaveSign:
 	jumptext Route32UnionCaveSignText
 
-Route32PokeCenterSign:
+Route32PokecenterSign:
 	jumpstd pokecentersign
 
 Route32HiddenGreatBall:
@@ -951,7 +951,7 @@
 	signpost  5, 13, SIGNPOST_READ, Route32Sign
 	signpost  1,  9, SIGNPOST_READ, Route32RuinsSign
 	signpost 84, 10, SIGNPOST_READ, Route32UnionCaveSign
-	signpost 73, 12, SIGNPOST_READ, Route32PokeCenterSign
+	signpost 73, 12, SIGNPOST_READ, Route32PokecenterSign
 	signpost 67, 12, SIGNPOST_ITEM, Route32HiddenGreatBall
 	signpost 40, 11, SIGNPOST_ITEM, Route32HiddenSuperPotion
 
--- a/maps/Route32PokeCenter1F.asm
+++ /dev/null
@@ -1,117 +1,0 @@
-const_value set 2
-	const ROUTE32POKECENTER1F_NURSE
-	const ROUTE32POKECENTER1F_FISHING_GURU
-	const ROUTE32POKECENTER1F_COOLTRAINER_F
-
-Route32PokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x69b52:
-	jumpstd pokecenternurse
-
-FishingGuruScript_0x69b55:
-	faceplayer
-	opentext
-	checkevent EVENT_GOT_OLD_ROD
-	iftrue UnknownScript_0x69b7a
-	writetext UnknownText_0x69b83
-	yesorno
-	iffalse UnknownScript_0x69b74
-	writetext UnknownText_0x69be8
-	buttonsound
-	verbosegiveitem OLD_ROD
-	writetext UnknownText_0x69c1b
-	waitbutton
-	closetext
-	setevent EVENT_GOT_OLD_ROD
-	end
-
-UnknownScript_0x69b74:
-	writetext UnknownText_0x69c6c
-	waitbutton
-	closetext
-	end
-
-UnknownScript_0x69b7a:
-	writetext UnknownText_0x69c8d
-	waitbutton
-	closetext
-	end
-
-CooltrainerFScript_0x69b80:
-	jumptextfaceplayer UnknownText_0x69cac
-
-UnknownText_0x69b83:
-	text "This is a great"
-	line "fishing spot."
-
-	para "You saw people"
-	line "fishing? How"
-	cont "about you?"
-
-	para "Would you like one"
-	line "of my RODS?"
-	done
-
-UnknownText_0x69be8:
-	text "Heh, that's good"
-	line "to hear."
-
-	para "Now you're an"
-	line "angler too!"
-	done
-
-UnknownText_0x69c1b:
-	text "Fishing is great!"
-
-	para "If there's water,"
-	line "be it the sea or a"
-
-	para "stream, try out"
-	line "your ROD."
-	done
-
-UnknownText_0x69c6c:
-	text "Oh. That's rather"
-	line "disappointing…"
-	done
-
-UnknownText_0x69c8d:
-	text "Yo, kid. How are"
-	line "they biting?"
-	done
-
-UnknownText_0x69cac:
-	text "What should I make"
-	line "my #MON hold?"
-
-	para "Maybe an item that"
-	line "increases ATTACK"
-	cont "power…"
-	done
-
-Route32PokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 1, ROUTE_32
-	warp_def $7, $4, 1, ROUTE_32
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 3
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x69b52, -1
-	person_event SPRITE_FISHING_GURU, 4, 1, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, FishingGuruScript_0x69b55, -1
-	person_event SPRITE_COOLTRAINER_F, 2, 6, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x69b80, -1
--- /dev/null
+++ b/maps/Route32Pokecenter1F.asm
@@ -1,0 +1,117 @@
+const_value set 2
+	const ROUTE32POKECENTER1F_NURSE
+	const ROUTE32POKECENTER1F_FISHING_GURU
+	const ROUTE32POKECENTER1F_COOLTRAINER_F
+
+Route32Pokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x69b52:
+	jumpstd pokecenternurse
+
+FishingGuruScript_0x69b55:
+	faceplayer
+	opentext
+	checkevent EVENT_GOT_OLD_ROD
+	iftrue UnknownScript_0x69b7a
+	writetext UnknownText_0x69b83
+	yesorno
+	iffalse UnknownScript_0x69b74
+	writetext UnknownText_0x69be8
+	buttonsound
+	verbosegiveitem OLD_ROD
+	writetext UnknownText_0x69c1b
+	waitbutton
+	closetext
+	setevent EVENT_GOT_OLD_ROD
+	end
+
+UnknownScript_0x69b74:
+	writetext UnknownText_0x69c6c
+	waitbutton
+	closetext
+	end
+
+UnknownScript_0x69b7a:
+	writetext UnknownText_0x69c8d
+	waitbutton
+	closetext
+	end
+
+CooltrainerFScript_0x69b80:
+	jumptextfaceplayer UnknownText_0x69cac
+
+UnknownText_0x69b83:
+	text "This is a great"
+	line "fishing spot."
+
+	para "You saw people"
+	line "fishing? How"
+	cont "about you?"
+
+	para "Would you like one"
+	line "of my RODS?"
+	done
+
+UnknownText_0x69be8:
+	text "Heh, that's good"
+	line "to hear."
+
+	para "Now you're an"
+	line "angler too!"
+	done
+
+UnknownText_0x69c1b:
+	text "Fishing is great!"
+
+	para "If there's water,"
+	line "be it the sea or a"
+
+	para "stream, try out"
+	line "your ROD."
+	done
+
+UnknownText_0x69c6c:
+	text "Oh. That's rather"
+	line "disappointing…"
+	done
+
+UnknownText_0x69c8d:
+	text "Yo, kid. How are"
+	line "they biting?"
+	done
+
+UnknownText_0x69cac:
+	text "What should I make"
+	line "my #MON hold?"
+
+	para "Maybe an item that"
+	line "increases ATTACK"
+	cont "power…"
+	done
+
+Route32Pokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 1, ROUTE_32
+	warp_def $7, $4, 1, ROUTE_32
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 3
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x69b52, -1
+	person_event SPRITE_FISHING_GURU, 4, 1, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, FishingGuruScript_0x69b55, -1
+	person_event SPRITE_COOLTRAINER_F, 2, 6, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x69b80, -1
--- a/maps/SaffronCity.asm
+++ b/maps/SaffronCity.asm
@@ -101,7 +101,7 @@
 SaffronCityMagnetTrainStationSign:
 	jumptext SaffronCityMagnetTrainStationSignText
 
-SaffronCityPokeCenterSign:
+SaffronCityPokecenterSign:
 	jumpstd pokecentersign
 
 SaffronCityMartSign:
@@ -298,7 +298,7 @@
 	signpost 21, 15, SIGNPOST_READ, SilphCoSign
 	signpost 29, 25, SIGNPOST_READ, MrPsychicsHouseSign
 	signpost 5, 11, SIGNPOST_READ, SaffronCityMagnetTrainStationSign
-	signpost 29, 10, SIGNPOST_READ, SaffronCityPokeCenterSign
+	signpost 29, 10, SIGNPOST_READ, SaffronCityPokecenterSign
 	signpost 11, 26, SIGNPOST_READ, SaffronCityMartSign
 
 .PersonEvents:
--- a/maps/SaffronPokeCenter1F.asm
+++ /dev/null
@@ -1,135 +1,0 @@
-const_value set 2
-	const SAFFRONPOKECENTER1F_NURSE
-	const SAFFRONPOKECENTER1F_TEACHER
-	const SAFFRONPOKECENTER1F_FISHER
-	const SAFFRONPOKECENTER1F_YOUNGSTER
-
-SaffronPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x18a47d:
-	jumpstd pokecenternurse
-
-TeacherScript_0x18a480:
-	special Mobile_DummyReturnFalse
-	iftrue .mobile
-	jumptextfaceplayer UnknownText_0x18a4a3
-
-.mobile
-	jumptextfaceplayer UnknownText_0x18a532
-
-FisherScript_0x18a48c:
-	faceplayer
-	opentext
-	checkevent EVENT_RETURNED_MACHINE_PART
-	iftrue .SolvedKantoPowerCrisis
-	writetext UnknownText_0x18a5d3
-	waitbutton
-	closetext
-	end
-
-.SolvedKantoPowerCrisis:
-	writetext UnknownText_0x18a62e
-	waitbutton
-	closetext
-	end
-
-YoungsterScript_0x18a4a0:
-	jumptextfaceplayer UnknownText_0x18a6c5
-
-UnknownText_0x18a4a3:
-	text "What are JOHTO's"
-	line "#MON CENTERS"
-	cont "like?"
-
-	para "…Oh, I see. So"
-	line "they're not much"
-
-	para "different from the"
-	line "ones in KANTO."
-
-	para "I can go to JOHTO"
-	line "without worrying,"
-	cont "then!"
-	done
-
-UnknownText_0x18a532:
-	text "What are JOHTO's"
-	line "#MON CENTERS"
-	cont "like?"
-
-	para "…Oh, I see."
-	line "So they let you"
-
-	para "link with people"
-	line "far away?"
-
-	para "Then I'll get my"
-	line "friend in JOHTO to"
-
-	para "catch a MARILL and"
-	line "trade it to me!"
-	done
-
-UnknownText_0x18a5d3:
-	text "I just happened to"
-	line "come through ROCK"
-
-	para "TUNNEL. There was"
-	line "some commotion at"
-	cont "the POWER PLANT."
-	done
-
-UnknownText_0x18a62e:
-	text "Caves collapse"
-	line "easily."
-
-	para "Several caves have"
-	line "disappeared in the"
-
-	para "past few years,"
-	line "like the one out-"
-	cont "side CERULEAN."
-
-	para "As a pro HIKER,"
-	line "that's common"
-	cont "knowledge."
-	done
-
-UnknownText_0x18a6c5:
-	text "SILPH CO.'s HEAD"
-	line "OFFICE and the"
-
-	para "MAGNET TRAIN STA-"
-	line "TION--they're the"
-
-	para "places to see in"
-	line "SAFFRON."
-	done
-
-SaffronPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 4, SAFFRON_CITY
-	warp_def $7, $4, 4, SAFFRON_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x18a47d, -1
-	person_event SPRITE_TEACHER, 2, 7, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TeacherScript_0x18a480, -1
-	person_event SPRITE_FISHER, 6, 8, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, FisherScript_0x18a48c, -1
-	person_event SPRITE_YOUNGSTER, 4, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, YoungsterScript_0x18a4a0, -1
--- a/maps/SaffronPokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-SaffronPokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-SaffronPokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 3, SAFFRON_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/SaffronPokecenter1F.asm
@@ -1,0 +1,135 @@
+const_value set 2
+	const SAFFRONPOKECENTER1F_NURSE
+	const SAFFRONPOKECENTER1F_TEACHER
+	const SAFFRONPOKECENTER1F_FISHER
+	const SAFFRONPOKECENTER1F_YOUNGSTER
+
+SaffronPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x18a47d:
+	jumpstd pokecenternurse
+
+TeacherScript_0x18a480:
+	special Mobile_DummyReturnFalse
+	iftrue .mobile
+	jumptextfaceplayer UnknownText_0x18a4a3
+
+.mobile
+	jumptextfaceplayer UnknownText_0x18a532
+
+FisherScript_0x18a48c:
+	faceplayer
+	opentext
+	checkevent EVENT_RETURNED_MACHINE_PART
+	iftrue .SolvedKantoPowerCrisis
+	writetext UnknownText_0x18a5d3
+	waitbutton
+	closetext
+	end
+
+.SolvedKantoPowerCrisis:
+	writetext UnknownText_0x18a62e
+	waitbutton
+	closetext
+	end
+
+YoungsterScript_0x18a4a0:
+	jumptextfaceplayer UnknownText_0x18a6c5
+
+UnknownText_0x18a4a3:
+	text "What are JOHTO's"
+	line "#MON CENTERS"
+	cont "like?"
+
+	para "…Oh, I see. So"
+	line "they're not much"
+
+	para "different from the"
+	line "ones in KANTO."
+
+	para "I can go to JOHTO"
+	line "without worrying,"
+	cont "then!"
+	done
+
+UnknownText_0x18a532:
+	text "What are JOHTO's"
+	line "#MON CENTERS"
+	cont "like?"
+
+	para "…Oh, I see."
+	line "So they let you"
+
+	para "link with people"
+	line "far away?"
+
+	para "Then I'll get my"
+	line "friend in JOHTO to"
+
+	para "catch a MARILL and"
+	line "trade it to me!"
+	done
+
+UnknownText_0x18a5d3:
+	text "I just happened to"
+	line "come through ROCK"
+
+	para "TUNNEL. There was"
+	line "some commotion at"
+	cont "the POWER PLANT."
+	done
+
+UnknownText_0x18a62e:
+	text "Caves collapse"
+	line "easily."
+
+	para "Several caves have"
+	line "disappeared in the"
+
+	para "past few years,"
+	line "like the one out-"
+	cont "side CERULEAN."
+
+	para "As a pro HIKER,"
+	line "that's common"
+	cont "knowledge."
+	done
+
+UnknownText_0x18a6c5:
+	text "SILPH CO.'s HEAD"
+	line "OFFICE and the"
+
+	para "MAGNET TRAIN STA-"
+	line "TION--they're the"
+
+	para "places to see in"
+	line "SAFFRON."
+	done
+
+SaffronPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 4, SAFFRON_CITY
+	warp_def $7, $4, 4, SAFFRON_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x18a47d, -1
+	person_event SPRITE_TEACHER, 2, 7, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, TeacherScript_0x18a480, -1
+	person_event SPRITE_FISHER, 6, 8, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, FisherScript_0x18a48c, -1
+	person_event SPRITE_YOUNGSTER, 4, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, YoungsterScript_0x18a4a0, -1
--- /dev/null
+++ b/maps/SaffronPokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+SaffronPokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+SaffronPokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 3, SAFFRON_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/SilverCaveOutside.asm
+++ b/maps/SilverCaveOutside.asm
@@ -10,7 +10,7 @@
 	setflag ENGINE_FLYPOINT_SILVER_CAVE
 	return
 
-MtSilverPokeCenterSign:
+MtSilverPokecenterSign:
 	jumpstd pokecentersign
 
 MtSilverSign:
@@ -37,7 +37,7 @@
 
 .Signposts:
 	db 3
-	signpost 19, 24, SIGNPOST_READ, MtSilverPokeCenterSign
+	signpost 19, 24, SIGNPOST_READ, MtSilverPokecenterSign
 	signpost 13, 17, SIGNPOST_READ, MtSilverSign
 	signpost 25, 9, SIGNPOST_ITEM, SilverCaveOutsideHiddenFullRestore
 
--- a/maps/SilverCavePokeCenter1F.asm
+++ /dev/null
@@ -1,51 +1,0 @@
-const_value set 2
-	const SILVERCAVEPOKECENTER1F_NURSE
-	const SILVERCAVEPOKECENTER1F_GRANNY
-
-SilverCavePokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x1ae59a:
-	jumpstd pokecenternurse
-
-GrannyScript_0x1ae59d:
-	jumptextfaceplayer UnknownText_0x1ae5a0
-
-UnknownText_0x1ae5a0:
-	text "Trainers who seek"
-	line "power climb MT."
-
-	para "SILVER despite its"
-	line "many dangers…"
-
-	para "With their trusted"
-	line "#MON, they must"
-
-	para "feel they can go"
-	line "anywhere…"
-	done
-
-SilverCavePokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 1, SILVER_CAVE_OUTSIDE
-	warp_def $7, $4, 1, SILVER_CAVE_OUTSIDE
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 2
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x1ae59a, -1
-	person_event SPRITE_GRANNY, 5, 1, SPRITEMOVEDATA_STANDING_LEFT, 1, 2, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GrannyScript_0x1ae59d, -1
--- /dev/null
+++ b/maps/SilverCavePokecenter1F.asm
@@ -1,0 +1,51 @@
+const_value set 2
+	const SILVERCAVEPOKECENTER1F_NURSE
+	const SILVERCAVEPOKECENTER1F_GRANNY
+
+SilverCavePokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x1ae59a:
+	jumpstd pokecenternurse
+
+GrannyScript_0x1ae59d:
+	jumptextfaceplayer UnknownText_0x1ae5a0
+
+UnknownText_0x1ae5a0:
+	text "Trainers who seek"
+	line "power climb MT."
+
+	para "SILVER despite its"
+	line "many dangers…"
+
+	para "With their trusted"
+	line "#MON, they must"
+
+	para "feel they can go"
+	line "anywhere…"
+	done
+
+SilverCavePokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 1, SILVER_CAVE_OUTSIDE
+	warp_def $7, $4, 1, SILVER_CAVE_OUTSIDE
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 2
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x1ae59a, -1
+	person_event SPRITE_GRANNY, 5, 1, SPRITEMOVEDATA_STANDING_LEFT, 1, 2, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GrannyScript_0x1ae59d, -1
--- a/maps/TimeCapsule.asm
+++ b/maps/TimeCapsule.asm
@@ -13,7 +13,7 @@
 	dbw MAPCALLBACK_OBJECTS, .SetWhichChris
 
 .InitializeTimeCapsule:
-	priorityjump .InitializeAndPreparePokeCenter2F
+	priorityjump .InitializeAndPreparePokecenter2F
 	end
 
 .DummyTrigger:
@@ -31,7 +31,7 @@
 	appear TIMECAPSULE_CHRIS2
 	return
 
-.InitializeAndPreparePokeCenter2F:
+.InitializeAndPreparePokecenter2F:
 	dotrigger $1
 	domaptrigger POKECENTER_2F, $3
 	end
--- a/maps/TradeCenter.asm
+++ b/maps/TradeCenter.asm
@@ -13,7 +13,7 @@
 	dbw MAPCALLBACK_OBJECTS, .SetWhichChris
 
 .InitializeTradeCenter:
-	priorityjump .InitializeAndPreparePokeCenter2F
+	priorityjump .InitializeAndPreparePokecenter2F
 	end
 
 .DummyTrigger:
@@ -31,7 +31,7 @@
 	appear TRADECENTER_CHRIS2
 	return
 
-.InitializeAndPreparePokeCenter2F:
+.InitializeAndPreparePokecenter2F:
 	dotrigger $1
 	domaptrigger POKECENTER_2F, $1
 	end
--- a/maps/VermilionCity.asm
+++ b/maps/VermilionCity.asm
@@ -116,7 +116,7 @@
 VermilionCityPortSign:
 	jumptext VermilionCityPortSignText
 
-VermilionCityPokeCenterSign:
+VermilionCityPokecenterSign:
 	jumpstd pokecentersign
 
 VermilionCityMartSign:
@@ -294,7 +294,7 @@
 	signpost 13, 5, SIGNPOST_READ, PokemonFanClubSign
 	signpost 9, 33, SIGNPOST_READ, VermilionCityDiglettsCaveSign
 	signpost 15, 27, SIGNPOST_READ, VermilionCityPortSign
-	signpost 5, 10, SIGNPOST_READ, VermilionCityPokeCenterSign
+	signpost 5, 10, SIGNPOST_READ, VermilionCityPokecenterSign
 	signpost 13, 22, SIGNPOST_READ, VermilionCityMartSign
 	signpost 19, 12, SIGNPOST_ITEM, VermilionCityHiddenFullHeal
 
--- a/maps/VermilionPokeCenter1F.asm
+++ /dev/null
@@ -1,100 +1,0 @@
-const_value set 2
-	const VERMILIONPOKECENTER1F_NURSE
-	const VERMILIONPOKECENTER1F_FISHING_GURU
-	const VERMILIONPOKECENTER1F_SAILOR
-	const VERMILIONPOKECENTER1F_BUG_CATCHER
-
-VermilionPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x191603:
-	jumpstd pokecenternurse
-
-FishingGuruScript_0x191606:
-	faceplayer
-	opentext
-	checkevent EVENT_FOUGHT_SNORLAX
-	iftrue UnknownScript_0x191614
-	writetext UnknownText_0x191620
-	waitbutton
-	closetext
-	end
-
-UnknownScript_0x191614:
-	writetext UnknownText_0x191698
-	waitbutton
-	closetext
-	end
-
-SailorScript_0x19161a:
-	jumptextfaceplayer UnknownText_0x1916fe
-
-BugCatcherScript_0x19161d:
-	jumptextfaceplayer UnknownText_0x19173b
-
-UnknownText_0x191620:
-	text "A sleeping #MON"
-	line "is lying in front"
-	cont "of DIGLETT'S CAVE."
-
-	para "It's a fantastic"
-	line "opportunity to get"
-
-	para "it, but how do you"
-	line "wake it up?"
-	done
-
-UnknownText_0x191698:
-	text "There used to be a"
-	line "sleeping #MON"
-
-	para "lying in front of"
-	line "DIGLETT'S CAVE."
-
-	para "But it seems to"
-	line "have disappeared."
-	done
-
-UnknownText_0x1916fe:
-	text "The FAST SHIP is a"
-	line "great place to"
-
-	para "meet and battle"
-	line "trainers."
-	done
-
-UnknownText_0x19173b:
-	text "Oh? You have some"
-	line "BADGES I've never"
-	cont "seen before."
-
-	para "Oh, I get it. You"
-	line "got them in JOHTO."
-	done
-
-VermilionPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 2, VERMILION_CITY
-	warp_def $7, $4, 2, VERMILION_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x191603, -1
-	person_event SPRITE_FISHING_GURU, 2, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, FishingGuruScript_0x191606, -1
-	person_event SPRITE_SAILOR, 5, 6, SPRITEMOVEDATA_WALK_UP_DOWN, 1, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, SailorScript_0x19161a, -1
-	person_event SPRITE_BUG_CATCHER, 5, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, BugCatcherScript_0x19161d, -1
--- a/maps/VermilionPokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-VermilionPokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-VermilionPokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 3, VERMILION_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/VermilionPokecenter1F.asm
@@ -1,0 +1,100 @@
+const_value set 2
+	const VERMILIONPOKECENTER1F_NURSE
+	const VERMILIONPOKECENTER1F_FISHING_GURU
+	const VERMILIONPOKECENTER1F_SAILOR
+	const VERMILIONPOKECENTER1F_BUG_CATCHER
+
+VermilionPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x191603:
+	jumpstd pokecenternurse
+
+FishingGuruScript_0x191606:
+	faceplayer
+	opentext
+	checkevent EVENT_FOUGHT_SNORLAX
+	iftrue UnknownScript_0x191614
+	writetext UnknownText_0x191620
+	waitbutton
+	closetext
+	end
+
+UnknownScript_0x191614:
+	writetext UnknownText_0x191698
+	waitbutton
+	closetext
+	end
+
+SailorScript_0x19161a:
+	jumptextfaceplayer UnknownText_0x1916fe
+
+BugCatcherScript_0x19161d:
+	jumptextfaceplayer UnknownText_0x19173b
+
+UnknownText_0x191620:
+	text "A sleeping #MON"
+	line "is lying in front"
+	cont "of DIGLETT'S CAVE."
+
+	para "It's a fantastic"
+	line "opportunity to get"
+
+	para "it, but how do you"
+	line "wake it up?"
+	done
+
+UnknownText_0x191698:
+	text "There used to be a"
+	line "sleeping #MON"
+
+	para "lying in front of"
+	line "DIGLETT'S CAVE."
+
+	para "But it seems to"
+	line "have disappeared."
+	done
+
+UnknownText_0x1916fe:
+	text "The FAST SHIP is a"
+	line "great place to"
+
+	para "meet and battle"
+	line "trainers."
+	done
+
+UnknownText_0x19173b:
+	text "Oh? You have some"
+	line "BADGES I've never"
+	cont "seen before."
+
+	para "Oh, I get it. You"
+	line "got them in JOHTO."
+	done
+
+VermilionPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 2, VERMILION_CITY
+	warp_def $7, $4, 2, VERMILION_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x191603, -1
+	person_event SPRITE_FISHING_GURU, 2, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, FishingGuruScript_0x191606, -1
+	person_event SPRITE_SAILOR, 5, 6, SPRITEMOVEDATA_WALK_UP_DOWN, 1, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, SailorScript_0x19161a, -1
+	person_event SPRITE_BUG_CATCHER, 5, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, BugCatcherScript_0x19161d, -1
--- /dev/null
+++ b/maps/VermilionPokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+VermilionPokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+VermilionPokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 3, VERMILION_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/VioletCity.asm
+++ b/maps/VioletCity.asm
@@ -82,7 +82,7 @@
 EarlsPokemonAcademySign:
 	jumptext EarlsPokemonAcademySignText
 
-VioletCityPokeCenterSign:
+VioletCityPokecenterSign:
 	jumpstd pokecentersign
 
 VioletCityMartSign:
@@ -303,7 +303,7 @@
 	signpost 17, 15, SIGNPOST_READ, VioletGymSign
 	signpost  8, 24, SIGNPOST_READ, SproutTowerSign
 	signpost 17, 27, SIGNPOST_READ, EarlsPokemonAcademySign
-	signpost 25, 32, SIGNPOST_READ, VioletCityPokeCenterSign
+	signpost 25, 32, SIGNPOST_READ, VioletCityPokecenterSign
 	signpost 17, 10, SIGNPOST_READ, VioletCityMartSign
 	signpost 14, 37, SIGNPOST_ITEM, VioletCityHiddenHyperPotion
 
--- a/maps/VioletPokeCenter1F.asm
+++ /dev/null
@@ -1,240 +1,0 @@
-const_value set 2
-	const VIOLETPOKECENTER1F_NURSE
-	const VIOLETPOKECENTER1F_GAMEBOY_KID
-	const VIOLETPOKECENTER1F_GENTLEMAN
-	const VIOLETPOKECENTER1F_YOUNGSTER
-	const VIOLETPOKECENTER1F_SCIENTIST
-
-VioletPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-VioletPokeCenterNurse:
-	jumpstd pokecenternurse
-
-VioletPokeCenter1F_ElmsAideScript:
-	faceplayer
-	opentext
-	checkevent EVENT_REFUSED_TO_TAKE_EGG_FROM_ELMS_AIDE
-	iftrue .SecondTimeAsking
-	writetext UnknownText_0x69555
-.AskTakeEgg:
-	yesorno
-	iffalse .RefusedEgg
-	checkcode VAR_PARTYCOUNT
-	if_equal PARTY_LENGTH, .PartyFull
-	giveegg TOGEPI, 5
-	stringtotext .eggname, $1
-	scall .AideGivesEgg
-	setevent EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE
-	clearevent EVENT_ELMS_AIDE_IN_LAB
-	clearevent EVENT_TOGEPI_HATCHED
-	domaptrigger ROUTE_32, $1
-	writetext UnknownText_0x695c5
-	waitbutton
-	closetext
-	checkcode VAR_FACING
-	if_equal UP, .AideWalksAroundPlayer
-	spriteface PLAYER, DOWN
-	applymovement VIOLETPOKECENTER1F_SCIENTIST, MovementData_AideWalksStraightOutOfPokecenter
-	playsound SFX_EXIT_BUILDING
-	disappear VIOLETPOKECENTER1F_SCIENTIST
-	waitsfx
-	end
-
-.AideWalksAroundPlayer:
-	applymovement VIOLETPOKECENTER1F_SCIENTIST, MovementData_AideWalksLeftToExitPokecenter
-	spriteface PLAYER, DOWN
-	applymovement VIOLETPOKECENTER1F_SCIENTIST, MovementData_AideFinishesLeavingPokecenter
-	playsound SFX_EXIT_BUILDING
-	disappear VIOLETPOKECENTER1F_SCIENTIST
-	waitsfx
-	end
-
-.eggname
-	db "EGG@"
-
-.AideGivesEgg:
-	jumpstd receivetogepiegg
-	end
-
-.PartyFull:
-	writetext UnknownText_0x69693
-	waitbutton
-	closetext
-	end
-
-.RefusedEgg:
-	writetext UnknownText_0x696f2
-	waitbutton
-	closetext
-	setevent EVENT_REFUSED_TO_TAKE_EGG_FROM_ELMS_AIDE
-	end
-
-.SecondTimeAsking:
-	writetext UnknownText_0x69712
-	jump .AskTakeEgg
-
-GameboyKidScript_0x69540:
-	jumptextfaceplayer UnknownText_0x69809
-
-GentlemanScript_0x69543:
-	jumptextfaceplayer UnknownText_0x6983c
-
-YoungsterScript_0x69546:
-	jumptextfaceplayer UnknownText_0x698b8
-
-MovementData_AideWalksStraightOutOfPokecenter:
-	step DOWN
-	step DOWN
-	step DOWN
-	step DOWN
-	step_end
-
-MovementData_AideWalksLeftToExitPokecenter:
-	step LEFT
-	step DOWN
-	step_end
-
-MovementData_AideFinishesLeavingPokecenter:
-	step DOWN
-	step DOWN
-	step DOWN
-	step_end
-
-UnknownText_0x69555:
-	text "<PLAY_G>, long"
-	line "time, no see."
-
-	para "PROF.ELM asked me"
-	line "to find you."
-
-	para "He has another"
-	line "favor to ask."
-
-	para "Would you take the"
-	line "#MON EGG?"
-	done
-
-UnknownText_0x695c5:
-	text "We discovered that"
-	line "a #MON will not"
-
-	para "hatch until it"
-	line "grows in the EGG."
-
-	para "It also has to be"
-	line "with other active"
-	cont "#MON to hatch."
-
-	para "<PLAY_G>, you're"
-	line "the only person"
-	cont "we can rely on."
-
-	para "Please call PROF."
-	line "ELM when that EGG"
-	cont "hatches!"
-	done
-
-UnknownText_0x69693:
-	text "Oh, no. You can't"
-	line "carry any more"
-	cont "#MON with you."
-
-	para "I'll wait here"
-	line "while you make"
-	cont "room for the EGG."
-	done
-
-UnknownText_0x696f2:
-	text "B-but… PROF.ELM"
-	line "asked for you…"
-	done
-
-UnknownText_0x69712:
-	text "<PLAY_G>, will you"
-	line "take the EGG?"
-	done
-
-UnknownText_0x6972d:
-	text "I've been thinking"
-	line "it'd be great to"
-
-	para "be able to link up"
-	line "and battle with my"
-
-	para "friends who live"
-	line "far away."
-	done
-
-UnknownText_0x69791:
-	text "I just battled a"
-	line "friend in CIANWOOD"
-	cont "over a link."
-
-	para "If you connect a"
-	line "MOBILE ADAPTER,"
-
-	para "you can link with"
-	line "a friend far away."
-	done
-
-UnknownText_0x69809:
-	text "A guy named BILL"
-	line "made the #MON"
-	cont "PC storage system."
-	done
-
-UnknownText_0x6983c:
-	text "It was around"
-	line "three years ago."
-
-	para "TEAM ROCKET was up"
-	line "to no good with"
-	cont "#MON."
-
-	para "But justice pre-"
-	line "vailed--a young"
-	cont "kid broke 'em up."
-	done
-
-UnknownText_0x698b8:
-	text "#MON are smart."
-	line "They won't obey a"
-
-	para "trainer they don't"
-	line "respect."
-
-	para "Without the right"
-	line "GYM BADGES, they"
-
-	para "will just do as"
-	line "they please."
-	done
-
-VioletPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 5, VIOLET_CITY
-	warp_def $7, $4, 5, VIOLET_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 5
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, VioletPokeCenterNurse, -1
-	person_event SPRITE_GAMEBOY_KID, 6, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, GameboyKidScript_0x69540, -1
-	person_event SPRITE_GENTLEMAN, 4, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x69543, -1
-	person_event SPRITE_YOUNGSTER, 1, 8, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, YoungsterScript_0x69546, -1
-	person_event SPRITE_SCIENTIST, 3, 4, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, VioletPokeCenter1F_ElmsAideScript, EVENT_ELMS_AIDE_IN_VIOLET_POKEMON_CENTER
--- /dev/null
+++ b/maps/VioletPokecenter1F.asm
@@ -1,0 +1,240 @@
+const_value set 2
+	const VIOLETPOKECENTER1F_NURSE
+	const VIOLETPOKECENTER1F_GAMEBOY_KID
+	const VIOLETPOKECENTER1F_GENTLEMAN
+	const VIOLETPOKECENTER1F_YOUNGSTER
+	const VIOLETPOKECENTER1F_SCIENTIST
+
+VioletPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+VioletPokecenterNurse:
+	jumpstd pokecenternurse
+
+VioletPokecenter1F_ElmsAideScript:
+	faceplayer
+	opentext
+	checkevent EVENT_REFUSED_TO_TAKE_EGG_FROM_ELMS_AIDE
+	iftrue .SecondTimeAsking
+	writetext UnknownText_0x69555
+.AskTakeEgg:
+	yesorno
+	iffalse .RefusedEgg
+	checkcode VAR_PARTYCOUNT
+	if_equal PARTY_LENGTH, .PartyFull
+	giveegg TOGEPI, 5
+	stringtotext .eggname, $1
+	scall .AideGivesEgg
+	setevent EVENT_GOT_TOGEPI_EGG_FROM_ELMS_AIDE
+	clearevent EVENT_ELMS_AIDE_IN_LAB
+	clearevent EVENT_TOGEPI_HATCHED
+	domaptrigger ROUTE_32, $1
+	writetext UnknownText_0x695c5
+	waitbutton
+	closetext
+	checkcode VAR_FACING
+	if_equal UP, .AideWalksAroundPlayer
+	spriteface PLAYER, DOWN
+	applymovement VIOLETPOKECENTER1F_SCIENTIST, MovementData_AideWalksStraightOutOfPokecenter
+	playsound SFX_EXIT_BUILDING
+	disappear VIOLETPOKECENTER1F_SCIENTIST
+	waitsfx
+	end
+
+.AideWalksAroundPlayer:
+	applymovement VIOLETPOKECENTER1F_SCIENTIST, MovementData_AideWalksLeftToExitPokecenter
+	spriteface PLAYER, DOWN
+	applymovement VIOLETPOKECENTER1F_SCIENTIST, MovementData_AideFinishesLeavingPokecenter
+	playsound SFX_EXIT_BUILDING
+	disappear VIOLETPOKECENTER1F_SCIENTIST
+	waitsfx
+	end
+
+.eggname
+	db "EGG@"
+
+.AideGivesEgg:
+	jumpstd receivetogepiegg
+	end
+
+.PartyFull:
+	writetext UnknownText_0x69693
+	waitbutton
+	closetext
+	end
+
+.RefusedEgg:
+	writetext UnknownText_0x696f2
+	waitbutton
+	closetext
+	setevent EVENT_REFUSED_TO_TAKE_EGG_FROM_ELMS_AIDE
+	end
+
+.SecondTimeAsking:
+	writetext UnknownText_0x69712
+	jump .AskTakeEgg
+
+GameboyKidScript_0x69540:
+	jumptextfaceplayer UnknownText_0x69809
+
+GentlemanScript_0x69543:
+	jumptextfaceplayer UnknownText_0x6983c
+
+YoungsterScript_0x69546:
+	jumptextfaceplayer UnknownText_0x698b8
+
+MovementData_AideWalksStraightOutOfPokecenter:
+	step DOWN
+	step DOWN
+	step DOWN
+	step DOWN
+	step_end
+
+MovementData_AideWalksLeftToExitPokecenter:
+	step LEFT
+	step DOWN
+	step_end
+
+MovementData_AideFinishesLeavingPokecenter:
+	step DOWN
+	step DOWN
+	step DOWN
+	step_end
+
+UnknownText_0x69555:
+	text "<PLAY_G>, long"
+	line "time, no see."
+
+	para "PROF.ELM asked me"
+	line "to find you."
+
+	para "He has another"
+	line "favor to ask."
+
+	para "Would you take the"
+	line "#MON EGG?"
+	done
+
+UnknownText_0x695c5:
+	text "We discovered that"
+	line "a #MON will not"
+
+	para "hatch until it"
+	line "grows in the EGG."
+
+	para "It also has to be"
+	line "with other active"
+	cont "#MON to hatch."
+
+	para "<PLAY_G>, you're"
+	line "the only person"
+	cont "we can rely on."
+
+	para "Please call PROF."
+	line "ELM when that EGG"
+	cont "hatches!"
+	done
+
+UnknownText_0x69693:
+	text "Oh, no. You can't"
+	line "carry any more"
+	cont "#MON with you."
+
+	para "I'll wait here"
+	line "while you make"
+	cont "room for the EGG."
+	done
+
+UnknownText_0x696f2:
+	text "B-but… PROF.ELM"
+	line "asked for you…"
+	done
+
+UnknownText_0x69712:
+	text "<PLAY_G>, will you"
+	line "take the EGG?"
+	done
+
+UnknownText_0x6972d:
+	text "I've been thinking"
+	line "it'd be great to"
+
+	para "be able to link up"
+	line "and battle with my"
+
+	para "friends who live"
+	line "far away."
+	done
+
+UnknownText_0x69791:
+	text "I just battled a"
+	line "friend in CIANWOOD"
+	cont "over a link."
+
+	para "If you connect a"
+	line "MOBILE ADAPTER,"
+
+	para "you can link with"
+	line "a friend far away."
+	done
+
+UnknownText_0x69809:
+	text "A guy named BILL"
+	line "made the #MON"
+	cont "PC storage system."
+	done
+
+UnknownText_0x6983c:
+	text "It was around"
+	line "three years ago."
+
+	para "TEAM ROCKET was up"
+	line "to no good with"
+	cont "#MON."
+
+	para "But justice pre-"
+	line "vailed--a young"
+	cont "kid broke 'em up."
+	done
+
+UnknownText_0x698b8:
+	text "#MON are smart."
+	line "They won't obey a"
+
+	para "trainer they don't"
+	line "respect."
+
+	para "Without the right"
+	line "GYM BADGES, they"
+
+	para "will just do as"
+	line "they please."
+	done
+
+VioletPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 5, VIOLET_CITY
+	warp_def $7, $4, 5, VIOLET_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 5
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, VioletPokecenterNurse, -1
+	person_event SPRITE_GAMEBOY_KID, 6, 7, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, GameboyKidScript_0x69540, -1
+	person_event SPRITE_GENTLEMAN, 4, 1, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, GentlemanScript_0x69543, -1
+	person_event SPRITE_YOUNGSTER, 1, 8, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, YoungsterScript_0x69546, -1
+	person_event SPRITE_SCIENTIST, 3, 4, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, VioletPokecenter1F_ElmsAideScript, EVENT_ELMS_AIDE_IN_VIOLET_POKEMON_CENTER
--- a/maps/ViridianCity.asm
+++ b/maps/ViridianCity.asm
@@ -81,7 +81,7 @@
 TrainerHouseSign:
 	jumptext TrainerHouseSignText
 
-ViridianCityPokeCenterSign:
+ViridianCityPokecenterSign:
 	jumpstd pokecentersign
 
 ViridianCityMartSign:
@@ -236,7 +236,7 @@
 	signpost 7, 27, SIGNPOST_READ, ViridianGymSign
 	signpost 1, 19, SIGNPOST_READ, ViridianCityWelcomeSign
 	signpost 15, 21, SIGNPOST_READ, TrainerHouseSign
-	signpost 25, 24, SIGNPOST_READ, ViridianCityPokeCenterSign
+	signpost 25, 24, SIGNPOST_READ, ViridianCityPokecenterSign
 	signpost 19, 30, SIGNPOST_READ, ViridianCityMartSign
 
 .PersonEvents:
--- a/maps/ViridianPokeCenter1F.asm
+++ /dev/null
@@ -1,95 +1,0 @@
-const_value set 2
-	const VIRIDIANPOKECENTER1F_NURSE
-	const VIRIDIANPOKECENTER1F_COOLTRAINER_M
-	const VIRIDIANPOKECENTER1F_COOLTRAINER_F
-	const VIRIDIANPOKECENTER1F_BUG_CATCHER
-
-ViridianPokeCenter1F_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-NurseScript_0x9b690:
-	jumpstd pokecenternurse
-
-CooltrainerMScript_0x9b693:
-	faceplayer
-	opentext
-	checkevent EVENT_BLUE_IN_CINNABAR
-	iftrue .BlueReturned
-	writetext UnknownText_0x9b6ad
-	waitbutton
-	closetext
-	end
-
-.BlueReturned:
-	writetext UnknownText_0x9b6f5
-	waitbutton
-	closetext
-	end
-
-CooltrainerFScript_0x9b6a7:
-	jumptextfaceplayer UnknownText_0x9b76b
-
-BugCatcherScript_0x9b6aa:
-	jumptextfaceplayer UnknownText_0x9b7c8
-
-UnknownText_0x9b6ad:
-	text "Where in the world"
-	line "is VIRIDIAN's GYM"
-
-	para "LEADER? I wanted"
-	line "to challenge him."
-	done
-
-UnknownText_0x9b6f5:
-	text "There are no GYM"
-	line "TRAINERS at the"
-	cont "VIRIDIAN GYM."
-
-	para "The LEADER claims"
-	line "his policy is to"
-
-	para "win without having"
-	line "any underlings."
-	done
-
-UnknownText_0x9b76b:
-	text "I heard that the"
-	line "GYM in CINNABAR is"
-	cont "gone."
-
-	para "I wonder what be-"
-	line "came of BLAINE,"
-	cont "the GYM LEADER."
-	done
-
-UnknownText_0x9b7c8:
-	text "My dream is to be-"
-	line "come a GYM LEADER."
-	done
-
-ViridianPokeCenter1F_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 3
-	warp_def $7, $3, 5, VIRIDIAN_CITY
-	warp_def $7, $4, 5, VIRIDIAN_CITY
-	warp_def $7, $0, 1, POKECENTER_2F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 4
-	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x9b690, -1
-	person_event SPRITE_COOLTRAINER_M, 4, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CooltrainerMScript_0x9b693, -1
-	person_event SPRITE_COOLTRAINER_F, 3, 5, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x9b6a7, -1
-	person_event SPRITE_BUG_CATCHER, 6, 1, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, BugCatcherScript_0x9b6aa, -1
--- a/maps/ViridianPokeCenter2FBeta.asm
+++ /dev/null
@@ -1,23 +1,0 @@
-ViridianPokeCenter2FBeta_MapScriptHeader:
-.MapTriggers:
-	db 0
-
-.MapCallbacks:
-	db 0
-
-ViridianPokeCenter2FBeta_MapEventHeader:
-	; filler
-	db 0, 0
-
-.Warps:
-	db 1
-	warp_def $7, $0, 3, VIRIDIAN_POKECENTER_1F
-
-.XYTriggers:
-	db 0
-
-.Signposts:
-	db 0
-
-.PersonEvents:
-	db 0
--- /dev/null
+++ b/maps/ViridianPokecenter1F.asm
@@ -1,0 +1,95 @@
+const_value set 2
+	const VIRIDIANPOKECENTER1F_NURSE
+	const VIRIDIANPOKECENTER1F_COOLTRAINER_M
+	const VIRIDIANPOKECENTER1F_COOLTRAINER_F
+	const VIRIDIANPOKECENTER1F_BUG_CATCHER
+
+ViridianPokecenter1F_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+NurseScript_0x9b690:
+	jumpstd pokecenternurse
+
+CooltrainerMScript_0x9b693:
+	faceplayer
+	opentext
+	checkevent EVENT_BLUE_IN_CINNABAR
+	iftrue .BlueReturned
+	writetext UnknownText_0x9b6ad
+	waitbutton
+	closetext
+	end
+
+.BlueReturned:
+	writetext UnknownText_0x9b6f5
+	waitbutton
+	closetext
+	end
+
+CooltrainerFScript_0x9b6a7:
+	jumptextfaceplayer UnknownText_0x9b76b
+
+BugCatcherScript_0x9b6aa:
+	jumptextfaceplayer UnknownText_0x9b7c8
+
+UnknownText_0x9b6ad:
+	text "Where in the world"
+	line "is VIRIDIAN's GYM"
+
+	para "LEADER? I wanted"
+	line "to challenge him."
+	done
+
+UnknownText_0x9b6f5:
+	text "There are no GYM"
+	line "TRAINERS at the"
+	cont "VIRIDIAN GYM."
+
+	para "The LEADER claims"
+	line "his policy is to"
+
+	para "win without having"
+	line "any underlings."
+	done
+
+UnknownText_0x9b76b:
+	text "I heard that the"
+	line "GYM in CINNABAR is"
+	cont "gone."
+
+	para "I wonder what be-"
+	line "came of BLAINE,"
+	cont "the GYM LEADER."
+	done
+
+UnknownText_0x9b7c8:
+	text "My dream is to be-"
+	line "come a GYM LEADER."
+	done
+
+ViridianPokecenter1F_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 3
+	warp_def $7, $3, 5, VIRIDIAN_CITY
+	warp_def $7, $4, 5, VIRIDIAN_CITY
+	warp_def $7, $0, 1, POKECENTER_2F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 4
+	person_event SPRITE_NURSE, 1, 3, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, NurseScript_0x9b690, -1
+	person_event SPRITE_COOLTRAINER_M, 4, 8, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, PAL_NPC_RED, PERSONTYPE_SCRIPT, 0, CooltrainerMScript_0x9b693, -1
+	person_event SPRITE_COOLTRAINER_F, 3, 5, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, PERSONTYPE_SCRIPT, 0, CooltrainerFScript_0x9b6a7, -1
+	person_event SPRITE_BUG_CATCHER, 6, 1, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, PERSONTYPE_SCRIPT, 0, BugCatcherScript_0x9b6aa, -1
--- /dev/null
+++ b/maps/ViridianPokecenter2FBeta.asm
@@ -1,0 +1,23 @@
+ViridianPokecenter2FBeta_MapScriptHeader:
+.MapTriggers:
+	db 0
+
+.MapCallbacks:
+	db 0
+
+ViridianPokecenter2FBeta_MapEventHeader:
+	; filler
+	db 0, 0
+
+.Warps:
+	db 1
+	warp_def $7, $0, 3, VIRIDIAN_POKECENTER_1F
+
+.XYTriggers:
+	db 0
+
+.Signposts:
+	db 0
+
+.PersonEvents:
+	db 0
--- a/maps/blockdata.asm
+++ b/maps/blockdata.asm
@@ -54,18 +54,18 @@
 Route10South_BlockData:
 	INCBIN "maps/Route10South.blk"
 
-PokeCenter2F_BlockData:
-CinnabarPokeCenter2FBeta_BlockData:
-CeruleanPokeCenter2FBeta_BlockData:
-Route10PokeCenter2FBeta_BlockData:
-VermilionPokeCenter2FBeta_BlockData:
-PewterPokeCenter2FBeta_BlockData:
-FuchsiaPokeCenter2FBeta_BlockData:
-LavenderPokeCenter2FBeta_BlockData:
-CeladonPokeCenter2FBeta_BlockData:
-ViridianPokeCenter2FBeta_BlockData:
-SaffronPokeCenter2FBeta_BlockData:
-	INCBIN "maps/PokeCenter2F.blk"
+Pokecenter2F_BlockData:
+CinnabarPokecenter2FBeta_BlockData:
+CeruleanPokecenter2FBeta_BlockData:
+Route10Pokecenter2FBeta_BlockData:
+VermilionPokecenter2FBeta_BlockData:
+PewterPokecenter2FBeta_BlockData:
+FuchsiaPokecenter2FBeta_BlockData:
+LavenderPokecenter2FBeta_BlockData:
+CeladonPokecenter2FBeta_BlockData:
+ViridianPokecenter2FBeta_BlockData:
+SaffronPokecenter2FBeta_BlockData:
+	INCBIN "maps/Pokecenter2F.blk"
 
 Route41_BlockData:
 	INCBIN "maps/Route41.blk"
@@ -121,8 +121,8 @@
 BetaSproutTower6_BlockData:
 	INCBIN "maps/BetaSproutTower6.blk"
 
-BetaPokeCenterMainHouse_BlockData:
-	INCBIN "maps/BetaPokeCenterMainHouse.blk"
+BetaPokecenterMainHouse_BlockData:
+	INCBIN "maps/BetaPokecenterMainHouse.blk"
 
 Route30_BlockData:
 	INCBIN "maps/Route30.blk"
@@ -340,28 +340,28 @@
 BetaLakeOfRage_BlockData:
 	INCBIN "maps/BetaLakeOfRage.blk"
 
-OlivinePokeCenter1F_BlockData:
-MahoganyPokeCenter1F_BlockData:
-EcruteakPokeCenter1F_BlockData:
-BlackthornPokeCenter1F_BlockData:
-CinnabarPokeCenter1F_BlockData:
-CeruleanPokeCenter1F_BlockData:
-Route10PokeCenter1F_BlockData:
-AzaleaPokeCenter1F_BlockData:
-VioletPokeCenter1F_BlockData:
-Route32PokeCenter1F_BlockData:
-GoldenrodPokeCenter1F_BlockData:
-VermilionPokeCenter1F_BlockData:
-PewterPokeCenter1F_BlockData:
-FuchsiaPokeCenter1F_BlockData:
-LavenderPokeCenter1F_BlockData:
-SilverCavePokeCenter1F_BlockData:
-CeladonPokeCenter1F_BlockData:
-CianwoodPokeCenter1F_BlockData:
-ViridianPokeCenter1F_BlockData:
-SaffronPokeCenter1F_BlockData:
-CherrygrovePokeCenter1F_BlockData:
-	INCBIN "maps/PokeCenter1F.blk"
+OlivinePokecenter1F_BlockData:
+MahoganyPokecenter1F_BlockData:
+EcruteakPokecenter1F_BlockData:
+BlackthornPokecenter1F_BlockData:
+CinnabarPokecenter1F_BlockData:
+CeruleanPokecenter1F_BlockData:
+Route10Pokecenter1F_BlockData:
+AzaleaPokecenter1F_BlockData:
+VioletPokecenter1F_BlockData:
+Route32Pokecenter1F_BlockData:
+GoldenrodPokecenter1F_BlockData:
+VermilionPokecenter1F_BlockData:
+PewterPokecenter1F_BlockData:
+FuchsiaPokecenter1F_BlockData:
+LavenderPokecenter1F_BlockData:
+SilverCavePokecenter1F_BlockData:
+CeladonPokecenter1F_BlockData:
+CianwoodPokecenter1F_BlockData:
+ViridianPokecenter1F_BlockData:
+SaffronPokecenter1F_BlockData:
+CherrygrovePokecenter1F_BlockData:
+	INCBIN "maps/Pokecenter1F.blk"
 
 BetaPewterMuseumOfScience1F_BlockData:
 	INCBIN "maps/BetaPewterMuseumOfScience1F.blk"
@@ -466,8 +466,8 @@
 Route5UndergroundEntrance_BlockData:
 	INCBIN "maps/UndergroundPathEntrance.blk"
 
-BetaPokeCenterTradeStation_BlockData:
-	INCBIN "maps/BetaPokeCenterTradeStation.blk"
+BetaPokecenterTradeStation_BlockData:
+	INCBIN "maps/BetaPokecenterTradeStation.blk"
 
 KurtsHouse_BlockData:
 	INCBIN "maps/KurtsHouse.blk"
@@ -713,8 +713,8 @@
 BetaRoute23EarlyVersion_BlockData:
 	INCBIN "maps/BetaRoute23EarlyVersion.blk"
 
-IndigoPlateauPokeCenter1F_BlockData:
-	INCBIN "maps/IndigoPlateauPokeCenter1F.blk"
+IndigoPlateauPokecenter1F_BlockData:
+	INCBIN "maps/IndigoPlateauPokecenter1F.blk"
 
 WillsRoom_BlockData:
 	INCBIN "maps/WillsRoom.blk"
--- a/maps/map_headers.asm
+++ b/maps/map_headers.asm
@@ -29,7 +29,7 @@
 
 
 MapGroup1:
-	map_header OlivinePokeCenter1F, TILESET_POKECENTER, INDOOR, OLIVINE_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header OlivinePokecenter1F, TILESET_POKECENTER, INDOOR, OLIVINE_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header OlivineGym, TILESET_OLIVINE_GYM, INDOOR, OLIVINE_CITY, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header OlivineTimsHouse, TILESET_HOUSE_1, INDOOR, OLIVINE_CITY, MUSIC_VIOLET_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header OlivineHouseBeta, TILESET_HOUSE_1, INDOOR, OLIVINE_CITY, MUSIC_VIOLET_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -48,7 +48,7 @@
 MapGroup2:
 	map_header MahoganyRedGyaradosSpeechHouse, TILESET_HOUSE_1, INDOOR, MAHOGANY_TOWN, MUSIC_CHERRYGROVE_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header MahoganyGym, TILESET_GYM_1, INDOOR, MAHOGANY_TOWN, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_SHORE
-	map_header MahoganyPokeCenter1F, TILESET_POKECENTER, INDOOR, MAHOGANY_TOWN, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header MahoganyPokecenter1F, TILESET_POKECENTER, INDOOR, MAHOGANY_TOWN, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route42EcruteakGate, TILESET_GATE, GATE, ROUTE_42, MUSIC_LAKE_OF_RAGE, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route42, TILESET_JOHTO_1, ROUTE, ROUTE_42, MUSIC_LAKE_OF_RAGE, 0, PALETTE_AUTO, FISHGROUP_LAKE
 	map_header Route44, TILESET_JOHTO_1, ROUTE, ROUTE_44, MUSIC_LAKE_OF_RAGE, 0, PALETTE_AUTO, FISHGROUP_POND
@@ -152,7 +152,7 @@
 MapGroup4:
 	map_header EcruteakHouse, TILESET_SPROUT_TOWER, INDOOR, ECRUTEAK_CITY, MUSIC_ECRUTEAK_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header WiseTriosRoom, TILESET_KURT_HOUSE, INDOOR, ECRUTEAK_CITY, MUSIC_ECRUTEAK_CITY, 1, PALETTE_DAY, FISHGROUP_SHORE
-	map_header EcruteakPokeCenter1F, TILESET_POKECENTER, INDOOR, ECRUTEAK_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header EcruteakPokecenter1F, TILESET_POKECENTER, INDOOR, ECRUTEAK_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header EcruteakLugiaSpeechHouse, TILESET_KURT_HOUSE, INDOOR, ECRUTEAK_CITY, MUSIC_ECRUTEAK_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header DanceTheatre, TILESET_KURT_HOUSE, INDOOR, ECRUTEAK_CITY, MUSIC_DANCING_HALL, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header EcruteakMart, TILESET_MART, INDOOR, ECRUTEAK_CITY, MUSIC_ECRUTEAK_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -167,7 +167,7 @@
 	map_header BlackthornDragonSpeechHouse, TILESET_HOUSE_1, INDOOR, BLACKTHORN_CITY, MUSIC_AZALEA_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header BlackthornEmysHouse, TILESET_HOUSE_1, INDOOR, BLACKTHORN_CITY, MUSIC_AZALEA_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header BlackthornMart, TILESET_MART, INDOOR, BLACKTHORN_CITY, MUSIC_AZALEA_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header BlackthornPokeCenter1F, TILESET_POKECENTER, INDOOR, BLACKTHORN_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header BlackthornPokecenter1F, TILESET_POKECENTER, INDOOR, BLACKTHORN_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header MoveDeletersHouse, TILESET_HOUSE_1, INDOOR, BLACKTHORN_CITY, MUSIC_AZALEA_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route45, TILESET_JOHTO_1, ROUTE, ROUTE_45, MUSIC_ROUTE_36, 0, PALETTE_AUTO, FISHGROUP_DRATINI_2
 	map_header Route46, TILESET_JOHTO_1, ROUTE, ROUTE_46, MUSIC_ROUTE_36, 0, PALETTE_AUTO, FISHGROUP_SHORE
@@ -175,8 +175,8 @@
 
 
 MapGroup6:
-	map_header CinnabarPokeCenter1F, TILESET_POKECENTER, INDOOR, CINNABAR_ISLAND, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header CinnabarPokeCenter2FBeta, TILESET_POKECENTER, INDOOR, CINNABAR_ISLAND, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header CinnabarPokecenter1F, TILESET_POKECENTER, INDOOR, CINNABAR_ISLAND, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header CinnabarPokecenter2FBeta, TILESET_POKECENTER, INDOOR, CINNABAR_ISLAND, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route19FuchsiaGate, TILESET_GATE, GATE, ROUTE_19, MUSIC_ROUTE_3, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header SeafoamGym, TILESET_CAVE, INDOOR, SEAFOAM_ISLANDS, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route19, TILESET_KANTO, ROUTE, ROUTE_19, MUSIC_ROUTE_3, 0, PALETTE_AUTO, FISHGROUP_SHORE
@@ -189,12 +189,12 @@
 	map_header CeruleanGymBadgeSpeechHouse, TILESET_HOUSE_1, INDOOR, CERULEAN_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CeruleanPoliceStation, TILESET_HOUSE_1, INDOOR, CERULEAN_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CeruleanTradeSpeechHouse, TILESET_HOUSE_1, INDOOR, CERULEAN_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header CeruleanPokeCenter1F, TILESET_POKECENTER, INDOOR, CERULEAN_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header CeruleanPokeCenter2FBeta, TILESET_POKECENTER, INDOOR, CERULEAN_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header CeruleanPokecenter1F, TILESET_POKECENTER, INDOOR, CERULEAN_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header CeruleanPokecenter2FBeta, TILESET_POKECENTER, INDOOR, CERULEAN_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CeruleanGym, TILESET_PORT, INDOOR, CERULEAN_CITY, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_NONE
 	map_header CeruleanMart, TILESET_MART, INDOOR, CERULEAN_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header Route10PokeCenter1F, TILESET_POKECENTER, INDOOR, ROUTE_10, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header Route10PokeCenter2FBeta, TILESET_POKECENTER, INDOOR, ROUTE_10, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header Route10Pokecenter1F, TILESET_POKECENTER, INDOOR, ROUTE_10, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header Route10Pokecenter2FBeta, TILESET_POKECENTER, INDOOR, ROUTE_10, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header PowerPlant, TILESET_POWER_PLANT, INDOOR, POWER_PLANT, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header BillsHouse, TILESET_HOUSE_1, INDOOR, ROUTE_25, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route4, TILESET_KANTO, ROUTE, ROUTE_4, MUSIC_ROUTE_3, 0, PALETTE_AUTO, FISHGROUP_NONE
@@ -206,7 +206,7 @@
 
 
 MapGroup8:
-	map_header AzaleaPokeCenter1F, TILESET_POKECENTER, INDOOR, AZALEA_TOWN, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header AzaleaPokecenter1F, TILESET_POKECENTER, INDOOR, AZALEA_TOWN, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CharcoalKiln, TILESET_HOUSE_1, INDOOR, AZALEA_TOWN, MUSIC_AZALEA_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header AzaleaMart, TILESET_MART, INDOOR, AZALEA_TOWN, MUSIC_AZALEA_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header KurtsHouse, TILESET_KURT_HOUSE, INDOOR, AZALEA_TOWN, MUSIC_AZALEA_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -234,10 +234,10 @@
 	map_header VioletGym, TILESET_GYM_1, INDOOR, VIOLET_CITY, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header EarlsPokemonAcademy, TILESET_LAB, INDOOR, VIOLET_CITY, MUSIC_VIOLET_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header VioletNicknameSpeechHouse, TILESET_KURT_HOUSE, INDOOR, VIOLET_CITY, MUSIC_VIOLET_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header VioletPokeCenter1F, TILESET_POKECENTER, INDOOR, VIOLET_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header VioletPokecenter1F, TILESET_POKECENTER, INDOOR, VIOLET_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header VioletOnixTradeHouse, TILESET_KURT_HOUSE, INDOOR, VIOLET_CITY, MUSIC_VIOLET_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route32RuinsOfAlphGate, TILESET_GATE, GATE, ROUTE_32, MUSIC_ROUTE_30, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header Route32PokeCenter1F, TILESET_POKECENTER, INDOOR, ROUTE_32, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header Route32Pokecenter1F, TILESET_POKECENTER, INDOOR, ROUTE_32, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route35GoldenrodGate, TILESET_GATE, GATE, ROUTE_35, MUSIC_ROUTE_36, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route35NationalParkGate, TILESET_GATE, INDOOR, ROUTE_35, MUSIC_GOLDENROD_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route36RuinsOfAlphGate, TILESET_GATE, GATE, ROUTE_36, MUSIC_ROUTE_36, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -264,7 +264,7 @@
 	map_header GoldenrodDeptStoreElevator, TILESET_MART, INDOOR, GOLDENROD_CITY, MUSIC_GOLDENROD_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header GoldenrodDeptStoreRoof, TILESET_MART, INDOOR, GOLDENROD_CITY, MUSIC_GOLDENROD_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header GoldenrodGameCorner, TILESET_GAME_CORNER, INDOOR, GOLDENROD_CITY, MUSIC_GAME_CORNER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header GoldenrodPokeCenter1F, TILESET_POKECENTER, INDOOR, GOLDENROD_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header GoldenrodPokecenter1F, TILESET_POKECENTER, INDOOR, GOLDENROD_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header GoldenrodPokeComCenter2FMobile, TILESET_POKECOM_CENTER, INDOOR, GOLDENROD_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header IlexForestAzaleaGate, TILESET_GATE, GATE, ROUTE_34, MUSIC_ROUTE_36, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route34IlexForestGate, TILESET_GATE, GATE, ROUTE_34, MUSIC_ROUTE_36, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -276,8 +276,8 @@
 	map_header Route11, TILESET_KANTO, ROUTE, ROUTE_11, MUSIC_ROUTE_12, 0, PALETTE_AUTO, FISHGROUP_SHORE
 	map_header VermilionCity, TILESET_KANTO, TOWN, VERMILION_CITY, MUSIC_VERMILION_CITY, 0, PALETTE_AUTO, FISHGROUP_OCEAN
 	map_header VermilionHouseFishingSpeechHouse, TILESET_HOUSE_1, INDOOR, VERMILION_CITY, MUSIC_VERMILION_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header VermilionPokeCenter1F, TILESET_POKECENTER, INDOOR, VERMILION_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header VermilionPokeCenter2FBeta, TILESET_POKECENTER, INDOOR, VERMILION_CITY, MUSIC_VERMILION_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header VermilionPokecenter1F, TILESET_POKECENTER, INDOOR, VERMILION_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header VermilionPokecenter2FBeta, TILESET_POKECENTER, INDOOR, VERMILION_CITY, MUSIC_VERMILION_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header PokemonFanClub, TILESET_HOUSE_1, INDOOR, VERMILION_CITY, MUSIC_VERMILION_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header VermilionMagnetTrainSpeechHouse, TILESET_HOUSE_1, INDOOR, VERMILION_CITY, MUSIC_VERMILION_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header VermilionMart, TILESET_MART, INDOOR, VERMILION_CITY, MUSIC_VERMILION_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -302,8 +302,8 @@
 	map_header PewterNidoranSpeechHouse, TILESET_HOUSE_1, INDOOR, PEWTER_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header PewterGym, TILESET_SPROUT_TOWER, INDOOR, PEWTER_CITY, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header PewterMart, TILESET_MART, INDOOR, PEWTER_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header PewterPokeCenter1F, TILESET_POKECENTER, INDOOR, PEWTER_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header PewterPokeCenter2FBeta, TILESET_POKECENTER, INDOOR, PEWTER_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header PewterPokecenter1F, TILESET_POKECENTER, INDOOR, PEWTER_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header PewterPokecenter2FBeta, TILESET_POKECENTER, INDOOR, PEWTER_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header PewterSnoozeSpeechHouse, TILESET_HOUSE_1, INDOOR, PEWTER_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 
 
@@ -324,7 +324,7 @@
 
 MapGroup16:
 	map_header Route23, TILESET_KANTO, TOWN, ROUTE_23, MUSIC_INDIGO_PLATEAU, 0, PALETTE_AUTO, FISHGROUP_SHORE
-	map_header IndigoPlateauPokeCenter1F, TILESET_POKECENTER, INDOOR, INDIGO_PLATEAU, MUSIC_INDIGO_PLATEAU, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header IndigoPlateauPokecenter1F, TILESET_POKECENTER, INDOOR, INDIGO_PLATEAU, MUSIC_INDIGO_PLATEAU, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header WillsRoom, TILESET_GYM_1, INDOOR, INDIGO_PLATEAU, MUSIC_INDIGO_PLATEAU, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header KogasRoom, TILESET_GYM_1, INDOOR, INDIGO_PLATEAU, MUSIC_INDIGO_PLATEAU, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header BrunosRoom, TILESET_GYM_1, INDOOR, INDIGO_PLATEAU, MUSIC_INDIGO_PLATEAU, 1, PALETTE_DAY, FISHGROUP_SHORE
@@ -343,8 +343,8 @@
 	map_header SafariZoneMainOffice, TILESET_GAME_CORNER, INDOOR, FUCHSIA_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header FuchsiaGym, TILESET_LAB, INDOOR, FUCHSIA_CITY, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header FuchsiaBillSpeechHouse, TILESET_HOUSE_1, INDOOR, FUCHSIA_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header FuchsiaPokeCenter1F, TILESET_POKECENTER, INDOOR, FUCHSIA_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header FuchsiaPokeCenter2FBeta, TILESET_POKECENTER, INDOOR, FUCHSIA_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header FuchsiaPokecenter1F, TILESET_POKECENTER, INDOOR, FUCHSIA_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header FuchsiaPokecenter2FBeta, TILESET_POKECENTER, INDOOR, FUCHSIA_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header SafariZoneWardensHome, TILESET_HOUSE_1, INDOOR, FUCHSIA_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route15FuchsiaGate, TILESET_GATE, GATE, ROUTE_15, MUSIC_ROUTE_12, 0, PALETTE_DAY, FISHGROUP_SHORE
 
@@ -354,8 +354,8 @@
 	map_header Route12, TILESET_KANTO, ROUTE, ROUTE_12, MUSIC_ROUTE_12, 0, PALETTE_AUTO, FISHGROUP_QWILFISH_NO_SWARM
 	map_header Route10South, TILESET_KANTO, ROUTE, ROUTE_10, MUSIC_ROUTE_3, 0, PALETTE_AUTO, FISHGROUP_LAKE
 	map_header LavenderTown, TILESET_KANTO, TOWN, LAVENDER_TOWN, MUSIC_LAVENDER_TOWN, 0, PALETTE_AUTO, FISHGROUP_SHORE
-	map_header LavenderPokeCenter1F, TILESET_POKECENTER, INDOOR, LAVENDER_TOWN, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header LavenderPokeCenter2FBeta, TILESET_POKECENTER, INDOOR, LAVENDER_TOWN, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header LavenderPokecenter1F, TILESET_POKECENTER, INDOOR, LAVENDER_TOWN, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header LavenderPokecenter2FBeta, TILESET_POKECENTER, INDOOR, LAVENDER_TOWN, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header MrFujisHouse, TILESET_HOUSE_1, INDOOR, LAVENDER_TOWN, MUSIC_LAVENDER_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header LavenderTownSpeechHouse, TILESET_HOUSE_1, INDOOR, LAVENDER_TOWN, MUSIC_LAVENDER_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header LavenderNameRater, TILESET_HOUSE_1, INDOOR, LAVENDER_TOWN, MUSIC_LAVENDER_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -369,12 +369,12 @@
 MapGroup19:
 	map_header Route28, TILESET_KANTO, ROUTE, ROUTE_28, MUSIC_INDIGO_PLATEAU, 0, PALETTE_AUTO, FISHGROUP_POND
 	map_header SilverCaveOutside, TILESET_KANTO, TOWN, SILVER_CAVE, MUSIC_INDIGO_PLATEAU, 0, PALETTE_AUTO, FISHGROUP_POND
-	map_header SilverCavePokeCenter1F, TILESET_POKECENTER, INDOOR, SILVER_CAVE, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header SilverCavePokecenter1F, TILESET_POKECENTER, INDOOR, SILVER_CAVE, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route28FamousSpeechHouse, TILESET_HOUSE_1, INDOOR, ROUTE_28, MUSIC_AZALEA_TOWN, 0, PALETTE_DAY, FISHGROUP_SHORE
 
 
 MapGroup20:
-	map_header PokeCenter2F, TILESET_POKECENTER, INDOOR, SPECIAL_MAP, MUSIC_POKEMON_CENTER, 1, PALETTE_DAY, FISHGROUP_SHORE
+	map_header Pokecenter2F, TILESET_POKECENTER, INDOOR, SPECIAL_MAP, MUSIC_POKEMON_CENTER, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header TradeCenter, TILESET_GATE, INDOOR, SPECIAL_MAP, MUSIC_CHERRYGROVE_CITY, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Colosseum, TILESET_GATE, INDOOR, SPECIAL_MAP, MUSIC_CHERRYGROVE_CITY, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header TimeCapsule, TILESET_GATE, INDOOR, SPECIAL_MAP, MUSIC_CHERRYGROVE_CITY, 1, PALETTE_DAY, FISHGROUP_SHORE
@@ -399,8 +399,8 @@
 	map_header CeladonMansion3F, TILESET_CELADON_MANSION, INDOOR, CELADON_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CeladonMansionRoof, TILESET_CELADON_MANSION, INDOOR, CELADON_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CeladonMansionRoofHouse, TILESET_HOUSE_1, INDOOR, CELADON_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header CeladonPokeCenter1F, TILESET_POKECENTER, INDOOR, CELADON_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header CeladonPokeCenter2FBeta, TILESET_POKECENTER, INDOOR, CELADON_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header CeladonPokecenter1F, TILESET_POKECENTER, INDOOR, CELADON_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header CeladonPokecenter2FBeta, TILESET_POKECENTER, INDOOR, CELADON_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CeladonGameCorner, TILESET_GAME_CORNER, INDOOR, CELADON_CITY, MUSIC_GAME_CORNER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CeladonGameCornerPrizeRoom, TILESET_GAME_CORNER, INDOOR, CELADON_CITY, MUSIC_CELADON_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CeladonGym, TILESET_TRAIN_STATION, INDOOR, CELADON_CITY, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_SHORE
@@ -417,7 +417,7 @@
 	map_header CianwoodCity, TILESET_JOHTO_1, TOWN, CIANWOOD_CITY, MUSIC_ECRUTEAK_CITY, 0, PALETTE_AUTO, FISHGROUP_SHORE
 	map_header ManiasHouse, TILESET_HOUSE_1, INDOOR, CIANWOOD_CITY, MUSIC_ECRUTEAK_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CianwoodGym, TILESET_SPROUT_TOWER, INDOOR, CIANWOOD_CITY, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_SHORE
-	map_header CianwoodPokeCenter1F, TILESET_POKECENTER, INDOOR, CIANWOOD_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header CianwoodPokecenter1F, TILESET_POKECENTER, INDOOR, CIANWOOD_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CianwoodPharmacy, TILESET_HOUSE_1, INDOOR, CIANWOOD_CITY, MUSIC_ECRUTEAK_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CianwoodCityPhotoStudio, TILESET_HOUSE_1, INDOOR, CIANWOOD_CITY, MUSIC_ECRUTEAK_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CianwoodLugiaSpeechHouse, TILESET_HOUSE_1, INDOOR, CIANWOOD_CITY, MUSIC_ECRUTEAK_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -439,8 +439,8 @@
 	map_header TrainerHouse1F, TILESET_HOUSE_1, INDOOR, VIRIDIAN_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header TrainerHouseB1F, TILESET_POWER_PLANT, INDOOR, VIRIDIAN_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header ViridianMart, TILESET_MART, INDOOR, VIRIDIAN_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header ViridianPokeCenter1F, TILESET_POKECENTER, INDOOR, VIRIDIAN_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header ViridianPokeCenter2FBeta, TILESET_POKECENTER, INDOOR, VIRIDIAN_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header ViridianPokecenter1F, TILESET_POKECENTER, INDOOR, VIRIDIAN_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header ViridianPokecenter2FBeta, TILESET_POKECENTER, INDOOR, VIRIDIAN_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route2NuggetSpeechHouse, TILESET_HOUSE_1, INDOOR, ROUTE_2, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header Route2Gate, TILESET_GATE, GATE, ROUTE_2, MUSIC_ROUTE_2, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header VictoryRoadGate, TILESET_GATE, GATE, ROUTE_26, MUSIC_INDIGO_PLATEAU, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -468,8 +468,8 @@
 	map_header FightingDojo, TILESET_TRAIN_STATION, INDOOR, SAFFRON_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header SaffronGym, TILESET_UNDERGROUND, INDOOR, SAFFRON_CITY, MUSIC_GYM, 1, PALETTE_DAY, FISHGROUP_SHORE
 	map_header SaffronMart, TILESET_MART, INDOOR, SAFFRON_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header SaffronPokeCenter1F, TILESET_POKECENTER, INDOOR, SAFFRON_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header SaffronPokeCenter2FBeta, TILESET_POKECENTER, INDOOR, SAFFRON_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header SaffronPokecenter1F, TILESET_POKECENTER, INDOOR, SAFFRON_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header SaffronPokecenter2FBeta, TILESET_POKECENTER, INDOOR, SAFFRON_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header MrPsychicsHouse, TILESET_HOUSE_1, INDOOR, SAFFRON_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header SaffronTrainStation, TILESET_TRAIN_STATION, INDOOR, SAFFRON_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header SilphCo1F, TILESET_POWER_PLANT, INDOOR, SAFFRON_CITY, MUSIC_VIRIDIAN_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
@@ -485,7 +485,7 @@
 	map_header Route31, TILESET_JOHTO_1, ROUTE, ROUTE_31, MUSIC_ROUTE_30, 0, PALETTE_AUTO, FISHGROUP_POND
 	map_header CherrygroveCity, TILESET_JOHTO_1, TOWN, CHERRYGROVE_CITY, MUSIC_CHERRYGROVE_CITY, 0, PALETTE_AUTO, FISHGROUP_SHORE
 	map_header CherrygroveMart, TILESET_MART, INDOOR, CHERRYGROVE_CITY, MUSIC_CHERRYGROVE_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
-	map_header CherrygrovePokeCenter1F, TILESET_POKECENTER, INDOOR, CHERRYGROVE_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
+	map_header CherrygrovePokecenter1F, TILESET_POKECENTER, INDOOR, CHERRYGROVE_CITY, MUSIC_POKEMON_CENTER, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CherrygroveGymSpeechHouse, TILESET_HOUSE_1, INDOOR, CHERRYGROVE_CITY, MUSIC_CHERRYGROVE_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header GuideGentsHouse, TILESET_HOUSE_1, INDOOR, CHERRYGROVE_CITY, MUSIC_CHERRYGROVE_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
 	map_header CherrygroveEvolutionSpeechHouse, TILESET_HOUSE_1, INDOOR, CHERRYGROVE_CITY, MUSIC_CHERRYGROVE_CITY, 0, PALETTE_DAY, FISHGROUP_SHORE
--- a/maps/second_map_headers.asm
+++ b/maps/second_map_headers.asm
@@ -360,7 +360,7 @@
 	map_header_2 DragonsDenB1F, DRAGONS_DEN_B1F, $71, 0
 	map_header_2 DragonShrine, DRAGON_SHRINE, $0, 0
 	map_header_2 TohjoFalls, TOHJO_FALLS, $9, 0
-	map_header_2 OlivinePokeCenter1F, OLIVINE_POKECENTER_1F, $0, 0
+	map_header_2 OlivinePokecenter1F, OLIVINE_POKECENTER_1F, $0, 0
 	map_header_2 OlivineGym, OLIVINE_GYM, $0, 0
 	map_header_2 OlivineTimsHouse, OLIVINE_TIMS_HOUSE, $0, 0
 	map_header_2 OlivineHouseBeta, OLIVINE_HOUSE_BETA, $0, 0
@@ -373,7 +373,7 @@
 	map_header_2 Route39Farmhouse, ROUTE_39_FARMHOUSE, $0, 0
 	map_header_2 MahoganyRedGyaradosSpeechHouse, MAHOGANY_RED_GYARADOS_SPEECH_HOUSE, $0, 0
 	map_header_2 MahoganyGym, MAHOGANY_GYM, $0, 0
-	map_header_2 MahoganyPokeCenter1F, MAHOGANY_POKECENTER_1F, $0, 0
+	map_header_2 MahoganyPokecenter1F, MAHOGANY_POKECENTER_1F, $0, 0
 	map_header_2 Route42EcruteakGate, ROUTE_42_ECRUTEAK_GATE, $0, 0
 	map_header_2 DiglettsCave, DIGLETTS_CAVE, $9, 0
 	map_header_2 MountMoon, MOUNT_MOON, $9, 0
@@ -385,7 +385,7 @@
 	map_header_2 VictoryRoad, VICTORY_ROAD, $1d, 0
 	map_header_2 EcruteakHouse, ECRUTEAK_HOUSE, $0, 0
 	map_header_2 WiseTriosRoom, WISE_TRIOS_ROOM, $0, 0
-	map_header_2 EcruteakPokeCenter1F, ECRUTEAK_POKECENTER_1F, $0, 0
+	map_header_2 EcruteakPokecenter1F, ECRUTEAK_POKECENTER_1F, $0, 0
 	map_header_2 EcruteakLugiaSpeechHouse, ECRUTEAK_LUGIA_SPEECH_HOUSE, $0, 0
 	map_header_2 DanceTheatre, DANCE_THEATRE, $0, 0
 	map_header_2 EcruteakMart, ECRUTEAK_MART, $0, 0
@@ -396,24 +396,24 @@
 	map_header_2 BlackthornDragonSpeechHouse, BLACKTHORN_DRAGON_SPEECH_HOUSE, $0, 0
 	map_header_2 BlackthornEmysHouse, BLACKTHORN_EMYS_HOUSE, $0, 0
 	map_header_2 BlackthornMart, BLACKTHORN_MART, $0, 0
-	map_header_2 BlackthornPokeCenter1F, BLACKTHORN_POKECENTER_1F, $0, 0
+	map_header_2 BlackthornPokecenter1F, BLACKTHORN_POKECENTER_1F, $0, 0
 	map_header_2 MoveDeletersHouse, MOVE_DELETERS_HOUSE, $0, 0
-	map_header_2 CinnabarPokeCenter1F, CINNABAR_POKECENTER_1F, $0, 0
-	map_header_2 CinnabarPokeCenter2FBeta, CINNABAR_POKECENTER_2F_BETA, $0, 0
+	map_header_2 CinnabarPokecenter1F, CINNABAR_POKECENTER_1F, $0, 0
+	map_header_2 CinnabarPokecenter2FBeta, CINNABAR_POKECENTER_2F_BETA, $0, 0
 	map_header_2 Route19FuchsiaGate, ROUTE_19___FUCHSIA_GATE, $0, 0
 	map_header_2 SeafoamGym, SEAFOAM_GYM, $9, 0
 	map_header_2 CeruleanGymBadgeSpeechHouse, CERULEAN_GYM_BADGE_SPEECH_HOUSE, $0, 0
 	map_header_2 CeruleanPoliceStation, CERULEAN_POLICE_STATION, $0, 0
 	map_header_2 CeruleanTradeSpeechHouse, CERULEAN_TRADE_SPEECH_HOUSE, $0, 0
-	map_header_2 CeruleanPokeCenter1F, CERULEAN_POKECENTER_1F, $0, 0
-	map_header_2 CeruleanPokeCenter2FBeta, CERULEAN_POKECENTER_2F_BETA, $0, 0
+	map_header_2 CeruleanPokecenter1F, CERULEAN_POKECENTER_1F, $0, 0
+	map_header_2 CeruleanPokecenter2FBeta, CERULEAN_POKECENTER_2F_BETA, $0, 0
 	map_header_2 CeruleanGym, CERULEAN_GYM, $0, 0
 	map_header_2 CeruleanMart, CERULEAN_MART, $0, 0
-	map_header_2 Route10PokeCenter1F, ROUTE_10_POKECENTER_1F, $0, 0
-	map_header_2 Route10PokeCenter2FBeta, ROUTE_10_POKECENTER_2F_BETA, $0, 0
+	map_header_2 Route10Pokecenter1F, ROUTE_10_POKECENTER_1F, $0, 0
+	map_header_2 Route10Pokecenter2FBeta, ROUTE_10_POKECENTER_2F_BETA, $0, 0
 	map_header_2 PowerPlant, POWER_PLANT, $0, 0
 	map_header_2 BillsHouse, BILLS_HOUSE, $0, 0
-	map_header_2 AzaleaPokeCenter1F, AZALEA_POKECENTER_1F, $0, 0
+	map_header_2 AzaleaPokecenter1F, AZALEA_POKECENTER_1F, $0, 0
 	map_header_2 CharcoalKiln, CHARCOAL_KILN, $0, 0
 	map_header_2 AzaleaMart, AZALEA_MART, $0, 0
 	map_header_2 KurtsHouse, KURTS_HOUSE, $0, 0
@@ -426,10 +426,10 @@
 	map_header_2 VioletGym, VIOLET_GYM, $0, 0
 	map_header_2 EarlsPokemonAcademy, EARLS_POKEMON_ACADEMY, $0, 0
 	map_header_2 VioletNicknameSpeechHouse, VIOLET_NICKNAME_SPEECH_HOUSE, $0, 0
-	map_header_2 VioletPokeCenter1F, VIOLET_POKECENTER_1F, $0, 0
+	map_header_2 VioletPokecenter1F, VIOLET_POKECENTER_1F, $0, 0
 	map_header_2 VioletOnixTradeHouse, VIOLET_ONIX_TRADE_HOUSE, $0, 0
 	map_header_2 Route32RuinsOfAlphGate, ROUTE_32_RUINS_OF_ALPH_GATE, $0, 0
-	map_header_2 Route32PokeCenter1F, ROUTE_32_POKECENTER_1F, $0, 0
+	map_header_2 Route32Pokecenter1F, ROUTE_32_POKECENTER_1F, $0, 0
 	map_header_2 Route35GoldenrodGate, ROUTE_35_GOLDENROD_GATE, $0, 0
 	map_header_2 Route35NationalParkGate, ROUTE_35_NATIONAL_PARK_GATE, $0, 0
 	map_header_2 Route36RuinsOfAlphGate, ROUTE_36_RUINS_OF_ALPH_GATE, $0, 0
@@ -451,14 +451,14 @@
 	map_header_2 GoldenrodDeptStoreElevator, GOLDENROD_DEPT_STORE_ELEVATOR, $0, 0
 	map_header_2 GoldenrodDeptStoreRoof, GOLDENROD_DEPT_STORE_ROOF, $24, 0
 	map_header_2 GoldenrodGameCorner, GOLDENROD_GAME_CORNER, $0, 0
-	map_header_2 GoldenrodPokeCenter1F, GOLDENROD_POKECENTER_1F, $0, 0
+	map_header_2 GoldenrodPokecenter1F, GOLDENROD_POKECENTER_1F, $0, 0
 	map_header_2 GoldenrodPokeComCenter2FMobile, GOLDENROD_POKECOM_CENTER_2F_MOBILE, $0, 0
 	map_header_2 IlexForestAzaleaGate, ILEX_FOREST_AZALEA_GATE, $0, 0
 	map_header_2 Route34IlexForestGate, ROUTE_34_ILEX_FOREST_GATE, $0, 0
 	map_header_2 DayCare, DAY_CARE, $0, 0
 	map_header_2 VermilionHouseFishingSpeechHouse, VERMILION_HOUSE_FISHING_SPEECH_HOUSE, $0, 0
-	map_header_2 VermilionPokeCenter1F, VERMILION_POKECENTER_1F, $0, 0
-	map_header_2 VermilionPokeCenter2FBeta, VERMILION_POKECENTER_2F_BETA, $0, 0
+	map_header_2 VermilionPokecenter1F, VERMILION_POKECENTER_1F, $0, 0
+	map_header_2 VermilionPokecenter2FBeta, VERMILION_POKECENTER_2F_BETA, $0, 0
 	map_header_2 PokemonFanClub, POKEMON_FAN_CLUB, $0, 0
 	map_header_2 VermilionMagnetTrainSpeechHouse, VERMILION_MAGNET_TRAIN_SPEECH_HOUSE, $0, 0
 	map_header_2 VermilionMart, VERMILION_MART, $0, 0
@@ -473,8 +473,8 @@
 	map_header_2 PewterNidoranSpeechHouse, PEWTER_NIDORAN_SPEECH_HOUSE, $0, 0
 	map_header_2 PewterGym, PEWTER_GYM, $0, 0
 	map_header_2 PewterMart, PEWTER_MART, $0, 0
-	map_header_2 PewterPokeCenter1F, PEWTER_POKECENTER_1F, $0, 0
-	map_header_2 PewterPokeCenter2FBeta, PEWTER_POKECENTER_2F_BETA, $0, 0
+	map_header_2 PewterPokecenter1F, PEWTER_POKECENTER_1F, $0, 0
+	map_header_2 PewterPokecenter2FBeta, PEWTER_POKECENTER_2F_BETA, $0, 0
 	map_header_2 PewterSnoozeSpeechHouse, PEWTER_SNOOZE_SPEECH_HOUSE, $0, 0
 	map_header_2 OlivinePort, OLIVINE_PORT, $a, 0
 	map_header_2 VermilionPort, VERMILION_PORT, $a, 0
@@ -488,7 +488,7 @@
 	map_header_2 MountMoonSquare, MOUNT_MOON_SQUARE, $2d, 0
 	map_header_2 MountMoonGiftShop, MOUNT_MOON_GIFT_SHOP, $0, 0
 	map_header_2 TinTowerRoof, TIN_TOWER_ROOF, $0, 0
-	map_header_2 IndigoPlateauPokeCenter1F, INDIGO_PLATEAU_POKECENTER_1F, $0, 0
+	map_header_2 IndigoPlateauPokecenter1F, INDIGO_PLATEAU_POKECENTER_1F, $0, 0
 	map_header_2 WillsRoom, WILLS_ROOM, $0, 0
 	map_header_2 KogasRoom, KOGAS_ROOM, $0, 0
 	map_header_2 BrunosRoom, BRUNOS_ROOM, $0, 0
@@ -499,12 +499,12 @@
 	map_header_2 SafariZoneMainOffice, SAFARI_ZONE_MAIN_OFFICE, $0, 0
 	map_header_2 FuchsiaGym, FUCHSIA_GYM, $0, 0
 	map_header_2 FuchsiaBillSpeechHouse, FUCHSIA_BILL_SPEECH_HOUSE, $0, 0
-	map_header_2 FuchsiaPokeCenter1F, FUCHSIA_POKECENTER_1F, $0, 0
-	map_header_2 FuchsiaPokeCenter2FBeta, FUCHSIA_POKECENTER_2F_BETA, $0, 0
+	map_header_2 FuchsiaPokecenter1F, FUCHSIA_POKECENTER_1F, $0, 0
+	map_header_2 FuchsiaPokecenter2FBeta, FUCHSIA_POKECENTER_2F_BETA, $0, 0
 	map_header_2 SafariZoneWardensHome, SAFARI_ZONE_WARDENS_HOME, $0, 0
 	map_header_2 Route15FuchsiaGate, ROUTE_15_FUCHSIA_GATE, $0, 0
-	map_header_2 LavenderPokeCenter1F, LAVENDER_POKECENTER_1F, $0, 0
-	map_header_2 LavenderPokeCenter2FBeta, LAVENDER_POKECENTER_2F_BETA, $0, 0
+	map_header_2 LavenderPokecenter1F, LAVENDER_POKECENTER_1F, $0, 0
+	map_header_2 LavenderPokecenter2FBeta, LAVENDER_POKECENTER_2F_BETA, $0, 0
 	map_header_2 MrFujisHouse, MR_FUJIS_HOUSE, $0, 0
 	map_header_2 LavenderTownSpeechHouse, LAVENDER_TOWN_SPEECH_HOUSE, $0, 0
 	map_header_2 LavenderNameRater, LAVENDER_NAME_RATER, $0, 0
@@ -513,9 +513,9 @@
 	map_header_2 LavRadioTower1F, LAV_RADIO_TOWER_1F, $0, 0
 	map_header_2 Route8SaffronGate, ROUTE_8_SAFFRON_GATE, $0, 0
 	map_header_2 Route12SuperRodHouse, ROUTE_12_SUPER_ROD_HOUSE, $0, 0
-	map_header_2 SilverCavePokeCenter1F, SILVER_CAVE_POKECENTER_1F, $0, 0
+	map_header_2 SilverCavePokecenter1F, SILVER_CAVE_POKECENTER_1F, $0, 0
 	map_header_2 Route28FamousSpeechHouse, ROUTE_28_FAMOUS_SPEECH_HOUSE, $0, 0
-	map_header_2 PokeCenter2F, POKECENTER_2F, $0, 0
+	map_header_2 Pokecenter2F, POKECENTER_2F, $0, 0
 	map_header_2 TradeCenter, TRADE_CENTER, $0, 0
 	map_header_2 Colosseum, COLOSSEUM, $0, 0
 	map_header_2 TimeCapsule, TIME_CAPSULE, $0, 0
@@ -533,8 +533,8 @@
 	map_header_2 CeladonMansion3F, CELADON_MANSION_3F, $0, 0
 	map_header_2 CeladonMansionRoof, CELADON_MANSION_ROOF, $1, 0
 	map_header_2 CeladonMansionRoofHouse, CELADON_MANSION_ROOF_HOUSE, $0, 0
-	map_header_2 CeladonPokeCenter1F, CELADON_POKECENTER_1F, $0, 0
-	map_header_2 CeladonPokeCenter2FBeta, CELADON_POKECENTER_2F_BETA, $0, 0
+	map_header_2 CeladonPokecenter1F, CELADON_POKECENTER_1F, $0, 0
+	map_header_2 CeladonPokecenter2FBeta, CELADON_POKECENTER_2F_BETA, $0, 0
 	map_header_2 CeladonGameCorner, CELADON_GAME_CORNER, $0, 0
 	map_header_2 CeladonGameCornerPrizeRoom, CELADON_GAME_CORNER_PRIZE_ROOM, $0, 0
 	map_header_2 CeladonGym, CELADON_GYM, $0, 0
@@ -545,7 +545,7 @@
 	map_header_2 Route1718Gate, ROUTE_17_18_GATE, $0, 0
 	map_header_2 ManiasHouse, MANIAS_HOUSE, $0, 0
 	map_header_2 CianwoodGym, CIANWOOD_GYM, $0, 0
-	map_header_2 CianwoodPokeCenter1F, CIANWOOD_POKECENTER_1F, $0, 0
+	map_header_2 CianwoodPokecenter1F, CIANWOOD_POKECENTER_1F, $0, 0
 	map_header_2 CianwoodPharmacy, CIANWOOD_PHARMACY, $0, 0
 	map_header_2 CianwoodCityPhotoStudio, CIANWOOD_CITY_PHOTO_STUDIO, $0, 0
 	map_header_2 CianwoodLugiaSpeechHouse, CIANWOOD_LUGIA_SPEECH_HOUSE, $0, 0
@@ -561,8 +561,8 @@
 	map_header_2 TrainerHouse1F, TRAINER_HOUSE_1F, $0, 0
 	map_header_2 TrainerHouseB1F, TRAINER_HOUSE_B1F, $0, 0
 	map_header_2 ViridianMart, VIRIDIAN_MART, $0, 0
-	map_header_2 ViridianPokeCenter1F, VIRIDIAN_POKECENTER_1F, $0, 0
-	map_header_2 ViridianPokeCenter2FBeta, VIRIDIAN_POKECENTER_2F_BETA, $0, 0
+	map_header_2 ViridianPokecenter1F, VIRIDIAN_POKECENTER_1F, $0, 0
+	map_header_2 ViridianPokecenter2FBeta, VIRIDIAN_POKECENTER_2F_BETA, $0, 0
 	map_header_2 Route2NuggetSpeechHouse, ROUTE_2_NUGGET_SPEECH_HOUSE, $0, 0
 	map_header_2 Route2Gate, ROUTE_2_GATE, $0, 0
 	map_header_2 VictoryRoadGate, VICTORY_ROAD_GATE, $0, 0
@@ -578,8 +578,8 @@
 	map_header_2 FightingDojo, FIGHTING_DOJO, $0, 0
 	map_header_2 SaffronGym, SAFFRON_GYM, $0, 0
 	map_header_2 SaffronMart, SAFFRON_MART, $0, 0
-	map_header_2 SaffronPokeCenter1F, SAFFRON_POKECENTER_1F, $0, 0
-	map_header_2 SaffronPokeCenter2FBeta, SAFFRON_POKECENTER_2F_BETA, $0, 0
+	map_header_2 SaffronPokecenter1F, SAFFRON_POKECENTER_1F, $0, 0
+	map_header_2 SaffronPokecenter2FBeta, SAFFRON_POKECENTER_2F_BETA, $0, 0
 	map_header_2 MrPsychicsHouse, MR_PSYCHICS_HOUSE, $0, 0
 	map_header_2 SaffronTrainStation, SAFFRON_TRAIN_STATION, $0, 0
 	map_header_2 SilphCo1F, SILPH_CO_1F, $0, 0
@@ -589,7 +589,7 @@
 	map_header_2 Route5SaffronCityGate, ROUTE_5_SAFFRON_CITY_GATE, $0, 0
 	map_header_2 Route5CleanseTagSpeechHouse, ROUTE_5_CLEANSE_TAG_SPEECH_HOUSE, $0, 0
 	map_header_2 CherrygroveMart, CHERRYGROVE_MART, $0, 0
-	map_header_2 CherrygrovePokeCenter1F, CHERRYGROVE_POKECENTER_1F, $0, 0
+	map_header_2 CherrygrovePokecenter1F, CHERRYGROVE_POKECENTER_1F, $0, 0
 	map_header_2 CherrygroveGymSpeechHouse, CHERRYGROVE_GYM_SPEECH_HOUSE, $0, 0
 	map_header_2 GuideGentsHouse, GUIDE_GENTS_HOUSE, $0, 0
 	map_header_2 CherrygroveEvolutionSpeechHouse, CHERRYGROVE_EVOLUTION_SPEECH_HOUSE, $0, 0
--- a/text/stdtext.asm
+++ b/text/stdtext.asm
@@ -202,7 +202,7 @@
 	line "can break this."
 	done
 
-PokeCenterSignText:
+PokecenterSignText:
 	text "Heal Your #MON!"
 	line "#MON CENTER"
 	done