mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-08-13 17:03:47 -04:00
39cc86c260
subrepo: subdir: "soh" merged: "ba904bbd0" upstream: origin: "https://github.com/HarbourMasters/soh.git" branch: "master" commit: "ba904bbd0" git-subrepo: version: "0.4.1" origin: "???" commit: "???"
73 lines
2.2 KiB
C
73 lines
2.2 KiB
C
#ifndef Z_EN_GELDB_H
|
|
#define Z_EN_GELDB_H
|
|
|
|
#include "ultra64.h"
|
|
#include "global.h"
|
|
|
|
struct EnGeldB;
|
|
|
|
typedef enum {
|
|
/* 0x00 */ GELDB_LIMB_NONE,
|
|
/* 0x01 */ GELDB_LIMB_ROOT,
|
|
/* 0x02 */ GELDB_LIMB_TORSO,
|
|
/* 0x03 */ GELDB_LIMB_NECK,
|
|
/* 0x04 */ GELDB_LIMB_PONYTAIL,
|
|
/* 0x05 */ GELDB_LIMB_VEIL,
|
|
/* 0x06 */ GELDB_LIMB_HEAD,
|
|
/* 0x07 */ GELDB_LIMB_R_UPPER_ARM,
|
|
/* 0x08 */ GELDB_LIMB_R_FOREARM,
|
|
/* 0x09 */ GELDB_LIMB_R_WRIST,
|
|
/* 0x0A */ GELDB_LIMB_R_HAND,
|
|
/* 0x0B */ GELDB_LIMB_R_SWORD,
|
|
/* 0x0C */ GELDB_LIMB_L_UPPER_ARM,
|
|
/* 0x0D */ GELDB_LIMB_L_FOREARM,
|
|
/* 0x0E */ GELDB_LIMB_L_WRIST,
|
|
/* 0x0F */ GELDB_LIMB_L_HAND,
|
|
/* 0x10 */ GELDB_LIMB_L_SWORD,
|
|
/* 0x11 */ GELDB_LIMB_L_THIGH,
|
|
/* 0x12 */ GELDB_LIMB_L_SHIN,
|
|
/* 0x13 */ GELDB_LIMB_L_FOOT,
|
|
/* 0x14 */ GELDB_LIMB_R_THIGH,
|
|
/* 0x15 */ GELDB_LIMB_R_SHIN,
|
|
/* 0x16 */ GELDB_LIMB_R_FOOT,
|
|
/* 0x17 */ GELDB_LIMB_WAIST,
|
|
/* 0x18 */ GELDB_LIMB_MAX
|
|
} EnGeldBLimb;
|
|
|
|
typedef void (*EnGeldBActionFunc)(struct EnGeldB*, GlobalContext*);
|
|
|
|
typedef struct EnGeldB {
|
|
/* 0x0000 */ Actor actor;
|
|
/* 0x014C */ Vec3s bodyPartsPos[10];
|
|
/* 0x0188 */ SkelAnime skelAnime;
|
|
/* 0x01CC */ Vec3s jointTable[GELDB_LIMB_MAX];
|
|
/* 0x025C */ Vec3s morphTable[GELDB_LIMB_MAX];
|
|
/* 0x02EC */ s32 action;
|
|
/* 0x02F0 */ char unk_2F0[4];
|
|
/* 0x02F4 */ EnGeldBActionFunc actionFunc;
|
|
/* 0x02F8 */ s16 unkTimer;
|
|
/* 0x02FA */ s16 lookTimer;
|
|
/* 0x02FC */ s16 iceTimer;
|
|
/* 0x02FE */ u8 damageEffect;
|
|
/* 0x0300 */ s32 timer;
|
|
/* 0x0304 */ f32 approachRate;
|
|
/* 0x0308 */ char unk_308[4];
|
|
/* 0x030C */ f32 unkFloat;
|
|
/* 0x0310 */ s16 swordState;
|
|
/* 0x0312 */ s16 spinAttackState;
|
|
/* 0x0314 */ s16 keyFlag;
|
|
/* 0x0316 */ char unk_316[2];
|
|
/* 0x0318 */ s16 invisible;
|
|
/* 0x031A */ u8 blinkState;
|
|
/* 0x031C */ s32 blureIndex;
|
|
/* 0x0320 */ ColliderCylinder bodyCollider;
|
|
/* 0x036C */ ColliderQuad swordCollider;
|
|
/* 0x03EC */ ColliderTris blockCollider;
|
|
/* 0x040C */ ColliderTrisElement blockElements[2];
|
|
/* 0x04C4 */ Vec3f rightFootPos;
|
|
/* 0x04D0 */ Vec3f leftFootPos;
|
|
/* 0x04DC */ Vec3s headRot;
|
|
} EnGeldB; // size = 0x04E4
|
|
|
|
#endif
|