Add in-battle shadows underneath all enemy battlers (#5178)

* Add data to SpeciesInfo entries for in-battle shadows

* Implement sized shadows in the sprite visualizer

* Implement sized shadows in game code

* Show shadows for the lead battler for opponents during their battle anim

* Feedback on shadows, round 1

* Revert removal of Goomy and Sliggoo shadows

* Fixed GEN_3 setting

* Code cleanup + remove pre-processor branches

* Fix bugs with gen-3 configuration branch

* Style corrections, final shadow coordinate adjustments

* Adjustments to Garbodor and Araquanid
This commit is contained in:
Rachel 2024-09-10 12:27:49 -07:00 committed by GitHub
parent 2477f1d5ca
commit b478881fc6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
26 changed files with 1907 additions and 129 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

View file

@ -979,7 +979,10 @@ struct BattleHealthboxInfo
u8 animationState;
u8 partyStatusDelayTimer;
u8 matrixNum;
u8 shadowSpriteId;
u8 shadowSpriteIdPrimary;
u8 shadowSpriteIdSecondary;
u8 soundTimer;
u8 introEndDelay;
u8 field_A;

View file

@ -47,6 +47,9 @@ enum
#define TAG_HEALTHBAR_PAL TAG_HEALTHBAR_PLAYER1_TILE
#define TAG_HEALTHBOX_PAL TAG_HEALTHBOX_PLAYER1_TILE
#define TAG_SHADOW_PAL TAG_HEALTHBOX_PLAYER1_TILE
#define TAG_SHADOW_TILE 0xD759
#define TAG_GIMMICK_TRIGGER_TILE 0xD777
#define TAG_MEGA_INDICATOR_TILE 0xD778

View file

@ -279,4 +279,7 @@
#define SHOW_TYPES_CAUGHT 2
#define B_SHOW_TYPES SHOW_TYPES_NEVER // When defined as SHOW_TYPES_ALWAYS, after selecting "Fight" in battle, the types of all Pokemon are revealed. Whe defined as SHOW_TYPES_OWN, types are only revealed if the player owns the mon in question.
// Pokémon battle sprite settings
#define B_ENEMY_MON_SHADOW_STYLE GEN_LATEST // In Gen4+, all enemy Pokemon will have a shadow drawn beneath them.
#endif // GUARD_CONFIG_BATTLE_H

View file

@ -281,10 +281,12 @@
#define OW_SPECIES(x) (((x)->graphicsId & OBJ_EVENT_GFX_SPECIES_MASK) - OBJ_EVENT_GFX_MON_BASE)
#define OW_FORM(x) ((x)->graphicsId >> OBJ_EVENT_GFX_SPECIES_BITS)
#define SHADOW_SIZE_S 0
#define SHADOW_SIZE_M 1
#define SHADOW_SIZE_L 2
#define SHADOW_SIZE_NONE 3 // Originally SHADOW_SIZE_XL, which went unused due to shadowSize in ObjectEventGraphicsInfo being only 2 bits.
#define SHADOW_SIZE_S 0
#define SHADOW_SIZE_M 1
#define SHADOW_SIZE_L 2
#define SHADOW_SIZE_NONE 3 // Originally SHADOW_SIZE_XL, which went unused due to shadowSize in ObjectEventGraphicsInfo being only 2 bits.
#define SHADOW_SIZE_XL_BATTLE_ONLY SHADOW_SIZE_NONE // Battle-only definition for XL shadow size.
#define F_INANIMATE (1 << 6)
#define F_DISABLE_REFLECTION_PALETTE_LOAD (1 << 7)

View file

@ -3104,6 +3104,7 @@ extern const u32 gBattleAnimBgPalette_Surf[];
extern const u32 gBattleAnimBackgroundImageMuddyWater_Pal[];
extern const u32 gEnemyMonShadow_Gfx[];
extern const u32 gEnemyMonShadowsSized_Gfx[];
extern const u32 gBattleAnimFogTilemap[];

View file

@ -442,6 +442,12 @@ struct SpeciesInfo /*0xC4*/
u32 tmIlliterate:1; // This species will be unable to learn the universal moves.
u32 isFrontierBanned:1; // This species is not allowed to participate in Battle Frontier facilities.
u32 padding4:11;
// Shadow settings
s8 enemyShadowXOffset; // This determines the X-offset for an enemy Pokémon's shadow during battle; negative values point left, positive values point right.
s8 enemyShadowYOffset; // This determines the Y-offset for an enemy Pokémon's shadow during battle; negative values point up, positive values point down.
u16 enemyShadowSize:3; // This determines the size of the shadow sprite used for an enemy Pokémon's front sprite during battle.
u16 suppressEnemyShadow:1; // If set to true, then a shadow will not be drawn beneath an enemy Pokémon's front sprite during battle.
u16 padding5:12;
// Move Data
/* 0x80 */ const struct LevelUpMove *levelUpLearnset;
/* 0x84 */ const u16 *teachableLearnset;

View file

@ -1,6 +1,7 @@
#ifndef GUARD_POKEMON_SPRITE_VISUALIZER_H
#define GUARD_POKEMON_SPRITE_VISUALIZER_H
#include "constants/global.h"
#include "constants/pokemon_sprite_visualizer.h"
//Structs
@ -43,6 +44,17 @@ struct PokemonSpriteOffsets
s8 offset_front_elevation;
};
struct PokemonShadowSettings
{
s8 definedX;
s8 definedY;
u8 definedSize;
s8 overrideX;
s8 overrideY;
u8 overrideSize;
};
struct PokemonSpriteVisualizer
{
u16 currentmonId;
@ -52,14 +64,20 @@ struct PokemonSpriteVisualizer
u8 backspriteId;
u8 iconspriteId;
u8 followerspriteId;
u8 frontShadowSpriteId;
bool8 isShiny;
bool8 isFemale;
u8 frontShadowSpriteIdPrimary;
u8 frontShadowSpriteIdSecondary;
struct PokemonShadowSettings shadowSettings;
struct PokemonSpriteVisualizerModifyArrows modifyArrows;
struct PokemonSpriteVisualizerOptionArrows optionArrows;
struct PokemonSpriteVisualizerYPosModifiyArrows yPosModifyArrows;
struct PokemonSpriteConstValues constSpriteValues;
struct PokemonSpriteOffsets offsetsSpriteValues;
u8 animIdBack;
u8 animIdFront;
u8 battleBgType;

View file

@ -6616,12 +6616,29 @@ static void ReloadBattlerSprites(u32 battler, struct Pokemon *party)
UpdateIndicatorVisibilityAndType(gHealthboxSpriteIds[battler], TRUE);
// Try to recreate shadow sprite
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId < MAX_SPRITES)
if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
{
DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId]);
gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId = MAX_SPRITES;
CreateEnemyShadowSprite(battler);
SetBattlerShadowSpriteCallback(battler, GetMonData(mon, MON_DATA_SPECIES));
// Both of these *should* be true, but use an OR just to be certain
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary < MAX_SPRITES
|| gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary < MAX_SPRITES)
{
DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary]);
DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary]);
gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary = MAX_SPRITES;
gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary = MAX_SPRITES;
CreateEnemyShadowSprite(battler);
SetBattlerShadowSpriteCallback(battler, GetMonData(mon, MON_DATA_SPECIES));
}
}
else
{
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary < MAX_SPRITES)
{
DestroySprite(&gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary]);
gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary = MAX_SPRITES;
CreateEnemyShadowSprite(battler);
SetBattlerShadowSpriteCallback(battler, GetMonData(mon, MON_DATA_SPECIES));
}
}
}

View file

@ -9,9 +9,6 @@
#define TAG_SMOKESCREEN 55019
#define PALTAG_SHADOW 55039
#define GFXTAG_SHADOW 55129
static void SpriteCB_SmokescreenImpactMain(struct Sprite *);
static void SpriteCB_SmokescreenImpact(struct Sprite *);
@ -95,39 +92,6 @@ static const struct SpriteTemplate sSmokescreenImpactSpriteTemplate =
.callback = SpriteCB_SmokescreenImpact
};
const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow =
{
.data = gEnemyMonShadow_Gfx, .size = 0x80, .tag = GFXTAG_SHADOW
};
static const struct OamData sOamData_EnemyShadow =
{
.y = 0,
.affineMode = ST_OAM_AFFINE_OFF,
.objMode = ST_OAM_OBJ_NORMAL,
.mosaic = FALSE,
.bpp = ST_OAM_4BPP,
.shape = SPRITE_SHAPE(32x8),
.x = 0,
.matrixNum = 0,
.size = SPRITE_SIZE(32x8),
.tileNum = 0,
.priority = 3,
.paletteNum = 0,
.affineParam = 0
};
const struct SpriteTemplate gSpriteTemplate_EnemyShadow =
{
.tileTag = GFXTAG_SHADOW,
.paletteTag = PALTAG_SHADOW,
.oam = &sOamData_EnemyShadow,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = SpriteCB_SetInvisible
};
#define sActiveSprites data[0]
#define sPersist data[1]

View file

@ -211,6 +211,18 @@ static void Intro_WaitForShinyAnimAndHealthbox(u32 battler)
}
}
static void TrySetBattlerShadowSpriteCallback(u32 battler)
{
if (gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback == SpriteCallbackDummy)
{
if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3
|| gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback == SpriteCallbackDummy)
{
SetBattlerShadowSpriteCallback(battler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES));
}
}
}
static void Intro_TryShinyAnimShowHealthbox(u32 battler)
{
bool32 bgmRestored = FALSE;
@ -269,33 +281,36 @@ static void Intro_TryShinyAnimShowHealthbox(u32 battler)
if (!twoMons || (twoMons && gBattleTypeFlags & BATTLE_TYPE_MULTI && !BATTLE_TWO_VS_ONE_OPPONENT))
{
if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy)
if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy)
{
battlerAnimsDone = TRUE;
TrySetBattlerShadowSpriteCallback(battler);
if (gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy)
{
battlerAnimsDone = TRUE;
}
}
}
else
{
if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy
&& gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy)
&& gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy)
{
battlerAnimsDone = TRUE;
TrySetBattlerShadowSpriteCallback(battler);
TrySetBattlerShadowSpriteCallback(BATTLE_PARTNER(battler));
if (gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy)
{
battlerAnimsDone = TRUE;
}
}
}
if (bgmRestored && battlerAnimsDone)
{
if (twoMons && (!(gBattleTypeFlags & BATTLE_TYPE_MULTI) || BATTLE_TWO_VS_ONE_OPPONENT))
{
DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]]);
SetBattlerShadowSpriteCallback(BATTLE_PARTNER(battler), GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(battler)]], MON_DATA_SPECIES));
}
DestroySprite(&gSprites[gBattleControllerData[battler]]);
SetBattlerShadowSpriteCallback(battler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES));
gBattleSpritesDataPtr->animationData->introAnimActive = FALSE;
gBattleSpritesDataPtr->healthBoxesData[battler].bgmRestored = FALSE;
gBattleSpritesDataPtr->healthBoxesData[battler].healthboxSlideInStarted = FALSE;

View file

@ -200,6 +200,19 @@ static void Intro_WaitForShinyAnimAndHealthbox(u32 battler)
}
}
static void TrySetBattlerShadowSpriteCallback(u32 battler)
{
if (gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback == SpriteCallbackDummy)
{
if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3
|| gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback == SpriteCallbackDummy)
{
SetBattlerShadowSpriteCallback(battler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES));
}
}
}
static void Intro_TryShinyAnimShowHealthbox(u32 battler)
{
bool32 bgmRestored = FALSE;
@ -253,33 +266,34 @@ static void Intro_TryShinyAnimShowHealthbox(u32 battler)
if (!IsDoubleBattle())
{
if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy)
if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy)
{
battlerAnimsDone = TRUE;
TrySetBattlerShadowSpriteCallback(battler);
if (gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy)
battlerAnimsDone = TRUE;
}
}
else
{
if (gSprites[gBattleControllerData[battler]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy
&& gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy)
&& gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy)
{
battlerAnimsDone = TRUE;
TrySetBattlerShadowSpriteCallback(battler);
TrySetBattlerShadowSpriteCallback(BATTLE_PARTNER(battler));
if (gSprites[gBattlerSpriteIds[battler]].callback == SpriteCallbackDummy
&& gSprites[gBattlerSpriteIds[BATTLE_PARTNER(battler)]].callback == SpriteCallbackDummy)
{
battlerAnimsDone = TRUE;
}
}
}
if (bgmRestored && battlerAnimsDone)
{
if (IsDoubleBattle() && !(gBattleTypeFlags & BATTLE_TYPE_MULTI))
{
DestroySprite(&gSprites[gBattleControllerData[BATTLE_PARTNER(battler)]]);
SetBattlerShadowSpriteCallback(BATTLE_PARTNER(battler), GetMonData(&gEnemyParty[gBattlerPartyIndexes[BATTLE_PARTNER(battler)]], MON_DATA_SPECIES));
}
DestroySprite(&gSprites[gBattleControllerData[battler]]);
SetBattlerShadowSpriteCallback(battler, GetMonData(&gEnemyParty[gBattlerPartyIndexes[battler]], MON_DATA_SPECIES));
gBattleSpritesDataPtr->animationData->introAnimActive = FALSE;
gBattleSpritesDataPtr->healthBoxesData[battler].bgmRestored = FALSE;

View file

@ -27,10 +27,6 @@
#include "constants/battle_palace.h"
#include "constants/battle_move_effects.h"
extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow;
extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow;
// this file's functions
static u8 GetBattlePalaceMoveGroup(u8 battler, u16 move);
static u16 GetBattlePalaceTarget(u32 battler);
@ -82,6 +78,46 @@ const struct SpritePalette sSpritePalettes_HealthBoxHealthBar[2] =
{gBattleInterface_BallDisplayPal, TAG_HEALTHBAR_PAL}
};
const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow =
{
.data = gEnemyMonShadow_Gfx, .size = 0x80, .tag = TAG_SHADOW_TILE
};
const struct CompressedSpriteSheet gSpriteSheet_EnemyShadowsSized =
{
.data = gEnemyMonShadowsSized_Gfx,
.size = TILE_SIZE_4BPP * 8 * 4, // 8 tiles per sprite, 4 sprites total
.tag = TAG_SHADOW_TILE,
};
static const struct OamData sOamData_EnemyShadow =
{
.y = 0,
.affineMode = ST_OAM_AFFINE_OFF,
.objMode = ST_OAM_OBJ_NORMAL,
.mosaic = FALSE,
.bpp = ST_OAM_4BPP,
.shape = SPRITE_SHAPE(32x8),
.x = 0,
.matrixNum = 0,
.size = SPRITE_SIZE(32x8),
.tileNum = 0,
.priority = 3,
.paletteNum = 0,
.affineParam = 0
};
const struct SpriteTemplate gSpriteTemplate_EnemyShadow =
{
.tileTag = TAG_SHADOW_TILE,
.paletteTag = TAG_SHADOW_PAL,
.oam = &sOamData_EnemyShadow,
.anims = gDummySpriteAnimTable,
.images = NULL,
.affineAnims = gDummySpriteAffineAnimTable,
.callback = SpriteCallbackDummy,
};
// code
void AllocateBattleSpritesData(void)
{
@ -1094,16 +1130,58 @@ void SetBattlerSpriteAffineMode(u8 affineMode)
}
}
#define tBattlerId data[0]
#define tBattlerId data[0]
#define tSpriteSide data[1]
#define SPRITE_SIDE_LEFT 0
#define SPRITE_SIDE_RIGHT 1
void CreateEnemyShadowSprite(u32 battler)
{
gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow,
GetBattlerSpriteCoord(battler, BATTLER_COORD_X),
GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + 29,
0xC8);
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId < MAX_SPRITES)
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].data[0] = battler;
if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
{
u16 species = SanitizeSpeciesId(gBattleMons[battler].species);
u8 size = gSpeciesInfo[species].enemyShadowSize;
gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary = CreateSprite(&gSpriteTemplate_EnemyShadow,
GetBattlerSpriteCoord(battler, BATTLER_COORD_X),
GetBattlerSpriteCoord(battler, BATTLER_COORD_Y),
0xC8);
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary < MAX_SPRITES)
{
struct Sprite *sprite = &gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary];
sprite->tBattlerId = battler;
sprite->tSpriteSide = SPRITE_SIDE_LEFT;
sprite->oam.tileNum += 8 * size;
sprite->invisible = TRUE;
}
gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary = CreateSprite(&gSpriteTemplate_EnemyShadow,
GetBattlerSpriteCoord(battler, BATTLER_COORD_X),
GetBattlerSpriteCoord(battler, BATTLER_COORD_Y),
0xC8);
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary < MAX_SPRITES)
{
struct Sprite *sprite = &gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary];
sprite->tBattlerId = battler;
sprite->tSpriteSide = SPRITE_SIDE_RIGHT;
sprite->oam.tileNum += (8 * size) + 4;
sprite->invisible = TRUE;
}
}
else
{
gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary = CreateSprite(&gSpriteTemplate_EnemyShadow,
GetBattlerSpriteCoord(battler, BATTLER_COORD_X),
GetBattlerSpriteCoord(battler, BATTLER_COORD_Y),
0xC8);
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary < MAX_SPRITES)
{
struct Sprite *sprite = &gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary];
sprite->tBattlerId = battler;
sprite->invisible = TRUE;
}
}
}
void LoadAndCreateEnemyShadowSprites(void)
@ -1111,12 +1189,26 @@ void LoadAndCreateEnemyShadowSprites(void)
u8 battler;
u32 i;
LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow);
// initialize shadow sprite ids
for (i = 0; i < gBattlersCount; i++)
if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
{
gBattleSpritesDataPtr->healthBoxesData[i].shadowSpriteId = MAX_SPRITES;
LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadowsSized);
// initialize shadow sprite ids
for (i = 0; i < gBattlersCount; i++)
{
gBattleSpritesDataPtr->healthBoxesData[i].shadowSpriteIdPrimary = MAX_SPRITES;
gBattleSpritesDataPtr->healthBoxesData[i].shadowSpriteIdSecondary = MAX_SPRITES;
}
}
else
{
LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow);
// initialize shadow sprite ids
for (i = 0; i < gBattlersCount; i++)
{
gBattleSpritesDataPtr->healthBoxesData[i].shadowSpriteIdPrimary = MAX_SPRITES;
}
}
battler = GetBattlerAtPosition(B_POSITION_OPPONENT_LEFT);
@ -1141,16 +1233,36 @@ void SpriteCB_EnemyShadow(struct Sprite *shadowSprite)
shadowSprite->callback = SpriteCB_SetInvisible;
return;
}
s8 xOffset = 0, yOffset = 0;
if (gAnimScriptActive || battlerSprite->invisible)
invisible = TRUE;
else if (transformSpecies != SPECIES_NONE && gSpeciesInfo[transformSpecies].enemyMonElevation == 0)
invisible = TRUE;
else if (transformSpecies != SPECIES_NONE)
{
xOffset = gSpeciesInfo[transformSpecies].enemyShadowXOffset;
yOffset = gSpeciesInfo[transformSpecies].enemyShadowYOffset;
invisible = B_ENEMY_MON_SHADOW_STYLE >= GEN_4
? gSpeciesInfo[transformSpecies].suppressEnemyShadow
: gSpeciesInfo[transformSpecies].enemyMonElevation == 0;
}
else if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
{
u16 species = SanitizeSpeciesId(gBattleMons[battler].species);
xOffset = gSpeciesInfo[species].enemyShadowXOffset + (shadowSprite->tSpriteSide == SPRITE_SIDE_LEFT ? -16 : 16);
yOffset = gSpeciesInfo[species].enemyShadowYOffset + 16;
}
else
{
yOffset = 29;
}
if (gBattleSpritesDataPtr->battlerData[battler].behindSubstitute)
invisible = TRUE;
shadowSprite->x = battlerSprite->x;
shadowSprite->x = battlerSprite->x + xOffset;
shadowSprite->x2 = battlerSprite->x2;
shadowSprite->y = battlerSprite->y + yOffset;
shadowSprite->invisible = invisible;
}
@ -1163,24 +1275,59 @@ void SpriteCB_SetInvisible(struct Sprite *sprite)
void SetBattlerShadowSpriteCallback(u8 battler, u16 species)
{
// The player's shadow is never seen.
if (GetBattlerSide(battler) == B_SIDE_PLAYER || gBattleScripting.monCaught)
return;
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId >= MAX_SPRITES)
return;
if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
{
if (GetBattlerSide(battler) == B_SIDE_PLAYER || gBattleScripting.monCaught)
{
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible;
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback = SpriteCB_SetInvisible;
return;
}
if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE)
species = gBattleSpritesDataPtr->battlerData[battler].transformSpecies;
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary >= MAX_SPRITES
|| gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary >= MAX_SPRITES)
return;
if (gSpeciesInfo[SanitizeSpeciesId(species)].enemyMonElevation != 0)
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].callback = SpriteCB_EnemyShadow;
if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE)
species = gBattleSpritesDataPtr->battlerData[battler].transformSpecies;
if (gSpeciesInfo[SanitizeSpeciesId(species)].suppressEnemyShadow == FALSE)
{
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_EnemyShadow;
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback = SpriteCB_EnemyShadow;
}
else
{
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible;
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback = SpriteCB_SetInvisible;
}
}
else
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].callback = SpriteCB_SetInvisible;
{
if (GetBattlerSide(battler) == B_SIDE_PLAYER || gBattleScripting.monCaught)
{
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible;
return;
}
if (gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary >= MAX_SPRITES)
return;
if (gBattleSpritesDataPtr->battlerData[battler].transformSpecies != SPECIES_NONE)
species = gBattleSpritesDataPtr->battlerData[battler].transformSpecies;
if (gSpeciesInfo[SanitizeSpeciesId(species)].enemyMonElevation != 0)
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_EnemyShadow;
else
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible;
}
}
void HideBattlerShadowSprite(u8 battler)
{
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteId].callback = SpriteCB_SetInvisible;
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdPrimary].callback = SpriteCB_SetInvisible;
if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
gSprites[gBattleSpritesDataPtr->healthBoxesData[battler].shadowSpriteIdSecondary].callback = SpriteCB_SetInvisible;
}
// Color the background tiles surrounding the action selection and move windows

View file

@ -10115,7 +10115,6 @@ static void Cmd_various(void)
{
// Save sprite IDs, because trainer slide in will overwrite gBattlerSpriteIds variable.
gBattleScripting.savedDmg = (gBattlerSpriteIds[battler] & 0xFF) | (gBattlerSpriteIds[BATTLE_PARTNER(battler)] << 8);
HideBattlerShadowSprite(battler);
}
else if (cmd->case_ == 1)
{

View file

@ -11,6 +11,14 @@
#define FOOTPRINT(sprite)
#endif
#if B_ENEMY_MON_SHADOW_STYLE >= GEN_4
#define SHADOW(x, y, size) .enemyShadowXOffset = x, .enemyShadowYOffset = y, .enemyShadowSize = size,
#define NO_SHADOW .suppressEnemyShadow = TRUE,
#else
#define SHADOW(x, y, size) .enemyShadowXOffset = 0, .enemyShadowYOffset = 0, .enemyShadowSize = 0,
#define NO_SHADOW .suppressEnemyShadow = FALSE,
#endif
#define SIZE_32x32 1
#define SIZE_64x64 0

File diff suppressed because it is too large Load diff

View file

@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Chikorita,
.iconSprite = gMonIcon_Chikorita,
.iconPalIndex = 1,
SHADOW(-1, 2, SHADOW_SIZE_S)
FOOTPRINT(Chikorita)
OVERWORLD(
sPicTable_Chikorita,
@ -114,6 +115,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Bayleef,
.iconSprite = gMonIcon_Bayleef,
.iconPalIndex = 1,
SHADOW(-1, 10, SHADOW_SIZE_M)
FOOTPRINT(Bayleef)
OVERWORLD(
sPicTable_Bayleef,
@ -186,6 +188,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Meganium,
.iconSprite = gMonIcon_Meganium,
.iconPalIndex = 1,
SHADOW(0, 13, SHADOW_SIZE_M)
FOOTPRINT(Meganium)
OVERWORLD(
sPicTable_Meganium,
@ -248,6 +251,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Cyndaquil,
.iconSprite = gMonIcon_Cyndaquil,
.iconPalIndex = 3,
SHADOW(0, -1, SHADOW_SIZE_S)
FOOTPRINT(Cyndaquil)
OVERWORLD(
sPicTable_Cyndaquil,
@ -311,6 +315,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Quilava,
.iconSprite = gMonIcon_Quilava,
.iconPalIndex = 3,
SHADOW(0, 2, SHADOW_SIZE_M)
FOOTPRINT(Quilava)
OVERWORLD(
sPicTable_Quilava,
@ -382,6 +387,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Typhlosion,
.iconSprite = gMonIcon_Typhlosion,
.iconPalIndex = 3,
SHADOW(4, 14, SHADOW_SIZE_L)
FOOTPRINT(Typhlosion)
OVERWORLD(
sPicTable_Typhlosion,
@ -444,6 +450,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_TyphlosionHisuian,
.iconSprite = gMonIcon_TyphlosionHisuian,
.iconPalIndex = 1,
SHADOW(2, 14, SHADOW_SIZE_L)
FOOTPRINT(Typhlosion)
OVERWORLD(
sPicTable_TyphlosionHisuian,
@ -509,6 +516,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Totodile,
.iconSprite = gMonIcon_Totodile,
.iconPalIndex = 0,
SHADOW(2, 0, SHADOW_SIZE_S)
FOOTPRINT(Totodile)
OVERWORLD(
sPicTable_Totodile,
@ -573,6 +581,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Croconaw,
.iconSprite = gMonIcon_Croconaw,
.iconPalIndex = 0,
SHADOW(2, 8, SHADOW_SIZE_M)
FOOTPRINT(Croconaw)
OVERWORLD(
sPicTable_Croconaw,
@ -642,6 +651,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Feraligatr,
.iconSprite = gMonIcon_Feraligatr,
.iconPalIndex = 0,
SHADOW(3, 11, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Feraligatr)
OVERWORLD(
sPicTable_Feraligatr,
@ -704,6 +714,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Sentret,
.iconSprite = gMonIcon_Sentret,
.iconPalIndex = 2,
SHADOW(0, 11, SHADOW_SIZE_S)
FOOTPRINT(Sentret)
OVERWORLD(
sPicTable_Sentret,
@ -766,6 +777,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Furret,
.iconSprite = gMonIcon_Furret,
.iconPalIndex = 2,
SHADOW(-1, 9, SHADOW_SIZE_M)
FOOTPRINT(Furret)
OVERWORLD(
sPicTable_Furret,
@ -828,6 +840,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Hoothoot,
.iconSprite = gMonIcon_Hoothoot,
.iconPalIndex = 2,
SHADOW(0, 2, SHADOW_SIZE_S)
FOOTPRINT(Hoothoot)
OVERWORLD(
sPicTable_Hoothoot,
@ -896,6 +909,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Noctowl,
.iconSprite = gMonIcon_Noctowl,
.iconPalIndex = 2,
SHADOW(-2, 10, SHADOW_SIZE_S)
FOOTPRINT(Noctowl)
OVERWORLD(
sPicTable_Noctowl,
@ -962,6 +976,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Ledyba,
.iconSprite = gMonIcon_Ledyba,
.iconPalIndex = 0,
SHADOW(2, 4, SHADOW_SIZE_M)
FOOTPRINT(Ledyba)
OVERWORLD(
sPicTable_Ledyba,
@ -1029,6 +1044,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Ledian,
.iconSprite = gMonIcon_Ledian,
.iconPalIndex = 0,
SHADOW(0, 15, SHADOW_SIZE_S)
FOOTPRINT(Ledian)
OVERWORLD(
sPicTable_Ledian,
@ -1091,6 +1107,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Spinarak,
.iconSprite = gMonIcon_Spinarak,
.iconPalIndex = 1,
SHADOW(0, -8, SHADOW_SIZE_M)
FOOTPRINT(Spinarak)
OVERWORLD(
sPicTable_Spinarak,
@ -1159,6 +1176,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Ariados,
.iconSprite = gMonIcon_Ariados,
.iconPalIndex = 0,
SHADOW(1, 3, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Ariados)
OVERWORLD(
sPicTable_Ariados,
@ -1222,6 +1240,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Chinchou,
.iconSprite = gMonIcon_Chinchou,
.iconPalIndex = 2,
SHADOW(-1, 1, SHADOW_SIZE_M)
FOOTPRINT(Chinchou)
OVERWORLD(
sPicTable_Chinchou,
@ -1285,6 +1304,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Lanturn,
.iconSprite = gMonIcon_Lanturn,
.iconPalIndex = 0,
SHADOW(5, 4, SHADOW_SIZE_M)
FOOTPRINT(Lanturn)
OVERWORLD(
sPicTable_Lanturn,
@ -1349,6 +1369,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Togepi,
.iconSprite = gMonIcon_Togepi,
.iconPalIndex = 0,
SHADOW(-1, -3, SHADOW_SIZE_S)
FOOTPRINT(Togepi)
OVERWORLD(
sPicTable_Togepi,
@ -1411,6 +1432,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Togetic,
.iconSprite = gMonIcon_Togetic,
.iconPalIndex = 0,
SHADOW(0, 6, SHADOW_SIZE_S)
FOOTPRINT(Togetic)
OVERWORLD(
sPicTable_Togetic,
@ -1482,6 +1504,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Togekiss,
.iconSprite = gMonIcon_Togekiss,
.iconPalIndex = 2,
SHADOW(4, 15, SHADOW_SIZE_M)
FOOTPRINT(Togekiss)
OVERWORLD(
sPicTable_Togekiss,
@ -1546,6 +1569,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Natu,
.iconSprite = gMonIcon_Natu,
.iconPalIndex = 1,
SHADOW(-2, -4, SHADOW_SIZE_S)
FOOTPRINT(Natu)
OVERWORLD(
sPicTable_Natu,
@ -1611,6 +1635,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Xatu,
.iconSprite = gMonIcon_Xatu,
.iconPalIndex = 1,
SHADOW(-1, 9, SHADOW_SIZE_S)
FOOTPRINT(Xatu)
OVERWORLD(
sPicTable_Xatu,
@ -1674,6 +1699,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Mareep,
.iconSprite = gMonIcon_Mareep,
.iconPalIndex = 0,
SHADOW(1, 1, SHADOW_SIZE_M)
FOOTPRINT(Mareep)
OVERWORLD(
sPicTable_Mareep,
@ -1736,6 +1762,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Flaaffy,
.iconSprite = gMonIcon_Flaaffy,
.iconPalIndex = 0,
SHADOW(0, 4, SHADOW_SIZE_S)
FOOTPRINT(Flaaffy)
OVERWORLD(
sPicTable_Flaaffy,
@ -1808,6 +1835,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Ampharos,
.iconSprite = gMonIcon_Ampharos,
.iconPalIndex = 0,
SHADOW(3, 11, SHADOW_SIZE_M)
FOOTPRINT(Ampharos)
OVERWORLD(
sPicTable_Ampharos,
@ -1871,6 +1899,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_AmpharosMega,
.iconSprite = gMonIcon_AmpharosMega,
.iconPalIndex = 0,
SHADOW(-7, 13, SHADOW_SIZE_M)
FOOTPRINT(Ampharos)
.isMegaEvolution = TRUE,
.levelUpLearnset = sAmpharosLevelUpLearnset,
@ -1934,6 +1963,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Azurill,
.iconSprite = gMonIcon_Azurill,
.iconPalIndex = 0,
SHADOW(-4, 3, SHADOW_SIZE_S)
FOOTPRINT(Azurill)
OVERWORLD(
sPicTable_Azurill,
@ -2001,6 +2031,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Marill,
.iconSprite = gMonIcon_Marill,
.iconPalIndex = 0,
SHADOW(-2, 0, SHADOW_SIZE_S)
FOOTPRINT(Marill)
OVERWORLD(
sPicTable_Marill,
@ -2075,6 +2106,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Azumarill,
.iconSprite = gMonIcon_Azumarill,
.iconPalIndex = 0,
SHADOW(-4, 8, SHADOW_SIZE_S)
FOOTPRINT(Azumarill)
OVERWORLD(
sPicTable_Azumarill,
@ -2138,6 +2170,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Bonsly,
.iconSprite = gMonIcon_Bonsly,
.iconPalIndex = 1,
SHADOW(-3, 4, SHADOW_SIZE_S)
FOOTPRINT(Bonsly)
OVERWORLD(
sPicTable_Bonsly,
@ -2205,6 +2238,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Sudowoodo,
.iconSprite = gMonIcon_Sudowoodo,
.iconPalIndex = 1,
SHADOW(-2, 7, SHADOW_SIZE_S)
FOOTPRINT(Sudowoodo)
OVERWORLD(
sPicTable_Sudowoodo,
@ -2273,6 +2307,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Hoppip,
.iconSprite = gMonIcon_Hoppip,
.iconPalIndex = 1,
SHADOW(-5, 12, SHADOW_SIZE_S)
FOOTPRINT(Hoppip)
OVERWORLD(
sPicTable_Hoppip,
@ -2340,6 +2375,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Skiploom,
.iconSprite = gMonIcon_Skiploom,
.iconPalIndex = 1,
SHADOW(-1, 10, SHADOW_SIZE_S)
FOOTPRINT(Skiploom)
OVERWORLD(
sPicTable_Skiploom,
@ -2414,6 +2450,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Jumpluff,
.iconSprite = gMonIcon_Jumpluff,
.iconPalIndex = 2,
SHADOW(-2, 11, SHADOW_SIZE_S)
FOOTPRINT(Jumpluff)
OVERWORLD(
sPicTable_Jumpluff,
@ -2480,6 +2517,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Aipom,
.iconSprite = gMonIcon_Aipom,
.iconPalIndex = 2,
SHADOW(-1, 12, SHADOW_SIZE_S)
FOOTPRINT(Aipom)
OVERWORLD(
sPicTable_Aipom,
@ -2547,6 +2585,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Ambipom,
.iconSprite = gMonIcon_Ambipom,
.iconPalIndex = 2,
SHADOW(-1, 13, SHADOW_SIZE_S)
FOOTPRINT(Ambipom)
OVERWORLD(
sPicTable_Ambipom,
@ -2614,6 +2653,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Sunkern,
.iconSprite = gMonIcon_Sunkern,
.iconPalIndex = 1,
SHADOW(-1, -4, SHADOW_SIZE_S)
FOOTPRINT(Sunkern)
OVERWORLD(
sPicTable_Sunkern,
@ -2680,6 +2720,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Sunflora,
.iconSprite = gMonIcon_Sunflora,
.iconPalIndex = 1,
SHADOW(-1, 6, SHADOW_SIZE_S)
FOOTPRINT(Sunflora)
OVERWORLD(
sPicTable_Sunflora,
@ -2744,6 +2785,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Yanma,
.iconSprite = gMonIcon_Yanma,
.iconPalIndex = 1,
SHADOW(-2, 10, SHADOW_SIZE_S)
FOOTPRINT(Yanma)
OVERWORLD(
sPicTable_Yanma,
@ -2809,6 +2851,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Yanmega,
.iconSprite = gMonIcon_Yanmega,
.iconPalIndex = 1,
SHADOW(-1, 12, SHADOW_SIZE_M)
FOOTPRINT(Yanmega)
OVERWORLD(
sPicTable_Yanmega,
@ -2876,6 +2919,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Wooper,
.iconSprite = gMonIcon_Wooper,
.iconPalIndex = 0,
SHADOW(1, -2, SHADOW_SIZE_S)
FOOTPRINT(Wooper)
OVERWORLD(
sPicTable_Wooper,
@ -2943,6 +2987,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Quagsire,
.iconSprite = gMonIcon_Quagsire,
.iconPalIndex = 0,
SHADOW(0, 8, SHADOW_SIZE_M)
FOOTPRINT(Quagsire)
OVERWORLD(
sPicTable_Quagsire,
@ -3004,6 +3049,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_WooperPaldean,
.iconSprite = gMonIcon_WooperPaldean,
.iconPalIndex = 2,
SHADOW(-1, -2, SHADOW_SIZE_S)
FOOTPRINT(Wooper)
OVERWORLD(
sPicTable_WooperPaldean,
@ -3068,6 +3114,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Clodsire,
.iconSprite = gMonIcon_Clodsire,
.iconPalIndex = 0,
SHADOW(-2, 3, SHADOW_SIZE_L)
FOOTPRINT(Clodsire)
OVERWORLD(
sPicTable_Clodsire,
@ -3140,6 +3187,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Murkrow,
.iconSprite = gMonIcon_Murkrow,
.iconPalIndex = 2,
SHADOW(-2, 8, SHADOW_SIZE_S)
FOOTPRINT(Murkrow)
OVERWORLD(
sPicTable_Murkrow,
@ -3203,6 +3251,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Honchkrow,
.iconSprite = gMonIcon_Honchkrow,
.iconPalIndex = 2,
SHADOW(5, 7, SHADOW_SIZE_M)
FOOTPRINT(Honchkrow)
OVERWORLD(
sPicTable_Honchkrow,
@ -3268,6 +3317,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Misdreavus,
.iconSprite = gMonIcon_Misdreavus,
.iconPalIndex = 0,
SHADOW(0, 10, SHADOW_SIZE_S)
FOOTPRINT(Misdreavus)
OVERWORLD(
sPicTable_Misdreavus,
@ -3333,6 +3383,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Mismagius,
.iconSprite = gMonIcon_Mismagius,
.iconPalIndex = 2,
SHADOW(1, 11, SHADOW_SIZE_M)
FOOTPRINT(Mismagius)
OVERWORLD(
sPicTable_Mismagius,
@ -3395,8 +3446,9 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Unown, \
.iconSprite = gMonIcon_Unown ##letter, \
.iconPalIndex = 0, \
SHADOW(0, 3, SHADOW_SIZE_S) \
FOOTPRINT(Unown) \
OVERWORLD( \
OVERWORLD( \
sPicTable_Unown ##letter, \
SIZE_32x32, \
SHADOW_SIZE_M, \
@ -3490,6 +3542,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Wynaut,
.iconSprite = gMonIcon_Wynaut,
.iconPalIndex = 0,
SHADOW(-1, 2, SHADOW_SIZE_S)
FOOTPRINT(Wynaut)
OVERWORLD(
sPicTable_Wynaut,
@ -3561,6 +3614,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.iconSpriteFemale = gMonIcon_WobbuffetF,
.iconPalIndexFemale = 0,
#endif
SHADOW(-3, 8, SHADOW_SIZE_M)
FOOTPRINT(Wobbuffet)
OVERWORLD(
sPicTable_Wobbuffet,
@ -3628,6 +3682,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Girafarig,
.iconSprite = gMonIcon_Girafarig,
.iconPalIndex = 1,
SHADOW(2, 13, SHADOW_SIZE_M)
FOOTPRINT(Girafarig)
OVERWORLD(
sPicTable_Girafarig,
@ -3691,6 +3746,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Farigiraf,
.iconSprite = gMonIcon_Farigiraf,
.iconPalIndex = 0,
SHADOW(11, 13, SHADOW_SIZE_L)
FOOTPRINT(Farigiraf)
OVERWORLD(
sPicTable_Farigiraf,
@ -3754,6 +3810,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Pineco,
.iconSprite = gMonIcon_Pineco,
.iconPalIndex = 0,
SHADOW(0, 2, SHADOW_SIZE_S)
FOOTPRINT(Pineco)
OVERWORLD(
sPicTable_Pineco,
@ -3816,6 +3873,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Forretress,
.iconSprite = gMonIcon_Forretress,
.iconPalIndex = 2,
SHADOW(0, 6, SHADOW_SIZE_L)
FOOTPRINT(Forretress)
OVERWORLD(
sPicTable_Forretress,
@ -3885,6 +3943,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Dunsparce,
.iconSprite = gMonIcon_Dunsparce,
.iconPalIndex = 0,
SHADOW(0, -4, SHADOW_SIZE_M)
FOOTPRINT(Dunsparce)
OVERWORLD(
sPicTable_Dunsparce,
@ -3949,6 +4008,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Dudunsparce,
.iconSprite = gMonIcon_Dudunsparce,
.iconPalIndex = 0,
SHADOW(0, 5, SHADOW_SIZE_L)
FOOTPRINT(Dudunsparce)
OVERWORLD(
sPicTable_DudunsparceTwoSegment,
@ -4010,6 +4070,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Dudunsparce,
.iconSprite = gMonIcon_Dudunsparce,
.iconPalIndex = 0,
SHADOW(4, 4, SHADOW_SIZE_L)
FOOTPRINT(Dudunsparce)
OVERWORLD(
sPicTable_DudunsparceThreeSegment,
@ -4079,6 +4140,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Gligar,
.iconSprite = gMonIcon_Gligar,
.iconPalIndex = 0,
SHADOW(0, 15, SHADOW_SIZE_S)
FOOTPRINT(Gligar)
OVERWORLD(
sPicTable_Gligar,
@ -4144,6 +4206,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Gliscor,
.iconSprite = gMonIcon_Gliscor,
.iconPalIndex = 2,
SHADOW(-1, 13, SHADOW_SIZE_M)
FOOTPRINT(Gliscor)
OVERWORLD(
sPicTable_Gliscor,
@ -4211,6 +4274,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Snubbull,
.iconSprite = gMonIcon_Snubbull,
.iconPalIndex = 0,
SHADOW(-1, 1, SHADOW_SIZE_S)
FOOTPRINT(Snubbull)
OVERWORLD(
sPicTable_Snubbull,
@ -4281,6 +4345,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Granbull,
.iconSprite = gMonIcon_Granbull,
.iconPalIndex = 2,
SHADOW(3, 10, SHADOW_SIZE_L)
FOOTPRINT(Granbull)
OVERWORLD(
sPicTable_Granbull,
@ -4354,6 +4419,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Qwilfish,
.iconSprite = gMonIcon_Qwilfish,
.iconPalIndex = 0,
SHADOW(-2, 3, SHADOW_SIZE_S)
FOOTPRINT(Qwilfish)
OVERWORLD(
sPicTable_Qwilfish,
@ -4419,6 +4485,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_QwilfishHisuian,
.iconSprite = gMonIcon_QwilfishHisuian,
.iconPalIndex = 1,
SHADOW(-5, 4, SHADOW_SIZE_S)
FOOTPRINT(Qwilfish)
OVERWORLD(
sPicTable_QwilfishHisuian,
@ -4482,6 +4549,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Overqwil,
.iconSprite = gMonIcon_Overqwil,
.iconPalIndex = 2,
SHADOW(2, 11, SHADOW_SIZE_M)
FOOTPRINT(Overqwil)
OVERWORLD(
sPicTable_Overqwil,
@ -4552,6 +4620,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Shuckle,
.iconSprite = gMonIcon_Shuckle,
.iconPalIndex = 1,
SHADOW(1, 3, SHADOW_SIZE_M)
FOOTPRINT(Shuckle)
OVERWORLD(
sPicTable_Shuckle,
@ -4619,6 +4688,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Heracross,
.iconSprite = gMonIcon_Heracross,
.iconPalIndex = 0,
SHADOW(-1, 10, SHADOW_SIZE_M)
FOOTPRINT(Heracross)
OVERWORLD(
sPicTable_Heracross,
@ -4683,6 +4753,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_HeracrossMega,
.iconSprite = gMonIcon_HeracrossMega,
.iconPalIndex = 0,
SHADOW(2, 13, SHADOW_SIZE_M)
FOOTPRINT(Heracross)
.isMegaEvolution = TRUE,
.levelUpLearnset = sHeracrossLevelUpLearnset,
@ -4748,6 +4819,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Sneasel,
.iconSprite = gMonIcon_Sneasel,
.iconPalIndex = 0,
SHADOW(-1, 5, SHADOW_SIZE_S)
FOOTPRINT(Sneasel)
OVERWORLD(
sPicTable_Sneasel,
@ -4819,6 +4891,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Weavile,
.iconSprite = gMonIcon_Weavile,
.iconPalIndex = 0,
SHADOW(-4, 10, SHADOW_SIZE_M)
FOOTPRINT(Weavile)
OVERWORLD(
sPicTable_Weavile,
@ -4887,6 +4960,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_SneaselHisuian,
.iconSprite = gMonIcon_SneaselHisuian,
.iconPalIndex = 0,
SHADOW(-1, 5, SHADOW_SIZE_S)
FOOTPRINT(Sneasel)
OVERWORLD(
sPicTable_SneaselHisuian,
@ -4951,6 +5025,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Sneasler,
.iconSprite = gMonIcon_Sneasler,
.iconPalIndex = 2,
SHADOW(2, 11, SHADOW_SIZE_M)
FOOTPRINT(Sneasler)
OVERWORLD(
sPicTable_Sneasler,
@ -5020,6 +5095,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Teddiursa,
.iconSprite = gMonIcon_Teddiursa,
.iconPalIndex = 0,
SHADOW(-2, 1, SHADOW_SIZE_S)
FOOTPRINT(Teddiursa)
OVERWORLD(
sPicTable_Teddiursa,
@ -5090,6 +5166,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Ursaring,
.iconSprite = gMonIcon_Ursaring,
.iconPalIndex = 2,
SHADOW(1, 14, SHADOW_SIZE_L)
FOOTPRINT(Ursaring)
OVERWORLD(
sPicTable_Ursaring,
@ -5152,6 +5229,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Ursaluna,
.iconSprite = gMonIcon_Ursaluna,
.iconPalIndex = 2,
SHADOW(1, 4, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Ursaluna)
OVERWORLD(
sPicTable_Ursaluna,
@ -5213,6 +5291,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_UrsalunaBloodmoon,
.iconSprite = gMonIcon_UrsalunaBloodmoon,
.iconPalIndex = 2,
SHADOW(6, 11, SHADOW_SIZE_L)
FOOTPRINT(Ursaluna)
.levelUpLearnset = sUrsalunaBloodmoonLevelUpLearnset,
.teachableLearnset = sUrsalunaBloodmoonTeachableLearnset,
@ -5269,6 +5348,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Slugma,
.iconSprite = gMonIcon_Slugma,
.iconPalIndex = 0,
SHADOW(0, 0, SHADOW_SIZE_S)
FOOTPRINT(Slugma)
OVERWORLD(
sPicTable_Slugma,
@ -5338,6 +5418,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Magcargo,
.iconSprite = gMonIcon_Magcargo,
.iconPalIndex = 0,
SHADOW(0, 5, SHADOW_SIZE_M)
FOOTPRINT(Magcargo)
OVERWORLD(
sPicTable_Magcargo,
@ -5404,6 +5485,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Swinub,
.iconSprite = gMonIcon_Swinub,
.iconPalIndex = 2,
SHADOW(-3, -6, SHADOW_SIZE_S)
FOOTPRINT(Swinub)
OVERWORLD(
sPicTable_Swinub,
@ -5475,6 +5557,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Piloswine,
.iconSprite = gMonIcon_Piloswine,
.iconPalIndex = 2,
SHADOW(-1, 3, SHADOW_SIZE_M)
FOOTPRINT(Piloswine)
OVERWORLD(
sPicTable_Piloswine,
@ -5545,6 +5628,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Mamoswine,
.iconSprite = gMonIcon_Mamoswine,
.iconPalIndex = 2,
SHADOW(7, 7, SHADOW_SIZE_L)
FOOTPRINT(Mamoswine)
OVERWORLD(
sPicTable_Mamoswine,
@ -5620,6 +5704,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Corsola,
.iconSprite = gMonIcon_Corsola,
.iconPalIndex = 0,
SHADOW(0, 1, SHADOW_SIZE_M)
FOOTPRINT(Corsola)
OVERWORLD(
sPicTable_Corsola,
@ -5683,6 +5768,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_CorsolaGalarian,
.iconSprite = gMonIcon_CorsolaGalarian,
.iconPalIndex = 0,
SHADOW(0, 2, SHADOW_SIZE_M)
FOOTPRINT(Corsola)
OVERWORLD(
sPicTable_CorsolaGalarian,
@ -5747,6 +5833,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Cursola,
.iconSprite = gMonIcon_Cursola,
.iconPalIndex = 0,
SHADOW(-3, 13, SHADOW_SIZE_S)
FOOTPRINT(Cursola)
OVERWORLD(
sPicTable_Cursola,
@ -5814,6 +5901,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Remoraid,
.iconSprite = gMonIcon_Remoraid,
.iconPalIndex = 0,
SHADOW(-1, 0, SHADOW_SIZE_S)
FOOTPRINT(Remoraid)
OVERWORLD(
sPicTable_Remoraid,
@ -5886,6 +5974,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Octillery,
.iconSprite = gMonIcon_Octillery,
.iconPalIndex = 0,
SHADOW(1, 4, SHADOW_SIZE_M)
FOOTPRINT(Octillery)
OVERWORLD(
sPicTable_Octillery,
@ -5948,6 +6037,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Delibird,
.iconSprite = gMonIcon_Delibird,
.iconPalIndex = 1,
SHADOW(0, 7, SHADOW_SIZE_M)
FOOTPRINT(Delibird)
OVERWORLD(
sPicTable_Delibird,
@ -6012,6 +6102,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Mantyke,
.iconSprite = gMonIcon_Mantyke,
.iconPalIndex = 0,
SHADOW(-1, 3, SHADOW_SIZE_S)
FOOTPRINT(Mantyke)
OVERWORLD(
sPicTable_Mantyke,
@ -6082,6 +6173,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Mantine,
.iconSprite = gMonIcon_Mantine,
.iconPalIndex = 2,
SHADOW(-1, 8, SHADOW_SIZE_M)
FOOTPRINT(Mantine)
OVERWORLD(
sPicTable_Mantine,
@ -6146,6 +6238,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Skarmory,
.iconSprite = gMonIcon_Skarmory,
.iconPalIndex = 0,
SHADOW(2, 9, SHADOW_SIZE_M)
FOOTPRINT(Skarmory)
OVERWORLD(
sPicTable_Skarmory,
@ -6209,6 +6302,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Houndour,
.iconSprite = gMonIcon_Houndour,
.iconPalIndex = 0,
SHADOW(0, 4, SHADOW_SIZE_M)
FOOTPRINT(Houndour)
OVERWORLD(
sPicTable_Houndour,
@ -6275,6 +6369,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Houndoom,
.iconSprite = gMonIcon_Houndoom,
.iconPalIndex = 0,
SHADOW(-5, 13, SHADOW_SIZE_L)
FOOTPRINT(Houndoom)
OVERWORLD(
sPicTable_Houndoom,
@ -6337,6 +6432,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_HoundoomMega,
.iconSprite = gMonIcon_HoundoomMega,
.iconPalIndex = 0,
SHADOW(-5, 13, SHADOW_SIZE_L)
FOOTPRINT(Houndoom)
.isMegaEvolution = TRUE,
.levelUpLearnset = sHoundoomLevelUpLearnset,
@ -6395,6 +6491,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Phanpy,
.iconSprite = gMonIcon_Phanpy,
.iconPalIndex = 0,
SHADOW(3, -2, SHADOW_SIZE_M)
FOOTPRINT(Phanpy)
OVERWORLD(
sPicTable_Phanpy,
@ -6462,6 +6559,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Donphan,
.iconSprite = gMonIcon_Donphan,
.iconPalIndex = 0,
SHADOW(7, 2, SHADOW_SIZE_L)
FOOTPRINT(Donphan)
OVERWORLD(
sPicTable_Donphan,
@ -6528,6 +6626,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Stantler,
.iconSprite = gMonIcon_Stantler,
.iconPalIndex = 2,
SHADOW(3, 13, SHADOW_SIZE_M)
FOOTPRINT(Stantler)
OVERWORLD(
sPicTable_Stantler,
@ -6592,6 +6691,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Wyrdeer,
.iconSprite = gMonIcon_Wyrdeer,
.iconPalIndex = 2,
SHADOW(-1, 13, SHADOW_SIZE_M)
FOOTPRINT(Wyrdeer)
OVERWORLD(
sPicTable_Wyrdeer,
@ -6659,6 +6759,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Smeargle,
.iconSprite = gMonIcon_Smeargle,
.iconPalIndex = 1,
SHADOW(6, 7, SHADOW_SIZE_S)
FOOTPRINT(Smeargle)
OVERWORLD(
sPicTable_Smeargle,
@ -6728,6 +6829,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Miltank,
.iconSprite = gMonIcon_Miltank,
.iconPalIndex = 0,
SHADOW(-3, 4, SHADOW_SIZE_M)
FOOTPRINT(Miltank)
OVERWORLD(
sPicTable_Miltank,
@ -6802,6 +6904,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Raikou,
.iconSprite = gMonIcon_Raikou,
.iconPalIndex = 2,
SHADOW(-4, 7, SHADOW_SIZE_L)
FOOTPRINT(Raikou)
OVERWORLD(
sPicTable_Raikou,
@ -6877,6 +6980,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Entei,
.iconSprite = gMonIcon_Entei,
.iconPalIndex = 2,
SHADOW(-1, 8, SHADOW_SIZE_L)
FOOTPRINT(Entei)
OVERWORLD(
sPicTable_Entei,
@ -6952,6 +7056,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Suicune,
.iconSprite = gMonIcon_Suicune,
.iconPalIndex = 2,
SHADOW(3, 10, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Suicune)
OVERWORLD(
sPicTable_Suicune,
@ -7016,6 +7121,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Larvitar,
.iconSprite = gMonIcon_Larvitar,
.iconPalIndex = 1,
SHADOW(0, 3, SHADOW_SIZE_S)
FOOTPRINT(Larvitar)
OVERWORLD(
sPicTable_Larvitar,
@ -7078,6 +7184,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Pupitar,
.iconSprite = gMonIcon_Pupitar,
.iconPalIndex = 2,
SHADOW(3, 3, SHADOW_SIZE_S)
FOOTPRINT(Pupitar)
OVERWORLD(
sPicTable_Pupitar,
@ -7146,6 +7253,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Tyranitar,
.iconSprite = gMonIcon_Tyranitar,
.iconPalIndex = 4,
SHADOW(-1, 11, SHADOW_SIZE_L)
FOOTPRINT(Tyranitar)
OVERWORLD(
sPicTable_Tyranitar,
@ -7209,6 +7317,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_TyranitarMega,
.iconSprite = gMonIcon_TyranitarMega,
.iconPalIndex = 1,
SHADOW(-1, 13, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Tyranitar)
.isMegaEvolution = TRUE,
.levelUpLearnset = sTyranitarLevelUpLearnset,
@ -7275,6 +7384,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Lugia,
.iconSprite = gMonIcon_Lugia,
.iconPalIndex = 0,
SHADOW(2, 17, SHADOW_SIZE_L)
FOOTPRINT(Lugia)
OVERWORLD(
sPicTable_Lugia,
@ -7349,6 +7459,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_HoOh,
.iconSprite = gMonIcon_HoOh,
.iconPalIndex = 1,
SHADOW(1, 17, SHADOW_SIZE_L)
FOOTPRINT(HoOh)
OVERWORLD(
sPicTable_HoOh,
@ -7423,6 +7534,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] =
.shinyPalette = gMonShinyPalette_Celebi,
.iconSprite = gMonIcon_Celebi,
.iconPalIndex = 1,
SHADOW(0, 14, SHADOW_SIZE_S)
FOOTPRINT(Celebi)
OVERWORLD(
sPicTable_Celebi,

File diff suppressed because it is too large Load diff

View file

@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Turtwig,
.iconSprite = gMonIcon_Turtwig,
.iconPalIndex = 1,
SHADOW(1, 2, SHADOW_SIZE_S)
FOOTPRINT(Turtwig)
OVERWORLD(
sPicTable_Turtwig,
@ -114,6 +115,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Grotle,
.iconSprite = gMonIcon_Grotle,
.iconPalIndex = 1,
SHADOW(1, 2, SHADOW_SIZE_L)
FOOTPRINT(Grotle)
OVERWORLD(
sPicTable_Grotle,
@ -183,6 +185,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Torterra,
.iconSprite = gMonIcon_Torterra,
.iconPalIndex = 1,
SHADOW(1, 10, SHADOW_SIZE_L)
FOOTPRINT(Torterra)
OVERWORLD(
sPicTable_Torterra,
@ -246,6 +249,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Chimchar,
.iconSprite = gMonIcon_Chimchar,
.iconPalIndex = 1,
SHADOW(4, 3, SHADOW_SIZE_S)
FOOTPRINT(Chimchar)
OVERWORLD(
sPicTable_Chimchar,
@ -310,6 +314,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Monferno,
.iconSprite = gMonIcon_Monferno,
.iconPalIndex = 0,
SHADOW(-7, 6, SHADOW_SIZE_S)
FOOTPRINT(Monferno)
OVERWORLD(
sPicTable_Monferno,
@ -379,6 +384,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Infernape,
.iconSprite = gMonIcon_Infernape,
.iconPalIndex = 0,
SHADOW(0, 9, SHADOW_SIZE_L)
FOOTPRINT(Infernape)
OVERWORLD(
sPicTable_Infernape,
@ -445,6 +451,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Piplup,
.iconSprite = gMonIcon_Piplup,
.iconPalIndex = 0,
SHADOW(0, -1, SHADOW_SIZE_S)
FOOTPRINT(Piplup)
OVERWORLD(
sPicTable_Piplup,
@ -511,6 +518,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Prinplup,
.iconSprite = gMonIcon_Prinplup,
.iconPalIndex = 0,
SHADOW(0, 7, SHADOW_SIZE_M)
FOOTPRINT(Prinplup)
OVERWORLD(
sPicTable_Prinplup,
@ -582,6 +590,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Empoleon,
.iconSprite = gMonIcon_Empoleon,
.iconPalIndex = 0,
SHADOW(2, 12, SHADOW_SIZE_M)
FOOTPRINT(Empoleon)
OVERWORLD(
sPicTable_Empoleon,
@ -652,6 +661,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Starly,
.iconSprite = gMonIcon_Starly,
.iconPalIndex = 0,
SHADOW(-2, 1, SHADOW_SIZE_S)
FOOTPRINT(Starly)
OVERWORLD(
sPicTable_Starly,
@ -718,6 +728,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Staravia,
.iconSprite = gMonIcon_Staravia,
.iconPalIndex = 0,
SHADOW(-1, 5, SHADOW_SIZE_S)
FOOTPRINT(Staravia)
OVERWORLD(
sPicTable_Staravia,
@ -789,6 +800,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Staraptor,
.iconSprite = gMonIcon_Staraptor,
.iconPalIndex = 0,
SHADOW(1, 10, SHADOW_SIZE_M)
FOOTPRINT(Staraptor)
OVERWORLD(
sPicTable_Staraptor,
@ -855,6 +867,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Bidoof,
.iconSprite = gMonIcon_Bidoof,
.iconPalIndex = 2,
SHADOW(1, 1, SHADOW_SIZE_M)
FOOTPRINT(Bidoof)
OVERWORLD(
sPicTable_Bidoof,
@ -919,6 +932,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Bibarel,
.iconSprite = gMonIcon_Bibarel,
.iconPalIndex = 2,
SHADOW(-5, 5, SHADOW_SIZE_M)
FOOTPRINT(Bibarel)
OVERWORLD(
sPicTable_Bibarel,
@ -986,6 +1000,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Kricketot,
.iconSprite = gMonIcon_Kricketot,
.iconPalIndex = 2,
SHADOW(-5, 2, SHADOW_SIZE_S)
FOOTPRINT(Kricketot)
OVERWORLD(
sPicTable_Kricketot,
@ -1053,6 +1068,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Kricketune,
.iconSprite = gMonIcon_Kricketune,
.iconPalIndex = 2,
SHADOW(-3, 6, SHADOW_SIZE_S)
FOOTPRINT(Kricketune)
OVERWORLD(
sPicTable_Kricketune,
@ -1119,6 +1135,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Shinx,
.iconSprite = gMonIcon_Shinx,
.iconPalIndex = 0,
SHADOW(-1, 1, SHADOW_SIZE_S)
FOOTPRINT(Shinx)
OVERWORLD(
sPicTable_Shinx,
@ -1185,6 +1202,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Luxio,
.iconSprite = gMonIcon_Luxio,
.iconPalIndex = 0,
SHADOW(-4, 2, SHADOW_SIZE_M)
FOOTPRINT(Luxio)
OVERWORLD(
sPicTable_Luxio,
@ -1256,6 +1274,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Luxray,
.iconSprite = gMonIcon_Luxray,
.iconPalIndex = 0,
SHADOW(-1, 10, SHADOW_SIZE_L)
FOOTPRINT(Luxray)
OVERWORLD(
sPicTable_Luxray,
@ -1318,6 +1337,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Cranidos,
.iconSprite = gMonIcon_Cranidos,
.iconPalIndex = 0,
SHADOW(4, 4, SHADOW_SIZE_S)
FOOTPRINT(Cranidos)
OVERWORLD(
sPicTable_Cranidos,
@ -1380,6 +1400,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Rampardos,
.iconSprite = gMonIcon_Rampardos,
.iconPalIndex = 0,
SHADOW(7, 11, SHADOW_SIZE_L)
FOOTPRINT(Rampardos)
OVERWORLD(
sPicTable_Rampardos,
@ -1442,6 +1463,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Shieldon,
.iconSprite = gMonIcon_Shieldon,
.iconPalIndex = 1,
SHADOW(3, -1, SHADOW_SIZE_S)
FOOTPRINT(Shieldon)
OVERWORLD(
sPicTable_Shieldon,
@ -1504,6 +1526,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Bastiodon,
.iconSprite = gMonIcon_Bastiodon,
.iconPalIndex = 1,
SHADOW(1, 6, SHADOW_SIZE_L)
FOOTPRINT(Bastiodon)
OVERWORLD(
sPicTable_Bastiodon,
@ -1567,6 +1590,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_BurmyPlantCloak,
.iconSprite = gMonIcon_BurmyPlantCloak,
.iconPalIndex = 1,
SHADOW(-1, 8, SHADOW_SIZE_S)
FOOTPRINT(Burmy)
OVERWORLD(
sPicTable_BurmyPlantCloak,
@ -1633,6 +1657,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_BurmySandyCloak,
.iconSprite = gMonIcon_BurmySandyCloak,
.iconPalIndex = 1,
SHADOW(-1, 9, SHADOW_SIZE_S)
FOOTPRINT(Burmy)
OVERWORLD(
sPicTable_BurmySandyCloak,
@ -1699,6 +1724,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_BurmyTrashCloak,
.iconSprite = gMonIcon_BurmyTrashCloak,
.iconPalIndex = 0,
SHADOW(-1, 13, SHADOW_SIZE_S)
FOOTPRINT(Burmy)
OVERWORLD(
sPicTable_BurmyTrashCloak,
@ -1766,6 +1792,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_WormadamPlantCloak,
.iconSprite = gMonIcon_WormadamPlantCloak,
.iconPalIndex = 1,
SHADOW(0, 9, SHADOW_SIZE_S)
FOOTPRINT(Wormadam)
OVERWORLD(
sPicTable_WormadamPlantCloak,
@ -1829,6 +1856,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_WormadamSandyCloak,
.iconSprite = gMonIcon_WormadamSandyCloak,
.iconPalIndex = 1,
SHADOW(-1, 9, SHADOW_SIZE_S)
FOOTPRINT(Wormadam)
OVERWORLD(
sPicTable_WormadamSandyCloak,
@ -1893,6 +1921,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_WormadamTrashCloak,
.iconSprite = gMonIcon_WormadamTrashCloak,
.iconPalIndex = 0,
SHADOW(0, 9, SHADOW_SIZE_S)
FOOTPRINT(Wormadam)
OVERWORLD(
sPicTable_WormadamTrashCloak,
@ -1953,6 +1982,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Mothim, \
.iconSprite = gMonIcon_Mothim, \
.iconPalIndex = 0, \
SHADOW(-1, 9, SHADOW_SIZE_S) \
FOOTPRINT(Mothim) \
OVERWORLD( \
sPicTable_Mothim, \
@ -2024,6 +2054,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPaletteFemale = gMonShinyPalette_CombeeF,
.iconSprite = gMonIcon_Combee,
.iconPalIndex = 0,
SHADOW(-4, 10, SHADOW_SIZE_S)
FOOTPRINT(Combee)
OVERWORLD(
sPicTable_Combee,
@ -2089,6 +2120,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Vespiquen,
.iconSprite = gMonIcon_Vespiquen,
.iconPalIndex = 0,
SHADOW(-1, 11, SHADOW_SIZE_L)
FOOTPRINT(Vespiquen)
OVERWORLD(
sPicTable_Vespiquen,
@ -2153,6 +2185,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Pachirisu,
.iconSprite = gMonIcon_Pachirisu,
.iconPalIndex = 0,
SHADOW(-2, 1, SHADOW_SIZE_S)
FOOTPRINT(Pachirisu)
OVERWORLD(
sPicTable_Pachirisu,
@ -2218,6 +2251,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Buizel,
.iconSprite = gMonIcon_Buizel,
.iconPalIndex = 0,
SHADOW(1, 4, SHADOW_SIZE_S)
FOOTPRINT(Buizel)
OVERWORLD(
sPicTable_Buizel,
@ -2282,6 +2316,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Floatzel,
.iconSprite = gMonIcon_Floatzel,
.iconPalIndex = 0,
SHADOW(-4, 10, SHADOW_SIZE_M)
FOOTPRINT(Floatzel)
OVERWORLD(
sPicTable_Floatzel,
@ -2345,6 +2380,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Cherubi,
.iconSprite = gMonIcon_Cherubi,
.iconPalIndex = 1,
SHADOW(-4, -2, SHADOW_SIZE_S)
FOOTPRINT(Cherubi)
OVERWORLD(
sPicTable_Cherubi,
@ -2408,6 +2444,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_CherrimOvercast,
.iconSprite = gMonIcon_CherrimOvercast,
.iconPalIndex = 0,
SHADOW(0, 6, SHADOW_SIZE_S)
FOOTPRINT(Cherrim)
OVERWORLD(
sPicTable_CherrimOvercast,
@ -2471,6 +2508,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_CherrimSunshine,
.iconSprite = gMonIcon_CherrimSunshine,
.iconPalIndex = 1,
SHADOW(1, 2, SHADOW_SIZE_S)
FOOTPRINT(Cherrim)
.levelUpLearnset = sCherrimLevelUpLearnset,
.teachableLearnset = sCherrimTeachableLearnset,
@ -2527,6 +2565,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_ShellosWestSea,
.iconSprite = gMonIcon_ShellosWestSea,
.iconPalIndex = 0,
SHADOW(1, 0, SHADOW_SIZE_S)
FOOTPRINT(Shellos)
OVERWORLD(
sPicTable_ShellosWestSea,
@ -2590,6 +2629,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_ShellosEastSea,
.iconSprite = gMonIcon_ShellosEastSea,
.iconPalIndex = 0,
SHADOW(2, -1, SHADOW_SIZE_S)
FOOTPRINT(Shellos)
OVERWORLD(
sPicTable_ShellosEastSea,
@ -2653,6 +2693,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_GastrodonWestSea,
.iconSprite = gMonIcon_GastrodonWestSea,
.iconPalIndex = 0,
SHADOW(1, 3, SHADOW_SIZE_M)
FOOTPRINT(Gastrodon)
OVERWORLD(
sPicTable_GastrodonWestSea,
@ -2714,6 +2755,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_GastrodonEastSea,
.iconSprite = gMonIcon_GastrodonEastSea,
.iconPalIndex = 0,
SHADOW(2, 4, SHADOW_SIZE_M)
FOOTPRINT(Gastrodon)
OVERWORLD(
sPicTable_GastrodonEastSea,
@ -2778,6 +2820,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Drifloon,
.iconSprite = gMonIcon_Drifloon,
.iconPalIndex = 2,
SHADOW(1, 9, SHADOW_SIZE_S)
FOOTPRINT(Drifloon)
OVERWORLD(
sPicTable_Drifloon,
@ -2841,6 +2884,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Drifblim,
.iconSprite = gMonIcon_Drifblim,
.iconPalIndex = 2,
SHADOW(0, 11, SHADOW_SIZE_M)
FOOTPRINT(Drifblim)
OVERWORLD(
sPicTable_Drifblim,
@ -2903,6 +2947,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Buneary,
.iconSprite = gMonIcon_Buneary,
.iconPalIndex = 2,
SHADOW(3, 5, SHADOW_SIZE_S)
FOOTPRINT(Buneary)
OVERWORLD(
sPicTable_Buneary,
@ -2965,6 +3010,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Lopunny,
.iconSprite = gMonIcon_Lopunny,
.iconPalIndex = 2,
SHADOW(0, 10, SHADOW_SIZE_S)
FOOTPRINT(Lopunny)
OVERWORLD(
sPicTable_Lopunny,
@ -3028,6 +3074,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_LopunnyMega,
.iconSprite = gMonIcon_LopunnyMega,
.iconPalIndex = 2,
SHADOW(0, 13, SHADOW_SIZE_S)
FOOTPRINT(Lopunny)
.isMegaEvolution = TRUE,
.levelUpLearnset = sLopunnyLevelUpLearnset,
@ -3086,6 +3133,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Glameow,
.iconSprite = gMonIcon_Glameow,
.iconPalIndex = 0,
SHADOW(-3, 6, SHADOW_SIZE_S)
FOOTPRINT(Glameow)
OVERWORLD(
sPicTable_Glameow,
@ -3148,6 +3196,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Purugly,
.iconSprite = gMonIcon_Purugly,
.iconPalIndex = 0,
SHADOW(4, 8, SHADOW_SIZE_L)
FOOTPRINT(Purugly)
OVERWORLD(
sPicTable_Purugly,
@ -3210,6 +3259,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Stunky,
.iconSprite = gMonIcon_Stunky,
.iconPalIndex = 2,
SHADOW(-1, 0, SHADOW_SIZE_M)
FOOTPRINT(Stunky)
OVERWORLD(
sPicTable_Stunky,
@ -3272,6 +3322,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Skuntank,
.iconSprite = gMonIcon_Skuntank,
.iconPalIndex = 2,
SHADOW(-3, 6, SHADOW_SIZE_L)
FOOTPRINT(Skuntank)
OVERWORLD(
sPicTable_Skuntank,
@ -3336,6 +3387,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Bronzor,
.iconSprite = gMonIcon_Bronzor,
.iconPalIndex = 0,
SHADOW(0, 6, SHADOW_SIZE_S)
FOOTPRINT(Bronzor)
OVERWORLD(
sPicTable_Bronzor,
@ -3400,6 +3452,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Bronzong,
.iconSprite = gMonIcon_Bronzong,
.iconPalIndex = 0,
SHADOW(5, 12, SHADOW_SIZE_M)
FOOTPRINT(Bronzong)
OVERWORLD(
sPicTable_Bronzong,
@ -3463,6 +3516,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Chatot,
.iconSprite = gMonIcon_Chatot,
.iconPalIndex = 0,
SHADOW(-1, 3, SHADOW_SIZE_S)
FOOTPRINT(Chatot)
OVERWORLD(
sPicTable_Chatot,
@ -3527,6 +3581,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Spiritomb,
.iconSprite = gMonIcon_Spiritomb,
.iconPalIndex = 5,
SHADOW(-1, 7, SHADOW_SIZE_L)
FOOTPRINT(Spiritomb)
OVERWORLD(
sPicTable_Spiritomb,
@ -3594,6 +3649,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Gible,
.iconSprite = gMonIcon_Gible,
.iconPalIndex = 0,
SHADOW(1, 5, SHADOW_SIZE_M)
FOOTPRINT(Gible)
OVERWORLD(
sPicTable_Gible,
@ -3660,6 +3716,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Gabite,
.iconSprite = gMonIcon_Gabite,
.iconPalIndex = 0,
SHADOW(3, 8, SHADOW_SIZE_M)
FOOTPRINT(Gabite)
OVERWORLD(
sPicTable_Gabite,
@ -3729,6 +3786,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Garchomp,
.iconSprite = gMonIcon_Garchomp,
.iconPalIndex = 0,
SHADOW(5, 11, SHADOW_SIZE_L)
FOOTPRINT(Garchomp)
OVERWORLD(
sPicTable_Garchomp,
@ -3792,6 +3850,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_GarchompMega,
.iconSprite = gMonIcon_GarchompMega,
.iconPalIndex = 0,
SHADOW(1, 12, SHADOW_SIZE_L)
FOOTPRINT(Garchomp)
.isMegaEvolution = TRUE,
.levelUpLearnset = sGarchompLevelUpLearnset,
@ -3850,6 +3909,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Riolu,
.iconSprite = gMonIcon_Riolu,
.iconPalIndex = 2,
SHADOW(3, 3, SHADOW_SIZE_S)
FOOTPRINT(Riolu)
OVERWORLD(
sPicTable_Riolu,
@ -3913,6 +3973,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Lucario,
.iconSprite = gMonIcon_Lucario,
.iconPalIndex = 2,
SHADOW(-1, 7, SHADOW_SIZE_M)
FOOTPRINT(Lucario)
OVERWORLD(
sPicTable_Lucario,
@ -3977,6 +4038,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_LucarioMega,
.iconSprite = gMonIcon_LucarioMega,
.iconPalIndex = 2,
SHADOW(-1, 11, SHADOW_SIZE_M)
FOOTPRINT(Lucario)
.isMegaEvolution = TRUE,
.levelUpLearnset = sLucarioLevelUpLearnset,
@ -4041,6 +4103,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.iconSpriteFemale = gMonIcon_HippopotasF,
.iconPalIndexFemale = 1,
#endif
SHADOW(2, -1, SHADOW_SIZE_L)
FOOTPRINT(Hippopotas)
OVERWORLD(
sPicTable_Hippopotas,
@ -4109,6 +4172,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.iconSpriteFemale = gMonIcon_HippowdonF,
.iconPalIndexFemale = 1,
#endif
NO_SHADOW
FOOTPRINT(Hippowdon)
OVERWORLD(
sPicTable_Hippowdon,
@ -4172,6 +4236,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Skorupi,
.iconSprite = gMonIcon_Skorupi,
.iconPalIndex = 0,
SHADOW(-2, 3, SHADOW_SIZE_S)
FOOTPRINT(Skorupi)
OVERWORLD(
sPicTable_Skorupi,
@ -4235,6 +4300,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Drapion,
.iconSprite = gMonIcon_Drapion,
.iconPalIndex = 2,
SHADOW(-3, 6, SHADOW_SIZE_L)
FOOTPRINT(Drapion)
OVERWORLD(
sPicTable_Drapion,
@ -4302,6 +4368,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Croagunk,
.iconSprite = gMonIcon_Croagunk,
.iconPalIndex = 0,
SHADOW(2, 4, SHADOW_SIZE_S)
FOOTPRINT(Croagunk)
OVERWORLD(
sPicTable_Croagunk,
@ -4369,6 +4436,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Toxicroak,
.iconSprite = gMonIcon_Toxicroak,
.iconPalIndex = 0,
SHADOW(3, 7, SHADOW_SIZE_M)
FOOTPRINT(Toxicroak)
OVERWORLD(
sPicTable_Toxicroak,
@ -4432,6 +4500,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Carnivine,
.iconSprite = gMonIcon_Carnivine,
.iconPalIndex = 1,
SHADOW(0, 9, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Carnivine)
OVERWORLD(
sPicTable_Carnivine,
@ -4499,6 +4568,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Finneon,
.iconSprite = gMonIcon_Finneon,
.iconPalIndex = 0,
SHADOW(0, 1, SHADOW_SIZE_S)
FOOTPRINT(Finneon)
OVERWORLD(
sPicTable_Finneon,
@ -4565,6 +4635,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Lumineon,
.iconSprite = gMonIcon_Lumineon,
.iconPalIndex = 0,
SHADOW(-1, 8, SHADOW_SIZE_M)
FOOTPRINT(Lumineon)
OVERWORLD(
sPicTable_Lumineon,
@ -4632,6 +4703,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Snover,
.iconSprite = gMonIcon_Snover,
.iconPalIndex = 1,
SHADOW(1, 4, SHADOW_SIZE_M)
FOOTPRINT(Snover)
OVERWORLD(
sPicTable_Snover,
@ -4698,6 +4770,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Abomasnow,
.iconSprite = gMonIcon_Abomasnow,
.iconPalIndex = 1,
SHADOW(0, 11, SHADOW_SIZE_L)
FOOTPRINT(Abomasnow)
OVERWORLD(
sPicTable_Abomasnow,
@ -4763,6 +4836,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_AbomasnowMega,
.iconSprite = gMonIcon_AbomasnowMega,
.iconPalIndex = 1,
SHADOW(0, 12, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Abomasnow)
.isMegaEvolution = TRUE,
.levelUpLearnset = sAbomasnowLevelUpLearnset,
@ -4823,6 +4897,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Rotom,
.iconSprite = gMonIcon_Rotom,
.iconPalIndex = 0,
SHADOW(0, 10, SHADOW_SIZE_S)
FOOTPRINT(Rotom)
OVERWORLD(
sPicTable_Rotom,
@ -4895,6 +4970,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_RotomHeat,
.iconSprite = gMonIcon_RotomHeat,
.iconPalIndex = 0,
SHADOW(-1, 7, SHADOW_SIZE_M)
FOOTPRINT(Rotom)
OVERWORLD(
sPicTable_RotomHeat,
@ -4960,6 +5036,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_RotomWash,
.iconSprite = gMonIcon_RotomWash,
.iconPalIndex = 0,
SHADOW(0, 10, SHADOW_SIZE_M)
FOOTPRINT(Rotom)
OVERWORLD(
sPicTable_RotomWash,
@ -5024,6 +5101,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_RotomFrost,
.iconSprite = gMonIcon_RotomFrost,
.iconPalIndex = 5,
SHADOW(0, 13, SHADOW_SIZE_M)
FOOTPRINT(Rotom)
OVERWORLD(
sPicTable_RotomFrost,
@ -5089,6 +5167,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_RotomFan,
.iconSprite = gMonIcon_RotomFan,
.iconPalIndex = 0,
SHADOW(4, 9, SHADOW_SIZE_S)
FOOTPRINT(Rotom)
OVERWORLD(
sPicTable_RotomFan,
@ -5153,6 +5232,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_RotomMow,
.iconSprite = gMonIcon_RotomMow,
.iconPalIndex = 0,
SHADOW(2, 14, SHADOW_SIZE_M)
FOOTPRINT(Rotom)
OVERWORLD(
sPicTable_RotomMow,
@ -5225,6 +5305,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Uxie,
.iconSprite = gMonIcon_Uxie,
.iconPalIndex = 0,
SHADOW(2, 11, SHADOW_SIZE_S)
FOOTPRINT(Uxie)
OVERWORLD(
sPicTable_Uxie,
@ -5298,6 +5379,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Mesprit,
.iconSprite = gMonIcon_Mesprit,
.iconPalIndex = 0,
SHADOW(0, 13, SHADOW_SIZE_S)
FOOTPRINT(Mesprit)
OVERWORLD(
sPicTable_Mesprit,
@ -5370,6 +5452,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Azelf,
.iconSprite = gMonIcon_Azelf,
.iconPalIndex = 0,
SHADOW(0, 17, SHADOW_SIZE_S)
FOOTPRINT(Azelf)
OVERWORLD(
sPicTable_Azelf,
@ -5442,6 +5525,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Dialga,
.iconSprite = gMonIcon_Dialga,
.iconPalIndex = 2,
SHADOW(4, 12, SHADOW_SIZE_L)
FOOTPRINT(Dialga)
OVERWORLD(
sPicTable_Dialga,
@ -5507,6 +5591,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_DialgaOrigin,
.iconSprite = gMonIcon_DialgaOrigin,
.iconPalIndex = 0,
SHADOW(2, 11, SHADOW_SIZE_L)
FOOTPRINT(Dialga)
OVERWORLD(
sPicTable_DialgaOrigin,
@ -5582,6 +5667,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Palkia,
.iconSprite = gMonIcon_Palkia,
.iconPalIndex = 2,
SHADOW(0, 10, SHADOW_SIZE_L)
FOOTPRINT(Palkia)
OVERWORLD(
sPicTable_Palkia,
@ -5647,6 +5733,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_PalkiaOrigin,
.iconSprite = gMonIcon_PalkiaOrigin,
.iconPalIndex = 2,
SHADOW(-3, 14, SHADOW_SIZE_L)
FOOTPRINT(Palkia)
OVERWORLD(
sPicTable_PalkiaOrigin,
@ -5720,6 +5807,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Heatran,
.iconSprite = gMonIcon_Heatran,
.iconPalIndex = 0,
SHADOW(2, 2, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Heatran)
OVERWORLD(
sPicTable_Heatran,
@ -5790,6 +5878,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Regigigas,
.iconSprite = gMonIcon_Regigigas,
.iconPalIndex = 0,
SHADOW(3, 10, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Regigigas)
OVERWORLD(
sPicTable_Regigigas,
@ -5862,6 +5951,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_GiratinaAltered,
.iconSprite = gMonIcon_GiratinaAltered,
.iconPalIndex = 0,
SHADOW(3, 11, SHADOW_SIZE_L)
FOOTPRINT(GiratinaAltered)
OVERWORLD(
sPicTable_GiratinaAltered,
@ -5928,6 +6018,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_GiratinaOrigin,
.iconSprite = gMonIcon_GiratinaOrigin,
.iconPalIndex = 0,
SHADOW(0, 18, SHADOW_SIZE_L)
FOOTPRINT(GiratinaOrigin)
OVERWORLD(
sPicTable_GiratinaOrigin,
@ -6002,6 +6093,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Cresselia,
.iconSprite = gMonIcon_Cresselia,
.iconPalIndex = 0,
SHADOW(-2, 12, SHADOW_SIZE_M)
FOOTPRINT(Cresselia)
OVERWORLD(
sPicTable_Cresselia,
@ -6073,6 +6165,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Phione,
.iconSprite = gMonIcon_Phione,
.iconPalIndex = 0,
SHADOW(0, 7, SHADOW_SIZE_S)
FOOTPRINT(Phione)
OVERWORLD(
sPicTable_Phione,
@ -6143,6 +6236,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Manaphy,
.iconSprite = gMonIcon_Manaphy,
.iconPalIndex = 0,
SHADOW(-5, 8, SHADOW_SIZE_S)
FOOTPRINT(Manaphy)
OVERWORLD(
sPicTable_Manaphy,
@ -6216,6 +6310,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_Darkrai,
.iconSprite = gMonIcon_Darkrai,
.iconPalIndex = 0,
SHADOW(4, 12, SHADOW_SIZE_M)
FOOTPRINT(Darkrai)
OVERWORLD(
sPicTable_Darkrai,
@ -6291,6 +6386,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_ShayminLand,
.iconSprite = gMonIcon_ShayminLand,
.iconPalIndex = 1,
SHADOW(1, -3, SHADOW_SIZE_S)
FOOTPRINT(Shaymin)
OVERWORLD(
sPicTable_ShayminLand,
@ -6363,6 +6459,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.shinyPalette = gMonShinyPalette_ShayminSky,
.iconSprite = gMonIcon_ShayminSky,
.iconPalIndex = 1,
SHADOW(3, 7, SHADOW_SIZE_M)
FOOTPRINT(Shaymin)
.isMythical = TRUE,
.isFrontierBanned = TRUE,
@ -6434,6 +6531,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] =
.palette = gMonPalette_Arceus ##typeName, \
.shinyPalette = gMonShinyPalette_Arceus ##typeName, \
ARCEUS_ICON(typeName, iconPal) \
SHADOW(-1, 15, SHADOW_SIZE_XL_BATTLE_ONLY) \
FOOTPRINT(Arceus) \
OVERWORLD( \
sPicTable_Arceus ##typeName, \

File diff suppressed because it is too large Load diff

View file

@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Chespin,
.iconSprite = gMonIcon_Chespin,
.iconPalIndex = 1,
SHADOW(-2, 3, SHADOW_SIZE_S)
FOOTPRINT(Chespin)
OVERWORLD(
sPicTable_Chespin,
@ -113,6 +114,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Quilladin,
.iconSprite = gMonIcon_Quilladin,
.iconPalIndex = 1,
SHADOW(2, 4, SHADOW_SIZE_M)
FOOTPRINT(Quilladin)
OVERWORLD(
sPicTable_Quilladin,
@ -174,6 +176,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Chesnaught,
.iconSprite = gMonIcon_Chesnaught,
.iconPalIndex = 1,
SHADOW(4, 10, SHADOW_SIZE_L)
FOOTPRINT(Chesnaught)
OVERWORLD(
sPicTable_Chesnaught,
@ -236,6 +239,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Fennekin,
.iconSprite = gMonIcon_Fennekin,
.iconPalIndex = 0,
SHADOW(0, 4, SHADOW_SIZE_S)
FOOTPRINT(Fennekin)
OVERWORLD(
sPicTable_Fennekin,
@ -298,6 +302,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Braixen,
.iconSprite = gMonIcon_Braixen,
.iconPalIndex = 0,
SHADOW(-2, 10, SHADOW_SIZE_M)
FOOTPRINT(Braixen)
OVERWORLD(
sPicTable_Braixen,
@ -359,6 +364,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Delphox,
.iconSprite = gMonIcon_Delphox,
.iconPalIndex = 0,
SHADOW(7, 14, SHADOW_SIZE_M)
FOOTPRINT(Delphox)
OVERWORLD(
sPicTable_Delphox,
@ -421,6 +427,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Froakie,
.iconSprite = gMonIcon_Froakie,
.iconPalIndex = 0,
SHADOW(2, 0, SHADOW_SIZE_S)
FOOTPRINT(Froakie)
OVERWORLD(
sPicTable_Froakie,
@ -483,6 +490,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Frogadier,
.iconSprite = gMonIcon_Frogadier,
.iconPalIndex = 0,
SHADOW(0, 5, SHADOW_SIZE_M)
FOOTPRINT(Frogadier)
OVERWORLD(
sPicTable_Frogadier,
@ -541,6 +549,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Greninja,
.iconSprite = gMonIcon_Greninja,
.iconPalIndex = 0,
SHADOW(4, 6, SHADOW_SIZE_L)
FOOTPRINT(Greninja)
OVERWORLD(
sPicTable_Greninja,
@ -599,6 +608,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Greninja,
.iconSprite = gMonIcon_Greninja,
.iconPalIndex = 0,
SHADOW(4, 6, SHADOW_SIZE_L)
FOOTPRINT(Greninja)
OVERWORLD(
sPicTable_Greninja,
@ -662,6 +672,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_GreninjaAsh,
.iconSprite = gMonIcon_GreninjaAsh,
.iconPalIndex = 0,
SHADOW(1, 10, SHADOW_SIZE_L)
FOOTPRINT(Greninja)
.levelUpLearnset = sGreninjaLevelUpLearnset,
.teachableLearnset = sGreninjaTeachableLearnset,
@ -718,6 +729,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Bunnelby,
.iconSprite = gMonIcon_Bunnelby,
.iconPalIndex = 2,
SHADOW(3, 9, SHADOW_SIZE_S)
FOOTPRINT(Bunnelby)
OVERWORLD(
sPicTable_Bunnelby,
@ -780,6 +792,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Diggersby,
.iconSprite = gMonIcon_Diggersby,
.iconPalIndex = 2,
SHADOW(8, 10, SHADOW_SIZE_M)
FOOTPRINT(Diggersby)
OVERWORLD(
sPicTable_Diggersby,
@ -842,6 +855,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Fletchling,
.iconSprite = gMonIcon_Fletchling,
.iconPalIndex = 2,
SHADOW(-2, 0, SHADOW_SIZE_S)
FOOTPRINT(Fletchling)
OVERWORLD(
sPicTable_Fletchling,
@ -905,6 +919,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Fletchinder,
.iconSprite = gMonIcon_Fletchinder,
.iconPalIndex = 2,
SHADOW(0, 12, SHADOW_SIZE_S)
FOOTPRINT(Fletchinder)
OVERWORLD(
sPicTable_Fletchinder,
@ -967,6 +982,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Talonflame,
.iconSprite = gMonIcon_Talonflame,
.iconPalIndex = 2,
SHADOW(-2, 17, SHADOW_SIZE_M)
FOOTPRINT(Talonflame)
OVERWORLD(
sPicTable_Talonflame,
@ -1025,6 +1041,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Scatterbug, \
.iconSprite = gMonIcon_Scatterbug, \
.iconPalIndex = 1, \
SHADOW(1, 1, SHADOW_SIZE_S) \
FOOTPRINT(Scatterbug) \
OVERWORLD( \
sPicTable_Scatterbug, \
@ -1106,6 +1123,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Spewpa, \
.iconSprite = gMonIcon_Spewpa, \
.iconPalIndex = 1, \
SHADOW(0, 2, SHADOW_SIZE_M) \
FOOTPRINT(Spewpa) \
OVERWORLD( \
sPicTable_Spewpa, \
@ -1187,6 +1205,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Vivillon ##form, \
.iconSprite = gMonIcon_Vivillon ##form, \
.iconPalIndex = iconPal, \
SHADOW(0, 20, SHADOW_SIZE_M) \
FOOTPRINT(Vivillon) \
OVERWORLD( \
sPicTable_Vivillon ##form, \
@ -1430,6 +1449,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Litleo,
.iconSprite = gMonIcon_Litleo,
.iconPalIndex = 2,
SHADOW(2, 3, SHADOW_SIZE_S)
FOOTPRINT(Litleo)
OVERWORLD(
sPicTable_Litleo,
@ -1498,6 +1518,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.iconSpriteFemale = gMonIcon_PyroarF,
.iconPalIndex = 2,
.iconPalIndexFemale = 2,
SHADOW(-2, 11, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Pyroar)
OVERWORLD(
sPicTable_Pyroar,
@ -1555,6 +1576,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Flabebe##Form##Flower, \
.iconSprite = gMonIcon_Flabebe##Form##Flower, \
.iconPalIndex = iconPal, \
SHADOW(0, 11, SHADOW_SIZE_S) \
FOOTPRINT(Flabebe) \
OVERWORLD( \
sPicTable_Flabebe##Form##Flower, \
@ -1642,6 +1664,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Floette ##form##Flower, \
.iconSprite = gMonIcon_Floette##form##Flower, \
.iconPalIndex = iconPal, \
SHADOW(-3, 12, SHADOW_SIZE_S) \
FOOTPRINT(Floette) \
OVERWORLD( \
sPicTable_Floette ##form##Flower, \
@ -1789,6 +1812,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Florges##Form##Flower, \
.iconSprite = gMonIcon_Florges##Form##Flower, \
.iconPalIndex = iconPal, \
SHADOW(-5, 15, SHADOW_SIZE_M) \
FOOTPRINT(Florges) \
OVERWORLD( \
sPicTable_Florges ##Form##Flower, \
@ -1896,6 +1920,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Skiddo,
.iconSprite = gMonIcon_Skiddo,
.iconPalIndex = 1,
SHADOW(2, 7, SHADOW_SIZE_M)
FOOTPRINT(Skiddo)
OVERWORLD(
sPicTable_Skiddo,
@ -1958,6 +1983,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Gogoat,
.iconSprite = gMonIcon_Gogoat,
.iconPalIndex = 1,
SHADOW(2, 9, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Gogoat)
OVERWORLD(
sPicTable_Gogoat,
@ -2021,6 +2047,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Pancham,
.iconSprite = gMonIcon_Pancham,
.iconPalIndex = 1,
SHADOW(-2, 2, SHADOW_SIZE_S)
FOOTPRINT(Pancham)
OVERWORLD(
sPicTable_Pancham,
@ -2084,6 +2111,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Pangoro,
.iconSprite = gMonIcon_Pangoro,
.iconPalIndex = 1,
SHADOW(-2, 13, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Pangoro)
OVERWORLD(
sPicTable_Pangoro,
@ -2143,6 +2171,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Furfrou##_form, \
.iconSprite = gMonIcon_Furfrou##_form, \
.iconPalIndex = _iconIdx, \
SHADOW(3, 10, SHADOW_SIZE_XL_BATTLE_ONLY) \
FOOTPRINT(Furfrou) \
OVERWORLD( \
sPicTable_Furfrou##_form, \
@ -2219,6 +2248,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Espurr,
.iconSprite = gMonIcon_Espurr,
.iconPalIndex = 2,
SHADOW(-1, 4, SHADOW_SIZE_S)
FOOTPRINT(Espurr)
OVERWORLD(
sPicTable_Espurr,
@ -2282,6 +2312,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_MeowsticMale,
.iconSprite = gMonIcon_MeowsticMale,
.iconPalIndex = 0,
SHADOW(-2, 11, SHADOW_SIZE_S)
FOOTPRINT(Meowstic)
OVERWORLD(
sPicTable_MeowsticMale,
@ -2343,6 +2374,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_MeowsticFemale,
.iconSprite = gMonIcon_MeowsticFemale,
.iconPalIndex = 0,
SHADOW(-2, 12, SHADOW_SIZE_S)
FOOTPRINT(Meowstic)
OVERWORLD(
sPicTable_MeowsticFemale,
@ -2407,6 +2439,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Honedge,
.iconSprite = gMonIcon_Honedge,
.iconPalIndex = 2,
SHADOW(-10, 11, SHADOW_SIZE_S)
FOOTPRINT(Honedge)
OVERWORLD(
sPicTable_Honedge,
@ -2470,6 +2503,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Doublade,
.iconSprite = gMonIcon_Doublade,
.iconPalIndex = 2,
SHADOW(8, 11, SHADOW_SIZE_M)
FOOTPRINT(Doublade)
OVERWORLD(
sPicTable_Doublade,
@ -2535,6 +2569,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_AegislashShield,
.iconSprite = gMonIcon_AegislashShield,
.iconPalIndex = 2,
SHADOW(0, 14, SHADOW_SIZE_M)
FOOTPRINT(Aegislash)
OVERWORLD(
sPicTable_AegislashShield,
@ -2604,6 +2639,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_AegislashBlade,
.iconSprite = gMonIcon_AegislashBlade,
.iconPalIndex = 2,
SHADOW(0, 14, SHADOW_SIZE_M)
FOOTPRINT(Aegislash)
.levelUpLearnset = sAegislashLevelUpLearnset,
.teachableLearnset = sAegislashTeachableLearnset,
@ -2661,6 +2697,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Spritzee,
.iconSprite = gMonIcon_Spritzee,
.iconPalIndex = 0,
SHADOW(-1, 13, SHADOW_SIZE_S)
FOOTPRINT(Spritzee)
OVERWORLD(
sPicTable_Spritzee,
@ -2724,6 +2761,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Aromatisse,
.iconSprite = gMonIcon_Aromatisse,
.iconPalIndex = 0,
SHADOW(0, 10, SHADOW_SIZE_M)
FOOTPRINT(Aromatisse)
OVERWORLD(
sPicTable_Aromatisse,
@ -2786,6 +2824,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Swirlix,
.iconSprite = gMonIcon_Swirlix,
.iconPalIndex = 1,
SHADOW(0, -1, SHADOW_SIZE_S)
FOOTPRINT(Swirlix)
OVERWORLD(
sPicTable_Swirlix,
@ -2849,6 +2888,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Slurpuff,
.iconSprite = gMonIcon_Slurpuff,
.iconPalIndex = 1,
SHADOW(1, 6, SHADOW_SIZE_M)
FOOTPRINT(Slurpuff)
OVERWORLD(
sPicTable_Slurpuff,
@ -2912,6 +2952,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Inkay,
.iconSprite = gMonIcon_Inkay,
.iconPalIndex = 0,
SHADOW(-1, 11, SHADOW_SIZE_S)
FOOTPRINT(Inkay)
OVERWORLD(
sPicTable_Inkay,
@ -2974,6 +3015,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Malamar,
.iconSprite = gMonIcon_Malamar,
.iconPalIndex = 2,
SHADOW(5, 14, SHADOW_SIZE_M)
FOOTPRINT(Malamar)
OVERWORLD(
sPicTable_Malamar,
@ -3036,6 +3078,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Binacle,
.iconSprite = gMonIcon_Binacle,
.iconPalIndex = 2,
SHADOW(-3, 5, SHADOW_SIZE_M)
FOOTPRINT(Binacle)
OVERWORLD(
sPicTable_Binacle,
@ -3099,6 +3142,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Barbaracle,
.iconSprite = gMonIcon_Barbaracle,
.iconPalIndex = 2,
SHADOW(4, 14, SHADOW_SIZE_L)
FOOTPRINT(Barbaracle)
OVERWORLD(
sPicTable_Barbaracle,
@ -3161,6 +3205,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Skrelp,
.iconSprite = gMonIcon_Skrelp,
.iconPalIndex = 2,
SHADOW(3, 5, SHADOW_SIZE_S)
FOOTPRINT(Skrelp)
OVERWORLD(
sPicTable_Skrelp,
@ -3223,6 +3268,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Dragalge,
.iconSprite = gMonIcon_Dragalge,
.iconPalIndex = 5,
SHADOW(-3, 14, SHADOW_SIZE_M)
FOOTPRINT(Dragalge)
OVERWORLD(
sPicTable_Dragalge,
@ -3286,6 +3332,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Clauncher,
.iconSprite = gMonIcon_Clauncher,
.iconPalIndex = 0,
SHADOW(4, -6, SHADOW_SIZE_M)
FOOTPRINT(Clauncher)
OVERWORLD(
sPicTable_Clauncher,
@ -3349,6 +3396,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Clawitzer,
.iconSprite = gMonIcon_Clawitzer,
.iconPalIndex = 0,
SHADOW(6, 1, SHADOW_SIZE_L)
FOOTPRINT(Clawitzer)
OVERWORLD(
sPicTable_Clawitzer,
@ -3411,6 +3459,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Helioptile,
.iconSprite = gMonIcon_Helioptile,
.iconPalIndex = 2,
SHADOW(-1, 1, SHADOW_SIZE_S)
FOOTPRINT(Helioptile)
OVERWORLD(
sPicTable_Helioptile,
@ -3474,6 +3523,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Heliolisk,
.iconSprite = gMonIcon_Heliolisk,
.iconPalIndex = 2,
SHADOW(-2, 10, SHADOW_SIZE_M)
FOOTPRINT(Heliolisk)
OVERWORLD(
sPicTable_Heliolisk,
@ -3536,6 +3586,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Tyrunt,
.iconSprite = gMonIcon_Tyrunt,
.iconPalIndex = 2,
SHADOW(3, 2, SHADOW_SIZE_M)
FOOTPRINT(Tyrunt)
OVERWORLD(
sPicTable_Tyrunt,
@ -3598,6 +3649,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Tyrantrum,
.iconSprite = gMonIcon_Tyrantrum,
.iconPalIndex = 0,
SHADOW(-2, 14, SHADOW_SIZE_L)
FOOTPRINT(Tyrantrum)
OVERWORLD(
sPicTable_Tyrantrum,
@ -3660,6 +3712,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Amaura,
.iconSprite = gMonIcon_Amaura,
.iconPalIndex = 0,
SHADOW(0, 8, SHADOW_SIZE_S)
FOOTPRINT(Amaura)
OVERWORLD(
sPicTable_Amaura,
@ -3722,6 +3775,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Aurorus,
.iconSprite = gMonIcon_Aurorus,
.iconPalIndex = 0,
SHADOW(-6, 14, SHADOW_SIZE_L)
FOOTPRINT(Aurorus)
OVERWORLD(
sPicTable_Aurorus,
@ -3789,6 +3843,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Hawlucha,
.iconSprite = gMonIcon_Hawlucha,
.iconPalIndex = 0,
SHADOW(3, 6, SHADOW_SIZE_S)
FOOTPRINT(Hawlucha)
OVERWORLD(
sPicTable_Hawlucha,
@ -3852,6 +3907,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Dedenne,
.iconSprite = gMonIcon_Dedenne,
.iconPalIndex = 0,
SHADOW(-2, 1, SHADOW_SIZE_S)
FOOTPRINT(Dedenne)
OVERWORLD(
sPicTable_Dedenne,
@ -3917,6 +3973,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Carbink,
.iconSprite = gMonIcon_Carbink,
.iconPalIndex = 2,
SHADOW(-1, 5, SHADOW_SIZE_S)
FOOTPRINT(Carbink)
OVERWORLD(
sPicTable_Carbink,
@ -3980,6 +4037,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Goomy,
.iconSprite = gMonIcon_Goomy,
.iconPalIndex = 5,
SHADOW(-1, -1, SHADOW_SIZE_S)
FOOTPRINT(Goomy)
OVERWORLD(
sPicTable_Goomy,
@ -4044,6 +4102,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Sliggoo,
.iconSprite = gMonIcon_Sliggoo,
.iconPalIndex = 5,
SHADOW(1, 6, SHADOW_SIZE_S)
FOOTPRINT(Sliggoo)
OVERWORLD(
sPicTable_Sliggoo,
@ -4107,6 +4166,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Goodra,
.iconSprite = gMonIcon_Goodra,
.iconPalIndex = 5,
SHADOW(-2, 14, SHADOW_SIZE_M)
FOOTPRINT(Goodra)
OVERWORLD(
sPicTable_Goodra,
@ -4170,6 +4230,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_SliggooHisuian,
.iconSprite = gMonIcon_SliggooHisuian,
.iconPalIndex = 2,
SHADOW(2, 6, SHADOW_SIZE_M)
FOOTPRINT(Sliggoo)
OVERWORLD(
sPicTable_SliggooHisuian,
@ -4234,6 +4295,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_GoodraHisuian,
.iconSprite = gMonIcon_GoodraHisuian,
.iconPalIndex = 2,
SHADOW(1, 12, SHADOW_SIZE_M)
FOOTPRINT(Goodra)
OVERWORLD(
sPicTable_GoodraHisuian,
@ -4301,6 +4363,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Klefki,
.iconSprite = gMonIcon_Klefki,
.iconPalIndex = 0,
SHADOW(-1, 12, SHADOW_SIZE_S)
FOOTPRINT(Klefki)
OVERWORLD(
sPicTable_Klefki,
@ -4365,6 +4428,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Phantump,
.iconSprite = gMonIcon_Phantump,
.iconPalIndex = 1,
SHADOW(-1, 5, SHADOW_SIZE_S)
FOOTPRINT(Phantump)
OVERWORLD(
sPicTable_Phantump,
@ -4428,6 +4492,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Trevenant,
.iconSprite = gMonIcon_Trevenant,
.iconPalIndex = 1,
SHADOW(-1, 13, SHADOW_SIZE_M)
FOOTPRINT(Trevenant)
OVERWORLD(
sPicTable_Trevenant,
@ -4490,6 +4555,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Pumpkaboo,
.iconSprite = gMonIcon_Pumpkaboo,
.iconPalIndex = 2,
SHADOW(0, 1, SHADOW_SIZE_S)
FOOTPRINT(Pumpkaboo)
OVERWORLD(
sPicTable_PumpkabooAverage,
@ -4553,6 +4619,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Pumpkaboo,
.iconSprite = gMonIcon_Pumpkaboo,
.iconPalIndex = 2,
SHADOW(-1, -1, SHADOW_SIZE_S)
FOOTPRINT(Pumpkaboo)
.levelUpLearnset = sPumpkabooLevelUpLearnset,
.teachableLearnset = sPumpkabooTeachableLearnset,
@ -4608,6 +4675,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Pumpkaboo,
.iconSprite = gMonIcon_Pumpkaboo,
.iconPalIndex = 2,
SHADOW(0, 2, SHADOW_SIZE_S)
FOOTPRINT(Pumpkaboo)
.levelUpLearnset = sPumpkabooLevelUpLearnset,
.teachableLearnset = sPumpkabooTeachableLearnset,
@ -4665,6 +4733,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Pumpkaboo,
.iconSprite = gMonIcon_Pumpkaboo,
.iconPalIndex = 2,
SHADOW(1, 4, SHADOW_SIZE_S)
FOOTPRINT(Pumpkaboo)
.levelUpLearnset = sPumpkabooLevelUpLearnset,
.teachableLearnset = sPumpkabooTeachableLearnset,
@ -4721,6 +4790,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Gourgeist,
.iconSprite = gMonIcon_Gourgeist,
.iconPalIndex = 2,
SHADOW(3, 10, SHADOW_SIZE_M)
FOOTPRINT(Gourgeist)
OVERWORLD(
sPicTable_GourgeistAverage,
@ -4782,6 +4852,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Gourgeist,
.iconSprite = gMonIcon_Gourgeist,
.iconPalIndex = 2,
SHADOW(4, 9, SHADOW_SIZE_S)
FOOTPRINT(Gourgeist)
.levelUpLearnset = sGourgeistLevelUpLearnset,
.teachableLearnset = sGourgeistTeachableLearnset,
@ -4835,6 +4906,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Gourgeist,
.iconSprite = gMonIcon_Gourgeist,
.iconPalIndex = 2,
SHADOW(4, 12, SHADOW_SIZE_M)
FOOTPRINT(Gourgeist)
.levelUpLearnset = sGourgeistLevelUpLearnset,
.teachableLearnset = sGourgeistTeachableLearnset,
@ -4890,6 +4962,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Gourgeist,
.iconSprite = gMonIcon_Gourgeist,
.iconPalIndex = 2,
SHADOW(4, 14, SHADOW_SIZE_M)
FOOTPRINT(Gourgeist)
.levelUpLearnset = sGourgeistLevelUpLearnset,
.teachableLearnset = sGourgeistTeachableLearnset,
@ -4951,6 +5024,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Bergmite,
.iconSprite = gMonIcon_Bergmite,
.iconPalIndex = 0,
SHADOW(1, -1, SHADOW_SIZE_S)
FOOTPRINT(Bergmite)
OVERWORLD(
sPicTable_Bergmite,
@ -5014,6 +5088,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Avalugg,
.iconSprite = gMonIcon_Avalugg,
.iconPalIndex = 0,
SHADOW(1, -1, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Avalugg)
OVERWORLD(
sPicTable_Avalugg,
@ -5075,6 +5150,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_AvaluggHisuian,
.iconSprite = gMonIcon_AvaluggHisuian,
.iconPalIndex = 5,
SHADOW(2, -2, SHADOW_SIZE_L)
FOOTPRINT(Avalugg)
OVERWORLD(
sPicTable_AvaluggHisuian,
@ -5145,6 +5221,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Noibat,
.iconSprite = gMonIcon_Noibat,
.iconPalIndex = 2,
SHADOW(2, 11, SHADOW_SIZE_L)
FOOTPRINT(Noibat)
OVERWORLD(
sPicTable_Noibat,
@ -5211,6 +5288,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Noivern,
.iconSprite = gMonIcon_Noivern,
.iconPalIndex = 2,
SHADOW(5, 10, SHADOW_SIZE_L)
FOOTPRINT(Noivern)
OVERWORLD(
sPicTable_Noivern,
@ -5269,6 +5347,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_XerneasNeutral,
.iconSprite = gMonIcon_XerneasNeutral,
.iconPalIndex = 0,
SHADOW(3, 14, SHADOW_SIZE_M)
FOOTPRINT(Xerneas)
OVERWORLD(
sPicTable_XerneasNeutral,
@ -5330,6 +5409,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_XerneasActive,
.iconSprite = gMonIcon_XerneasActive,
.iconPalIndex = 0,
SHADOW(3, 14, SHADOW_SIZE_M)
FOOTPRINT(Xerneas)
OVERWORLD(
sPicTable_XerneasActive,
@ -5398,6 +5478,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Yveltal,
.iconSprite = gMonIcon_Yveltal,
.iconPalIndex = 0,
SHADOW(0, 16, SHADOW_SIZE_L)
FOOTPRINT(Yveltal)
OVERWORLD(
sPicTable_Yveltal,
@ -5460,6 +5541,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Zygarde50,
.iconSprite = gMonIcon_Zygarde50,
.iconPalIndex = 1,
SHADOW(0, 13, SHADOW_SIZE_L)
FOOTPRINT(Zygarde)
OVERWORLD(
sPicTable_Zygarde50,
@ -5521,6 +5603,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Zygarde50,
.iconSprite = gMonIcon_Zygarde50,
.iconPalIndex = 1,
SHADOW(0, 13, SHADOW_SIZE_L)
FOOTPRINT(Zygarde)
OVERWORLD(
sPicTable_Zygarde50,
@ -5582,6 +5665,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Zygarde10,
.iconSprite = gMonIcon_Zygarde10,
.iconPalIndex = 1,
SHADOW(1, 11, SHADOW_SIZE_L)
FOOTPRINT(Zygarde)
.isLegendary = TRUE,
.isFrontierBanned = TRUE,
@ -5636,6 +5720,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Zygarde10,
.iconSprite = gMonIcon_Zygarde10,
.iconPalIndex = 1,
SHADOW(1, 11, SHADOW_SIZE_L)
FOOTPRINT(Zygarde)
.isLegendary = TRUE,
.isFrontierBanned = TRUE,
@ -5694,6 +5779,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_ZygardeComplete,
.iconSprite = gMonIcon_ZygardeComplete,
.iconPalIndex = 1,
SHADOW(-3, 13, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Zygarde)
.isLegendary = TRUE,
.isFrontierBanned = TRUE,
@ -5754,6 +5840,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Diancie,
.iconSprite = gMonIcon_Diancie,
.iconPalIndex = 1,
SHADOW(0, 13, SHADOW_SIZE_S)
FOOTPRINT(Diancie)
OVERWORLD(
sPicTable_Diancie,
@ -5821,6 +5908,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_DiancieMega,
.iconSprite = gMonIcon_DiancieMega,
.iconPalIndex = 0,
SHADOW(0, 12, SHADOW_SIZE_M)
FOOTPRINT(Diancie)
.isMythical = TRUE,
.isMegaEvolution = TRUE,
@ -5883,6 +5971,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_HoopaConfined,
.iconSprite = gMonIcon_HoopaConfined,
.iconPalIndex = 0,
SHADOW(0, 13, SHADOW_SIZE_S)
FOOTPRINT(Hoopa)
OVERWORLD(
sPicTable_HoopaConfined,
@ -5949,6 +6038,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_HoopaUnbound,
.iconSprite = gMonIcon_HoopaUnbound,
.iconPalIndex = 0,
SHADOW(1, 14, SHADOW_SIZE_L)
FOOTPRINT(Hoopa)
OVERWORLD(
sPicTable_HoopaUnbound,
@ -6016,6 +6106,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] =
.shinyPalette = gMonShinyPalette_Volcanion,
.iconSprite = gMonIcon_Volcanion,
.iconPalIndex = 0,
SHADOW(0, 12, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Volcanion)
OVERWORLD(
sPicTable_Volcanion,

View file

@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Rowlet,
.iconSprite = gMonIcon_Rowlet,
.iconPalIndex = 0,
SHADOW(-1, 1, SHADOW_SIZE_S)
FOOTPRINT(Rowlet)
OVERWORLD(
sPicTable_Rowlet,
@ -114,6 +115,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Dartrix,
.iconSprite = gMonIcon_Dartrix,
.iconPalIndex = 1,
SHADOW(0, 5, SHADOW_SIZE_S)
FOOTPRINT(Dartrix)
OVERWORLD(
sPicTable_Dartrix,
@ -176,6 +178,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Decidueye,
.iconSprite = gMonIcon_Decidueye,
.iconPalIndex = 1,
SHADOW(-1, 13, SHADOW_SIZE_S)
FOOTPRINT(Decidueye)
OVERWORLD(
sPicTable_Decidueye,
@ -238,6 +241,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_DecidueyeHisuian,
.iconSprite = gMonIcon_DecidueyeHisuian,
.iconPalIndex = 0,
SHADOW(-1, 14, SHADOW_SIZE_L)
FOOTPRINT(Decidueye)
OVERWORLD(
sPicTable_DecidueyeHisuian,
@ -303,6 +307,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Litten,
.iconSprite = gMonIcon_Litten,
.iconPalIndex = 0,
SHADOW(1, 1, SHADOW_SIZE_S)
FOOTPRINT(Litten)
OVERWORLD(
sPicTable_Litten,
@ -365,6 +370,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Torracat,
.iconSprite = gMonIcon_Torracat,
.iconPalIndex = 0,
SHADOW(5, 7, SHADOW_SIZE_M)
FOOTPRINT(Torracat)
OVERWORLD(
sPicTable_Torracat,
@ -426,6 +432,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Incineroar,
.iconSprite = gMonIcon_Incineroar,
.iconPalIndex = 0,
SHADOW(4, 14, SHADOW_SIZE_L)
FOOTPRINT(Incineroar)
OVERWORLD(
sPicTable_Incineroar,
@ -488,6 +495,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Popplio,
.iconSprite = gMonIcon_Popplio,
.iconPalIndex = 0,
SHADOW(0, 1, SHADOW_SIZE_S)
FOOTPRINT(Popplio)
OVERWORLD(
sPicTable_Popplio,
@ -550,6 +558,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Brionne,
.iconSprite = gMonIcon_Brionne,
.iconPalIndex = 0,
SHADOW(-5, 6, SHADOW_SIZE_M)
FOOTPRINT(Brionne)
OVERWORLD(
sPicTable_Brionne,
@ -611,6 +620,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Primarina,
.iconSprite = gMonIcon_Primarina,
.iconPalIndex = 0,
SHADOW(-6, 11, SHADOW_SIZE_L)
FOOTPRINT(Primarina)
OVERWORLD(
sPicTable_Primarina,
@ -674,6 +684,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Pikipek,
.iconSprite = gMonIcon_Pikipek,
.iconPalIndex = 2,
SHADOW(0, 3, SHADOW_SIZE_S)
FOOTPRINT(Pikipek)
OVERWORLD(
sPicTable_Pikipek,
@ -737,6 +748,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Trumbeak,
.iconSprite = gMonIcon_Trumbeak,
.iconPalIndex = 0,
SHADOW(1, 8, SHADOW_SIZE_S)
FOOTPRINT(Trumbeak)
OVERWORLD(
sPicTable_Trumbeak,
@ -799,6 +811,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Toucannon,
.iconSprite = gMonIcon_Toucannon,
.iconPalIndex = 0,
SHADOW(9, 12, SHADOW_SIZE_M)
FOOTPRINT(Toucannon)
OVERWORLD(
sPicTable_Toucannon,
@ -862,6 +875,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Yungoos,
.iconSprite = gMonIcon_Yungoos,
.iconPalIndex = 2,
SHADOW(-9, 1, SHADOW_SIZE_M)
FOOTPRINT(Yungoos)
OVERWORLD(
sPicTable_Yungoos,
@ -921,6 +935,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Gumshoos,
.iconSprite = gMonIcon_Gumshoos,
.iconPalIndex = 2,
SHADOW(-2, 8, SHADOW_SIZE_M)
FOOTPRINT(Gumshoos)
OVERWORLD(
sPicTable_Gumshoos,
@ -979,6 +994,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Gumshoos,
.iconSprite = gMonIcon_Gumshoos,
.iconPalIndex = 2,
SHADOW(-2, 8, SHADOW_SIZE_M)
FOOTPRINT(Gumshoos)
OVERWORLD(
sPicTable_Gumshoos,
@ -1044,6 +1060,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Grubbin,
.iconSprite = gMonIcon_Grubbin,
.iconPalIndex = 0,
SHADOW(0, -4, SHADOW_SIZE_M)
FOOTPRINT(Grubbin)
OVERWORLD(
sPicTable_Grubbin,
@ -1107,6 +1124,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Charjabug,
.iconSprite = gMonIcon_Charjabug,
.iconPalIndex = 1,
NO_SHADOW
FOOTPRINT(Charjabug)
OVERWORLD(
sPicTable_Charjabug,
@ -1167,6 +1185,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Vikavolt,
.iconSprite = gMonIcon_Vikavolt,
.iconPalIndex = 0,
SHADOW(-1, 16, SHADOW_SIZE_S)
FOOTPRINT(Vikavolt)
OVERWORLD(
sPicTable_Vikavolt,
@ -1225,6 +1244,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Vikavolt,
.iconSprite = gMonIcon_Vikavolt,
.iconPalIndex = 0,
SHADOW(-1, 16, SHADOW_SIZE_S)
FOOTPRINT(Vikavolt)
OVERWORLD(
sPicTable_Vikavolt,
@ -1291,6 +1311,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Crabrawler,
.iconSprite = gMonIcon_Crabrawler,
.iconPalIndex = 2,
SHADOW(7, 6, SHADOW_SIZE_M)
FOOTPRINT(Crabrawler)
OVERWORLD(
sPicTable_Crabrawler,
@ -1355,6 +1376,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Crabominable,
.iconSprite = gMonIcon_Crabominable,
.iconPalIndex = 2,
SHADOW(1, 14, SHADOW_SIZE_L)
FOOTPRINT(Crabominable)
OVERWORLD(
sPicTable_Crabominable,
@ -1418,6 +1440,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_OricorioBaile,
.iconSprite = gMonIcon_OricorioBaile,
.iconPalIndex = 0,
SHADOW(-4, 9, SHADOW_SIZE_S)
FOOTPRINT(Oricorio)
OVERWORLD(
sPicTable_OricorioBaile,
@ -1482,6 +1505,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_OricorioPomPom,
.iconSprite = gMonIcon_OricorioPomPom,
.iconPalIndex = 1,
SHADOW(5, 8, SHADOW_SIZE_S)
FOOTPRINT(Oricorio)
.levelUpLearnset = sOricorioLevelUpLearnset,
.teachableLearnset = sOricorioTeachableLearnset,
@ -1538,6 +1562,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_OricorioPau,
.iconSprite = gMonIcon_OricorioPau,
.iconPalIndex = 1,
SHADOW(-3, 11, SHADOW_SIZE_S)
FOOTPRINT(Oricorio)
.levelUpLearnset = sOricorioLevelUpLearnset,
.teachableLearnset = sOricorioTeachableLearnset,
@ -1594,6 +1619,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_OricorioSensu,
.iconSprite = gMonIcon_OricorioSensu,
.iconPalIndex = 0,
SHADOW(7, 10, SHADOW_SIZE_S)
FOOTPRINT(Oricorio)
.levelUpLearnset = sOricorioLevelUpLearnset,
.teachableLearnset = sOricorioTeachableLearnset,
@ -1653,6 +1679,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Cutiefly,
.iconSprite = gMonIcon_Cutiefly,
.iconPalIndex = 2,
SHADOW(0, 5, SHADOW_SIZE_S)
FOOTPRINT(Cutiefly)
OVERWORLD(
sPicTable_Cutiefly,
@ -1714,6 +1741,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Ribombee,
.iconSprite = gMonIcon_Ribombee,
.iconPalIndex = 2,
SHADOW(-1, 12, SHADOW_SIZE_S)
FOOTPRINT(Ribombee)
OVERWORLD(
sPicTable_Ribombee,
@ -1773,6 +1801,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Ribombee,
.iconSprite = gMonIcon_Ribombee,
.iconPalIndex = 2,
SHADOW(-1, 12, SHADOW_SIZE_S)
FOOTPRINT(Ribombee)
OVERWORLD(
sPicTable_Ribombee,
@ -1834,6 +1863,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Rockruff,
.iconSprite = gMonIcon_Rockruff,
.iconPalIndex = 2,
SHADOW(-2, 2, SHADOW_SIZE_S)
FOOTPRINT(Rockruff)
OVERWORLD(
sPicTable_Rockruff,
@ -1894,6 +1924,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Rockruff,
.iconSprite = gMonIcon_Rockruff,
.iconPalIndex = 2,
SHADOW(-2, 2, SHADOW_SIZE_S)
FOOTPRINT(Rockruff)
OVERWORLD(
sPicTable_Rockruff,
@ -1957,6 +1988,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_LycanrocMidday,
.iconSprite = gMonIcon_LycanrocMidday,
.iconPalIndex = 2,
SHADOW(5, 7, SHADOW_SIZE_L)
FOOTPRINT(Lycanroc)
OVERWORLD(
sPicTable_LycanrocMidday,
@ -2018,6 +2050,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_LycanrocMidnight,
.iconSprite = gMonIcon_LycanrocMidnight,
.iconPalIndex = 0,
SHADOW(5, 13, SHADOW_SIZE_L)
FOOTPRINT(Lycanroc)
OVERWORLD(
sPicTable_LycanrocMidnight,
@ -2079,6 +2112,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_LycanrocDusk,
.iconSprite = gMonIcon_LycanrocDusk,
.iconPalIndex = 0,
SHADOW(5, 7, SHADOW_SIZE_L)
FOOTPRINT(Lycanroc)
OVERWORLD(
sPicTable_LycanrocDusk,
@ -2143,6 +2177,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_WishiwashiSolo,
.iconSprite = gMonIcon_WishiwashiSolo,
.iconPalIndex = 2,
SHADOW(-1, 3, SHADOW_SIZE_S)
FOOTPRINT(Wishiwashi)
OVERWORLD(
sPicTable_WishiwashiSolo,
@ -2206,6 +2241,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_WishiwashiSchool,
.iconSprite = gMonIcon_WishiwashiSchool,
.iconPalIndex = 0,
SHADOW(-4, 7, SHADOW_SIZE_L)
FOOTPRINT(Wishiwashi)
.levelUpLearnset = sWishiwashiLevelUpLearnset,
.teachableLearnset = sWishiwashiTeachableLearnset,
@ -2264,6 +2300,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Mareanie,
.iconSprite = gMonIcon_Mareanie,
.iconPalIndex = 2,
SHADOW(0, -1, SHADOW_SIZE_M)
FOOTPRINT(Mareanie)
OVERWORLD(
sPicTable_Mareanie,
@ -2327,6 +2364,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Toxapex,
.iconSprite = gMonIcon_Toxapex,
.iconPalIndex = 0,
SHADOW(0, 6, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Toxapex)
OVERWORLD(
sPicTable_Toxapex,
@ -2390,6 +2428,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Mudbray,
.iconSprite = gMonIcon_Mudbray,
.iconPalIndex = 2,
SHADOW(2, 6, SHADOW_SIZE_M)
FOOTPRINT(Mudbray)
OVERWORLD(
sPicTable_Mudbray,
@ -2453,6 +2492,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Mudsdale,
.iconSprite = gMonIcon_Mudsdale,
.iconPalIndex = 0,
SHADOW(4, 13, SHADOW_SIZE_L)
FOOTPRINT(Mudsdale)
OVERWORLD(
sPicTable_Mudsdale,
@ -2516,6 +2556,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Dewpider,
.iconSprite = gMonIcon_Dewpider,
.iconPalIndex = 0,
SHADOW(1, 2, SHADOW_SIZE_S)
FOOTPRINT(Dewpider)
OVERWORLD(
sPicTable_Dewpider,
@ -2576,6 +2617,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Araquanid,
.iconSprite = gMonIcon_Araquanid,
.iconPalIndex = 2,
SHADOW(-6, 9, SHADOW_SIZE_M)
FOOTPRINT(Araquanid)
OVERWORLD(
sPicTable_Araquanid,
@ -2634,6 +2676,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Araquanid,
.iconSprite = gMonIcon_Araquanid,
.iconPalIndex = 2,
SHADOW(-6, 9, SHADOW_SIZE_S)
FOOTPRINT(Araquanid)
OVERWORLD(
sPicTable_Araquanid,
@ -2700,6 +2743,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Fomantis,
.iconSprite = gMonIcon_Fomantis,
.iconPalIndex = 1,
SHADOW(0, 3, SHADOW_SIZE_S)
FOOTPRINT(Fomantis)
OVERWORLD(
sPicTable_Fomantis,
@ -2760,6 +2804,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Lurantis,
.iconSprite = gMonIcon_Lurantis,
.iconPalIndex = 1,
SHADOW(-1, 12, SHADOW_SIZE_S)
FOOTPRINT(Lurantis)
OVERWORLD(
sPicTable_Lurantis,
@ -2818,6 +2863,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Lurantis,
.iconSprite = gMonIcon_Lurantis,
.iconPalIndex = 1,
SHADOW(-1, 12, SHADOW_SIZE_S)
FOOTPRINT(Lurantis)
OVERWORLD(
sPicTable_Lurantis,
@ -2885,6 +2931,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Morelull,
.iconSprite = gMonIcon_Morelull,
.iconPalIndex = 0,
SHADOW(-1, 4, SHADOW_SIZE_S)
FOOTPRINT(Morelull)
OVERWORLD(
sPicTable_Morelull,
@ -2949,6 +2996,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Shiinotic,
.iconSprite = gMonIcon_Shiinotic,
.iconPalIndex = 1,
SHADOW(0, 10, SHADOW_SIZE_S)
FOOTPRINT(Shiinotic)
OVERWORLD(
sPicTable_Shiinotic,
@ -3012,6 +3060,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Salandit,
.iconSprite = gMonIcon_Salandit,
.iconPalIndex = 2,
SHADOW(3, 1, SHADOW_SIZE_M)
FOOTPRINT(Salandit)
OVERWORLD(
sPicTable_Salandit,
@ -3072,6 +3121,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Salazzle,
.iconSprite = gMonIcon_Salazzle,
.iconPalIndex = 0,
SHADOW(-4, 9, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Salazzle)
OVERWORLD(
sPicTable_Salazzle,
@ -3130,6 +3180,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Salazzle,
.iconSprite = gMonIcon_Salazzle,
.iconPalIndex = 0,
SHADOW(-4, 9, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Salazzle)
OVERWORLD(
sPicTable_Salazzle,
@ -3195,6 +3246,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Stufful,
.iconSprite = gMonIcon_Stufful,
.iconPalIndex = 0,
SHADOW(0, 3, SHADOW_SIZE_M)
FOOTPRINT(Stufful)
OVERWORLD(
sPicTable_Stufful,
@ -3257,6 +3309,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Bewear,
.iconSprite = gMonIcon_Bewear,
.iconPalIndex = 0,
SHADOW(-1, 13, SHADOW_SIZE_M)
FOOTPRINT(Bewear)
OVERWORLD(
sPicTable_Bewear,
@ -3320,6 +3373,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Bounsweet,
.iconSprite = gMonIcon_Bounsweet,
.iconPalIndex = 1,
SHADOW(-2, -3, SHADOW_SIZE_S)
FOOTPRINT(Bounsweet)
OVERWORLD(
sPicTable_Bounsweet,
@ -3384,6 +3438,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Steenee,
.iconSprite = gMonIcon_Steenee,
.iconPalIndex = 1,
SHADOW(-2, 7, SHADOW_SIZE_S)
FOOTPRINT(Steenee)
OVERWORLD(
sPicTable_Steenee,
@ -3447,6 +3502,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Tsareena,
.iconSprite = gMonIcon_Tsareena,
.iconPalIndex = 1,
SHADOW(1, 13, SHADOW_SIZE_M)
FOOTPRINT(Tsareena)
OVERWORLD(
sPicTable_Tsareena,
@ -3512,6 +3568,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Comfey,
.iconSprite = gMonIcon_Comfey,
.iconPalIndex = 1,
SHADOW(0, 10, SHADOW_SIZE_M)
FOOTPRINT(Comfey)
OVERWORLD(
sPicTable_Comfey,
@ -3575,6 +3632,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Oranguru,
.iconSprite = gMonIcon_Oranguru,
.iconPalIndex = 0,
SHADOW(-2, 6, SHADOW_SIZE_M)
FOOTPRINT(Oranguru)
OVERWORLD(
sPicTable_Oranguru,
@ -3638,6 +3696,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Passimian,
.iconSprite = gMonIcon_Passimian,
.iconPalIndex = 1,
SHADOW(-4, 12, SHADOW_SIZE_L)
FOOTPRINT(Passimian)
OVERWORLD(
sPicTable_Passimian,
@ -3701,6 +3760,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Wimpod,
.iconSprite = gMonIcon_Wimpod,
.iconPalIndex = 2,
SHADOW(-4, -3, SHADOW_SIZE_S)
FOOTPRINT(Wimpod)
OVERWORLD(
sPicTable_Wimpod,
@ -3763,6 +3823,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Golisopod,
.iconSprite = gMonIcon_Golisopod,
.iconPalIndex = 2,
SHADOW(2, 13, SHADOW_SIZE_L)
FOOTPRINT(Golisopod)
OVERWORLD(
sPicTable_Golisopod,
@ -3826,6 +3887,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Sandygast,
.iconSprite = gMonIcon_Sandygast,
.iconPalIndex = 1,
NO_SHADOW
FOOTPRINT(Sandygast)
OVERWORLD(
sPicTable_Sandygast,
@ -3889,6 +3951,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Palossand,
.iconSprite = gMonIcon_Palossand,
.iconPalIndex = 2,
NO_SHADOW
FOOTPRINT(Palossand)
OVERWORLD(
sPicTable_Palossand,
@ -3951,6 +4014,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Pyukumuku,
.iconSprite = gMonIcon_Pyukumuku,
.iconPalIndex = 0,
SHADOW(-3, -3, SHADOW_SIZE_S)
FOOTPRINT(Pyukumuku)
OVERWORLD(
sPicTable_Pyukumuku,
@ -4014,6 +4078,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_TypeNull,
.iconSprite = gMonIcon_TypeNull,
.iconPalIndex = 0,
SHADOW(1, 11, SHADOW_SIZE_L)
FOOTPRINT(Type_Null)
OVERWORLD(
sPicTable_TypeNull,
@ -4075,6 +4140,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Silvally##_palette, \
.iconSprite = gMonIcon_Silvally, \
.iconPalIndex = 0, \
SHADOW(1, 13, SHADOW_SIZE_L) \
FOOTPRINT(Silvally) \
OVERWORLD( \
sPicTable_Silvally, \
@ -4166,6 +4232,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_MiniorMeteor, \
.iconSprite = gMonIcon_MiniorMeteor, \
.iconPalIndex = 0, \
SHADOW(0, 14, SHADOW_SIZE_S) \
OVERWORLD( \
sPicTable_MiniorMeteor, \
SIZE_32x32, \
@ -4202,6 +4269,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_MiniorCore, \
.iconSprite = gMonIcon_MiniorCore##Form, \
.iconPalIndex = iconPal, \
SHADOW(-2, 12, SHADOW_SIZE_S) \
.formChangeTable = sMinior ##Form##FormChangeTable, \
MINIOR_MISC_INFO(color), \
}
@ -4270,6 +4338,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Komala,
.iconSprite = gMonIcon_Komala,
.iconPalIndex = 2,
SHADOW(-4, 0, SHADOW_SIZE_S)
FOOTPRINT(Komala)
OVERWORLD(
sPicTable_Komala,
@ -4334,6 +4403,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Turtonator,
.iconSprite = gMonIcon_Turtonator,
.iconPalIndex = 0,
SHADOW(-3, 12, SHADOW_SIZE_L)
FOOTPRINT(Turtonator)
OVERWORLD(
sPicTable_Turtonator,
@ -4394,6 +4464,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Togedemaru,
.iconSprite = gMonIcon_Togedemaru,
.iconPalIndex = 2,
SHADOW(-1, 4, SHADOW_SIZE_S)
FOOTPRINT(Togedemaru)
OVERWORLD(
sPicTable_Togedemaru,
@ -4453,6 +4524,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Togedemaru,
.iconSprite = gMonIcon_Togedemaru,
.iconPalIndex = 2,
SHADOW(-1, 4, SHADOW_SIZE_S)
FOOTPRINT(Togedemaru)
OVERWORLD(
sPicTable_Togedemaru,
@ -4516,6 +4588,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_MimikyuDisguised,
.iconSprite = gMonIcon_MimikyuDisguised,
.iconPalIndex = 1,
SHADOW(-3, 1, SHADOW_SIZE_S)
FOOTPRINT(Mimikyu)
OVERWORLD(
sPicTable_MimikyuDisguised,
@ -4576,6 +4649,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_MimikyuBusted,
.iconSprite = gMonIcon_MimikyuBusted,
.iconPalIndex = 1,
SHADOW(-3, 1, SHADOW_SIZE_S)
FOOTPRINT(Mimikyu)
.levelUpLearnset = sMimikyuLevelUpLearnset,
.teachableLearnset = sMimikyuTeachableLearnset,
@ -4628,6 +4702,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_MimikyuDisguised,
.iconSprite = gMonIcon_MimikyuDisguised,
.iconPalIndex = 1,
SHADOW(-3, 1, SHADOW_SIZE_S)
FOOTPRINT(Mimikyu)
.isTotem = TRUE,
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
@ -4682,6 +4757,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_MimikyuBusted,
.iconSprite = gMonIcon_MimikyuBusted,
.iconPalIndex = 1,
SHADOW(-3, 1, SHADOW_SIZE_S)
FOOTPRINT(Mimikyu)
.isTotem = TRUE,
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT,
@ -4742,6 +4818,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Bruxish,
.iconSprite = gMonIcon_Bruxish,
.iconPalIndex = 0,
SHADOW(0, -1, SHADOW_SIZE_M)
FOOTPRINT(Bruxish)
OVERWORLD(
sPicTable_Bruxish,
@ -4806,6 +4883,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Drampa,
.iconSprite = gMonIcon_Drampa,
.iconPalIndex = 0,
SHADOW(5, 13, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Drampa)
OVERWORLD(
sPicTable_Drampa,
@ -4871,6 +4949,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Dhelmise,
.iconSprite = gMonIcon_Dhelmise,
.iconPalIndex = 1,
SHADOW(-1, 12, SHADOW_SIZE_M)
FOOTPRINT(Dhelmise)
OVERWORLD(
sPicTable_Dhelmise,
@ -4934,6 +5013,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_JangmoO,
.iconSprite = gMonIcon_JangmoO,
.iconPalIndex = 2,
SHADOW(0, 5, SHADOW_SIZE_S)
FOOTPRINT(JangmoO)
OVERWORLD(
sPicTable_JangmoO,
@ -4997,6 +5077,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_HakamoO,
.iconSprite = gMonIcon_HakamoO,
.iconPalIndex = 2,
SHADOW(-2, 12, SHADOW_SIZE_M)
FOOTPRINT(HakamoO)
OVERWORLD(
sPicTable_HakamoO,
@ -5056,6 +5137,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_KommoO,
.iconSprite = gMonIcon_KommoO,
.iconPalIndex = 2,
SHADOW(0, 13, SHADOW_SIZE_L)
FOOTPRINT(KommoO)
OVERWORLD(
sPicTable_KommoO,
@ -5114,6 +5196,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_KommoO,
.iconSprite = gMonIcon_KommoO,
.iconPalIndex = 2,
SHADOW(0, 13, SHADOW_SIZE_L)
FOOTPRINT(KommoO)
OVERWORLD(
sPicTable_KommoO,
@ -5180,6 +5263,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_TapuKoko,
.iconSprite = gMonIcon_TapuKoko,
.iconPalIndex = 0,
SHADOW(-1, 19, SHADOW_SIZE_M)
FOOTPRINT(TapuKoko)
OVERWORLD(
sPicTable_TapuKoko,
@ -5245,6 +5329,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_TapuLele,
.iconSprite = gMonIcon_TapuLele,
.iconPalIndex = 0,
SHADOW(0, 13, SHADOW_SIZE_S)
FOOTPRINT(TapuLele)
OVERWORLD(
sPicTable_TapuLele,
@ -5310,6 +5395,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_TapuBulu,
.iconSprite = gMonIcon_TapuBulu,
.iconPalIndex = 2,
SHADOW(4, 16, SHADOW_SIZE_M)
FOOTPRINT(TapuBulu)
OVERWORLD(
sPicTable_TapuBulu,
@ -5376,6 +5462,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_TapuFini,
.iconSprite = gMonIcon_TapuFini,
.iconPalIndex = 0,
SHADOW(1, 15, SHADOW_SIZE_M)
FOOTPRINT(TapuFini)
OVERWORLD(
sPicTable_TapuFini,
@ -5441,6 +5528,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Cosmog,
.iconSprite = gMonIcon_Cosmog,
.iconPalIndex = 2,
SHADOW(0, 8, SHADOW_SIZE_S)
FOOTPRINT(Cosmog)
OVERWORLD(
sPicTable_Cosmog,
@ -5508,6 +5596,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Cosmoem,
.iconSprite = gMonIcon_Cosmoem,
.iconPalIndex = 0,
SHADOW(0, 5, SHADOW_SIZE_M)
FOOTPRINT(Cosmoem)
OVERWORLD(
sPicTable_Cosmoem,
@ -5574,6 +5663,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Solgaleo,
.iconSprite = gMonIcon_Solgaleo,
.iconPalIndex = 0,
SHADOW(-1, 11, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Solgaleo)
OVERWORLD(
sPicTable_Solgaleo,
@ -5638,6 +5728,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Lunala,
.iconSprite = gMonIcon_Lunala,
.iconPalIndex = 2,
SHADOW(4, 17, SHADOW_SIZE_L)
FOOTPRINT(Lunala)
OVERWORLD(
sPicTable_Lunala,
@ -5704,6 +5795,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Nihilego,
.iconSprite = gMonIcon_Nihilego,
.iconPalIndex = 0,
SHADOW(-2, 14, SHADOW_SIZE_S)
FOOTPRINT(Nihilego)
OVERWORLD(
sPicTable_Nihilego,
@ -5769,6 +5861,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Buzzwole,
.iconSprite = gMonIcon_Buzzwole,
.iconPalIndex = 0,
SHADOW(-2, 12, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Buzzwole)
OVERWORLD(
sPicTable_Buzzwole,
@ -5833,6 +5926,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Pheromosa,
.iconSprite = gMonIcon_Pheromosa,
.iconPalIndex = 2,
SHADOW(0, 13, SHADOW_SIZE_S)
FOOTPRINT(Pheromosa)
OVERWORLD(
sPicTable_Pheromosa,
@ -5897,6 +5991,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Xurkitree,
.iconSprite = gMonIcon_Xurkitree,
.iconPalIndex = 0,
SHADOW(0, 13, SHADOW_SIZE_L)
FOOTPRINT(Xurkitree)
OVERWORLD(
sPicTable_Xurkitree,
@ -5963,6 +6058,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Celesteela,
.iconSprite = gMonIcon_Celesteela,
.iconPalIndex = 0,
SHADOW(-1, 13, SHADOW_SIZE_M)
FOOTPRINT(Celesteela)
OVERWORLD(
sPicTable_Celesteela,
@ -6028,6 +6124,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Kartana,
.iconSprite = gMonIcon_Kartana,
.iconPalIndex = 0,
SHADOW(2, 14, SHADOW_SIZE_M)
FOOTPRINT(Kartana)
OVERWORLD(
sPicTable_Kartana,
@ -6092,6 +6189,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Guzzlord,
.iconSprite = gMonIcon_Guzzlord,
.iconPalIndex = 0,
SHADOW(4, 10, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Guzzlord)
OVERWORLD(
sPicTable_Guzzlord,
@ -6159,6 +6257,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Necrozma,
.iconSprite = gMonIcon_Necrozma,
.iconPalIndex = 0,
SHADOW(-1, 15, SHADOW_SIZE_M)
FOOTPRINT(Necrozma)
OVERWORLD(
sPicTable_Necrozma,
@ -6225,6 +6324,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_NecrozmaDuskMane,
.iconSprite = gMonIcon_NecrozmaDuskMane,
.iconPalIndex = 0,
SHADOW(-3, 11, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Necrozma)
OVERWORLD(
sPicTable_NecrozmaDuskMane,
@ -6293,6 +6393,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_NecrozmaDawnWings,
.iconSprite = gMonIcon_NecrozmaDawnWings,
.iconPalIndex = 0,
SHADOW(3, 17, SHADOW_SIZE_L)
FOOTPRINT(Necrozma)
OVERWORLD(
sPicTable_NecrozmaDawnWings,
@ -6364,6 +6465,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_NecrozmaUltra,
.iconSprite = gMonIcon_NecrozmaUltra,
.iconPalIndex = 2,
SHADOW(-1, 16, SHADOW_SIZE_L)
FOOTPRINT(Necrozma)
.isLegendary = TRUE,
.isUltraBurst = TRUE,
@ -6426,6 +6528,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Magearna,
.iconSprite = gMonIcon_Magearna,
.iconPalIndex = 0,
SHADOW(-2, 14, SHADOW_SIZE_M)
FOOTPRINT(Magearna)
OVERWORLD(
sPicTable_Magearna,
@ -6489,6 +6592,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_MagearnaOriginalColor,
.iconSprite = gMonIcon_MagearnaOriginalColor,
.iconPalIndex = 0,
SHADOW(-2, 14, SHADOW_SIZE_M)
FOOTPRINT(Magearna)
.isMythical = TRUE,
.isFrontierBanned = TRUE,
@ -6549,6 +6653,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Marshadow,
.iconSprite = gMonIcon_Marshadow,
.iconPalIndex = 0,
SHADOW(0, 5, SHADOW_SIZE_S)
FOOTPRINT(Marshadow)
OVERWORLD(
sPicTable_Marshadow,
@ -6614,6 +6719,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Poipole,
.iconSprite = gMonIcon_Poipole,
.iconPalIndex = 0,
SHADOW(-1, 12, SHADOW_SIZE_S)
FOOTPRINT(Poipole)
OVERWORLD(
sPicTable_Poipole,
@ -6677,6 +6783,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Naganadel,
.iconSprite = gMonIcon_Naganadel,
.iconPalIndex = 0,
SHADOW(7, 17, SHADOW_SIZE_M)
FOOTPRINT(Naganadel)
OVERWORLD(
sPicTable_Naganadel,
@ -6741,6 +6848,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Stakataka,
.iconSprite = gMonIcon_Stakataka,
.iconPalIndex = 0,
SHADOW(2, 15, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Stakataka)
OVERWORLD(
sPicTable_Stakataka,
@ -6805,6 +6913,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Blacephalon,
.iconSprite = gMonIcon_Blacephalon,
.iconPalIndex = 0,
SHADOW(0, 13, SHADOW_SIZE_M)
FOOTPRINT(Blacephalon)
OVERWORLD(
sPicTable_Blacephalon,
@ -6868,6 +6977,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Zeraora,
.iconSprite = gMonIcon_Zeraora,
.iconPalIndex = 0,
SHADOW(0, 9, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Zeraora)
OVERWORLD(
sPicTable_Zeraora,
@ -6932,6 +7042,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Meltan,
.iconSprite = gMonIcon_Meltan,
.iconPalIndex = 2,
SHADOW(-1, 2, SHADOW_SIZE_S)
FOOTPRINT(Meltan)
OVERWORLD(
sPicTable_Meltan,
@ -6994,6 +7105,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_Melmetal,
.iconSprite = gMonIcon_Melmetal,
.iconPalIndex = 2,
SHADOW(3, 10, SHADOW_SIZE_L)
FOOTPRINT(Melmetal)
OVERWORLD(
sPicTable_Melmetal,
@ -7060,6 +7172,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] =
.shinyPalette = gMonShinyPalette_MelmetalGigantamax,
.iconSprite = gMonIcon_MelmetalGigantamax,
.iconPalIndex = 0,
SHADOW(2, 13, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Melmetal)
.isMythical = TRUE,
.isGigantamax = TRUE,

View file

@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Grookey,
.iconSprite = gMonIcon_Grookey,
.iconPalIndex = 1,
SHADOW(1, 1, SHADOW_SIZE_S)
FOOTPRINT(Grookey)
OVERWORLD(
sPicTable_Grookey,
@ -112,6 +113,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Thwackey,
.iconSprite = gMonIcon_Thwackey,
.iconPalIndex = 1,
SHADOW(5, 6, SHADOW_SIZE_M)
FOOTPRINT(Thwackey)
OVERWORLD(
sPicTable_Thwackey,
@ -172,6 +174,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Rillaboom,
.iconSprite = gMonIcon_Rillaboom,
.iconPalIndex = 1,
SHADOW(2, 8, SHADOW_SIZE_L)
FOOTPRINT(Rillaboom)
OVERWORLD(
sPicTable_Rillaboom,
@ -234,6 +237,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_RillaboomGigantamax,
.iconSprite = gMonIcon_RillaboomGigantamax,
.iconPalIndex = 1,
SHADOW(0, 8, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Rillaboom)
.isGigantamax = TRUE,
.levelUpLearnset = sRillaboomLevelUpLearnset,
@ -292,6 +296,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Scorbunny,
.iconSprite = gMonIcon_Scorbunny,
.iconPalIndex = 0,
SHADOW(-1, 6, SHADOW_SIZE_S)
FOOTPRINT(Scorbunny)
OVERWORLD(
sPicTable_Scorbunny,
@ -353,6 +358,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Raboot,
.iconSprite = gMonIcon_Raboot,
.iconPalIndex = 0,
SHADOW(-4, 5, SHADOW_SIZE_S)
FOOTPRINT(Raboot)
OVERWORLD(
sPicTable_Raboot,
@ -414,6 +420,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Cinderace,
.iconSprite = gMonIcon_Cinderace,
.iconPalIndex = 0,
SHADOW(0, 14, SHADOW_SIZE_M)
FOOTPRINT(Cinderace)
OVERWORLD(
sPicTable_Cinderace,
@ -477,6 +484,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_CinderaceGigantamax,
.iconSprite = gMonIcon_CinderaceGigantamax,
.iconPalIndex = 0,
SHADOW(-3, 13, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Cinderace)
.isGigantamax = TRUE,
.levelUpLearnset = sCinderaceLevelUpLearnset,
@ -536,6 +544,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Sobble,
.iconSprite = gMonIcon_Sobble,
.iconPalIndex = 2,
SHADOW(-3, 3, SHADOW_SIZE_S)
FOOTPRINT(Sobble)
OVERWORLD(
sPicTable_Sobble,
@ -597,6 +606,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Drizzile,
.iconSprite = gMonIcon_Drizzile,
.iconPalIndex = 2,
SHADOW(2, 5, SHADOW_SIZE_M)
FOOTPRINT(Drizzile)
OVERWORLD(
sPicTable_Drizzile,
@ -658,6 +668,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Inteleon,
.iconSprite = gMonIcon_Inteleon,
.iconPalIndex = 0,
SHADOW(-5, 12, SHADOW_SIZE_S)
FOOTPRINT(Inteleon)
OVERWORLD(
sPicTable_Inteleon,
@ -721,6 +732,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_InteleonGigantamax,
.iconSprite = gMonIcon_InteleonGigantamax,
.iconPalIndex = 0,
SHADOW(-5, 12, SHADOW_SIZE_L)
FOOTPRINT(Inteleon)
.isGigantamax = TRUE,
.levelUpLearnset = sInteleonLevelUpLearnset,
@ -779,6 +791,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Skwovet,
.iconSprite = gMonIcon_Skwovet,
.iconPalIndex = 2,
SHADOW(-7, 5, SHADOW_SIZE_S)
FOOTPRINT(Skwovet)
OVERWORLD(
sPicTable_Skwovet,
@ -842,6 +855,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Greedent,
.iconSprite = gMonIcon_Greedent,
.iconPalIndex = 0,
SHADOW(-11, 10, SHADOW_SIZE_M)
FOOTPRINT(Greedent)
OVERWORLD(
sPicTable_Greedent,
@ -904,6 +918,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Rookidee,
.iconSprite = gMonIcon_Rookidee,
.iconPalIndex = 0,
SHADOW(-1, -3, SHADOW_SIZE_S)
FOOTPRINT(Rookidee)
OVERWORLD(
sPicTable_Rookidee,
@ -967,6 +982,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Corvisquire,
.iconSprite = gMonIcon_Corvisquire,
.iconPalIndex = 0,
SHADOW(2, 16, SHADOW_SIZE_S)
FOOTPRINT(Corvisquire)
OVERWORLD(
sPicTable_Corvisquire,
@ -1028,6 +1044,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Corviknight,
.iconSprite = gMonIcon_Corviknight,
.iconPalIndex = 0,
SHADOW(-1, 9, SHADOW_SIZE_L)
FOOTPRINT(Corviknight)
OVERWORLD(
sPicTable_Corviknight,
@ -1091,6 +1108,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_CorviknightGigantamax,
.iconSprite = gMonIcon_CorviknightGigantamax,
.iconPalIndex = 0,
SHADOW(2, 8, SHADOW_SIZE_L)
FOOTPRINT(Corviknight)
.isGigantamax = TRUE,
.levelUpLearnset = sCorviknightLevelUpLearnset,
@ -1148,6 +1166,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Blipbug,
.iconSprite = gMonIcon_Blipbug,
.iconPalIndex = 0,
SHADOW(2, 1, SHADOW_SIZE_S)
FOOTPRINT(Blipbug)
OVERWORLD(
sPicTable_Blipbug,
@ -1212,6 +1231,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Dottler,
.iconSprite = gMonIcon_Dottler,
.iconPalIndex = 2,
SHADOW(-1, 0, SHADOW_SIZE_M)
FOOTPRINT(Dottler)
OVERWORLD(
sPicTable_Dottler,
@ -1275,6 +1295,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Orbeetle,
.iconSprite = gMonIcon_Orbeetle,
.iconPalIndex = 0,
SHADOW(0, 15, SHADOW_SIZE_M)
FOOTPRINT(Orbeetle)
OVERWORLD(
sPicTable_Orbeetle,
@ -1339,6 +1360,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_OrbeetleGigantamax,
.iconSprite = gMonIcon_OrbeetleGigantamax,
.iconPalIndex = 0,
SHADOW(0, 12, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Orbeetle)
.isGigantamax = TRUE,
.levelUpLearnset = sOrbeetleLevelUpLearnset,
@ -1397,6 +1419,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Nickit,
.iconSprite = gMonIcon_Nickit,
.iconPalIndex = 2,
SHADOW(0, 4, SHADOW_SIZE_M)
FOOTPRINT(Nickit)
OVERWORLD(
sPicTable_Nickit,
@ -1459,6 +1482,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Thievul,
.iconSprite = gMonIcon_Thievul,
.iconPalIndex = 2,
SHADOW(-9, 7, SHADOW_SIZE_M)
FOOTPRINT(Thievul)
OVERWORLD(
sPicTable_Thievul,
@ -1521,6 +1545,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Gossifleur,
.iconSprite = gMonIcon_Gossifleur,
.iconPalIndex = 1,
SHADOW(0, 2, SHADOW_SIZE_S)
FOOTPRINT(Gossifleur)
OVERWORLD(
sPicTable_Gossifleur,
@ -1583,6 +1608,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Eldegoss,
.iconSprite = gMonIcon_Eldegoss,
.iconPalIndex = 1,
SHADOW(-2, 8, SHADOW_SIZE_S)
FOOTPRINT(Eldegoss)
OVERWORLD(
sPicTable_Eldegoss,
@ -1645,6 +1671,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Wooloo,
.iconSprite = gMonIcon_Wooloo,
.iconPalIndex = 0,
SHADOW(1, 1, SHADOW_SIZE_S)
FOOTPRINT(Wooloo)
OVERWORLD(
sPicTable_Wooloo,
@ -1707,6 +1734,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Dubwool,
.iconSprite = gMonIcon_Dubwool,
.iconPalIndex = 2,
SHADOW(2, 8, SHADOW_SIZE_M)
FOOTPRINT(Dubwool)
OVERWORLD(
sPicTable_Dubwool,
@ -1768,6 +1796,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Chewtle,
.iconSprite = gMonIcon_Chewtle,
.iconPalIndex = 0,
SHADOW(3, 1, SHADOW_SIZE_S)
FOOTPRINT(Chewtle)
OVERWORLD(
sPicTable_Chewtle,
@ -1829,6 +1858,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Drednaw,
.iconSprite = gMonIcon_Drednaw,
.iconPalIndex = 0,
SHADOW(-2, 4, SHADOW_SIZE_L)
FOOTPRINT(Drednaw)
OVERWORLD(
sPicTable_Drednaw,
@ -1892,6 +1922,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_DrednawGigantamax,
.iconSprite = gMonIcon_DrednawGigantamax,
.iconPalIndex = 0,
SHADOW(2, 12, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Drednaw)
.isGigantamax = TRUE,
.levelUpLearnset = sDrednawLevelUpLearnset,
@ -1950,6 +1981,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Yamper,
.iconSprite = gMonIcon_Yamper,
.iconPalIndex = 1,
SHADOW(-1, 2, SHADOW_SIZE_M)
FOOTPRINT(Yamper)
OVERWORLD(
sPicTable_Yamper,
@ -2012,6 +2044,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Boltund,
.iconSprite = gMonIcon_Boltund,
.iconPalIndex = 1,
SHADOW(0, 7, SHADOW_SIZE_M)
FOOTPRINT(Boltund)
OVERWORLD(
sPicTable_Boltund,
@ -2074,6 +2107,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Rolycoly,
.iconSprite = gMonIcon_Rolycoly,
.iconPalIndex = 0,
SHADOW(0, -3, SHADOW_SIZE_S)
FOOTPRINT(Rolycoly)
OVERWORLD(
sPicTable_Rolycoly,
@ -2135,6 +2169,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Carkol,
.iconSprite = gMonIcon_Carkol,
.iconPalIndex = 0,
SHADOW(0, 3, SHADOW_SIZE_M)
FOOTPRINT(Carkol)
OVERWORLD(
sPicTable_Carkol,
@ -2196,6 +2231,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Coalossal,
.iconSprite = gMonIcon_Coalossal,
.iconPalIndex = 0,
SHADOW(1, 12, SHADOW_SIZE_L)
FOOTPRINT(Coalossal)
OVERWORLD(
sPicTable_Coalossal,
@ -2259,6 +2295,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_CoalossalGigantamax,
.iconSprite = gMonIcon_CoalossalGigantamax,
.iconPalIndex = 0,
SHADOW(1, 12, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Coalossal)
.isGigantamax = TRUE,
.levelUpLearnset = sCoalossalLevelUpLearnset,
@ -2317,6 +2354,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Applin,
.iconSprite = gMonIcon_Applin,
.iconPalIndex = 1,
SHADOW(-1, -3, SHADOW_SIZE_S)
FOOTPRINT(Applin)
OVERWORLD(
sPicTable_Applin,
@ -2382,6 +2420,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Flapple,
.iconSprite = gMonIcon_Flapple,
.iconPalIndex = 1,
SHADOW(-6, 11, SHADOW_SIZE_S)
FOOTPRINT(Flapple)
OVERWORLD(
sPicTable_Flapple,
@ -2445,6 +2484,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_FlappleGigantamax,
.iconSprite = gMonIcon_FlappleGigantamax,
.iconPalIndex = 1,
SHADOW(0, 10, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Flapple)
.isGigantamax = TRUE,
.levelUpLearnset = sFlappleLevelUpLearnset,
@ -2500,6 +2540,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Appletun,
.iconSprite = gMonIcon_Appletun,
.iconPalIndex = 1,
SHADOW(5, 6, SHADOW_SIZE_L)
FOOTPRINT(Appletun)
OVERWORLD(
sPicTable_Appletun,
@ -2563,6 +2604,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_AppletunGigantamax,
.iconSprite = gMonIcon_AppletunGigantamax,
.iconPalIndex = 1,
SHADOW(0, 10, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Appletun)
.isGigantamax = TRUE,
.levelUpLearnset = sAppletunLevelUpLearnset,
@ -2619,6 +2661,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Dipplin,
.iconSprite = gMonIcon_Dipplin,
.iconPalIndex = 1,
SHADOW(-4, 8, SHADOW_SIZE_S)
FOOTPRINT(Dipplin)
OVERWORLD(
sPicTable_Dipplin,
@ -2680,6 +2723,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Hydrapple,
.iconSprite = gMonIcon_Hydrapple,
.iconPalIndex = 5,
SHADOW(1, 12, SHADOW_SIZE_L)
FOOTPRINT(Hydrapple)
OVERWORLD(
sPicTable_Hydrapple,
@ -2742,6 +2786,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Silicobra,
.iconSprite = gMonIcon_Silicobra,
.iconPalIndex = 1,
SHADOW(3, 1, SHADOW_SIZE_M)
FOOTPRINT(Silicobra)
OVERWORLD(
sPicTable_Silicobra,
@ -2804,6 +2849,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Sandaconda,
.iconSprite = gMonIcon_Sandaconda,
.iconPalIndex = 1,
SHADOW(2, -1, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Sandaconda)
OVERWORLD(
sPicTable_Sandaconda,
@ -2867,6 +2913,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_SandacondaGigantamax,
.iconSprite = gMonIcon_SandacondaGigantamax,
.iconPalIndex = 1,
SHADOW(0, 14, SHADOW_SIZE_M)
FOOTPRINT(Sandaconda)
.isGigantamax = TRUE,
.levelUpLearnset = sSandacondaLevelUpLearnset,
@ -2924,6 +2971,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Cramorant,
.iconSprite = gMonIcon_Cramorant,
.iconPalIndex = 0,
SHADOW(5, 14, SHADOW_SIZE_M)
FOOTPRINT(Cramorant)
OVERWORLD(
sPicTable_Cramorant,
@ -2987,6 +3035,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_CramorantGulping,
.iconSprite = gMonIcon_CramorantGulping,
.iconPalIndex = 0,
SHADOW(5, 14, SHADOW_SIZE_M)
FOOTPRINT(Cramorant)
.levelUpLearnset = sCramorantLevelUpLearnset,
.teachableLearnset = sCramorantTeachableLearnset,
@ -3042,6 +3091,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_CramorantGorging,
.iconSprite = gMonIcon_CramorantGorging,
.iconPalIndex = 0,
SHADOW(5, 14, SHADOW_SIZE_M)
FOOTPRINT(Cramorant)
.levelUpLearnset = sCramorantLevelUpLearnset,
.teachableLearnset = sCramorantTeachableLearnset,
@ -3099,6 +3149,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Arrokuda,
.iconSprite = gMonIcon_Arrokuda,
.iconPalIndex = 2,
SHADOW(-1, -5, SHADOW_SIZE_S)
FOOTPRINT(Arrokuda)
OVERWORLD(
sPicTable_Arrokuda,
@ -3161,6 +3212,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Barraskewda,
.iconSprite = gMonIcon_Barraskewda,
.iconPalIndex = 2,
SHADOW(4, 5, SHADOW_SIZE_M)
FOOTPRINT(Barraskewda)
OVERWORLD(
sPicTable_Barraskewda,
@ -3223,6 +3275,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Toxel,
.iconSprite = gMonIcon_Toxel,
.iconPalIndex = 2,
SHADOW(-2, 1, SHADOW_SIZE_M)
FOOTPRINT(Toxel)
OVERWORLD(
sPicTable_Toxel,
@ -3286,6 +3339,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_ToxtricityAmped,
.iconSprite = gMonIcon_ToxtricityAmped,
.iconPalIndex = 2,
SHADOW(-6, 13, SHADOW_SIZE_M)
FOOTPRINT(Toxtricity)
OVERWORLD(
sPicTable_ToxtricityAmped,
@ -3345,6 +3399,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_ToxtricityGigantamax,
.iconSprite = gMonIcon_ToxtricityGigantamax,
.iconPalIndex = 0,
SHADOW(1, 10, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Toxtricity)
.isGigantamax = TRUE,
.levelUpLearnset = sToxtricityAmpedLevelUpLearnset,
@ -3400,6 +3455,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_ToxtricityLowKey,
.iconSprite = gMonIcon_ToxtricityLowKey,
.iconPalIndex = 2,
SHADOW(1, 12, SHADOW_SIZE_M)
FOOTPRINT(Toxtricity)
OVERWORLD(
sPicTable_ToxtricityLowKey,
@ -3459,6 +3515,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_ToxtricityGigantamax,
.iconSprite = gMonIcon_ToxtricityGigantamax,
.iconPalIndex = 0,
SHADOW(1, 10, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Toxtricity)
OVERWORLD(
sPicTable_ToxtricityLowKey,
@ -3524,6 +3581,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Sizzlipede,
.iconSprite = gMonIcon_Sizzlipede,
.iconPalIndex = 0,
SHADOW(6, -4, SHADOW_SIZE_S)
FOOTPRINT(Sizzlipede)
OVERWORLD(
sPicTable_Sizzlipede,
@ -3586,6 +3644,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Centiskorch,
.iconSprite = gMonIcon_Centiskorch,
.iconPalIndex = 0,
SHADOW(-3, 7, SHADOW_SIZE_M)
FOOTPRINT(Centiskorch)
OVERWORLD(
sPicTable_Centiskorch,
@ -3649,6 +3708,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_CentiskorchGigantamax,
.iconSprite = gMonIcon_CentiskorchGigantamax,
.iconPalIndex = 0,
SHADOW(6, 9, SHADOW_SIZE_L)
FOOTPRINT(Centiskorch)
.isGigantamax = TRUE,
.levelUpLearnset = sCentiskorchLevelUpLearnset,
@ -3707,6 +3767,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Clobbopus,
.iconSprite = gMonIcon_Clobbopus,
.iconPalIndex = 0,
SHADOW(1, -2, SHADOW_SIZE_S)
FOOTPRINT(Clobbopus)
OVERWORLD(
sPicTable_Clobbopus,
@ -3768,6 +3829,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Grapploct,
.iconSprite = gMonIcon_Grapploct,
.iconPalIndex = 2,
SHADOW(4, 9, SHADOW_SIZE_M)
FOOTPRINT(Grapploct)
OVERWORLD(
sPicTable_Grapploct,
@ -3830,6 +3892,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Sinistea,
.iconSprite = gMonIcon_Sinistea,
.iconPalIndex = 2,
SHADOW(3, 3, SHADOW_SIZE_S)
FOOTPRINT(Sinistea)
OVERWORLD(
sPicTable_Sinistea,
@ -3893,6 +3956,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Sinistea,
.iconSprite = gMonIcon_Sinistea,
.iconPalIndex = 2,
SHADOW(3, 4, SHADOW_SIZE_S)
FOOTPRINT(Sinistea)
OVERWORLD(
sPicTable_Sinistea,
@ -3955,6 +4019,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Polteageist,
.iconSprite = gMonIcon_Polteageist,
.iconPalIndex = 2,
SHADOW(0, 12, SHADOW_SIZE_S)
FOOTPRINT(Polteageist)
OVERWORLD(
sPicTable_Polteageist,
@ -4017,6 +4082,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Polteageist,
.iconSprite = gMonIcon_Polteageist,
.iconPalIndex = 2,
SHADOW(0, 11, SHADOW_SIZE_S)
FOOTPRINT(Polteageist)
OVERWORLD(
sPicTable_Polteageist,
@ -4080,6 +4146,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Hatenna,
.iconSprite = gMonIcon_Hatenna,
.iconPalIndex = 0,
SHADOW(0, 1, SHADOW_SIZE_M)
FOOTPRINT(Hatenna)
OVERWORLD(
sPicTable_Hatenna,
@ -4141,6 +4208,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Hattrem,
.iconSprite = gMonIcon_Hattrem,
.iconPalIndex = 0,
SHADOW(0, 5, SHADOW_SIZE_M)
FOOTPRINT(Hattrem)
OVERWORLD(
sPicTable_Hattrem,
@ -4201,6 +4269,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Hatterene,
.iconSprite = gMonIcon_Hatterene,
.iconPalIndex = 0,
SHADOW(6, 13, SHADOW_SIZE_S)
FOOTPRINT(Hatterene)
OVERWORLD(
sPicTable_Hatterene,
@ -4264,6 +4333,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_HattereneGigantamax,
.iconSprite = gMonIcon_HattereneGigantamax,
.iconPalIndex = 0,
SHADOW(-3, 13, SHADOW_SIZE_S)
FOOTPRINT(Hatterene)
.isGigantamax = TRUE,
.levelUpLearnset = sHattereneLevelUpLearnset,
@ -4322,6 +4392,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Impidimp,
.iconSprite = gMonIcon_Impidimp,
.iconPalIndex = 0,
SHADOW(0, 2, SHADOW_SIZE_S)
FOOTPRINT(Impidimp)
OVERWORLD(
sPicTable_Impidimp,
@ -4383,6 +4454,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Morgrem,
.iconSprite = gMonIcon_Morgrem,
.iconPalIndex = 0,
SHADOW(0, 7, SHADOW_SIZE_M)
FOOTPRINT(Morgrem)
OVERWORLD(
sPicTable_Morgrem,
@ -4444,6 +4516,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Grimmsnarl,
.iconSprite = gMonIcon_Grimmsnarl,
.iconPalIndex = 0,
SHADOW(1, 11, SHADOW_SIZE_L)
FOOTPRINT(Grimmsnarl)
OVERWORLD(
sPicTable_Grimmsnarl,
@ -4507,6 +4580,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_GrimmsnarlGigantamax,
.iconSprite = gMonIcon_GrimmsnarlGigantamax,
.iconPalIndex = 0,
SHADOW(0, 14, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Grimmsnarl)
.isGigantamax = TRUE,
.levelUpLearnset = sGrimmsnarlLevelUpLearnset,
@ -4565,6 +4639,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Milcery,
.iconSprite = gMonIcon_Milcery,
.iconPalIndex = 1,
SHADOW(0, 6, SHADOW_SIZE_S)
FOOTPRINT(Milcery)
OVERWORLD(
sPicTable_Milcery,
@ -4634,6 +4709,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Alcremie ##sweet, \
.iconSprite = gMonIcon_AlcremieStrawberryVanillaCream, /*AlcremieStrawberry##cream##*/ \
.iconPalIndex = 1, \
SHADOW(0, 5, SHADOW_SIZE_S) \
FOOTPRINT(Alcremie) \
OVERWORLD( \
sPicTable_AlcremieStrawberry, /*Alcremie ##sweet*/ \
@ -4744,6 +4820,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_AlcremieGigantamax,
.iconSprite = gMonIcon_AlcremieGigantamax,
.iconPalIndex = 1,
SHADOW(0, 10, SHADOW_SIZE_L)
FOOTPRINT(Alcremie)
.isGigantamax = TRUE,
.levelUpLearnset = sAlcremieLevelUpLearnset,
@ -4801,6 +4878,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Falinks,
.iconSprite = gMonIcon_Falinks,
.iconPalIndex = 0,
SHADOW(-7, 5, SHADOW_SIZE_S)
FOOTPRINT(Falinks)
OVERWORLD(
sPicTable_Falinks,
@ -4862,6 +4940,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Pincurchin,
.iconSprite = gMonIcon_Pincurchin,
.iconPalIndex = 2,
SHADOW(-1, -4, SHADOW_SIZE_S)
FOOTPRINT(Pincurchin)
OVERWORLD(
sPicTable_Pincurchin,
@ -4926,6 +5005,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Snom,
.iconSprite = gMonIcon_Snom,
.iconPalIndex = 0,
SHADOW(-2, -7, SHADOW_SIZE_S)
FOOTPRINT(Snom)
OVERWORLD(
sPicTable_Snom,
@ -4989,6 +5069,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Frosmoth,
.iconSprite = gMonIcon_Frosmoth,
.iconPalIndex = 0,
SHADOW(-7, 13, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Frosmoth)
OVERWORLD(
sPicTable_Frosmoth,
@ -5051,6 +5132,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Stonjourner,
.iconSprite = gMonIcon_Stonjourner,
.iconPalIndex = 2,
SHADOW(0, 10, SHADOW_SIZE_L)
FOOTPRINT(Stonjourner)
OVERWORLD(
sPicTable_Stonjourner,
@ -5114,6 +5196,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_EiscueIceFace,
.iconSprite = gMonIcon_EiscueIceFace,
.iconPalIndex = 0,
SHADOW(-1, 13, SHADOW_SIZE_S)
FOOTPRINT(Eiscue)
OVERWORLD(
sPicTable_EiscueIceFace,
@ -5177,6 +5260,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_EiscueNoiceFace,
.iconSprite = gMonIcon_EiscueNoiceFace,
.iconPalIndex = 0,
SHADOW(-1, 13, SHADOW_SIZE_S)
FOOTPRINT(Eiscue)
.levelUpLearnset = sEiscueLevelUpLearnset,
.teachableLearnset = sEiscueTeachableLearnset,
@ -5234,6 +5318,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_IndeedeeMale,
.iconSprite = gMonIcon_IndeedeeMale,
.iconPalIndex = 2,
SHADOW(2, 4, SHADOW_SIZE_S)
FOOTPRINT(Indeedee)
OVERWORLD(
sPicTable_IndeedeeMale,
@ -5295,6 +5380,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_IndeedeeFemale,
.iconSprite = gMonIcon_IndeedeeFemale,
.iconPalIndex = 2,
SHADOW(2, 4, SHADOW_SIZE_S)
FOOTPRINT(Indeedee)
OVERWORLD(
sPicTable_IndeedeeFemale,
@ -5359,6 +5445,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_MorpekoFullBelly,
.iconSprite = gMonIcon_MorpekoFullBelly,
.iconPalIndex = 2,
SHADOW(0, 0, SHADOW_SIZE_S)
FOOTPRINT(Morpeko)
OVERWORLD(
sPicTable_MorpekoFullBelly,
@ -5422,6 +5509,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_MorpekoHangry,
.iconSprite = gMonIcon_MorpekoHangry,
.iconPalIndex = 2,
SHADOW(0, 0, SHADOW_SIZE_S)
FOOTPRINT(Morpeko)
.levelUpLearnset = sMorpekoLevelUpLearnset,
.teachableLearnset = sMorpekoTeachableLearnset,
@ -5480,6 +5568,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Cufant,
.iconSprite = gMonIcon_Cufant,
.iconPalIndex = 0,
SHADOW(5, 2, SHADOW_SIZE_M)
FOOTPRINT(Cufant)
OVERWORLD(
sPicTable_Cufant,
@ -5542,6 +5631,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Copperajah,
.iconSprite = gMonIcon_Copperajah,
.iconPalIndex = 0,
SHADOW(6, 7, SHADOW_SIZE_L)
FOOTPRINT(Copperajah)
OVERWORLD(
sPicTable_Copperajah,
@ -5606,6 +5696,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_CopperajahGigantamax,
.iconSprite = gMonIcon_CopperajahGigantamax,
.iconPalIndex = 0,
SHADOW(0, 11, SHADOW_SIZE_L)
FOOTPRINT(Copperajah)
.isGigantamax = TRUE,
.levelUpLearnset = sCopperajahLevelUpLearnset,
@ -5664,6 +5755,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Dracozolt,
.iconSprite = gMonIcon_Dracozolt,
.iconPalIndex = 1,
SHADOW(-4, 10, SHADOW_SIZE_L)
FOOTPRINT(Dracozolt)
OVERWORLD(
sPicTable_Dracozolt,
@ -5725,6 +5817,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Arctozolt,
.iconSprite = gMonIcon_Arctozolt,
.iconPalIndex = 0,
SHADOW(-2, 11, SHADOW_SIZE_M)
FOOTPRINT(Arctozolt)
OVERWORLD(
sPicTable_Arctozolt,
@ -5787,6 +5880,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Dracovish,
.iconSprite = gMonIcon_Dracovish,
.iconPalIndex = 0,
SHADOW(2, 11, SHADOW_SIZE_M)
FOOTPRINT(Dracovish)
OVERWORLD(
sPicTable_Dracovish,
@ -5849,6 +5943,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Arctovish,
.iconSprite = gMonIcon_Arctovish,
.iconPalIndex = 0,
SHADOW(0, 11, SHADOW_SIZE_L)
FOOTPRINT(Arctovish)
OVERWORLD(
sPicTable_Arctovish,
@ -5910,6 +6005,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Duraludon,
.iconSprite = gMonIcon_Duraludon,
.iconPalIndex = 0,
SHADOW(2, 11, SHADOW_SIZE_L)
FOOTPRINT(Duraludon)
OVERWORLD(
sPicTable_Duraludon,
@ -5975,6 +6071,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_DuraludonGigantamax,
.iconSprite = gMonIcon_DuraludonGigantamax,
.iconPalIndex = 0,
SHADOW(3, 12, SHADOW_SIZE_L)
FOOTPRINT(Duraludon)
.isGigantamax = TRUE,
.levelUpLearnset = sDuraludonLevelUpLearnset,
@ -6033,6 +6130,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Archaludon,
.iconSprite = gMonIcon_Archaludon,
.iconPalIndex = 0,
SHADOW(4, 14, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Archaludon)
OVERWORLD(
sPicTable_Archaludon,
@ -6097,6 +6195,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Dreepy,
.iconSprite = gMonIcon_Dreepy,
.iconPalIndex = 0,
SHADOW(0, 2, SHADOW_SIZE_S)
FOOTPRINT(Dreepy)
OVERWORLD(
sPicTable_Dreepy,
@ -6159,6 +6258,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Drakloak,
.iconSprite = gMonIcon_Drakloak,
.iconPalIndex = 0,
SHADOW(0, 9, SHADOW_SIZE_M)
FOOTPRINT(Drakloak)
OVERWORLD(
sPicTable_Drakloak,
@ -6221,6 +6321,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Dragapult,
.iconSprite = gMonIcon_Dragapult,
.iconPalIndex = 0,
SHADOW(0, 12, SHADOW_SIZE_M)
FOOTPRINT(Dragapult)
OVERWORLD(
sPicTable_Dragapult,
@ -6282,6 +6383,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_ZacianHeroOfManyBattles,
.iconSprite = gMonIcon_ZacianHeroOfManyBattles,
.iconPalIndex = 2,
SHADOW(-1, 9, SHADOW_SIZE_L)
FOOTPRINT(Zacian)
OVERWORLD(
sPicTable_ZacianHeroOfManyBattles,
@ -6347,6 +6449,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_ZacianCrownedSword,
.iconSprite = gMonIcon_ZacianCrownedSword,
.iconPalIndex = 2,
SHADOW(-3, 12, SHADOW_SIZE_L)
FOOTPRINT(Zacian)
OVERWORLD(
sPicTable_ZacianCrownedSword,
@ -6414,6 +6517,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_ZamazentaHeroOfManyBattles,
.iconSprite = gMonIcon_ZamazentaHeroOfManyBattles,
.iconPalIndex = 2,
SHADOW(-1, 12, SHADOW_SIZE_L)
FOOTPRINT(Zamazenta)
OVERWORLD(
sPicTable_ZamazentaHeroOfManyBattles,
@ -6479,6 +6583,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_ZamazentaCrownedShield,
.iconSprite = gMonIcon_ZamazentaCrownedShield,
.iconPalIndex = 2,
SHADOW(0, 12, SHADOW_SIZE_L)
FOOTPRINT(Zamazenta)
OVERWORLD(
sPicTable_ZamazentaCrownedShield,
@ -6547,6 +6652,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Eternatus,
.iconSprite = gMonIcon_Eternatus,
.iconPalIndex = 0,
SHADOW(0, 14, SHADOW_SIZE_L)
FOOTPRINT(Eternatus)
OVERWORLD(
sPicTable_Eternatus,
@ -6612,6 +6718,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_EternatusEternamax,
.iconSprite = gMonIcon_EternatusEternamax,
.iconPalIndex = 0,
SHADOW(-3, 20, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Eternatus)
.isLegendary = TRUE,
.isFrontierBanned = TRUE,
@ -6669,6 +6776,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Kubfu,
.iconSprite = gMonIcon_Kubfu,
.iconPalIndex = 1,
SHADOW(-2, 5, SHADOW_SIZE_S)
FOOTPRINT(Kubfu)
OVERWORLD(
sPicTable_Kubfu,
@ -6735,6 +6843,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_UrshifuSingleStrikeStyle,
.iconSprite = gMonIcon_Urshifu,
.iconPalIndex = 2,
SHADOW(0, 14, SHADOW_SIZE_L)
FOOTPRINT(Urshifu)
OVERWORLD(
sPicTable_Urshifu,
@ -6800,6 +6909,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_UrshifuSingleStrikeStyleGigantamax,
.iconSprite = gMonIcon_UrshifuSingleStrikeStyleGigantamax,
.iconPalIndex = 0,
SHADOW(1, 13, SHADOW_SIZE_L)
FOOTPRINT(Urshifu)
.isLegendary = TRUE,
.isGigantamax = TRUE,
@ -6857,6 +6967,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_UrshifuRapidStrikeStyle,
.iconSprite = gMonIcon_Urshifu,
.iconPalIndex = 2,
SHADOW(4, 14, SHADOW_SIZE_M)
FOOTPRINT(Urshifu)
OVERWORLD(
sPicTable_Urshifu,
@ -6922,6 +7033,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_UrshifuRapidStrikeStyleGigantamax,
.iconSprite = gMonIcon_UrshifuRapidStrikeStyleGigantamax,
.iconPalIndex = 0,
SHADOW(2, 13, SHADOW_SIZE_M)
FOOTPRINT(Urshifu)
.isLegendary = TRUE,
.isGigantamax = TRUE,
@ -6982,6 +7094,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Zarude,
.iconSprite = gMonIcon_Zarude,
.iconPalIndex = 1,
SHADOW(5, 11, SHADOW_SIZE_L)
FOOTPRINT(Zarude)
OVERWORLD(
sPicTable_Zarude,
@ -7045,6 +7158,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_ZarudeDada,
.iconSprite = gMonIcon_ZarudeDada,
.iconPalIndex = 1,
SHADOW(5, 11, SHADOW_SIZE_L)
FOOTPRINT(Zarude)
.isMythical = TRUE,
.isFrontierBanned = TRUE,
@ -7104,6 +7218,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Regieleki,
.iconSprite = gMonIcon_Regieleki,
.iconPalIndex = 0,
SHADOW(-3, 14, SHADOW_SIZE_S)
FOOTPRINT(Regieleki)
OVERWORLD(
sPicTable_Regieleki,
@ -7169,6 +7284,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Regidrago,
.iconSprite = gMonIcon_Regidrago,
.iconPalIndex = 0,
SHADOW(0, 13, SHADOW_SIZE_M)
FOOTPRINT(Regidrago)
OVERWORLD(
sPicTable_Regidrago,
@ -7232,6 +7348,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Glastrier,
.iconSprite = gMonIcon_Glastrier,
.iconPalIndex = 0,
SHADOW(-5, 11, SHADOW_SIZE_L)
FOOTPRINT(Glastrier)
OVERWORLD(
sPicTable_Glastrier,
@ -7296,6 +7413,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Spectrier,
.iconSprite = gMonIcon_Spectrier,
.iconPalIndex = 0,
SHADOW(-6, 12, SHADOW_SIZE_L)
FOOTPRINT(Spectrier)
OVERWORLD(
sPicTable_Spectrier,
@ -7360,6 +7478,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_Calyrex,
.iconSprite = gMonIcon_Calyrex,
.iconPalIndex = 0,
SHADOW(-1, 12, SHADOW_SIZE_S)
FOOTPRINT(Calyrex)
OVERWORLD(
sPicTable_Calyrex,
@ -7425,6 +7544,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_CalyrexIceRider,
.iconSprite = gMonIcon_CalyrexIceRider,
.iconPalIndex = 0,
SHADOW(-5, 11, SHADOW_SIZE_L)
FOOTPRINT(Calyrex)
OVERWORLD(
sPicTable_CalyrexIceRider,
@ -7490,6 +7610,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_CalyrexShadowRider,
.iconSprite = gMonIcon_CalyrexShadowRider,
.iconPalIndex = 0,
SHADOW(-5, 12, SHADOW_SIZE_L)
FOOTPRINT(Calyrex)
OVERWORLD(
sPicTable_CalyrexShadowRider,
@ -7559,6 +7680,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_EnamorusIncarnate,
.iconSprite = gMonIcon_EnamorusIncarnate,
.iconPalIndex = 1,
SHADOW(0, 17, SHADOW_SIZE_M)
FOOTPRINT(Enamorus)
OVERWORLD(
sPicTable_EnamorusIncarnate,
@ -7622,6 +7744,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] =
.shinyPalette = gMonShinyPalette_EnamorusTherian,
.iconSprite = gMonIcon_EnamorusTherian,
.iconPalIndex = 1,
SHADOW(2, 8, SHADOW_SIZE_L)
FOOTPRINT(Enamorus)
OVERWORLD(
sPicTable_EnamorusTherian,

View file

@ -51,6 +51,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Sprigatito,
.iconSprite = gMonIcon_Sprigatito,
.iconPalIndex = 1,
SHADOW(-2, 5, SHADOW_SIZE_S)
FOOTPRINT(Sprigatito)
OVERWORLD(
sPicTable_Sprigatito,
@ -113,6 +114,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Floragato,
.iconSprite = gMonIcon_Floragato,
.iconPalIndex = 1,
SHADOW(-3, 11, SHADOW_SIZE_M)
FOOTPRINT(Floragato)
OVERWORLD(
sPicTable_Floragato,
@ -174,6 +176,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Meowscarada,
.iconSprite = gMonIcon_Meowscarada,
.iconPalIndex = 1,
SHADOW(-3, 14, SHADOW_SIZE_S)
FOOTPRINT(Meowscarada)
OVERWORLD(
sPicTable_Meowscarada,
@ -236,6 +239,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Fuecoco,
.iconSprite = gMonIcon_Fuecoco,
.iconPalIndex = 2,
SHADOW(-3, 5, SHADOW_SIZE_S)
FOOTPRINT(Fuecoco)
OVERWORLD(
sPicTable_Fuecoco,
@ -298,6 +302,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Crocalor,
.iconSprite = gMonIcon_Crocalor,
.iconPalIndex = 0,
SHADOW(2, 8, SHADOW_SIZE_M)
FOOTPRINT(Crocalor)
OVERWORLD(
sPicTable_Crocalor,
@ -359,6 +364,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Skeledirge,
.iconSprite = gMonIcon_Skeledirge,
.iconPalIndex = 0,
SHADOW(6, 7, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Skeledirge)
OVERWORLD(
sPicTable_Skeledirge,
@ -421,6 +427,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Quaxly,
.iconSprite = gMonIcon_Quaxly,
.iconPalIndex = 0,
SHADOW(0, 5, SHADOW_SIZE_S)
FOOTPRINT(Quaxly)
OVERWORLD(
sPicTable_Quaxly,
@ -483,6 +490,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Quaxwell,
.iconSprite = gMonIcon_Quaxwell,
.iconPalIndex = 0,
SHADOW(1, 10, SHADOW_SIZE_S)
FOOTPRINT(Quaxwell)
OVERWORLD(
sPicTable_Quaxwell,
@ -544,6 +552,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Quaquaval,
.iconSprite = gMonIcon_Quaquaval,
.iconPalIndex = 0,
SHADOW(-7, 13, SHADOW_SIZE_M)
FOOTPRINT(Quaquaval)
OVERWORLD(
sPicTable_Quaquaval,
@ -606,6 +615,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Lechonk,
.iconSprite = gMonIcon_Lechonk,
.iconPalIndex = 1,
SHADOW(0, 1, SHADOW_SIZE_S)
FOOTPRINT(Lechonk)
OVERWORLD(
sPicTable_Lechonk,
@ -668,6 +678,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_OinkologneMale,
.iconSprite = gMonIcon_OinkologneMale,
.iconPalIndex = 1,
SHADOW(-2, 6, SHADOW_SIZE_M)
FOOTPRINT(Oinkologne)
OVERWORLD(
sPicTable_OinkologneMale,
@ -729,6 +740,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_OinkologneFemale,
.iconSprite = gMonIcon_OinkologneFemale,
.iconPalIndex = 0,
SHADOW(3, 7, SHADOW_SIZE_M)
FOOTPRINT(Oinkologne)
OVERWORLD(
sPicTable_OinkologneFemale,
@ -792,6 +804,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Tarountula,
.iconSprite = gMonIcon_Tarountula,
.iconPalIndex = 1,
SHADOW(-1, 2, SHADOW_SIZE_M)
FOOTPRINT(Tarountula)
OVERWORLD(
sPicTable_Tarountula,
@ -854,6 +867,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Spidops,
.iconSprite = gMonIcon_Spidops,
.iconPalIndex = 1,
SHADOW(6, 8, SHADOW_SIZE_L)
FOOTPRINT(Spidops)
OVERWORLD(
sPicTable_Spidops,
@ -916,6 +930,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Nymble,
.iconSprite = gMonIcon_Nymble,
.iconPalIndex = 0,
SHADOW(1, 3, SHADOW_SIZE_M)
FOOTPRINT(Nymble)
OVERWORLD(
sPicTable_Nymble,
@ -978,6 +993,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Lokix,
.iconSprite = gMonIcon_Lokix,
.iconPalIndex = 0,
SHADOW(0, 11, SHADOW_SIZE_M)
FOOTPRINT(Lokix)
OVERWORLD(
sPicTable_Lokix,
@ -1040,6 +1056,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Pawmi,
.iconSprite = gMonIcon_Pawmi,
.iconPalIndex = 0,
SHADOW(1, 4, SHADOW_SIZE_M)
FOOTPRINT(Pawmi)
OVERWORLD(
sPicTable_Pawmi,
@ -1102,6 +1119,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Pawmo,
.iconSprite = gMonIcon_Pawmo,
.iconPalIndex = 0,
SHADOW(-3, 10, SHADOW_SIZE_S)
FOOTPRINT(Pawmo)
OVERWORLD(
sPicTable_Pawmo,
@ -1163,6 +1181,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Pawmot,
.iconSprite = gMonIcon_Pawmot,
.iconPalIndex = 0,
SHADOW(-1, 11, SHADOW_SIZE_M)
FOOTPRINT(Pawmot)
OVERWORLD(
sPicTable_Pawmot,
@ -1225,6 +1244,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Tandemaus,
.iconSprite = gMonIcon_Tandemaus,
.iconPalIndex = 1,
SHADOW(0, -1, SHADOW_SIZE_M)
FOOTPRINT(Tandemaus)
OVERWORLD(
sPicTable_Tandemaus,
@ -1288,6 +1308,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Maushold,
.iconSprite = gMonIcon_MausholdFamilyOfThree,
.iconPalIndex = 1,
SHADOW(4, -1, SHADOW_SIZE_L)
FOOTPRINT(MausholdFamilyOfThree)
OVERWORLD(
sPicTable_MausholdFamilyOfThree,
@ -1348,6 +1369,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Maushold,
.iconSprite = gMonIcon_MausholdFamilyOfFour,
.iconPalIndex = 1,
SHADOW(0, -1, SHADOW_SIZE_L)
FOOTPRINT(MausholdFamilyOfFour)
OVERWORLD(
sPicTable_MausholdFamilyOfFour,
@ -1411,6 +1433,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Fidough,
.iconSprite = gMonIcon_Fidough,
.iconPalIndex = 1,
SHADOW(4, 0, SHADOW_SIZE_S)
FOOTPRINT(Fidough)
OVERWORLD(
sPicTable_Fidough,
@ -1473,6 +1496,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Dachsbun,
.iconSprite = gMonIcon_Dachsbun,
.iconPalIndex = 0,
SHADOW(-1, 7, SHADOW_SIZE_L)
FOOTPRINT(Dachsbun)
OVERWORLD(
sPicTable_Dachsbun,
@ -1535,6 +1559,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Smoliv,
.iconSprite = gMonIcon_Smoliv,
.iconPalIndex = 1,
SHADOW(-1, -2, SHADOW_SIZE_S)
FOOTPRINT(Smoliv)
OVERWORLD(
sPicTable_Smoliv,
@ -1597,6 +1622,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Dolliv,
.iconSprite = gMonIcon_Dolliv,
.iconPalIndex = 1,
SHADOW(1, 9, SHADOW_SIZE_M)
FOOTPRINT(Dolliv)
OVERWORLD(
sPicTable_Dolliv,
@ -1658,6 +1684,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Arboliva,
.iconSprite = gMonIcon_Arboliva,
.iconPalIndex = 1,
SHADOW(1, 13, SHADOW_SIZE_L)
FOOTPRINT(Arboliva)
OVERWORLD(
sPicTable_Arboliva,
@ -1720,6 +1747,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_SquawkabillyGreenPlumage,
.iconSprite = gMonIcon_SquawkabillyGreenPlumage,
.iconPalIndex = 1,
SHADOW(-6, 9, SHADOW_SIZE_M)
FOOTPRINT(Squawkabilly)
OVERWORLD(
sPicTable_SquawkabillyGreenPlumage,
@ -1782,6 +1810,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_SquawkabillyBluePlumage,
.iconSprite = gMonIcon_SquawkabillyBluePlumage,
.iconPalIndex = 0,
SHADOW(-6, 9, SHADOW_SIZE_M)
FOOTPRINT(Squawkabilly)
OVERWORLD(
sPicTable_SquawkabillyBluePlumage,
@ -1844,6 +1873,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_SquawkabillyYellowPlumage,
.iconSprite = gMonIcon_SquawkabillyYellowPlumage,
.iconPalIndex = 1,
SHADOW(-6, 9, SHADOW_SIZE_M)
FOOTPRINT(Squawkabilly)
OVERWORLD(
sPicTable_SquawkabillyYellowPlumage,
@ -1906,6 +1936,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_SquawkabillyWhitePlumage,
.iconSprite = gMonIcon_SquawkabillyWhitePlumage,
.iconPalIndex = 0,
SHADOW(-6, 9, SHADOW_SIZE_M)
FOOTPRINT(Squawkabilly)
OVERWORLD(
sPicTable_SquawkabillyWhitePlumage,
@ -1970,6 +2001,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Nacli,
.iconSprite = gMonIcon_Nacli,
.iconPalIndex = 2,
SHADOW(-1, 5, SHADOW_SIZE_S)
FOOTPRINT(Nacli)
OVERWORLD(
sPicTable_Nacli,
@ -2032,6 +2064,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Naclstack,
.iconSprite = gMonIcon_Naclstack,
.iconPalIndex = 2,
SHADOW(0, 5, SHADOW_SIZE_L)
FOOTPRINT(Naclstack)
OVERWORLD(
sPicTable_Naclstack,
@ -2093,6 +2126,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Garganacl,
.iconSprite = gMonIcon_Garganacl,
.iconPalIndex = 2,
SHADOW(0, 13, SHADOW_SIZE_L)
FOOTPRINT(Garganacl)
OVERWORLD(
sPicTable_Garganacl,
@ -2155,6 +2189,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Charcadet,
.iconSprite = gMonIcon_Charcadet,
.iconPalIndex = 0,
SHADOW(-1, 5, SHADOW_SIZE_S)
FOOTPRINT(Charcadet)
OVERWORLD(
sPicTable_Charcadet,
@ -2218,6 +2253,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Armarouge,
.iconSprite = gMonIcon_Armarouge,
.iconPalIndex = 0,
SHADOW(0, 14, SHADOW_SIZE_L)
FOOTPRINT(Armarouge)
OVERWORLD(
sPicTable_Armarouge,
@ -2278,6 +2314,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Ceruledge,
.iconSprite = gMonIcon_Ceruledge,
.iconPalIndex = 2,
SHADOW(9, 14, SHADOW_SIZE_L)
FOOTPRINT(Ceruledge)
OVERWORLD(
sPicTable_Ceruledge,
@ -2341,6 +2378,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Tadbulb,
.iconSprite = gMonIcon_Tadbulb,
.iconPalIndex = 0,
SHADOW(0, 19, SHADOW_SIZE_S)
FOOTPRINT(Tadbulb)
OVERWORLD(
sPicTable_Tadbulb,
@ -2403,6 +2441,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Bellibolt,
.iconSprite = gMonIcon_Bellibolt,
.iconPalIndex = 0,
SHADOW(0, 7, SHADOW_SIZE_M)
FOOTPRINT(Bellibolt)
OVERWORLD(
sPicTable_Bellibolt,
@ -2465,6 +2504,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Wattrel,
.iconSprite = gMonIcon_Wattrel,
.iconPalIndex = 0,
SHADOW(-3, 0, SHADOW_SIZE_S)
FOOTPRINT(Wattrel)
OVERWORLD(
sPicTable_Wattrel,
@ -2527,6 +2567,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Kilowattrel,
.iconSprite = gMonIcon_Kilowattrel,
.iconPalIndex = 0,
SHADOW(-6, 6, SHADOW_SIZE_M)
FOOTPRINT(Kilowattrel)
OVERWORLD(
sPicTable_Kilowattrel,
@ -2589,6 +2630,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Maschiff,
.iconSprite = gMonIcon_Maschiff,
.iconPalIndex = 0,
SHADOW(2, 5, SHADOW_SIZE_L)
FOOTPRINT(Maschiff)
OVERWORLD(
sPicTable_Maschiff,
@ -2651,6 +2693,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Mabosstiff,
.iconSprite = gMonIcon_Mabosstiff,
.iconPalIndex = 0,
SHADOW(1, 5, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Mabosstiff)
OVERWORLD(
sPicTable_Mabosstiff,
@ -2713,6 +2756,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Shroodle,
.iconSprite = gMonIcon_Shroodle,
.iconPalIndex = 0,
SHADOW(0, -6, SHADOW_SIZE_S)
FOOTPRINT(Shroodle)
OVERWORLD(
sPicTable_Shroodle,
@ -2775,6 +2819,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Grafaiai,
.iconSprite = gMonIcon_Grafaiai,
.iconPalIndex = 0,
SHADOW(-2, 5, SHADOW_SIZE_S)
FOOTPRINT(Grafaiai)
OVERWORLD(
sPicTable_Grafaiai,
@ -2837,6 +2882,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Bramblin,
.iconSprite = gMonIcon_Bramblin,
.iconPalIndex = 1,
SHADOW(2, 0, SHADOW_SIZE_S)
FOOTPRINT(Bramblin)
OVERWORLD(
sPicTable_Bramblin,
@ -2899,6 +2945,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Brambleghast,
.iconSprite = gMonIcon_Brambleghast,
.iconPalIndex = 2,
SHADOW(0, 6, SHADOW_SIZE_M)
FOOTPRINT(Brambleghast)
OVERWORLD(
sPicTable_Brambleghast,
@ -2963,6 +3010,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Toedscool,
.iconSprite = gMonIcon_Toedscool,
.iconPalIndex = 0,
SHADOW(-2, 10, SHADOW_SIZE_M)
FOOTPRINT(Toedscool)
OVERWORLD(
sPicTable_Toedscool,
@ -3027,6 +3075,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Toedscruel,
.iconSprite = gMonIcon_Toedscruel,
.iconPalIndex = 0,
SHADOW(2, 8, SHADOW_SIZE_L)
FOOTPRINT(Toedscruel)
OVERWORLD(
sPicTable_Toedscruel,
@ -3089,6 +3138,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Klawf,
.iconSprite = gMonIcon_Klawf,
.iconPalIndex = 0,
SHADOW(0, 0, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Klawf)
OVERWORLD(
sPicTable_Klawf,
@ -3152,6 +3202,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Capsakid,
.iconSprite = gMonIcon_Capsakid,
.iconPalIndex = 1,
SHADOW(2, 0, SHADOW_SIZE_S)
FOOTPRINT(Capsakid)
OVERWORLD(
sPicTable_Capsakid,
@ -3214,6 +3265,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Scovillain,
.iconSprite = gMonIcon_Scovillain,
.iconPalIndex = 1,
SHADOW(6, 11, SHADOW_SIZE_M)
FOOTPRINT(Scovillain)
OVERWORLD(
sPicTable_Scovillain,
@ -3277,6 +3329,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Rellor,
.iconSprite = gMonIcon_Rellor,
.iconPalIndex = 0,
SHADOW(4, -3, SHADOW_SIZE_L)
FOOTPRINT(Rellor)
OVERWORLD(
sPicTable_Rellor,
@ -3339,6 +3392,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Rabsca,
.iconSprite = gMonIcon_Rabsca,
.iconPalIndex = 0,
SHADOW(-2, 14, SHADOW_SIZE_M)
FOOTPRINT(Rabsca)
OVERWORLD(
sPicTable_Rabsca,
@ -3401,6 +3455,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Flittle,
.iconSprite = gMonIcon_Flittle,
.iconPalIndex = 1,
SHADOW(-2, 2, SHADOW_SIZE_S)
FOOTPRINT(Flittle)
OVERWORLD(
sPicTable_Flittle,
@ -3463,6 +3518,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Espathra,
.iconSprite = gMonIcon_Espathra,
.iconPalIndex = 0,
SHADOW(-5, 10, SHADOW_SIZE_M)
FOOTPRINT(Espathra)
OVERWORLD(
sPicTable_Espathra,
@ -3525,6 +3581,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Tinkatink,
.iconSprite = gMonIcon_Tinkatink,
.iconPalIndex = 1,
SHADOW(-3, 1, SHADOW_SIZE_S)
FOOTPRINT(Tinkatink)
OVERWORLD(
sPicTable_Tinkatink,
@ -3588,6 +3645,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Tinkatuff,
.iconSprite = gMonIcon_Tinkatuff,
.iconPalIndex = 1,
SHADOW(-4, 5, SHADOW_SIZE_L)
FOOTPRINT(Tinkatuff)
OVERWORLD(
sPicTable_Tinkatuff,
@ -3650,6 +3708,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Tinkaton,
.iconSprite = gMonIcon_Tinkaton,
.iconPalIndex = 1,
SHADOW(-5, 15, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Tinkaton)
OVERWORLD(
sPicTable_Tinkaton,
@ -3712,6 +3771,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Wiglett,
.iconSprite = gMonIcon_Wiglett,
.iconPalIndex = 0,
NO_SHADOW
FOOTPRINT(Wiglett)
OVERWORLD(
sPicTable_Wiglett,
@ -3773,6 +3833,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Wugtrio,
.iconSprite = gMonIcon_Wugtrio,
.iconPalIndex = 0,
NO_SHADOW
FOOTPRINT(Wugtrio)
OVERWORLD(
sPicTable_Wugtrio,
@ -3836,6 +3897,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Bombirdier,
.iconSprite = gMonIcon_Bombirdier,
.iconPalIndex = 0,
SHADOW(1, 18, SHADOW_SIZE_M)
FOOTPRINT(Bombirdier)
OVERWORLD(
sPicTable_Bombirdier,
@ -3898,6 +3960,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Finizen,
.iconSprite = gMonIcon_Finizen,
.iconPalIndex = 0,
SHADOW(0, 7, SHADOW_SIZE_S)
FOOTPRINT(Finizen)
OVERWORLD(
sPicTable_Finizen,
@ -3960,6 +4023,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_PalafinZero,
.iconSprite = gMonIcon_PalafinZero,
.iconPalIndex = 0,
SHADOW(0, 7, SHADOW_SIZE_S)
FOOTPRINT(Palafin)
OVERWORLD(
sPicTable_PalafinZero,
@ -4022,6 +4086,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_PalafinHero,
.iconSprite = gMonIcon_PalafinHero,
.iconPalIndex = 0,
SHADOW(1, 13, SHADOW_SIZE_M)
FOOTPRINT(Palafin)
OVERWORLD(
sPicTable_PalafinHero,
@ -4086,6 +4151,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Varoom,
.iconSprite = gMonIcon_Varoom,
.iconPalIndex = 2,
SHADOW(0, 0, SHADOW_SIZE_M)
FOOTPRINT(Varoom)
OVERWORLD(
sPicTable_Varoom,
@ -4148,6 +4214,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Revavroom,
.iconSprite = gMonIcon_Revavroom,
.iconPalIndex = 0,
SHADOW(0, 7, SHADOW_SIZE_L)
FOOTPRINT(Revavroom)
OVERWORLD(
sPicTable_Revavroom,
@ -4210,6 +4277,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Cyclizar,
.iconSprite = gMonIcon_Cyclizar,
.iconPalIndex = 1,
SHADOW(-1, 9, SHADOW_SIZE_M)
FOOTPRINT(Cyclizar)
OVERWORLD(
sPicTable_Cyclizar,
@ -4273,6 +4341,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Orthworm,
.iconSprite = gMonIcon_Orthworm,
.iconPalIndex = 0,
SHADOW(6, 10, SHADOW_SIZE_L)
FOOTPRINT(Orthworm)
OVERWORLD(
sPicTable_Orthworm,
@ -4337,6 +4406,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Glimmet,
.iconSprite = gMonIcon_Glimmet,
.iconPalIndex = 0,
SHADOW(-2, 6, SHADOW_SIZE_S)
FOOTPRINT(Glimmet)
OVERWORLD(
sPicTable_Glimmet,
@ -4400,6 +4470,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Glimmora,
.iconSprite = gMonIcon_Glimmora,
.iconPalIndex = 0,
SHADOW(-3, 17, SHADOW_SIZE_M)
FOOTPRINT(Glimmora)
OVERWORLD(
sPicTable_Glimmora,
@ -4462,6 +4533,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Greavard,
.iconSprite = gMonIcon_Greavard,
.iconPalIndex = 0,
SHADOW(3, 2, SHADOW_SIZE_M)
FOOTPRINT(Greavard)
OVERWORLD(
sPicTable_Greavard,
@ -4524,6 +4596,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Houndstone,
.iconSprite = gMonIcon_Houndstone,
.iconPalIndex = 2,
SHADOW(4, 6, SHADOW_SIZE_L)
FOOTPRINT(Houndstone)
OVERWORLD(
sPicTable_Houndstone,
@ -4586,6 +4659,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Flamigo,
.iconSprite = gMonIcon_Flamigo,
.iconPalIndex = 1,
SHADOW(0, 12, SHADOW_SIZE_S)
FOOTPRINT(Flamigo)
OVERWORLD(
sPicTable_Flamigo,
@ -4649,6 +4723,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Cetoddle,
.iconSprite = gMonIcon_Cetoddle,
.iconPalIndex = 0,
SHADOW(2, 0, SHADOW_SIZE_M)
FOOTPRINT(Cetoddle)
OVERWORLD(
sPicTable_Cetoddle,
@ -4711,6 +4786,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Cetitan,
.iconSprite = gMonIcon_Cetitan,
.iconPalIndex = 0,
SHADOW(-1, 10, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Cetitan)
OVERWORLD(
sPicTable_Cetitan,
@ -4774,6 +4850,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Veluza,
.iconSprite = gMonIcon_Veluza,
.iconPalIndex = 1,
SHADOW(0, 5, SHADOW_SIZE_M)
FOOTPRINT(Veluza)
OVERWORLD(
sPicTable_Veluza,
@ -4838,6 +4915,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Dondozo,
.iconSprite = gMonIcon_Dondozo,
.iconPalIndex = 0,
SHADOW(-1, 8, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Dondozo)
OVERWORLD(
sPicTable_Dondozo,
@ -4901,6 +4979,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_TatsugiriCurly,
.iconSprite = gMonIcon_TatsugiriCurly,
.iconPalIndex = 0,
SHADOW(-2, -1, SHADOW_SIZE_S)
FOOTPRINT(Tatsugiri)
OVERWORLD(
sPicTable_TatsugiriCurly,
@ -4962,6 +5041,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_TatsugiriDroopy,
.iconSprite = gMonIcon_TatsugiriDroopy,
.iconPalIndex = 0,
SHADOW(-2, -1, SHADOW_SIZE_S)
FOOTPRINT(Tatsugiri)
OVERWORLD(
sPicTable_TatsugiriDroopy,
@ -5023,6 +5103,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_TatsugiriStretchy,
.iconSprite = gMonIcon_TatsugiriStretchy,
.iconPalIndex = 0,
SHADOW(-2, -1, SHADOW_SIZE_S)
FOOTPRINT(Tatsugiri)
OVERWORLD(
sPicTable_TatsugiriStretchy,
@ -5088,6 +5169,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_GreatTusk,
.iconSprite = gMonIcon_GreatTusk,
.iconPalIndex = 0,
SHADOW(3, 6, SHADOW_SIZE_L)
FOOTPRINT(GreatTusk)
OVERWORLD(
sPicTable_GreatTusk,
@ -5152,6 +5234,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_ScreamTail,
.iconSprite = gMonIcon_ScreamTail,
.iconPalIndex = 0,
SHADOW(0, 3, SHADOW_SIZE_L)
FOOTPRINT(ScreamTail)
OVERWORLD(
sPicTable_ScreamTail,
@ -5216,6 +5299,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_BruteBonnet,
.iconSprite = gMonIcon_BruteBonnet,
.iconPalIndex = 1,
SHADOW(2, 7, SHADOW_SIZE_L)
FOOTPRINT(BruteBonnet)
OVERWORLD(
sPicTable_BruteBonnet,
@ -5283,6 +5367,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_FlutterMane,
.iconSprite = gMonIcon_FlutterMane,
.iconPalIndex = 2,
SHADOW(-2, 20, SHADOW_SIZE_S)
FOOTPRINT(FlutterMane)
OVERWORLD(
sPicTable_FlutterMane,
@ -5346,6 +5431,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_SlitherWing,
.iconSprite = gMonIcon_SlitherWing,
.iconPalIndex = 1,
SHADOW(-5, 13, SHADOW_SIZE_M)
FOOTPRINT(SlitherWing)
OVERWORLD(
sPicTable_SlitherWing,
@ -5410,6 +5496,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_SandyShocks,
.iconSprite = gMonIcon_SandyShocks,
.iconPalIndex = 0,
SHADOW(2, 13, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(SandyShocks)
OVERWORLD(
sPicTable_SandyShocks,
@ -5474,6 +5561,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronTreads,
.iconSprite = gMonIcon_IronTreads,
.iconPalIndex = 1,
SHADOW(4, 3, SHADOW_SIZE_L)
FOOTPRINT(IronTreads)
OVERWORLD(
sPicTable_IronTreads,
@ -5538,6 +5626,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronBundle,
.iconSprite = gMonIcon_IronBundle,
.iconPalIndex = 0,
SHADOW(-1, 6, SHADOW_SIZE_M)
FOOTPRINT(IronBundle)
OVERWORLD(
sPicTable_IronBundle,
@ -5602,6 +5691,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronHands,
.iconSprite = gMonIcon_IronHands,
.iconPalIndex = 0,
SHADOW(-2, 8, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(IronHands)
OVERWORLD(
sPicTable_IronHands,
@ -5667,6 +5757,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronJugulis,
.iconSprite = gMonIcon_IronJugulis,
.iconPalIndex = 0,
SHADOW(0, 15, SHADOW_SIZE_M)
FOOTPRINT(IronJugulis)
OVERWORLD(
sPicTable_IronJugulis,
@ -5732,6 +5823,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronMoth,
.iconSprite = gMonIcon_IronMoth,
.iconPalIndex = 3,
SHADOW(-4, 14, SHADOW_SIZE_M)
FOOTPRINT(IronMoth)
OVERWORLD(
sPicTable_IronMoth,
@ -5796,6 +5888,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronThorns,
.iconSprite = gMonIcon_IronThorns,
.iconPalIndex = 1,
SHADOW(-9, 12, SHADOW_SIZE_L)
FOOTPRINT(IronThorns)
OVERWORLD(
sPicTable_IronThorns,
@ -5859,6 +5952,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Frigibax,
.iconSprite = gMonIcon_Frigibax,
.iconPalIndex = 0,
SHADOW(0, 7, SHADOW_SIZE_S)
FOOTPRINT(Frigibax)
OVERWORLD(
sPicTable_Frigibax,
@ -5921,6 +6015,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Arctibax,
.iconSprite = gMonIcon_Arctibax,
.iconPalIndex = 0,
SHADOW(4, 8, SHADOW_SIZE_M)
FOOTPRINT(Arctibax)
OVERWORLD(
sPicTable_Arctibax,
@ -5982,6 +6077,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Baxcalibur,
.iconSprite = gMonIcon_Baxcalibur,
.iconPalIndex = 0,
SHADOW(5, 12, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Baxcalibur)
OVERWORLD(
sPicTable_Baxcalibur,
@ -6044,6 +6140,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_GimmighoulChest,
.iconSprite = gMonIcon_GimmighoulChest,
.iconPalIndex = 0,
SHADOW(0, 7, SHADOW_SIZE_M)
FOOTPRINT(GimmighoulChest)
OVERWORLD(
sPicTable_GimmighoulChest,
@ -6106,6 +6203,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_GimmighoulRoaming,
.iconSprite = gMonIcon_GimmighoulRoaming,
.iconPalIndex = 0,
SHADOW(-1, -4, SHADOW_SIZE_S)
FOOTPRINT(GimmighoulRoaming)
.levelUpLearnset = sGimmighoulLevelUpLearnset,
.teachableLearnset = sGimmighoulTeachableLearnset,
@ -6160,6 +6258,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Gholdengo,
.iconSprite = gMonIcon_Gholdengo,
.iconPalIndex = 0,
SHADOW(3, 13, SHADOW_SIZE_M)
FOOTPRINT(Gholdengo)
OVERWORLD(
sPicTable_Gholdengo,
@ -6222,6 +6321,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_WoChien,
.iconSprite = gMonIcon_WoChien,
.iconPalIndex = 1,
SHADOW(0, 11, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(WoChien)
OVERWORLD(
sPicTable_WoChien,
@ -6286,6 +6386,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_ChienPao,
.iconSprite = gMonIcon_ChienPao,
.iconPalIndex = 0,
SHADOW(-4, 8, SHADOW_SIZE_L)
FOOTPRINT(ChienPao)
OVERWORLD(
sPicTable_ChienPao,
@ -6350,6 +6451,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_TingLu,
.iconSprite = gMonIcon_TingLu,
.iconPalIndex = 0,
SHADOW(12, 13, SHADOW_SIZE_L)
FOOTPRINT(TingLu)
OVERWORLD(
sPicTable_TingLu,
@ -6415,6 +6517,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_ChiYu,
.iconSprite = gMonIcon_ChiYu,
.iconPalIndex = 0,
SHADOW(0, 16, SHADOW_SIZE_S)
FOOTPRINT(ChiYu)
OVERWORLD(
sPicTable_ChiYu,
@ -6481,6 +6584,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_RoaringMoon,
.iconSprite = gMonIcon_RoaringMoon,
.iconPalIndex = 0,
SHADOW(3, 9, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(RoaringMoon)
OVERWORLD(
sPicTable_RoaringMoon,
@ -6544,6 +6648,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronValiant,
.iconSprite = gMonIcon_IronValiant,
.iconPalIndex = 1,
SHADOW(2, 14, SHADOW_SIZE_L)
FOOTPRINT(IronValiant)
OVERWORLD(
sPicTable_IronValiant,
@ -6607,6 +6712,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Koraidon,
.iconSprite = gMonIcon_Koraidon,
.iconPalIndex = 0,
SHADOW(-3, 13, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(Koraidon)
OVERWORLD(
sPicTable_Koraidon,
@ -6672,6 +6778,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Miraidon,
.iconSprite = gMonIcon_Miraidon,
.iconPalIndex = 2,
SHADOW(10, 14, SHADOW_SIZE_L)
FOOTPRINT(Miraidon)
OVERWORLD(
sPicTable_Miraidon,
@ -6737,6 +6844,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_WalkingWake,
.iconSprite = gMonIcon_WalkingWake,
.iconPalIndex = 2,
SHADOW(2, 13, SHADOW_SIZE_L)
FOOTPRINT(WalkingWake)
OVERWORLD(
sPicTable_WalkingWake,
@ -6800,6 +6908,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronLeaves,
.iconSprite = gMonIcon_IronLeaves,
.iconPalIndex = 1,
SHADOW(2, 11, SHADOW_SIZE_M)
FOOTPRINT(IronLeaves)
OVERWORLD(
sPicTable_IronLeaves,
@ -6864,6 +6973,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Poltchageist,
.iconSprite = gMonIcon_Poltchageist,
.iconPalIndex = 1,
SHADOW(-1, 14, SHADOW_SIZE_S)
FOOTPRINT(Poltchageist)
OVERWORLD(
sPicTable_Poltchageist,
@ -6925,6 +7035,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Poltchageist,
.iconSprite = gMonIcon_Poltchageist,
.iconPalIndex = 1,
SHADOW(-1, 14, SHADOW_SIZE_S)
FOOTPRINT(Poltchageist)
OVERWORLD(
sPicTable_Poltchageist,
@ -6987,6 +7098,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Sinistcha,
.iconSprite = gMonIcon_Sinistcha,
.iconPalIndex = 1,
SHADOW(0, 11, SHADOW_SIZE_M)
FOOTPRINT(Sinistcha)
OVERWORLD(
sPicTable_Sinistcha,
@ -7047,6 +7159,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Sinistcha,
.iconSprite = gMonIcon_Sinistcha,
.iconPalIndex = 1,
SHADOW(0, 11, SHADOW_SIZE_M)
FOOTPRINT(Sinistcha)
OVERWORLD(
sPicTable_Sinistcha,
@ -7109,6 +7222,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Okidogi,
.iconSprite = gMonIcon_Okidogi,
.iconPalIndex = 1,
SHADOW(-1, 11, SHADOW_SIZE_L)
FOOTPRINT(Okidogi)
OVERWORLD(
sPicTable_Okidogi,
@ -7173,6 +7287,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Munkidori,
.iconSprite = gMonIcon_Munkidori,
.iconPalIndex = 0,
SHADOW(1, 8, SHADOW_SIZE_S)
FOOTPRINT(Munkidori)
OVERWORLD(
sPicTable_Munkidori,
@ -7237,6 +7352,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Fezandipiti,
.iconSprite = gMonIcon_Fezandipiti,
.iconPalIndex = 0,
SHADOW(-3, 10, SHADOW_SIZE_M)
FOOTPRINT(Fezandipiti)
OVERWORLD(
sPicTable_Fezandipiti,
@ -7298,6 +7414,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Ogerpon##Form1##Form2, \
.iconSprite = gMonIcon_Ogerpon##Form1##Mask, \
.iconPalIndex = iconpalette, \
SHADOW(7, 13, SHADOW_SIZE_L) \
FOOTPRINT(Ogerpon) \
OVERWORLD( \
sPicTable_Ogerpon##Form1##Form2, \
@ -7313,7 +7430,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.formChangeTable = sOgerponFormChangeTable, \
.isLegendary = TRUE, \
.isTeraForm = isTeraform, \
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT, \
.perfectIVCount = LEGENDARY_PERFECT_IV_COUNT, \
}
[SPECIES_OGERPON_TEAL_MASK] = OGERPON_SPECIES_INFO(Teal, Mask, TYPE_GRASS, ABILITY_DEFIANT, BODY_COLOR_GREEN, 1, FALSE),
@ -7378,6 +7495,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_GougingFire,
.iconSprite = gMonIcon_GougingFire,
.iconPalIndex = 5,
SHADOW(-1, 6, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(GougingFire)
OVERWORLD(
sPicTable_GougingFire,
@ -7442,6 +7560,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_RagingBolt,
.iconSprite = gMonIcon_RagingBolt,
.iconPalIndex = 2,
SHADOW(4, 14, SHADOW_SIZE_L)
FOOTPRINT(RagingBolt)
OVERWORLD(
sPicTable_RagingBolt,
@ -7505,6 +7624,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronBoulder,
.iconSprite = gMonIcon_IronBoulder,
.iconPalIndex = 5,
SHADOW(4, 7, SHADOW_SIZE_XL_BATTLE_ONLY)
FOOTPRINT(IronBoulder)
OVERWORLD(
sPicTable_IronBoulder,
@ -7569,6 +7689,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_IronCrown,
.iconSprite = gMonIcon_IronCrown,
.iconPalIndex = 3,
SHADOW(0, 14, SHADOW_SIZE_L)
FOOTPRINT(IronCrown)
OVERWORLD(
sPicTable_IronCrown,
@ -7634,6 +7755,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_TerapagosNormal,
.iconSprite = gMonIcon_TerapagosNormal,
.iconPalIndex = 0,
SHADOW(3, 13, SHADOW_SIZE_L)
FOOTPRINT(TerapagosNormal)
OVERWORLD(
sPicTable_TerapagosNormal,
@ -7702,6 +7824,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_TerapagosTerastal,
.iconSprite = gMonIcon_TerapagosTerastal,
.iconPalIndex = 0,
SHADOW(-4, 4, SHADOW_SIZE_L)
FOOTPRINT(TerapagosTerastal)
OVERWORLD(
sPicTable_TerapagosTerastal,
@ -7768,6 +7891,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_TerapagosStellar,
.iconSprite = gMonIcon_TerapagosStellar,
.iconPalIndex = 0,
SHADOW(0, 12, SHADOW_SIZE_L)
FOOTPRINT(TerapagosStellar)
.isLegendary = TRUE,
.isTeraForm = TRUE,
@ -7828,6 +7952,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] =
.shinyPalette = gMonShinyPalette_Pecharunt,
.iconSprite = gMonIcon_Pecharunt,
.iconPalIndex = 0,
SHADOW(2, 1, SHADOW_SIZE_L)
FOOTPRINT(Pecharunt)
OVERWORLD(
sPicTable_Pecharunt,

View file

@ -1387,6 +1387,7 @@ const u32 gBattleAnimSpritePal_Protect[] = INCBIN_U32("graphics/battle_anims/spr
const u32 gBattleAnimBackgroundImageMuddyWater_Pal[] = INCBIN_U32("graphics/battle_anims/backgrounds/water_muddy.gbapal.lz");
const u32 gEnemyMonShadow_Gfx[] = INCBIN_U32("graphics/battle_interface/enemy_mon_shadow.4bpp.lz");
const u32 gEnemyMonShadowsSized_Gfx[] = INCBIN_U32("graphics/battle_interface/enemy_mon_shadows_sized.4bpp.lz");
const u32 gBattleInterface_BallStatusBarGfx[] = INCBIN_U32("graphics/battle_interface/ball_status_bar.4bpp.lz");

View file

@ -4,8 +4,6 @@
#include "battle_anim.h"
#include "battle_gfx_sfx_util.h"
#include "bg.h"
#include "constants/rgb.h"
#include "constants/songs.h"
#include "data.h"
#include "decompress.h"
#include "event_object_movement.h"
@ -38,11 +36,15 @@
#include "text_window.h"
#include "trainer_pokemon_sprites.h"
#include "constants/global.h"
#include "constants/items.h"
#include "constants/event_objects.h"
#include "constants/rgb.h"
#include "constants/songs.h"
extern const struct BattleBackground sBattleTerrainTable[];
extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadow;
extern const struct CompressedSpriteSheet gSpriteSheet_EnemyShadowsSized;
extern const struct SpriteTemplate gSpriteTemplate_EnemyShadow;
extern const struct SpritePalette sSpritePalettes_HealthBoxHealthBar[2];
extern const struct UCoords8 sBattlerCoords[][MAX_BATTLERS_COUNT] ;
@ -396,6 +398,13 @@ const u8 gBattleBackgroundTerrainNames[][26] =
[BATTLE_TERRAIN_BUILDING] = _("NORMAL - BUILDING "),
[BATTLE_TERRAIN_PLAIN] = _("NORMAL - PLAIN "),
};
const u8 sShadowSizeLabels[][4] =
{
[SHADOW_SIZE_S] = _(" S"),
[SHADOW_SIZE_M] = _(" M"),
[SHADOW_SIZE_L] = _(" L"),
[SHADOW_SIZE_XL_BATTLE_ONLY] = _(" XL"),
};
//Function declarations
static void PrintDigitChars(struct PokemonSpriteVisualizer *data);
static void SetUpModifyArrows(struct PokemonSpriteVisualizer *data);
@ -426,17 +435,27 @@ static void PrintInstructionsOnWindow(struct PokemonSpriteVisualizer *data)
{
u8 fontId = 0;
u8 x = 2;
u8 textInstructions[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Exit {A_BUTTON} Submenu 1$");
u8 textInstructionsGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Exit {A_BUTTON} Submenu 1$");
u8 textInstructionsSubmenuOne[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back {A_BUTTON} Submenu 2$");
u8 textInstructionsSubmenuOneGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back {A_BUTTON} Submenu 2$");
u8 textInstructions[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Exit {A_BUTTON} Anims and BG$");
u8 textInstructionsGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Exit {A_BUTTON} Anims and BG$");
u8 textInstructionsSubmenuOne[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back {A_BUTTON} Sprite Coords$");
u8 textInstructionsSubmenuOneGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back {A_BUTTON} Sprite Coords$");
#if B_ENEMY_MON_SHADOW_STYLE >= GEN_4
u8 textInstructionsSubmenuTwo[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back {A_BUTTON} Shadow Coords$");
u8 textInstructionsSubmenuTwoGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back {A_BUTTON} Shadow Coords$");
u8 textInstructionsSubmenuThree[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back");
u8 textInstructionsSubmenuThreeGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back$");
#else
u8 textInstructionsSubmenuTwo[] = _("{START_BUTTON} Shiny\n{B_BUTTON} Back$");
u8 textInstructionsSubmenuTwoGender[] = _("{START_BUTTON} Shiny {SELECT_BUTTON} Gender\n{B_BUTTON} Back$");
u8 textInstructionsSubmenuThree[] = _("$");
u8 textInstructionsSubmenuThreeGender[] = _("$");
#endif
u8 textBottom[] = _("BACK:\nFRONT:\nBG:$");
u8 textBottomForms[] = _("BACK:\nFRONT:\nBG:\nFORMS:$");
u8 textBottomSubmenuTwo[] = _("B coords:\nF coords:\nF elev:");
u8 textBottomSubmenuThree[] = _("X coords:\nY coords:\nSize:");
u16 species = data->modifyArrows.currValue;
u8 textL[] = _("{L_BUTTON}");
@ -465,11 +484,18 @@ static void PrintInstructionsOnWindow(struct PokemonSpriteVisualizer *data)
else
AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuTwo, x, 0, 0, NULL);
}
else if (data->currentSubmenu == 3)
{
if (SpeciesHasGenderDifferences(species))
AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuThreeGender, x, 0, 0, NULL);
else
AddTextPrinterParameterized(WIN_INSTRUCTIONS, fontId, textInstructionsSubmenuThree, x, 0, 0, NULL);
}
CopyWindowToVram(WIN_INSTRUCTIONS, COPYWIN_FULL);
//Bottom left text
FillWindowPixelBuffer(WIN_BOTTOM_LEFT, PIXEL_FILL(0));
if (data->currentSubmenu != 2)
if (data->currentSubmenu < 2)
{
AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textL, 30, 0, 0, NULL);
AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textR, 30, 12, 0, NULL);
@ -478,8 +504,10 @@ static void PrintInstructionsOnWindow(struct PokemonSpriteVisualizer *data)
else
AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textBottom, 0, 0, 0, NULL);
}
else
else if (data->currentSubmenu == 2)
AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textBottomSubmenuTwo, 0, 0, 0, NULL);
else if (data->currentSubmenu == 3)
AddTextPrinterParameterized(WIN_BOTTOM_LEFT, fontId, textBottomSubmenuThree, 0, 0, 0, NULL);
}
static void VBlankCB(void)
@ -588,6 +616,7 @@ static void SetArrowInvisibility(struct PokemonSpriteVisualizer *data)
gSprites[data->yPosModifyArrows.arrowSpriteId[0]].invisible = TRUE;
break;
case 2:
case 3:
gSprites[data->modifyArrows.arrowSpriteId[0]].invisible = TRUE;
gSprites[data->modifyArrows.arrowSpriteId[1]].invisible = TRUE;
gSprites[data->optionArrows.arrowSpriteId[0]].invisible = TRUE;
@ -735,6 +764,20 @@ static void ResetOffsetSpriteValues(struct PokemonSpriteVisualizer *data)
data->offsetsSpriteValues.offset_front_elevation = 0;
}
static void ResetShadowSettings(struct PokemonSpriteVisualizer *data, u16 species)
{
if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3)
return;
data->shadowSettings.definedX = gSpeciesInfo[species].enemyShadowXOffset;
data->shadowSettings.definedY = gSpeciesInfo[species].enemyShadowYOffset;
data->shadowSettings.definedSize = gSpeciesInfo[species].enemyShadowSize;
data->shadowSettings.overrideX = data->shadowSettings.definedX;
data->shadowSettings.overrideY = data->shadowSettings.definedY;
data->shadowSettings.overrideSize = data->shadowSettings.definedSize;
}
static u8 GetBattlerSpriteFinal_YCustom(u16 species, s8 offset_picCoords, s8 offset_elevation)
{
u16 offset;
@ -758,18 +801,39 @@ static u8 GetBattlerSpriteFinal_YCustom(u16 species, s8 offset_picCoords, s8 off
static void UpdateShadowSpriteInvisible(struct PokemonSpriteVisualizer *data)
{
if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
return;
if (data->constSpriteValues.frontElevation + data->offsetsSpriteValues.offset_front_elevation == 0)
gSprites[data->frontShadowSpriteId].invisible = TRUE;
gSprites[data->frontShadowSpriteIdPrimary].invisible = TRUE;
else
gSprites[data->frontShadowSpriteId].invisible = FALSE;
gSprites[data->frontShadowSpriteIdPrimary].invisible = FALSE;
}
#define tFrontSpriteId data[0]
#define tSpriteSide data[1]
#define tShadowXOffset data[2]
#define tShadowYOffset data[3]
#define SPRITE_SIDE_LEFT 0
#define SPRITE_SIDE_RIGHT 1
static void SpriteCB_EnemyShadowCustom(struct Sprite *shadowSprite)
{
u8 frontSpriteId = shadowSprite->data[0];
u8 frontSpriteId = shadowSprite->tFrontSpriteId;
struct Sprite *battlerSprite = &gSprites[frontSpriteId];
shadowSprite->x = battlerSprite->x;
s8 xOffset = 0, yOffset = 0;
if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
{
xOffset = shadowSprite->tShadowXOffset + (shadowSprite->tSpriteSide == SPRITE_SIDE_LEFT ? -16 : 16);
yOffset = shadowSprite->tShadowYOffset + 16;
shadowSprite->y = battlerSprite->y + yOffset;
}
shadowSprite->x = battlerSprite->x + xOffset;
shadowSprite->x2 = battlerSprite->x2;
}
@ -801,25 +865,60 @@ static void SpriteCB_Follower(struct Sprite *sprite)
sprite->animDelayCounter--;
}
}
static void LoadAndCreateEnemyShadowSpriteCustom(struct PokemonSpriteVisualizer *data, u16 species)
{
u8 x, y;
bool8 invisible = FALSE;
species = SanitizeSpeciesId(species);
if (gSpeciesInfo[species].enemyMonElevation == 0)
invisible = TRUE;
LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow);
LoadSpritePalette(&sSpritePalettes_HealthBoxHealthBar[0]);
x = sBattlerCoords[0][1].x;
y = sBattlerCoords[0][1].y;
data->frontShadowSpriteId = CreateSprite(&gSpriteTemplate_EnemyShadow, x, y + 29, 0xC8);
gSprites[data->frontShadowSpriteId].data[0] = data->frontspriteId;
if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
{
invisible = gSpeciesInfo[species].suppressEnemyShadow;
gSprites[data->frontShadowSpriteId].callback = SpriteCB_EnemyShadowCustom;
gSprites[data->frontShadowSpriteId].oam.priority = 0;
gSprites[data->frontShadowSpriteId].invisible = invisible;
LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadowsSized);
LoadSpritePalette(&sSpritePalettes_HealthBoxHealthBar[0]);
u8 x = sBattlerCoords[0][1].x;
u8 y = sBattlerCoords[0][1].y;
s8 xOffset = data->shadowSettings.overrideX;
s8 yOffset = data->shadowSettings.overrideY;
u8 size = data->shadowSettings.overrideSize;
data->frontShadowSpriteIdPrimary = CreateSprite(&gSpriteTemplate_EnemyShadow, x, y, 0xC8);
gSprites[data->frontShadowSpriteIdPrimary].tFrontSpriteId = data->frontspriteId;
gSprites[data->frontShadowSpriteIdPrimary].tSpriteSide = SPRITE_SIDE_LEFT;
gSprites[data->frontShadowSpriteIdPrimary].tShadowXOffset = (u8)xOffset;
gSprites[data->frontShadowSpriteIdPrimary].tShadowYOffset = (u8)yOffset;
gSprites[data->frontShadowSpriteIdPrimary].callback = SpriteCB_EnemyShadowCustom;
gSprites[data->frontShadowSpriteIdPrimary].oam.priority = 0;
gSprites[data->frontShadowSpriteIdPrimary].oam.tileNum += 8 * size;
gSprites[data->frontShadowSpriteIdPrimary].invisible = invisible;
data->frontShadowSpriteIdSecondary = CreateSprite(&gSpriteTemplate_EnemyShadow, x, y, 0xC8);
gSprites[data->frontShadowSpriteIdSecondary].tFrontSpriteId = data->frontspriteId;
gSprites[data->frontShadowSpriteIdSecondary].tSpriteSide = SPRITE_SIDE_RIGHT;
gSprites[data->frontShadowSpriteIdSecondary].tShadowXOffset = (u8)xOffset;
gSprites[data->frontShadowSpriteIdSecondary].tShadowYOffset = (u8)yOffset;
gSprites[data->frontShadowSpriteIdSecondary].callback = SpriteCB_EnemyShadowCustom;
gSprites[data->frontShadowSpriteIdSecondary].oam.priority = 0;
gSprites[data->frontShadowSpriteIdSecondary].oam.tileNum += (8 * size) + 4;
gSprites[data->frontShadowSpriteIdSecondary].invisible = invisible;
}
else
{
if (gSpeciesInfo[species].enemyMonElevation == 0)
invisible = TRUE;
LoadCompressedSpriteSheet(&gSpriteSheet_EnemyShadow);
LoadSpritePalette(&sSpritePalettes_HealthBoxHealthBar[0]);
u8 x = sBattlerCoords[0][1].x;
u8 y = sBattlerCoords[0][1].y;
data->frontShadowSpriteIdPrimary = CreateSprite(&gSpriteTemplate_EnemyShadow, x, y + 29, 0xC8);
gSprites[data->frontShadowSpriteIdPrimary].data[0] = data->frontspriteId;
gSprites[data->frontShadowSpriteIdPrimary].callback = SpriteCB_EnemyShadowCustom;
gSprites[data->frontShadowSpriteIdPrimary].oam.priority = 0;
gSprites[data->frontShadowSpriteIdPrimary].invisible = invisible;
}
}
//Battle background functions
@ -1044,6 +1143,55 @@ static void UpdateYPosOffsetText(struct PokemonSpriteVisualizer *data)
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_new_val, y, 0, NULL);
}
#define ABS(val) (val < 0 ? val * -1 : val)
#define ITOA_SIGNED(buf, val) \
{ \
buf[0] = val < 0 ? CHAR_HYPHEN : CHAR_SPACER; \
ConvertIntToDecimalStringN(&text[1], ABS(val), STR_CONV_MODE_LEFT_ALIGN, 2); \
}
static void UpdateShadowSettingsText(struct PokemonSpriteVisualizer *data)
{
if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3)
return;
u8 text[16];
u8 fontId = 0;
u8 textConst[] = _("const val:");
u8 textNew[] = _("new val:");
u8 x_const_val = 50;
u8 x_new_text = 70;
u8 x_new_val = 110;
u8 y = 0;
FillWindowPixelBuffer(WIN_BOTTOM_RIGHT, PIXEL_FILL(0));
// X offset
y = 0;
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textConst, 0, y, 0, NULL);
ITOA_SIGNED(text, data->shadowSettings.definedX);
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_const_val, y, 0, NULL);
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textNew, x_new_text, y, 0, NULL);
ITOA_SIGNED(text, data->shadowSettings.overrideX);
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_new_val, y, 0, NULL);
// Y offset
y = 12;
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textConst, 0, y, 0, NULL);
ITOA_SIGNED(text, data->shadowSettings.definedY);
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_const_val, y, 0, NULL);
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textNew, x_new_text, y, 0, NULL);
ITOA_SIGNED(text, data->shadowSettings.overrideY);
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, text, x_new_val, y, 0, NULL);
// Shadow Size
y = 24;
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textConst, 0, y, 0, NULL);
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, sShadowSizeLabels[data->shadowSettings.definedSize], x_const_val, y, 0, NULL);
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, textNew, x_new_text, y, 0, NULL);
AddTextPrinterParameterized(WIN_BOTTOM_RIGHT, fontId, sShadowSizeLabels[data->shadowSettings.overrideSize], x_new_val, y, 0, NULL);
}
static void ResetPokemonSpriteVisualizerWindows(void)
{
u8 i;
@ -1334,6 +1482,7 @@ static void UpdateSubmenuOneOptionValue(u8 taskId, bool8 increment)
data->animIdFront = gSpeciesInfo[modArrows->currValue].frontAnimId;
UpdateMonAnimNames(taskId);
ResetOffsetSpriteValues(data);
ResetShadowSettings(data, modArrows->currValue);
UpdateBattlerValue(data);
ReloadPokemonSprites(data);
@ -1421,6 +1570,79 @@ static void UpdateSubmenuTwoOptionValue(u8 taskId, bool8 increment)
UpdateYPosOffsetText(data);
}
static void UpdateShadowSettingsValue(u8 taskId, bool8 increment)
{
if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3)
return;
struct PokemonSpriteVisualizer *data = GetStructPtr(taskId);
u8 option = data->submenuYpos[2];
s8 *offset;
s16 *leftTarget, *rightTarget;
if (option == 0)
{
offset = &data->shadowSettings.overrideX;
leftTarget = &gSprites[data->frontShadowSpriteIdPrimary].tShadowXOffset;
rightTarget = &gSprites[data->frontShadowSpriteIdSecondary].tShadowXOffset;
}
else
{
offset = &data->shadowSettings.overrideY;
leftTarget = &gSprites[data->frontShadowSpriteIdPrimary].tShadowYOffset;
rightTarget = &gSprites[data->frontShadowSpriteIdSecondary].tShadowYOffset;
}
*offset = *offset + (increment ? 1 : -1);
if (*offset > 20)
*offset = -20;
else if (*offset < -20)
*offset = 20;
UpdateShadowSettingsText(data);
*leftTarget = (s16)*offset;
*rightTarget = (s16)*offset;
}
static void UpdateShadowSizeValue(u8 taskId, bool8 increment)
{
if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3)
return;
struct PokemonSpriteVisualizer *data = GetStructPtr(taskId);
s8 update;
if (increment)
{
if (data->shadowSettings.overrideSize == SHADOW_SIZE_XL_BATTLE_ONLY)
{
update = -data->shadowSettings.overrideSize;
data->shadowSettings.overrideSize = SHADOW_SIZE_S;
}
else
{
update = 1;
data->shadowSettings.overrideSize += 1;
}
}
else
{
if (data->shadowSettings.overrideSize == SHADOW_SIZE_S)
{
update = SHADOW_SIZE_XL_BATTLE_ONLY;
data->shadowSettings.overrideSize = update;
}
else
{
update = -1;
data->shadowSettings.overrideSize -= 1;
}
}
UpdateShadowSettingsText(data);
gSprites[data->frontShadowSpriteIdPrimary].oam.tileNum += (8 * update);
gSprites[data->frontShadowSpriteIdSecondary].oam.tileNum += (8 * update);
}
#define READ_PTR_FROM_TASK(taskId, dataId) \
(void *)( \
((u16)(gTasks[taskId].data[dataId]) | \
@ -1517,6 +1739,7 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId)
data->isFemale = FALSE;
PrintDigitChars(data);
UpdateBattlerValue(data);
ResetShadowSettings(data, data->currentmonId);
ReloadPokemonSprites(data);
data->animIdBack = GetSpeciesBackAnimSet(data->currentmonId) + 1;
data->animIdFront = gSpeciesInfo[data->currentmonId].frontAnimId;
@ -1533,6 +1756,7 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId)
data->isFemale = FALSE;
PrintDigitChars(data);
UpdateBattlerValue(data);
ResetShadowSettings(data, data->currentmonId);
ReloadPokemonSprites(data);
data->animIdBack = GetSpeciesBackAnimSet(data->currentmonId) + 1;
data->animIdFront = gSpeciesInfo[data->currentmonId].frontAnimId;
@ -1571,6 +1795,8 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId)
SetArrowInvisibility(data);
SetConstSpriteValues(data);
UpdateYPosOffsetText(data);
gSprites[data->followerspriteId].invisible = TRUE;
}
else if (JOY_NEW(B_BUTTON))
{
@ -1621,13 +1847,22 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId)
}
else if (data->currentSubmenu == 2) //Submenu 2
{
if (JOY_NEW(B_BUTTON))
if (JOY_NEW(A_BUTTON) && B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
{
data->currentSubmenu = 3;
PrintInstructionsOnWindow(data);
SetArrowInvisibility(data);
UpdateShadowSettingsText(data);
}
else if (JOY_NEW(B_BUTTON))
{
data->currentSubmenu = 1;
SetArrowInvisibility(data);
PrintInstructionsOnWindow(data);
UpdateMonAnimNames(taskId);
gSprites[data->followerspriteId].invisible = FALSE;
}
else if (JOY_NEW(DPAD_DOWN))
{
@ -1657,6 +1892,50 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId)
UpdateSubmenuTwoOptionValue(taskId, TRUE);
}
}
else if (data->currentSubmenu == 3) // Submenu 3
{
if (JOY_NEW(B_BUTTON))
{
data->currentSubmenu = 2;
PrintInstructionsOnWindow(data);
SetArrowInvisibility(data);
SetConstSpriteValues(data);
UpdateYPosOffsetText(data);
}
else if (JOY_NEW(DPAD_DOWN))
{
data->submenuYpos[2] += 1;
if (data->submenuYpos[2] >= 3)
data->submenuYpos[2] = 0;
data->yPosModifyArrows.currentDigit = data->submenuYpos[2];
gSprites[data->yPosModifyArrows.arrowSpriteId[0]].y = OPTIONS_ARROW_Y + data->yPosModifyArrows.currentDigit * 12;
}
else if (JOY_NEW(DPAD_UP))
{
if (data->submenuYpos[2] == 0)
data->submenuYpos[2] = 2;
else
data->submenuYpos[2] -= 1;
data->yPosModifyArrows.currentDigit = data->submenuYpos[2];
gSprites[data->yPosModifyArrows.arrowSpriteId[0]].y = OPTIONS_ARROW_Y + data->yPosModifyArrows.currentDigit * 12;
}
else if (JOY_NEW(DPAD_LEFT))
{
if (data->submenuYpos[2] < 2)
UpdateShadowSettingsValue(taskId, FALSE);
else
UpdateShadowSizeValue(taskId, FALSE);
}
else if (JOY_NEW(DPAD_RIGHT))
{
if (data->submenuYpos[2] < 2)
UpdateShadowSettingsValue(taskId, TRUE);
else
UpdateShadowSizeValue(taskId, TRUE);
}
}
}
#undef sDelay
#undef sAnimId
@ -1674,6 +1953,10 @@ static void ReloadPokemonSprites(struct PokemonSpriteVisualizer *data)
DestroySprite(&gSprites[data->iconspriteId]);
DestroySprite(&gSprites[data->followerspriteId]);
DestroySprite(&gSprites[data->frontShadowSpriteIdPrimary]);
if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4)
DestroySprite(&gSprites[data->frontShadowSpriteIdSecondary]);
FreeMonSpritesGfx();
ResetSpriteData();
ResetPaletteFade();