summaryrefslogtreecommitdiff
path: root/src/overlays/actors/ovl_En_Maruta/z_en_maruta.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/overlays/actors/ovl_En_Maruta/z_en_maruta.h')
-rw-r--r--src/overlays/actors/ovl_En_Maruta/z_en_maruta.h28
1 files changed, 15 insertions, 13 deletions
diff --git a/src/overlays/actors/ovl_En_Maruta/z_en_maruta.h b/src/overlays/actors/ovl_En_Maruta/z_en_maruta.h
index 0216ba383..1c7b5defc 100644
--- a/src/overlays/actors/ovl_En_Maruta/z_en_maruta.h
+++ b/src/overlays/actors/ovl_En_Maruta/z_en_maruta.h
@@ -7,24 +7,26 @@ struct EnMaruta;
typedef void (*EnMarutaActionFunc)(struct EnMaruta*, PlayState*);
-#define ENMARUTA_GET_FF(thisx) ((thisx)->params & 0xFF)
-#define ENMARUTA_GET_FF00(thisx) (((thisx)->params & 0xFF00) >> 8)
+#define ENMARUTA_GET_TYPE(thisx) ((thisx)->params & 0xFF)
+#define ENMARUTA_GET_SHAPE(thisx) (((thisx)->params & 0xFF00) >> 8)
+
+#define ENMARUTA_INIT_ON_FLOOR 0xFF // Hypothetical only
typedef struct EnMaruta {
/* 0x000 */ Actor actor;
/* 0x144 */ EnMarutaActionFunc actionFunc;
/* 0x148 */ ColliderCylinder collider;
- /* 0x194 */ Vec3f unk_194;
- /* 0x1A0 */ Vec3f* unk_1A0;
- /* 0x1A4 */ Vec3f unk_1A4[8];
- /* 0x204 */ Vec3f unk_204;
- /* 0x210 */ s32 unk_210;
- /* 0x214 */ s32 unk_214;
- /* 0x218 */ s16 unk_218;
- /* 0x21A */ s16 unk_21A;
- /* 0x21C */ s16 unk_21C;
- /* 0x21E */ s16 unk_21E;
- /* 0x220 */ s16 unk_220;
+ /* 0x194 */ Vec3f recoilSpinAxis;
+ /* 0x1A0 */ Vec3f* relativeHitboxPoints;
+ /* 0x1A4 */ Vec3f hitboxPoints[8];
+ /* 0x204 */ Vec3f centerPos;
+ /* 0x210 */ s32 shape;
+ /* 0x214 */ s32 lowestPointIndex;
+ /* 0x218 */ s16 recoilSpinAngle;
+ /* 0x21A */ s16 recoilSpinRate;
+ /* 0x21C */ s16 endingBounces;
+ /* 0x21E */ s16 timer;
+ /* 0x220 */ s16 isRetracting;
} EnMaruta; // size = 0x224
#endif // Z_EN_MARUTA_H