kep-hack/data/maps/map_header_banks.asm
Llinos Evans 2f01628cd9 Groundwork for Tradeback Move Tutor
Currently the move tutor is a little bit broken - the IDs are 1 above how they should be. Shell speculates that it's searching at the table starting from Kangaskhan due to the way the decrements shake up but it may just be making things more complicated than they are.

Big cheese code is `PrepareTradebackMoveList`, it's where things are mucking up.

Also, the code can be significantly optimised, as it's currently being adapted from the function above, `PrepareRelearnableMoveList`; It doesn't need to check levels, for example.

Note that the relearner functions properly, so use it as a reference. I may have removed something important.

Technically, we could have NO_MON as an entry which may make things shake out properly. But I'd rather have a proper fix.
2023-04-23 06:11:05 +01:00

253 lines
6.8 KiB
NASM

; see also MapHeaderPointers
MapHeaderBanks::
table_width 1, MapHeaderBanks
db BANK(PalletTown_h)
db BANK(ViridianCity_h)
db BANK(PewterCity_h)
db BANK(CeruleanCity_h)
db BANK(VermilionCity_h)
db BANK(LavenderTown_h)
db BANK(CeladonCity_h)
db BANK(CeladonUniversityOutside_h)
db BANK(FuchsiaCity_h)
db BANK(SaffronCity_h)
db BANK(CinnabarIsland_h)
db BANK(IndigoPlateau_h)
db BANK(CitrineCity_h)
db BANK(Route1_h)
db BANK(Route2_h)
db BANK(Route3_h)
db BANK(Route4_h)
db BANK(Route5_h)
db BANK(Route6_h)
db BANK(Route7_h)
db BANK(Route8_h)
db BANK(Route9_h)
db BANK(Route10_h)
db BANK(Route11_h)
db BANK(Route12_h)
db BANK(Route13_h)
db BANK(Route14_h)
db BANK(Route15_h)
db BANK(Route16_h)
db BANK(Route17_h)
db BANK(Route18_h)
db BANK(Route19_h)
db BANK(Route20_h)
db BANK(Route21_h)
db BANK(Route22_h)
db BANK(Route23_h)
db BANK(Route24_h)
db BANK(Route25_h)
db BANK(RedsHouse1F_h)
db BANK(RedsHouse2F_h)
db BANK(BluesHouse_h)
db BANK(OaksLab_h)
db BANK(ViridianPokecenter_h)
db BANK(ViridianMart_h)
db BANK(ViridianSchoolHouse_h)
db BANK(ViridianNicknameHouse_h)
db BANK(ViridianGym_h)
db BANK(DiglettsCaveRoute2_h)
db BANK(ViridianForestNorthGate_h)
db BANK(Route2TradeHouse_h)
db BANK(Route2Gate_h)
db BANK(ViridianForestSouthGate_h)
db BANK(ViridianForest_h)
db BANK(Museum1F_h)
db BANK(Museum2F_h)
db BANK(PewterGym_h)
db BANK(PewterNidoranHouse_h)
db BANK(PewterMart_h)
db BANK(PewterSpeechHouse_h)
db BANK(PewterPokecenter_h)
db BANK(MtMoon1F_h)
db BANK(MtMoonB1F_h)
db BANK(MtMoonB2F_h)
db BANK(CeruleanTrashedHouse_h)
db BANK(CeruleanTradeHouse_h)
db BANK(CeruleanPokecenter_h)
db BANK(CeruleanGym_h)
db BANK(BikeShop_h)
db BANK(CeruleanMart_h)
db BANK(MtMoonPokecenter_h)
db BANK(ViridianPreGym_h) ; was db BANK(CeruleanTrashedHouse_h)
db BANK(Route5Gate_h)
db BANK(UndergroundPathRoute5_h)
db BANK(Daycare_h)
db BANK(Route6Gate_h)
db BANK(UndergroundPathRoute6_h)
db BANK(CelesteHill_h) ; was db BANK(UndergroundPathRoute6_h), UNDERGROUND_PATH_ROUTE_6_COPY
db BANK(Route7Gate_h)
db BANK(UndergroundPathRoute7_h)
db BANK(CitrineRocketHouse_h) ; was db BANK(UndergroundPathRoute7Copy_h)
db BANK(Route8Gate_h)
db BANK(UndergroundPathRoute8_h)
db BANK(RockTunnelPokecenter_h)
db BANK(RockTunnel1F_h)
db BANK(PowerPlant_h)
db BANK(Route11Gate1F_h)
db BANK(DiglettsCaveRoute11_h)
db BANK(Route11Gate2F_h)
db BANK(Route12Gate1F_h)
db BANK(BillsHouse_h)
db BANK(VermilionPokecenter_h)
db BANK(PokemonFanClub_h)
db BANK(VermilionMart_h)
db BANK(VermilionGym_h)
db BANK(VermilionPidgeyHouse_h)
db BANK(VermilionDock_h)
db BANK(SSAnne1F_h)
db BANK(SSAnne2F_h)
db BANK(SSAnne3F_h)
db BANK(SSAnneB1F_h)
db BANK(SSAnneBow_h)
db BANK(SSAnneKitchen_h)
db BANK(SSAnneCaptainsRoom_h)
db BANK(SSAnne1FRooms_h)
db BANK(SSAnne2FRooms_h)
db BANK(SSAnneB1FRooms_h)
db BANK(SilphGauntlet1F_h)
db BANK(SilphGauntlet2F_h)
db BANK(SilphGauntlet3F_h)
db BANK(VictoryRoad1F_h)
db BANK(SilphGauntlet4F_h)
db BANK(SilphGauntlet5F_h)
db BANK(SilphGauntlet6F_h)
db BANK(SilphGauntlet7F_h)
db BANK(LancesRoom_h)
db BANK(FarawayIslandOutside_h) ; UNUSED_MAP_72
db BANK(FarawayIslandInside_h) ; UNUSED_MAP_73
db BANK(PokemonMansionB2F_h) ; UNUSED_MAP_74
db BANK(MtMoonCrater_h) ; UNUSED_MAP_75
db BANK(HallOfFame_h)
db BANK(UndergroundPathNorthSouth_h)
db BANK(ChampionsRoom_h)
db BANK(UndergroundPathWestEast_h)
db BANK(CeladonMart1F_h)
db BANK(CeladonMart2F_h)
db BANK(CeladonMart3F_h)
db BANK(CeladonMart4F_h)
db BANK(CeladonMartRoof_h)
db BANK(CeladonMartElevator_h)
db BANK(CeladonMansion1F_h)
db BANK(CeladonMansion2F_h)
db BANK(CeladonMansion3F_h)
db BANK(CeladonMansionRoof_h)
db BANK(CeladonMansionRoofHouse_h)
db BANK(CeladonPokecenter_h)
db BANK(CeladonGym_h)
db BANK(GameCorner_h)
db BANK(CeladonMart5F_h)
db BANK(GameCornerPrizeRoom_h)
db BANK(CeladonDiner_h)
db BANK(CeladonChiefHouse_h)
db BANK(CeladonHotel_h)
db BANK(LavenderPokecenter_h)
db BANK(PokemonTower1F_h)
db BANK(PokemonTower2F_h)
db BANK(PokemonTower3F_h)
db BANK(PokemonTower4F_h)
db BANK(PokemonTower5F_h)
db BANK(PokemonTower6F_h)
db BANK(PokemonTower7F_h)
db BANK(MrFujisHouse_h)
db BANK(LavenderMart_h)
db BANK(LavenderCuboneHouse_h)
db BANK(FuchsiaMart_h)
db BANK(FuchsiaBillsGrandpasHouse_h)
db BANK(FuchsiaPokecenter_h)
db BANK(WardensHouse_h)
db BANK(SafariZoneGate_h)
db BANK(FuchsiaGym_h)
db BANK(FuchsiaMeetingRoom_h)
db BANK(SeafoamIslandsB1F_h)
db BANK(SeafoamIslandsB2F_h)
db BANK(SeafoamIslandsB3F_h)
db BANK(SeafoamIslandsB4F_h)
db BANK(CitrineTradebackHouse_h)
db BANK(FuchsiaGoodRodHouse_h)
db BANK(PokemonMansion1F_h)
db BANK(CinnabarGym_h)
db BANK(CinnabarLab_h)
db BANK(CinnabarLabTradeRoom_h)
db BANK(CinnabarLabMetronomeRoom_h)
db BANK(CinnabarLabFossilRoom_h)
db BANK(CinnabarPokecenter_h)
db BANK(CinnabarMart_h)
db BANK(CinnabarMart_h)
db BANK(IndigoPlateauLobby_h)
db BANK(CopycatsHouse1F_h)
db BANK(CopycatsHouse2F_h)
db BANK(FightingDojo_h)
db BANK(SaffronGym_h)
db BANK(SaffronPidgeyHouse_h)
db BANK(SaffronMart_h)
db BANK(SilphCo1F_h)
db BANK(SaffronPokecenter_h)
db BANK(MrPsychicsHouse_h)
db BANK(Route15Gate1F_h)
db BANK(Route15Gate2F_h)
db BANK(Route16Gate1F_h)
db BANK(Route16Gate2F_h)
db BANK(Route16FlyHouse_h)
db BANK(Route12SuperRodHouse_h)
db BANK(Route18Gate1F_h)
db BANK(Route18Gate2F_h)
db BANK(SeafoamIslands1F_h)
db BANK(Route22Gate_h)
db BANK(VictoryRoad2F_h)
db BANK(Route12Gate2F_h)
db BANK(VermilionTradeHouse_h)
db BANK(DiglettsCave_h)
db BANK(VictoryRoad3F_h)
db BANK(RocketHideoutB1F_h)
db BANK(RocketHideoutB2F_h)
db BANK(RocketHideoutB3F_h)
db BANK(RocketHideoutB4F_h)
db BANK(RocketHideoutElevator_h)
db $01 ; UNUSED_MAP_CC
db $01 ; UNUSED_MAP_CD
db $01 ; UNUSED_MAP_CE
db BANK(SilphCo2F_h)
db BANK(SilphCo3F_h)
db BANK(SilphCo4F_h)
db BANK(SilphCo5F_h)
db BANK(SilphCo6F_h)
db BANK(SilphCo7F_h)
db BANK(SilphCo8F_h)
db BANK(PokemonMansion2F_h)
db BANK(PokemonMansion3F_h)
db BANK(PokemonMansionB1F_h)
db BANK(SafariZoneEast_h)
db BANK(SafariZoneNorth_h)
db BANK(SafariZoneWest_h)
db BANK(SafariZoneCenter_h)
db BANK(SafariZoneCenterRestHouse_h)
db BANK(SafariZoneSecretHouse_h)
db BANK(SafariZoneWestRestHouse_h)
db BANK(SafariZoneEastRestHouse_h)
db BANK(SafariZoneNorthRestHouse_h)
db BANK(CeruleanCave2F_h)
db BANK(CeruleanCaveB1F_h)
db BANK(CeruleanCave1F_h)
db BANK(NameRatersHouse_h)
db BANK(CeruleanBadgeHouse_h)
db BANK(CinnabarVolcano_h) ; $01 UNUSED_MAP_E7
db BANK(RockTunnelB1F_h)
db BANK(SilphCo9F_h)
db BANK(SilphCo10F_h)
db BANK(SilphCo11F_h)
db BANK(SilphCoElevator_h)
db $11 ; UNUSED_MAP_ED
db BANK(UnderwaterTunnel_h) ; UNUSED_MAP_EE
db BANK(TradeCenter_h)
db BANK(Colosseum_h)
db BANK(CeladonUniversityInside_h) ; $11 UNUSED_MAP_F1
db BANK(CeladonUniversityPokecenter_h) ; UNUSED_MAP_F2
db BANK(BillsGarden_h) ; UNUSED_MAP_F3, $11
db BANK(LoreleisRoom_h)
db BANK(BrunosRoom_h)
db BANK(AgathasRoom_h)
assert_table_length NUM_MAPS