2022-03-21 21:51:23 -04:00
|
|
|
#ifndef Z_BG_JYA_MEGAMI_H
|
|
|
|
#define Z_BG_JYA_MEGAMI_H
|
|
|
|
|
|
|
|
#include "ultra64.h"
|
|
|
|
#include "global.h"
|
|
|
|
|
|
|
|
struct BgJyaMegami;
|
|
|
|
|
|
|
|
typedef void (*BgJyaMegamiActionFunc)(struct BgJyaMegami*, GlobalContext*);
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
/* 0x00 */ Vec3f pos;
|
|
|
|
/* 0x0C */ Vec3f vel;
|
|
|
|
/* 0x18 */ s16 rotVelX;
|
|
|
|
/* 0x1A */ s16 rotVelY;
|
2022-08-04 17:32:23 -04:00
|
|
|
/* 0x1C */ u32 epoch;
|
2022-08-03 22:36:13 -04:00
|
|
|
} BgJyaMegamiPiece; // size = 0x20
|
2022-03-21 21:51:23 -04:00
|
|
|
|
|
|
|
typedef struct BgJyaMegami {
|
|
|
|
/* 0x0000 */ DynaPolyActor dyna;
|
|
|
|
/* 0x0164 */ BgJyaMegamiActionFunc actionFunc;
|
|
|
|
/* 0x0168 */ ColliderJntSph collider;
|
|
|
|
/* 0x0188 */ ColliderJntSphElement colliderItem;
|
|
|
|
/* 0x01C8 */ s16 lightTimer;
|
|
|
|
/* 0x01CA */ s16 explosionTimer;
|
|
|
|
/* 0x01CC */ s16 crumbleIndex;
|
|
|
|
/* 0x01D0 */ BgJyaMegamiPiece pieces[13];
|
|
|
|
} BgJyaMegami; // size = 0x033C
|
|
|
|
|
|
|
|
#endif
|