d_a_npc_impal work (#2449)

* d_a_npc_impal work

* Address review comments
This commit is contained in:
hev7
2025-05-19 23:56:11 +03:00
committed by GitHub
parent 9ffb52027a
commit 84c616d6ff
20 changed files with 1366 additions and 1537 deletions
+3 -2
View File
@@ -982,7 +982,7 @@ protected:
/* 0x9F0 */ bool mIsDamaged; /* 0x9F0 */ bool mIsDamaged;
/* 0x9F1 */ u8 field_0x9f1; /* 0x9F1 */ u8 field_0x9f1;
/* 0x9F2 */ bool mHide; /* 0x9F2 */ bool mHide;
/* 0x9f3 */ u8 field_0x9f3; /* 0x9F3 */ u8 field_0x9f3;
/* 0x9F4 */ bool mTwilight; /* 0x9F4 */ bool mTwilight;
/* 0x9F5 */ u8 field_0x9f5; /* 0x9F5 */ u8 field_0x9f5;
/* 0x9F6 */ u8 field_0x9f6; /* 0x9F6 */ u8 field_0x9f6;
@@ -1098,7 +1098,7 @@ public:
/* 80155BE0 */ virtual bool setExpressionAnm(int i_idx, bool i_modify); /* 80155BE0 */ virtual bool setExpressionAnm(int i_idx, bool i_modify);
/* 80155EC8 */ virtual bool setExpressionBtp(int i_idx); /* 80155EC8 */ virtual bool setExpressionBtp(int i_idx);
/* 80155BF0 */ virtual void setExpression(int i_expression, f32 i_morf); /* 80155BF0 */ virtual void setExpression(int i_expression, f32 i_morf);
/* 80155BE8 */ virtual bool setMotionAnm(int i_idx, f32 i_morf); /* 80155BE8 */ virtual void setMotionAnm(int i_idx, f32 i_morf);
/* 80155BEC */ virtual void setMotion(int i_motion, f32 i_morf, int i_restart); /* 80155BEC */ virtual void setMotion(int i_motion, f32 i_morf, int i_restart);
/* 80155BD0 */ virtual BOOL drawDbgInfo(); /* 80155BD0 */ virtual BOOL drawDbgInfo();
/* 80155BCC */ virtual void drawOtherMdls(); /* 80155BCC */ virtual void drawOtherMdls();
@@ -1136,6 +1136,7 @@ void daNpcF_onEvtBit(u32 i_idx);
BOOL daNpcF_chkTmpBit(u32 i_idx); BOOL daNpcF_chkTmpBit(u32 i_idx);
void daNpcF_offTmpBit(u32 i_idx); void daNpcF_offTmpBit(u32 i_idx);
u8 daNpcF_getDistTableIdx(int param_0, int param_1); u8 daNpcF_getDistTableIdx(int param_0, int param_1);
void daNpcF_clearMessageTmpBit();
BOOL daNpcF_chkPointInArea(cXyz, cXyz, cXyz, s16); BOOL daNpcF_chkPointInArea(cXyz, cXyz, cXyz, s16);
int daNpcF_getPlayerInfoFromPlayerList(int param_0, int i_roomNo, cXyz& param_2, csXyz& param_3); int daNpcF_getPlayerInfoFromPlayerList(int param_0, int i_roomNo, cXyz& param_2, csXyz& param_3);
s16 daNpcF_getGroundAngle(cBgS_PolyInfo*, s16); s16 daNpcF_getGroundAngle(cBgS_PolyInfo*, s16);
+1 -1
View File
@@ -101,7 +101,7 @@ public:
/* 80959478 */ static BOOL ctrlJointCallBack(J3DJoint*, int); /* 80959478 */ static BOOL ctrlJointCallBack(J3DJoint*, int);
/* 809594C4 */ bool setExpressionAnm(int, bool); /* 809594C4 */ bool setExpressionAnm(int, bool);
/* 809596E0 */ bool setExpressionBtp(int); /* 809596E0 */ bool setExpressionBtp(int);
/* 809597C0 */ bool setMotionAnm(int i_idx, f32 i_morf); /* 809597C0 */ void setMotionAnm(int i_idx, f32 i_morf);
/* 80959910 */ void reset(); /* 80959910 */ void reset();
/* 80959B28 */ inline bool setAction(ActionFn); /* 80959B28 */ inline bool setAction(ActionFn);
/* 80959BD0 */ inline bool isSneaking(); /* 80959BD0 */ inline bool isSneaking();
+2 -2
View File
@@ -83,7 +83,7 @@ public:
/* 8095EBB4 */ static BOOL ctrlJointCallBack(J3DJoint*, int); /* 8095EBB4 */ static BOOL ctrlJointCallBack(J3DJoint*, int);
/* 8095EC00 */ bool setExpressionAnm(int, bool); /* 8095EC00 */ bool setExpressionAnm(int, bool);
/* 8095EE00 */ bool setExpressionBtp(int); /* 8095EE00 */ bool setExpressionBtp(int);
/* 8095EEE0 */ bool setMotionAnm(int, f32); /* 8095EEE0 */ void setMotionAnm(int, f32);
/* 8095F0A4 */ void reset(); /* 8095F0A4 */ void reset();
/* 8095F21C */ inline bool setAction(ActionFn i_actionFn); /* 8095F21C */ inline bool setAction(ActionFn i_actionFn);
/* 8095F2C4 */ bool wait(void*); /* 8095F2C4 */ bool wait(void*);
@@ -120,7 +120,7 @@ private:
/* 0xC88 */ dCcD_Cyl mCyl; /* 0xC88 */ dCcD_Cyl mCyl;
/* 0xDC4 */ ActionFn mpActionFn; /* 0xDC4 */ ActionFn mpActionFn;
/* 0xDD0 */ request_of_phase_process_class mPhase[1]; /* 0xDD0 */ request_of_phase_process_class mPhase[1];
/* 0xDD8 */ s32 mItemPartnerId; /* 0xDD8 */ u32 mItemPartnerId;
/* 0xDDC */ u32 field_0xddc; /* 0xDDC */ u32 field_0xddc;
/* 0xDE0 */ u32 field_0xde0; /* 0xDE0 */ u32 field_0xde0;
/* 0xDE4 */ s16 mFlowID; /* 0xDE4 */ s16 mFlowID;
+132 -30
View File
@@ -11,52 +11,154 @@
* @details * @details
* *
*/ */
class daNpcImpal_c : public fopAc_ac_c { class daNpcImpal_c : public daNpcF_c {
public: public:
typedef int (daNpcImpal_c::*cutFunc)(int);
typedef bool (daNpcImpal_c::*actionFunc)(void*);
typedef BOOL (daNpcImpal_c::*EventFn)(int);
enum Animation {
/* 0x00 */ ANM_0,
/* 0x01 */ ANM_1,
/* 0x02 */ ANM_2,
/* 0x03 */ ANM_3,
/* 0x04 */ ANM_4,
/* 0x05 */ ANM_5,
/* 0x06 */ ANM_6,
/* 0x07 */ ANM_7,
/* 0x08 */ ANM_8,
/* 0x09 */ ANM_9,
/* 0x10 */ ANM_10,
/* 0x11 */ ANM_11,
/* 0x12 */ ANM_12,
};
enum Expression {
/* 0x0 */ EXPR_0,
/* 0x1 */ EXPR_1,
/* 0x2 */ EXPR_2,
/* 0x3 */ EXPR_3,
/* 0x4 */ EXPR_4,
/* 0x5 */ EXPR_5,
/* 0x6 */ EXPR_6,
/* 0x7 */ EXPR_7,
};
enum Motion {
/* 0x00 */ MOT_0,
/* 0x01 */ MOT_1,
/* 0x02 */ MOT_2,
/* 0x03 */ MOT_3,
/* 0x04 */ MOT_4,
/* 0x05 */ MOT_5,
/* 0x06 */ MOT_6,
};
/* 80A079EC */ daNpcImpal_c(); /* 80A079EC */ daNpcImpal_c();
/* 80A07C00 */ ~daNpcImpal_c(); /* 80A07C00 */ ~daNpcImpal_c();
/* 80A07DC4 */ void Create(); /* 80A07DC4 */ int Create();
/* 80A080F8 */ void CreateHeap(); /* 80A080F8 */ BOOL CreateHeap();
/* 80A08524 */ void Delete(); /* 80A08524 */ int Delete();
/* 80A08558 */ void Execute(); /* 80A08558 */ int Execute();
/* 80A0857C */ void Draw(); /* 80A0857C */ int Draw();
/* 80A085EC */ void ctrlJoint(J3DJoint*, J3DModel*); /* 80A085EC */ bool ctrlJoint(J3DJoint*, J3DModel*);
/* 80A087BC */ void createHeapCallBack(fopAc_ac_c*); /* 80A087BC */ static int createHeapCallBack(fopAc_ac_c*);
/* 80A087DC */ void ctrlJointCallBack(J3DJoint*, int); /* 80A087DC */ static int ctrlJointCallBack(J3DJoint*, int);
/* 80A08828 */ void setExpressionAnm(int, bool); /* 80A08828 */ bool setExpressionAnm(int, bool);
/* 80A08A68 */ void setExpressionBtp(int); /* 80A08A68 */ bool setExpressionBtp(int);
/* 80A08B48 */ bool setMotionAnm(int, f32); /* 80A08B48 */ void setMotionAnm(int, f32);
/* 80A08CBC */ void reset(); /* 80A08CBC */ void reset();
/* 80A08EB8 */ void setAction(bool (daNpcImpal_c::*)(void*)); /* 80A08EB8 */ inline bool setAction(daNpcImpal_c::actionFunc);
/* 80A090E8 */ void wait(void*); /* 80A090E8 */ bool wait(void*);
/* 80A099B4 */ void setMotion(int, f32, int); /* 80A099B4 */ void setMotion(int, f32, BOOL);
/* 80A099F8 */ void setExpression(int, f32); /* 80A099F8 */ void setExpression(int, f32);
/* 80A09A24 */ void talk(void*); /* 80A09A24 */ bool talk(void*);
/* 80A09F4C */ void demo(void*); /* 80A09F4C */ bool demo(void*);
/* 80A0A1E0 */ void EvCut_ImpalAppear1(int); /* 80A0A1E0 */ BOOL EvCut_ImpalAppear1(int);
/* 80A0A680 */ void EvCut_ImpalAppear2(int); /* 80A0A680 */ BOOL EvCut_ImpalAppear2(int);
/* 80A0A950 */ void EvCut_CopyRod(int); /* 80A0A950 */ BOOL EvCut_CopyRod(int);
/* 80A0ADF8 */ void setParam(); /* 80A0ADF8 */ void setParam();
/* 80A0AEA8 */ void main(); /* 80A0AEA8 */ BOOL main();
/* 80A0B380 */ void ctrlBtk(); /* 80A0B380 */ BOOL ctrlBtk();
/* 80A0B45C */ void setAttnPos(); /* 80A0B45C */ void setAttnPos();
/* 80A0B76C */ void lookat(); /* 80A0B76C */ void lookat();
/* 80A0B94C */ bool drawDbgInfo(); /* 80A0B94C */ BOOL drawDbgInfo();
static u8 mEvtSeqList[48]; s16 getMessageNo() { return shape_angle.x; }
u8 getSwitchNo() { return (fopAcM_GetParam(this) >> 8) & 0xFF; }
inline void playExpression();
inline void playMotion();
inline s16 step(s16, int);
inline void setExpressionTalkAfter();
inline BOOL chkFindPlayer();
inline void setLookMode(int i_lookMode);
inline void deleteObstacle();
static EventFn mEvtSeqList[4];
private: private:
/* 0x568 */ u8 field_0x568[0xdec - 0x568]; /* 0xB48 */ Z2Creature mCreatureSound;
/* 0xBD8 */ daNpcF_MatAnm_c* mpMatAnm;
/* 0xBDC */ daNpcF_Lookat_c mLookat;
/* 0xC78 */ daNpcF_ActorMngr_c mActorMngr[1];
/* 0xC80 */ fopAc_ac_c* mpTalkPartner;
/* 0xC84 */ dCcD_Cyl mCyl;
/* 0xDC0 */ actionFunc mpActionFn;
/* 0xDCC */ request_of_phase_process_class mPhase[1];
/* 0xDD4 */ u32 mItemPartnerId;
/* 0xDD8 */ u32 field_0xdd8;
/* 0xDDC */ u32 field_0xddc;
/* 0xDE0 */ s16 mFlowID;
/* 0xDE2 */ s16 field_de2;
/* 0xDE4 */ s16 mLookMode;
/* 0xDE6 */ u16 mMode;
/* 0xDE8 */ u8 field_0xde8;
/* 0xDE9 */ u8 field_0xde9;
}; };
STATIC_ASSERT(sizeof(daNpcImpal_c) == 0xdec); STATIC_ASSERT(sizeof(daNpcImpal_c) == 0xdec);
class daNpcImpal_Param_c { struct daNpc_Impal_HIOParam {
public: /* 0x00 */ f32 mAttnOffsetY;
/* 80A0C204 */ ~daNpcImpal_Param_c(); /* 0x04 */ f32 mGravity;
/* 0x08 */ f32 mScale;
static u8 const m[112]; /* 0x0C */ f32 mShadowDepth;
/* 0x10 */ f32 mCcWeight;
/* 0x14 */ f32 mCylH;
/* 0x18 */ f32 mWallH;
/* 0x1C */ f32 mWallR;
/* 0x20 */ f32 mBodyUpAngle;
/* 0x24 */ f32 mBodyDownAngle;
/* 0x28 */ f32 mBodyLeftAngle;
/* 0x2C */ f32 mBodyRightAngle;
/* 0x30 */ f32 mHeadUpAngle;
/* 0x34 */ f32 mHeadDownAngle;
/* 0x38 */ f32 mHeadLeftAngle;
/* 0x3C */ f32 mHeadRightAngle;
/* 0x40 */ f32 mNeckAngleScl;
/* 0x44 */ f32 mMorfFrames;
/* 0x48 */ s16 mSpeakDistIdx;
/* 0x4A */ s16 mSpeakAngleIdx;
/* 0x4C */ s16 mTalkDistIdx;
/* 0x4E */ s16 mTalkAngleIdx;
/* 0x50 */ f32 mAttnFovY;
/* 0x54 */ f32 mAttnRadius;
/* 0x58 */ f32 mAttnUpperY;
/* 0x5C */ f32 mAttnLowerY;
/* 0x60 */ s16 field_0x60;
/* 0x62 */ s16 mDamageTimer;
/* 0x64 */ s16 mTestExpression;
/* 0x66 */ s16 mTestMotion;
/* 0x68 */ s16 mTestLookMode;
/* 0x6A */ bool mTest;
/* 0x6C */ f32 field_0x6c;
}; };
class daNpcImpal_Param_c {
public:
/* 80A0C204 */ virtual ~daNpcImpal_Param_c() {}
static daNpc_Impal_HIOParam const m;
};
#endif /* D_A_NPC_IMPAL_H */ #endif /* D_A_NPC_IMPAL_H */
+1 -1
View File
@@ -53,7 +53,7 @@ public:
/* 80AE93A0 */ BOOL main(); /* 80AE93A0 */ BOOL main();
/* 80AE9624 */ void setAttnPos(); /* 80AE9624 */ void setAttnPos();
/* 80AE9820 */ void lookat(); /* 80AE9820 */ void lookat();
/* 80AE9A00 */ bool setMotionAnm(int, f32); /* 80AE9A00 */ void setMotionAnm(int, f32);
/* 80AE9AD0 */ BOOL drawDbgInfo(); /* 80AE9AD0 */ BOOL drawDbgInfo();
/* 80AEA340 */ void adjustShapeAngle(); /* 80AEA340 */ void adjustShapeAngle();
+1 -1
View File
@@ -91,7 +91,7 @@ public:
/* 80AF8114 */ static BOOL ctrlJointCallBack(J3DJoint*, int); /* 80AF8114 */ static BOOL ctrlJointCallBack(J3DJoint*, int);
/* 80AF8160 */ bool setExpressionAnm(int, bool); /* 80AF8160 */ bool setExpressionAnm(int, bool);
/* 80AF841C */ bool setExpressionBtp(int); /* 80AF841C */ bool setExpressionBtp(int);
/* 80AF8564 */ bool setMotionAnm(int, f32); /* 80AF8564 */ void setMotionAnm(int, f32);
/* 80AF8744 */ BOOL wait(void*); /* 80AF8744 */ BOOL wait(void*);
/* 80AF8B0C */ void setMotion(int, f32, int); /* 80AF8B0C */ void setMotion(int, f32, int);
/* 80AF8B50 */ void setExpression(int, f32); /* 80AF8B50 */ void setExpression(int, f32);
+63 -53
View File
@@ -11,6 +11,68 @@
* @details * @details
* *
*/ */
struct daNpc_Uri_HIOParam {
/* 0x00 */ f32 field_0x00;
/* 0x04 */ f32 field_0x04;
/* 0x08 */ f32 field_0x08;
/* 0x0C */ f32 field_0x0c;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 field_0x1c;
/* 0x20 */ f32 field_0x20;
/* 0x24 */ f32 field_0x24;
/* 0x28 */ f32 field_0x28;
/* 0x2C */ f32 field_0x2c;
/* 0x30 */ f32 field_0x30;
/* 0x34 */ f32 field_0x34;
/* 0x38 */ f32 field_0x38;
/* 0x3C */ f32 field_0x3c;
/* 0x40 */ f32 field_0x40;
/* 0x44 */ f32 field_0x44;
/* 0x48 */ s16 field_0x48;
/* 0x4A */ s16 field_0x4a;
/* 0x4C */ s16 field_0x4c;
/* 0x4E */ s16 field_0x4e;
/* 0x50 */ f32 field_0x50;
/* 0x54 */ f32 field_0x54;
/* 0x58 */ f32 field_0x58;
/* 0x5C */ f32 field_0x5c;
/* 0x60 */ s16 field_0x60;
/* 0x62 */ s16 field_0x62;
/* 0x64 */ u8 field_0x64[8];
/* 0x6C */ f32 field_0x6c;
/* 0x70 */ u8 field_0x70[28];
/* 0x8C */ s16 field_0x8c;
/* 0x8E */ s16 field_0x8e;
/* 0x90 */ s16 field_0x90;
/* 0x92 */ s16 field_0x92;
/* 0x94 */ s16 field_0x94;
/* 0x96 */ s16 field_0x96;
/* 0x98 */ f32 field_0x98;
/* 0x9C */ f32 field_0x9c;
/* 0xA0 */ f32 field_0xa0;
/* 0xA4 */ f32 field_0xa4;
/* 0xA8 */ f32 field_0xa8;
};
class daNpc_Uri_Param_c {
public:
/* 80B2CD94 */ virtual ~daNpc_Uri_Param_c() {};
static daNpc_Uri_HIOParam const m;
};
class daNpc_Uri_HIO_c
#ifdef DEBUG
: public mDoHIO_entry_c
#endif
{
public:
void genMessage(JORMContext*);
};
class daNpc_Uri_c : public daNpcT_c { class daNpc_Uri_c : public daNpcT_c {
public: public:
typedef int (daNpc_Uri_c::*cutFunc)(int); typedef int (daNpc_Uri_c::*cutFunc)(int);
@@ -102,7 +164,7 @@ public:
static cutFunc mCutList[7]; static cutFunc mCutList[7];
private: private:
/* 0x0E40 */ int field_0xe40; /* 0x0E40 */ daNpc_Uri_HIO_c* field_0xe40;
/* 0x0E44 */ J3DModel* mpModel[1]; /* 0x0E44 */ J3DModel* mpModel[1];
/* 0x0E48 */ dCcD_Cyl mCyl; /* 0x0E48 */ dCcD_Cyl mCyl;
/* 0x0F84 */ u8 mType; /* 0x0F84 */ u8 mType;
@@ -134,56 +196,4 @@ private:
STATIC_ASSERT(sizeof(daNpc_Uri_c) == 0x1018); STATIC_ASSERT(sizeof(daNpc_Uri_c) == 0x1018);
struct daNpc_Uri_HIOParam {
/* 0x00 */ f32 field_0x00;
/* 0x04 */ f32 field_0x04;
/* 0x08 */ f32 field_0x08;
/* 0x0C */ f32 field_0x0c;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ f32 field_0x18;
/* 0x1C */ f32 field_0x1c;
/* 0x20 */ f32 field_0x20;
/* 0x24 */ f32 field_0x24;
/* 0x28 */ f32 field_0x28;
/* 0x2C */ f32 field_0x2c;
/* 0x30 */ f32 field_0x30;
/* 0x34 */ f32 field_0x34;
/* 0x38 */ f32 field_0x38;
/* 0x3C */ f32 field_0x3c;
/* 0x40 */ f32 field_0x40;
/* 0x44 */ f32 field_0x44;
/* 0x48 */ s16 field_0x48;
/* 0x4A */ s16 field_0x4a;
/* 0x4C */ s16 field_0x4c;
/* 0x4E */ s16 field_0x4e;
/* 0x50 */ f32 field_0x50;
/* 0x54 */ f32 field_0x54;
/* 0x58 */ f32 field_0x58;
/* 0x5C */ f32 field_0x5c;
/* 0x60 */ s16 field_0x60;
/* 0x62 */ s16 field_0x62;
/* 0x64 */ u8 field_0x64[8];
/* 0x6C */ f32 field_0x6c;
/* 0x70 */ u8 field_0x70[28];
/* 0x8C */ s16 field_0x8c;
/* 0x8E */ s16 field_0x8e;
/* 0x90 */ s16 field_0x90;
/* 0x92 */ s16 field_0x92;
/* 0x94 */ s16 field_0x94;
/* 0x96 */ s16 field_0x96;
/* 0x98 */ f32 field_0x98;
/* 0x9C */ f32 field_0x9c;
/* 0xA0 */ f32 field_0xa0;
/* 0xA4 */ f32 field_0xa4;
/* 0xA8 */ f32 field_0xa8;
};
class daNpc_Uri_Param_c {
public:
/* 80B2CD94 */ virtual ~daNpc_Uri_Param_c() {};
static daNpc_Uri_HIOParam const m;
};
#endif /* D_A_NPC_URI_H */ #endif /* D_A_NPC_URI_H */
+1 -1
View File
@@ -233,7 +233,7 @@ public:
/* 80B7B9D4 */ bool setExpressionAnm(int, bool); /* 80B7B9D4 */ bool setExpressionAnm(int, bool);
/* 80B7BD60 */ bool setExpressionBtp(int); /* 80B7BD60 */ bool setExpressionBtp(int);
/* 80B7BE74 */ void setExpression(int, f32); /* 80B7BE74 */ void setExpression(int, f32);
/* 80B7BEA0 */ bool setMotionAnm(int, f32); /* 80B7BEA0 */ void setMotionAnm(int, f32);
/* 80B7C070 */ void setMotionWaterAnm(int); /* 80B7C070 */ void setMotionWaterAnm(int);
/* 80B7C308 */ void setMotion(int, f32, BOOL); /* 80B7C308 */ void setMotion(int, f32, BOOL);
/* 80B7C34C */ BOOL drawDbgInfo(); /* 80B7C34C */ BOOL drawDbgInfo();
+1 -1
View File
@@ -33,7 +33,7 @@ public:
/* 80B8F56C */ bool setExpressionAnm(int, bool); /* 80B8F56C */ bool setExpressionAnm(int, bool);
/* 80B8F898 */ bool setExpressionBtp(int); /* 80B8F898 */ bool setExpressionBtp(int);
/* 80B8F9CC */ void setExpression(int, f32); /* 80B8F9CC */ void setExpression(int, f32);
/* 80B8F9F8 */ bool setMotionAnm(int, f32); /* 80B8F9F8 */ void setMotionAnm(int, f32);
/* 80B8FBE4 */ void setMotion(int, f32, int); /* 80B8FBE4 */ void setMotion(int, f32, int);
/* 80B8FC28 */ BOOL drawDbgInfo(); /* 80B8FC28 */ BOOL drawDbgInfo();
/* 80B8FC30 */ void drawOtherMdls(); /* 80B8FC30 */ void drawOtherMdls();
+1 -1
View File
@@ -38,7 +38,7 @@ public:
/* 80B95C6C */ bool setExpressionAnm(int, bool); /* 80B95C6C */ bool setExpressionAnm(int, bool);
/* 80B95DD0 */ bool setExpressionBtp(int); /* 80B95DD0 */ bool setExpressionBtp(int);
/* 80B95F10 */ void setExpression(int, f32); /* 80B95F10 */ void setExpression(int, f32);
/* 80B95F3C */ bool setMotionAnm(int, f32); /* 80B95F3C */ void setMotionAnm(int, f32);
/* 80B9612C */ void setMotion(int, f32, int); /* 80B9612C */ void setMotion(int, f32, int);
/* 80B96170 */ BOOL drawDbgInfo(); /* 80B96170 */ BOOL drawDbgInfo();
/* 80B96178 */ void drawOtherMdls(); /* 80B96178 */ void drawOtherMdls();
+1 -1
View File
@@ -5219,7 +5219,7 @@ bool daNpcF_c::setExpressionAnm(int param_0, bool param_1) {
} }
/* 80155BE8-80155BEC 150528 0004+00 2/0 0/0 0/0 .text setMotionAnm__8daNpcF_cFif */ /* 80155BE8-80155BEC 150528 0004+00 2/0 0/0 0/0 .text setMotionAnm__8daNpcF_cFif */
bool daNpcF_c::setMotionAnm(int param_0, f32 param_1) { void daNpcF_c::setMotionAnm(int param_0, f32 param_1) {
/* empty function */ /* empty function */
} }
+3 -4
View File
@@ -786,7 +786,7 @@ bool daNpcAsh_c::setExpressionBtp(int i_idx) {
} }
/* 809597C0-80959910 0015C0 0150+00 1/0 0/0 0/0 .text setMotionAnm__10daNpcAsh_cFif */ /* 809597C0-80959910 0015C0 0150+00 1/0 0/0 0/0 .text setMotionAnm__10daNpcAsh_cFif */
bool daNpcAsh_c::setMotionAnm(int i_idx, f32 i_morf) { void daNpcAsh_c::setMotionAnm(int i_idx, f32 i_morf) {
if (i_idx < 8 || i_idx >= 18) { if (i_idx < 8 || i_idx >= 18) {
return; return;
} }
@@ -1513,10 +1513,9 @@ BOOL daNpcAsh_c::ctrlBtk() {
mpMatAnm->setNowOffsetX(cM_ssin(mEyeAngle.y) * 0.2f * -1.0f); mpMatAnm->setNowOffsetX(cM_ssin(mEyeAngle.y) * 0.2f * -1.0f);
mpMatAnm->setNowOffsetY(cM_ssin(mEyeAngle.x) * 0.4f); mpMatAnm->setNowOffsetY(cM_ssin(mEyeAngle.x) * 0.4f);
mpMatAnm->onEyeMoveFlag(); mpMatAnm->onEyeMoveFlag();
return true; return TRUE;
} else {
return false;
} }
return FALSE;
} }
/* 8095C5C4-8095C9BC 0043C4 03F8+00 1/0 0/0 0/0 .text setAttnPos__10daNpcAsh_cFv */ /* 8095C5C4-8095C9BC 0043C4 03F8+00 1/0 0/0 0/0 .text setAttnPos__10daNpcAsh_cFv */
+5 -7
View File
@@ -649,9 +649,7 @@ bool daNpcAshB_c::setExpressionBtp(int i_idx) {
} }
/* 8095EEE0-8095F0A4 001180 01C4+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcAshB_cFif */ /* 8095EEE0-8095F0A4 001180 01C4+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcAshB_cFif */
// NONMATCHING regalloc void daNpcAshB_c::setMotionAnm(int i_idx, f32 i_morf) {
bool daNpcAshB_c::setMotionAnm(int i_idx, f32 i_morf) {
if (i_idx < 7 || i_idx >= 21) { if (i_idx < 7 || i_idx >= 21) {
return; return;
} }
@@ -1371,13 +1369,13 @@ void daNpcAshB_c::lookat() {
if (mLookMode != LOOK_PLAYER_TALK) { if (mLookMode != LOOK_PLAYER_TALK) {
break; break;
} }
body_down_angle = -80.0f; head_right_angle = -80.0f;
body_up_angle = 80.0f; head_left_angle = 80.0f;
break; break;
case LOOK_ACTOR: case LOOK_ACTOR:
actor = daPy_getPlayerActorClass(); actor = daPy_getPlayerActorClass();
head_up_angle = 0.0f; body_right_angle = 0.0f;
head_right_angle = 0.0f; body_left_angle = 0.0f;
break; break;
} }
+1142 -1420
View File
File diff suppressed because it is too large Load Diff
+1 -2
View File
@@ -771,8 +771,7 @@ void daNpcShoe_c::lookat() {
} }
/* 80AE9A00-80AE9AD0 0021A0 00D0+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcShoe_cFif */ /* 80AE9A00-80AE9AD0 0021A0 00D0+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcShoe_cFif */
bool daNpcShoe_c::setMotionAnm(int i_idx, f32 i_morf) { void daNpcShoe_c::setMotionAnm(int i_idx, f32 i_morf) {
// NONMATCHING
J3DAnmTransformKey* morfAnm = getTrnsfrmKeyAnmP(l_arcNames[l_bckGetParamList[i_idx].arcIdx], l_bckGetParamList[i_idx].fileIdx); J3DAnmTransformKey* morfAnm = getTrnsfrmKeyAnmP(l_arcNames[l_bckGetParamList[i_idx].arcIdx], l_bckGetParamList[i_idx].fileIdx);
int morfAttr = l_bckGetParamList[i_idx].attr; int morfAttr = l_bckGetParamList[i_idx].attr;
+2 -3
View File
@@ -679,7 +679,7 @@ bool daNpcThe_c::setExpressionBtp(int i_idx) {
} }
/* 80AF8564-80AF8744 000F84 01E0+00 2/0 0/0 0/0 .text setMotionAnm__10daNpcThe_cFif */ /* 80AF8564-80AF8744 000F84 01E0+00 2/0 0/0 0/0 .text setMotionAnm__10daNpcThe_cFif */
bool daNpcThe_c::setMotionAnm(int i_idx, f32 i_morf) { void daNpcThe_c::setMotionAnm(int i_idx, f32 i_morf) {
J3DAnmTransformKey* anm_trans = NULL; J3DAnmTransformKey* anm_trans = NULL;
J3DAnmTextureSRTKey* anm_tex = NULL; J3DAnmTextureSRTKey* anm_tex = NULL;
int attr = J3DFrameCtrl::EMode_LOOP; int attr = J3DFrameCtrl::EMode_LOOP;
@@ -1425,7 +1425,6 @@ void daNpcThe_c::setExpressionTalkAfter() {
} }
/* 80AFA6CC-80AFADEC 0030EC 0720+00 1/1 0/0 0/0 .text doEvent__10daNpcThe_cFv */ /* 80AFA6CC-80AFADEC 0030EC 0720+00 1/1 0/0 0/0 .text doEvent__10daNpcThe_cFv */
// NONMATCHING regalloc and mr ordering
BOOL daNpcThe_c::doEvent() { BOOL daNpcThe_c::doEvent() {
BOOL ret = false; BOOL ret = false;
if (dComIfGp_event_runCheck() != false) { if (dComIfGp_event_runCheck() != false) {
@@ -1478,7 +1477,7 @@ BOOL daNpcThe_c::doEvent() {
} }
ret = true; ret = true;
} else { } else {
int staff_id = event_manager.getMyStaffId(l_myName, this, -1); s32 staff_id = event_manager.getMyStaffId(l_myName, this, -1);
if (staff_id != -1) { if (staff_id != -1) {
mStaffID = staff_id; mStaffID = staff_id;
int act_idx = event_manager.getMyActIdx(staff_id, mEvtCutNameList, int act_idx = event_manager.getMyActIdx(staff_id, mEvtCutNameList,
+3 -3
View File
@@ -68,7 +68,7 @@ static s8 l_loadResPtrn9[5] = {
/* 80B2D108-80B2D124 -00001 001C+00 1/2 0/0 0/0 .data l_loadResPtrnList */ /* 80B2D108-80B2D124 -00001 001C+00 1/2 0/0 0/0 .data l_loadResPtrnList */
static s8* l_loadResPtrnList[7] = {l_loadResPtrn0, l_loadResPtrn1, l_loadResPtrn0, l_loadResPtrn2, static s8* l_loadResPtrnList[7] = {l_loadResPtrn0, l_loadResPtrn1, l_loadResPtrn0, l_loadResPtrn2,
l_loadResPtrn3, l_loadResPtrn4, l_loadResPtrn9}; l_loadResPtrn3, l_loadResPtrn4, l_loadResPtrn9};
/* 80B2D124-80B2D338 0000DC 0214+00 0/1 0/0 0/0 .data l_faceMotionAnmData */ /* 80B2D124-80B2D338 0000DC 0214+00 0/1 0/0 0/0 .data l_faceMotionAnmData */
static daNpcT_faceMotionAnmData_c l_faceMotionAnmData[19] = { static daNpcT_faceMotionAnmData_c l_faceMotionAnmData[19] = {
@@ -603,10 +603,10 @@ void daNpc_Uri_c::setAfterTalkMotion() {
case 8: case 8:
iVar2 = 10; iVar2 = 10;
break; break;
case 9: case 11:
iVar2 = 12; iVar2 = 12;
break; break;
case 11: case 9:
iVar2 = 16; iVar2 = 16;
} }
mFaceMotionSeqMngr.setNo(iVar2, -1.0f, 0, 0); mFaceMotionSeqMngr.setNo(iVar2, -1.0f, 0, 0);
+1 -1
View File
@@ -1458,7 +1458,7 @@ void daNpc_zrA_c::setExpression(int i_expression, f32 i_morf) {
} }
/* 80B7BEA0-80B7C070 003A80 01D0+00 2/0 0/0 0/0 .text setMotionAnm__11daNpc_zrA_cFif */ /* 80B7BEA0-80B7C070 003A80 01D0+00 2/0 0/0 0/0 .text setMotionAnm__11daNpc_zrA_cFif */
bool daNpc_zrA_c::setMotionAnm(int i_idx, f32 i_morf) { void daNpc_zrA_c::setMotionAnm(int i_idx, f32 i_morf) {
J3DAnmTransformKey* bck_anm = NULL; J3DAnmTransformKey* bck_anm = NULL;
J3DAnmTextureSRTKey* btk_anm = NULL; J3DAnmTextureSRTKey* btk_anm = NULL;
int btk_idx = 0; int btk_idx = 0;
+1 -2
View File
@@ -791,8 +791,7 @@ void daNpc_zrC_c::setExpression(int i_expression, f32 i_morf) {
} }
/* 80B8F9F8-80B8FBE4 001ED8 01EC+00 2/0 0/0 0/0 .text setMotionAnm__11daNpc_zrC_cFif */ /* 80B8F9F8-80B8FBE4 001ED8 01EC+00 2/0 0/0 0/0 .text setMotionAnm__11daNpc_zrC_cFif */
// NONMATCHING regalloc void daNpc_zrC_c::setMotionAnm(int i_idx, f32 i_morf) {
bool daNpc_zrC_c::setMotionAnm(int i_idx, f32 i_morf) {
J3DAnmTransformKey* bck_anm = NULL; J3DAnmTransformKey* bck_anm = NULL;
J3DAnmTextureSRTKey* btk_anm = NULL; J3DAnmTextureSRTKey* btk_anm = NULL;
int btk_idx = 0; int btk_idx = 0;
+1 -1
View File
@@ -926,7 +926,7 @@ void daNpc_zrZ_c::setExpression(int i_expression, f32 i_morf) {
} }
/* 80B95F3C-80B9612C 00225C 01F0+00 1/0 0/0 0/0 .text setMotionAnm__11daNpc_zrZ_cFif */ /* 80B95F3C-80B9612C 00225C 01F0+00 1/0 0/0 0/0 .text setMotionAnm__11daNpc_zrZ_cFif */
bool daNpc_zrZ_c::setMotionAnm(int i_idx, f32 i_morf) { void daNpc_zrZ_c::setMotionAnm(int i_idx, f32 i_morf) {
J3DAnmTransformKey* bck_anm = NULL; J3DAnmTransformKey* bck_anm = NULL;
J3DAnmTextureSRTKey* btk_anm = NULL; J3DAnmTextureSRTKey* btk_anm = NULL;
int attr = J3DFrameCtrl::EMode_LOOP; int attr = J3DFrameCtrl::EMode_LOOP;