mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-08-13 17:03:47 -04:00
facd1723f8
Co-authored-by: briaguya <briaguya@alice>
63 lines
1.7 KiB
C
63 lines
1.7 KiB
C
#ifndef Z_EN_GO_H
|
|
#define Z_EN_GO_H
|
|
|
|
#include "ultra64.h"
|
|
#include "global.h"
|
|
|
|
struct EnGo;
|
|
|
|
typedef void (*EnGoActionFunc)(struct EnGo*, GlobalContext*);
|
|
typedef u16 (*callback1_80A3ED24)(GlobalContext*, struct EnGo*);
|
|
typedef s16 (*callback2_80A3ED24)(GlobalContext*, struct EnGo*);
|
|
|
|
// WIP type docs
|
|
// /* 0x00 */ GORON1_CITY_LINK,
|
|
// /* 0x10 */ GORON1_FIRE_GENERIC,
|
|
// /* 0x20 */ GORON1_DMT_DC_ENTRANCE,
|
|
// /* 0x30 */ GORON1_DMT_ROLLING_SMALL,
|
|
// /* 0x40 */ GORON1_DMT_BOMB_FLOWER,
|
|
// /* 0x50 */ GORON1_CITY_ENTRANCE,
|
|
// /* 0x60 */ GORON1_CITY_ISLAND,
|
|
// /* 0x70 */ GORON1_CITY_LOST_WOODS,
|
|
// /* 0x80 */ // Not Used
|
|
// /* 0x90 */ GORON1_DMT_BIGGORON,
|
|
|
|
|
|
typedef struct {
|
|
/* 0x0000 */ u8 type;
|
|
/* 0x0001 */ u8 timer;
|
|
/* 0x0002 */ u8 initialTimer;
|
|
/* 0x0004 */ f32 scale;
|
|
/* 0x0008 */ f32 scaleStep;
|
|
/* 0x000C */ Color_RGBA8 color;
|
|
/* 0x0010 */ char unk_10[4];
|
|
/* 0x0014 */ Vec3f pos;
|
|
/* 0x0020 */ Vec3f velocity;
|
|
/* 0x002C */ Vec3f accel;
|
|
u32 epoch;
|
|
} EnGoEffect; // size = 0x38
|
|
|
|
typedef struct EnGo {
|
|
/* 0x0000 */ Actor actor;
|
|
/* 0x014C */ SkelAnime skelAnime;
|
|
/* 0x0190 */ EnGoActionFunc actionFunc;
|
|
/* 0x0194 */ ColliderCylinder collider;
|
|
/* 0x01E0 */ struct_80034A14_arg1 unk_1E0;
|
|
/* 0x0208 */ char unk_208[0x4];
|
|
/* 0x020C */ s16 unk_20C;
|
|
/* 0x020E */ s16 unk_20E;
|
|
/* 0x0210 */ s16 unk_210;
|
|
/* 0x0212 */ s16 unk_212;
|
|
/* 0x0214 */ s16 unk_214;
|
|
/* 0x0216 */ s16 unk_216;
|
|
/* 0x0218 */ s16 unk_218;
|
|
/* 0x021A */ s16 unk_21A;
|
|
/* 0x021C */ s16 unk_21C;
|
|
/* 0x021E */ s16 unk_21E;
|
|
/* 0x0220 */ s16 jointTable[18];
|
|
/* 0x0244 */ s16 morphTable[18];
|
|
/* 0x0268 */ EnGoEffect dustEffects[20];
|
|
} EnGo; // size = 0x06C8
|
|
|
|
#endif
|