Shipwright/soh/src/overlays/actors/ovl_En_Firefly/z_en_firefly.h

36 lines
909 B
C

#ifndef Z_EN_FIREFLY_H
#define Z_EN_FIREFLY_H
#include "ultra64.h"
#include "global.h"
struct EnFirefly;
typedef void (*EnFireflyActionFunc)(struct EnFirefly*, GlobalContext*);
typedef struct EnFirefly {
/* 0x0000 */ Actor actor;
/* 0x014C */ Vec3f bodyPartsPos[3];
/* 0x0170 */ SkelAnime skelAnime;
/* 0x01B4 */ EnFireflyActionFunc actionFunc;
/* 0x01B8 */ u8 auraType;
/* 0x01B9 */ u8 onFire;
/* 0x01BA */ s16 timer;
/* 0x01BC */ s16 targetPitch;
/* 0x01BE */ Vec3s jointTable[28];
/* 0x0266 */ Vec3s morphTable[28];
/* 0x0310 */ f32 maxAltitude;
/* 0x0314 */ ColliderJntSph collider;
/* 0x0344 */ ColliderJntSphElement colliderItems[1];
} EnFirefly; // size = 0x0374
typedef enum {
/* 0 */ KEESE_FIRE_FLY,
/* 1 */ KEESE_FIRE_PERCH,
/* 2 */ KEESE_NORMAL_FLY,
/* 3 */ KEESE_NORMAL_PERCH,
/* 4 */ KEESE_ICE_FLY
} KeeseType;
#endif