mirror of
https://github.com/encounter/tp.git
synced 2026-07-11 06:18:46 -07:00
npc_kn mostly done (#2609)
* npc_kn mostly done * fix shieldD * pr fixes * weak func fixes
This commit is contained in:
@@ -11,7 +11,7 @@
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class daNpc_GWolf_c : public fopAc_ac_c {
|
||||
class daNpc_GWolf_c : public daNpcF_c {
|
||||
public:
|
||||
/* 809F30AC */ daNpc_GWolf_c();
|
||||
/* 809F34C0 */ void create();
|
||||
@@ -47,18 +47,18 @@ public:
|
||||
/* 809F797C */ void test(void*);
|
||||
/* 809F7A30 */ void getGroundSlope(dBgS_ObjAcch&, s16);
|
||||
|
||||
/* 809F32C0 */ ~daNpc_GWolf_c();
|
||||
/* 809F4258 */ void setParam();
|
||||
/* 809F4390 */ BOOL main();
|
||||
/* 809F4558 */ BOOL ctrlBtk();
|
||||
/* 809F4638 */ void adjustShapeAngle();
|
||||
/* 809F4698 */ void setAttnPos();
|
||||
/* 809F4BB0 */ bool setExpressionAnm(int, bool);
|
||||
/* 809F4BB8 */ void setExpression(int, f32);
|
||||
/* 809F4BBC */ bool setMotionAnm(int, f32);
|
||||
/* 809F4DE8 */ void setMotion(int, f32, int);
|
||||
/* 809F4E2C */ BOOL drawDbgInfo();
|
||||
/* 809F4E34 */ void drawOtherMdls();
|
||||
/* 809F32C0 */ virtual ~daNpc_GWolf_c();
|
||||
/* 809F4258 */ virtual void setParam();
|
||||
/* 809F4390 */ virtual BOOL main();
|
||||
/* 809F4558 */ virtual BOOL ctrlBtk();
|
||||
/* 809F4638 */ virtual void adjustShapeAngle();
|
||||
/* 809F4698 */ virtual void setAttnPos();
|
||||
/* 809F4BB0 */ virtual bool setExpressionAnm(int, bool);
|
||||
/* 809F4BB8 */ virtual void setExpression(int, f32);
|
||||
/* 809F4BBC */ virtual void setMotionAnm(int, f32);
|
||||
/* 809F4DE8 */ virtual void setMotion(int, f32, int);
|
||||
/* 809F4E2C */ virtual BOOL drawDbgInfo();
|
||||
/* 809F4E34 */ virtual void drawOtherMdls();
|
||||
|
||||
void setHowlingEndFlag() { field_0xe1c = 2; }
|
||||
void setHowlingFlag() { field_0xe1c = 1; }
|
||||
@@ -67,14 +67,17 @@ public:
|
||||
static u8 mEvtCutList[60];
|
||||
|
||||
private:
|
||||
// /* 0xB48 */ Z2Creature mCreature;
|
||||
// /* 0xBD8 */ daNpcF_MatAnm_c* mpMatAnm;
|
||||
// /* 0xBDC */ daNpcF_Lookat_c mLookAt;
|
||||
// /* 0xC78 */ daNpcF_ActorMngr_c mActorMng[2];
|
||||
// /* 0xC88 */ u8 field_0xc88[4];
|
||||
// /* 0xC8C */ dCcD_Cyl mCyl;
|
||||
// /* 0xDC8 */ u8 field_0xdc8[0xE1C - 0xdc8];
|
||||
/* 0x568 */ u8 field_0xb48[0xE1C - 0x568];
|
||||
/* 0xB48 */ Z2Creature mSound;
|
||||
/* 0xBD8 */ daNpcF_MatAnm_c* mpMatAnm;
|
||||
/* 0xBDC */ daNpcF_Lookat_c mLookAt;
|
||||
/* 0xC78 */ daNpcF_ActorMngr_c mActorMng[2];
|
||||
/* 0xC88 */ u8 field_0xC88[0xC8C - 0xC88];
|
||||
/* 0xC8C */ dCcD_Cyl mCcCyl;
|
||||
/* 0xDC8 */ u8 field_0xDC8[0xE08 - 0xDC8];
|
||||
/* 0xE08 */ int field_0xe08;
|
||||
/* 0xE0C */ u8 field_0xE0C[0xE14 - 0xE0C];
|
||||
/* 0xE14 */ u32 field_0xe14;
|
||||
/* 0xE18 */ u8 field_0xe18[0xE1C - 0xE18];
|
||||
/* 0xE1C */ u8 field_0xe1c;
|
||||
};
|
||||
|
||||
|
||||
+139
-109
@@ -16,6 +16,24 @@ public:
|
||||
typedef int (daNpc_Kn_c::*cutFunc)(int);
|
||||
typedef int (daNpc_Kn_c::*actionFunc)(void*);
|
||||
|
||||
enum AnmFlags {
|
||||
ANM_PAUSE_MORF = 0x1,
|
||||
ANM_PAUSE_BTK = 0x2,
|
||||
ANM_PAUSE_BRK = 0x4,
|
||||
ANM_PAUSE_BPK = 0x8,
|
||||
ANM_PAUSE_BCK = 0x10,
|
||||
ANM_PAUSE_BTP = 0x20,
|
||||
ANM_PLAY_MORF = 0x40,
|
||||
ANM_PLAY_BTK = 0x80,
|
||||
ANM_PLAY_BRK = 0x100,
|
||||
ANM_PLAY_BPK = 0x200,
|
||||
ANM_PLAY_BCK = 0x400,
|
||||
ANM_PLAY_BTP = 0x800,
|
||||
ANM_FLAG_1000 = 0x1000,
|
||||
ANM_PAUSE_TIMER_BTP = 0x2000,
|
||||
ANM_FLAG_4000 = 0x4000,
|
||||
};
|
||||
|
||||
class daNpc_Kn_prtclMngr_c {
|
||||
public:
|
||||
/* 80A2AF98 */ ~daNpc_Kn_prtclMngr_c() {};
|
||||
@@ -32,9 +50,9 @@ public:
|
||||
/* 0x05AC */ const daNpcT_faceMotionAnmData_c* mpFaceMotionAnmData;
|
||||
/* 0x05B0 */ const daNpcT_motionAnmData_c* mpMotionAnmData;
|
||||
/* 0x05B4 */ const daNpcT_evtData_c* mpEventData;
|
||||
/* 0x05B8 */ char** field_0x5B8;
|
||||
/* 0x05BC */ mDoExt_McaMorfSO* mpMorf[2];
|
||||
/* 0x05C4 */ Z2Creature mCreature;
|
||||
/* 0x05B8 */ char** mpArcNames;
|
||||
/* 0x05BC */ mDoExt_McaMorfSO* mpModelMorf[2];
|
||||
/* 0x05C4 */ Z2Creature mSound;
|
||||
/* 0x0654 */ mDoExt_bckAnm mBckAnm;
|
||||
/* 0x0670 */ mDoExt_btpAnm mBtpAnm;
|
||||
/* 0x0688 */ mDoExt_btkAnm mBtkAnm;
|
||||
@@ -48,70 +66,74 @@ public:
|
||||
/* 0x09A0 */ daNpcT_MatAnm_c* mpMatAnm;
|
||||
/* 0x09A4 */ u8 field_0x9a4[4];
|
||||
/* 0x09A8 */ dMsgFlow_c mFlow;
|
||||
/* 0x09F4 */ u8 field_0x9F4[0xa74 - 0x9f4];
|
||||
/* 0x09F4 */ dPaPoT_c field_0x9F4;
|
||||
/* 0x0A74 */ dCcD_Stts mCcStts2;
|
||||
/* 0x0AB0 */ u32 mFlowNodeNo;
|
||||
/* 0x0AB4 */ f32 field_0xab4;
|
||||
/* 0x0AB8 */ f32 field_0xab8;
|
||||
/* 0x0ABC */ u8 field_0xABC;
|
||||
/* 0x0ABD */ u8 field_0xABD;
|
||||
/* 0x0ABE */ u8 field_0xABE[0xAC0 - 0xABE];
|
||||
/* 0x0AB4 */ f32 mExpressionMorfFrame;
|
||||
/* 0x0AB8 */ f32 mMorfFrames;
|
||||
/* 0x0ABC */ u8 mCreating;
|
||||
/* 0x0ABD */ u8 mTwilight;
|
||||
/* 0x0AC0 */ dBgS_GndChk mGndChk2;
|
||||
/* 0x0B14 */ dBgS_LinChk mLinChk;
|
||||
/* 0x0B84 */ daNpcT_MotionSeqMngr_c mMotionSeqMngr1;
|
||||
/* 0x0BA8 */ daNpcT_MotionSeqMngr_c mMotionSeqMngr2;
|
||||
/* 0x0B84 */ daNpcT_MotionSeqMngr_c mFaceMotionSeqMngr;
|
||||
/* 0x0BA8 */ daNpcT_MotionSeqMngr_c mMotionSeqMngr;
|
||||
/* 0x0BCC */ daNpcT_ActorMngr_c mActorMngr1;
|
||||
/* 0x0BD4 */ daNpcT_ActorMngr_c mActorMngr2;
|
||||
/* 0x0BDC */ daNpcT_JntAnm_c mJntAnm;
|
||||
/* 0x0D3C */ daNpcT_DmgStagger_c mDmgStagger;
|
||||
/* 0x0D58 */ cXyz field_0xd58;
|
||||
/* 0x0D64 */ cXyz field_0xD64;
|
||||
/* 0x0D70 */ cXyz field_0xD70;
|
||||
/* 0x0D7C */ cXyz field_0xD7C;
|
||||
/* 0x0D88 */ cXyz field_0xD88;
|
||||
/* 0x0D94 */ cXyz field_0xD94;
|
||||
/* 0x0D58 */ cXyz mFootLPos;
|
||||
/* 0x0D64 */ cXyz mFootRPos;
|
||||
/* 0x0D70 */ cXyz mFootLOffset;
|
||||
/* 0x0D7C */ cXyz mFootROffset;
|
||||
/* 0x0D88 */ cXyz mOldFootLOffset;
|
||||
/* 0x0D94 */ cXyz mOldFootROffset;
|
||||
/* 0x0DA0 */ cXyz field_0xDA0;
|
||||
/* 0x0DAC */ csXyz mTargetAngle;
|
||||
/* 0x0DAC */ csXyz mCurAngle;
|
||||
/* 0x0DB2 */ csXyz field_0xDB2;
|
||||
/* 0x0DB8 */ csXyz field_0xDB8;
|
||||
/* 0x0DBE */ csXyz field_0xDBE;
|
||||
/* 0x0DC4 */ s32 field_0xdc4;
|
||||
/* 0x0DC4 */ fpc_ProcID mItemPartnerId;
|
||||
/* 0x0DC8 */ u32 mShadowKey;
|
||||
/* 0x0DCC */ u32 field_0xdcc;
|
||||
/* 0x0DD0 */ u32 field_0xdd0;
|
||||
/* 0x0DD4 */ s32 mStaffId;
|
||||
/* 0x0DCC */ u32 mAnmFlags;
|
||||
/* 0x0DD0 */ fpc_ProcID mMsgId;
|
||||
/* 0x0DD4 */ int mStaffId;
|
||||
/* 0x0DD8 */ int mCutType;
|
||||
/* 0x0DDC */ int field_0xddc;
|
||||
/* 0x0DE0 */ int field_0xde0;
|
||||
/* 0x0DE0 */ int mTimerStart;
|
||||
/* 0x0DE4 */ int mTimer;
|
||||
/* 0x0DE8 */ int field_0xde8;
|
||||
/* 0x0DE8 */ int mBtpPauseTimer;
|
||||
/* 0x0DEC */ int field_0xdec;
|
||||
/* 0x0DF0 */ s16 field_0xdf0;
|
||||
/* 0x0DF2 */ u8 field_0xdf2[0x0DFA - 0x0DF2];
|
||||
/* 0x0DFA */ s16 field_0xdfa;
|
||||
/* 0x0DFC */ u8 field_0xdfc[0x0DFE - 0x0DFC];
|
||||
/* 0x0DFE */ s16 field_0xdfe;
|
||||
/* 0x0E00 */ s16 field_0xe00;
|
||||
/* 0x0E04 */ f32 field_0xe04;
|
||||
/* 0x0DF0 */ s16 mGroundAngle;
|
||||
/* 0x0DF2 */ s16 field_0xdf2;
|
||||
/* 0x0DF4 */ s16 mFootLPolyAngle;
|
||||
/* 0x0DF5 */ u8 field_0xdf5[0x0DF8 - 0x0DF6];
|
||||
/* 0x0DF8 */ s16 mFootRPolyAngle;
|
||||
/* 0x0DFA */ s16 mStartAngle;
|
||||
/* 0x0DFC */ s16 mTargetAngle;
|
||||
/* 0x0DFE */ s16 mStepMode;
|
||||
/* 0x0E00 */ s16 mTurnAmount;
|
||||
/* 0x0E04 */ f32 mTurnCount;
|
||||
/* 0x0E08 */ u8 field_0xe08[0x0E0C - 0x0E08];
|
||||
/* 0x0E0C */ f32 field_0xe0c;
|
||||
/* 0x0E10 */ f32 mRadius;
|
||||
/* 0x0E14 */ f32 mGroundHeight;
|
||||
/* 0x0E18 */ u8 field_0xe18[0xe24 - 0xe18];
|
||||
/* 0x0E24 */ s16 field_0xe24;
|
||||
/* 0x0E26 */ u16 field_0xe26;
|
||||
/* 0x0E28 */ u16 field_0xe28;
|
||||
/* 0x0E2A */ u16 field_0xe2a;
|
||||
/* 0x0E18 */ u8 field_0xe18[0xe1c - 0xe18];
|
||||
/* 0x0E1C */ u32 mHitodamaPrtclKey[2];
|
||||
/* 0x0E24 */ s16 mEvtId;
|
||||
/* 0x0E26 */ u16 mMorfLoops;
|
||||
/* 0x0E28 */ u16 mBckLoops;
|
||||
/* 0x0E2A */ u16 mMode;
|
||||
/* 0x0E2C */ u8 field_0xe2c;
|
||||
/* 0x0E2D */ u8 field_0xe2d;
|
||||
/* 0x0E2E */ u8 field_0xe2e[0xe30 - 0xe2e];
|
||||
/* 0x0E2E */ u8 mFootLOnGround;
|
||||
/* 0x0E2F */ u8 mFootROnGround;
|
||||
/* 0x0E30 */ u8 field_0xe30;
|
||||
/* 0x0E31 */ u8 field_0xe31;
|
||||
/* 0x0E32 */ u8 field_0xe32;
|
||||
/* 0x0E32 */ u8 mNoDraw;
|
||||
/* 0x0E33 */ u8 field_0xe33;
|
||||
/* 0x0E33 */ u8 field_0xe34[0xe36 - 0xe34];
|
||||
/* 0x0E36 */ u16 mEvtIdx;
|
||||
/* 0x0E38 */ u8 field_0xe38;
|
||||
/* 0x0E34 */ u8 field_0xe34;
|
||||
/* 0x0E36 */ u16 mEvtNo;
|
||||
/* 0x0E38 */ u8 mSpeakEvent;
|
||||
/* 0x0E39 */ u8 field_0xe39;
|
||||
/* 0x0E3A */ u8 field_0xe3a;
|
||||
/* 0x0E3B */ u8 field_0xe3b;
|
||||
@@ -120,27 +142,21 @@ public:
|
||||
|
||||
public:
|
||||
void initialize() {
|
||||
memset(&field_0xd58, 0, (int)&field_0xe3c - (int)&field_0xd58);
|
||||
memset(&mFootLPos, 0, (int)&field_0xe3c - (int)&mFootLPos);
|
||||
|
||||
mMotionSeqMngr1.initialize();
|
||||
mMotionSeqMngr2.initialize();
|
||||
mFaceMotionSeqMngr.initialize();
|
||||
mMotionSeqMngr.initialize();
|
||||
mActorMngr1.initialize();
|
||||
mActorMngr2.initialize();
|
||||
mJntAnm.initialize();
|
||||
mDmgStagger.initialize();
|
||||
field_0xdc4 = -1;
|
||||
mItemPartnerId = -1;
|
||||
field_0xe2d = 1;
|
||||
field_0x15a4 = 0;
|
||||
mPodAnmFlags = 0;
|
||||
}
|
||||
|
||||
bool checkHide() {
|
||||
bool ret = false;
|
||||
|
||||
if (field_0xe2c != 0 || (!dComIfGs_wolfeye_effect_check() && field_0xABD != 0)) {
|
||||
ret = true;
|
||||
}
|
||||
|
||||
return ret;
|
||||
return field_0xe2c != 0 || (!dComIfGs_wolfeye_effect_check() && mTwilight != 0);
|
||||
}
|
||||
|
||||
int getHeadJointNo() {
|
||||
@@ -155,16 +171,21 @@ public:
|
||||
return 1;
|
||||
}
|
||||
|
||||
bool checkChangeJoint(int i_jointNo) { return i_jointNo == 4; }
|
||||
bool checkRemoveJoint(int i_jointNo) { return i_jointNo == 5; }
|
||||
|
||||
void setCutType(int i_type) { mCutType = i_type;}
|
||||
|
||||
void setActionMode(s8 i_actionMode) { mActionMode = i_actionMode;}
|
||||
s8 getActionMode() { return mActionMode; }
|
||||
|
||||
void setTalkFlag(u8 i_flag) { field_0x15bd = i_flag; }
|
||||
|
||||
/* 80A2AFD4 */ s32 create();
|
||||
/* 80A2B278 */ s32 CreateHeap();
|
||||
/* 80A2B620 */ s32 Delete();
|
||||
/* 80A2B654 */ s32 Execute();
|
||||
/* 80A2B6B0 */ void Draw();
|
||||
/* 80A2AFD4 */ int create();
|
||||
/* 80A2B278 */ int CreateHeap();
|
||||
/* 80A2B620 */ int Delete();
|
||||
/* 80A2B654 */ int Execute();
|
||||
/* 80A2B6B0 */ int Draw();
|
||||
/* 80A2B764 */ static int createHeapCallBack(fopAc_ac_c*);
|
||||
/* 80A2B784 */ static int ctrlJointCallBack(J3DJoint*, int);
|
||||
/* 80A2B7DC */ u8 getType();
|
||||
@@ -184,7 +205,7 @@ public:
|
||||
/* 80A2C1D0 */ void setAfterTalkMotion();
|
||||
/* 80A2C230 */ void srchActors();
|
||||
/* 80A2C234 */ bool evtTalk();
|
||||
/* 80A2C318 */ bool evtCutProc();
|
||||
/* 80A2C318 */ BOOL evtCutProc();
|
||||
/* 80A2C3FC */ void action();
|
||||
/* 80A2C484 */ void beforeMove();
|
||||
/* 80A2C4FC */ void afterMoved();
|
||||
@@ -253,18 +274,18 @@ public:
|
||||
/* 80A37D20 */ void calcSwordAttackMove(int);
|
||||
/* 80A3805C */ void setSe();
|
||||
/* 80A38520 */ static void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*);
|
||||
/* 80A38550 */ void getTrnsfrmAnmP(char const*, int);
|
||||
/* 80A3858C */ void* getTrnsfrmKeyAnmP(char const*, int);
|
||||
/* 80A385C8 */ void getTexPtrnAnmP(char const*, int);
|
||||
/* 80A38604 */ void getTexSRTKeyAnmP(char const*, int);
|
||||
/* 80A38640 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool);
|
||||
/* 80A38550 */ J3DAnmTransform* getTrnsfrmAnmP(char const*, int);
|
||||
/* 80A3858C */ J3DAnmTransformKey* getTrnsfrmKeyAnmP(char const*, int);
|
||||
/* 80A385C8 */ J3DAnmTexPattern* getTexPtrnAnmP(char const*, int);
|
||||
/* 80A38604 */ J3DAnmTextureSRTKey* getTexSRTKeyAnmP(char const*, int);
|
||||
/* 80A38640 */ BOOL setBckAnm(J3DAnmTransform*, f32, int, int, int, bool);
|
||||
/* 80A38684 */ int setMcaMorfAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
|
||||
/* 80A3877C */ void setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int);
|
||||
/* 80A387BC */ void setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int);
|
||||
/* 80A387FC */ cPhs__Step loadRes(s8 const*, char const**);
|
||||
/* 80A3877C */ BOOL setBtpAnm(J3DAnmTexPattern*, J3DModelData*, f32, int);
|
||||
/* 80A387BC */ BOOL setBtkAnm(J3DAnmTextureSRTKey*, J3DModelData*, f32, int);
|
||||
/* 80A387FC */ int loadRes(s8 const*, char const**);
|
||||
/* 80A388B0 */ void deleteRes(s8 const*, char const**);
|
||||
/* 80A38930 */ s32 execute();
|
||||
/* 80A38BB8 */ int draw(int, int, f32, _GXColorS10*, f32, int, int, int);
|
||||
/* 80A38930 */ int execute();
|
||||
/* 80A38BB8 */ int draw(int, int, f32, GXColorS10*, f32, int, int, int);
|
||||
/* 80A38FAC */ void setEnvTevColor();
|
||||
/* 80A39008 */ void setRoomNo();
|
||||
/* 80A3904C */ BOOL checkEndAnm(f32);
|
||||
@@ -279,21 +300,28 @@ public:
|
||||
/* 80A3A7C0 */ bool setMotionAnm(int, f32, int);
|
||||
/* 80A3AA58 */ void setPos(cXyz);
|
||||
/* 80A3AAF0 */ void setAngle(s16);
|
||||
/* 80A3AB18 */ int chkActorInSight(fopAc_ac_c*, f32, s16);
|
||||
/* 80A3AC24 */ int chkPointInArea(cXyz, cXyz, f32, f32, f32, s16);
|
||||
/* 80A3ACD4 */ void chkPointInArea(cXyz, cXyz, cXyz, s16);
|
||||
/* 80A3AB18 */ BOOL chkActorInSight(fopAc_ac_c*, f32, s16);
|
||||
/* 80A3AC24 */ BOOL chkPointInArea(cXyz, cXyz, f32, f32, f32, s16);
|
||||
/* 80A3ACD4 */ BOOL chkPointInArea(cXyz, cXyz, cXyz, s16);
|
||||
/* 80A3AD50 */ int chkFindPlayer(int, s16);
|
||||
/* 80A3AF64 */ BOOL srchPlayerActor();
|
||||
/* 80A3B000 */ cXyz getAttnPos(fopAc_ac_c*);
|
||||
/* 80A3B074 */ BOOL turn(s16, int, int);
|
||||
/* 80A3B220 */ s32 step(s16, int, int, int, int);
|
||||
/* 80A3B3E8 */ s32 initTalk(int, fopAc_ac_c**);
|
||||
/* 80A3B220 */ int step(s16, int, int, int, int);
|
||||
/* 80A3B3E8 */ int initTalk(int, fopAc_ac_c**);
|
||||
/* 80A3B448 */ BOOL talkProc(int*, int, fopAc_ac_c**, int);
|
||||
/* 80A3B5EC */ void setHitodamaPrtcl();
|
||||
/* 80A3B82C */ daNpc_Kn_c(daNpcT_faceMotionAnmData_c const*, daNpcT_motionAnmData_c const*,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int,
|
||||
daNpcT_evtData_c const*, char**);
|
||||
/* 80A3B82C */ daNpc_Kn_c(daNpcT_faceMotionAnmData_c const* param_0,
|
||||
daNpcT_motionAnmData_c const* param_1,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, int param_3,
|
||||
daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, int param_5,
|
||||
daNpcT_evtData_c const* param_6, char** param_7)
|
||||
: mpFaceMotionAnmData(param_0), mpMotionAnmData(param_1), mFaceMotionSeqMngr(param_2, param_3),
|
||||
mMotionSeqMngr(param_4, param_5), mpEventData(param_6), mpArcNames(param_7)
|
||||
{
|
||||
OS_REPORT("|%06d:%x|daNpc_Kn_c -> コンストラクト\n", g_Counter.mCounter0, this);
|
||||
initialize();
|
||||
}
|
||||
/* 80A3C998 */ u32 setParamTeach01();
|
||||
/* 80A3CB14 */ void setCollisionTeach01();
|
||||
/* 80A3CBFC */ void teach01_selectAction();
|
||||
@@ -314,32 +342,33 @@ public:
|
||||
/* 80A3F99C */ int ECut_secondSkillExplain(int);
|
||||
/* 80A3FFB4 */ int ECut_reflectExplain(int);
|
||||
/* 80A403B8 */ int ECut_secondSkillGet(int);
|
||||
|
||||
/* 80A3949C */ virtual int ctrlBtk();
|
||||
/* 80A3B7B4 */ virtual s32 getFootLJointNo();
|
||||
/* 80A3B7AC */ virtual s32 getFootRJointNo();
|
||||
/* 80A3BD1C */ virtual u16 getEyeballLMaterialNo();
|
||||
/* 80A3BD24 */ virtual u16 getEyeballRMaterialNo();
|
||||
/* 80A3BD14 */ virtual u16 getEyeballMaterialNo();
|
||||
/* 80A3B7B4 */ virtual int getFootLJointNo() { return -1; }
|
||||
/* 80A3B7AC */ virtual int getFootRJointNo() { return -1; }
|
||||
/* 80A3BD1C */ virtual u16 getEyeballLMaterialNo() { return 0; }
|
||||
/* 80A3BD24 */ virtual u16 getEyeballRMaterialNo() { return 0; }
|
||||
/* 80A3BD14 */ virtual u16 getEyeballMaterialNo() { return 0; }
|
||||
/* 80A3989C */ virtual int ctrlJoint(J3DJoint*, J3DModel*);
|
||||
/* 80A3B720 */ virtual void afterJntAnm(int);
|
||||
/* 80A3B7A4 */ virtual BOOL checkChangeEvt();
|
||||
/* 80A3B720 */ virtual void afterJntAnm(int) {}
|
||||
/* 80A3B7A4 */ virtual BOOL checkChangeEvt() { return FALSE; }
|
||||
/* 80A3B79C */ virtual BOOL evtEndProc() { return TRUE; }
|
||||
/* 80A39BBC */ virtual int evtProc();
|
||||
/* 80A3B79C */ virtual BOOL evtEndProc();
|
||||
/* 80A39DBC */ virtual void setFootPos();
|
||||
/* 80A39F84 */ virtual void setFootPrtcl(cXyz*, f32);
|
||||
/* 80A3A254 */ virtual bool checkCullDraw();
|
||||
/* 80A3A25C */ virtual void twilight();
|
||||
/* 80A3B7BC */ virtual BOOL chkXYItems();
|
||||
/* 80A3B7BC */ virtual BOOL chkXYItems() { return FALSE; }
|
||||
/* 80A3A2A8 */ virtual void evtOrder();
|
||||
/* 80A3B708 */ virtual void decTmr();
|
||||
/* 80A3A504 */ virtual void clrParam();
|
||||
/* 80A3B7C4 */ virtual bool afterSetFaceMotionAnm(int, int, f32, int);
|
||||
/* 80A3B7C4 */ virtual bool afterSetFaceMotionAnm(int, int, f32, int) { return true; }
|
||||
/* 80A3B7CC */ virtual daNpcT_faceMotionAnmData_c getFaceMotionAnm(daNpcT_faceMotionAnmData_c);
|
||||
/* 80A3B7FC */ virtual daNpcT_motionAnmData_c getMotionAnm(daNpcT_motionAnmData_c);
|
||||
/* 80A2AA0C */ virtual ~daNpc_Kn_c();
|
||||
/* 80A2D060 */ virtual bool afterSetMotionAnm(int, int, f32, int);
|
||||
|
||||
static u8 const mCcDObjData[48];
|
||||
static const dCcD_SrcGObjInf mCcDObjData;
|
||||
static dCcD_SrcCyl mCcDCyl;
|
||||
static dCcD_SrcSph mCcDSph;
|
||||
static char* mCutNameList[21];
|
||||
@@ -349,14 +378,14 @@ public:
|
||||
static u8 mFindCount[4];
|
||||
|
||||
private:
|
||||
/* 0x0E44 */ J3DModel* mpModel;
|
||||
/* 0x0E44 */ J3DModel* mpPodModel;
|
||||
/* 0x0E48 */ mDoExt_invisibleModel mInvisModel;
|
||||
/* 0x0E50 */ dKy_tevstr_c mTevStr;
|
||||
/* 0x11D8 */ u8 field_0x11D8[0x11DC - 0x11D8];
|
||||
/* 0x11DC */ dCcD_Cyl mCylCc;
|
||||
/* 0x1318 */ dCcD_Sph mSphCc[2];
|
||||
/* 0x1588 */ mDoExt_bckAnm field_0x1588;
|
||||
/* 0x15A4 */ u32 field_0x15a4;
|
||||
/* 0x1588 */ mDoExt_bckAnm mPodBck;
|
||||
/* 0x15A4 */ u32 mPodAnmFlags;
|
||||
/* 0x15A8 */ u32 field_0x15A8;
|
||||
/* 0x15AC */ u8 mType;
|
||||
/* 0x15AD */ u8 mDivideNo;
|
||||
@@ -371,16 +400,17 @@ private:
|
||||
/* 0x15CD */ u8 field_0x15cd;
|
||||
/* 0x15CE */ u8 field_0x15ce;
|
||||
/* 0x15CF */ u8 field_0x15cf;
|
||||
/* 0x15D0 */ u16 field_0x15d0;
|
||||
/* 0x15D4 */ s32 field_0x15d4[3];
|
||||
/* 0x15D0 */ s16 field_0x15d0;
|
||||
/* 0x15D4 */ int field_0x15d4[3];
|
||||
/* 0x15E0 */ daNpc_Kn_prtclMngr_c mParticleMngr[3];
|
||||
/* 0x16F4 */ cXyz field_0x16f4;
|
||||
/* 0x1700 */ u8 field_0x1700[0x170c - 0x1700];
|
||||
/* 0x1700 */ cXyz field_0x1700;
|
||||
/* 0x170C */ u8 field_0x170c;
|
||||
/* 0x170D */ u8 field_0x170d;
|
||||
/* 0x170E */ u8 field_0x170e;
|
||||
/* 0x170F */ u8 field_0x170f;
|
||||
/* 0x1710 */ u8 field_0x1710[4];
|
||||
/* 0x1710 */ s16 field_0x1710;
|
||||
/* 0x1712 */ s16 field_0x1712;
|
||||
/* 0x1714 */ actionFunc mpTeachAction;
|
||||
/* 0x1720 */ actionFunc mpActionFunc;
|
||||
/* 0x172C */ daNpcT_Path_c mPath;
|
||||
@@ -391,19 +421,19 @@ STATIC_ASSERT(sizeof(daNpc_Kn_c) == 0x1758);
|
||||
|
||||
struct daNpc_Kn_HIOParam {
|
||||
/* 0x00 */ daNpcT_HIOParam common;
|
||||
/* 0x8C */ s16 field_0x8c;
|
||||
/* 0x8E */ s16 field_0x8e;
|
||||
/* 0x90 */ s16 field_0x90;
|
||||
/* 0x92 */ s16 field_0x92;
|
||||
/* 0x94 */ f32 field_0x94;
|
||||
/* 0x98 */ f32 field_0x98;
|
||||
/* 0x9C */ f32 field_0x9c;
|
||||
/* 0xA0 */ f32 field_0xa0;
|
||||
/* 0xA4 */ f32 field_0xa4;
|
||||
/* 0xA8 */ u32 field_0xa8;
|
||||
/* 0xAC */ s16 field_0xac;
|
||||
/* 0xAE */ s16 field_0xae;
|
||||
/* 0xB0 */ f32 field_0xb0;
|
||||
/* 0x8C */ s16 alpha;
|
||||
/* 0x8E */ s16 attack_wait_time;
|
||||
/* 0x90 */ s16 followup_wait_time; // ?
|
||||
/* 0x94 */ f32 small_slide_distance;
|
||||
/* 0x98 */ f32 big_slide_distance;
|
||||
/* 0x9C */ f32 warp_distance;
|
||||
/* 0xA0 */ f32 attack_disappear_speed_h; // ?
|
||||
/* 0xA4 */ f32 attack_disappear_speed_v; // ?
|
||||
/* 0xA8 */ s16 rotation_num;
|
||||
/* 0xAA */ s16 rotation_speed;
|
||||
/* 0xAC */ s16 attack_start_min_time;
|
||||
/* 0xAE */ s16 attack_start_time_range;
|
||||
/* 0xB0 */ f32 move_speed;
|
||||
};
|
||||
|
||||
class daNpc_Kn_Param_c {
|
||||
|
||||
@@ -23,6 +23,7 @@ public:
|
||||
/* 80C477B4 */ void hitPrtclSet();
|
||||
|
||||
u8 getActionMode() { return mActionMode; }
|
||||
void setActionMode(u8 i_action) { mActionMode = i_action; }
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x70c - 0x568];
|
||||
|
||||
@@ -949,6 +949,12 @@ public:
|
||||
void onFishingRodReelEnd() { onEndResetFlg0(ERFLG0_UNK_20000); }
|
||||
void onFishingHit() { onEndResetFlg0(ERFLG0_UNK_10000); }
|
||||
void onFishingKeep() { onEndResetFlg2(ERFLG2_UNK_1); }
|
||||
void onTraningCutHead() { onNoResetFlg3(FLG3_UNK_40); }
|
||||
void onTraningCutFast() { onNoResetFlg3(FLG3_UNK_80); }
|
||||
void onTraningCutLargeJump() { onNoResetFlg3(FLG3_UNK_200); }
|
||||
void onTraningCutLargeTurn() { onNoResetFlg3(FLG3_UNK_100); }
|
||||
void onTraningCutDown() { onNoResetFlg3(FLG3_UNK_10); }
|
||||
void onTraningShieldAttack() { onNoResetFlg3(FLG3_UNK_8); }
|
||||
|
||||
BOOL checkStickArrowReset() const { return checkResetFlg0(RFLG0_UNK_1); }
|
||||
u32 getCutAtFlg() const { return checkNoResetFlg0(FLG0_UNK_40); }
|
||||
|
||||
@@ -309,6 +309,7 @@ u8 dMeter2Info_getNewLetterNum();
|
||||
int dMeter2Info_setNewLetterSender();
|
||||
bool dMeter2Info_isItemOpenCheck();
|
||||
bool dMeter2Info_isMapOpenCheck();
|
||||
s16 dMeter2Info_getNowLifeGauge();
|
||||
|
||||
inline void dMeter2Info_Initialize() {
|
||||
g_meter2_info.init();
|
||||
|
||||
@@ -1288,7 +1288,7 @@ void daNpc_GWolf_c::setExpression(int param_0, f32 param_1) {
|
||||
}
|
||||
|
||||
/* 809F4BBC-809F4DE8 001BFC 022C+00 2/0 0/0 0/0 .text setMotionAnm__13daNpc_GWolf_cFif */
|
||||
bool daNpc_GWolf_c::setMotionAnm(int param_0, f32 param_1) {
|
||||
void daNpc_GWolf_c::setMotionAnm(int param_0, f32 param_1) {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
|
||||
+3203
-2196
File diff suppressed because it is too large
Load Diff
+708
-348
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user