mirror of https://github.com/zeldaret/tmc.git
87 lines
1.9 KiB
C
87 lines
1.9 KiB
C
// clang-format off
|
|
|
|
#ifndef LINK_H
|
|
#define LINK_H
|
|
|
|
#include "global.h"
|
|
#include "entity.h"
|
|
|
|
typedef struct {
|
|
/*0x00*/ u8 filler[2];
|
|
/*0x02*/ u8 jumpStatus;
|
|
/*0x03*/ u8 filler2[2];
|
|
/*0x05*/ u8 heldObject;
|
|
/*0x06*/ u8 pushedObject;
|
|
/*0x07*/ u8 unk;
|
|
/*0x08*/ u16 unk2;
|
|
/*0x0a*/ u8 unk3;
|
|
/*0x0b*/ u8 keepFacing;
|
|
/*0x0c*/ u8 linkAction;
|
|
/*0x0d*/ u8 filler3[2];
|
|
/*0x0f*/ u8 hurtBlinkSpeed;
|
|
/*0x10*/ u8 filler4[4];
|
|
/*0x14*/ u16 filler5[3];
|
|
/*0x1a*/ u8 filler6[2];
|
|
/*0x1c*/ u8 field_0x1c;
|
|
/*0x1d*/ u8 filler9[5];
|
|
/*0x22*/ u16 filler7[2];
|
|
/*0x26*/ u8 swimState;
|
|
/*0x27*/ u8 filler8[5];
|
|
/*0x2c*/ u8* unk4;
|
|
/*0x30*/ union {
|
|
/* */ u32 all;
|
|
/* */ struct {
|
|
/* */ u32 filler9 : 3;
|
|
/* */ u32 noMinishCap : 1;
|
|
/* */ u32 pullingState : 1;
|
|
/* */ u32 windyState : 1;
|
|
/* */ u32 filler10 : 4;
|
|
/* */ u32 slipperyState : 1;
|
|
/* */ u32 filler11 : 5;
|
|
/* */ u32 filler11b : 16;
|
|
/* */ } PACKED b;
|
|
/* */ } flags;
|
|
/*0x34*/ u8 filler12[6];
|
|
/*0x3a*/ u16 unk5;
|
|
/*0x3c*/ u8 filler13[2];
|
|
/*0x3e*/ u8 swordGoldParticle : 1;
|
|
/* */ u8 swordBlueParticle : 1;
|
|
/* */ u8 filler14 : 6;
|
|
/*0x3f*/ u8 unk6;
|
|
/*0x40*/ u8 filler15[75];
|
|
/*0x8b*/ u8 unk7;
|
|
/*0x8c*/ u32 filler16[7];
|
|
/*0xa8*/ u8 filler17[3];
|
|
/*0xab*/ u8 unk71;
|
|
/*0xac*/ u32 unk8;
|
|
} LinkState;
|
|
|
|
|
|
typedef struct {
|
|
u8 walletType;
|
|
u8 heartPieces;
|
|
u8 health;
|
|
u8 maxHealth;
|
|
u8 bombCount;
|
|
u8 arrowCount;
|
|
u8 bombBagType;
|
|
u8 quiverType;
|
|
u8 filler[4];
|
|
u8 itemOnA;
|
|
u8 itemOnB;
|
|
u8 filler2[10];
|
|
u16 rupees;
|
|
u8 filler3[12];
|
|
} Stats;
|
|
|
|
extern LinkState gLinkState;
|
|
extern Stats gStats;
|
|
extern Entity gLinkEntity;
|
|
|
|
|
|
extern u32 GetInventoryValue(u32);
|
|
extern s32 ModHealth(s32);
|
|
|
|
#endif
|
|
|
|
// clang-format on
|