mirror of
https://github.com/zeldaret/tp
synced 2026-05-23 06:54:28 -04:00
d_a_npc cleanup (#2466)
* d_a_npc first cleanup pass * more d_a_npc cleanup
This commit is contained in:
+186
-119
@@ -5,6 +5,7 @@
|
||||
#include "SSystem/SComponent/c_math.h"
|
||||
#include "Z2AudioLib/Z2Creature.h"
|
||||
#include "d/actor/d_a_player.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "d/d_path.h"
|
||||
#include "d/d_msg_flow.h"
|
||||
#include "d/d_particle_copoly.h"
|
||||
@@ -354,28 +355,34 @@ struct daNpcT_motionAnmData_c {
|
||||
class daNpcT_Hermite_c {
|
||||
public:
|
||||
/* 0x00 */ f32 field_0x00;
|
||||
/* 0x04 */ f32 field_0x04;
|
||||
/* 0x08 */ f32 field_0x08;
|
||||
/* 0x0C */ f32 field_0x0c;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
/* 0x04 */ f32 H00;
|
||||
/* 0x08 */ f32 H01;
|
||||
/* 0x0C */ f32 H10;
|
||||
/* 0x10 */ f32 H11;
|
||||
|
||||
/* 8014CBAC */ virtual ~daNpcT_Hermite_c() {}
|
||||
|
||||
f32 GetH00() { return H00; }
|
||||
f32 GetH01() { return H01; }
|
||||
f32 GetH10() { return H10; }
|
||||
f32 GetH11() { return H11; }
|
||||
|
||||
// constants might be wrong, regalloc
|
||||
void Set(f32 param_1) {
|
||||
field_0x00 = param_1;
|
||||
f32 sqr = param_1 * param_1;
|
||||
f32 cubed = param_1 * sqr;
|
||||
field_0x04 = 1.0f + (2.0f * cubed - 3.0f * sqr);
|
||||
field_0x08 = -2.0f * cubed + 3.0f * sqr;
|
||||
field_0x0c = param_1 + (cubed - 2.0f * sqr);
|
||||
field_0x10 = cubed - sqr;
|
||||
|
||||
H00 = 1.0f + (2.0f * cubed - 3.0f * sqr);
|
||||
H01 = -2.0f * cubed + 3.0f * sqr;
|
||||
H10 = param_1 + (cubed - 2.0f * sqr);
|
||||
H11 = cubed - sqr;
|
||||
}
|
||||
};
|
||||
|
||||
class daNpcT_Path_c {
|
||||
public:
|
||||
/* 0x00 */ dPath* mpRoomPath;
|
||||
/* 0x00 */ dPath* mPathInfo;
|
||||
/* 0x04 */ cXyz mPosition;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
@@ -395,26 +402,38 @@ public:
|
||||
/* 80145FB4 */ int getDstPosH(cXyz, cXyz*, int, int);
|
||||
/* 80146188 */ int chkPassed1(cXyz, int);
|
||||
/* 801464D8 */ int chkPassed2(cXyz, cXyz*, int, int);
|
||||
|
||||
daNpcT_Path_c() {
|
||||
initialize();
|
||||
}
|
||||
|
||||
virtual ~daNpcT_Path_c() {}
|
||||
|
||||
inline Vec getPntPos(int i_idx) { return mpRoomPath->m_points[i_idx].m_position; }
|
||||
Vec getPntPos(int i_idx) { return mPathInfo->m_points[i_idx].m_position; }
|
||||
|
||||
int chkClose() {
|
||||
int roomPath = dPath_ChkClose(mpRoomPath);
|
||||
return roomPath;
|
||||
BOOL rt = dPath_ChkClose(mPathInfo);
|
||||
return rt;
|
||||
}
|
||||
|
||||
bool chkReverse() { return mDirection == 1; }
|
||||
|
||||
int getNumPnts() {
|
||||
dPath* path = mpRoomPath;
|
||||
dPath* path = mPathInfo;
|
||||
return path->m_num;
|
||||
}
|
||||
|
||||
u16& getIdx() { return mIdx; }
|
||||
const u16 getIdx() { return mIdx; }
|
||||
|
||||
void onReverse() {
|
||||
mDirection = 1;
|
||||
field_0x1E = 1;
|
||||
}
|
||||
|
||||
void offReverse() {
|
||||
mDirection = 0;
|
||||
field_0x1E = 1;
|
||||
}
|
||||
};
|
||||
|
||||
class mDoExt_McaMorfSO;
|
||||
@@ -465,10 +484,10 @@ public:
|
||||
/* 0xD7E */ csXyz field_0xd7e;
|
||||
/* 0xD84 */ csXyz field_0xd84;
|
||||
/* 0xD8A */ csXyz field_0xd8a;
|
||||
/* 0xD90 */ fpc_ProcID mItemId;
|
||||
/* 0xD90 */ fpc_ProcID mItemPartnerId;
|
||||
/* 0xD94 */ u32 mShadowKey;
|
||||
/* 0xD98 */ u32 mAnmFlags;
|
||||
/* 0xD9C */ u32 mMsgId;
|
||||
/* 0xD9C */ fpc_ProcID mMsgId;
|
||||
/* 0xDA0 */ u32 mHitodamaPrtclKey[2];
|
||||
/* 0xDA8 */ u32 mPolSound;
|
||||
/* 0xDAC */ int mStaffId;
|
||||
@@ -541,6 +560,7 @@ public:
|
||||
mMotionSeqMngr(i_motionSequenceData, i_motionStepNum) {
|
||||
initialize();
|
||||
}
|
||||
|
||||
/* 80147FA4 */ static void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*);
|
||||
/* 80147FD4 */ static void* srchActor(void*, void*);
|
||||
/* 80148058 */ J3DAnmTransform* getTrnsfrmAnmP(char const*, int);
|
||||
@@ -663,7 +683,7 @@ public:
|
||||
field_0xba0.initialize();
|
||||
mJntAnm.initialize();
|
||||
mStagger.initialize();
|
||||
mItemId = fpcM_ERROR_PROCESS_ID_e;
|
||||
mItemPartnerId = fpcM_ERROR_PROCESS_ID_e;
|
||||
field_0xe26 = true;
|
||||
field_0xe1a = cM_rndF(65536.0f);
|
||||
field_0xde0 = 0.2f;
|
||||
@@ -718,34 +738,31 @@ void daNpcT_onEvtBit(u32 i_idx);
|
||||
BOOL daNpcT_getPlayerInfoFromPlayerList(int param_0, int i_roomNo, cXyz* o_spawnPos,
|
||||
csXyz* o_angle);
|
||||
|
||||
struct daBaseNpc_matAnm_c {
|
||||
/* 8014D884 */ void calc(J3DMaterial*) const;
|
||||
/* 80150444 */ ~daBaseNpc_matAnm_c();
|
||||
class daBaseNpc_matAnm_c : public J3DMaterialAnm {
|
||||
public:
|
||||
/* 80150444 */ virtual ~daBaseNpc_matAnm_c() {}
|
||||
/* 8014D884 */ virtual void calc(J3DMaterial*) const;
|
||||
|
||||
/* 0x0F4 */ mutable f32 field_0xF4;
|
||||
/* 0x0F8 */ mutable f32 field_0xF8;
|
||||
/* 0x0FC */ f32 mNowOffsetX;
|
||||
/* 0x100 */ f32 mNowOffsetY;
|
||||
/* 0x104 */ u8 mEyeMoveFlg;
|
||||
/* 0x105 */ u8 mMorfFrm;
|
||||
};
|
||||
|
||||
class daBaseNpc_acMngr_c {
|
||||
private:
|
||||
/* 0x00 */ u8 field_0x00[4];
|
||||
/* 0x04 */ u32 mActorId;
|
||||
|
||||
public:
|
||||
/* 8014D804 */ daBaseNpc_acMngr_c();
|
||||
/* 8014D81C */ void entry(fopAc_ac_c*);
|
||||
/* 8014D838 */ fopAc_ac_c* getActor();
|
||||
/* 80150524 */ ~daBaseNpc_acMngr_c();
|
||||
/* 80150524 */ virtual ~daBaseNpc_acMngr_c() {}
|
||||
|
||||
private:
|
||||
/* 0x04 */ fpc_ProcID mActorId;
|
||||
};
|
||||
|
||||
class daBaseNpc_path_c {
|
||||
private:
|
||||
/* 0x000 */ f32 field_0x0;
|
||||
/* 0x004 */ dPath* mpRoomPath;
|
||||
/* 0x008 */ f32 field_0x8;
|
||||
/* 0x010 */ u8 field_0xc[2562];
|
||||
/* 0xA0E */ u16 field_0xa0e;
|
||||
/* 0xA10 */ u16 mIdx;
|
||||
/* 0xA12 */ s8 mDirection;
|
||||
/* 0xA13 */ u8 field_0xa13[17];
|
||||
|
||||
public:
|
||||
/* 8014D998 */ daBaseNpc_path_c();
|
||||
/* 8014D9A8 */ BOOL isPath();
|
||||
@@ -756,24 +773,22 @@ public:
|
||||
/* 8014DB04 */ u16 getIdx();
|
||||
/* 8014DB0C */ void setIdx(u16);
|
||||
/* 8014DB14 */ Vec getPntPos(u16);
|
||||
/* 801503FC */ ~daBaseNpc_path_c();
|
||||
/* 801503FC */ virtual ~daBaseNpc_path_c() {}
|
||||
|
||||
static const int MAXNUMCONTROLPNT_e = 64;
|
||||
|
||||
private:
|
||||
/* 0x004 */ dPath* mPathInfo;
|
||||
/* 0x008 */ f32 field_0x8;
|
||||
/* 0x00C */ dPnt mCurvePnts[160];
|
||||
/* 0xA0C */ u8 field_0xa0c[0xA0E - 0xA0C];
|
||||
/* 0xA0E */ u16 mCurvePntNum;
|
||||
/* 0xA10 */ u16 mIdx;
|
||||
/* 0xA12 */ s8 mDirection;
|
||||
/* 0xA13 */ u8 field_0xa13[17];
|
||||
};
|
||||
|
||||
class daBaseNpc_lookat_c {
|
||||
private:
|
||||
/* 0x00 */ int field_0x00;
|
||||
/* 0x04 */ csXyz mMaxJntLmt[2];
|
||||
/* 0x10 */ u8 field_0x0A[12];
|
||||
/* 0x1C */ csXyz mMinJntLmt[2];
|
||||
/* 0x28 */ u8 field_0x28[12];
|
||||
/* 0x34 */ cXyz mJntPos[3];
|
||||
/* 0x4C */ u8 field_0x4C[24];
|
||||
/* 0x64 */ csXyz mUnk[2];
|
||||
/* 0x70 */ csXyz mRotation[2];
|
||||
/* 0x7C */ csXyz mUnk2[2];
|
||||
/* 0x88 */ u8 field_0x88[4];
|
||||
/* 0x8C */ cXyz* mpAttnPos;
|
||||
|
||||
public:
|
||||
/* 8014DB40 */ void limitter(s16, s16*, s16, s16);
|
||||
/* 8014DBB4 */ void calc(fopAc_ac_c*, f32 (*)[4], s16);
|
||||
@@ -782,14 +797,22 @@ public:
|
||||
/* 8014E67C */ void setJntPos(cXyz, int);
|
||||
/* 8014E6A0 */ int setAttnPos(cXyz*);
|
||||
/* 8014E6AC */ csXyz getRot(int);
|
||||
/* 801502EC */ ~daBaseNpc_lookat_c();
|
||||
/* 801502EC */ virtual ~daBaseNpc_lookat_c() {}
|
||||
|
||||
/* 0x04 */ csXyz mMaxJntLmt[4];
|
||||
/* 0x1C */ csXyz mMinJntLmt[4];
|
||||
/* 0x34 */ cXyz mJntPos[4];
|
||||
/* 0x64 */ csXyz field_0x64[4];
|
||||
/* 0x7C */ csXyz mRot[4];
|
||||
/* 0x94 */ u8 field_0x94[4];
|
||||
/* 0x98 */ cXyz* mpAttnPos;
|
||||
};
|
||||
|
||||
class daBaseNpc_c : public fopAc_ac_c {
|
||||
public:
|
||||
/* 8014E6C8 */ daBaseNpc_c();
|
||||
/* 8014EE44 */ J3DAnmTransform* getTrnsfrmKeyAnmP(char*, int);
|
||||
/* 8014EE80 */ void setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
|
||||
/* 8014EE80 */ int setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
|
||||
/* 8014EEE4 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool);
|
||||
/* 8014EF28 */ J3DAnmTransform* getTexPtrnAnmP(char*, int);
|
||||
/* 8014EF64 */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int);
|
||||
@@ -800,13 +823,13 @@ public:
|
||||
/* 8014F1C8 */ int checkEndAnm(J3DFrameCtrl*);
|
||||
|
||||
/* 8014E89C */ virtual ~daBaseNpc_c();
|
||||
/* 8014EAD0 */ virtual void execute();
|
||||
/* 8014EC50 */ virtual void draw(f32);
|
||||
/* 8014EE3C */ virtual bool getResName();
|
||||
/* 8014EAD0 */ virtual int execute();
|
||||
/* 8014EC50 */ virtual int draw(f32);
|
||||
/* 8014EE3C */ virtual const char* getResName();
|
||||
/* 8014EFA4 */ virtual void attnSttsOn(int, int);
|
||||
/* 8014EFF0 */ virtual void setParam();
|
||||
/* 8014F09C */ virtual void mainProc();
|
||||
/* 8014F140 */ virtual bool btkCtrl();
|
||||
/* 8014F140 */ virtual BOOL btkCtrl();
|
||||
/* 8014F228 */ virtual void allAnmPlay();
|
||||
/* 8014F38C */ virtual void adjustShapeAngle();
|
||||
/* 8014F390 */ virtual void setMtx(int);
|
||||
@@ -815,71 +838,68 @@ public:
|
||||
/* 8014F4A8 */ virtual void drawOtherMdls();
|
||||
/* 8014F4AC */ virtual bool dbgDraw();
|
||||
|
||||
static u8 const mCcDObj[48];
|
||||
static dCcD_SrcGObjInf const mCcDObj;
|
||||
static dCcD_SrcCyl mCcDCyl;
|
||||
static dCcD_SrcSph mCcDSph;
|
||||
|
||||
private:
|
||||
/* 0x56C */ dBgS_Acch field_0x56c;
|
||||
/* 0x744 */ u8 field_0x744[16];
|
||||
/* 0x754 */ mDoExt_McaMorfSO* mpMorf[2];
|
||||
/* 0x758 */ Z2Creature mCreature;
|
||||
/* 0x7EC */ mDoExt_bckAnm mBckAnm;
|
||||
/* 0x808 */ mDoExt_btpAnm mBtpAnm;
|
||||
/* 0x820 */ u8 tmp2[28];
|
||||
/* 0x83c */ u16* field_0x83c;
|
||||
/* 0x56C */ dBgS_ObjAcch mAcch;
|
||||
/* 0x744 */ u8 field_0x744[0x754 - 0x744];
|
||||
/* 0x754 */ mDoExt_McaMorfSO* mpModelMorf;
|
||||
/* 0x758 */ Z2Creature mSound;
|
||||
/* 0x7E8 */ u32 mShadowId;
|
||||
/* 0x7EC */ mDoExt_bckAnm mBck;
|
||||
/* 0x808 */ mDoExt_btpAnm mBtp;
|
||||
/* 0x820 */ mDoExt_btkAnm mBtk;
|
||||
/* 0x838 */ s16 field_0x838;
|
||||
/* 0x83C */ u16* field_0x83c;
|
||||
/* 0x840 */ u16 field_0x840;
|
||||
/* 0x842 */ u8 field_0x842[6];
|
||||
/* 0x848 */ s32 mUnk;
|
||||
/* 0x84C */ dMsgFlow_c mMsg;
|
||||
/* 0x898 */ u8 field_0x898[2];
|
||||
/* 0x842 */ u16 field_0x842;
|
||||
/* 0x844 */ u8 field_0x844[0x848 - 0x844];
|
||||
/* 0x848 */ s32 field_0x848;
|
||||
/* 0x84C */ dMsgFlow_c mMsgFlow;
|
||||
/* 0x898 */ u8 field_0x898[0x89A - 0x898];
|
||||
/* 0x89A */ s16 mEvtIdx;
|
||||
/* 0x89C */ u8 field_0x89C[34];
|
||||
/* 0x8BE */ u8 mRoomId;
|
||||
/* 0x8C0 */ u8 field_0x8C0[90];
|
||||
/* 0x89C */ dCcD_Stts mCcStts;
|
||||
/* 0x8D8 */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x918 */ s16 field_0x918;
|
||||
/* 0x91A */ csXyz field_0x91a;
|
||||
/* 0x920 */ csXyz field_0xd7e;
|
||||
/* 0x926 */ csXyz field_0xd84;
|
||||
/* 0x92C */ csXyz field_0xd8a;
|
||||
/* 0x932 */ csXyz field_0x932;
|
||||
/* 0x938 */ u8 field_0x938[4];
|
||||
/* 0x93C */ csXyz field_0x93c;
|
||||
/* 0x940 */ u8 field_0x940[18];
|
||||
/* 0x954 */ cXyz field_0x954;
|
||||
/* 0x960 */ u8 field_0x960[36];
|
||||
/* 0x984 */ csXyz field_0x984;
|
||||
/* 0x98A */ u8 field_0x98A[18];
|
||||
/* 0x99C */ csXyz field_0x99c;
|
||||
/* 0x9A2 */ u8 field_0x9a2[70];
|
||||
/* 0x9E8 */ const cBgS_PolyInfo mBgSPolyInfo;
|
||||
/* 0x9F9 */ u8 field_0x9f9[27];
|
||||
/* 0x920 */ daBaseNpc_lookat_c mLookat;
|
||||
/* 0x9BC */ csXyz field_0x9bc;
|
||||
/* 0x9C2 */ csXyz field_0x9c2;
|
||||
/* 0x9C8 */ csXyz field_0x9c8;
|
||||
/* 0x9CE */ csXyz field_0x9ce;
|
||||
/* 0x9D4 */ cBgS_GndChk field_0x9d4;
|
||||
/* 0xA10 */ f32 mGroundY;
|
||||
};
|
||||
|
||||
class daBaseNpc_moveBgActor_c : public daBaseNpc_c {
|
||||
private:
|
||||
/* 0xA14 */ u32 field_0xa14;
|
||||
STATIC_ASSERT(sizeof(daBaseNpc_c) == 0xA14);
|
||||
|
||||
class daBaseNpc_moveBgActor_c : public daBaseNpc_c {
|
||||
public:
|
||||
/* 8014F4B4 */ daBaseNpc_moveBgActor_c();
|
||||
/* 8014F518 */ void MoveBGCreateHeap();
|
||||
/* 8014F60C */ void
|
||||
MoveBGCreate(char const*, int,
|
||||
void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*, csXyz*, csXyz*), u32);
|
||||
/* 8014F6FC */ void MoveBGDelete();
|
||||
/* 8014F770 */ void MoveBGExecute();
|
||||
/* 801503BC */ bool CreateHeap();
|
||||
/* 801503C4 */ bool Create();
|
||||
/* 801503CC */ bool Delete();
|
||||
/* 801503D4 */ bool Execute(f32 (**)[3][4]);
|
||||
/* 801503DC */ bool Draw();
|
||||
/* 801503E4 */ bool IsDelete();
|
||||
/* 801503EC */ bool ToFore();
|
||||
/* 801503F4 */ bool ToBack();
|
||||
/* 80155FB0 */ ~daBaseNpc_moveBgActor_c();
|
||||
/* 8014F518 */ int MoveBGCreateHeap();
|
||||
/* 8014F60C */ int MoveBGCreate(char const*, int, MoveBGActor_SetFunc, u32);
|
||||
/* 8014F6FC */ int MoveBGDelete();
|
||||
/* 8014F770 */ int MoveBGExecute();
|
||||
|
||||
static u8 m_name[4];
|
||||
static u8 m_dzb_id[4];
|
||||
static u8 m_set_func[4];
|
||||
/* 80155FB0 */ virtual ~daBaseNpc_moveBgActor_c();
|
||||
/* 801503BC */ virtual int CreateHeap() { return 1; }
|
||||
/* 801503C4 */ virtual int Create() { return 1; }
|
||||
/* 801503D4 */ virtual int Execute(Mtx**) { return 1; }
|
||||
/* 801503DC */ virtual int Draw() { return 1; }
|
||||
/* 801503CC */ virtual int Delete() { return 1; }
|
||||
/* 801503E4 */ virtual int IsDelete() { return 1; }
|
||||
/* 801503EC */ virtual int ToFore() { return 1; }
|
||||
/* 801503F4 */ virtual int ToBack() { return 1; }
|
||||
|
||||
static const char* m_name;
|
||||
static int m_dzb_id;
|
||||
static MoveBGActor_SetFunc m_set_func;
|
||||
|
||||
private:
|
||||
/* 0xA14 */ dBgW* mpBgw;
|
||||
/* 0xA18 */ Mtx mBgMtx;
|
||||
};
|
||||
|
||||
class daNpcF_ActorMngr_c {
|
||||
@@ -1121,7 +1141,7 @@ public:
|
||||
void setCutType(int i_cutType) { mCutType = i_cutType; }
|
||||
void onInterrupt(u8 param_0) { field_0x9ef = param_0; }
|
||||
|
||||
static u8 const mCcDObjInfo[48];
|
||||
static dCcD_SrcGObjInf const mCcDObjInfo;
|
||||
static dCcD_SrcCyl mCcDCyl;
|
||||
static dCcD_SrcSph mCcDSph;
|
||||
static fopAc_ac_c* mFindActorPList[100];
|
||||
@@ -1170,7 +1190,7 @@ class daNpcF_SPCurve_c {
|
||||
private:
|
||||
/* 0x00 */ u16 mNurbs;
|
||||
/* 0x02 */ u16 field_0x02;
|
||||
/* 0x04 */ bool mIsReversed;
|
||||
/* 0x04 */ u8 mIsReversed;
|
||||
/* 0x05 */ bool mIsClosed;
|
||||
/* 0x08 */ dPnt mPoints[96];
|
||||
|
||||
@@ -1189,7 +1209,7 @@ protected:
|
||||
/* 0x00 */ u16 mIdx;
|
||||
/* 0x02 */ u8 mIsReversed;
|
||||
/* 0x03 */ bool mIsClosed;
|
||||
/* 0x04 */ dPath* mpRoomPath;
|
||||
/* 0x04 */ dPath* mPathInfo;
|
||||
/* 0x08 */ f32 mRange;
|
||||
/* 0x0C */ f32 mPosDst;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
@@ -1218,20 +1238,21 @@ public:
|
||||
|
||||
int getIdx() { return mIdx; };
|
||||
void setIdx(int i_idx) { mIdx = i_idx; }
|
||||
int getArg0() { return mpRoomPath->m_points[mIdx].mArg0; }
|
||||
u8 getArg0(int i_idx) { return mpRoomPath->m_points[i_idx].mArg0; }
|
||||
Vec getPntPos(int i_idx) { return mpRoomPath->m_points[i_idx].m_position; }
|
||||
BOOL chkClose() { return dPath_ChkClose(mpRoomPath); }
|
||||
int getArg0() { return mPathInfo->m_points[mIdx].mArg0; }
|
||||
u8 getArg0(int i_idx) { return mPathInfo->m_points[i_idx].mArg0; }
|
||||
Vec getPntPos(int i_idx) { return mPathInfo->m_points[i_idx].m_position; }
|
||||
BOOL chkClose() { return dPath_ChkClose(mPathInfo); }
|
||||
BOOL chkReverse() { return mIsReversed == true; }
|
||||
void onReverse() { mIsReversed = true; }
|
||||
dPath* getPathInfo() { return mpRoomPath; }
|
||||
void offReverse() { mIsReversed = false; }
|
||||
dPath* getPathInfo() { return mPathInfo; }
|
||||
void setRange(f32 i_range) { mRange = i_range; }
|
||||
}; // Size: 0x630
|
||||
|
||||
class daNpcF_Lookat_c {
|
||||
private:
|
||||
/* 0x00 */ cXyz mJointPos[4];
|
||||
/* 0x30 */ cXyz* mAttnPos;
|
||||
/* 0x30 */ cXyz* mAttnPos_p;
|
||||
/* 0x34 */ csXyz mAngularMoveDis[4];
|
||||
/* 0x4C */ csXyz mMinAngle[4];
|
||||
/* 0x64 */ csXyz mMaxAngle[4];
|
||||
@@ -1250,10 +1271,12 @@ public:
|
||||
/* 80151B68 */ void calcMoveDisAngle(int, cXyz*, csXyz*, cXyz, int, BOOL);
|
||||
/* 80151F54 */ void setRotAngle();
|
||||
/* 80151FE0 */ void clrRotAngle();
|
||||
|
||||
daNpcF_Lookat_c() { initialize(); }
|
||||
virtual ~daNpcF_Lookat_c() {}
|
||||
cXyz* getAttnPos() { return mAttnPos; }
|
||||
void setAttnPos(cXyz* i_attnPos) { mAttnPos = i_attnPos; }
|
||||
|
||||
cXyz* getAttnPos() { return mAttnPos_p; }
|
||||
void setAttnPos(cXyz* i_attnPos) { mAttnPos_p = i_attnPos; }
|
||||
};
|
||||
|
||||
class daNpcF_MoveBgActor_c : public daNpcF_c {
|
||||
@@ -1270,4 +1293,48 @@ public:
|
||||
/* 80155EC0 */ virtual bool ToBack();
|
||||
};
|
||||
|
||||
struct daNpcT_HIOParam {
|
||||
/* 0x00 */ f32 unk0;
|
||||
/* 0x04 */ f32 unk4;
|
||||
/* 0x08 */ f32 unk8;
|
||||
/* 0x0C */ f32 unkC;
|
||||
/* 0x10 */ f32 unk10;
|
||||
/* 0x14 */ f32 unk14;
|
||||
/* 0x18 */ f32 unk18;
|
||||
/* 0x1C */ f32 unk1C;
|
||||
/* 0x20 */ f32 unk20;
|
||||
/* 0x24 */ f32 unk24;
|
||||
/* 0x28 */ f32 unk28;
|
||||
/* 0x2C */ f32 unk2C;
|
||||
/* 0x30 */ f32 unk30;
|
||||
/* 0x34 */ f32 unk34;
|
||||
/* 0x38 */ f32 unk38;
|
||||
/* 0x3C */ f32 unk3C;
|
||||
/* 0x40 */ f32 unk40;
|
||||
/* 0x44 */ f32 unk44;
|
||||
/* 0x48 */ s16 unk48;
|
||||
/* 0x4A */ s16 unk4A;
|
||||
/* 0x4C */ s16 unk4C;
|
||||
/* 0x4E */ s16 unk4E;
|
||||
/* 0x50 */ f32 unk50;
|
||||
/* 0x54 */ f32 unk54;
|
||||
/* 0x58 */ f32 unk58;
|
||||
/* 0x5C */ f32 unk5C;
|
||||
/* 0x60 */ s16 unk60;
|
||||
/* 0x62 */ s16 unk62;
|
||||
/* 0x64 */ s16 unk64;
|
||||
/* 0x66 */ s16 unk66;
|
||||
/* 0x68 */ s16 unk68;
|
||||
/* 0x6A */ u8 unk6A;
|
||||
/* 0x6B */ u8 unk6B;
|
||||
/* 0x6C */ f32 unk6C;
|
||||
/* 0x70 */ f32 unk70;
|
||||
/* 0x74 */ f32 unk74;
|
||||
/* 0x78 */ f32 unk78;
|
||||
/* 0x7C */ f32 unk7C;
|
||||
/* 0x80 */ f32 unk80;
|
||||
/* 0x84 */ f32 unk84;
|
||||
/* 0x88 */ f32 unk88;
|
||||
};
|
||||
|
||||
#endif /* D_A_D_A_NPC_H */
|
||||
|
||||
@@ -21,7 +21,7 @@ public:
|
||||
/* 80B78CFC */ int getDstPosChase(u16, cXyz, cXyz&);
|
||||
/* 80B78E08 */ f32 chkPassDst(u16, cXyz);
|
||||
/* 80B7EF88 */ ~daNpc_zrA_Path_c() {}
|
||||
int getEndIdx() { return mpRoomPath->m_num - 1; }
|
||||
int getEndIdx() { return mPathInfo->m_num - 1; }
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daNpc_zrA_Path_c) == 0x630);
|
||||
|
||||
@@ -20,9 +20,9 @@ public:
|
||||
|
||||
/* 8048CD68 */ virtual ~daTag_EvtArea_c() {}
|
||||
|
||||
s32 getType() {
|
||||
u8 type = (u8)shape_angle.z;
|
||||
return type == 0xff ? 0 : type;
|
||||
int getType() {
|
||||
u16 type = shape_angle.z & 0xFF;
|
||||
return type == 0xFF ? 0 : type;
|
||||
}
|
||||
|
||||
s32 getNo() {
|
||||
|
||||
Reference in New Issue
Block a user