Some pokemon_icon clean up

This commit is contained in:
GriffinR 2021-10-17 22:04:08 -04:00
parent a950f9c771
commit ed6fdd743f
3 changed files with 23 additions and 26 deletions

View File

@ -4,7 +4,7 @@
extern const u8 gMonIconPaletteIndices[];
const u8 *GetMonIconTiles(u16 species, bool32);
void sub_80D304C(u16 offset);
void TryLoadAllMonIconPalettesAtOffset(u16 offset);
u8 GetValidMonIconPalIndex(u16 species);
const u8 *GetMonIconPtr(u16 speciesId, u32 personality, u32 frameNo);
const u16 *GetValidMonIconPalettePtr(u16 speciesId);
@ -20,7 +20,6 @@ void FreeAndDestroyMonIconSprite(struct Sprite *sprite);
u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, u32 personality, bool32 handleDeoxys);
u8 UpdateMonIconFrame(struct Sprite *sprite);
void LoadMonIconPalette(u16 species);
void sub_80D328C(struct Sprite *sprite);
void SpriteCB_MonIcon(struct Sprite *sprite);
void SetPartyHPBarSprite(struct Sprite *sprite, u8 animNum);
u8 GetMonIconPaletteIndexFromSpecies(u16 species);

View File

@ -19,10 +19,8 @@ struct MonIconSpriteTemplate
u16 paletteTag;
};
// static functions
static u8 CreateMonIconSprite(struct MonIconSpriteTemplate *, s16, s16, u8);
// .rodata
static void FreeAndDestroyMonIconSprite_(struct Sprite *sprite);
const u8 *const gMonIconTable[] =
{
@ -925,7 +923,7 @@ const struct SpritePalette gMonIconPaletteTable[] =
{ gMonIconPalettes[5], POKE_ICON_BASE_PAL_TAG + 5 },
};
const struct OamData sMonIconOamData =
static const struct OamData sMonIconOamData =
{
.y = 0,
.affineMode = ST_OAM_AFFINE_OFF,
@ -976,7 +974,7 @@ static const union AnimCmd sAnim_4[] =
ANIMCMD_JUMP(0),
};
const union AnimCmd *const sMonIconAnims[] =
static const union AnimCmd *const sMonIconAnims[] =
{
sAnim_0,
sAnim_1,
@ -997,34 +995,34 @@ static const union AffineAnimCmd sAffineAnim_1[] =
AFFINEANIMCMD_END,
};
const union AffineAnimCmd *const sMonIconAffineAnims[] =
static const union AffineAnimCmd *const sMonIconAffineAnims[] =
{
sAffineAnim_0,
sAffineAnim_1,
};
const u16 sSpriteImageSizes[3][4] =
static const u16 sSpriteImageSizes[3][4] =
{
[ST_OAM_SQUARE] =
{
[SPRITE_SIZE(8x8)] = 0x20,
[SPRITE_SIZE(16x16)] = 0x80,
[SPRITE_SIZE(32x32)] = 0x200,
[SPRITE_SIZE(64x64)] = 0x800,
[SPRITE_SIZE(8x8)] = 8 * 8 / 2,
[SPRITE_SIZE(16x16)] = 16 * 16 / 2,
[SPRITE_SIZE(32x32)] = 32 * 32 / 2,
[SPRITE_SIZE(64x64)] = 64 * 64 / 2,
},
[ST_OAM_H_RECTANGLE] =
{
[SPRITE_SIZE(16x8)] = 0x40,
[SPRITE_SIZE(32x8)] = 0x80,
[SPRITE_SIZE(32x16)] = 0x100,
[SPRITE_SIZE(64x32)] = 0x400,
[SPRITE_SIZE(16x8)] = 16 * 8 / 2,
[SPRITE_SIZE(32x8)] = 32 * 8 / 2,
[SPRITE_SIZE(32x16)] = 32 * 16 / 2,
[SPRITE_SIZE(64x32)] = 64 * 32 / 2,
},
[ST_OAM_V_RECTANGLE] =
{
[SPRITE_SIZE(8x16)] = 0x40,
[SPRITE_SIZE(8x32)] = 0x80,
[SPRITE_SIZE(16x32)] = 0x100,
[SPRITE_SIZE(32x64)] = 0x400,
[SPRITE_SIZE(8x16)] = 8 * 16 / 2,
[SPRITE_SIZE(8x32)] = 8 * 32 / 2,
[SPRITE_SIZE(16x32)] = 16 * 32 / 2,
[SPRITE_SIZE(32x64)] = 32 * 64 / 2,
},
};
@ -1131,7 +1129,7 @@ const u8 *GetMonIconPtr(u16 species, u32 personality, bool32 handleDeoxys)
void FreeAndDestroyMonIconSprite(struct Sprite *sprite)
{
sub_80D328C(sprite);
FreeAndDestroyMonIconSprite_(sprite);
}
void LoadMonIconPalettes(void)
@ -1198,7 +1196,7 @@ const u8* GetMonIconTiles(u16 species, bool32 handleDeoxys)
return iconSprite;
}
void sub_80D304C(u16 offset)
void TryLoadAllMonIconPalettesAtOffset(u16 offset)
{
s32 i;
const struct SpritePalette* monIconPalettePtr;
@ -1206,7 +1204,7 @@ void sub_80D304C(u16 offset)
if (offset <= 0xA0)
{
monIconPalettePtr = gMonIconPaletteTable;
for(i = 5; i >= 0; i--)
for(i = ARRAY_COUNT(gMonIconPaletteTable) - 1; i >= 0; i--)
{
LoadPalette(monIconPalettePtr->data, offset, 0x20);
offset += 0x10;
@ -1294,7 +1292,7 @@ static u8 CreateMonIconSprite(struct MonIconSpriteTemplate *iconTemplate, s16 x,
return spriteId;
}
void sub_80D328C(struct Sprite *sprite)
static void FreeAndDestroyMonIconSprite_(struct Sprite *sprite)
{
struct SpriteFrameImage image = { NULL, sSpriteImageSizes[sprite->oam.shape][sprite->oam.size] };
sprite->images = &image;

View File

@ -8177,7 +8177,7 @@ static bool8 MultiMove_Start(void)
{
case 0:
HideBg(0);
sub_80D304C(0x80);
TryLoadAllMonIconPalettesAtOffset(0x80);
sMultiMove->state++;
break;
case 1: