pmd-red/include/structs/str_mon_portrait.h
2025-11-29 18:33:17 -05:00

34 lines
1023 B
C

#ifndef GUARD_STR_MON_PORTRAIT_H
#define GUARD_STR_MON_PORTRAIT_H
#include "structs/rgb.h"
#include "structs/str_file_system.h"
#include "structs/str_position.h"
// size: 0x8
typedef struct PortraitGfxSub
{
/* 0x0 */ const RGB_Struct *pal;
/* 0x4 */ const u8 *gfx;
} PortraitGfxSub;
// size: 0x68
typedef struct PortraitGfx
{
// NOTE: The actual number of sprites is different depending on pokemon. For example, starters have 12 sprites, while most legendaries only 1. Unused sprites are set as NULL, NULL.
/* 0x0 */ PortraitGfxSub sprites[13];
} PortraitGfx;
// Size: R=0x10 | B=0xF
typedef struct MonPortraitMsg
{
/* 0x0 */ OpenedFile *faceFile;
/* 0x4 */ PortraitGfx *faceData;
/* 0x8 */ DungeonPos pos;
/* 0xC */ u8 spriteId; // Which mon's sprite to use. For example Kecleon has multiple sprites depending on whether it's green or purple.
/* 0xD */ bool8 flip; // Whether the mon's sprite is flipped.
/* 0xE */ u8 unkE;
} MonPortraitMsg;
#endif // GUARD_STR_MON_PORTRAIT_H