mirror of
https://github.com/pret/pmd-red.git
synced 2026-10-02 22:08:24 -05:00
more decomp work
This commit is contained in:
@@ -41,6 +41,40 @@ typedef struct ActionContainer
|
||||
/* 0x14 */ Position itemTargetPosition;
|
||||
} ActionContainer;
|
||||
|
||||
typedef struct HiddenPower
|
||||
{
|
||||
/* 0x0 */ s16 hiddenPowerBasePower;
|
||||
/* 0x2 */ u8 hiddenPowerType;
|
||||
} HiddenPower;
|
||||
|
||||
typedef struct JoinedAt
|
||||
{
|
||||
/* 0x0 */ u8 joinedAt;
|
||||
/* 0x1 */ u8 unk1;
|
||||
} JoinedAt;
|
||||
|
||||
|
||||
typedef struct AITarget
|
||||
{
|
||||
/* 0x0 */ u8 aiObjective;
|
||||
/* 0x1 */ bool8 aiNotNextToTarget;
|
||||
/* 0x2 */ bool8 aiTargetingEnemy;
|
||||
/* 0x3 */ bool8 aiTurningAround;
|
||||
/* 0x4 */ u16 aiTargetSpawnGenID;
|
||||
/* 0x8 */ struct Entity *aiTarget;
|
||||
/* 0xC */ u8 fillC[4];
|
||||
/* 0x10 */ Position aiTargetPos;
|
||||
|
||||
} AITarget;
|
||||
|
||||
|
||||
typedef struct Sleep
|
||||
{
|
||||
/* 0x0 */ u8 sleep;
|
||||
/* 0x1 */ u8 sleepTurns;
|
||||
} Sleep;
|
||||
|
||||
|
||||
// size: 0x208
|
||||
typedef struct EntityInfo
|
||||
{
|
||||
@@ -82,24 +116,15 @@ typedef struct EntityInfo
|
||||
/* 0x2C */ s32 offensiveMultipliers[2];
|
||||
// Index 0 is Defense. Index 1 is Special Defense.
|
||||
/* 0x34 */ s32 defensiveMultipliers[2];
|
||||
/* 0x3C */ s16 hiddenPowerBasePower;
|
||||
/* 0x3E */ u8 hiddenPowerType;
|
||||
u8 fill3F;
|
||||
/* 0x40 */ u8 joinedAt; // Uses the dungeon index in dungeon.h.
|
||||
/* 0x3C */ HiddenPower hiddenPower;
|
||||
/* 0x40 */ JoinedAt joinedAt; // Uses the dungeon index in dungeon.h.
|
||||
/* 0x44 */ ActionContainer action;
|
||||
/* 0x5C */ u8 types[2];
|
||||
/* 0x5E */ u8 abilities[2];
|
||||
/* 0x60 */ Item heldItem;
|
||||
u8 fill64[0x68 - 0x64];
|
||||
/* 0x68 */ Position prevPos[NUM_PREV_POS];
|
||||
/* 0x78 */ u8 aiObjective;
|
||||
/* 0x79 */ bool8 aiNotNextToTarget;
|
||||
/* 0x7A */ bool8 aiTargetingEnemy;
|
||||
/* 0x7B */ bool8 aiTurningAround;
|
||||
/* 0x7C */ u16 aiTargetSpawnGenID;
|
||||
/* 0x80 */ struct Entity *aiTarget;
|
||||
u8 fill84[0x88 - 0x84];
|
||||
/* 0x88 */ Position aiTargetPos;
|
||||
/* 0x78 */ AITarget aiTarget;
|
||||
// Bitwise flags corresponding to selected IQ skills.
|
||||
/* 0x8C */ u8 IQSkillMenuFlags[4]; // IQ skills selected in the IQ skills menu.
|
||||
/* 0x90 */ u8 IQSkillFlags[4];
|
||||
@@ -112,9 +137,7 @@ typedef struct EntityInfo
|
||||
u8 fillA5[0xA8 - 0xA5];
|
||||
// Statuses are split into groups based on which ones can't overlap.
|
||||
// See status.h for which statuses are in each group.
|
||||
/* 0xA8 */ u8 sleep;
|
||||
/* 0xA9 */ u8 sleepTurns;
|
||||
u8 fillAA[0xAC - 0xAA];
|
||||
/* 0xA8 */ Sleep sleep;
|
||||
/* 0xAC */ u8 nonVolatileStatus;
|
||||
/* 0xAD */ u8 nonVolatileStatusTurns;
|
||||
/* 0xAE */ u8 nonVolatileStatusDamageCountdown;
|
||||
|
||||
@@ -150,22 +150,25 @@ typedef struct Dungeon
|
||||
/* 0x3904 */ s16 unk3904;
|
||||
u8 fill3906[0x3A08 - 0x3906];
|
||||
/* 0x3A08 */ u8 unk3A08;
|
||||
u8 fill3A09[0x3A0C - 0x3A09];
|
||||
/* 0x3A09 */ u8 unk3A09;
|
||||
/* 0x3A0A */ u8 unk3A0A;
|
||||
/* 0x3A0B */ u8 unk3A0B;
|
||||
u8 unk3A0C;
|
||||
/* 0x3A0D */ u8 unk3A0D;
|
||||
/* 0x3A0E */ s16 tileset;
|
||||
/* 0x3A10 */ u16 unk3A10;
|
||||
u8 fill3A10[0x3A14 - 0x3A12];
|
||||
/* 0x3A10 */ s16 unk3A10;
|
||||
/* 0x3A12 */ s16 unk3A12;
|
||||
/* 0x3A14 */ s16 bossBattleIndex;
|
||||
/* 0x3A16 */ s16 unk3A16;
|
||||
/* 0x3A18 */ Tile tiles[DUNGEON_MAX_SIZE_Y][DUNGEON_MAX_SIZE_X];
|
||||
u8 fillE218[0xE21C - 0xE218];
|
||||
u16 unkE21C;
|
||||
u16 unkE21E;
|
||||
Position unkE220[4];
|
||||
u8 unkE230[0xE23C - 0xE230];
|
||||
s16 unkE23C; // x coord of some kind
|
||||
s16 unkE23E; // y coord of some kind
|
||||
u8 fillE240[0xE264 - 0xE240];
|
||||
Position unkE218;
|
||||
Position unkE21C;
|
||||
Position unkE220[8];
|
||||
u32 unkE240;
|
||||
u8 fillE244[0xE250 - 0xE244];
|
||||
u32 unkE250;
|
||||
u8 fillE254[0xE260 - 0xE254];
|
||||
u32 unkE260;
|
||||
/* 0xE264 */ u8 weather; // Uses the weather constants in weather.h.
|
||||
u8 unkE265; // Uses the weather constants in weather.h
|
||||
/* 0xE266 */ u8 weatherDamageCounter; // Timer for applying sandstorm/hail damage periodically.
|
||||
@@ -181,7 +184,8 @@ typedef struct Dungeon
|
||||
/* 0xE279 */ bool8 nullifyWeather; // Air Lock and Cloud Nine toggle this to disable weather effects
|
||||
u8 fillE27A[0xE27C - 0xE27A];
|
||||
/* 0xE27C */ Tile unkE27C[8][8];
|
||||
/* 0xE87C */ u8 fillE87C[68];
|
||||
/* 0xE87C */ u8 unkE87C[8][8];
|
||||
u32 fillE8BC;
|
||||
/* 0xE8C0 */ Tile *tilePointers[DUNGEON_MAX_SIZE_Y][DUNGEON_MAX_SIZE_X];
|
||||
u8 unk104C0;
|
||||
/* 0x104C4 */ RoomData roomData[MAX_ROOM_COUNT];
|
||||
@@ -233,7 +237,10 @@ typedef struct Dungeon
|
||||
u8 unk1820E;
|
||||
u8 unk1820F;
|
||||
/* 0x18210 */ bool8 hallucinating; // Displays Substitute and flower sprites when the player has the Cross-Eyed status.
|
||||
u8 fill18211[0x18217 - 0x18211];
|
||||
u8 unk18211;
|
||||
u8 unk18212;
|
||||
u8 unk18213;
|
||||
u8 fill18214[3];
|
||||
u8 unk18217;
|
||||
u8 fill18218[0x1821A - 0x18218];
|
||||
u8 unk1821A;
|
||||
|
||||
Reference in New Issue
Block a user