diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/data/region_map/city_map_entries.h | 113 | ||||
-rw-r--r-- | src/data/region_map/city_map_tilemaps.h | 22 | ||||
-rw-r--r-- | src/data/text/gift_ribbon_descriptions.h | 115 | ||||
-rw-r--r-- | src/data/text/ribbon_descriptions.h | 48 | ||||
-rw-r--r-- | src/data/text/trainers_eye_messages.h | 550 | ||||
-rw-r--r-- | src/pokenav_unk_10.c | 71 | ||||
-rw-r--r-- | src/pokenav_unk_2.c | 255 | ||||
-rwxr-xr-x | src/pokenav_unk_3.c | 7 | ||||
-rwxr-xr-x | src/pokenav_unk_4.c | 198 | ||||
-rwxr-xr-x | src/pokenav_unk_5.c | 125 | ||||
-rw-r--r-- | src/pokenav_unk_7.c | 102 | ||||
-rw-r--r-- | src/pokenav_unk_8.c | 78 | ||||
-rw-r--r-- | src/pokenav_unk_9.c | 75 |
13 files changed, 1722 insertions, 37 deletions
diff --git a/src/data/region_map/city_map_entries.h b/src/data/region_map/city_map_entries.h new file mode 100644 index 000000000..7b8361a7c --- /dev/null +++ b/src/data/region_map/city_map_entries.h @@ -0,0 +1,113 @@ +const struct CityMapEntry gPokenavCityMaps[] = +{ + { + .mapSecId = 0, + .index = 0, + .tilemap = gPokenavCityMap_Littleroot_0, + }, + { + .mapSecId = 1, + .index = 0, + .tilemap = gPokenavCityMap_Oldale_0, + }, + { + .mapSecId = 2, + .index = 0, + .tilemap = gPokenavCityMap_Dewford_0, + }, + { + .mapSecId = 3, + .index = 0, + .tilemap = gPokenavCityMap_Lavarige_0, + }, + { + .mapSecId = 4, + .index = 0, + .tilemap = gPokenavCityMap_Fallarbor_0, + }, + { + .mapSecId = 5, + .index = 0, + .tilemap = gPokenavCityMap_Verdanturf_0, + }, + { + .mapSecId = 6, + .index = 0, + .tilemap = gPokenavCityMap_Pacifidlog_0, + }, + { + .mapSecId = 7, + .index = 0, + .tilemap = gPokenavCityMap_Petalburg_0, + }, + { + .mapSecId = 8, + .index = 0, + .tilemap = gPokenavCityMap_Slateport_0, + }, + { + .mapSecId = 8, + .index = 1, + .tilemap = gPokenavCityMap_Slateport_1, + }, + { + .mapSecId = 9, + .index = 0, + .tilemap = gPokenavCityMap_Mauville_0, + }, + { + .mapSecId = 9, + .index = 1, + .tilemap = gPokenavCityMap_Mauville_1, + }, + { + .mapSecId = 10, + .index = 0, + .tilemap = gPokenavCityMap_Rustboro_0, + }, + { + .mapSecId = 10, + .index = 1, + .tilemap = gPokenavCityMap_Rustboro_1, + }, + { + .mapSecId = 11, + .index = 0, + .tilemap = gPokenavCityMap_Fortree_0, + }, + { + .mapSecId = 12, + .index = 0, + .tilemap = gPokenavCityMap_Lilycove_0, + }, + { + .mapSecId = 12, + .index = 1, + .tilemap = gPokenavCityMap_Lilycove_1, + }, + { + .mapSecId = 13, + .index = 0, + .tilemap = gPokenavCityMap_Mossdeep_0, + }, + { + .mapSecId = 13, + .index = 1, + .tilemap = gPokenavCityMap_Mossdeep_1, + }, + { + .mapSecId = 14, + .index = 0, + .tilemap = gPokenavCityMap_Sootopolis_0, + }, + { + .mapSecId = 15, + .index = 0, + .tilemap = gPokenavCityMap_EverGrande_0, + }, + { + .mapSecId = 15, + .index = 1, + .tilemap = gPokenavCityMap_EverGrande_1, + }, +}; diff --git a/src/data/region_map/city_map_tilemaps.h b/src/data/region_map/city_map_tilemaps.h new file mode 100644 index 000000000..8a8a931f9 --- /dev/null +++ b/src/data/region_map/city_map_tilemaps.h @@ -0,0 +1,22 @@ +const u32 gPokenavCityMap_Lavarige_0[] = INCBIN_U32("graphics/pokenav/city_maps/lavaridge_0.bin.lz"); +const u32 gPokenavCityMap_Fallarbor_0[] = INCBIN_U32("graphics/pokenav/city_maps/fallarbor_0.bin.lz"); +const u32 gPokenavCityMap_Fortree_0[] = INCBIN_U32("graphics/pokenav/city_maps/fortree_0.bin.lz"); +const u32 gPokenavCityMap_Slateport_0[] = INCBIN_U32("graphics/pokenav/city_maps/slateport_0.bin.lz"); +const u32 gPokenavCityMap_Slateport_1[] = INCBIN_U32("graphics/pokenav/city_maps/slateport_1.bin.lz"); +const u32 gPokenavCityMap_Rustboro_0[] = INCBIN_U32("graphics/pokenav/city_maps/rustboro_0.bin.lz"); +const u32 gPokenavCityMap_Rustboro_1[] = INCBIN_U32("graphics/pokenav/city_maps/rustboro_1.bin.lz"); +const u32 gPokenavCityMap_Pacifidlog_0[] = INCBIN_U32("graphics/pokenav/city_maps/pacifidlog_0.bin.lz"); +const u32 gPokenavCityMap_Mauville_1[] = INCBIN_U32("graphics/pokenav/city_maps/mauville_1.bin.lz"); +const u32 gPokenavCityMap_Mauville_0[] = INCBIN_U32("graphics/pokenav/city_maps/mauville_0.bin.lz"); +const u32 gPokenavCityMap_Oldale_0[] = INCBIN_U32("graphics/pokenav/city_maps/oldale_0.bin.lz"); +const u32 gPokenavCityMap_Lilycove_1[] = INCBIN_U32("graphics/pokenav/city_maps/lilycove_1.bin.lz"); +const u32 gPokenavCityMap_Lilycove_0[] = INCBIN_U32("graphics/pokenav/city_maps/lilycove_0.bin.lz"); +const u32 gPokenavCityMap_Littleroot_0[] = INCBIN_U32("graphics/pokenav/city_maps/littleroot_0.bin.lz"); +const u32 gPokenavCityMap_Dewford_0[] = INCBIN_U32("graphics/pokenav/city_maps/dewford_0.bin.lz"); +const u32 gPokenavCityMap_Sootopolis_0[] = INCBIN_U32("graphics/pokenav/city_maps/sootopolis_0.bin.lz"); +const u32 gPokenavCityMap_EverGrande_0[] = INCBIN_U32("graphics/pokenav/city_maps/ever_grande_0.bin.lz"); +const u32 gPokenavCityMap_EverGrande_1[] = INCBIN_U32("graphics/pokenav/city_maps/ever_grande_1.bin.lz"); +const u32 gPokenavCityMap_Verdanturf_0[] = INCBIN_U32("graphics/pokenav/city_maps/verdanturf_0.bin.lz"); +const u32 gPokenavCityMap_Mossdeep_1[] = INCBIN_U32("graphics/pokenav/city_maps/mossdeep_1.bin.lz"); +const u32 gPokenavCityMap_Mossdeep_0[] = INCBIN_U32("graphics/pokenav/city_maps/mossdeep_0.bin.lz"); +const u32 gPokenavCityMap_Petalburg_0[] = INCBIN_U32("graphics/pokenav/city_maps/petalburg_0.bin.lz"); diff --git a/src/data/text/gift_ribbon_descriptions.h b/src/data/text/gift_ribbon_descriptions.h new file mode 100644 index 000000000..ea108be18 --- /dev/null +++ b/src/data/text/gift_ribbon_descriptions.h @@ -0,0 +1,115 @@ +const u8 gGiftRibbonDescriptionPart1_2003RegionalTourney[] = _("2003 REGIONAL TOURNEY"); +const u8 gGiftRibbonDescriptionPart2_Champion[] = _("CHAMPION RIBBON"); +const u8 gGiftRibbonDescriptionPart1_2003NationalTourney[] = _("2003 NATIONAL TOURNEY"); +const u8 gGiftRibbonDescriptionPart1_2003GlobalCup[] = _("2003 GLOBAL CUP"); +const u8 gGiftRibbonDescriptionPart2_RunnerUp[] = _("Runner-up RIBBON"); +const u8 gGiftRibbonDescriptionPart2_Semifinalist[] = _("Semifinalist RIBBON"); +const u8 gGiftRibbonDescriptionPart1_2004RegionalTourney[] = _("2004 REGIONAL TOURNEY"); +const u8 gGiftRibbonDescriptionPart1_2004NationalTourney[] = _("2004 NATIONAL TOURNEY"); +const u8 gGiftRibbonDescriptionPart1_2004GlobalCup[] = _("2004 GLOBAL CUP"); +const u8 gGiftRibbonDescriptionPart1_2005RegionalTourney[] = _("2005 REGIONAL TOURNEY"); +const u8 gGiftRibbonDescriptionPart1_2005NationalTourney[] = _("2005 NATIONAL TOURNEY"); +const u8 gGiftRibbonDescriptionPart1_2005GlobalCup[] = _("2005 GLOBAL CUP"); +const u8 gGiftRibbonDescriptionPart1_PokemonBattleCup[] = _("POKéMON BATTLE CUP"); +const u8 gGiftRibbonDescriptionPart2_Participation[] = _("Participation RIBBON"); +const u8 gGiftRibbonDescriptionPart1_PokemonLeague[] = _("POKéMON LEAGUE"); +const u8 gGiftRibbonDescriptionPart1_AdvanceCup[] = _("ADVANCE CUP"); +const u8 gGiftRibbonDescriptionPart1_PokemonTournament[] = _("POKéMON Tournament"); +const u8 gGiftRibbonDescriptionPart2_Participation2[] = _("Participation RIBBON"); +const u8 gGiftRibbonDescriptionPart1_PokemonEvent[] = _("POKéMON Event"); +const u8 gGiftRibbonDescriptionPart1_PokemonFestival[] = _("POKéMON Festival"); +const u8 gGiftRibbonDescriptionPart1_DifficultyClearing[] = _("Difficulty-clearing"); +const u8 gGiftRibbonDescriptionPart2_Commemorative[] = _("Commemorative RIBBON"); +const u8 gGiftRibbonDescriptionPart1_ClearingAllChallenges[] = _("RIBBON awarded for"); +const u8 gGiftRibbonDescriptionPart2_ClearingAllChallenges[] = _("clearing all challenges."); +const u8 gGiftRibbonDescriptionPart1_100StraightWin[] = _("100-straight Win"); +const u8 gGiftRibbonDescriptionPart1_DarknessTower[] = _("DARKNESS TOWER Clear"); +const u8 gGiftRibbonDescriptionPart1_RedTower[] = _("RED TOWER Clear"); +const u8 gGiftRibbonDescriptionPart1_BlackironTower[] = _("BLACKIRON TOWER Clear"); +const u8 gGiftRibbonDescriptionPart1_FinalTower[] = _("FINAL TOWER Clear"); +const u8 gGiftRibbonDescriptionPart1_LegendMaking[] = _("Legend-making"); +const u8 gGiftRibbonDescriptionPart1_PokemonCenterTokyo[] = _("POKéMON CENTER TOKYO"); +const u8 gGiftRibbonDescriptionPart1_PokemonCenterOsaka[] = _("POKéMON CENTER OSAKA"); +const u8 gGiftRibbonDescriptionPart1_PokemonCenterNagoya[] = _("POKéMON CENTER NAGOYA"); +const u8 gGiftRibbonDescriptionPart1_PokemonCenterNY[] = _("POKéMON CENTER NY"); +const u8 gGiftRibbonDescriptionPart1_SummerHolidays[] = _("Summer Holidays RIBBON"); +const u8 gGiftRibbonDescriptionPart2_EmptyString[] = _(""); +const u8 gGiftRibbonDescriptionPart1_WinterHolidays[] = _("Winter Holidays RIBBON"); +const u8 gGiftRibbonDescriptionPart1_SpringHolidays[] = _("Spring Holidays RIBBON"); +const u8 gGiftRibbonDescriptionPart1_Evergreen[] = _("Evergreen RIBBON"); +const u8 gGiftRibbonDescriptionPart1_SpecialHoliday[] = _("Special Holiday RIBBON"); +const u8 gGiftRibbonDescriptionPart1_HardWorker[] = _("Hard Worker RIBBON"); +const u8 gGiftRibbonDescriptionPart1_LotsOfFriends[] = _("Lots of Friends RIBBON"); +const u8 gGiftRibbonDescriptionPart1_FullOfEnergy[] = _("Full of Energy RIBBON"); +const u8 gGiftRibbonDescriptionPart1_LovedPokemon[] = _("A commemorative RIBBON"); +const u8 gGiftRibbonDescriptionPart2_LovedPokemon[] = _("for a loved POKéMON."); +const u8 gGiftRibbonDescriptionPart1_LoveForPokemon[] = _("RIBBON that shows"); +const u8 gGiftRibbonDescriptionPart2_LoveForPokemon[] = _("love for POKéMON."); + +const u8 *const gGiftRibbonDescriptionPointers[][2] = +{ + {gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_2003RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_2003NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_2003GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_2004RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_2004NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_2004GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_2005RegionalTourney, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_2005NationalTourney, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_2005GlobalCup, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_PokemonBattleCup, gGiftRibbonDescriptionPart2_Participation}, + {gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_PokemonLeague, gGiftRibbonDescriptionPart2_Participation}, + {gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Champion}, + {gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_RunnerUp}, + {gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Semifinalist}, + {gGiftRibbonDescriptionPart1_AdvanceCup, gGiftRibbonDescriptionPart2_Participation}, + {gGiftRibbonDescriptionPart1_PokemonTournament, gGiftRibbonDescriptionPart2_Participation2}, + {gGiftRibbonDescriptionPart1_PokemonEvent, gGiftRibbonDescriptionPart2_Participation2}, + {gGiftRibbonDescriptionPart1_PokemonFestival, gGiftRibbonDescriptionPart2_Participation2}, + {gGiftRibbonDescriptionPart1_DifficultyClearing, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_ClearingAllChallenges, gGiftRibbonDescriptionPart2_ClearingAllChallenges}, + {gGiftRibbonDescriptionPart1_100StraightWin, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_DarknessTower, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_RedTower, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_BlackironTower, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_FinalTower, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_LegendMaking, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_PokemonCenterTokyo, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_PokemonCenterOsaka, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_PokemonCenterNagoya, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_PokemonCenterNY, gGiftRibbonDescriptionPart2_Commemorative}, + {gGiftRibbonDescriptionPart1_SummerHolidays, gGiftRibbonDescriptionPart2_EmptyString}, + {gGiftRibbonDescriptionPart1_WinterHolidays, gGiftRibbonDescriptionPart2_EmptyString}, + {gGiftRibbonDescriptionPart1_SpringHolidays, gGiftRibbonDescriptionPart2_EmptyString}, + {gGiftRibbonDescriptionPart1_Evergreen, gGiftRibbonDescriptionPart2_EmptyString}, + {gGiftRibbonDescriptionPart1_SpecialHoliday, gGiftRibbonDescriptionPart2_EmptyString}, + {gGiftRibbonDescriptionPart1_HardWorker, gGiftRibbonDescriptionPart2_EmptyString}, + {gGiftRibbonDescriptionPart1_LotsOfFriends, gGiftRibbonDescriptionPart2_EmptyString}, + {gGiftRibbonDescriptionPart1_FullOfEnergy, gGiftRibbonDescriptionPart2_EmptyString}, + {gGiftRibbonDescriptionPart1_LovedPokemon, gGiftRibbonDescriptionPart2_LovedPokemon}, + {gGiftRibbonDescriptionPart1_LoveForPokemon, gGiftRibbonDescriptionPart2_LoveForPokemon} +}; diff --git a/src/data/text/ribbon_descriptions.h b/src/data/text/ribbon_descriptions.h new file mode 100644 index 000000000..f455a7771 --- /dev/null +++ b/src/data/text/ribbon_descriptions.h @@ -0,0 +1,48 @@ +const u8 gRibbonDescriptionPart1_Champion[] = _("CHAMPION-beating, HALL"); +const u8 gRibbonDescriptionPart2_Champion[] = _("OF FAME Member RIBBON"); +const u8 gRibbonDescriptionPart1_CoolContest[] = _("COOL CONTEST"); +const u8 gRibbonDescriptionPart1_BeautyContest[] = _("BEAUTY CONTEST"); +const u8 gRibbonDescriptionPart1_CuteContest[] = _("CUTE CONTEST"); +const u8 gRibbonDescriptionPart1_SmartContest[] = _("SMART CONTEST"); +const u8 gRibbonDescriptionPart1_ToughContest[] = _("TOUGH CONTEST"); +const u8 gRibbonDescriptionPart2_NormalRank[] = _("Normal Rank winner!"); +const u8 gRibbonDescriptionPart2_SuperRank[] = _("Super Rank winner!"); +const u8 gRibbonDescriptionPart2_HyperRank[] = _("Hyper Rank winner!"); +const u8 gRibbonDescriptionPart2_MasterRank[] = _("Master Rank winner!"); +const u8 gRibbonDescriptionPart1_Winning[] = _("For clearing LV50"); +const u8 gRibbonDescriptionPart2_Winning[] = _("at the BATTLE TOWER."); +const u8 gRibbonDescriptionPart1_Victory[] = _("For clearing Open Level"); +const u8 gRibbonDescriptionPart2_Victory[] = _("at the BATTLE TOWER."); +const u8 gRibbonDescriptionPart1_Artist[] = _("RIBBON for being chosen"); +const u8 gRibbonDescriptionPart2_Artist[] = _("as a super sketch model."); +const u8 gRibbonDescriptionPart1_Effort[] = _("RIBBON awarded for"); +const u8 gRibbonDescriptionPart2_Effort[] = _("being a hard worker."); + +const u8 *const gRibbonDescriptionPointers[][2] = +{ + {gRibbonDescriptionPart1_Champion, gRibbonDescriptionPart2_Champion}, + {gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_NormalRank}, + {gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_SuperRank}, + {gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_HyperRank}, + {gRibbonDescriptionPart1_CoolContest, gRibbonDescriptionPart2_MasterRank}, + {gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_NormalRank}, + {gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_SuperRank}, + {gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_HyperRank}, + {gRibbonDescriptionPart1_BeautyContest, gRibbonDescriptionPart2_MasterRank}, + {gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_NormalRank}, + {gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_SuperRank}, + {gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_HyperRank}, + {gRibbonDescriptionPart1_CuteContest, gRibbonDescriptionPart2_MasterRank}, + {gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_NormalRank}, + {gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_SuperRank}, + {gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_HyperRank}, + {gRibbonDescriptionPart1_SmartContest, gRibbonDescriptionPart2_MasterRank}, + {gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_NormalRank}, + {gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_SuperRank}, + {gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_HyperRank}, + {gRibbonDescriptionPart1_ToughContest, gRibbonDescriptionPart2_MasterRank}, + {gRibbonDescriptionPart1_Winning, gRibbonDescriptionPart2_Winning}, + {gRibbonDescriptionPart1_Victory, gRibbonDescriptionPart2_Victory}, + {gRibbonDescriptionPart1_Artist, gRibbonDescriptionPart2_Artist}, + {gRibbonDescriptionPart1_Effort, gRibbonDescriptionPart2_Effort}, +}; diff --git a/src/data/text/trainers_eye_messages.h b/src/data/text/trainers_eye_messages.h new file mode 100644 index 000000000..7b2f4ec64 --- /dev/null +++ b/src/data/text/trainers_eye_messages.h @@ -0,0 +1,550 @@ +const u8 gUnknown_08620390[] = _("Becalm fighting emotions."); +const u8 gUnknown_086203AA[] = _("Fragrant GRASS POKéMON."); +const u8 gUnknown_086203C2[] = _("Soothing aromas make the"); +const u8 gUnknown_086203DB[] = _("body and mind healthy."); +const u8 gUnknown_086203F2[] = _("I'm not very good at this."); +const u8 gUnknown_0862040D[] = _("Ruin-exploration partners."); +const u8 gUnknown_08620428[] = _("I am searching for undersea"); +const u8 gUnknown_08620444[] = _("ruins and relics."); +const u8 gUnknown_08620456[] = _("Overwhelm with power!"); +const u8 gUnknown_0862046C[] = _("Craggy ROCK POKéMON."); +const u8 gUnknown_08620481[] = _("In search of ancient lore,"); +const u8 gUnknown_0862049C[] = _("I travel the world."); +const u8 gUnknown_086204B0[] = _("I'm going to try hard!"); +const u8 gUnknown_086204C7[] = _("Good swimmer POKéMON."); +const u8 gUnknown_086204DD[] = _("I wish I could swim without"); +const u8 gUnknown_086204F9[] = _("using an inner tube."); +const u8 gUnknown_0862050E[] = _("I don't know. I'll try hard."); +const u8 gUnknown_0862052B[] = _("WATER POKéMON are buddies."); +const u8 gUnknown_08620546[] = _("It's not like I can't swim."); +const u8 gUnknown_08620562[] = _("I just like my inner tube."); +const u8 gUnknown_0862057D[] = _("We split our duties."); +const u8 gUnknown_08620592[] = _("We like friendly POKéMON."); +const u8 gUnknown_086205AC[] = _("We enjoy POKéMON together"); +const u8 gUnknown_086205C6[] = _("as sister and brother."); +const u8 gUnknown_086205DD[] = _("I finish with power moves!"); +const u8 gUnknown_086205F8[] = _("A mix of different types."); +const u8 gUnknown_08620612[] = _("I aim to become the ultimate"); +const u8 gUnknown_0862062F[] = _("TRAINER!"); +const u8 gUnknown_08620638[] = _("Exploit the foe's weakness."); +const u8 gUnknown_08620654[] = _("Balance is crucial."); +const u8 gUnknown_08620668[] = _("My goal is to become the"); +const u8 gUnknown_08620681[] = _("POKéMON CHAMPION."); +const u8 gUnknown_08620693[] = _("Upset the opponent."); +const u8 gUnknown_086206A7[] = _("Type doesn't matter."); +const u8 gUnknown_086206BC[] = _("I'm a top student at the"); +const u8 gUnknown_086206D5[] = _("TRAINER'S SCHOOL."); +const u8 gUnknown_086206E7[] = _("Slow, steady suffering."); +const u8 gUnknown_086206FF[] = _("Scary to meet at night."); +const u8 gUnknown_08620717[] = _("I see things that others"); +const u8 gUnknown_08620730[] = _("can't see..."); +const u8 gUnknown_0862073D[] = _("Anything to win."); +const u8 gUnknown_0862074E[] = _("Gorgeous type!"); +const u8 gUnknown_0862075D[] = _("I have a pool specially for"); +const u8 gUnknown_08620779[] = _("my POKéMON at home."); +const u8 gUnknown_0862078D[] = _("You'll fall under my spell!"); +const u8 gUnknown_086207A9[] = _("Mature WATER type."); +const u8 gUnknown_086207BC[] = _("I dream of cruising around"); +const u8 gUnknown_086207D7[] = _("the world on a luxury liner."); +const u8 gUnknown_086207F4[] = _("I'll lead you astray."); +const u8 gUnknown_0862080A[] = _("Cute, of course."); +const u8 gUnknown_0862081B[] = _("I love the SAFARI ZONE."); +const u8 gUnknown_08620833[] = _("I seem to end up there."); +const u8 gUnknown_0862084B[] = _("Strategy? Who needs it?"); +const u8 gUnknown_08620863[] = _("I spent big money on it!"); +const u8 gUnknown_0862087C[] = _("I, being rich, sleep in a"); +const u8 gUnknown_08620896[] = _("custom POKéMON bed."); +const u8 gUnknown_086208AA[] = _("Wrestle down with power."); +const u8 gUnknown_086208C3[] = _("Took all night to catch."); +const u8 gUnknown_086208DC[] = _("Big, burly, and buff"); +const u8 gUnknown_086208F1[] = _("POKéMON are the best..."); +const u8 gUnknown_08620909[] = _("Ram at full speed!"); +const u8 gUnknown_0862091C[] = _("Funky WATER type!"); +const u8 gUnknown_0862092E[] = _("If I can't be out swimming,"); +const u8 gUnknown_0862094A[] = _("I'll be pumping weights."); +const u8 gUnknown_08620963[] = _("Grand slam pummeling!"); +const u8 gUnknown_08620979[] = _("FIGHTING type."); +const u8 gUnknown_08620988[] = _("Not to brag, but I can bust"); +const u8 gUnknown_086209A4[] = _("ten roof tiles!"); +const u8 gUnknown_086209B4[] = _("Witness karate power!"); +const u8 gUnknown_086209CA[] = _("My partners in training!"); +const u8 gUnknown_086209E3[] = _("Let us discuss matters of"); +const u8 gUnknown_086209FD[] = _("the world with bare fists!"); +const u8 gUnknown_08620A18[] = _("Rock to stunning sounds!"); +const u8 gUnknown_08620A31[] = _("Electric-and-sound combo!"); +const u8 gUnknown_08620A4B[] = _("My compositions will shock"); +const u8 gUnknown_08620A66[] = _("you and stun you!"); +const u8 gUnknown_08620A78[] = _("I'll electrify you!"); +const u8 gUnknown_08620A8C[] = _("They're ELECTRIC!"); +const u8 gUnknown_08620A9E[] = _("I want to make people cry"); +const u8 gUnknown_08620AB8[] = _("with songs from my heart."); +const u8 gUnknown_08620AD2[] = _("Burn it all down!"); +const u8 gUnknown_08620AE4[] = _("Burn-inducing POKéMON."); +const u8 gUnknown_08620AFB[] = _("When you light a campfire,"); +const u8 gUnknown_08620B16[] = _("be sure there's some water."); +const u8 gUnknown_08620B32[] = _("Hang in and be tenacious!"); +const u8 gUnknown_08620B4C[] = _("I'll raise any POKéMON."); +const u8 gUnknown_08620B64[] = _("POKéMON raised in the wild"); +const u8 gUnknown_08620B7F[] = _("grow strong!"); +const u8 gUnknown_08620B8C[] = _("Our love lets us prevail."); +const u8 gUnknown_08620BA6[] = _("We've had them for years."); +const u8 gUnknown_08620BC0[] = _("Married 50 years, we've"); +const u8 gUnknown_08620BD8[] = _("devotedly raised POKéMON."); +const u8 gUnknown_08620BF2[] = _("Attack in waves!"); +const u8 gUnknown_08620C03[] = _("BUG POKéMON are cool."); +const u8 gUnknown_08620C19[] = _("I go into the forest every"); +const u8 gUnknown_08620C34[] = _("day to catch BUG POKéMON."); +const u8 gUnknown_08620C4E[] = _("Daze and confuse!"); +const u8 gUnknown_08620C60[] = _("Ones with weird powers."); +const u8 gUnknown_08620C78[] = _("I can see through exactly"); +const u8 gUnknown_08620C92[] = _("what you're thinking!"); +const u8 gUnknown_08620CA8[] = _("Battle at full power."); +const u8 gUnknown_08620CBE[] = _("POKéMON of many mysteries."); +const u8 gUnknown_08620CD9[] = _("When we spoke, I was really"); +const u8 gUnknown_08620CF5[] = _("using telepathy."); +const u8 gUnknown_08620D06[] = _("Calm and collected."); +const u8 gUnknown_08620D1A[] = _("POKéMON of distinction."); +const u8 gUnknown_08620D32[] = _("We enjoy a spot of tea"); +const u8 gUnknown_08620D49[] = _("every day. It's imported."); +const u8 gUnknown_08620D63[] = _("I use my head to battle."); +const u8 gUnknown_08620D7C[] = _("I love any kind of POKéMON!"); +const u8 gUnknown_08620D98[] = _("My daddy gives me spending"); +const u8 gUnknown_08620DB3[] = _("money if I ace a test."); +const u8 gUnknown_08620DCA[] = _("My knowledge rules!"); +const u8 gUnknown_08620DDE[] = _("Any smart POKéMON!"); +const u8 gUnknown_08620DF1[] = _("I want to be a POKéMON"); +const u8 gUnknown_08620E08[] = _("researcher in the future."); +const u8 gUnknown_08620E22[] = _("We talk it over first."); +const u8 gUnknown_08620E39[] = _("POKéMON that we both like."); +const u8 gUnknown_08620E54[] = _("We're senior and junior"); +const u8 gUnknown_08620E6C[] = _("students into POKéMON!"); +const u8 gUnknown_08620E83[] = _("Go for it, my dears!"); +const u8 gUnknown_08620E98[] = _("I have no likes or dislikes."); +const u8 gUnknown_08620EB5[] = _("While out shopping for"); +const u8 gUnknown_08620ECC[] = _("supper, I battle too."); +const u8 gUnknown_08620EE2[] = _("I battle with love!"); +const u8 gUnknown_08620EF6[] = _("A POKéMON raised with love!"); +const u8 gUnknown_08620F12[] = _("It's important to build"); +const u8 gUnknown_08620F2A[] = _("trust with your POKéMON."); +const u8 gUnknown_08620F43[] = _("I see through your moves!"); +const u8 gUnknown_08620F5D[] = _("The essence of FIGHTING."); +const u8 gUnknown_08620F76[] = _("I'm not ready to give way"); +const u8 gUnknown_08620F90[] = _("to the young yet!"); +const u8 gUnknown_08620FA2[] = _("Attack while defending."); +const u8 gUnknown_08620FBA[] = _("The FIGHTING type."); +const u8 gUnknown_08620FCD[] = _("Being old, I have my own"); +const u8 gUnknown_08620FE6[] = _("style of battling."); +const u8 gUnknown_08620FF9[] = _("I do what I can."); +const u8 gUnknown_0862100A[] = _("I use different types."); +const u8 gUnknown_08621021[] = _("I'm going to keep working"); +const u8 gUnknown_0862103B[] = _("until I beat a GYM LEADER."); +const u8 gUnknown_08621056[] = _("I battle patiently."); +const u8 gUnknown_0862106A[] = _("WATER POKéMON to battle!"); +const u8 gUnknown_08621083[] = _("I'm the world's only guy to"); +const u8 gUnknown_0862109F[] = _("catch a huge POKéMON!"); +const u8 gUnknown_086210B5[] = _("Exploit the environment!"); +const u8 gUnknown_086210CE[] = _("All hail the WATER type!"); +const u8 gUnknown_086210E7[] = _("I won't be beaten by some"); +const u8 gUnknown_08621101[] = _("beach bum SWIMMER!"); +const u8 gUnknown_08621114[] = _("Speed above all!"); +const u8 gUnknown_08621125[] = _("I use a speedy POKéMON."); +const u8 gUnknown_0862113D[] = _("A marathon is a challenge"); +const u8 gUnknown_08621157[] = _("against your own self."); +const u8 gUnknown_0862116E[] = _("Defense is crucial."); +const u8 gUnknown_08621182[] = _("My POKéMON is solid."); +const u8 gUnknown_08621197[] = _("I started this for dieting,"); +const u8 gUnknown_086211B3[] = _("but I got right into it."); +const u8 gUnknown_086211CC[] = _("Strike before stricken!"); +const u8 gUnknown_086211E4[] = _("A fast-running POKéMON!"); +const u8 gUnknown_086211FC[] = _("If you ran and ran, you'd"); +const u8 gUnknown_08621216[] = _("become one with the wind."); +const u8 gUnknown_08621230[] = _("All-out offensive!"); +const u8 gUnknown_08621243[] = _("WATER POKéMON rule!"); +const u8 gUnknown_08621257[] = _("I must swim over 6 miles"); +const u8 gUnknown_08621270[] = _("every day."); +const u8 gUnknown_0862127B[] = _("Push and push again!"); +const u8 gUnknown_08621290[] = _("The strength of STEEL."); +const u8 gUnknown_086212A7[] = _("If you're sweating, get"); +const u8 gUnknown_086212BF[] = _("fluids into you regularly."); +const u8 gUnknown_086212DA[] = _("Draw the power of WATER."); +const u8 gUnknown_086212F3[] = _("Toughened WATER POKéMON."); +const u8 gUnknown_0862130C[] = _("Training POKéMON is good,"); +const u8 gUnknown_08621326[] = _("but don't neglect yourself."); +const u8 gUnknown_08621342[] = _("It's about POKéMON power!"); +const u8 gUnknown_0862135C[] = _("See the power of DRAGONS!"); +const u8 gUnknown_08621376[] = _("I'll become legendary as the"); +const u8 gUnknown_08621393[] = _("strongest one day!"); +const u8 gUnknown_086213A6[] = _("I'll show you my technique!"); +const u8 gUnknown_086213C2[] = _("Elegantly wheeling BIRDS."); +const u8 gUnknown_086213DC[] = _("My BIRD POKéMON, deliver my"); +const u8 gUnknown_086213F8[] = _("love to that girl!"); +const u8 gUnknown_0862140B[] = _("You'll suffer from poison!"); +const u8 gUnknown_08621426[] = _("Poisonous POKéMON."); +const u8 gUnknown_08621439[] = _("I undertake training so"); +const u8 gUnknown_08621451[] = _("that I may become a ninja."); +const u8 gUnknown_0862146C[] = _("The first strike wins!"); +const u8 gUnknown_08621483[] = _("Speedy FIGHTING type."); +const u8 gUnknown_08621499[] = _("If my POKéMON lose,"); +const u8 gUnknown_086214AD[] = _("I'll carry on the fight!"); +const u8 gUnknown_086214C6[] = _("Go, go, my POKéMON!"); +const u8 gUnknown_086214DA[] = _("I'll raise anything."); +const u8 gUnknown_086214EF[] = _("UV rays are your skin's"); +const u8 gUnknown_08621507[] = _("enemy. Get protected."); +const u8 gUnknown_0862151D[] = _("No mercy!"); +const u8 gUnknown_08621527[] = _("Cute WATER POKéMON."); +const u8 gUnknown_0862153B[] = _("I have too many fans."); +const u8 gUnknown_08621551[] = _("I was interviewed on TV."); +const u8 gUnknown_0862156A[] = _("I think about this & that."); +const u8 gUnknown_08621585[] = _("I like all POKéMON."); +const u8 gUnknown_08621599[] = _("What lies beyond that"); +const u8 gUnknown_086215AF[] = _("yonder hill?"); +const u8 gUnknown_086215BC[] = _("We battle together!"); +const u8 gUnknown_086215D0[] = _("We train together!"); +const u8 gUnknown_086215E3[] = _("We like the same POKéMON,"); +const u8 gUnknown_086215FD[] = _("but different desserts."); +const u8 gUnknown_08621615[] = _("I force things with power!"); +const u8 gUnknown_08621630[] = _("WATER and FIGHTING types."); +const u8 gUnknown_0862164A[] = _("Seamen are rough spirits!"); +const u8 gUnknown_08621664[] = _("Any complaints?"); +const u8 gUnknown_08621674[] = _("Up for a fight anytime!"); +const u8 gUnknown_0862168C[] = _("WATER POKéMON are my faves!"); +const u8 gUnknown_086216A8[] = _("If you want to shout loud,"); +const u8 gUnknown_086216C3[] = _("suck in air with your belly!"); +const u8 gUnknown_086216E0[] = _("Protect POKéMON from harm."); +const u8 gUnknown_086216FB[] = _("I love rare POKéMON."); +const u8 gUnknown_08621710[] = _("I want to collect all the"); +const u8 gUnknown_0862172A[] = _("world's rare POKéMON."); +const u8 gUnknown_08621740[] = _("I count on power."); +const u8 gUnknown_08621752[] = _("POKéMON are my children."); +const u8 gUnknown_0862176B[] = _("It takes knowledge and"); +const u8 gUnknown_08621782[] = _("love to raise POKéMON."); +const u8 gUnknown_08621799[] = _("Full-on attack!"); +const u8 gUnknown_086217A9[] = _("Anything. I'll raise it."); +const u8 gUnknown_086217C2[] = _("I give them {POKEBLOCK}S for"); +const u8 gUnknown_086217D9[] = _("going after CONTEST titles."); +const u8 gUnknown_086217F5[] = _("I raise POKéMON with care."); +const u8 gUnknown_08621810[] = _("Fun-to-raise POKéMON."); +const u8 gUnknown_08621826[] = _("Treat every POKéMON you"); +const u8 gUnknown_0862183E[] = _("meet with respect."); +const u8 gUnknown_08621851[] = _("I believe in my POKéMON."); +const u8 gUnknown_0862186A[] = _("I like strong POKéMON."); +const u8 gUnknown_08621881[] = _("I'm training for rescue"); +const u8 gUnknown_08621899[] = _("work with my POKéMON."); +const u8 gUnknown_086218AF[] = _("Attack in waves!"); +const u8 gUnknown_086218C0[] = _("I use different types."); +const u8 gUnknown_086218D7[] = _("Those who destroy nature"); +const u8 gUnknown_086218F0[] = _("must never be forgiven!"); +const u8 gUnknown_08621908[] = _("I'll show you some guts!"); +const u8 gUnknown_08621921[] = _("Cute POKéMON are my faves!"); +const u8 gUnknown_0862193C[] = _("After a battle, I always"); +const u8 gUnknown_08621955[] = _("bathe with my POKéMON."); +const u8 gUnknown_0862196C[] = _("Lightning-fast attack!"); +const u8 gUnknown_08621983[] = _("BUG POKéMON are number 1!"); +const u8 gUnknown_0862199D[] = _("If you want to catch BUG"); +const u8 gUnknown_086219B6[] = _("POKéMON, wake up early."); +const u8 gUnknown_086219CE[] = _("I battle with power."); +const u8 gUnknown_086219E3[] = _("Hard-bodied POKéMON."); +const u8 gUnknown_086219F8[] = _("I've been planning a month"); +const u8 gUnknown_08621A13[] = _("for today's hike."); +const u8 gUnknown_08621A25[] = _("I like it hot!"); +const u8 gUnknown_08621A34[] = _("Hot POKéMON!"); +const u8 gUnknown_08621A41[] = _("As much as I love POKéMON,"); +const u8 gUnknown_08621A5C[] = _("I surely like hiking!"); +const u8 gUnknown_08621A72[] = _("Lovey-dovey strategy!"); +const u8 gUnknown_08621A88[] = _("Lovey-dovey POKéMON!"); +const u8 gUnknown_08621A9D[] = _("We're lovey-dovey!"); +const u8 gUnknown_08621AB0[] = _("Forever lovey-dovey!"); +const u8 gUnknown_08621AC5[] = _("We let it all hang out."); +const u8 gUnknown_08621ADD[] = _("The 1st POKéMON I caught."); +const u8 gUnknown_08621AF7[] = _("POKéMON and I have grown"); +const u8 gUnknown_08621B10[] = _("stronger together."); +const u8 gUnknown_08621B23[] = _("ROCK-type power attack."); +const u8 gUnknown_08621B3B[] = _("I prefer rock-hard POKéMON."); +const u8 gUnknown_08621B57[] = _("A LEADER of a big GYM bears"); +const u8 gUnknown_08621B73[] = _("a lot of responsibility."); +const u8 gUnknown_08621B8C[] = _("Direct physical action!"); +const u8 gUnknown_08621BA4[] = _("FIGHTING POKéMON rule!"); +const u8 gUnknown_08621BBB[] = _("The world awaits me as the"); +const u8 gUnknown_08621BD6[] = _("next big wave!"); +const u8 gUnknown_08621BE5[] = _("I choose to electrify."); +const u8 gUnknown_08621BFC[] = _("Get shocked by electricity!"); +const u8 gUnknown_08621C18[] = _("One must never throw a"); +const u8 gUnknown_08621C2F[] = _("match. Even I must not."); +const u8 gUnknown_08621C47[] = _("Battle aggressively."); +const u8 gUnknown_08621C5C[] = _("Burn with passion!"); +const u8 gUnknown_08621C6F[] = _("Completely wash away daily"); +const u8 gUnknown_08621C8A[] = _("fatigue in hot springs!"); +const u8 gUnknown_08621CA2[] = _("I flexibly adapt my style."); +const u8 gUnknown_08621CBD[] = _("Grown in a balanced manner."); +const u8 gUnknown_08621CD9[] = _("I walk the 30 minutes from"); +const u8 gUnknown_08621CF4[] = _("home to here every day."); +const u8 gUnknown_08621D0C[] = _("I take advantage of speed."); +const u8 gUnknown_08621D27[] = _("Graceful sky dancers."); +const u8 gUnknown_08621D3D[] = _("The ultimate would be to"); +const u8 gUnknown_08621D56[] = _("live as one with nature."); +const u8 gUnknown_08621D6F[] = _("We battle in cooperation."); +const u8 gUnknown_08621D89[] = _("Always friendly POKéMON."); +const u8 gUnknown_08621DA2[] = _("Papa has trouble telling"); +const u8 gUnknown_08621DBB[] = _("the two of us apart!"); +const u8 gUnknown_08621DD0[] = _("I use splendid waterpower."); +const u8 gUnknown_08621DEB[] = _("POKéMON of elegance!"); +const u8 gUnknown_08621E00[] = _("The adulation of beautiful"); +const u8 gUnknown_08621E1B[] = _("ladies fills me with energy!"); +const u8 gUnknown_08621E38[] = _("Offense over defense!"); +const u8 gUnknown_08621E4E[] = _("The DARK side's beauties."); +const u8 gUnknown_08621E68[] = _("They said I was a punk, but"); +const u8 gUnknown_08621E84[] = _("I'm one of the ELITE FOUR!"); +const u8 gUnknown_08621E9F[] = _("Confuse and confound."); +const u8 gUnknown_08621EB5[] = _("There's nothing definite."); +const u8 gUnknown_08621ECF[] = _("I wonder how my grandma at"); +const u8 gUnknown_08621EEA[] = _("MT. PYRE is doing?"); +const u8 gUnknown_08621EFD[] = _("I use items for help."); +const u8 gUnknown_08621F13[] = _("Flaming passion in icy cold!"); +const u8 gUnknown_08621F30[] = _("The ICE type can be better"); +const u8 gUnknown_08621F4B[] = _("trained in this hot land."); +const u8 gUnknown_08621F65[] = _("Harness strong abilities."); +const u8 gUnknown_08621F7F[] = _("The raw power of DRAGONS!"); +const u8 gUnknown_08621F99[] = _("I dedicate myself to the"); +const u8 gUnknown_08621FB2[] = _("POKéMON that saved me."); +const u8 gUnknown_08621FC9[] = _("Dignity and respect."); +const u8 gUnknown_08621FDE[] = _("I prefer POKéMON of grace."); +const u8 gUnknown_08621FF9[] = _("I represent beauty as"); +const u8 gUnknown_0862200F[] = _("well as intelligence."); + +const u8 *const gUnknown_08622028[][4] = +{ + { + gUnknown_08620390, gUnknown_086203AA, gUnknown_086203C2, gUnknown_086203DB + }, + { + gUnknown_086203F2, gUnknown_0862040D, gUnknown_08620428, gUnknown_08620444 + }, + { + gUnknown_08620456, gUnknown_0862046C, gUnknown_08620481, gUnknown_0862049C + }, + { + gUnknown_086204B0, gUnknown_086204C7, gUnknown_086204DD, gUnknown_086204F9 + }, + { + gUnknown_0862050E, gUnknown_0862052B, gUnknown_08620546, gUnknown_08620562 + }, + { + gUnknown_0862057D, gUnknown_08620592, gUnknown_086205AC, gUnknown_086205C6 + }, + { + gUnknown_086205DD, gUnknown_086205F8, gUnknown_08620612, gUnknown_0862062F + }, + { + gUnknown_08620638, gUnknown_08620654, gUnknown_08620668, gUnknown_08620681 + }, + { + gUnknown_08620693, gUnknown_086206A7, gUnknown_086206BC, gUnknown_086206D5 + }, + { + gUnknown_086206E7, gUnknown_086206FF, gUnknown_08620717, gUnknown_08620730 + }, + { + gUnknown_0862073D, gUnknown_0862074E, gUnknown_0862075D, gUnknown_08620779 + }, + { + gUnknown_0862078D, gUnknown_086207A9, gUnknown_086207BC, gUnknown_086207D7 + }, + { + gUnknown_086207F4, gUnknown_0862080A, gUnknown_0862081B, gUnknown_08620833 + }, + { + gUnknown_0862084B, gUnknown_08620863, gUnknown_0862087C, gUnknown_08620896 + }, + { + gUnknown_086208AA, gUnknown_086208C3, gUnknown_086208DC, gUnknown_086208F1 + }, + { + gUnknown_08620909, gUnknown_0862091C, gUnknown_0862092E, gUnknown_0862094A + }, + { + gUnknown_08620963, gUnknown_08620979, gUnknown_08620988, gUnknown_086209A4 + }, + { + gUnknown_086209B4, gUnknown_086209CA, gUnknown_086209E3, gUnknown_086209FD + }, + { + gUnknown_08620A18, gUnknown_08620A31, gUnknown_08620A4B, gUnknown_08620A66 + }, + { + gUnknown_08620A78, gUnknown_08620A8C, gUnknown_08620A9E, gUnknown_08620AB8 + }, + { + gUnknown_08620AD2, gUnknown_08620AE4, gUnknown_08620AFB, gUnknown_08620B16 + }, + { + gUnknown_08620B32, gUnknown_08620B4C, gUnknown_08620B64, gUnknown_08620B7F + }, + { + gUnknown_08620B8C, gUnknown_08620BA6, gUnknown_08620BC0, gUnknown_08620BD8 + }, + { + gUnknown_08620BF2, gUnknown_08620C03, gUnknown_08620C19, gUnknown_08620C34 + }, + { + gUnknown_08620C4E, gUnknown_08620C60, gUnknown_08620C78, gUnknown_08620C92 + }, + { + gUnknown_08620CA8, gUnknown_08620CBE, gUnknown_08620CD9, gUnknown_08620CF5 + }, + { + gUnknown_08620D06, gUnknown_08620D1A, gUnknown_08620D32, gUnknown_08620D49 + }, + { + gUnknown_08620D63, gUnknown_08620D7C, gUnknown_08620D98, gUnknown_08620DB3 + }, + { + gUnknown_08620DCA, gUnknown_08620DDE, gUnknown_08620DF1, gUnknown_08620E08 + }, + { + gUnknown_08620E22, gUnknown_08620E39, gUnknown_08620E54, gUnknown_08620E6C + }, + { + gUnknown_08620E83, gUnknown_08620E98, gUnknown_08620EB5, gUnknown_08620ECC + }, + { + gUnknown_08620EE2, gUnknown_08620EF6, gUnknown_08620F12, gUnknown_08620F2A + }, + { + gUnknown_08620F43, gUnknown_08620F5D, gUnknown_08620F76, gUnknown_08620F90 + }, + { + gUnknown_08620FA2, gUnknown_08620FBA, gUnknown_08620FCD, gUnknown_08620FE6 + }, + { + gUnknown_08620FF9, gUnknown_0862100A, gUnknown_08621021, gUnknown_0862103B + }, + { + gUnknown_08621056, gUnknown_0862106A, gUnknown_08621083, gUnknown_0862109F + }, + { + gUnknown_086210B5, gUnknown_086210CE, gUnknown_086210E7, gUnknown_08621101 + }, + { + gUnknown_08621114, gUnknown_08621125, gUnknown_0862113D, gUnknown_08621157 + }, + { + gUnknown_0862116E, gUnknown_08621182, gUnknown_08621197, gUnknown_086211B3 + }, + { + gUnknown_086211CC, gUnknown_086211E4, gUnknown_086211FC, gUnknown_08621216 + }, + { + gUnknown_08621230, gUnknown_08621243, gUnknown_08621257, gUnknown_08621270 + }, + { + gUnknown_0862127B, gUnknown_08621290, gUnknown_086212A7, gUnknown_086212BF + }, + { + gUnknown_086212DA, gUnknown_086212F3, gUnknown_0862130C, gUnknown_08621326 + }, + { + gUnknown_08621342, gUnknown_0862135C, gUnknown_08621376, gUnknown_08621393 + }, + { + gUnknown_086213A6, gUnknown_086213C2, gUnknown_086213DC, gUnknown_086213F8 + }, + { + gUnknown_0862140B, gUnknown_08621426, gUnknown_08621439, gUnknown_08621451 + }, + { + gUnknown_0862146C, gUnknown_08621483, gUnknown_08621499, gUnknown_086214AD + }, + { + gUnknown_086214C6, gUnknown_086214DA, gUnknown_086214EF, gUnknown_08621507 + }, + { + gUnknown_0862151D, gUnknown_08621527, gUnknown_0862153B, gUnknown_08621551 + }, + { + gUnknown_0862156A, gUnknown_08621585, gUnknown_08621599, gUnknown_086215AF + }, + { + gUnknown_086215BC, gUnknown_086215D0, gUnknown_086215E3, gUnknown_086215FD + }, + { + gUnknown_08621615, gUnknown_08621630, gUnknown_0862164A, gUnknown_08621664 + }, + { + gUnknown_08621674, gUnknown_0862168C, gUnknown_086216A8, gUnknown_086216C3 + }, + { + gUnknown_086216E0, gUnknown_086216FB, gUnknown_08621710, gUnknown_0862172A + }, + { + gUnknown_08621740, gUnknown_08621752, gUnknown_0862176B, gUnknown_08621782 + }, + { + gUnknown_08621799, gUnknown_086217A9, gUnknown_086217C2, gUnknown_086217D9 + }, + { + gUnknown_086217F5, gUnknown_08621810, gUnknown_08621826, gUnknown_0862183E + }, + { + gUnknown_08621851, gUnknown_0862186A, gUnknown_08621881, gUnknown_08621899 + }, + { + gUnknown_086218AF, gUnknown_086218C0, gUnknown_086218D7, gUnknown_086218F0 + }, + { + gUnknown_08621908, gUnknown_08621921, gUnknown_0862193C, gUnknown_08621955 + }, + { + gUnknown_0862196C, gUnknown_08621983, gUnknown_0862199D, gUnknown_086219B6 + }, + { + gUnknown_086219CE, gUnknown_086219E3, gUnknown_086219F8, gUnknown_08621A13 + }, + { + gUnknown_08621A25, gUnknown_08621A34, gUnknown_08621A41, gUnknown_08621A5C + }, + { + gUnknown_08621A72, gUnknown_08621A88, gUnknown_08621A9D, gUnknown_08621AB0 + }, + { + gUnknown_08621AC5, gUnknown_08621ADD, gUnknown_08621AF7, gUnknown_08621B10 + }, + { + gUnknown_08621B23, gUnknown_08621B3B, gUnknown_08621B57, gUnknown_08621B73 + }, + { + gUnknown_08621B8C, gUnknown_08621BA4, gUnknown_08621BBB, gUnknown_08621BD6 + }, + { + gUnknown_08621BE5, gUnknown_08621BFC, gUnknown_08621C18, gUnknown_08621C2F + }, + { + gUnknown_08621C47, gUnknown_08621C5C, gUnknown_08621C6F, gUnknown_08621C8A + }, + { + gUnknown_08621CA2, gUnknown_08621CBD, gUnknown_08621CD9, gUnknown_08621CF4 + }, + { + gUnknown_08621D0C, gUnknown_08621D27, gUnknown_08621D3D, gUnknown_08621D56 + }, + { + gUnknown_08621D6F, gUnknown_08621D89, gUnknown_08621DA2, gUnknown_08621DBB + }, + { + gUnknown_08621DD0, gUnknown_08621DEB, gUnknown_08621E00, gUnknown_08621E1B + }, + { + gUnknown_08621E38, gUnknown_08621E4E, gUnknown_08621E68, gUnknown_08621E84 + }, + { + gUnknown_08621E9F, gUnknown_08621EB5, gUnknown_08621ECF, gUnknown_08621EEA + }, + { + gUnknown_08621EFD, gUnknown_08621F13, gUnknown_08621F30, gUnknown_08621F4B + }, + { + gUnknown_08621F65, gUnknown_08621F7F, gUnknown_08621F99, gUnknown_08621FB2 + }, + { + gUnknown_08621FC9, gUnknown_08621FDE, gUnknown_08621FF9, gUnknown_0862200F + }, +}; diff --git a/src/pokenav_unk_10.c b/src/pokenav_unk_10.c index dd91e930a..6fa11853c 100644 --- a/src/pokenav_unk_10.c +++ b/src/pokenav_unk_10.c @@ -60,8 +60,77 @@ u32 sub_81D0954(void); void sub_81D1500(struct Pokenav10Struct *structPtr); bool32 sub_81D1524(struct Pokenav10Struct *structPtr); void sub_81D1538(struct Sprite *sprite); +u32 sub_81D0C84(int); +u32 sub_81D0D2C(int); +u32 sub_81D0D8C(int); +u32 sub_81D0E00(int); +u32 sub_81D0C54(int); + +const u8 gUnknown_086237F8[][4] = +{ + {1, 1, 0, 0}, + {3, 4, 1, 0}, + {3, 4, 5, 0}, + {3, 4, 9, 0}, + {3, 4, 13, 0}, + {3, 4, 17, 0}, + {1, 1, 21, 0}, + {1, 1, 22, 0}, + {1, 1, 23, 0}, + {1, 1, 24, 0}, + {1, 1, 25, 1}, + {1, 1, 26, 1}, + {1, 1, 27, 1}, + {1, 1, 28, 1}, + {1, 1, 29, 1}, + {1, 1, 30, 1}, + {1, 1, 31, 1} +}; + +#include "data/text/ribbon_descriptions.h" +#include "data/text/gift_ribbon_descriptions.h" + +const u16 gUnknown_08623FF8[] = INCBIN_U16("graphics/pokenav/ribbons_icon1.gbapal"); +const u16 gUnknown_08624018[] = INCBIN_U16("graphics/pokenav/ribbons_icon2.gbapal"); +const u16 gUnknown_08624038[] = INCBIN_U16("graphics/pokenav/ribbons_icon3.gbapal"); +const u16 gUnknown_08624058[] = INCBIN_U16("graphics/pokenav/ribbons_icon4.gbapal"); +const u16 gUnknown_08624078[] = INCBIN_U16("graphics/pokenav/ribbons_icon5.gbapal"); +const u16 gUnknown_08624098[] = INCBIN_U16("graphics/pokenav/8624098.gbapal"); +const u32 gUnknown_086240B8[] = INCBIN_U32("graphics/pokenav/ribbons_icon.4bpp.lz"); +const u32 gUnknown_08624280[] = INCBIN_U32("graphics/pokenav/ribbons_icon_big.4bpp.lz"); + +const struct BgTemplate gUnknown_08624B98[2] = +{ + { + .bg = 1, + .charBaseIndex = 3, + .mapBaseIndex = 0x07, + .screenSize = 0, + .paletteMode = 0, + .priority = 1, + .baseTile = 0 + }, + { + .bg = 2, + .charBaseIndex = 1, + .mapBaseIndex = 0x06, + .screenSize = 0, + .paletteMode = 0, + .priority = 2, + .baseTile = 0 + } +}; + +const LoopedTask gUnknown_08624BA0[] = +{ + NULL, + sub_81D0C84, + sub_81D0D2C, + sub_81D0D8C, + sub_81D0E00, + sub_81D0C54 +}; -// code static const struct WindowTemplate gUnknown_08624BB8 = { .bg = 2, diff --git a/src/pokenav_unk_2.c b/src/pokenav_unk_2.c index 3aec4685e..09416c31f 100644 --- a/src/pokenav_unk_2.c +++ b/src/pokenav_unk_2.c @@ -1,6 +1,261 @@ #include "global.h" +#include "bg.h" #include "gym_leader_rematch.h" #include "pokenav.h" +#include "sprite.h" +#include "window.h" +#include "strings.h" +#include "scanline_effect.h" + +extern const u32 gPokenavOptions_Gfx[]; +extern const u16 gPokenavOptions_Pal[]; + +const u16 gUnknown_0861FC78[] = INCBIN_U16("graphics/pokenav/bg.gbapal"); +const u32 gUnknown_0861FC98[] = INCBIN_U32("graphics/pokenav/bg.4bpp.lz"); +const u32 gUnknown_0861FCAC[] = INCBIN_U32("graphics/pokenav/bg.bin.lz"); +const u16 gUnknown_0861FD4C[] = INCBIN_U16("graphics/pokenav/outline.gbapal"); +const u32 gUnknown_0861FD6C[] = INCBIN_U32("graphics/pokenav/outline.4bpp.lz"); +const u32 gUnknown_0861FFF4[] = INCBIN_U32("graphics/pokenav/outline_map.bin.lz"); +const u16 gUnknown_08620104[] = INCBIN_U16("graphics/pokenav/blue_light.gbapal"); +const u32 gUnknown_08620124[] = INCBIN_U32("graphics/pokenav/blue_light.4bpp.lz"); + +const struct BgTemplate gUnknown_08620194[3] = +{ + { + .bg = 1, + .charBaseIndex = 1, + .mapBaseIndex = 0x0F, + .screenSize = 0, + .paletteMode = 0, + .priority = 1, + .baseTile = 0 + }, + { + .bg = 2, + .charBaseIndex = 2, + .mapBaseIndex = 0x17, + .screenSize = 0, + .paletteMode = 0, + .priority = 2, + .baseTile = 0 + }, + { + .bg = 3, + .charBaseIndex = 3, + .mapBaseIndex = 0x1F, + .screenSize = 0, + .paletteMode = 0, + .priority = 3, + .baseTile = 0 + } +}; + +u32 sub_81C9C6C(int); +u32 sub_81C9CA8(int); +u32 sub_81C9D44(int); +u32 sub_81C9DD8(int); +u32 sub_81C9E58(int); +u32 sub_81C9EC8(int); +u32 sub_81C9EF8(int); +u32 sub_81C9F28(int); + +u32 (*const gUnknown_086201A0[])(int) = +{ + NULL, + sub_81C9C6C, + sub_81C9CA8, + sub_81C9D44, + sub_81C9DD8, + sub_81C9E58, + sub_81C9EC8, + sub_81C9EF8, + sub_81C9F28 +}; + +const struct CompressedSpriteSheet gUnknown_086201C4[] = +{ + { + .data = gPokenavOptions_Gfx, + .size = 0x3400, + .tag = 0x0003 + }, + { + .data = gUnknown_08620124, + .size = 0x0100, + .tag = 0x0001 + } +}; + + const struct SpritePalette gUnknown_086201D4[] = + { + {gPokenavOptions_Pal + 0x00, 4}, + {gPokenavOptions_Pal + 0x10, 5}, + {gPokenavOptions_Pal + 0x20, 6}, + {gPokenavOptions_Pal + 0x30, 7}, + {gPokenavOptions_Pal + 0x40, 8}, + {gUnknown_08620104, 3}, + {} +}; + +const u16 gUnknown_0862020C[] = {0, 0}; +const u16 gUnknown_08620210[] = {0x20, 1}; +const u16 gUnknown_08620214[] = {0x40, 4}; +const u16 gUnknown_08620218[] = {0x60, 2}; +const u16 gUnknown_0862021C[] = {0x80, 3}; +const u16 gUnknown_08620220[] = {0xA0, 1}; +const u16 gUnknown_08620224[] = {0xC0, 1}; +const u16 gUnknown_08620228[] = {0xE0, 4}; +const u16 gUnknown_0862022C[] = {0x100, 1}; +const u16 gUnknown_08620230[] = {0x120, 2}; +const u16 gUnknown_08620234[] = {0x140, 0}; +const u16 gUnknown_08620238[] = {0x160, 0}; +const u16 gUnknown_0862023C[] = {0x180, 3}; + +struct UnkStruct_08620240 +{ + u16 unk0; + u16 unk2; + const u16 *unk4[6]; +}; + +const struct UnkStruct_08620240 gUnknown_08620240[5] = +{ + { + 0x2A, + 0x14, + {gUnknown_0862020C, gUnknown_08620210, gUnknown_0862021C, NULL, NULL, NULL} + }, + { + 0x2A, + 0x14, + {gUnknown_0862020C, gUnknown_08620210, gUnknown_08620214, gUnknown_0862021C, NULL, NULL} + }, + { + 0x2A, + 0x14, + {gUnknown_0862020C, gUnknown_08620210, gUnknown_08620214, gUnknown_08620218, gUnknown_0862021C, NULL} + }, + { + 0x38, + 0x14, + {gUnknown_08620220, gUnknown_08620224, gUnknown_0862023C, NULL, NULL, NULL} + }, + { + 0x28, + 0x10, + {gUnknown_08620228, gUnknown_0862022C, gUnknown_08620230, gUnknown_08620234, gUnknown_08620238, gUnknown_0862023C} + }, +}; + +const struct WindowTemplate gUnknown_086202CC = +{ + .bg = 1, + .tilemapLeft = 3, + .tilemapTop = 17, + .width = 0x18, + .height = 0x2, + .paletteNum = 1, + .baseBlock = 8 +}; + +const u8 *const gUnknown_086202D4[] = +{ + gUnknown_085EBCC5, + gUnknown_085EBCE8, + gUnknown_085EBD01, + gUnknown_085EBD1C, + gUnknown_085EBD34, + gUnknown_085EBD83, + gUnknown_085EBDA2, + gUnknown_085EBDBF, + gUnknown_085EBDDB, + gUnknown_085EBDEE, + gUnknown_085EBE06, + gUnknown_085EBE19, + gUnknown_085EBE2D, + gUnknown_085EBE41 +}; + +const u8 gUnknown_0862030C[] = {6, 8, 7}; + +const u8 gUnknown_0862030F[] = {6, 8, 7, 0, 0}; + +const struct OamData gUnknown_08620314 = +{ + .y = 0, + .affineMode = 0, + .objMode = 0, + .bpp = 0, + .shape = SPRITE_SHAPE(32x16), + .x = 0, + .size = SPRITE_SIZE(32x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const union AffineAnimCmd gUnknown_0862031C[] = +{ + AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), + AFFINEANIMCMD_END, +}; + +const union AffineAnimCmd gUnknown_0862032C[] = +{ + AFFINEANIMCMD_FRAME(0x100, 0x100, 0, 0), + AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 0x12), + AFFINEANIMCMD_END, +}; + +const union AffineAnimCmd *const gUnknown_08620344[] = +{ + gUnknown_0862031C, + gUnknown_0862032C +}; + +const struct SpriteTemplate gUnknown_0862034C = +{ + .tileTag = 3, + .paletteTag = 4, + .oam = &gUnknown_08620314, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gUnknown_08620344, + .callback = SpriteCallbackDummy, +}; + +const struct OamData gUnknown_08620364 = +{ + .y = 0, + .affineMode = 0, + .objMode = 0, + .bpp = 0, + .shape = SPRITE_SHAPE(32x16), + .x = 0, + .size = SPRITE_SIZE(32x16), + .tileNum = 0, + .priority = 2, + .paletteNum = 0, +}; + +const struct SpriteTemplate gUnknown_0862036C = +{ + .tileTag = 1, + .paletteTag = 3, + .oam = &gUnknown_08620364, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy, +}; + +const struct ScanlineEffectParams gUnknown_08620384 = +{ + (void *)REG_ADDR_WIN0H, + ((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1, + 1, + 0 +}; bool32 sub_81C98D4(void) { diff --git a/src/pokenav_unk_3.c b/src/pokenav_unk_3.c index d7afada49..47eb6ef3d 100755 --- a/src/pokenav_unk_3.c +++ b/src/pokenav_unk_3.c @@ -37,9 +37,10 @@ static u32 sub_81CACF8(struct Pokenav3Struct *); static u32 sub_81CAD20(s32); static bool32 sub_81CB1D0(void); -extern const u8 gUnknown_08622508[]; -extern const u8 gUnknown_0862250A[]; -extern const u8 *const gUnknown_08622028[][4]; +#include "data/text/trainers_eye_messages.h" + +const u8 gUnknown_08622508[] = {0, 2}; +const u8 gUnknown_0862250A[] = {0, 1, 2, 0, 0, 0}; bool32 sub_81CAAE8(void) { diff --git a/src/pokenav_unk_4.c b/src/pokenav_unk_4.c index cd9651580..34c529fc5 100755 --- a/src/pokenav_unk_4.c +++ b/src/pokenav_unk_4.c @@ -93,27 +93,191 @@ static void sub_81CC330(struct Pokenav4Struct *); static struct Sprite *sub_81CC370(void); static void sub_81CC440(struct Sprite *sprite); static void sub_81CC4A4(struct Sprite *sprite); +void sub_81CC34C(struct Sprite *sprite); +u32 sub_81CB510(int); +u32 sub_81CB588(int); +u32 sub_81CB600(int); +u32 sub_81CB678(int); +u32 sub_81CB6F0(int); +u32 sub_81CB734(int); +u32 sub_81CB75C(int); +u32 sub_81CB7A0(int); +u32 sub_81CB824(int); +u32 sub_81CB888(int); +u32 sub_81CB93C(int); +u32 sub_81CBAD4(int); +u32 sub_81CB9C8(int); +u32 sub_81CBA68(int); +u32 sub_81CBB74(int); -extern const LoopedTask gUnknown_08622798[]; -extern const struct BgTemplate gUnknown_0862278C[3]; -extern const u16 gUnknown_08622510[]; -extern const u32 gUnknown_08622530[]; -extern const u32 gUnknown_08622760[]; -extern const u16 gUnknown_08622700[]; -extern const u16 gUnknown_08622720[]; -extern const u8 gUnknown_086225D4[]; -extern const u16 gUnknown_086226E0[]; -extern const struct BgTemplate gUnknown_08622794; -extern const struct WindowTemplate gUnknown_086227D8; -extern const struct WindowTemplate gUnknown_086227E0; -extern const u8 *const gUnknown_086227E8[]; extern const struct WindowTemplate gUnknown_08622808; -extern const u8 gUnknown_086227F4[]; -extern const struct CompressedSpriteSheet gUnknown_08622810[1]; -extern const struct SpritePalette gUnknown_08622818[]; extern const struct SpriteTemplate gUnknown_08622830; extern const struct SpriteTemplate gUnknown_08622850; +const u16 gUnknown_08622510[] = INCBIN_U16("graphics/pokenav/ui_matchcall.gbapal"); +const u32 gUnknown_08622530[] = INCBIN_U32("graphics/pokenav/ui_matchcall.4bpp.lz"); +const u32 gUnknown_086225D4[] = INCBIN_U32("graphics/pokenav/ui_matchcall.bin.lz"); +const u16 gUnknown_08622698[] = INCBIN_U16("graphics/pokenav/arrow2.gbapal"); +const u32 gUnknown_086226B8[] = INCBIN_U32("graphics/pokenav/arrow2.4bpp.lz"); +const u16 gUnknown_086226E0[] = INCBIN_U16("graphics/pokenav/86226E0.gbapal"); +const u16 gUnknown_08622700[] = INCBIN_U16("graphics/pokenav/8622700.gbapal"); +const u16 gUnknown_08622720[] = INCBIN_U16("graphics/pokenav/pokeball_matchcall.gbapal"); +const u32 gUnknown_08622760[] = INCBIN_U32("graphics/pokenav/pokeball_matchcall.4bpp.lz"); + +const struct BgTemplate gUnknown_0862278C[3] = +{ + { + .bg = 1, + .charBaseIndex = 3, + .mapBaseIndex = 0x1F, + .screenSize = 0, + .paletteMode = 0, + .priority = 1, + .baseTile = 0 + }, + { + .bg = 2, + .charBaseIndex = 2, + .mapBaseIndex = 0x06, + .screenSize = 0, + .paletteMode = 0, + .priority = 2, + .baseTile = 0x80 + }, + { + .bg = 3, + .charBaseIndex = 1, + .mapBaseIndex = 0x07, + .screenSize = 0, + .paletteMode = 0, + .priority = 3, + .baseTile = 0 + } +}; + +const LoopedTask gUnknown_08622798[] = +{ + NULL, + sub_81CB510, + sub_81CB588, + sub_81CB600, + sub_81CB678, + sub_81CB6F0, + sub_81CB734, + sub_81CB75C, + sub_81CB7A0, + sub_81CB824, + sub_81CB888, + sub_81CB93C, + sub_81CBAD4, + sub_81CB9C8, + sub_81CBA68, + sub_81CBB74 +}; + +const struct WindowTemplate gUnknown_086227D8 = +{ + .bg = 2, + .tilemapLeft = 0, + .tilemapTop = 5, + .width = 11, + .height = 2, + .paletteNum = 2, + .baseBlock = 16 +}; + +const struct WindowTemplate gUnknown_086227E0 = +{ + .bg = 2, + .tilemapLeft = 0, + .tilemapTop = 9, + .width = 11, + .height = 8, + .paletteNum = 2, + .baseBlock = 38 +}; + +const u8 *const gUnknown_086227E8[] = +{ + gUnknown_085EC017, + gUnknown_085EC01C, + gUnknown_085EC022 +}; + +const u8 gUnknown_086227F4[] = _("·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·{PAUSE 0x04}·\p"); + +const struct WindowTemplate gUnknown_08622808 = +{ + .bg = 1, + .tilemapLeft = 1, + .tilemapTop = 12, + .width = 0x1C, + .height = 0x04, + .paletteNum = 1, + .baseBlock = 10 +}; + +const struct CompressedSpriteSheet gUnknown_08622810[1] = +{ + {gUnknown_086226B8, 0x40, 7} +}; + +const struct SpritePalette gUnknown_08622818[] = +{ + {gUnknown_08622698, 12}, + {} +}; + +const struct OamData gUnknown_08622828 = +{ + .y = 0, + .affineMode = 0, + .objMode = 0, + .bpp = 0, + .shape = SPRITE_SHAPE(8x16), + .x = 0, + .size = SPRITE_SIZE(8x16), + .tileNum = 0, + .priority = 1, + .paletteNum = 0, +}; + +const struct SpriteTemplate gUnknown_08622830 = +{ + .tileTag = 7, + .paletteTag = 12, + .oam = &gUnknown_08622828, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = sub_81CC34C, +}; + +const struct OamData gUnknown_08622848 = +{ + .y = 0, + .affineMode = 0, + .objMode = 0, + .bpp = 0, + .shape = SPRITE_SHAPE(64x64), + .x = 0, + .size = SPRITE_SIZE(64x64), + .tileNum = 0, + .priority = 1, + .paletteNum = 0, +}; + +const struct SpriteTemplate gUnknown_08622850 = +{ + .tileTag = 8, + .paletteTag = 13, + .oam = &gUnknown_08622848, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = SpriteCallbackDummy, +}; + bool32 sub_81CB260(void) { struct Pokenav4Struct *state = AllocSubstruct(6, sizeof(struct Pokenav4Struct)); @@ -718,7 +882,7 @@ static void sub_81CBBB8(void) template.unkE = 7; template.unk10 = sub_81CB050; template.unk14 = sub_81CBCEC; - sub_81C81D4(&gUnknown_08622794, &template, 2); + sub_81C81D4(&gUnknown_0862278C[2], &template, 2); CreateTask(sub_81CBC64, 7); } diff --git a/src/pokenav_unk_5.c b/src/pokenav_unk_5.c index 5f24fd07f..bf2f287b8 100755 --- a/src/pokenav_unk_5.c +++ b/src/pokenav_unk_5.c @@ -32,11 +32,11 @@ struct Pokenav5Struct_2 u8 cityZoomPics[22][0xC8]; }; -struct CityZoomPic +struct CityMapEntry { u16 mapSecId; - u16 unk2; - const u32 *data; + u16 index; + const u32 *tilemap; }; static u32 sub_81CC568(struct Pokenav5Struct *); @@ -61,17 +61,110 @@ static void sub_81CCDE8(struct Pokenav5Struct_2 *, int, int); static void sub_81CCFA4(int); static void sub_81CCC9C(u8 taskId); static void sub_81CCF78(void); +void sub_81CCEF4(struct Sprite *sprite); +u32 sub_81CC848(int); +u32 sub_81CC878(int); +u32 sub_81CC8D8(int); +u32 sub_81CC95C(int); -extern const LoopedTask gUnknown_086230E4[]; -extern const struct BgTemplate gUnknown_086230D8[2]; -extern const struct CompressedSpriteSheet gUnknown_086230F8[1]; -extern const struct SpritePalette gUnknown_08623100[]; -extern const struct WindowTemplate gUnknown_08623110; -extern const u32 gUnknown_08622888[]; -extern const u16 gUnknown_08622868[]; extern const u16 gHoennMapZoomIcons_Pal[]; -extern const struct CityZoomPic gUnknown_08623118[22]; extern const struct SpriteTemplate gUnknown_086231D0; +extern const u32 gHoennMapZoomIcons_Gfx[]; + +const u16 gUnknown_08622868[] = INCBIN_U16("graphics/pokenav/8622868.gbapal"); +const u32 gUnknown_08622888[] = INCBIN_U32("graphics/pokenav/zoom_tiles.4bpp.lz"); + +#include "data/region_map/city_map_tilemaps.h" + + +const struct BgTemplate gUnknown_086230D8[3] = +{ + { + .bg = 1, + .charBaseIndex = 1, + .mapBaseIndex = 0x1F, + .screenSize = 0, + .paletteMode = 0, + .priority = 1, + .baseTile = 0 + }, + { + .bg = 2, + .charBaseIndex = 2, + .mapBaseIndex = 0x06, + .screenSize = 0, + .paletteMode = 0, + .priority = 2, + .baseTile = 0 + }, + { + .bg = 2, + .charBaseIndex = 0, + .mapBaseIndex = 0x00, + .screenSize = 2, + .paletteMode = 0, + .priority = 3, + .baseTile = 0 + }, +}; + +const LoopedTask gUnknown_086230E4[] = +{ + NULL, + sub_81CC848, + sub_81CC878, + sub_81CC8D8, + sub_81CC95C +}; + +const struct CompressedSpriteSheet gUnknown_086230F8[1] = +{ + {gHoennMapZoomIcons_Gfx, 0x800, 6} +}; + +const struct SpritePalette gUnknown_08623100[] = +{ + {gHoennMapZoomIcons_Pal, 11}, + {} +}; + +const struct WindowTemplate gUnknown_08623110 = +{ + .bg = 1, + .tilemapLeft = 17, + .tilemapTop = 4, + .width = 12, + .height = 13, + .paletteNum = 1, + .baseBlock = 0x4C +}; + +#include "data/region_map/city_map_entries.h" + +const struct OamData gUnknown_086231C8 = +{ + .y = 0, + .affineMode = 0, + .objMode = 0, + .bpp = 0, + .shape = SPRITE_SHAPE(32x8), + .x = 0, + .size = SPRITE_SIZE(32x8), + .tileNum = 0, + .priority = 1, + .paletteNum = 0, +}; + +const struct SpriteTemplate gUnknown_086231D0 = +{ + .tileTag = 6, + .paletteTag = 11, + .oam = &gUnknown_086231C8, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = sub_81CCEF4, +}; u32 sub_81CC4D4(void) { @@ -215,7 +308,7 @@ static u32 sub_81CC6F4(s32 taskState) HideBg(2); HideBg(3); SetBgMode(1); - InitBgTemplates(gUnknown_086230D8, ARRAY_COUNT(gUnknown_086230D8)); + InitBgTemplates(gUnknown_086230D8, ARRAY_COUNT(gUnknown_086230D8) - 1); regionMap = GetSubstructPtr(16); sub_8122CF8(regionMap, &gUnknown_086230D8[1], sub_81CC6D0()); sub_81CC9C0(); @@ -521,9 +614,9 @@ static bool32 sub_81CCD24(void) static u32 sub_81CCD34(s32 taskState) { struct Pokenav5Struct_2 *state = GetSubstructPtr(4); - if (taskState < (int)ARRAY_COUNT(gUnknown_08623118)) + if (taskState < (int)ARRAY_COUNT(gPokenavCityMaps)) { - LZ77UnCompWram(gUnknown_08623118[taskState].data, state->cityZoomPics[taskState]); + LZ77UnCompWram(gPokenavCityMaps[taskState].tilemap, state->cityZoomPics[taskState]); return 1; } @@ -533,10 +626,10 @@ static u32 sub_81CCD34(s32 taskState) static void sub_81CCD70(struct Pokenav5Struct_2 *state, int mapSecId, int pos) { int i; - for (i = 0; i < (int)ARRAY_COUNT(gUnknown_08623118) && (gUnknown_08623118[i].mapSecId != mapSecId || gUnknown_08623118[i].unk2 != pos); i++) + for (i = 0; i < (int)ARRAY_COUNT(gPokenavCityMaps) && (gPokenavCityMaps[i].mapSecId != mapSecId || gPokenavCityMaps[i].index != pos); i++) ; - if (i == ARRAY_COUNT(gUnknown_08623118)) + if (i == ARRAY_COUNT(gPokenavCityMaps)) return; FillBgTilemapBufferRect_Palette0(1, 0x1041, 17, 6, 12, 11); diff --git a/src/pokenav_unk_7.c b/src/pokenav_unk_7.c index af48fbb1f..814a27c54 100644 --- a/src/pokenav_unk_7.c +++ b/src/pokenav_unk_7.c @@ -1,3 +1,105 @@ #include "global.h" +#include "bg.h" +#include "window.h" +#include "pokenav.h" + +u32 sub_81CE37C(int); +u32 sub_81CE2D0(int); +u32 sub_81CE4D8(int); +u32 sub_81CE5E4(int); +u32 sub_81CE6BC(int); +u32 sub_81CE700(int); BSS_DATA u8 gUnknown_030012BC; + +const u16 gUnknown_086231E8[] = INCBIN_U16("graphics/pokenav/86231E8.gbapal"); +const u16 gUnknown_08623208[] = INCBIN_U16("graphics/pokenav/8623208.gbapal"); +const u32 gUnknown_08623228[] = INCBIN_U32("graphics/pokenav/8623228.4bpp.lz"); +const u32 gUnknown_0862323C[] = INCBIN_U32("graphics/pokenav/862323C.bin.lz"); +const u16 gUnknown_08623338[] = INCBIN_U16("graphics/pokenav/8623338.gbapal"); + +const struct BgTemplate gUnknown_08623358[3] = +{ + { + .bg = 1, + .charBaseIndex = 1, + .mapBaseIndex = 0x1F, + .screenSize = 0, + .paletteMode = 0, + .priority = 1, + .baseTile = 0 + }, + { + .bg = 2, + .charBaseIndex = 3, + .mapBaseIndex = 0x1D, + .screenSize = 0, + .paletteMode = 0, + .priority = 2, + .baseTile = 0 + }, + { + .bg = 3, + .charBaseIndex = 2, + .mapBaseIndex = 0x1E, + .screenSize = 0, + .paletteMode = 0, + .priority = 3, + .baseTile = 0 + } +}; + +const struct WindowTemplate gUnknown_08623364 = +{ + .bg = 1, + .tilemapLeft = 13, + .tilemapTop = 1, + .width = 13, + .height = 4, + .paletteNum = 15, + .baseBlock = 2 +}; + +const struct WindowTemplate gUnknown_0862336C = +{ + .bg = 1, + .tilemapLeft = 1, + .tilemapTop = 6, + .width = 7, + .height = 2, + .paletteNum = 15, + .baseBlock = 0x36 +}; + +const struct WindowTemplate gUnknown_08623374 = +{ + .bg = 1, + .tilemapLeft = 1, + .tilemapTop = 0x1C, + .width = 5, + .height = 2, + .paletteNum = 15, + .baseBlock = 0x44 +}; + +const struct WindowTemplate gUnknown_0862337C = +{ + .bg = 1, + .tilemapLeft = 13, + .tilemapTop = 0x1C, + .width = 3, + .height = 2, + .paletteNum = 15, + .baseBlock = 0x44 +}; + +const LoopedTask gUnknown_08623384[] = +{ + NULL, + sub_81CE37C, + sub_81CE2D0, + sub_81CE4D8, + sub_81CE5E4, + sub_81CE6BC, + sub_81CE700 +}; diff --git a/src/pokenav_unk_8.c b/src/pokenav_unk_8.c new file mode 100644 index 000000000..8d72c1af0 --- /dev/null +++ b/src/pokenav_unk_8.c @@ -0,0 +1,78 @@ +#include "global.h" +#include "pokenav.h" +#include "bg.h" +#include "window.h" + +u32 sub_81CF134(void); +u32 sub_81CF1C4(void); +u32 sub_81CF1D8(void); +u32 sub_81CF278(void); +u32 sub_81CF578(int); +u32 sub_81CF5F0(int); +u32 sub_81CF668(int); +u32 sub_81CF6E0(int); +u32 sub_81CF758(int); +u32 sub_81CF798(int); + +const u32 gUnknown_086233A0[] = {0x16, 0x17, 0x18, 0x21, 0x2F}; + +u32 (*const gUnknown_086233B4[])(void) = +{ + sub_81CF134, + sub_81CF1C4, + sub_81CF1D8, + sub_81CF278 +}; + +const u16 gUnknown_086233C4[] = INCBIN_U16("graphics/pokenav/condition_search2.gbapal"); +const u32 gUnknown_086233E4[] = INCBIN_U32("graphics/pokenav/condition_search2.4bpp.lz"); +const u32 gUnknown_086234AC[] = INCBIN_U32("graphics/pokenav/condition_search2.bin.lz"); +const u16 gUnknown_08623570[] = INCBIN_U16("graphics/pokenav/8623570.gbapal"); + +const struct BgTemplate gUnknown_08623590 = +{ + .bg = 1, + .charBaseIndex = 1, + .mapBaseIndex = 0x06, + .screenSize = 0, + .paletteMode = 0, + .priority = 2, + .baseTile = 0 +}; + +const struct BgTemplate gUnknown_08623594 = +{ + .bg = 2, + .charBaseIndex = 2, + .mapBaseIndex = 0x07, + .screenSize = 0, + .paletteMode = 0, + .priority = 3, + .baseTile = 0 +}; + +const LoopedTask gUnknown_08623598[] = +{ + NULL, + sub_81CF578, + sub_81CF5F0, + sub_81CF668, + sub_81CF6E0, + sub_81CF758, + sub_81CF798 +}; + +const struct WindowTemplate gUnknown_086235B4 = +{ + .bg = 1, + .tilemapLeft = 1, + .tilemapTop = 6, + .width = 7, + .height = 2, + .paletteNum = 1, + .baseBlock = 20 +}; + +const u8 gUnknown_086235BC[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); +const u8 gUnknown_086235C8[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); +const u8 gUnknown_086235D4[] = _("{UNK_SPACER}"); diff --git a/src/pokenav_unk_9.c b/src/pokenav_unk_9.c new file mode 100644 index 000000000..43f626a03 --- /dev/null +++ b/src/pokenav_unk_9.c @@ -0,0 +1,75 @@ +#include "global.h" +#include "pokenav.h" +#include "bg.h" +#include "window.h" + +u32 sub_81CFB8C(void); +u32 sub_81CFC2C(void); +u32 sub_81CFC40(void); +u32 sub_81CFFFC(int); +u32 sub_81D0074(int); +u32 sub_81D00EC(int); +u32 sub_81D0164(int); +u32 sub_81D01DC(int); +u32 sub_81D021C(int); + +u32 (*const gUnknown_086235D8[])(void) = +{ + sub_81CFB8C, + sub_81CFC2C, + sub_81CFC40 +}; + +const u16 gUnknown_086235E4[] = INCBIN_U16("graphics/pokenav/ui_ribbons.gbapal"); +const u32 gUnknown_08623604[] = INCBIN_U32("graphics/pokenav/ui_ribbons.4bpp.lz"); +const u32 gUnknown_086236CC[] = INCBIN_U32("graphics/pokenav/ui_ribbons.bin.lz"); +const u16 gUnknown_08623790[] = INCBIN_U16("graphics/pokenav/8623790.gbapal"); + +const struct BgTemplate gUnknown_086237B0 = +{ + .bg = 1, + .charBaseIndex = 1, + .mapBaseIndex = 0x06, + .screenSize = 0, + .paletteMode = 0, + .priority = 2, + .baseTile = 0 +}; + +const struct BgTemplate gUnknown_086237B4 = +{ + .bg = 2, + .charBaseIndex = 2, + .mapBaseIndex = 0x07, + .screenSize = 0, + .paletteMode = 0, + .priority = 3, + .baseTile = 0 +}; + +const LoopedTask gUnknown_086237B8[] = +{ + NULL, + sub_81CFFFC, + sub_81D0074, + sub_81D00EC, + sub_81D0164, + sub_81D01DC, + sub_81D021C +}; + +const struct WindowTemplate gUnknown_086237D4 = +{ + .bg = 1, + .tilemapLeft = 1, + .tilemapTop = 6, + .width = 7, + .height = 2, + .paletteNum = 1, + .baseBlock = 20 +}; + +// TODO: these are probably not strings? +const u8 gUnknown_086237DC[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_RED}{WHITE}{GREEN}♂{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); +const u8 gUnknown_086237E8[] = _("{COLOR_HIGHLIGHT_SHADOW}{LIGHT_GREEN}{WHITE}{BLUE}♀{COLOR_HIGHLIGHT_SHADOW}{DARK_GREY}{WHITE}{LIGHT_GREY}"); +const u8 gUnknown_086237F4[] = _("{UNK_SPACER}"); |