Shipwright/soh/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.h

33 lines
968 B
C

#ifndef Z_BG_HAKA_TRAP_H
#define Z_BG_HAKA_TRAP_H
#include "ultra64.h"
#include "global.h"
typedef enum {
/* 0x00 */ HAKA_TRAP_GUILLOTINE_SLOW,
/* 0x01 */ HAKA_TRAP_SPIKED_BOX,
/* 0x02 */ HAKA_TRAP_SPIKED_WALL,
/* 0x03 */ HAKA_TRAP_SPIKED_WALL_2,
/* 0x04 */ HAKA_TRAP_PROPELLER,
/* 0x05 */ HAKA_TRAP_GUILLOTINE_FAST
} HakaTrapType;
struct BgHakaTrap;
typedef void (*BgHakaTrapActionFunc)(struct BgHakaTrap*, GlobalContext*);
typedef struct BgHakaTrap {
/* 0x0000 */ DynaPolyActor dyna;
/* 0x0164 */ BgHakaTrapActionFunc actionFunc;
/* 0x0168 */ u8 timer;
/* 0x0169 */ u8 unk_169;
/* 0x016A */ s16 unk_16A; // used as boolean for HAKA_TRAP_GUILLOTINE_SLOW/FAST, s16 for HAKA_TRAP_SPIKED_BOX
/* 0x016C */ Vec3f unk_16C;
/* 0x0178 */ ColliderCylinder colliderCylinder;
/* 0x01C4 */ ColliderTris colliderSpikes;
/* 0x01E4 */ ColliderTrisElement colliderSpikesItem[2];
} BgHakaTrap; // size = 0x029C
#endif