Merge pull request #94 from cawtds/feat/mega-dimension-megas

add mega dimension mega evolutions
This commit is contained in:
cawtds 2025-12-22 14:07:41 +01:00 committed by GitHub
commit 1d2ca4bc44
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
16 changed files with 2498 additions and 40704 deletions

View File

@ -1020,8 +1020,27 @@
#define ITEM_ZYGARDITE 852
#define ITEM_DRAMPANITE 853
#define ITEM_FALINKSITE 854
#define ITEM_HEATRANITE 855
#define ITEM_DARKRANITE 856
#define ITEM_ZERAORITE 857
#define ITEM_RAICHUNITE_X 858
#define ITEM_RAICHUNITE_Y 859
#define ITEM_CHIMECHITE 860
#define ITEM_ABSOLITE_Z 861
#define ITEM_STARAPTITE 862
#define ITEM_GARCHOMPITE_Z 863
#define ITEM_LUCARIONITE_Z 864
#define ITEM_GOLURKITE 865
#define ITEM_MEOWSTICITE 866
#define ITEM_CRABOMINITE 867
#define ITEM_GOLISOPITE 868
#define ITEM_MAGEARNITE 869
#define ITEM_SCOVILLAINITE 870
#define ITEM_BAXCALIBRITE 871
#define ITEM_TATSUGIRINITE 872
#define ITEM_GLIMMORANITE 873
#define ITEMS_COUNT 855
#define ITEMS_COUNT 874
#define ITEM_FIELD_ARROW ITEMS_COUNT
// A special item id associated with "Cancel"/"Exit" etc. in a list of items or decorations

View File

@ -1664,8 +1664,31 @@
#define SPECIES_ZYGARDE_MEGA 1547
#define SPECIES_DRAMPA_MEGA 1548
#define SPECIES_FALINKS_MEGA 1549
#define SPECIES_HEATRAN_MEGA 1550
#define SPECIES_DARKRAI_MEGA 1551
#define SPECIES_ZERAORA_MEGA 1552
#define SPECIES_RAICHU_MEGA_X 1553
#define SPECIES_RAICHU_MEGA_Y 1554
#define SPECIES_CHIMECHO_MEGA 1555
#define SPECIES_ABSOL_MEGA_Z 1556
#define SPECIES_STARAPTOR_MEGA 1557
#define SPECIES_GARCHOMP_MEGA_Z 1558
#define SPECIES_LUCARIO_MEGA_Z 1559
#define SPECIES_GOLURK_MEGA 1560
#define SPECIES_MEOWSTIC_M_MEGA 1561
#define SPECIES_MEOWSTIC_F_MEGA 1562
#define SPECIES_CRABOMINABLE_MEGA 1563
#define SPECIES_GOLISOPOD_MEGA 1564
#define SPECIES_MAGEARNA_MEGA 1565
#define SPECIES_MAGEARNA_ORIGINAL_MEGA 1566
#define SPECIES_SCOVILLAIN_MEGA 1567
#define SPECIES_BAXCALIBUR_MEGA 1568
#define SPECIES_TATSUGIRI_CURLY_MEGA 1569
#define SPECIES_TATSUGIRI_DROOPY_MEGA 1570
#define SPECIES_TATSUGIRI_STRETCHY_MEGA 1571
#define SPECIES_GLIMMORA_MEGA 1572
#define SPECIES_EGG (SPECIES_FALINKS_MEGA + 1)
#define SPECIES_EGG (SPECIES_GLIMMORA_MEGA + 1)
#define NUM_SPECIES SPECIES_EGG

View File

@ -1,109 +0,0 @@
//
// DO NOT MODIFY THIS FILE! It is auto-generated from src/data/battle_partners.party
//
// If you want to modify this file see expansion PR #7154
//
#line 1 "src/data/battle_partners.party"
#line 1
[DIFFICULTY_NORMAL][PARTNER_NONE] =
{
#line 3
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 4
.trainerPic = TRAINER_PIC_RS_BRENDAN_1,
.encounterMusic_gender =
#line 6
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 7
.trainerBackPic = TRAINER_BACK_PIC_RUBY_SAPPHIRE_BRENDAN,
.partySize = 0,
.party = (const struct TrainerMon[])
{
},
},
#line 9
[DIFFICULTY_NORMAL][PARTNER_STEVEN] =
{
#line 10
.trainerName = _("STEVEN"),
#line 11
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 12
.trainerPic = TRAINER_PIC_RS_BRENDAN_1,
.encounterMusic_gender =
#line 14
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 16
.aiFlags = AI_FLAG_BASIC_TRAINER,
#line 15
.trainerBackPic = TRAINER_BACK_PIC_STEVEN,
.partySize = 3,
.party = (const struct TrainerMon[])
{
{
#line 18
.species = SPECIES_METANG,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 22
.ev = TRAINER_PARTY_EVS(0, 252, 252, 0, 6, 0),
#line 21
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 20
.lvl = 42,
#line 19
.nature = NATURE_BRAVE,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
.moves = {
#line 23
MOVE_LIGHT_SCREEN,
MOVE_PSYCHIC,
MOVE_REFLECT,
MOVE_METAL_CLAW,
},
},
{
#line 28
.species = SPECIES_SKARMORY,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 32
.ev = TRAINER_PARTY_EVS(252, 0, 0, 0, 6, 252),
#line 31
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 30
.lvl = 43,
#line 29
.nature = NATURE_IMPISH,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
.moves = {
#line 33
MOVE_TOXIC,
MOVE_AERIAL_ACE,
MOVE_PROTECT,
MOVE_STEEL_WING,
},
},
{
#line 38
.species = SPECIES_AGGRON,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 42
.ev = TRAINER_PARTY_EVS(0, 252, 0, 0, 252, 6),
#line 41
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 40
.lvl = 44,
#line 39
.nature = NATURE_ADAMANT,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
.moves = {
#line 43
MOVE_THUNDER,
MOVE_PROTECT,
MOVE_SOLAR_BEAM,
MOVE_DRAGON_CLAW,
},
},
},
},

View File

@ -1,136 +0,0 @@
//
// DO NOT MODIFY THIS FILE! It is auto-generated from src/data/debug_trainers.party
//
// If you want to modify this file see expansion PR #7154
//
#line 1 "src/data/debug_trainers.party"
#line 14
[DIFFICULTY_NORMAL][DEBUG_TRAINER_PLAYER] =
{
#line 15
.trainerName = _("Player"),
#line 16
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 17
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 19
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
.partySize = 1,
.party = (const struct TrainerMon[])
{
{
#line 21
.nickname = COMPOUND_STRING("Buffie"),
#line 21
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 25
.ev = TRAINER_PARTY_EVS(0, 252, 252, 0, 6, 0),
#line 24
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 23
.lvl = 100,
#line 22
.nature = NATURE_BRAVE,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
.moves = {
#line 26
MOVE_EARTHQUAKE,
MOVE_FLAMETHROWER,
MOVE_CELEBRATE,
MOVE_CELEBRATE,
},
},
},
},
#line 31
[DIFFICULTY_NORMAL][DEBUG_TRAINER_AI] =
{
#line 32
.trainerName = _("Debugger"),
#line 34
.trainerClass = TRAINER_CLASS_CHAMPION,
#line 36
.trainerPic = TRAINER_PIC_CHAMPION_STEVEN,
.encounterMusic_gender =
#line 38
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 35
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 33
.aiFlags = AI_FLAG_BASIC_TRAINER,
#line 0
.trainerBackPic = TRAINER_PIC_CHAMPION_STEVEN,
.partySize = 3,
.party = (const struct TrainerMon[])
{
{
#line 40
.species = SPECIES_METANG,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 44
.ev = TRAINER_PARTY_EVS(0, 252, 252, 0, 6, 0),
#line 43
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 42
.lvl = 42,
#line 41
.nature = NATURE_BRAVE,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
.moves = {
#line 45
MOVE_LIGHT_SCREEN,
MOVE_PSYCHIC,
MOVE_REFLECT,
MOVE_METAL_CLAW,
},
},
{
#line 50
.species = SPECIES_SKARMORY,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 54
.ev = TRAINER_PARTY_EVS(252, 0, 0, 0, 6, 252),
#line 53
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 52
.lvl = 43,
#line 51
.nature = NATURE_IMPISH,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
.moves = {
#line 55
MOVE_TOXIC,
MOVE_AERIAL_ACE,
MOVE_PROTECT,
MOVE_STEEL_WING,
},
},
{
#line 60
.species = SPECIES_AGGRON,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 64
.ev = TRAINER_PARTY_EVS(0, 252, 0, 0, 252, 6),
#line 63
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 62
.lvl = 44,
#line 61
.nature = NATURE_ADAMANT,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
.moves = {
#line 65
MOVE_THUNDER,
MOVE_PROTECT,
MOVE_SOLAR_BEAM,
MOVE_DRAGON_CLAW,
},
},
},
},

View File

@ -91,6 +91,22 @@ static const u8 sMewtwoniteDesc[] = _("This stone enables "
"Mewtwo to Mega\n"
"Evolve in battle.");
static const u8 sRaichuniteDesc[] = _("This stone enables "
"Raichu to Mega\n"
"Evolve in battle.");
static const u8 sAbsoliteDesc[] = _("This stone enables "
"Absol to Mega "
"\nEvolve in battle.");
static const u8 sGarchompiteDesc[] = _("This stone enables "
"Garchomp to\nMega "
"Evolve in battle.");
static const u8 sLucarioniteDesc[] = _("This stone enables "
"Lucario to\nMega "
"Evolve in battle.");
static const u8 sSeaIncenseDesc[] = _("A hold item that "
"slightly boosts "
"\nWater-type moves.");
@ -6137,10 +6153,7 @@ const struct Item gItemsInfo[] =
.name = ITEM_NAME("Absolite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Absol to Mega "
"\nEvolve in battle."),
.description = sAbsoliteDesc,
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
@ -6263,10 +6276,7 @@ const struct Item gItemsInfo[] =
.name = ITEM_NAME("Garchompite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Garchomp to\nMega "
"Evolve in battle."),
.description = sGarchompiteDesc,
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
@ -6281,10 +6291,7 @@ const struct Item gItemsInfo[] =
.name = ITEM_NAME("Lucarionite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Lucario to\nMega "
"Evolve in battle."),
.description = sLucarioniteDesc,
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
@ -6834,6 +6841,333 @@ const struct Item gItemsInfo[] =
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Falinksite,
},
[ITEM_HEATRANITE] =
{
.name = ITEM_NAME("Heatranite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Heatran to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Darkranite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Darkranite,
},
[ITEM_DARKRANITE] =
{
.name = ITEM_NAME("Darkranite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Darkrai to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Darkranite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Darkranite,
},
[ITEM_ZERAORITE] =
{
.name = ITEM_NAME("Zeraorite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Zeraora to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Zeraorite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Zeraorite,
},
[ITEM_RAICHUNITE_X] =
{
.name = ITEM_NAME("Raichunite X"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = sRaichuniteDesc,
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_RaichuniteX,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_RaichuniteX,
},
[ITEM_RAICHUNITE_Y] =
{
.name = ITEM_NAME("Raichunite Y"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = sRaichuniteDesc,
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_RaichuniteY,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_RaichuniteY,
},
[ITEM_CHIMECHITE] =
{
.name = ITEM_NAME("Chimechite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Chimecho to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Chimechite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Chimechite,
},
[ITEM_ABSOLITE_Z] =
{
.name = ITEM_NAME("Absolite Z"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = sAbsoliteDesc,
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_AbsoliteZ,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_AbsoliteZ,
},
[ITEM_STARAPTITE] =
{
.name = ITEM_NAME("Staraptite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Staraptor to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Staraptite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Staraptite,
},
[ITEM_GARCHOMPITE_Z] =
{
.name = ITEM_NAME("Garchompite Z"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = sGarchompiteDesc,
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_GarchompiteZ,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_GarchompiteZ,
},
[ITEM_LUCARIONITE_Z] =
{
.name = ITEM_NAME("Lucarionite Z"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = sLucarioniteDesc,
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_LucarioniteZ,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_LucarioniteZ,
},
[ITEM_GOLURKITE] =
{
.name = ITEM_NAME("Golurkite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Golurk to Mega\n"
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Golurkite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Golurkite,
},
[ITEM_MEOWSTICITE] =
{
.name = ITEM_NAME("Meowsticite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Meowstic to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Meowsticite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Meowsticite,
},
[ITEM_CRABOMINITE] =
{
.name = ITEM_NAME("Crabominite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Crabominable\nto "
"Mega in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Crabominite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Crabominite,
},
[ITEM_GOLISOPITE] =
{
.name = ITEM_NAME("Golisopite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Golisopod to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Golisopite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Golisopite,
},
[ITEM_MAGEARNITE] =
{
.name = ITEM_NAME("Magearnite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Magearna to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Magearnite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Magearnite,
},
[ITEM_SCOVILLAINITE] =
{
.name = ITEM_NAME("Scovillainite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Scovillain to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Scovillainite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Scovillainite,
},
[ITEM_BAXCALIBRITE] =
{
.name = ITEM_NAME("Baxcalibrite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Baxcalibur to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Baxcalibrite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Baxcalibrite,
},
[ITEM_TATSUGIRINITE] =
{
.name = ITEM_NAME("Tatsugirinite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Tatsugiri to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Tatsugirinite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Tatsugirinite,
},
[ITEM_GLIMMORANITE] =
{
.name = ITEM_NAME("Glimmoranite"),
.price = 0,
.holdEffect = HOLD_EFFECT_MEGA_STONE,
.description = COMPOUND_STRING(
"This stone enables "
"Glimmora to\nMega "
"Evolve in battle."),
.pocket = POCKET_ITEMS,
.sortType = ITEM_TYPE_MEGA_STONE,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
.flingPower = 80,
.iconPic = gItemIcon_QuestionMark, // gItemIcon_Glimmoranite,
.iconPalette = gItemIconPalette_QuestionMark, // gItemIconPalette_Glimmoranite,
},
// Gems
[ITEM_NORMAL_GEM] =
@ -11888,7 +12222,7 @@ const struct Item gItemsInfo[] =
.description = COMPOUND_STRING(
"Zaps the foe with a "
"\njolt of electricity "
"that\nnever misses."),
"\nthat never misses."),
.importance = I_REUSABLE_TMS,
.pocket = POCKET_TM_HM,
.type = ITEM_USE_PARTY_MENU,

View File

@ -71,6 +71,14 @@ static const struct FormChange sPikachuFormChangeTable[] =
#endif
{FORM_CHANGE_TERMINATOR},
};
static const struct FormChange sRaichuFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_RAICHU_MEGA_X, ITEM_RAICHUNITE_X},
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_RAICHU_MEGA_Y, ITEM_RAICHUNITE_Y},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_PIKACHU
#if P_FAMILY_CLEFAIRY
@ -453,10 +461,22 @@ static const struct FormChange sBanetteFormChangeTable[] = {
};
#endif //P_FAMILY_SHUPPET
#if P_FAMILY_CHIMECHO
static const struct FormChange sChimechoFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_CHIMECHO_MEGA, ITEM_CHIMECHITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_CHIMECHO
#if P_FAMILY_ABSOL
static const struct FormChange sAbsolFormChangeTable[] = {
#if P_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_ABSOL_MEGA, ITEM_ABSOLITE},
#endif
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_ABSOL_MEGA_Z, ITEM_ABSOLITE_Z},
#endif
{FORM_CHANGE_TERMINATOR},
};
@ -596,6 +616,15 @@ static const struct FormChange sDeoxysSpeedFormChangeTable[] = {
};
#endif //P_FAMILY_DEOXYS
#if P_FAMILY_STARLY
static const struct FormChange sStaraptorFormChangeTable[] = {
#if P_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_STARAPTOR_MEGA, ITEM_STARAPTITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_STARLY
#if P_FAMILY_BURMY
static const struct FormChange sBurmyFormChangeTable[] = {
{FORM_CHANGE_END_BATTLE_ENVIRONMENT, SPECIES_BURMY_PLANT, BATTLE_ENVIRONMENT_GRASS},
@ -647,6 +676,9 @@ static const struct FormChange sLopunnyFormChangeTable[] = {
static const struct FormChange sGarchompFormChangeTable[] = {
#if P_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_GARCHOMP_MEGA, ITEM_GARCHOMPITE},
#endif
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_GARCHOMP_MEGA_Z, ITEM_GARCHOMPITE_Z},
#endif
{FORM_CHANGE_TERMINATOR},
};
@ -656,6 +688,9 @@ static const struct FormChange sGarchompFormChangeTable[] = {
static const struct FormChange sLucarioFormChangeTable[] = {
#if P_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_LUCARIO_MEGA, ITEM_LUCARIONITE},
#endif
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_LUCARIO_MEGA_Z, ITEM_LUCARIONITE_Z},
#endif
{FORM_CHANGE_TERMINATOR},
};
@ -698,6 +733,15 @@ static const struct FormChange sPalkiaFormChangeTable[] = {
};
#endif //P_FAMILY_PALKIA
#if P_FAMILY_HEATRAN
static const struct FormChange sHeatranFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_HEATRAN_MEGA, ITEM_HEATRANITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_HEATRAN
#if P_FAMILY_GIRATINA
static const struct FormChange sGiratinaFormChangeTable[] = {
{FORM_CHANGE_ITEM_HOLD, SPECIES_GIRATINA_ALTERED, ITEM_NONE},
@ -709,6 +753,15 @@ static const struct FormChange sGiratinaFormChangeTable[] = {
};
#endif //P_FAMILY_GIRATINA
#if P_FAMILY_DARKRAI
static const struct FormChange sDarkraiFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_DARKRAI_MEGA, ITEM_DARKRANITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_DARKRAI
#if P_FAMILY_SHAYMIN
static const struct FormChange sShayminFormChangeTable[] = {
{FORM_CHANGE_ITEM_USE, SPECIES_SHAYMIN_SKY, ITEM_GRACIDEA, DAY, STATUS1_FREEZE | STATUS1_FROSTBITE},
@ -853,6 +906,15 @@ static const struct FormChange sChandelureFormChangeTable[] = {
};
#endif //P_FAMILY_LITWICK
#if P_FAMILY_GOLETT
static const struct FormChange sGolurkFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_GOLURK_MEGA, ITEM_GOLURKITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_GOLETT
#if P_FAMILY_TORNADUS
static const struct FormChange sTornadusFormChangeTable[] = {
{FORM_CHANGE_ITEM_USE, SPECIES_TORNADUS_THERIAN, ITEM_REVEAL_GLASS},
@ -973,6 +1035,22 @@ static const struct FormChange sFurfrouFormChangeTable[] = {
};
#endif //P_FAMILY_FURFROU
#if P_FAMILY_ESPURR
static const struct FormChange sMeowsticMFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_MEOWSTIC_M_MEGA, ITEM_MEOWSTICITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
static const struct FormChange sMeowsticFFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_MEOWSTIC_F_MEGA, ITEM_MEOWSTICITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_ESPURR
#if P_FAMILY_HONEDGE
static const struct FormChange sAegislashFormChangeTable[] = {
{FORM_CHANGE_BATTLE_BEFORE_MOVE_CATEGORY, SPECIES_AEGISLASH_BLADE, DAMAGE_CATEGORY_PHYSICAL, ABILITY_STANCE_CHANGE},
@ -1084,6 +1162,15 @@ static const struct FormChange sHoopaFormChangeTable[] = {
};
#endif //P_FAMILY_HOOPA
#if P_FAMILY_CRABRAWLER
static const struct FormChange sCrabominableFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_CRABOMINABLE_MEGA, ITEM_CRABOMINITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_CRABRAWLER
#if P_FAMILY_ORICORIO
static const struct FormChange sOricorioFormChangeTable[] = {
{FORM_CHANGE_ITEM_USE, SPECIES_ORICORIO_BAILE, ITEM_RED_NECTAR},
@ -1105,6 +1192,15 @@ static const struct FormChange sWishiwashiFormChangeTable[] = {
};
#endif //P_FAMILY_WISHIWASHI
#if P_FAMILY_WIMPOD
static const struct FormChange sGolisopodFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_GOLISOPOD_MEGA, ITEM_GOLISOPITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_WIMPOD
#if P_FAMILY_TYPE_NULL
static const struct FormChange sSilvallyFormChangeTable[] = {
{FORM_CHANGE_ITEM_HOLD, SPECIES_SILVALLY_NORMAL, ITEM_NONE, ABILITY_RKS_SYSTEM},
@ -1239,6 +1335,31 @@ static const struct FormChange sNecrozmaDawnWingsFormChangeTable[] = {
};
#endif //P_FAMILY_NECROZMA
#if P_FAMILY_MAGEARNA
static const struct FormChange sMagearnaFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_MAGEARNA_MEGA, ITEM_MAGEARNITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
static const struct FormChange sMagearnaOriginalFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_MAGEARNA_ORIGINAL_MEGA, ITEM_MAGEARNITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_MAGEARNA
#if P_FAMILY_ZERAORA
static const struct FormChange sZeraoraFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_ZERAORA_MEGA, ITEM_ZERAORITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_ZERAORA
#if P_FAMILY_MELTAN
static const struct FormChange sMelmetalFormChangeTable[] =
{
@ -1512,6 +1633,15 @@ static const struct FormChange sEnamorusFormChangeTable[] = {
};
#endif //P_FAMILY_ENAMORUS
#if P_FAMILY_CAPSAKID
static const struct FormChange sScovillainFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_SCOVILLAIN_MEGA, ITEM_SCOVILLAINITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_CAPSAKID
#if P_FAMILY_FINIZEN
static const struct FormChange sPalafinZeroFormChangeTable[] =
{
@ -1520,6 +1650,45 @@ static const struct FormChange sPalafinZeroFormChangeTable[] =
};
#endif //P_FAMILY_FINIZEN
#if P_FAMILY_GLIMMET
static const struct FormChange sGlimmoraFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_GLIMMORA_MEGA, ITEM_GLIMMORANITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_GLIMMET
#if P_FAMILY_TATSUGIRI
static const struct FormChange sTatsugiriCurlyFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_TATSUGIRI_CURLY_MEGA, ITEM_TATSUGIRINITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
static const struct FormChange sTatsugiriDroopyFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_TATSUGIRI_DROOPY_MEGA, ITEM_TATSUGIRINITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
static const struct FormChange sTatsugiriStretchyFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_TATSUGIRI_STRETCHY_MEGA, ITEM_TATSUGIRINITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_TATSUGIRI
#if P_FAMILY_FRIGIBAX
static const struct FormChange sBaxcaliburFormChangeTable[] = {
#if P_GEN_9_MEGA_EVOLUTIONS
{FORM_CHANGE_BATTLE_MEGA_EVOLUTION_ITEM, SPECIES_BAXCALIBUR_MEGA, ITEM_BAXCALIBRITE},
#endif
{FORM_CHANGE_TERMINATOR},
};
#endif //P_FAMILY_FRIGIBAX
#if P_FAMILY_OGERPON
static const struct FormChange sOgerponFormChangeTable[] = {
{FORM_CHANGE_ITEM_HOLD, SPECIES_OGERPON_TEAL, ITEM_NONE},

View File

@ -127,6 +127,10 @@ static const u16 sRaichuFormSpeciesIdTable[] = {
SPECIES_RAICHU,
#if P_ALOLAN_FORMS
SPECIES_RAICHU_ALOLA,
#endif
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_RAICHU_MEGA_X,
SPECIES_RAICHU_MEGA_Y,
#endif
FORM_SPECIES_END,
};
@ -959,11 +963,24 @@ static const u16 sBanetteFormSpeciesIdTable[] = {
};
#endif //P_FAMILY_SHUPPET
#if P_FAMILY_CHIMECHO
static const u16 sChimechoFormSpeciesIdTable[] = {
SPECIES_CHIMECHO,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_CHIMECHO_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_CHIMECHO
#if P_FAMILY_ABSOL
static const u16 sAbsolFormSpeciesIdTable[] = {
SPECIES_ABSOL,
#if P_MEGA_EVOLUTIONS
SPECIES_ABSOL_MEGA,
#endif
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_ABSOL_MEGA_Z,
#endif
FORM_SPECIES_END,
};
@ -1067,6 +1084,16 @@ static const u16 sDeoxysFormSpeciesIdTable[] = {
};
#endif //P_FAMILY_DEOXYS
#if P_FAMILY_STARLY
static const u16 sStaraptorFormSpeciesIdTable[] = {
SPECIES_STARAPTOR,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_STARAPTOR_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_STARLY
#if P_FAMILY_BURMY
static const u16 sBurmyFormSpeciesIdTable[] = {
SPECIES_BURMY_PLANT,
@ -1127,6 +1154,9 @@ static const u16 sGarchompFormSpeciesIdTable[] = {
SPECIES_GARCHOMP,
#if P_MEGA_EVOLUTIONS
SPECIES_GARCHOMP_MEGA,
#endif
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_GARCHOMP_MEGA_Z,
#endif
FORM_SPECIES_END,
};
@ -1137,6 +1167,9 @@ static const u16 sLucarioFormSpeciesIdTable[] = {
SPECIES_LUCARIO,
#if P_MEGA_EVOLUTIONS
SPECIES_LUCARIO_MEGA,
#endif
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_LUCARIO_MEGA_Z,
#endif
FORM_SPECIES_END,
};
@ -1180,6 +1213,16 @@ static const u16 sPalkiaFormSpeciesIdTable[] = {
};
#endif //P_FAMILY_PALKIA
#if P_FAMILY_HEATRAN
static const u16 sHeatranFormSpeciesIdTable[] = {
SPECIES_HEATRAN,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_HEATRAN_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_HEATRAN
#if P_FAMILY_GIRATINA
static const u16 sGiratinaFormSpeciesIdTable[] = {
SPECIES_GIRATINA_ALTERED,
@ -1188,6 +1231,16 @@ static const u16 sGiratinaFormSpeciesIdTable[] = {
};
#endif //P_FAMILY_GIRATINA
#if P_FAMILY_DARKRAI
static const u16 sDarkraiFormSpeciesIdTable[] = {
SPECIES_DARKRAI,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_DARKRAI_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_DARKRAI
#if P_FAMILY_SHAYMIN
static const u16 sShayminFormSpeciesIdTable[] = {
SPECIES_SHAYMIN_LAND,
@ -1401,6 +1454,16 @@ static const u16 sChandelureFormSpeciesIdTable[] = {
};
#endif //P_FAMILY_LITWICK
#if P_FAMILY_GOLETT
static const u16 sGolurkFormSpeciesIdTable[] = {
SPECIES_GOLURK,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_GOLURK_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_GOLETT
#if P_FAMILY_STUNFISK
static const u16 sStunfiskFormSpeciesIdTable[] = {
SPECIES_STUNFISK,
@ -1650,6 +1713,10 @@ static const u16 sFurfrouFormSpeciesIdTable[] = {
static const u16 sMeowsticFormSpeciesIdTable[] = {
SPECIES_MEOWSTIC_M,
SPECIES_MEOWSTIC_F,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_MEOWSTIC_M_MEGA,
SPECIES_MEOWSTIC_F_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_ESPURR
@ -1814,6 +1881,16 @@ static const u16 sVikavoltFormSpeciesIdTable[] = {
};
#endif //P_FAMILY_GRUBBIN
#if P_FAMILY_CRABRAWLER
static const u16 sCrabominableFormSpeciesIdTable[] = {
SPECIES_CRABOMINABLE,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_CRABOMINABLE_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_CRABRAWLER
#if P_FAMILY_ORICORIO
static const u16 sOricorioFormSpeciesIdTable[] = {
SPECIES_ORICORIO_BAILE,
@ -1879,6 +1956,16 @@ static const u16 sSalanditFormSpeciesIdTable[] = {
};
#endif //P_FAMILY_FOMANTIS
#if P_FAMILY_WIMPOD
static const u16 sGolisopodFormSpeciesIdTable[] = {
SPECIES_GOLISOPOD,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_GOLISOPOD_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_WIMPOD
#if P_FAMILY_TYPE_NULL
static const u16 sSilvallyFormSpeciesIdTable[] = {
SPECIES_SILVALLY_NORMAL,
@ -1975,10 +2062,24 @@ static const u16 sNecrozmaFormSpeciesIdTable[] = {
static const u16 sMagearnaFormSpeciesIdTable[] = {
SPECIES_MAGEARNA,
SPECIES_MAGEARNA_ORIGINAL,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_MAGEARNA_MEGA,
SPECIES_MAGEARNA_ORIGINAL_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_MAGEARNA
#if P_FAMILY_ZERAORA
static const u16 sZeraoraFormSpeciesIdTable[] = {
SPECIES_ZERAORA,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_ZERAORA_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_ZERAORA
#if P_FAMILY_MELTAN
static const u16 sMelmetalFormSpeciesIdTable[] = {
SPECIES_MELMETAL,
@ -2367,6 +2468,16 @@ static const u16 sSquawkabillyFormSpeciesIdTable[] = {
};
#endif //P_FAMILY_SQUAWKABILLY
#if P_FAMILY_CAPSAKID
static const u16 sScovillainFormSpeciesIdTable[] = {
SPECIES_SCOVILLAIN,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_SCOVILLAIN_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_CAPSAKID
#if P_FAMILY_FINIZEN
static const u16 sPalafinFormSpeciesIdTable[] = {
SPECIES_PALAFIN_ZERO,
@ -2375,15 +2486,40 @@ static const u16 sPalafinFormSpeciesIdTable[] = {
};
#endif //P_FAMILY_FINIZEN
#if P_FAMILY_GLIMMET
static const u16 sGlimmoraFormSpeciesIdTable[] = {
SPECIES_GLIMMORA,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_GLIMMORA_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_GLIMMET
#if P_FAMILY_TATSUGIRI
static const u16 sTatsugiriFormSpeciesIdTable[] = {
SPECIES_TATSUGIRI_CURLY,
SPECIES_TATSUGIRI_DROOPY,
SPECIES_TATSUGIRI_STRETCHY,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_TATSUGIRI_CURLY_MEGA,
SPECIES_TATSUGIRI_DROOPY_MEGA,
SPECIES_TATSUGIRI_STRETCHY_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_TATSUGIRI
#if P_FAMILY_FRIGIBAX
static const u16 sBaxcaliburFormSpeciesIdTable[] = {
SPECIES_BAXCALIBUR,
#if P_GEN_9_MEGA_EVOLUTIONS
SPECIES_BAXCALIBUR_MEGA,
#endif
FORM_SPECIES_END,
};
#endif //P_FAMILY_FRIGIBAX
#if P_FAMILY_GIMMIGHOUL
static const u16 sGimmighoulFormSpeciesIdTable[] = {
SPECIES_GIMMIGHOUL_CHEST,

View File

@ -3953,6 +3953,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.levelUpLearnset = sRaichuLevelUpLearnset,
.teachableLearnset = sRaichuTeachableLearnset,
.formSpeciesIdTable = sRaichuFormSpeciesIdTable,
.formChangeTable = sRaichuFormChangeTable,
},
#if P_ALOLAN_FORMS
@ -4022,6 +4023,156 @@ const struct SpeciesInfo gSpeciesInfoGen1[] =
.formSpeciesIdTable = sRaichuFormSpeciesIdTable,
},
#endif //P_ALOLAN_FORMS
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_RAICHU_MEGA_X] =
{
.baseHP = 60,
.baseAttack = 135,
.baseDefense = 95,
.baseSpeed = 110,
.baseSpAttack = 90,
.baseSpDefense = 95,
.types = MON_TYPES(TYPE_ELECTRIC),
.catchRate = 75,
.expYield = RAICHU_EXP_YIELD,
.evYield_Speed = 3,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 10,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_FAST,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_FIELD, EGG_GROUP_FAIRY),
.abilities = { ABILITY_STATIC, ABILITY_NONE, ABILITY_LIGHTNING_ROD },
.bodyColor = BODY_COLOR_YELLOW,
.speciesName = _("Raichu"),
.cryId = CRY_RAICHU, // CRY_RAICHU_MEGA_X
.natDexNum = NATIONAL_DEX_RAICHU,
.categoryName = _("Mouse"),
.height = 12,
.weight = 380,
.description = COMPOUND_STRING(
"It resembles an X as it flies through\n"
"the air with 50 million volts of\n"
"electricity sparking from its ears and\n"
"forked tail."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sRaichuLevelUpLearnset,
.teachableLearnset = sRaichuTeachableLearnset,
.formSpeciesIdTable = sRaichuFormSpeciesIdTable,
.formChangeTable = sRaichuFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_RAICHU_MEGA_Y] =
{
.baseHP = 60,
.baseAttack = 100,
.baseDefense = 55,
.baseSpeed = 130,
.baseSpAttack = 160,
.baseSpDefense = 80,
.types = MON_TYPES(TYPE_ELECTRIC),
.catchRate = 75,
.expYield = RAICHU_EXP_YIELD,
.evYield_Speed = 3,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 10,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_FAST,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_FIELD, EGG_GROUP_FAIRY),
.abilities = { ABILITY_STATIC, ABILITY_NONE, ABILITY_LIGHTNING_ROD },
.bodyColor = BODY_COLOR_YELLOW,
.speciesName = _("Raichu"),
.cryId = CRY_RAICHU, // CRY_RAICHU_MEGA_Y
.natDexNum = NATIONAL_DEX_RAICHU,
.categoryName = _("Mouse"),
.height = 10,
.weight = 260,
.description = COMPOUND_STRING(
"It fires bolts of electricity from the\n"
"tip of its tail and from the spiky tufts\n"
"of fur growing out of its temples. This\n"
"electricity forms the letter Y."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sRaichuLevelUpLearnset,
.teachableLearnset = sRaichuTeachableLearnset,
.formSpeciesIdTable = sRaichuFormSpeciesIdTable,
.formChangeTable = sRaichuFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_PIKACHU
#if P_FAMILY_SANDSHREW

View File

@ -10238,7 +10238,93 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
.levelUpLearnset = sChimechoLevelUpLearnset,
.teachableLearnset = sChimechoTeachableLearnset,
.eggMoveLearnset = sChimechoEggMoveLearnset,
.formSpeciesIdTable = sChimechoFormSpeciesIdTable,
.formChangeTable = sChimechoFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_CHIMECHO_MEGA] =
{
.baseHP = 75,
.baseAttack = 50,
.baseDefense = 110,
.baseSpeed = 65,
.baseSpAttack = 135,
.baseSpDefense = 120,
.types = MON_TYPES(TYPE_PSYCHIC, TYPE_STEEL),
.catchRate = 45,
#if P_UPDATED_EXP_YIELDS >= GEN_7
.expYield = 159,
#elif P_UPDATED_EXP_YIELDS >= GEN_5
.expYield = 149,
#else
.expYield = 147,
#endif
.evYield_SpAttack = 1,
.evYield_SpDefense = 1,
.itemRare = ITEM_CLEANSE_TAG,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 25,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_FAST,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_AMORPHOUS),
.abilities = { ABILITY_LEVITATE, ABILITY_NONE, ABILITY_NONE },
.bodyColor = BODY_COLOR_BLUE,
.speciesName = _("Chimecho"),
.cryId = CRY_CHIMECHO, // CRY_CHIMECHO_MEGA
.natDexNum = NATIONAL_DEX_CHIMECHO,
.categoryName = _("Wind Chime"),
.height = 12,
.weight = 80,
.description = COMPOUND_STRING(
"It vibrates its entire body to attack in\n"
"all directions using sound waves. Any who\n"
"hear the vibrations get so confused, they\n"
"forget who they are."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sChimechoLevelUpLearnset,
.teachableLearnset = sChimechoTeachableLearnset,
.eggMoveLearnset = sChimechoEggMoveLearnset,
.formSpeciesIdTable = sChimechoFormSpeciesIdTable,
.formChangeTable = sChimechoFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_CHIMECHO
#if P_FAMILY_ABSOL
@ -10391,6 +10477,83 @@ const struct SpeciesInfo gSpeciesInfoGen3[] =
.formChangeTable = sAbsolFormChangeTable,
},
#endif //P_MEGA_EVOLUTIONS
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_ABSOL_MEGA_Z] =
{
.baseHP = 65,
.baseAttack = 154,
.baseDefense = 60,
.baseSpeed = 151,
.baseSpAttack = 75,
.baseSpDefense = 60,
.types = MON_TYPES(TYPE_DARK, TYPE_GHOST),
.catchRate = 30,
.expYield = 198,
.evYield_Attack = 2,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 25,
.friendship = 35,
.growthRate = GROWTH_MEDIUM_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_FIELD),
.abilities = { ABILITY_MAGIC_BOUNCE, ABILITY_MAGIC_BOUNCE, ABILITY_MAGIC_BOUNCE },
.bodyColor = BODY_COLOR_WHITE,
.noFlip = TRUE,
.speciesName = _("Absol"),
.cryId = CRY_ABSOL, //CRY_ABSOL_MEGA_Z
.natDexNum = NATIONAL_DEX_ABSOL,
.categoryName = _("Disaster"),
.height = 12,
.weight = 490,
.description = COMPOUND_STRING(
"Using fur that it has made into sharp,\n"
"clawlike shapes, it cuts down foes with\n"
"a single blow. This is an act of kindness\n"
"to keep them from suffering."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sAbsolLevelUpLearnset,
.teachableLearnset = sAbsolTeachableLearnset,
.eggMoveLearnset = sAbsolEggMoveLearnset,
.formSpeciesIdTable = sAbsolFormSpeciesIdTable,
.formChangeTable = sAbsolFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_ABSOL
#if P_FAMILY_SNORUNT

View File

@ -921,7 +921,92 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
)
.levelUpLearnset = sStaraptorLevelUpLearnset,
.teachableLearnset = sStaraptorTeachableLearnset,
.formSpeciesIdTable = sStaraptorFormSpeciesIdTable,
.formChangeTable = sStaraptorFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_STARAPTOR_MEGA] =
{
.baseHP = 85,
.baseAttack = 140,
.baseDefense = 100,
.baseSpeed = 110,
.baseSpAttack = 60,
.baseSpDefense = 90,
.types = MON_TYPES(TYPE_FIGHTING, TYPE_FLYING),
.catchRate = 45,
#if P_UPDATED_EXP_YIELDS >= GEN_8
.expYield = 243,
#elif P_UPDATED_EXP_YIELDS >= GEN_7
.expYield = 218,
#elif P_UPDATED_EXP_YIELDS >= GEN_5
.expYield = 214,
#else
.expYield = 172,
#endif
.evYield_Attack = 3,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 15,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_FLYING),
.abilities = { ABILITY_INTIMIDATE, ABILITY_NONE, ABILITY_RECKLESS },
.bodyColor = BODY_COLOR_BROWN,
.speciesName = _("Staraptor"),
.cryId = CRY_STARAPTOR, //CRY_STARAPTOR_MEGA
.natDexNum = NATIONAL_DEX_STARAPTOR,
.categoryName = _("Predator"),
.height = 19,
.weight = 500,
.description = COMPOUND_STRING(
"Mega Staraptor is a top-class flier.\n"
"It can easily soar through the sky while\n"
"gripping a Steelix that weighs more than\n"
"880 lbs."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sStaraptorLevelUpLearnset,
.teachableLearnset = sStaraptorTeachableLearnset,
.formSpeciesIdTable = sStaraptorFormSpeciesIdTable,
.formChangeTable = sStaraptorFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_STARLY
#if P_FAMILY_BIDOOF
@ -4429,6 +4514,87 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.formSpeciesIdTable = sGarchompFormSpeciesIdTable,
.formChangeTable = sGarchompFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_GARCHOMP_MEGA_Z] =
{
.baseHP = 108,
.baseAttack = 130,
.baseDefense = 85,
.baseSpeed = 151,
.baseSpAttack = 141,
.baseSpDefense = 85,
.types = MON_TYPES(TYPE_DRAGON),
.catchRate = 45,
#if P_UPDATED_EXP_YIELDS >= GEN_8
.expYield = 300,
#elif P_UPDATED_EXP_YIELDS >= GEN_5
.expYield = 270,
#else
.expYield = 218,
#endif
.evYield_Attack = 3,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 40,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_MONSTER, EGG_GROUP_DRAGON),
.abilities = { ABILITY_SAND_VEIL, ABILITY_NONE, ABILITY_ROUGH_SKIN },
.bodyColor = BODY_COLOR_BLUE,
.speciesName = _("Garchomp"),
.cryId = CRY_GARCHOMP, //CRY_GARCHOMP_MEGA_Z
.natDexNum = NATIONAL_DEX_GARCHOMP,
.categoryName = _("Mach"),
.height = 19,
.weight = 990,
.description = COMPOUND_STRING(
"Garchomp has gained a new Mega-Evolved\n"
"form. It flies around foes at Mach speed\n"
"and cuts them to shreds with its sinister\n"
"wing claws."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sGarchompLevelUpLearnset,
.teachableLearnset = sGarchompTeachableLearnset,
.formSpeciesIdTable = sGarchompFormSpeciesIdTable,
.formChangeTable = sGarchompFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_MEGA_EVOLUTIONS
#endif //P_FAMILY_GIBLE
@ -4642,6 +4808,82 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.formChangeTable = sLucarioFormChangeTable,
},
#endif //P_MEGA_EVOLUTIONS
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_LUCARIO_MEGA_Z] =
{
.baseHP = 70,
.baseAttack = 100,
.baseDefense = 70,
.baseSpeed = 151,
.baseSpAttack = 164,
.baseSpDefense = 70,
.types = MON_TYPES(TYPE_FIGHTING, TYPE_STEEL),
.catchRate = 45,
.expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 204,
.evYield_Attack = 1,
.evYield_SpAttack = 1,
.genderRatio = PERCENT_FEMALE(12.5),
.eggCycles = 25,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_FIELD, EGG_GROUP_HUMAN_LIKE),
.abilities = { ABILITY_STEADFAST, ABILITY_INNER_FOCUS, ABILITY_JUSTIFIED },
.bodyColor = BODY_COLOR_BLUE,
.speciesName = _("Lucario"),
.cryId = CRY_LUCARIO,
.natDexNum = NATIONAL_DEX_LUCARIO,
.categoryName = _("Aura"),
.height = 13,
.weight = 494,
.description = COMPOUND_STRING(
"By completely cloaking itself in its aura,\n"
"Mega Lucario Z can parry all manner of\n"
"attacks, battling as if it were gracefully\n"
"dancing."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sLucarioLevelUpLearnset,
.teachableLearnset = sLucarioTeachableLearnset,
.formSpeciesIdTable = sLucarioFormSpeciesIdTable,
.formChangeTable = sLucarioFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_RIOLU
#if P_FAMILY_HIPPOPOTAS
@ -6706,7 +6948,92 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
.levelUpLearnset = sHeatranLevelUpLearnset,
.teachableLearnset = sHeatranTeachableLearnset,
.formSpeciesIdTable = sHeatranFormSpeciesIdTable,
.formChangeTable = sHeatranFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_HEATRAN_MEGA] =
{
.baseHP = 91,
.baseAttack = 120,
.baseDefense = 106,
.baseSpeed = 67,
.baseSpAttack = 175,
.baseSpDefense = 141,
.types = MON_TYPES(TYPE_FIRE, TYPE_STEEL),
.catchRate = 3,
#if P_UPDATED_EXP_YIELDS >= GEN_8
.expYield = 300,
#elif P_UPDATED_EXP_YIELDS >= GEN_5
.expYield = 270,
#else
.expYield = 215,
#endif
.evYield_SpAttack = 3,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 10,
.friendship = 100,
.growthRate = GROWTH_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED),
.abilities = { ABILITY_FLASH_FIRE, ABILITY_NONE, ABILITY_FLAME_BODY },
.bodyColor = BODY_COLOR_BROWN,
.speciesName = _("Heatran"),
.cryId = CRY_HEATRAN, //CRY_HEATRAN_MEGA
.natDexNum = NATIONAL_DEX_HEATRAN,
.categoryName = _("Lava Dome"),
.height = 28,
.weight = 5700,
.description = COMPOUND_STRING(
"It's said that if it goes all out, it\n"
"can heat its body up to temperatures\n"
"over 1.8 million degrees Fahrenheit.\n"
"This heat keeps enemies at bay."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.isLegendary = TRUE,
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
.levelUpLearnset = sHeatranLevelUpLearnset,
.teachableLearnset = sHeatranTeachableLearnset,
.formSpeciesIdTable = sHeatranFormSpeciesIdTable,
.formChangeTable = sHeatranFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_HEATRAN
#if P_FAMILY_REGIGIGAS
@ -7256,7 +7583,94 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
.levelUpLearnset = sDarkraiLevelUpLearnset,
.teachableLearnset = sDarkraiTeachableLearnset,
.formSpeciesIdTable = sDarkraiFormSpeciesIdTable,
.formChangeTable = sDarkraiFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_DARKRAI_MEGA] =
{
.baseHP = 70,
.baseAttack = 120,
.baseDefense = 130,
.baseSpeed = 85,
.baseSpAttack = 165,
.baseSpDefense = 130,
.types = MON_TYPES(TYPE_DARK),
.catchRate = 3,
#if P_UPDATED_EXP_YIELDS >= GEN_8
.expYield = 300,
#elif P_UPDATED_EXP_YIELDS >= GEN_5
.expYield = 270,
#else
.expYield = 210,
#endif
.evYield_Speed = 1,
.evYield_SpAttack = 2,
.genderRatio = MON_GENDERLESS,
.eggCycles = 120,
.friendship = 0,
.growthRate = GROWTH_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED),
.abilities = { ABILITY_BAD_DREAMS, ABILITY_NONE, ABILITY_NONE },
.bodyColor = BODY_COLOR_BLACK,
.speciesName = _("Darkrai"),
.cryId = CRY_DARKRAI, //CRY_DARKRAI_MEGA
.natDexNum = NATIONAL_DEX_DARKRAI,
.categoryName = _("Pitch-Black"),
.height = 30,
.weight = 2400,
.description = COMPOUND_STRING(
"Its dark power blocks out the sun,\n"
"plunging the surrounding area into\n"
"darkness. There is no escaping its\n"
"evil eye."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.isMythical = TRUE,
.isFrontierBanned = TRUE,
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
.levelUpLearnset = sDarkraiLevelUpLearnset,
.teachableLearnset = sDarkraiTeachableLearnset,
.formSpeciesIdTable = sDarkraiFormSpeciesIdTable,
.formChangeTable = sDarkraiFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_DARKRAI
#if P_FAMILY_SHAYMIN

View File

@ -11436,7 +11436,85 @@ const struct SpeciesInfo gSpeciesInfoGen5[] =
)
.levelUpLearnset = sGolurkLevelUpLearnset,
.teachableLearnset = sGolurkTeachableLearnset,
.formSpeciesIdTable = sGolurkFormSpeciesIdTable,
.formChangeTable = sGolurkFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_GOLURK_MEGA] =
{
.baseHP = 89,
.baseAttack = 159,
.baseDefense = 105,
.baseSpeed = 55,
.baseSpAttack = 70,
.baseSpDefense = 105,
.types = MON_TYPES(TYPE_GROUND, TYPE_GHOST),
.catchRate = 90,
.expYield = 169,
.evYield_Attack = 2,
.itemRare = ITEM_LIGHT_CLAY,
.genderRatio = MON_GENDERLESS,
.eggCycles = 25,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_FAST,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_MINERAL),
.abilities = { ABILITY_IRON_FIST, ABILITY_KLUTZ, ABILITY_NO_GUARD },
.bodyColor = BODY_COLOR_GREEN,
.noFlip = TRUE,
.speciesName = _("Golurk"),
.cryId = CRY_GOLURK, //CRY_GOLURK_MEGA
.natDexNum = NATIONAL_DEX_GOLURK,
.categoryName = _("Automaton"),
.height = 40,
.weight = 3300,
.description = COMPOUND_STRING(
"The energy within Golurk has been\n"
"stimulated by Mega Evolution.\n"
"The Pokémon could explode at any moment."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sGolurkLevelUpLearnset,
.teachableLearnset = sGolurkTeachableLearnset,
.formSpeciesIdTable = sGolurkFormSpeciesIdTable,
.formChangeTable = sGolurkFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_GOLETT
#if P_FAMILY_PAWNIARD

View File

@ -2898,6 +2898,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.levelUpLearnset = sMeowsticMLevelUpLearnset,
.teachableLearnset = sMeowsticMTeachableLearnset,
.formSpeciesIdTable = sMeowsticFormSpeciesIdTable,
.formChangeTable = sMeowsticMFormChangeTable,
},
[SPECIES_MEOWSTIC_F] =
@ -2962,7 +2963,156 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.levelUpLearnset = sMeowsticFLevelUpLearnset,
.teachableLearnset = sMeowsticFTeachableLearnset,
.formSpeciesIdTable = sMeowsticFormSpeciesIdTable,
.formChangeTable = sMeowsticFFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_MEOWSTIC_M_MEGA] =
{
.baseHP = 74,
.baseAttack = 48,
.baseDefense = 76,
.baseSpeed = 124,
.baseSpAttack = 143,
.baseSpDefense = 101,
.types = MON_TYPES(TYPE_PSYCHIC),
.catchRate = 75,
.expYield = 163,
.evYield_Speed = 2,
.genderRatio = MON_MALE,
.eggCycles = 20,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_FAST,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_FIELD),
.abilities = { ABILITY_KEEN_EYE, ABILITY_INFILTRATOR, ABILITY_PRANKSTER },
.bodyColor = BODY_COLOR_BLUE,
.speciesName = _("Meowstic"),
.cryId = CRY_MEOWSTIC, //CRY_MEOWSTIC_MEGA
.natDexNum = NATIONAL_DEX_MEOWSTIC,
.categoryName = _("Constraint"),
.height = 8,
.weight = 101,
.description = COMPOUND_STRING(
"Mega Meowstic can use its psychic power\n"
"to compress or expand anything. It\n"
"overwhelms foes by contorting space\n"
"itself."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sMeowsticMLevelUpLearnset,
.teachableLearnset = sMeowsticMTeachableLearnset,
.formSpeciesIdTable = sMeowsticFormSpeciesIdTable,
.formChangeTable = sMeowsticMFormChangeTable,
},
[SPECIES_MEOWSTIC_F_MEGA] =
{
.baseHP = 74,
.baseAttack = 48,
.baseDefense = 76,
.baseSpeed = 124,
.baseSpAttack = 143,
.baseSpDefense = 101,
.types = MON_TYPES(TYPE_PSYCHIC),
.catchRate = 75,
.expYield = 163,
.evYield_Speed = 2,
.genderRatio = MON_FEMALE,
.eggCycles = 20,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_FAST,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_FIELD),
.abilities = { ABILITY_KEEN_EYE, ABILITY_INFILTRATOR, ABILITY_COMPETITIVE },
.bodyColor = BODY_COLOR_WHITE,
.speciesName = _("Meowstic"),
.cryId = CRY_MEOWSTIC, //CRY_MEOWSTIC_MEGA
.natDexNum = NATIONAL_DEX_MEOWSTIC,
.categoryName = _("Constraint"),
.height = 8,
.weight = 101,
.description = COMPOUND_STRING(
"Mega Meowstic can use its psychic power\n"
"to compress or expand anything. It\n"
"overwhelms foes by contorting space\n"
"itself."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sMeowsticFLevelUpLearnset,
.teachableLearnset = sMeowsticFTeachableLearnset,
.formSpeciesIdTable = sMeowsticFormSpeciesIdTable,
.formChangeTable = sMeowsticFFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_ESPURR
#if P_FAMILY_HONEDGE

View File

@ -1465,7 +1465,84 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
)
.levelUpLearnset = sCrabominableLevelUpLearnset,
.teachableLearnset = sCrabominableTeachableLearnset,
.formSpeciesIdTable = sCrabominableFormSpeciesIdTable,
.formChangeTable = sCrabominableFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_CRABOMINABLE_MEGA] =
{
.baseHP = 97,
.baseAttack = 157,
.baseDefense = 122,
.baseSpeed = 33,
.baseSpAttack = 62,
.baseSpDefense = 107,
.types = MON_TYPES(TYPE_FIGHTING, TYPE_ICE),
.catchRate = 60,
.expYield = 167,
.evYield_Attack = 2,
.itemRare = ITEM_CHERI_BERRY,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 20,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_FAST,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_WATER_3),
.abilities = { ABILITY_HYPER_CUTTER, ABILITY_IRON_FIST, ABILITY_ANGER_POINT },
.bodyColor = BODY_COLOR_WHITE,
.speciesName = _("Crabominable"),
.cryId = CRY_CRABOMINABLE, //CRY_CRABOMINABLE_MEGA
.natDexNum = NATIONAL_DEX_CRABOMINABLE,
.categoryName = _("Woolly Crab"),
.height = 26,
.weight = 2528,
.description = COMPOUND_STRING(
"It can pulverize reinforced concrete with\n"
"a light swing of one of its fists, each of\n"
"which is covered in a thick layer of ice."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sCrabominableLevelUpLearnset,
.teachableLearnset = sCrabominableTeachableLearnset,
.formSpeciesIdTable = sCrabominableFormSpeciesIdTable,
.formChangeTable = sCrabominableFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_CRABRAWLER
#if P_FAMILY_ORICORIO
@ -4092,7 +4169,84 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
)
.levelUpLearnset = sGolisopodLevelUpLearnset,
.teachableLearnset = sGolisopodTeachableLearnset,
.formSpeciesIdTable = sGolisopodFormSpeciesIdTable,
.formChangeTable = sGolisopodFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_GOLISOPOD_MEGA] =
{
.baseHP = 75,
.baseAttack = 150,
.baseDefense = 175,
.baseSpeed = 40,
.baseSpAttack = 70,
.baseSpDefense = 120,
.types = MON_TYPES(TYPE_BUG, TYPE_STEEL),
.catchRate = 45,
.expYield = 186,
.evYield_Defense = 2,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 20,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_FAST,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_BUG, EGG_GROUP_WATER_3),
.abilities = { ABILITY_EMERGENCY_EXIT, ABILITY_NONE, ABILITY_NONE },
.bodyColor = BODY_COLOR_GRAY,
.speciesName = _("Golisopod"),
.cryId = CRY_GOLISOPOD, //CRY_GOLISOPOD_MEGA
.natDexNum = NATIONAL_DEX_GOLISOPOD,
.categoryName = _("Hard Scale"),
.height = 23,
.weight = 1480,
.description = COMPOUND_STRING(
"It uses four of its arms to fiercely\n"
"assail its foes. Once they've been pushed\n"
"to the brink of defeat, it finishes them\n"
"off with the arms it kept hidden."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sGolisopodLevelUpLearnset,
.teachableLearnset = sGolisopodTeachableLearnset,
.formSpeciesIdTable = sGolisopodFormSpeciesIdTable,
.formChangeTable = sGolisopodFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_WIMPOD
#if P_FAMILY_SANDYGAST
@ -7023,6 +7177,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.levelUpLearnset = sMagearnaLevelUpLearnset,
.teachableLearnset = sMagearnaTeachableLearnset,
.formSpeciesIdTable = sMagearnaFormSpeciesIdTable,
.formChangeTable = sMagearnaFormChangeTable,
},
[SPECIES_MAGEARNA_ORIGINAL] =
{
@ -7089,7 +7244,161 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.levelUpLearnset = sMagearnaLevelUpLearnset,
.teachableLearnset = sMagearnaTeachableLearnset,
.formSpeciesIdTable = sMagearnaFormSpeciesIdTable,
.formChangeTable = sMagearnaOriginalFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_MAGEARNA_MEGA] =
{
.baseHP = 80,
.baseAttack = 125,
.baseDefense = 115,
.baseSpeed = 95,
.baseSpAttack = 170,
.baseSpDefense = 115,
.types = MON_TYPES(TYPE_STEEL, TYPE_FAIRY),
.catchRate = 3,
.expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270,
.evYield_SpAttack = 3,
.genderRatio = MON_GENDERLESS,
.eggCycles = 120,
.friendship = 0,
.growthRate = GROWTH_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED),
.abilities = { ABILITY_SOUL_HEART, ABILITY_NONE, ABILITY_NONE },
.bodyColor = BODY_COLOR_GRAY,
.speciesName = _("Magearna"),
.cryId = CRY_MAGEARNA, //CRY_MAGEARNA_MEGA
.natDexNum = NATIONAL_DEX_MAGEARNA,
.categoryName = _("Artificial"),
.height = 13,
.weight = 2481,
.description = COMPOUND_STRING(
"This artificial Pokémon, constructed more\n"
"than 500 years ago, can understand human\n"
"speech but cannot itself speak. Its true\n"
"self is its Soul-Heart, an artificial soul."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.isMythical = TRUE,
.isFrontierBanned = TRUE,
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
.levelUpLearnset = sMagearnaLevelUpLearnset,
.teachableLearnset = sMagearnaTeachableLearnset,
.formSpeciesIdTable = sMagearnaFormSpeciesIdTable,
.formChangeTable = sMagearnaFormChangeTable,
},
[SPECIES_MAGEARNA_ORIGINAL_MEGA] =
{
.baseHP = 80,
.baseAttack = 125,
.baseDefense = 115,
.baseSpeed = 95,
.baseSpAttack = 170,
.baseSpDefense = 115,
.types = MON_TYPES(TYPE_STEEL, TYPE_FAIRY),
.catchRate = 3,
.expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270,
.evYield_SpAttack = 3,
.genderRatio = MON_GENDERLESS,
.eggCycles = 120,
.friendship = 0,
.growthRate = GROWTH_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED),
.abilities = { ABILITY_SOUL_HEART, ABILITY_NONE, ABILITY_NONE },
.bodyColor = BODY_COLOR_GRAY,
.speciesName = _("Magearna"),
.cryId = CRY_MAGEARNA, //CRY_MAGEARNA_MEGA
.natDexNum = NATIONAL_DEX_MAGEARNA,
.categoryName = _("Artificial"),
.height = 13,
.weight = 2481,
.description = COMPOUND_STRING(
"A mechanism to remove Magearna's\n"
"limitations has lain secretly within\n"
"Magearna for 500 years. This mechanism\n"
"is triggered by a Mega Stone."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.isMythical = TRUE,
.isFrontierBanned = TRUE,
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
.levelUpLearnset = sMagearnaLevelUpLearnset,
.teachableLearnset = sMagearnaTeachableLearnset,
.formSpeciesIdTable = sMagearnaFormSpeciesIdTable,
.formChangeTable = sMagearnaOriginalFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_MAGEARNA
#if P_FAMILY_MARSHADOW
@ -7497,7 +7806,87 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
.levelUpLearnset = sZeraoraLevelUpLearnset,
.teachableLearnset = sZeraoraTeachableLearnset,
.formSpeciesIdTable = sZeraoraFormSpeciesIdTable,
.formChangeTable = sZeraoraFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_ZERAORA_MEGA] =
{
.baseHP = 88,
.baseAttack = 157,
.baseDefense = 75,
.baseSpeed = 153,
.baseSpAttack = 147,
.baseSpDefense = 80,
.types = MON_TYPES(TYPE_ELECTRIC),
.catchRate = 3,
.expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270,
.evYield_Speed = 3,
.genderRatio = MON_GENDERLESS,
.eggCycles = 120,
.friendship = 0,
.growthRate = GROWTH_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED),
.abilities = { ABILITY_VOLT_ABSORB, ABILITY_NONE, ABILITY_NONE },
.bodyColor = BODY_COLOR_YELLOW,
.speciesName = _("Zeraora"),
.cryId = CRY_ZERAORA, //CRY_ZERAORA_MEGA
.natDexNum = NATIONAL_DEX_ZERAORA,
.categoryName = _("Thunderclap"),
.height = 15,
.weight = 445,
.description = COMPOUND_STRING(
"It stores up 10 lightning strikes' worth\n"
"of electricity. When it stops limiting\n"
"itself, it's in the strongest class of\n"
"electric Pokémon."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.isMythical = TRUE,
.isFrontierBanned = TRUE,
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
.levelUpLearnset = sZeraoraLevelUpLearnset,
.teachableLearnset = sZeraoraTeachableLearnset,
.formSpeciesIdTable = sZeraoraFormSpeciesIdTable,
.formChangeTable = sZeraoraFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_ZERAORA
#if P_FAMILY_MELTAN

View File

@ -3381,7 +3381,83 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
)
.levelUpLearnset = sScovillainLevelUpLearnset,
.teachableLearnset = sScovillainTeachableLearnset,
.formSpeciesIdTable = sScovillainFormSpeciesIdTable,
.formChangeTable = sScovillainFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_SCOVILLAIN_MEGA] =
{
.baseHP = 65,
.baseAttack = 138,
.baseDefense = 85,
.baseSpeed = 75,
.baseSpAttack = 138,
.baseSpDefense = 85,
.types = MON_TYPES(TYPE_GRASS, TYPE_FIRE),
.catchRate = 75,
.expYield = 170,
.evYield_Attack = 2,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 20,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_FAST,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_GRASS),
.abilities = { ABILITY_CHLOROPHYLL, ABILITY_INSOMNIA, ABILITY_MOODY },
.bodyColor = BODY_COLOR_GREEN,
.speciesName = _("Scovillain"),
.cryId = CRY_SCOVILLAIN, //CRY_SCOVILLAIN_MEGA
.natDexNum = NATIONAL_DEX_SCOVILLAIN,
.categoryName = _("Spicy Pepper"),
.height = 12,
.weight = 220,
.description = COMPOUND_STRING(
"Mega Evolution has dialed up this\n"
"Pokémon's spiciness. It swings its\n"
"“necktie” around to wallop its foes."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sScovillainLevelUpLearnset,
.teachableLearnset = sScovillainTeachableLearnset,
.formSpeciesIdTable = sScovillainFormSpeciesIdTable,
.formChangeTable = sScovillainFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_CAPSAKID
#if P_FAMILY_RELLOR
@ -4619,7 +4695,84 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
)
.levelUpLearnset = sGlimmoraLevelUpLearnset,
.teachableLearnset = sGlimmoraTeachableLearnset,
.formSpeciesIdTable = sGlimmoraFormSpeciesIdTable,
.formChangeTable = sGlimmoraFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_GLIMMORA_MEGA] =
{
.baseHP = 83,
.baseAttack = 90,
.baseDefense = 105,
.baseSpeed = 101,
.baseSpAttack = 150,
.baseSpDefense = 96,
.types = MON_TYPES(TYPE_ROCK, TYPE_POISON),
.catchRate = 25,
.expYield = 184,
.evYield_SpAttack = 2,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 30,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_MINERAL),
.abilities = { ABILITY_TOXIC_DEBRIS, ABILITY_NONE, ABILITY_CORROSION },
.bodyColor = BODY_COLOR_BLUE,
.speciesName = _("Glimmora"),
.cryId = CRY_GLIMMORA, //CRY_GLIMMORA_MEGA
.natDexNum = NATIONAL_DEX_GLIMMORA,
.categoryName = _("Ore"),
.height = 15,
.weight = 450,
.description = COMPOUND_STRING(
"Glimmora's petals-now larger and\n"
"separated from its main body-rotate\n"
"around it to provide defense while\n"
"cattering poisonous fragments."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sGlimmoraLevelUpLearnset,
.teachableLearnset = sGlimmoraTeachableLearnset,
.formSpeciesIdTable = sGlimmoraFormSpeciesIdTable,
.formChangeTable = sGlimmoraFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_GLIMMET
#if P_FAMILY_GREAVARD
@ -5146,6 +5299,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.teachableLearnset = sTatsugiriTeachableLearnset,
.eggMoveLearnset = sTatsugiriEggMoveLearnset,
.formSpeciesIdTable = sTatsugiriFormSpeciesIdTable,
.formChangeTable = sTatsugiriCurlyFormChangeTable,
},
[SPECIES_TATSUGIRI_DROOPY] =
@ -5210,6 +5364,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.teachableLearnset = sTatsugiriTeachableLearnset,
.eggMoveLearnset = sTatsugiriEggMoveLearnset,
.formSpeciesIdTable = sTatsugiriFormSpeciesIdTable,
.formChangeTable = sTatsugiriDroopyFormChangeTable,
},
[SPECIES_TATSUGIRI_STRETCHY] =
@ -5274,7 +5429,232 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.teachableLearnset = sTatsugiriTeachableLearnset,
.eggMoveLearnset = sTatsugiriEggMoveLearnset,
.formSpeciesIdTable = sTatsugiriFormSpeciesIdTable,
.formChangeTable = sTatsugiriStretchyFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_TATSUGIRI_CURLY_MEGA] =
{
.baseHP = 68,
.baseAttack = 65,
.baseDefense = 90,
.baseSpeed = 92,
.baseSpAttack = 135,
.baseSpDefense = 125,
.types = MON_TYPES(TYPE_DRAGON, TYPE_WATER),
.catchRate = 100,
.expYield = 166,
.evYield_SpAttack = 2,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 35,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_WATER_2),
.abilities = { ABILITY_STORM_DRAIN, ABILITY_NONE, ABILITY_STORM_DRAIN },
.bodyColor = BODY_COLOR_RED,
.speciesName = _("Tatsugiri"),
.cryId = CRY_TATSUGIRI_CURLY, //CRY_TATSUGIRI_CURLY_MEGA
.natDexNum = NATIONAL_DEX_TATSUGIRI,
.categoryName = _("Mimicry"),
.height = 6,
.weight = 240,
.description = COMPOUND_STRING(
"Tatsugiri's brain has been invigorated\n"
"by Mega Evolution, making it even\n"
"wilier. It can create and command\n"
"copies of itself."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sTatsugiriLevelUpLearnset,
.teachableLearnset = sTatsugiriTeachableLearnset,
.eggMoveLearnset = sTatsugiriEggMoveLearnset,
.formSpeciesIdTable = sTatsugiriFormSpeciesIdTable,
.formChangeTable = sTatsugiriCurlyFormChangeTable,
},
[SPECIES_TATSUGIRI_DROOPY_MEGA] =
{
.baseHP = 68,
.baseAttack = 65,
.baseDefense = 90,
.baseSpeed = 92,
.baseSpAttack = 135,
.baseSpDefense = 125,
.types = MON_TYPES(TYPE_DRAGON, TYPE_WATER),
.catchRate = 100,
.expYield = 166,
.evYield_SpAttack = 2,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 35,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_WATER_2),
.abilities = { ABILITY_STORM_DRAIN, ABILITY_NONE, ABILITY_STORM_DRAIN },
.bodyColor = BODY_COLOR_RED,
.speciesName = _("Tatsugiri"),
.cryId = CRY_TATSUGIRI_DROOPY, //CRY_TATSUGIRI_DROOPY_MEGA
.natDexNum = NATIONAL_DEX_TATSUGIRI,
.categoryName = _("Mimicry"),
.height = 6,
.weight = 240,
.description = COMPOUND_STRING(
"It solidifies the energy of Mega Evolution,\n"
"building up an overflowing pile to launch\n"
"as projectiles. These projectiles explode\n"
"on contact."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sTatsugiriLevelUpLearnset,
.teachableLearnset = sTatsugiriTeachableLearnset,
.eggMoveLearnset = sTatsugiriEggMoveLearnset,
.formSpeciesIdTable = sTatsugiriFormSpeciesIdTable,
.formChangeTable = sTatsugiriDroopyFormChangeTable,
},
[SPECIES_TATSUGIRI_STRETCHY_MEGA] =
{
.baseHP = 68,
.baseAttack = 65,
.baseDefense = 90,
.baseSpeed = 92,
.baseSpAttack = 135,
.baseSpDefense = 125,
.types = MON_TYPES(TYPE_DRAGON, TYPE_WATER),
.catchRate = 100,
.expYield = 166,
.evYield_SpAttack = 2,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 35,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_MEDIUM_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_WATER_2),
.abilities = { ABILITY_STORM_DRAIN, ABILITY_NONE, ABILITY_STORM_DRAIN },
.bodyColor = BODY_COLOR_RED,
.speciesName = _("Tatsugiri"),
.cryId = CRY_TATSUGIRI_STRETCHY, //CRY_TATSUGIRI_STRETCHY_MEGA
.natDexNum = NATIONAL_DEX_TATSUGIRI,
.categoryName = _("Mimicry"),
.height = 6,
.weight = 240,
.description = COMPOUND_STRING(
"Using the energy of Mega Evolution, it\n"
"creates a dish to ride upon, allowing it\n"
"to move with total freedom-even through\n"
"the air."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sTatsugiriLevelUpLearnset,
.teachableLearnset = sTatsugiriTeachableLearnset,
.eggMoveLearnset = sTatsugiriEggMoveLearnset,
.formSpeciesIdTable = sTatsugiriFormSpeciesIdTable,
.formChangeTable = sTatsugiriStretchyFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_TATSUGIRI
#if P_FAMILY_GREAT_TUSK
@ -6276,7 +6656,84 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
)
.levelUpLearnset = sBaxcaliburLevelUpLearnset,
.teachableLearnset = sBaxcaliburTeachableLearnset,
.formSpeciesIdTable = sBaxcaliburFormSpeciesIdTable,
.formChangeTable = sBaxcaliburFormChangeTable,
},
#if P_GEN_9_MEGA_EVOLUTIONS
[SPECIES_BAXCALIBUR_MEGA] =
{
.baseHP = 115,
.baseAttack = 175,
.baseDefense = 117,
.baseSpeed = 87,
.baseSpAttack = 105,
.baseSpDefense = 101,
.types = MON_TYPES(TYPE_DRAGON, TYPE_ICE),
.catchRate = 10,
.expYield = 300,
.evYield_Attack = 3,
.genderRatio = PERCENT_FEMALE(50),
.eggCycles = 40,
.friendship = STANDARD_FRIENDSHIP,
.growthRate = GROWTH_SLOW,
.eggGroups = MON_EGG_GROUPS(EGG_GROUP_DRAGON, EGG_GROUP_MINERAL),
.abilities = { ABILITY_THERMAL_EXCHANGE, ABILITY_NONE, ABILITY_ICE_BODY },
.bodyColor = BODY_COLOR_BLUE,
.speciesName = _("Baxcalibur"),
.cryId = CRY_BAXCALIBUR, //CRY_BAXCALIBUR_MEGA
.natDexNum = NATIONAL_DEX_BAXCALIBUR,
.categoryName = _("Ice Dragon"),
.height = 21,
.weight = 3150,
.description = COMPOUND_STRING(
"Baxcalibur's dorsal blade has grown even\n"
"more massive thanks to Mega Evolution.\n"
"This Pokémon fires beams from the hilt\n"
"at its solar plexus."),
.frontPic = gMonBackPic_CircledQuestionMark,
.frontPicSize = MON_COORDS_SIZE(40, 40),
.frontPicYOffset = 12,
.frontAnimFrames = sAnims_TwoFramePlaceHolder,
.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE,
.backPic = gMonBackPic_CircledQuestionMark,
.backPicSize = MON_COORDS_SIZE(40, 40),
.backPicYOffset = 12,
.backAnimId = BACK_ANIM_NONE,
.palette = gMonPalette_CircledQuestionMark,
.shinyPalette = gMonShinyPalette_CircledQuestionMark,
.iconSprite = gMonIcon_QuestionMark,
.iconPalIndex = 0,
.pokemonJumpType = PKMN_JUMP_TYPE_NONE,
FOOTPRINT(QuestionMark)
SHADOW(-1, 0, SHADOW_SIZE_M)
#if OW_BATTLE_ONLY_FORMS
.overworldData = {
.tileTag = TAG_NONE,
.paletteTag = OBJ_EVENT_PAL_TAG_SUBSTITUTE,
.reflectionPaletteTag = OBJ_EVENT_PAL_TAG_NONE,
.size = 512,
.width = 32,
.height = 32,
.paletteSlot = PALSLOT_NPC_1,
.shadowSize = SHADOW_SIZE_M,
.inanimate = FALSE,
.compressed = COMP,
.tracks = TRACKS_FOOT,
.oam = &gObjectEventBaseOam_32x32,
.subspriteTables = sOamTables_32x32,
.anims = sAnimTable_Following,
.images = sPicTable_Substitute,
.affineAnims = gDummySpriteAffineAnimTable,
},
#endif //OW_BATTLE_ONLY_FORMS
.isMegaEvolution = TRUE,
.levelUpLearnset = sBaxcaliburLevelUpLearnset,
.teachableLearnset = sBaxcaliburTeachableLearnset,
.formSpeciesIdTable = sBaxcaliburFormSpeciesIdTable,
.formChangeTable = sBaxcaliburFormChangeTable,
},
#endif //P_GEN_9_MEGA_EVOLUTIONS
#endif //P_FAMILY_FRIGIBAX
#if P_FAMILY_GIMMIGHOUL

File diff suppressed because it is too large Load Diff

View File

@ -1,816 +0,0 @@
//
// DO NOT MODIFY THIS FILE! It is auto-generated from test/battle/trainer_control.party
//
// If you want to modify this file see expansion PR #7154
//
#line 1 "test/battle/trainer_control.party"
#line 1
[DIFFICULTY_NORMAL][0] =
{
#line 2
.trainerName = _("Test1"),
#line 3
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 4
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 6
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 7
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
.partySize = 3,
.party = (const struct TrainerMon[])
{
{
#line 9
.nickname = COMPOUND_STRING("Bubbles"),
#line 9
.species = SPECIES_WOBBUFFET,
#line 9
.gender = TRAINER_MON_FEMALE,
#line 9
.heldItem = ITEM_ASSAULT_VEST,
#line 14
.ev = TRAINER_PARTY_EVS(252, 0, 0, 252, 4, 0),
#line 13
.iv = TRAINER_PARTY_IVS(25, 26, 27, 28, 29, 30),
#line 12
.ability = ABILITY_TELEPATHY,
#line 11
.lvl = 67,
#line 17
.ball = ITEM_MASTER_BALL,
#line 15
.friendship = 42,
#line 10
.nature = NATURE_HASTY,
#line 16
.isShiny = TRUE,
#line 18
.dynamaxLevel = 5,
.shouldUseDynamax = TRUE,
.moves = {
#line 19
MOVE_AIR_SLASH,
MOVE_BARRIER,
MOVE_SOLAR_BEAM,
MOVE_EXPLOSION,
},
},
{
#line 24
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 27
.iv = TRAINER_PARTY_IVS(0, 0, 0, 0, 0, 0),
#line 26
.ability = ABILITY_SHADOW_TAG,
#line 25
.lvl = 5,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 29
.species = SPECIES_WYNAUT,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 31
.iv = TRAINER_PARTY_IVS(0, 0, 0, 0, 0, 0),
#line 30
.lvl = 5,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},
#line 33
#line 40
[DIFFICULTY_NORMAL][1] =
{
#line 34
.trainerName = _("Test2"),
#line 35
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 36
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 38
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 39
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
.partySize = 1,
.party = (const struct TrainerMon[])
{
{
#line 42
.species = SPECIES_MEWTWO,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 44
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 43
.lvl = 5,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},
#line 45
#line 52
[DIFFICULTY_NORMAL][2] =
{
#line 46
.trainerName = _("Test2"),
#line 47
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 48
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 50
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 51
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
.partySize = 1,
.party = (const struct TrainerMon[])
{
{
#line 54
.species = SPECIES_MEWTWO,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 56
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 55
.lvl = 50,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},
#line 57
#line 64
[DIFFICULTY_EASY][2] =
{
#line 58
.trainerName = _("Test2"),
#line 59
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 60
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 62
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 63
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
.partySize = 1,
.party = (const struct TrainerMon[])
{
{
#line 66
.species = SPECIES_METAPOD,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 68
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 67
.lvl = 1,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},
#line 69
#line 76
[DIFFICULTY_HARD][2] =
{
#line 70
.trainerName = _("Test2"),
#line 71
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 72
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 74
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 75
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
.partySize = 1,
.party = (const struct TrainerMon[])
{
{
#line 78
.species = SPECIES_ARCEUS,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 80
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 79
.lvl = 99,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},
#line 81
[DIFFICULTY_NORMAL][3] =
{
#line 82
.trainerName = _("Test3"),
#line 83
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 84
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 86
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 87
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
#line 88
.partySize = 1,
.poolSize = 4,
.party = (const struct TrainerMon[])
{
{
#line 90
.species = SPECIES_WYNAUT,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 91
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 91
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 92
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 93
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 93
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 94
.species = SPECIES_EEVEE,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 95
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 95
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 96
.species = SPECIES_MEW,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 97
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 97
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},
#line 98
[DIFFICULTY_NORMAL][4] =
{
#line 99
.trainerName = _("Test4"),
#line 100
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 101
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 103
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 104
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
#line 105
.partySize = 3,
.poolSize = 6,
.party = (const struct TrainerMon[])
{
{
#line 107
.species = SPECIES_WYNAUT,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 108
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 108
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 109
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 111
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 111
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 110
.tags = MON_POOL_TAG_LEAD,
},
{
#line 112
.species = SPECIES_EEVEE,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 114
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 114
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 113
.tags = MON_POOL_TAG_ACE,
},
{
#line 115
.species = SPECIES_MEW,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 116
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 116
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 117
.species = SPECIES_ODDISH,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 119
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 119
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 118
.tags = MON_POOL_TAG_ACE,
},
{
#line 120
.species = SPECIES_ARON,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 122
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 122
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 121
.tags = MON_POOL_TAG_LEAD,
},
},
},
#line 123
[DIFFICULTY_NORMAL][5] =
{
#line 124
.trainerName = _("Test5"),
#line 125
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 126
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 128
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 129
.battleType = TRAINER_BATTLE_TYPE_DOUBLES,
#line 131
.poolRuleIndex = POOL_RULESET_WEATHER_DOUBLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
#line 130
.partySize = 3,
.poolSize = 10,
.party = (const struct TrainerMon[])
{
{
#line 133
.species = SPECIES_WYNAUT,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 135
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 135
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 134
.tags = MON_POOL_TAG_LEAD,
},
{
#line 136
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 138
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 138
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 137
.tags = MON_POOL_TAG_LEAD,
},
{
#line 139
.species = SPECIES_VULPIX,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 141
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 141
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 140
.tags = MON_POOL_TAG_LEAD | MON_POOL_TAG_WEATHER_SETTER,
},
{
#line 142
.species = SPECIES_BULBASAUR,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 144
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 144
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 143
.tags = MON_POOL_TAG_LEAD | MON_POOL_TAG_WEATHER_ABUSER,
},
{
#line 145
.species = SPECIES_TORKOAL,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 147
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 147
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 146
.tags = MON_POOL_TAG_LEAD | MON_POOL_TAG_WEATHER_SETTER,
},
{
#line 148
.species = SPECIES_CHERRIM,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 150
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 150
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 149
.tags = MON_POOL_TAG_LEAD | MON_POOL_TAG_WEATHER_ABUSER,
},
{
#line 151
.species = SPECIES_MEW,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 153
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 153
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 152
.tags = MON_POOL_TAG_LEAD,
},
{
#line 154
.species = SPECIES_ARON,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 156
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 156
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 155
.tags = MON_POOL_TAG_LEAD,
},
{
#line 157
.species = SPECIES_ODDISH,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 158
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 158
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 159
.species = SPECIES_EEVEE,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 160
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 160
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},
#line 161
[DIFFICULTY_NORMAL][6] =
{
#line 162
.trainerName = _("Test6"),
#line 163
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 164
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 166
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 167
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 169
.poolRuleIndex = POOL_RULESET_BASIC,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
#line 168
.partySize = 2,
.poolSize = 3,
.party = (const struct TrainerMon[])
{
{
#line 171
.species = SPECIES_WYNAUT,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 173
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 173
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 172
.tags = MON_POOL_TAG_LEAD,
},
{
#line 174
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 176
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 176
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 175
.tags = MON_POOL_TAG_LEAD,
},
{
#line 177
.species = SPECIES_EEVEE,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 179
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 179
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 178
.tags = MON_POOL_TAG_LEAD,
},
},
},
#line 180
[DIFFICULTY_NORMAL][7] =
{
#line 181
.trainerName = _("Test1"),
#line 182
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 183
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 185
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 186
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 188
.poolRuleIndex = POOL_RULESET_BASIC,
#line 189
.poolPruneIndex = POOL_PRUNE_TEST,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
#line 187
.partySize = 2,
.poolSize = 3,
.party = (const struct TrainerMon[])
{
{
#line 191
.species = SPECIES_WYNAUT,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 192
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 192
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 193
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 195
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 195
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 194
.tags = MON_POOL_TAG_LEAD,
},
{
#line 196
.species = SPECIES_EEVEE,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 197
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 197
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},
#line 198
[DIFFICULTY_NORMAL][8] =
{
#line 199
.trainerName = _("Test1"),
#line 200
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 201
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 203
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 204
.battleType = TRAINER_BATTLE_TYPE_SINGLES,
#line 206
.poolRuleIndex = POOL_RULESET_BASIC,
#line 207
.poolPickIndex = POOL_PICK_LOWEST,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
#line 205
.partySize = 2,
.poolSize = 3,
.party = (const struct TrainerMon[])
{
{
#line 209
.species = SPECIES_WYNAUT,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 211
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 211
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 210
.tags = MON_POOL_TAG_ACE,
},
{
#line 212
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 213
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 213
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 214
.species = SPECIES_EEVEE,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 216
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 216
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
#line 215
.tags = MON_POOL_TAG_LEAD,
},
},
},
#line 217
[DIFFICULTY_NORMAL][9] =
{
#line 218
.trainerName = _("Test9"),
#line 219
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 220
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 222
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 223
.battleType = TRAINER_BATTLE_TYPE_DOUBLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
#line 224
.partySize = 2,
.poolSize = 2,
.party = (const struct TrainerMon[])
{
{
#line 226
.species = SPECIES_WYNAUT,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 227
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 227
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 228
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 229
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 229
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},
#line 230
[DIFFICULTY_NORMAL][10] =
{
#line 231
.trainerName = _("Test10"),
#line 232
.trainerClass = TRAINER_CLASS_PKMN_TRAINER_1,
#line 233
.trainerPic = TRAINER_PIC_RED,
.encounterMusic_gender =
#line 235
TRAINER_ENCOUNTER_MUSIC_MALE,
#line 236
.battleType = TRAINER_BATTLE_TYPE_DOUBLES,
#line 0
.trainerBackPic = TRAINER_PIC_RED,
#line 237
.partySize = 2,
.poolSize = 2,
.party = (const struct TrainerMon[])
{
{
#line 239
.species = SPECIES_WYNAUT,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 240
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 240
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
{
#line 241
.species = SPECIES_WOBBUFFET,
.gender = TRAINER_MON_RANDOM_GENDER,
#line 242
.iv = TRAINER_PARTY_IVS(31, 31, 31, 31, 31, 31),
#line 242
.lvl = 100,
.nature = NATURE_HARDY,
.dynamaxLevel = MAX_DYNAMAX_LEVEL,
},
},
},