diff --git a/include/pokedex.h b/include/pokedex.h index 8e934de402..5c860d2782 100644 --- a/include/pokedex.h +++ b/include/pokedex.h @@ -35,8 +35,23 @@ struct PokedexEntry /*0x1C*/ u16 trainerOffset; }; /*size = 0x20*/ +struct PokedexEntryForms +{ + u8 categoryName[13]; + u16 height; //in decimeters + u16 weight; //in hectograms + const u8 *description; + u8 flags; +}; + +// PokedexEntryForms flags +#define FLAG_FORM_DESCRIPTION (1 << 0) +#define FLAG_FORM_WEIGHT_HEIGHT (1 << 1) +#define FLAG_FORM_CATEGORY (1 << 2) + void ResetPokedex(void); u16 GetPokedexHeightWeight(u16 dexNum, u8 data); +u16 GetSpeciesHeightWeight(u16 species, u8 data); u16 GetNationalPokedexCount(u8); u16 GetHoennPokedexCount(u8); u8 DisplayCaughtMonDexPage(u16 dexNum, u32 otId, u32 personality); diff --git a/include/pokemon.h b/include/pokemon.h index 52d514c8d0..c20e0a4b51 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -325,6 +325,15 @@ struct BaseStats u8 bodyColor : 7; u8 noFlip : 1; u16 flags; +// Pokédex data + u8 categoryName[13]; + u16 height; //in decimeters + u16 weight; //in hectograms + const u8 *description; + u16 pokemonScale; + u16 pokemonOffset; + u16 trainerScale; + u16 trainerOffset; }; #include "constants/battle_config.h" diff --git a/src/data/pokemon/pokedex_entries.h b/src/data/pokemon/pokedex_entries.h index 4925382600..6aa09e3e31 100644 --- a/src/data/pokemon/pokedex_entries.h +++ b/src/data/pokemon/pokedex_entries.h @@ -1,52 +1,5 @@ const struct PokedexEntry gPokedexEntries[] = { - [NATIONAL_DEX_NONE] = - { - .categoryName = _("Unknown"), - .height = 0, - .weight = 0, - .description = gDummyPokedexText, - .pokemonScale = 256, - .pokemonOffset = 0, - .trainerScale = 256, - .trainerOffset = 0, - }, - - [NATIONAL_DEX_BULBASAUR] = - { - .categoryName = _("Seed"), - .height = 7, - .weight = 69, - .description = gBulbasaurPokedexText, - .pokemonScale = 356, - .pokemonOffset = 17, - .trainerScale = 256, - .trainerOffset = 0, - }, - - [NATIONAL_DEX_IVYSAUR] = - { - .categoryName = _("Seed"), - .height = 10, - .weight = 130, - .description = gIvysaurPokedexText, - .pokemonScale = 335, - .pokemonOffset = 13, - .trainerScale = 256, - .trainerOffset = 0, - }, - - [NATIONAL_DEX_VENUSAUR] = - { - .categoryName = _("Seed"), - .height = 20, - .weight = 1000, - .description = gVenusaurPokedexText, - .pokemonScale = 256, - .pokemonOffset = 0, - .trainerScale = 388, - .trainerOffset = 6, - }, [NATIONAL_DEX_CHARMANDER] = { @@ -10882,3 +10835,1297 @@ const struct PokedexEntry gPokedexEntries[] = }, #endif }; + + +const struct PokedexEntryForms gPokedexEntriesForms[] = +{ + // Megas + [SPECIES_VENUSAUR_MEGA] = + { + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_CHARIZARD_MEGA_X] = + { + .height = 17, + .weight = 1105, + .description = gCharizardMegaXPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_CHARIZARD_MEGA_Y] = + { + .height = 17, + .weight = 1005, + .description = gCharizardMegaYPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_BLASTOISE_MEGA] = + { + .height = 16, + .weight = 1011, + .description = gBlastoiseMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_BEEDRILL_MEGA] = + { + .height = 14, + .weight = 405, + .description = gBeedrillMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_PIDGEOT_MEGA] = + { + .height = 22, + .weight = 505, + .description = gPidgeotMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_ALAKAZAM_MEGA] = + { + .height = 12, + .weight = 480, + .description = gAlakazamMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SLOWBRO_MEGA] = + { + .height = 20, + .weight = 1200, + .description = gSlowbroMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GENGAR_MEGA] = + { + .height = 14, + .weight = 405, + .description = gGengarMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_KANGASKHAN_MEGA] = + { + .height = 22, + .weight = 1000, + .description = gKangaskhanMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_PINSIR_MEGA] = + { + .height = 17, + .weight = 590, + .description = gPinsirMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GYARADOS_MEGA] = + { + .height = 65, + .weight = 3050, + .description = gGyaradosMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_AERODACTYL_MEGA] = + { + .height = 21, + .weight = 790, + .description = gAerodactylMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MEWTWO_MEGA_X] = + { + .height = 23, + .weight = 1270, + .description = gMewtwoMegaXPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MEWTWO_MEGA_Y] = + { + .height = 15, + .weight = 330, + .description = gMewtwoMegaYPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_AMPHAROS_MEGA] = + { + .height = 14, + .weight = 615, + .description = gAmpharosMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_STEELIX_MEGA] = + { + .height = 105, + .weight = 7400, + .description = gSteelixPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SCIZOR_MEGA] = + { + .height = 20, + .weight = 1250, + .description = gScizorMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_HERACROSS_MEGA] = + { + .height = 17, + .weight = 625, + .description = gHeracrossMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_HOUNDOOM_MEGA] = + { + .height = 19, + .weight = 495, + .description = gHoundoomMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_TYRANITAR_MEGA] = + { + .height = 25, + .weight = 2550, + .description = gTyranitarMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SCEPTILE_MEGA] = + { + .height = 19, + .weight = 552, + .description = gSceptilePokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_BLAZIKEN_MEGA] = + { + .height = 19, + .weight = 520, + .description = gBlazikenPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SWAMPERT_MEGA] = + { + .height = 19, + .weight = 1020, + .description = gSwampertPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GARDEVOIR_MEGA] = + { + .height = 16, + .weight = 484, + .description = gGardevoirPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SABLEYE_MEGA] = + { + .height = 5, + .weight = 1610, + .description = gSableyeMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MAWILE_MEGA] = + { + .height = 10, + .weight = 235, + .description = gMawileMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_AGGRON_MEGA] = + { + .height = 22, + .weight = 3950, + .description = gAggronPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MEDICHAM_MEGA] = + { + .height = 13, + .weight = 315, + .description = gMedichamPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MANECTRIC_MEGA] = + { + .height = 18, + .weight = 440, + .description = gManectricMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SHARPEDO_MEGA] = + { + .height = 25, + .weight = 1303, + .description = gSharpedoMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_CAMERUPT_MEGA] = + { + .height = 25, + .weight = 3205, + .description = gCameruptPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_ALTARIA_MEGA] = + { + .height = 15, + .weight = 206, + .description = gAltariaPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_BANETTE_MEGA] = + { + .height = 12, + .weight = 130, + .description = gBanetteMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_ABSOL_MEGA] = + { + .height = 12, + .weight = 490, + .description = gAbsolMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GLALIE_MEGA] = + { + .height = 21, + .weight = 3502, + .description = gGlalieMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SALAMENCE_MEGA] = + { + .height = 18, + .weight = 1126, + .description = gSalamenceMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_METAGROSS_MEGA] = + { + .height = 25, + .weight = 9429, + .description = gMetagrossMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_LATIAS_MEGA] = + { + .height = 18, + .weight = 520, + .description = gLatiasPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_LATIOS_MEGA] = + { + .height = 23, + .weight = 700, + .description = gLatiosPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_LOPUNNY_MEGA] = + { + .height = 13, + .weight = 283, + .description = gLopunnyMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GARCHOMP_MEGA] = + { + .height = 19, + .weight = 950, + .description = gGarchompMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_LUCARIO_MEGA] = + { + .height = 13, + .weight = 575, + .description = gLucarioMegaPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_ABOMASNOW_MEGA] = + { + .height = 27, + .weight = 1850, + .description = gAbomasnowPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GALLADE_MEGA] = + { + .height = 16, + .weight = 564, + .description = gGalladePokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_AUDINO_MEGA] = + { + .height = 15, + .weight = 320, + .description = gAudinoPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_DIANCIE_MEGA] = + { + .height = 11, + .weight = 278, + .description = gDianciePokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Special Mega + Primals + [SPECIES_RAYQUAZA_MEGA] = + { + .height = 108, + .weight = 3920, + .description = gRayquazaPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_KYOGRE_PRIMAL] = + { + .height = 98, + .weight = 4300, + .description = gKyogrePokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GROUDON_PRIMAL] = + { + .height = 50, + .weight = 9997, + .description = gGroudonPokedexText, // No official dex entry + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Alolan Forms + [SPECIES_RATTATA_ALOLAN] = + { + .height = 3, + .weight = 38, + .description = gRattataAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_RATICATE_ALOLAN] = + { + .height = 7, + .weight = 255, + .description = gRaticateAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_RAICHU_ALOLAN] = + { + .height = 7, + .weight = 210, + .description = gRaichuAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SANDSHREW_ALOLAN] = + { + .height = 7, + .weight = 400, + .description = gSandshrewAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SANDSLASH_ALOLAN] = + { + .height = 12, + .weight = 550, + .description = gSandslashAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_VULPIX_ALOLAN] = + { + .height = 6, + .weight = 99, + .description = gVulpixAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_NINETALES_ALOLAN] = + { + .height = 11, + .weight = 199, + .description = gNinetalesAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_DIGLETT_ALOLAN] = + { + .height = 2, + .weight = 10, + .description = gDiglettAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_DUGTRIO_ALOLAN] = + { + .height = 7, + .weight = 666, + .description = gDugtrioAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MEOWTH_ALOLAN] = + { + .height = 4, + .weight = 42, + .description = gMeowthAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_PERSIAN_ALOLAN] = + { + .height = 11, + .weight = 330, + .description = gPersianAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GEODUDE_ALOLAN] = + { + .height = 4, + .weight = 203, + .description = gGeodudeAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GRAVELER_ALOLAN] = + { + .height = 10, + .weight = 1100, + .description = gGravelerAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GOLEM_ALOLAN] = + { + .height = 17, + .weight = 3160, + .description = gGolemAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GRIMER_ALOLAN] = + { + .height = 7, + .weight = 420, + .description = gGrimerAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MUK_ALOLAN] = + { + .height = 10, + .weight = 520, + .description = gMukAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_EXEGGUTOR_ALOLAN] = + { + .height = 109, + .weight = 4156, + .description = gExeggutorAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MAROWAK_ALOLAN] = + { + .height = 10, + .weight = 340, + .description = gMarowakAlolanPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Galarian Forms + [SPECIES_MEOWTH_GALARIAN] = + { + .height = 4, + .weight = 75, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_PONYTA_GALARIAN] = + { + .categoryName = _("Unique Horn"), + .height = 8, + .weight = 240, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + [SPECIES_RAPIDASH_GALARIAN] = + { + .categoryName = _("Unique Horn"), + .height = 17, + .weight = 800, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + [SPECIES_SLOWPOKE_GALARIAN] = + { + .height = 12, + .weight = 360, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_SLOWBRO_GALARIAN] = + { + .height = 16, + .weight = 705, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_FARFETCHD_GALARIAN] = + { + .height = 8, + .weight = 420, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_WEEZING_GALARIAN] = + { + .height = 30, + .weight = 160, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MR_MIME_GALARIAN] = + { + .categoryName = _("Dancing"), + .height = 14, + .weight = 568, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + [SPECIES_ARTICUNO_GALARIAN] = + { + .categoryName = _("Cruel"), + .height = 17, + .weight = 509, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + [SPECIES_ZAPDOS_GALARIAN] = + { + .categoryName = _("Strong Legs"), + .height = 16, + .weight = 582, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + [SPECIES_MOLTRES_GALARIAN] = + { + .categoryName = _("Malevolent"), + .height = 20, + .weight = 660, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + [SPECIES_SLOWKING_GALARIAN] = + { + .categoryName = _("Hexpert"), + .height = 18, + .weight = 795, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + [SPECIES_CORSOLA_GALARIAN] = + { + .height = 6, + .weight = 5, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_ZIGZAGOON_GALARIAN] = + { + .height = 4, + .weight = 175, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_LINOONE_GALARIAN] = + { + .height = 5, + .weight = 325, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_DARUMAKA_GALARIAN] = + { + .height = 7, + .weight = 400, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_DARMANITAN_GALARIAN] = + { + .categoryName = _("Zen Charm"), + .height = 17, + .weight = 1200, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + [SPECIES_YAMASK_GALARIAN] = + { + .height = 5, + .weight = 15, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_STUNFISK_GALARIAN] = + { + .height = 7, + .weight = 205, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Cap Pikachu + [SPECIES_PIKACHU_ORIGINAL_CAP] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_PIKACHU_HOENN_CAP] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_PIKACHU_SINNOH_CAP] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_PIKACHU_UNOVA_CAP] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_PIKACHU_KALOS_CAP] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_PIKACHU_ALOLA_CAP] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_PIKACHU_PARTNER_CAP] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_PIKACHU_WORLD_CAP] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Castform + [SPECIES_CASTFORM_SUNNY] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_CASTFORM_RAINY] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_CASTFORM_SNOWY] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Cherrim + [SPECIES_CHERRIM_SUNSHINE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Shellos + [SPECIES_SHELLOS_EAST_SEA] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Gastrodon, + [SPECIES_GASTRODON_EAST_SEA] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Rotom + [SPECIES_ROTOM_HEAT] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ROTOM_WASH] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ROTOM_FROST] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ROTOM_FAN] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ROTOM_MOW] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Giratina + [SPECIES_GIRATINA_ORIGIN] = + { + .height = 69, + .weight = 6500, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Shaymin + [SPECIES_SHAYMIN_SKY] = + { + .height = 4, + .weight = 52, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Basculin + [SPECIES_BASCULIN_BLUE_STRIPED] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Darmanitan + [SPECIES_DARMANITAN_ZEN_MODE] = + { + .categoryName = _("Zen Charm"), + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_CATEGORY, + }, + [SPECIES_DARMANITAN_GALARIAN_ZEN_MODE] = + { + .categoryName = _("Zen Charm"), + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_CATEGORY, + }, + // Therian Forms + [SPECIES_TORNADUS_THERIAN] = + { + .height = 14, + .weight = 630, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_THUNDURUS_THERIAN] = + { + .height = 30, + .weight = 610, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_LANDORUS_THERIAN] = + { + .height = 13, + .weight = 680, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Kyurem + [SPECIES_KYUREM_WHITE] = + { + .height = 36, + .weight = 3250, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_KYUREM_BLACK] = + { + .height = 33, + .weight = 3250, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Keldeo + [SPECIES_KELDEO_RESOLUTE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Meowstic + [SPECIES_MEOWSTIC_FEMALE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Aegislash + [SPECIES_AEGISLASH_BLADE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Pumpkaboo + [SPECIES_PUMPKABOO_SMALL] = + { + .height = 3, + .weight = 35, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_PUMPKABOO_LARGE] = + { + .height = 5, + .weight = 75, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_PUMPKABOO_SUPER] = + { + .height = 8, + .weight = 150, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Gourgeist + [SPECIES_GOURGEIST_SMALL] = + { + .height = 7, + .weight = 95, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GOURGEIST_LARGE] = + { + .height = 11, + .weight = 140, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_GOURGEIST_SUPER] = + { + .height = 17, + .weight = 390, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Zygarde + [SPECIES_ZYGARDE_10] = + { + .height = 12, + .weight = 335, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_ZYGARDE_10_POWER_CONSTRUCT] = + { + .height = 12, + .weight = 335, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_ZYGARDE_50_POWER_CONSTRUCT] = + { + .height = 50, + .weight = 3050, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_ZYGARDE_COMPLETE] = + { + .height = 45, + .weight = 6100, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Hoopa + [SPECIES_HOOPA_UNBOUND] = + { + .categoryName = _("Djinn"), + .height = 65, + .weight = 4900, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + // Oricorio + [SPECIES_ORICORIO_POM_POM] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ORICORIO_PAU] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ORICORIO_SENSU] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Rockruff + [SPECIES_ROCKRUFF_OWN_TEMPO] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Lycanroc + [SPECIES_LYCANROC_MIDNIGHT] = + { + .height = 11, + .weight = 250, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_LYCANROC_DUSK] = + { + .height = 8, + .weight = 250, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Wishiwashi + [SPECIES_WISHIWASHI_SCHOOL] = + { + .height = 82, + .weight = 786, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Silvally + [SPECIES_SILVALLY_FIGHTING] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_FLYING] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_POISON] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_GROUND] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_ROCK] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_BUG] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_GHOST] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_STEEL] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_FIRE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_WATER] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_GRASS] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_ELECTRIC] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_PSYCHIC] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_ICE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_DRAGON] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_DARK] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_SILVALLY_FAIRY] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Minior + [SPECIES_MINIOR_METEOR_ORANGE] = + { + .height = 3, + .weight = 400, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_METEOR_YELLOW] = + { + .height = 3, + .weight = 400, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_METEOR_GREEN] = + { + .height = 3, + .weight = 400, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_METEOR_BLUE] = + { + .height = 3, + .weight = 400, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_METEOR_INDIGO] = + { + .height = 3, + .weight = 400, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_METEOR_VIOLET] = + { + .height = 3, + .weight = 400, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_CORE_RED] = + { + .height = 3, + .weight = 3, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_CORE_ORANGE] = + { + .height = 3, + .weight = 3, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_CORE_YELLOW] = + { + .height = 3, + .weight = 3, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_CORE_GREEN] = + { + .height = 3, + .weight = 3, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_CORE_BLUE] = + { + .height = 3, + .weight = 3, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_CORE_INDIGO] = + { + .height = 3, + .weight = 3, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_MINIOR_CORE_VIOLET] = + { + .height = 3, + .weight = 3, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Mimikyu + [SPECIES_MIMIKYU_BUSTED] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Necrozma + [SPECIES_NECROZMA_DUSK_MANE] = + { + .height = 38, + .weight = 4600, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_NECROZMA_DAWN_WINGS] = + { + .height = 42, + .weight = 3500, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + [SPECIES_NECROZMA_ULTRA] = + { + .height = 75, + .weight = 2300, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Magearna + [SPECIES_MAGEARNA_ORIGINAL_COLOR] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Cramorant + [SPECIES_CRAMORANT_GULPING] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_CRAMORANT_GORGING] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Toxtricity + [SPECIES_TOXTRICITY_LOW_KEY] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Sinistea + [SPECIES_SINISTEA_ANTIQUE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Polteageist + [SPECIES_POLTEAGEIST_ANTIQUE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Alcremie + [SPECIES_ALCREMIE_STRAWBERRY_RUBY_CREAM] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ALCREMIE_STRAWBERRY_MATCHA_CREAM] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ALCREMIE_STRAWBERRY_MINT_CREAM] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ALCREMIE_STRAWBERRY_LEMON_CREAM] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ALCREMIE_STRAWBERRY_SALTED_CREAM] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ALCREMIE_STRAWBERRY_RUBY_SWIRL] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ALCREMIE_STRAWBERRY_CARAMEL_SWIRL] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + [SPECIES_ALCREMIE_STRAWBERRY_RAINBOW_SWIRL] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Eiscue + [SPECIES_EISCUE_NOICE_FACE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Indeedee + [SPECIES_INDEEDEE_FEMALE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Morpeko + [SPECIES_MORPEKO_HANGRY] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Zacian + [SPECIES_ZACIAN_CROWNED_SWORD] = + { + .height = 28, + .weight = 3550, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Zamazenta + [SPECIES_ZAMAZENTA_CROWNED_SHIELD] = + { + .height = 29, + .weight = 7850, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Eternatus + [SPECIES_ETERNATUS_ETERNAMAX] = + { + .height = 100, + .weight = 10000, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT, + }, + // Urshifu + [SPECIES_URSHIFU_RAPID_STRIKE_STYLE] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Zarude + [SPECIES_ZARUDE_DADA] = + { + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION , + }, + // Calyrex + [SPECIES_CALYREX_ICE_RIDER] = + { + .categoryName = _("High King"), + .height = 24, + .weight = 8091, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, + [SPECIES_CALYREX_SHADOW_RIDER] = + { + .categoryName = _("High King"), + .height = 24, + .weight = 536, + .description = gDummyPokedexText, + .flags = FLAG_FORM_DESCRIPTION | FLAG_FORM_WEIGHT_HEIGHT | FLAG_FORM_CATEGORY, + }, +}; diff --git a/src/data/pokemon/pokedex_text.h b/src/data/pokemon/pokedex_text.h index 6048d21215..1bfd06b9ce 100644 --- a/src/data/pokemon/pokedex_text.h +++ b/src/data/pokemon/pokedex_text.h @@ -22,6 +22,11 @@ const u8 gVenusaurPokedexText[] = _( "sunlight. The flower's aroma soothes the\n" "emotions of people."); +const u8 gVenusaurMegaPokedexText[] = _( + "In order to support its flower, which\n" + "has grown larger due to Mega Evolution,\n" + "its back and legs have become stronger."); + const u8 gCharmanderPokedexText[] = _( "The flame that burns at the tip of its\n" "tail is an indication of its emotions.\n" @@ -40,6 +45,17 @@ const u8 gCharizardPokedexText[] = _( "flames that can melt any material. However,\n" "it will never torch a weaker foe."); +const u8 gCharizardMegaXPokedexText[] = _( + "The overwhelming power that fills its\n" + "entire body causes it to turn black\n" + "and creates intense blue flames."); + +const u8 gCharizardMegaYPokedexText[] = _( + "Its bond with its Trainer is the source\n" + "of its power. It boasts speed and\n" + "maneuverability greater than that of a\n" + "jet fighter."); + const u8 gSquirtlePokedexText[] = _( "Its shell is not just for protection.\n" "Its rounded shape and the grooves on its\n" @@ -58,6 +74,12 @@ const u8 gBlastoisePokedexText[] = _( "water can precisely nail tin cans from\n" "a distance of over 160 feet."); +const u8 gBlastoiseMegaPokedexText[] = _( + "The cannon on its back is as powerful\n" + "as a tank gun. Its tough legs and back\n" + "enable it to withstand the recoil from\n" + "firing the cannon."); + const u8 gCaterpiePokedexText[] = _( "Its voracious appetite compels it to\n" "devour leaves bigger than itself without\n" @@ -94,6 +116,12 @@ const u8 gBeedrillPokedexText[] = _( "approach its nest. If angered, they will\n" "attack in a swarm."); +const u8 gBeedrillMegaPokedexText[] = _( + "Its legs have become poison stingers.\n" + "It stabs its prey repeatedly with the\n" + "stingers on its limbs, dealing the final\n" + "blow with the stinger on its rear."); + const u8 gPidgeyPokedexText[] = _( "It has an extremely sharp sense of\n" "direction. It can unerringly return home to\n" @@ -112,18 +140,35 @@ const u8 gPidgeotPokedexText[] = _( "by the beautiful feathers on its head that\n" "they choose Pidgeot as their Pokémon."); +const u8 gPidgeotMegaPokedexText[] = _( + "With its muscular strength now greatly\n" + "increased, it can fly continuously\n" + "for two weeks without resting."); + const u8 gRattataPokedexText[] = _( "A Rattata is cautious in the extreme.\n" "Even while it is asleep, it constantly\n" "moves its ears and listens for danger.\n" "It will make its nest anywhere."); +const u8 gRattataAlolanPokedexText[] = _( + "With its incisors, it gnaws through doors\n" + "and infiltrates people's homes.\n" + "Then, with a twitch of its whiskers,\n" + "it steals whatever food it finds."); + const u8 gRaticatePokedexText[] = _( "A Raticate's sturdy fangs grow steadily.\n" "To keep them ground down, it gnaws on\n" "rocks and logs. It may even chew on the\n" "walls of houses."); +const u8 gRaticateAlolanPokedexText[] = _( + "It forms a group of Rattata, which it \n" + "assumes command of. Each group\n" + "has its own territory, and disputes\n" + "over food happen often."); + const u8 gSpearowPokedexText[] = _( "Its loud cry can be heard over half a mile\n" "away. If its high, keening cry is heard\n" @@ -160,18 +205,36 @@ const u8 gRaichuPokedexText[] = _( "it occasionally discharges excess energy\n" "and calms itself down."); +const u8 gRaichuAlolanPokedexText[] = _( + "It uses psychokinesis to control\n" + "electricity. It focuses psychic energy\n" + "into its tail and rides it like it's surfing.\n" + "Another name for this Pokémon is 'hodad'."); + const u8 gSandshrewPokedexText[] = _( "When it curls up in a ball, it can make any\n" "attack bounce off harmlessly. Its hide has\n" "turned tough and solid as a result of\n" "living in the desert."); +const u8 gSandshrewAlolanPokedexText[] = _( + "Life on mountains covered with deep snow\n" + "has granted this Pokémon a body of ice\n" + "that's as hard as steel.\n" + "Predators go after its soft belly."); + const u8 gSandslashPokedexText[] = _( "It curls up in a ball to protect itself from\n" "enemy attacks. It also curls up to prevent\n" "heatstroke during the daytime when\n" "temperatures rise sharply."); +const u8 gSandslashAlolanPokedexText[] = _( + "This Pokémon's steel spikes are\n" + "sheathed in ice. Stabs from these\n" + "spikes cause wounds and.\n" + "severe frostbite as well."); + const u8 gNidoranFPokedexText[] = _( "Its highly toxic barbs are thought to have\n" "developed as protection for this small-\n" @@ -226,12 +289,24 @@ const u8 gVulpixPokedexText[] = _( "before evolution, its six tails grow hot \n" "as if on fire."); +const u8 gVulpixAlolanPokedexText[] = _( + "They live together in a skulk, helping\n" + "one another. In hot weather, this Pokémon\n" + "makes ice shards with its six tails and\n" + "sprays them around to cool itself off."); + const u8 gNinetalesPokedexText[] = _( "It has long been said that each of the\n" "nine tails embody an enchanted power.\n" "A long-lived Ninetales will have fur that\n" "shines like gold."); +const u8 gNinetalesAlolanPokedexText[] = _( + "While it will guide travelers who get lost\n" + "on a snowy mountain down to the\n" + "mountain's base, it won't forgive anyone\n" + "who harms nature."); + const u8 gJigglypuffPokedexText[] = _( "Nothing can avoid falling asleep hearing a\n" "Jigglypuff's song. The sound waves of its\n" @@ -304,24 +379,48 @@ const u8 gDiglettPokedexText[] = _( "burrow, the soil is left perfectly tilled\n" "for growing delicious crops."); +const u8 gDiglettAlolanPokedexText[] = _( + "Its head sports an altered form of\n" + "whiskers made of metal. When in\n" + "communicationwith its comrades,\n" + "its whiskers wobble to and fro."); + const u8 gDugtrioPokedexText[] = _( "Because the triplets originally split from\n" "one body, they think exactly alike.\n" "They work cooperatively to burrow\n" "endlessly through the ground."); +const u8 gDugtrioAlolanPokedexText[] = _( + "Their beautiful, metallic whiskers create\n" + "a sort of protective helmet on\n" + "heir heads, and they also function\n" + "as highly precise sensors."); + const u8 gMeowthPokedexText[] = _( "Meowth withdraw their sharp claws into\n" "their paws to silently sneak about.\n" "For some reason, this Pokémon loves\n" "shiny coins that glitter with light."); +const u8 gMeowthAlolanPokedexText[] = _( + "Deeply proud and keenly smart,\n" + "this Pokémon moves with cunning\n" + "during battle and relentlessly\n" + "attacks enemies' weak points."); + const u8 gPersianPokedexText[] = _( "A Persian's six bold whiskers sense air\n" "movements to determine what is in its\n" "vicinity. It becomes docile if grabbed\n" "by the whiskers."); +const u8 gPersianAlolanPokedexText[] = _( + "It looks down on everyone other than\n" + "itself. In contrast to its lovely face, it\n" + "is so brutal that it tortures its weakened\n" + "prey rather than finishing them off."); + const u8 gPsyduckPokedexText[] = _( "When its headache intensifies, it starts\n" "using strange powers. However, it has no\n" @@ -394,6 +493,11 @@ const u8 gAlakazamPokedexText[] = _( "are very weak. It uses psychic power to\n" "move its body."); +const u8 gAlakazamMegaPokedexText[] = _( + "Having traded away its muscles, Alakazam's\n" + "true power has been unleashed. With its\n" + "psychic powers, it can foresee all things."); + const u8 gMachopPokedexText[] = _( "It continually undertakes strenuous\n" "training to master all forms of martial\n" @@ -448,18 +552,36 @@ const u8 gGeodudePokedexText[] = _( "like boulders lining paths, hikers may step\n" "on them without noticing."); +const u8 gGeodudeAlolanPokedexText[] = _( + "Geodude compete against each other\n" + "with headbutts. The iron sand on\n" + "their heads will stick to whichever one\n" + "has stronger magnetism."); + const u8 gGravelerPokedexText[] = _( "They descend from mountains by tumbling\n" "down steep slopes. They are so brutal,\n" "they smash aside obstructing trees and\n" "massive boulders with thunderous tackles."); +const u8 gGravelerAlolanPokedexText[] = _( + "They eat rocks and often get\n" + "into a scrap over them. The shock of\n" + "Graveler smashing together causes\n" + "a flash of light and a booming noise."); + const u8 gGolemPokedexText[] = _( "It is said to live in volcanic craters\n" "on mountain peaks. Once a year, it sheds\n" "its hide and grows larger. The shed hide\n" "crumbles and returns to the soil."); +const u8 gGolemAlolanPokedexText[] = _( + "It fires rocks charged with electricity.\n" + "Even if the rock isn't fired that\n" + "accurately, just grazing an opponent\n" + "will cause numbness and fainting."); + const u8 gPonytaPokedexText[] = _( "A Ponyta is very weak at birth. It can\n" "barely stand up. Its legs become stronger\n" @@ -484,6 +606,12 @@ const u8 gSlowbroPokedexText[] = _( "used for fishing anymore. This forces it\n" "to reluctantly swim and catch prey."); +const u8 gSlowbroMegaPokedexText[] = _( + "When bathed in the energy of Mega\n" + "Evolution, Shellder converts into\n" + "impregnable armor. There is virtually no\n" + "change in Slowpoke."); + const u8 gMagnemitePokedexText[] = _( "The units at its sides are extremely\n" "powerful magnets. They generate enough\n" @@ -532,12 +660,24 @@ const u8 gGrimerPokedexText[] = _( "They feed on wastewater pumped out from\n" "factories."); +const u8 gGrimerAlolanPokedexText[] = _( + "There are a hundred or so of them living\n" + "in Alola's waste-disposal site. They're all\n" + "hard workers who eat a lot of trash. Grimer\n" + "seems to relish any and all kinds of trash."); + const u8 gMukPokedexText[] = _( "It prefers warm and humid habitats.\n" "In the summertime, the toxic substances\n" "in its body intensify, making Muk reek like\n" "putrid kitchen garbage."); +const u8 gMukAlolanPokedexText[] = _( + "The garbage it eats causes\n" + "continuous chemical changes in it's\n" + "body, which produce it's\n" + "exceedingly vivid coloration."); + const u8 gShellderPokedexText[] = _( "At night, it burrows a hole in the seafloor\n" "with its broad tongue to make a place to\n" @@ -568,6 +708,12 @@ const u8 gGengarPokedexText[] = _( "It is actually a Gengar running past\n" "you, pretending to be your shadow."); +const u8 gGengarMegaPokedexText[] = _( + "Gengar's relationships are warped. It\n" + "tries to take the lives of anyone and\n" + "everyone. It will even try to curse the\n" + "Trainer who is its master!"); + const u8 gOnixPokedexText[] = _( "There is a magnet in its brain that\n" "prevents an Onix from losing direction\n" @@ -622,6 +768,12 @@ const u8 gExeggutorPokedexText[] = _( "sunlight. It is said that when the heads\n" "fall, they group to form an Exeggcute."); +const u8 gExeggutorAlolanPokedexText[] = _( + "Alola is the best environment for\n" + "this Pokémon. Local people take pride\n" + "in its appearance, saying this is how\n" + "Exeggutor ought to look."); + const u8 gCubonePokedexText[] = _( "It pines for the mother it will never see\n" "again. Seeing a likeness of its mother in\n" @@ -634,6 +786,12 @@ const u8 gMarowakPokedexText[] = _( "grief of losing its mother. Its tempered\n" "and hardened spirit is not easily broken."); +const u8 gMarowakAlolanPokedexText[] = _( + "The cursed flames that light up the bone\n" + "carried by this Pokémon are said\n" + "to cause both mental and physical\n" + "pain that will never fade."); + const u8 gHitmonleePokedexText[] = _( "Its legs freely stretch and contract.\n" "Using these springlike limbs, it bowls over\n" @@ -694,6 +852,12 @@ const u8 gKangaskhanPokedexText[] = _( "The baby's parent is sure to be in the area,\n" "and it will become violently enraged."); +const u8 gKangaskhanMegaPokedexText[] = _( + "When the mother sees the back of her\n" + "Mega-Evolved child, it makes her think\n" + "of the day when her child will inevitably\n" + "leave her."); + const u8 gHorseaPokedexText[] = _( "By cleverly flicking the fins on its back\n" "side to side, it moves in any direction\n" @@ -766,6 +930,12 @@ const u8 gPinsirPokedexText[] = _( "cold, Pinsir burrow and sleep under\n" "the ground on chilly nights."); +const u8 gPinsirMegaPokedexText[] = _( + "The influence of Mega Evolution leaves it\n" + "in a state of constant excitement.\n" + "It pierces enemies with its two large\n" + "horns before shredding them."); + const u8 gTaurosPokedexText[] = _( "It is not satisfied unless it is rampaging\n" "at all times. If there is no opponent for\n" @@ -784,6 +954,12 @@ const u8 gGyaradosPokedexText[] = _( "it will appear and burn everything to the\n" "ground with intensely hot flames."); +const u8 gGyaradosMegaPokedexText[] = _( + "Although it obeys its instinctive drive to\n" + "destroy everything within its reach, it\n" + "will respond to orders from a Trainer it\n" + "truly trusts."); + const u8 gLaprasPokedexText[] = _( "People have driven Lapras almost to the\n" "point of extinction. In the evenings,\n" @@ -856,6 +1032,11 @@ const u8 gAerodactylPokedexText[] = _( "extracted from amber. It is imagined to\n" "have been the king of the skies."); +const u8 gAerodactylMegaPokedexText[] = _( + "The power of Mega Evolution has\n" + "completely restored its genes. The rocks\n" + "on its body are harder than diamond."); + const u8 gSnorlaxPokedexText[] = _( "Snorlax's typical day consists of nothing\n" "more than eating and sleeping. It is such\n" @@ -904,6 +1085,18 @@ const u8 gMewtwoPokedexText[] = _( "scientific power of humans made its body,\n" "they failed to give it a warm heart."); +const u8 gMewtwoMegaXPokedexText[] = _( + "Psychic power has augmented its muscles.\n" + "It has a grip strength of one ton and can\n" + "sprint a hundred meters in two seconds\n" + "flat!"); + +const u8 gMewtwoMegaYPokedexText[] = _( + "Despite its diminished size, its mental\n" + "power has grown phenomenally. With a mere\n" + "thought, it can smash a skyscraper to\n" + "smithereens."); + const u8 gMewPokedexText[] = _( "A Mew is said to possess the genes of all\n" "Pokémon. It is capable of making itself\n" @@ -1090,6 +1283,12 @@ const u8 gAmpharosPokedexText[] = _( "days used its light to send signals back\n" "and forth with others far away."); +const u8 gAmpharosMegaPokedexText[] = _( + "Massive amounts of energy intensely\n" + "stimulated Ampharos's cells, apparently\n" + "awakening its long-sleeping dragon's\n" + "blood."); + const u8 gBellossomPokedexText[] = _( "Its flower petals deepen in color through\n" "exposure to sunlight. When cloudy weather\n" @@ -1252,6 +1451,8 @@ const u8 gSteelixPokedexText[] = _( "toward the earth's core, reaching a depth\n" "of over six-tenths of a mile underground."); +//const u8 gSteelixMegaPokedexText[] = _(""); // No official dex entry + const u8 gSnubbullPokedexText[] = _( "By baring its fangs and making a scary\n" "face, it sends smaller Pokémon scurrying\n" @@ -1276,6 +1477,12 @@ const u8 gScizorPokedexText[] = _( "sorts of attacks. It flaps its wings to\n" "regulate its body temperature."); +const u8 gScizorMegaPokedexText[] = _( + "The excess energy that bathes this\n" + "Pokémon keeps it in constant danger of\n" + "overflow. It can't sustain a battle over\n" + "long periods of time."); + const u8 gShucklePokedexText[] = _( "A Shuckle hides under rocks, keeping its\n" "body concealed inside its shell while\n" @@ -1288,6 +1495,12 @@ const u8 gHeracrossPokedexText[] = _( "steel-hard shell. It is proud of its horn,\n" "which it uses to fling foes."); +const u8 gHeracrossMegaPokedexText[] = _( + "A tremendous influx of energy builds it up,\n" + "but when Mega Evolution ends, Heracross\n" + "is bothered by terrible soreness in its\n" + "muscles."); + const u8 gSneaselPokedexText[] = _( "A Sneasel scales trees by punching its\n" "hooked claws into the bark. It seeks out\n" @@ -1378,6 +1591,11 @@ const u8 gHoundoomPokedexText[] = _( "role. They choose their leader by fighting\n" "among themselves."); +const u8 gHoundoomMegaPokedexText[] = _( + "Its red claws and the tips of its tail are\n" + "melting from high internal temperatures\n" + "that are painful to Houndoom itself.\n"); + const u8 gKingdraPokedexText[] = _( "It sleeps quietly, deep on the seafloor.\n" "When it comes up to the surface, it\n" @@ -1492,6 +1710,12 @@ const u8 gTyranitarPokedexText[] = _( "its nest. It roams in mountains seeking\n" "new opponents to fight."); +const u8 gTyranitarMegaPokedexText[] = _( + "Due to the colossal power poured into it,\n" + "this Pokémon's back split right open. Its\n" + "destructive instincts are the only thing\n" + "keeping it moving."); + const u8 gLugiaPokedexText[] = _( "Lugia is so powerful even a light\n" "fluttering of its wings can blow apart\n" @@ -1528,6 +1752,8 @@ const u8 gSceptilePokedexText[] = _( "plants. It regulates its body temperature\n" "by basking in sunlight."); +//const u8 gSceptileMegaPokedexText[] = _(""); // No official dex entry + const u8 gTorchicPokedexText[] = _( "If attacked, it strikes back by spitting\n" "balls of fire it forms in its stomach.\n" @@ -1546,6 +1772,8 @@ const u8 gBlazikenPokedexText[] = _( "feathers burn off, and new, supple\n" "feathers grow back in their place."); +//const u8 gBlazikenMegaPokedexText[] = _(""); // No official dex entry + const u8 gMudkipPokedexText[] = _( "On land, it can powerfully lift large\n" "boulders by planting its four feet and\n" @@ -1564,6 +1792,8 @@ const u8 gSwampertPokedexText[] = _( "by piling up boulders. It swims as fast as\n" "a jet ski."); +//const u8 gSwampertMegaPokedexText[] = _(""); // No official dex entry + const u8 gPoochyenaPokedexText[] = _( "It savagely threatens foes with bared\n" "fangs. It chases after fleeing targets\n" @@ -1786,6 +2016,11 @@ const u8 gSableyePokedexText[] = _( "A Sableye lurks in darkness and is seen\n" "only rarely."); +const u8 gSableyeMegaPokedexText[] = _( + "Bathed in the energy of Mega Evolution,\n" + "the gemstone on its chest expands, rips\n" + "through its skin, and falls out."); + const u8 gBarboachPokedexText[] = _( "Its body is covered with a slimy film.\n" "The film acts as a barrier to prevent germs\n" @@ -1840,6 +2075,12 @@ const u8 gSharpedoPokedexText[] = _( "drag in water. Its speed tops out at over\n" "75 miles per hour."); +const u8 gSharpedoMegaPokedexText[] = _( + "The yellow patterns it bears are old scars.\n" + "The energy from Mega Evolution runs\n" + "through them, causing it sharp pain and\n" + "suffering."); + const u8 gTrapinchPokedexText[] = _( "Its big jaws crunch through boulders.\n" "Because its head is so big, it has a hard\n" @@ -1882,6 +2123,11 @@ const u8 gManectricPokedexText[] = _( "from lightning. In battle, they create\n" "thunderclouds."); +const u8 gManectricMegaPokedexText[] = _( + "Too much electricity has built up in its\n" + "body, irritating Manectric. Its explosive\n" + "speed is equal to that of a lightning bolt."); + const u8 gNumelPokedexText[] = _( "A Numel stores boiling magma in the hump\n" "on its back. It is a hardy Pokémon that can\n" @@ -1894,6 +2140,8 @@ const u8 gCameruptPokedexText[] = _( "on its back erupt violently. Research is\n" "under way on the cause of eruption."); +//const u8 gCameruptMegaPokedexText[] = _(""); // No official dex entry + const u8 gSphealPokedexText[] = _( "It is completely covered with plushy fur.\n" "As a result, it never feels the cold even\n" @@ -1936,6 +2184,11 @@ const u8 gGlaliePokedexText[] = _( "A dazzling cloud of diamondlike ice\n" "crystals forms around its body."); +const u8 gGlalieMegaPokedexText[] = _( + "The power of Mega Evolution was so strong\n" + "that it smashed Glalie's jaw. Its inability\n" + "to eat very well leaves Glalie irritated."); + const u8 gLunatonePokedexText[] = _( "It becomes very active on the night of\n" "a full moon. This Pokémon was first\n" @@ -1984,6 +2237,12 @@ const u8 gMawilePokedexText[] = _( "complacency with its adorable gestures,\n" "then chomps them with its huge jaws."); +const u8 gMawileMegaPokedexText[] = _( + "Its two sets of jaws thrash about\n" + "violently as if they each had a will of\n" + "their own. One gnash from them can turn a\n" + "boulder to dust."); + const u8 gMedititePokedexText[] = _( "It continually meditates for hours every\n" "day. As a result of rigorous and dedicated\n" @@ -1996,6 +2255,8 @@ const u8 gMedichamPokedexText[] = _( "actions. It battles with elegant, dance-\n" "like movement."); +//const u8 gMedichamMegaPokedexText[] = _(""); // No official dex entry + const u8 gSwabluPokedexText[] = _( "A Pokémon that has wings like cottony\n" "clouds. After enduring winter, in which\n" @@ -2008,6 +2269,8 @@ const u8 gAltariaPokedexText[] = _( "sky. It launches intensely hot fireballs\n" "from its mouth."); +//const u8 gAltariaMegaPokedexText[] = _(""); // No official dex entry + const u8 gWynautPokedexText[] = _( "A Wynaut loves to eat sweet fruits.\n" "It cleverly picks fruits using its earlike\n" @@ -2110,6 +2373,12 @@ const u8 gAbsolPokedexText[] = _( "disasters. It is a long-lived Pokémon that\n" "has a life-span of 100 years."); +const u8 gAbsolMegaPokedexText[] = _( + "As the energy of Mega Evolution fills it,\n" + "its fur bristles. What you see on its back\n" + "are not true wings, and this Pokémon isn't\n" + "able to fly."); + const u8 gShuppetPokedexText[] = _( "This Pokémon roams about deep in the\n" "night seeking such negative emotions as\n" @@ -2122,6 +2391,11 @@ const u8 gBanettePokedexText[] = _( "dumps and wander about in search of the\n" "children that threw them away."); +const u8 gBanetteMegaPokedexText[] = _( + "Extraordinary energy amplifies its\n" + "cursing power to such an extent that it\n" + "can't help but curse its own Trainer."); + const u8 gSeviperPokedexText[] = _( "Seviper and Zangoose are eternal rivals.\n" "It counters a Zangoose's dazzling agility\n" @@ -2158,6 +2432,8 @@ const u8 gAggronPokedexText[] = _( "Aggron's age. The gouges in its armor are\n" "worn with pride as mementos from battles."); +//const u8 gAggronMegaPokedexText[] = _(""); // No official dex entry + const u8 gCastformPokedexText[] = _( "It alters its form depending on the\n" "weather. Changes in the climate such as\n" @@ -2218,6 +2494,8 @@ const u8 gGardevoirPokedexText[] = _( "psychic power. It will give its life to\n" "protect its Trainer."); +//const u8 gGardevoirMegaPokedexText[] = _(""); // No official dex entry + const u8 gBagonPokedexText[] = _( "Although it is small, this Pokémon is very\n" "powerful because its body is a bundle of\n" @@ -2236,6 +2514,12 @@ const u8 gSalamencePokedexText[] = _( "grow wings. When angered, it loses all\n" "thought and rampages out of control."); +const u8 gSalamenceMegaPokedexText[] = _( + "Mega Evolution fuels its brutality, and it\n" + "may even turn on the Trainer who raised it.\n" + "It's been dubbed the blood-soaked.\n" + "crescent."); + const u8 gBeldumPokedexText[] = _( "When Beldum gather in a swarm, they move\n" "in perfect unison as if they were but one\n" @@ -2254,6 +2538,11 @@ const u8 gMetagrossPokedexText[] = _( "integration, this Pokémon is smarter than\n" "a supercomputer."); +const u8 gMetagrossMegaPokedexText[] = _( + "When it knows it can't win, it digs the\n" + "claws on its legs into its opponent and\n" + "starts the countdown to a big explosion."); + const u8 gRegirockPokedexText[] = _( "A Pokémon that is made entirely of rocks\n" "and boulders. If parts of its body chip off\n" @@ -2278,30 +2567,40 @@ const u8 gKyogrePokedexText[] = _( "feuding with Groudon, it took to sleep at\n" "the bottom of the sea."); +//const u8 gKyogrePrimalPokedexText[] = _(""); // No official dex entry + const u8 gGroudonPokedexText[] = _( "Groudon has appeared in mythology as the\n" "creator of the land. It sleeps in magma\n" "underground and is said to make volcanoes\n" "erupt on awakening."); +//const u8 gGroudonPrimalPokedexText[] = _(""); // No official dex entry + const u8 gRayquazaPokedexText[] = _( "A Pokémon that flies endlessly in the\n" "ozone layer. It is said it would descend\n" "to the ground if Kyogre and Groudon\n" "were to fight."); +//const u8 gRayquazaMegaPokedexText[] = _(""); // No official dex entry + const u8 gLatiasPokedexText[] = _( "They make a small herd of only several\n" "members. They rarely make contact with\n" "people or other Pokémon. They disappear\n" "if they sense enemies."); +//const u8 gLatiasMegaPokedexText[] = _(""); // No official dex entry + const u8 gLatiosPokedexText[] = _( "Even in hiding, it can detect the locations\n" "of others and sense their emotions since\n" "it has telepathy. Its intelligence allows\n" "it to understand human languages."); +//const u8 gLatiosMegaPokedexText[] = _(""); // No official dex entry + const u8 gJirachiPokedexText[] = _( "Jirachi is said to make wishes come true.\n" "While it sleeps, a tough crystalline shell\n" @@ -2573,6 +2872,12 @@ const u8 gLopunnyPokedexText[] = _( "never fails to groom its ears.\n" "It runs with sprightly jumps."); +const u8 gLopunnyMegaPokedexText[] = _( + "Mega Evolution awakens its combative\n" + "instincts. It has shed any fur that got in\n" + "the way of its attacks.\n" + "crescent."); + const u8 gMismagiusPokedexText[] = _( "Its cries sound like incantations.\n" "Those hearing it are tormented by\n" @@ -2675,6 +2980,12 @@ const u8 gGarchompPokedexText[] = _( "covered in fine scales that reduce drag,\n" "enabling it to fly at high speeds."); +const u8 gGarchompMegaPokedexText[] = _( + "Excess energy melted its arms and wings\n" + "into giant scythes, sending it mad with\n" + "rage. It swings its scythes wildly and\n" + "slices the ground to pieces."); + const u8 gMunchlaxPokedexText[] = _( "When it finds something that looks like\n" "it might be edible, it goes right ahead\n" @@ -2693,6 +3004,12 @@ const u8 gLucarioPokedexText[] = _( "to Lucario, since it can detect Auras.\n" "Even foes it could not otherwise see."); +const u8 gLucarioMegaPokedexText[] = _( + "It readies itself to face its enemies by\n" + "focusing its mental energies. Its fighting\n" + "style can be summed up in a single word:\n" + "heartless."); + const u8 gHippopotasPokedexText[] = _( "Hippopotas shuts its nostrils tight when\n" "travelling through sand. Instead of\n" @@ -2765,6 +3082,8 @@ const u8 gAbomasnowPokedexText[] = _( "itself by whipping up blizzards.\n" "It is also known as “The Ice Monster.”"); +//const u8 gAbomasnowMegaPokedexText[] = _(""); // No official dex entry + const u8 gWeavilePokedexText[] = _( "They travel in groups of four or five,\n" "leaving signs for one another on trees\n" @@ -2855,6 +3174,8 @@ const u8 gGalladePokedexText[] = _( "elbows when trying to protect someone.\n" "It can sense what its foe is thinking."); +//const u8 gGalladeMegaPokedexText[] = _(""); // No official dex entry + const u8 gProbopassPokedexText[] = _( "It freely controls three units called\n" "Mini-Noses using magnetic force.\n" @@ -3193,6 +3514,8 @@ const u8 gAudinoPokedexText[] = _( "how someone is feeling or when an egg\n" "might hatch."); +//const u8 gAudinoMegaPokedexText[] = _(""); // No official dex entry + const u8 gTimburrPokedexText[] = _( "These Pokémon appear at building\n" "sites and help out with construction.\n" @@ -4323,6 +4646,8 @@ const u8 gDianciePokedexText[] = _( "the loveliest sight in the whole world.\n" "It creates diamonds between its hands."); +//const u8 gDiancieMegaPokedexText[] = _(""); // No official dex entry + const u8 gHoopaPokedexText[] = _( "In its true form, it possess a huge amount\n" "of power. When its powers are sealed away,\n" diff --git a/src/international_string_util.c b/src/international_string_util.c index f71734fa7e..ddd4a6e44c 100644 --- a/src/international_string_util.c +++ b/src/international_string_util.c @@ -9,6 +9,8 @@ #include "window.h" extern const struct PokedexEntry gPokedexEntries[]; +extern const struct PokedexEntryForms gPokedexEntriesForms[]; +extern const bool8 PokedexEntryFormSkip[NUM_SPECIES]; int GetStringCenterAlignXOffset(int fontId, const u8 *str, int totalWidth) { diff --git a/src/pokedex.c b/src/pokedex.c index 1024ada66d..6ca365f169 100644 --- a/src/pokedex.c +++ b/src/pokedex.c @@ -4251,6 +4251,24 @@ const u8 *GetPokedexCategoryName(u16 dexNum) // unused return gPokedexEntries[dexNum].categoryName; } +u16 GetSpeciesHeightWeight(u16 species, u8 data) +{ + if (species < NUM_SPECIES && gPokedexEntriesForms[species].flags & FLAG_FORM_WEIGHT_HEIGHT) + { + switch (data) + { + case 0: // height + return gPokedexEntriesForms[species].height; + case 1: // weight + return gPokedexEntriesForms[species].weight; + default: + return 1; + } + } + + return GetPokedexHeightWeight(SpeciesToNationalPokedexNum(species), data); +} + u16 GetPokedexHeightWeight(u16 dexNum, u8 data) { switch (data) diff --git a/src/pokemon_size_record.c b/src/pokemon_size_record.c index 7c88e5bf10..1bc704d0ad 100644 --- a/src/pokemon_size_record.c +++ b/src/pokemon_size_record.c @@ -84,7 +84,7 @@ static u32 GetMonSize(u16 species, u16 b) u32 height; u32 var; - height = GetPokedexHeightWeight(SpeciesToNationalPokedexNum(species), 0); + height = GetSpeciesHeightWeight(species, 0); var = TranslateBigMonSizeTableIndex(b); unk0 = sBigMonSizeTable[var].unk0; unk2 = sBigMonSizeTable[var].unk2;