From 606178dc88e162969a636644f410c72cbb5eca64 Mon Sep 17 00:00:00 2001 From: hatal175 Date: Sat, 26 Oct 2024 09:44:26 +0300 Subject: [PATCH] Work on daNpc_Hanjo_c (#2225) --- .vscode/settings.json | 11 + configure.py | 2 +- include/SSystem/SComponent/c_cc_d.h | 2 + include/d/actor/d_a_npc.h | 250 +- include/d/actor/d_a_npc_ash.h | 2 +- include/d/actor/d_a_npc_ashB.h | 2 +- include/d/actor/d_a_npc_blue_ns.h | 2 +- include/d/actor/d_a_npc_bou.h | 2 +- include/d/actor/d_a_npc_bouS.h | 2 +- include/d/actor/d_a_npc_chat.h | 2 +- include/d/actor/d_a_npc_chin.h | 2 +- include/d/actor/d_a_npc_doorboy.h | 2 +- include/d/actor/d_a_npc_drainSol.h | 2 +- include/d/actor/d_a_npc_fairy.h | 4 +- include/d/actor/d_a_npc_gra.h | 2 +- include/d/actor/d_a_npc_grc.h | 2 +- include/d/actor/d_a_npc_grd.h | 2 +- include/d/actor/d_a_npc_grm.h | 2 +- include/d/actor/d_a_npc_grmc.h | 2 +- include/d/actor/d_a_npc_gro.h | 2 +- include/d/actor/d_a_npc_grr.h | 2 +- include/d/actor/d_a_npc_grs.h | 2 +- include/d/actor/d_a_npc_grz.h | 2 +- include/d/actor/d_a_npc_gwolf.h | 2 +- include/d/actor/d_a_npc_hanjo.h | 289 +- include/d/actor/d_a_npc_hoz.h | 6 +- include/d/actor/d_a_npc_impal.h | 2 +- include/d/actor/d_a_npc_ins.h | 2 +- include/d/actor/d_a_npc_jagar.h | 2 +- include/d/actor/d_a_npc_kasi_hana.h | 2 +- include/d/actor/d_a_npc_kasi_kyu.h | 2 +- include/d/actor/d_a_npc_kasi_mich.h | 2 +- include/d/actor/d_a_npc_kn.h | 6 +- include/d/actor/d_a_npc_len.h | 2 +- include/d/actor/d_a_npc_lud.h | 2 +- include/d/actor/d_a_npc_maro.h | 2 +- include/d/actor/d_a_npc_moir.h | 2 +- include/d/actor/d_a_npc_myna2.h | 2 +- include/d/actor/d_a_npc_pachi_maro.h | 2 +- include/d/actor/d_a_npc_post.h | 2 +- include/d/actor/d_a_npc_pouya.h | 2 +- include/d/actor/d_a_npc_prayer.h | 2 +- include/d/actor/d_a_npc_rafrel.h | 2 +- include/d/actor/d_a_npc_shad.h | 2 +- include/d/actor/d_a_npc_shaman.h | 2 +- include/d/actor/d_a_npc_shoe.h | 2 +- include/d/actor/d_a_npc_soldierA.h | 2 +- include/d/actor/d_a_npc_soldierB.h | 2 +- include/d/actor/d_a_npc_the.h | 2 +- include/d/actor/d_a_npc_theB.h | 2 +- include/d/actor/d_a_npc_tk.h | 15 +- include/d/actor/d_a_npc_tkc.h | 2 +- include/d/actor/d_a_npc_tks.h | 2 +- include/d/actor/d_a_npc_wrestler.h | 2 +- include/d/actor/d_a_npc_yamid.h | 2 +- include/d/actor/d_a_npc_yamis.h | 2 +- include/d/actor/d_a_npc_yamit.h | 2 +- include/d/actor/d_a_npc_yelia.h | 2 +- include/d/actor/d_a_npc_zra.h | 2 +- include/d/actor/d_a_npc_zrc.h | 2 +- include/d/actor/d_a_npc_zrz.h | 2 +- include/d/actor/d_a_obj_tks.h | 2 +- include/d/actor/d_a_peru.h | 2 +- include/d/actor/d_a_tag_push.h | 2 +- include/d/actor/d_a_tag_theB_hint.h | 2 +- include/d/d_com_inf_game.h | 4 + include/f_op/f_op_actor_mng.h | 6 + include/m_Do/m_Do_ext.h | 1 + src/d/actor/d_a_npc.cpp | 101 +- src/d/actor/d_a_npc_aru.cpp | 2 +- src/d/actor/d_a_npc_ash.cpp | 2 +- src/d/actor/d_a_npc_ashB.cpp | 4 +- src/d/actor/d_a_npc_blue_ns.cpp | 4 +- src/d/actor/d_a_npc_bou.cpp | 6 +- src/d/actor/d_a_npc_bouS.cpp | 4 +- src/d/actor/d_a_npc_chat.cpp | 4 +- src/d/actor/d_a_npc_chin.cpp | 4 +- src/d/actor/d_a_npc_doorboy.cpp | 4 +- src/d/actor/d_a_npc_drainSol.cpp | 4 +- src/d/actor/d_a_npc_fairy.cpp | 8 +- src/d/actor/d_a_npc_fairy_seirei.cpp | 20 +- src/d/actor/d_a_npc_gnd.cpp | 20 +- src/d/actor/d_a_npc_gra.cpp | 4 +- src/d/actor/d_a_npc_grc.cpp | 4 +- src/d/actor/d_a_npc_grd.cpp | 4 +- src/d/actor/d_a_npc_grm.cpp | 6 +- src/d/actor/d_a_npc_grmc.cpp | 6 +- src/d/actor/d_a_npc_gro.cpp | 4 +- src/d/actor/d_a_npc_grr.cpp | 4 +- src/d/actor/d_a_npc_grs.cpp | 4 +- src/d/actor/d_a_npc_grz.cpp | 4 +- src/d/actor/d_a_npc_gwolf.cpp | 4 +- src/d/actor/d_a_npc_hanjo.cpp | 3625 ++++++++++++++------------ src/d/actor/d_a_npc_hoz.cpp | 21 +- src/d/actor/d_a_npc_impal.cpp | 4 +- src/d/actor/d_a_npc_ins.cpp | 4 +- src/d/actor/d_a_npc_jagar.cpp | 6 +- src/d/actor/d_a_npc_kakashi.cpp | 20 +- src/d/actor/d_a_npc_kasi_hana.cpp | 4 +- src/d/actor/d_a_npc_kasi_kyu.cpp | 4 +- src/d/actor/d_a_npc_kasi_mich.cpp | 4 +- src/d/actor/d_a_npc_kn.cpp | 10 +- src/d/actor/d_a_npc_knj.cpp | 20 +- src/d/actor/d_a_npc_kolinb.cpp | 10 +- src/d/actor/d_a_npc_len.cpp | 6 +- src/d/actor/d_a_npc_lud.cpp | 6 +- src/d/actor/d_a_npc_maro.cpp | 6 +- src/d/actor/d_a_npc_midp.cpp | 10 +- src/d/actor/d_a_npc_moir.cpp | 4 +- src/d/actor/d_a_npc_myna2.cpp | 4 +- src/d/actor/d_a_npc_pachi_maro.cpp | 6 +- src/d/actor/d_a_npc_post.cpp | 6 +- src/d/actor/d_a_npc_pouya.cpp | 6 +- src/d/actor/d_a_npc_prayer.cpp | 4 +- src/d/actor/d_a_npc_rafrel.cpp | 4 +- src/d/actor/d_a_npc_saru.cpp | 19 +- src/d/actor/d_a_npc_seib.cpp | 21 +- src/d/actor/d_a_npc_seic.cpp | 20 +- src/d/actor/d_a_npc_seid.cpp | 20 +- src/d/actor/d_a_npc_seirei.cpp | 20 +- src/d/actor/d_a_npc_shad.cpp | 4 +- src/d/actor/d_a_npc_shaman.cpp | 6 +- src/d/actor/d_a_npc_shoe.cpp | 4 +- src/d/actor/d_a_npc_shop_maro.cpp | 20 +- src/d/actor/d_a_npc_sola.cpp | 20 +- src/d/actor/d_a_npc_soldierA.cpp | 4 +- src/d/actor/d_a_npc_soldierB.cpp | 4 +- src/d/actor/d_a_npc_the.cpp | 2 +- src/d/actor/d_a_npc_theB.cpp | 4 +- src/d/actor/d_a_npc_tkc.cpp | 4 +- src/d/actor/d_a_npc_tks.cpp | 4 +- src/d/actor/d_a_npc_wrestler.cpp | 4 +- src/d/actor/d_a_npc_yamid.cpp | 6 +- src/d/actor/d_a_npc_yamis.cpp | 6 +- src/d/actor/d_a_npc_yamit.cpp | 6 +- src/d/actor/d_a_npc_yelia.cpp | 6 +- src/d/actor/d_a_npc_zant.cpp | 20 +- src/d/actor/d_a_npc_zelR.cpp | 10 +- src/d/actor/d_a_npc_zelRo.cpp | 10 +- src/d/actor/d_a_npc_zelda.cpp | 10 +- src/d/actor/d_a_npc_zra.cpp | 2 +- src/d/actor/d_a_npc_zrc.cpp | 4 +- src/d/actor/d_a_npc_zrz.cpp | 2 +- src/d/actor/d_a_obj_sekizoa.cpp | 62 +- src/d/actor/d_a_obj_tks.cpp | 4 +- src/d/actor/d_a_peru.cpp | 6 +- src/d/actor/d_a_tag_allmato.cpp | 4 +- src/d/actor/d_a_tag_push.cpp | 8 +- 148 files changed, 2720 insertions(+), 2359 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index aa49e1702fe..8050d3fc72b 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -23,7 +23,18 @@ "search.useIgnoreFiles": false, "search.exclude": { "build/*/config.json": true, + "build/*/report.json": true, "build/**/*.MAP": true, + "build/**/*.o": true, + "build/**/*.plf": true, + "build/**/*.rel": true, + "build/**/*.lcf": true, + "build/**/*.preplf": true, + "build/**/*.d": true, + "build/**/*.s": true, + "build/**/*.map": true, + "build/**/*.cpp": true, + "build/**/*.ctx": true, "build.ninja": true, ".ninja_*": true, "objdiff.json": true, diff --git a/configure.py b/configure.py index 61940128fb9..b045ca971af 100644 --- a/configure.py +++ b/configure.py @@ -1394,7 +1394,7 @@ config.libs = [ ActorRel(Matching, "d_a_tag_lantern"), ActorRel(Matching, "d_a_tag_mist"), ActorRel(Matching, "d_a_tag_msg"), - ActorRel(Matching, "d_a_tag_push"), + ActorRel(Matching, "d_a_tag_push", extra_cflags=['-pragma "nosyminline off"']), ActorRel(Matching, "d_a_tag_telop"), ActorRel(NonMatching, "d_a_tbox"), ActorRel(Matching, "d_a_tbox2"), diff --git a/include/SSystem/SComponent/c_cc_d.h b/include/SSystem/SComponent/c_cc_d.h index bd02aa56e8b..93fa315a57f 100644 --- a/include/SSystem/SComponent/c_cc_d.h +++ b/include/SSystem/SComponent/c_cc_d.h @@ -445,6 +445,7 @@ public: u32 GetVsGrp() const { return MskSPrm(0x70); } u32 GetIGrp() const { return MskSPrm(0xE); } u32 ChkNoCrr() const { return MskSPrm(0x100); } + void OnNoCrrBit() { OnSPrmBit(0x100); } u32 ChkSph3DCrr() const { return MskSPrm(0x80); } void ClrSet() { OffSPrmBit(1); } u32 ChkHit() { return MskRPrm(1); } @@ -487,6 +488,7 @@ public: void SetCoHit(cCcD_Obj* obj) { mObjCo.SetHit(obj); } BOOL ChkAtType(u32 type) const { return mObjAt.MskType(type); } u32 ChkCoNoCrr() const { return mObjCo.ChkNoCrr(); } + void OnCoNoCrrBit() { mObjCo.OnNoCrrBit(); } u32 ChkCoSph3DCrr() const { return mObjCo.ChkSph3DCrr(); } void OnAtSPrmBit(u32 flag) { mObjAt.OnSPrmBit(flag); } void OffAtSPrmBit(u32 flag) { mObjAt.OffSPrmBit(flag); } diff --git a/include/d/actor/d_a_npc.h b/include/d/actor/d_a_npc.h index f539005b21b..5446c627e64 100644 --- a/include/d/actor/d_a_npc.h +++ b/include/d/actor/d_a_npc.h @@ -2,6 +2,7 @@ #define D_A_D_A_NPC_H #include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" +#include "SSystem/SComponent/c_math.h" #include "Z2AudioLib/Z2Creature.h" #include "d/actor/d_a_player.h" #include "d/d_path.h" @@ -34,7 +35,7 @@ public: daNpcT_ActorMngr_c() { initialize(); }; - /* 8014D108 */ virtual ~daNpcT_ActorMngr_c(); + /* 8014D108 */ virtual ~daNpcT_ActorMngr_c() {} }; class daNpcT_MatAnm_c : public J3DMaterialAnm { @@ -47,6 +48,7 @@ private: /* 0x105 */ u8 field_0x105; public: + daNpcT_MatAnm_c() { initialize(); } /* 80145764 */ void initialize(); /* 80145788 */ virtual void calc(J3DMaterial*) const; /* 8014D24C */ ~daNpcT_MatAnm_c(); @@ -65,10 +67,27 @@ public: /* 801458C0 */ int play(u16, int*, f32*); /* 80145A24 */ s32 checkEndSequence(); + daNpcT_MotionSeqMngr_c(sequenceStepData_c const* param_1,int param_2) : + mpSeqData(param_1), field_0x4(param_2) { + initialize(); + } + bool checkEntryNewMotion() { return mStepNo == 0 && field_0x14 == -1; } + int getNo() { return mNo; } + int getStepNo() { return mStepNo; } + void setNo(int param_1, f32 param_2, int param_3, int param_4) { + int newNo = param_4 + param_1; + if (param_1 >= 0 && (param_3 != 0 || newNo != mNo)) { + int offset = mOffset; + initialize(); + mOffset = offset; + mNo = newNo; + field_0x18 = param_2; + } + } private: - /* 0x00 */ sequenceStepData_c* mpSeqData; + /* 0x00 */ sequenceStepData_c const* mpSeqData; /* 0x04 */ int field_0x4; /* 0x08 */ int mNo; /* 0x0C */ int mOffset; @@ -78,7 +97,7 @@ private: /* 0x1C */ bool mEndSequence; public: - /* 8014D0C0 */ virtual ~daNpcT_MotionSeqMngr_c(); + /* 8014D0C0 */ virtual ~daNpcT_MotionSeqMngr_c() {} }; class daNpcT_JntAnm_c { @@ -116,10 +135,87 @@ public: f32, f32, f32, f32, f32, f32, cXyz*); /* 80147858 */ void calc(f32); /* 80147C38 */ void calcJntRad(f32, f32, f32); + void setEyeAngleX(cXyz param_1, f32 param_2, s16 param_3) { + cXyz cStack_50; + s16 sVar3 = 0; + if (field_0x20 != NULL) { + cStack_50 = *field_0x20 - param_1; + sVar3 = -cM_atan2s(cStack_50.y, cStack_50.absXZ()); + sVar3 += param_3; + } + sVar3 += field_0x150.x; + mEyeAngle.x = field_0x132.x * (1.0f - 1.0f / param_2) + + sVar3 * (1.0f / param_2); + } + + void setEyeAngleY(cXyz param_1, s16 param_2, int param_3, f32 param_4, s16 param_5) { + cXyz cStack_50; + s16 sVar3 = 0; + if (field_0x20 != NULL) { + cStack_50 = *field_0x20 - param_1; + sVar3 = cM_atan2s(cStack_50.x, cStack_50.z); + sVar3 -= param_2; + s16 diff = field_0x150.y - param_2; + sVar3 -= diff; + sVar3 += param_5; + } + if (param_3 != 0) { + sVar3 = -sVar3; + } + mEyeAngle.y = field_0x132.y * (1.0f - 1.0f / param_4) + + sVar3 * (1.0f / param_4); + } - /* 8014D150 */ virtual ~daNpcT_JntAnm_c(); + daNpcT_JntAnm_c() { + initialize(); + } + /* 8014D150 */ virtual ~daNpcT_JntAnm_c() {} void clrDirectFlag() { mDirectFlag = 0; } + int getMode() { return mMode; } + + int setMode(int mode, int param_2) { + if (mode >= 0 && (param_2 != 0 || mode != mMode)) { + mActrMngr.remove(); + field_0x20 = NULL; + field_0x14c = 0.0f; + mDirectFlag = 0; + mMode = mode; + return 1; + } + return 0; + } + + void setDirect(u8 isDirect) { + if (isDirect != 0) { + mEyeAngle.x = 0; + mEyeAngle.y = 0; + } + mDirectFlag = isDirect; + } + + void lookNone(u8 isDirect) { + setMode(0, 0); + setDirect(isDirect); + } + + void lookPlayer(u8 isDirect) { + setMode(1, 0); + setDirect(isDirect); + } + + void lookCamera(u8 isDirect) { + setMode(4, 0); + setDirect(isDirect); + } + + void lookActor(fopAc_ac_c* param_1, f32 param_2, u8 isDirect) { + if (setMode(2, mActrMngr.getActorP() != param_1) && fopAcM_IsActor(param_1)) { + mActrMngr.entry(param_1); + field_0x14c = param_2; + } + setDirect(isDirect); + } }; class daNpcT_DmgStagger_c { @@ -127,16 +223,34 @@ public: /* 80147DCC */ void setParam(fopAc_ac_c*, fopAc_ac_c*, s16); /* 80147E3C */ void calc(int); + void initialize() { + for (int i = 0; i < 2; i++) { + field_0x0[i].setall(0); + field_0xc[i] = 0.0f; + } + mStagger = 0; + field_0x16 = 0; + mRebirth = 0; + } + + int checkStagger() { return mStagger != 0; } + + s16 getAngleX(int idx) { return field_0x0[idx].x; } + s16 getAngleZ(int idx) { return field_0x0[idx].z; } + int checkRebirth() { return mRebirth; } + private: /* 0x00 */ csXyz field_0x0[2]; - /* 0x0C */ f32 field_0xc; - /* 0x0C */ f32 field_0x10; + /* 0x0C */ f32 field_0xc[2]; /* 0x14 */ s16 mStagger; /* 0x16 */ s16 field_0x16; - /* 0x18 */ u8 mRebirth; + /* 0x18 */ bool mRebirth; }; -struct daNpcT_evtData_c {}; +struct daNpcT_evtData_c { + const char* eventName; + int num; +}; struct daNpcT_faceMotionAnmData_c { u32 field_0x0[6]; @@ -160,7 +274,7 @@ public: }; class daNpcT_Path_c { -private: +public: /* 0x00 */ dPath* mpRoomPath; /* 0x04 */ cXyz mPosition; /* 0x10 */ f32 field_0x10; @@ -171,7 +285,6 @@ private: /* 0x20 */ u8 mDirection; /* 0x21 */ u8 mIsClosed; -public: /* 80145B7C */ void hermite(cXyz&, cXyz&, cXyz&, cXyz&, daNpcT_Hermite_c&, cXyz&); /* 80145C40 */ void initialize(); /* 80145C74 */ int setPathInfo(u8, s8, u8); @@ -182,6 +295,10 @@ 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; } @@ -204,9 +321,9 @@ class mDoExt_McaMorfSO; class daNpcT_c : public fopAc_ac_c { public: - /* 0x568 */ daNpcT_faceMotionAnmData_c* field_0x568; - /* 0x56C */ daNpcT_motionAnmData_c* field_0x56c; - /* 0x570 */ daNpcT_evtData_c* field_0x570; + /* 0x568 */ daNpcT_faceMotionAnmData_c const* field_0x568; + /* 0x56C */ daNpcT_motionAnmData_c const* field_0x56c; + /* 0x570 */ daNpcT_evtData_c const* field_0x570; /* 0x574 */ char** field_0x574; /* 0x578 */ mDoExt_McaMorfSO* mpMorf[2]; /* 0x580 */ Z2Creature field_0x580; @@ -220,14 +337,15 @@ public: /* 0x8A0 */ dBgS_AcchCir field_0x8a0; /* 0x8E0 */ request_of_phase_process_class field_0x8e0[10]; /* 0x930 */ cBgS_GndChk field_0x930; - /* 0x96C */ u8 field_0xa6c[8]; + /* 0x96C */ daNpcT_MatAnm_c* field_0x96c; + /* 0x970 */ u8 field_0x970[4]; /* 0x974 */ dMsgFlow_c mFlow; /* 0x9C0 */ dPaPoT_c field_0x9c0; /* 0xA40 */ dCcD_Stts field_0xa40; - /* 0xA7C */ u8 field_0xa7c[4]; + /* 0xA7C */ u32 field_0xa7c; /* 0xA80 */ f32 field_0xa80; /* 0xA84 */ f32 field_0xa84; - /* 0xA89 */ u8 field_0xa88; + /* 0xA88 */ u8 field_0xa88; /* 0xA89 */ u8 field_0xa89; /* 0xA8C */ dBgS_GndChk field_0xa8c; /* 0xAE0 */ dBgS_LinChk field_0xae0; @@ -260,7 +378,7 @@ public: /* 0xDB8 */ int field_0xdb8; /* 0xDBC */ int mTimer; /* 0xDC0 */ int field_0xdc0; - /* 0xDC4 */ u8 field_0xdc4[4]; + /* 0xDC4 */ int field_0xdc4; /* 0xDC8 */ s16 field_0xdc8; /* 0xDCA */ s16 field_0xdca; /* 0xDCC */ u8 field_0xdcc[10]; @@ -270,9 +388,11 @@ public: /* 0xDDC */ f32 field_0xddc; /* 0xDE0 */ f32 field_0xde0; /* 0xDE4 */ f32 field_0xde4; - /* 0xDE8 */ u8 field_0xde8[0xC]; + /* 0xDE8 */ f32 field_0xde8; + /* 0xDEC */ f32 field_0xdec; + /* 0xDF0 */ f32 field_0xdf0; /* 0xDF4 */ f32 field_0xdf4; - /* 0xDF8 */ u8 field_0xdf8[4]; + /* 0xDF8 */ f32 field_0xdf8; /* 0xDFC */ f32 field_0xdfc; /* 0xE00 */ cXyz field_0xe00; /* 0xE0C */ cXyz field_0xe0c; @@ -304,7 +424,19 @@ public: /* 0xE3C vtable */ public: - /* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); + daNpcT_c(daNpcT_faceMotionAnmData_c const* param_1, daNpcT_motionAnmData_c const* param_2, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6, daNpcT_evtData_c const* param_7, + char** param_8) : + field_0x568(param_1), + field_0x56c(param_2), + field_0x570(param_7), + field_0x574(param_8), + field_0xb50(param_3, param_4), + field_0xb74(param_5, param_6) { + initialize(); + } + /* 80147FA4 */ static void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*); /* 80147FD4 */ static int srchActor(void*, void*); /* 80148058 */ J3DAnmTransform* getTrnsfrmAnmP(char const*, int); /* 80148094 */ J3DAnmTransformKey* getTrnsfrmKeyAnmP(char const*, int); @@ -332,50 +464,50 @@ public: /* 80149300 */ void ctrlMotion(); /* 801493B8 */ int ctrlMsgAnm(int*, int*, fopAc_ac_c*, int); /* 8014A224 */ void evtChange(); - /* 8014A388 */ void setFaceMotionAnm(int, bool); + /* 8014A388 */ bool setFaceMotionAnm(int, bool); /* 8014A908 */ void setPos(cXyz); /* 8014AA18 */ void setAngle(s16); /* 8014A99C */ void setAngle(csXyz); /* 8014AA40 */ fopAc_ac_c* hitChk(dCcD_GObjInf*, u32); /* 8014AAD0 */ void setDamage(int, int, int); - /* 8014ABD0 */ void chkActorInSight(fopAc_ac_c*, f32, s16); - /* 8014ACF0 */ void chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); - /* 8014ADA0 */ void chkPointInArea(cXyz, cXyz, cXyz, s16); + /* 8014ABD0 */ BOOL chkActorInSight(fopAc_ac_c*, f32, s16); + /* 8014ACF0 */ BOOL chkPointInArea(cXyz, cXyz, f32, f32, f32, s16); + /* 8014ADA0 */ BOOL chkPointInArea(cXyz, cXyz, cXyz, s16); /* 8014AE1C */ void chkFindActor(fopAc_ac_c*, int, s16); /* 8014B024 */ void chkWolfAction(); /* 8014B0C8 */ void chkFindWolf(s16, int, int, f32, f32, f32, f32, int); - /* 8014B338 */ void srchPlayerActor(); + /* 8014B338 */ BOOL srchPlayerActor(); /* 8014B3EC */ void getAttnPos(fopAc_ac_c*); /* 8014B4A4 */ void turn(s16, int, int); - /* 8014B648 */ void step(s16, int, int, int, int); + /* 8014B648 */ int step(s16, int, int, int, int); /* 8014B808 */ void calcSpeedAndAngle(cXyz, int, s16, s16); /* 8014BB00 */ void getActorDistance(fopAc_ac_c*, int, int); /* 8014BBF0 */ int initTalk(int, fopAc_ac_c**); - /* 8014BC78 */ void talkProc(int*, int, fopAc_ac_c**, int); + /* 8014BC78 */ int talkProc(int*, int, fopAc_ac_c**, int); /* 8014BE2C */ fopAc_ac_c* getNearestActorP(s16); - /* 8014BEE4 */ void getEvtAreaTagP(int, int); + /* 8014BEE4 */ fopAc_ac_c* getEvtAreaTagP(int, int); /* 8014BFB0 */ fopAc_ac_c* getShopItemTagP(); /* 8014C030 */ void setHitodamaPrtcl(); /* 8014CD20 */ virtual ~daNpcT_c(); /* 801490D4 */ virtual void ctrlBtk(); - /* 8014CC14 */ virtual void ctrlSubFaceMotion(int); - /* 8014CC40 */ virtual bool checkChangeJoint(int); - /* 8014CC38 */ virtual bool checkRemoveJoint(int); + /* 8014CC14 */ virtual void ctrlSubFaceMotion(int) {} + /* 8014CC40 */ virtual int checkChangeJoint(int); + /* 8014CC38 */ virtual int checkRemoveJoint(int); /* 8014CC5C */ virtual s32 getBackboneJointNo(); /* 8014CC54 */ virtual s32 getNeckJointNo(); /* 8014CC4C */ virtual s32 getHeadJointNo(); /* 8014CC90 */ virtual s32 getFootLJointNo(); /* 8014CC88 */ virtual s32 getFootRJointNo(); - /* 8014D0A8 */ virtual bool getEyeballLMaterialNo(); - /* 8014D0B0 */ virtual bool getEyeballRMaterialNo(); - /* 8014D0B8 */ virtual bool getEyeballMaterialNo(); + /* 8014D0A8 */ virtual int getEyeballLMaterialNo() { return 0; } + /* 8014D0B0 */ virtual bool getEyeballRMaterialNo() { return 0; } + /* 8014D0B8 */ virtual s32 getEyeballMaterialNo() { return 0; } /* 8014951C */ virtual void ctrlJoint(J3DJoint*, J3DModel*); /* 8014CC48 */ virtual void afterJntAnm(int); /* 8014CC24 */ virtual void setParam(); /* 8014CC80 */ virtual bool checkChangeEvt(); /* 8014CC78 */ virtual bool evtTalk(); - /* 8014CC70 */ virtual bool evtEndProc(); + /* 8014CC70 */ virtual bool evtEndProc() { return true; } /* 8014CC68 */ virtual bool evtCutProc(); /* 8014CC64 */ virtual void setAfterTalkMotion(); /* 8014997C */ virtual int evtProc(); @@ -388,27 +520,46 @@ public: /* 80149D7C */ virtual void setFootPrtcl(cXyz*, f32, f32); /* 8014A05C */ virtual bool checkCullDraw(); /* 8014A064 */ virtual void twilight(); - /* 8014CC98 */ virtual bool chkXYItems(); + /* 8014CC98 */ virtual bool chkXYItems() { return false; } /* 8014A0B0 */ virtual void evtOrder(); - /* 8014CBF4 */ virtual void decTmr(); + /* 8014CBF4 */ virtual void decTmr() { + if (mTimer != 0) { + mTimer--; + } + } /* 8014A324 */ virtual void clrParam(); /* 8014CC30 */ virtual int drawDbgInfo(); /* 8014CC28 */ virtual void drawOtherMdl(); - /* 8014CC2C */ virtual void drawGhost(); - /* 8014CCA0 */ virtual bool afterSetFaceMotionAnm(int, int, f32, int); - /* 8014CCE0 */ virtual bool afterSetMotionAnm(int, int, f32, int); - /* 8014CCB0 */ virtual daNpcT_faceMotionAnmData_c getFaceMotionAnm(daNpcT_faceMotionAnmData_c); - /* 8014CCF0 */ virtual daNpcT_motionAnmData_c getMotionAnm(daNpcT_motionAnmData_c); - /* 8014CCEC */ virtual void changeAnm(int*, int*); - /* 8014CCAC */ virtual void changeBck(int*, int*); - /* 8014CCA8 */ virtual void changeBtp(int*, int*); - /* 8014CCE8 */ virtual void changeBtk(int*, int*); - /* 8014A628 */ virtual void setMotionAnm(int, f32, int); + /* 8014CC2C */ virtual void drawGhost() {} + /* 8014CCA0 */ virtual bool afterSetFaceMotionAnm(int, int, f32, int) { return true; } + /* 8014CCE0 */ virtual bool afterSetMotionAnm(int, int, f32, int) { return true; } + /* 8014CCB0 */ virtual daNpcT_faceMotionAnmData_c getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_1) { return param_1; } + /* 8014CCF0 */ virtual daNpcT_motionAnmData_c getMotionAnm(daNpcT_motionAnmData_c param_1) { return param_1; } + /* 8014CCEC */ virtual void changeAnm(int*, int*) {} + /* 8014CCAC */ virtual void changeBck(int*, int*) {} + /* 8014CCA8 */ virtual void changeBtp(int*, int*) {} + /* 8014CCE8 */ virtual void changeBtk(int*, int*) {} + /* 8014A628 */ virtual bool setMotionAnm(int, f32, int); bool checkHide() { return field_0xe25 || (!dComIfGs_wolfeye_effect_check() && field_0xa89); } s16 checkStep() { return mStepNo == 1; } void setCommander(fopAc_ac_c* param_0) { field_0xba0.entry(param_0); } + void initialize() { + memset(&field_0xd24, 0, (u8*)&field_0xe38 - (u8*)&field_0xd24); + field_0xb50.initialize(); + field_0xb74.initialize(); + field_0xb98.initialize(); + field_0xba0.initialize(); + field_0xba8.initialize(); + field_0xd08.initialize(); + field_0xd90 = 0xffffffff; + field_0xe26 = 1; + field_0xe1a = cM_rndF(65536.0f); + field_0xde0 = 0.2f; + field_0xde4 = 0.2f; + } + static u8 const mCcDObjData[48]; static dCcD_SrcCyl mCcDCyl; static dCcD_SrcSph mCcDSph; @@ -423,6 +574,9 @@ BOOL daNpcT_chkEvtBit(u32 i_idx); BOOL daNpcT_chkPointInArea(cXyz param_0, cXyz param_1, cXyz param_2, s16 param_3, int param_4); u8 daNpcT_getDistTableIdx(int param_0, int param_1); BOOL daNpcT_chkDoBtnIsSpeak(fopAc_ac_c* i_ActorP); +void daNpcT_offTmpBit(u32 i_idx); +void daNpcT_onTmpBit(u32 i_idx); +void daNpcT_onEvtBit(u32 i_idx); struct daBaseNpc_matAnm_c { /* 8014D884 */ void calc(J3DMaterial*) const; @@ -803,7 +957,7 @@ public: /* 80155BE0 */ virtual bool setExpressionAnm(int i_idx, bool i_modify); /* 80155EC8 */ virtual bool setExpressionBtp(int i_idx); /* 80155BF0 */ virtual void setExpression(int i_expression, f32 i_morf); - /* 80155BE8 */ virtual void setMotionAnm(int i_idx, f32 i_morf); + /* 80155BE8 */ virtual bool setMotionAnm(int i_idx, f32 i_morf); /* 80155BEC */ virtual void setMotion(int i_motion, f32 i_morf, int i_restart); /* 80155BD0 */ virtual BOOL drawDbgInfo(); /* 80155BCC */ virtual void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_ash.h b/include/d/actor/d_a_npc_ash.h index b113910ef42..90498c5f1dc 100644 --- a/include/d/actor/d_a_npc_ash.h +++ b/include/d/actor/d_a_npc_ash.h @@ -101,7 +101,7 @@ public: /* 80959478 */ static BOOL ctrlJointCallBack(J3DJoint*, int); /* 809594C4 */ bool setExpressionAnm(int, bool); /* 809596E0 */ bool setExpressionBtp(int); - /* 809597C0 */ void setMotionAnm(int i_idx, f32 i_morf); + /* 809597C0 */ bool setMotionAnm(int i_idx, f32 i_morf); /* 80959910 */ void reset(); /* 80959B28 */ inline bool setAction(ActionFn); /* 80959BD0 */ inline bool isSneaking(); diff --git a/include/d/actor/d_a_npc_ashB.h b/include/d/actor/d_a_npc_ashB.h index cda004ea365..083e29bdbc0 100644 --- a/include/d/actor/d_a_npc_ashB.h +++ b/include/d/actor/d_a_npc_ashB.h @@ -25,7 +25,7 @@ public: /* 8095EBB4 */ void ctrlJointCallBack(J3DJoint*, int); /* 8095EC00 */ void setExpressionAnm(int, bool); /* 8095EE00 */ void setExpressionBtp(int); - /* 8095EEE0 */ void setMotionAnm(int, f32); + /* 8095EEE0 */ bool setMotionAnm(int, f32); /* 8095F0A4 */ void reset(); /* 8095F21C */ void setAction(bool (daNpcAshB_c::*)(void*)); /* 8095F2C4 */ void wait(void*); diff --git a/include/d/actor/d_a_npc_blue_ns.h b/include/d/actor/d_a_npc_blue_ns.h index 1a586af5c2b..4434564c2c4 100644 --- a/include/d/actor/d_a_npc_blue_ns.h +++ b/include/d/actor/d_a_npc_blue_ns.h @@ -38,7 +38,7 @@ public: /* 80969E9C */ void _search_HollyBall_G(void*, void*); /* 80969F54 */ void main(); /* 8096A090 */ void setAttnPos(); - /* 8096A238 */ void setMotionAnm(int, f32); + /* 8096A238 */ bool setMotionAnm(int, f32); /* 8096A308 */ void setMotion(int, f32, int); /* 8096A350 */ bool drawDbgInfo(); /* 8096A358 */ void reset(); diff --git a/include/d/actor/d_a_npc_bou.h b/include/d/actor/d_a_npc_bou.h index e0f1b188936..6f2c7357a30 100644 --- a/include/d/actor/d_a_npc_bou.h +++ b/include/d/actor/d_a_npc_bou.h @@ -58,7 +58,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 809727B4 */ bool getEyeballMaterialNo(); + /* 809727B4 */ s32 getEyeballMaterialNo(); /* 809727BC */ s32 getHeadJointNo(); /* 809727C4 */ s32 getNeckJointNo(); /* 809727CC */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_bouS.h b/include/d/actor/d_a_npc_bouS.h index c3bf1515fbb..2ce181275f2 100644 --- a/include/d/actor/d_a_npc_bouS.h +++ b/include/d/actor/d_a_npc_bouS.h @@ -25,7 +25,7 @@ public: /* 809742DC */ void ctrlJointCallBack(J3DJoint*, int); /* 80974328 */ void setExpressionAnm(int, bool); /* 80974514 */ void setExpressionBtp(int); - /* 809745F4 */ void setMotionAnm(int, f32); + /* 809745F4 */ bool setMotionAnm(int, f32); /* 80974730 */ void reset(); /* 809748F0 */ void setAction(bool (daNpcBouS_c::*)(void*)); /* 80974A04 */ void checkInstructionTag(fopAc_ac_c*); diff --git a/include/d/actor/d_a_npc_chat.h b/include/d/actor/d_a_npc_chat.h index 12ce79b1735..c4ca7ff94b7 100644 --- a/include/d/actor/d_a_npc_chat.h +++ b/include/d/actor/d_a_npc_chat.h @@ -42,7 +42,7 @@ public: /* 80982F4C */ void main(); /* 80982FA4 */ void setAttnPos(); /* 809830EC */ void setExpressionBtp(int); - /* 80983168 */ void setMotionAnm(int, f32); + /* 80983168 */ bool setMotionAnm(int, f32); /* 80983584 */ void setMotion(int, f32, int); /* 809835C8 */ bool drawDbgInfo(); /* 809835D0 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_chin.h b/include/d/actor/d_a_npc_chin.h index f2a36650d07..11adbcf109c 100644 --- a/include/d/actor/d_a_npc_chin.h +++ b/include/d/actor/d_a_npc_chin.h @@ -36,7 +36,7 @@ public: /* 8098D26C */ void setAttnPos(); /* 8098D58C */ void setExpressionAnm(int, bool); /* 8098D848 */ void setExpressionBtp(int); - /* 8098D938 */ void setMotionAnm(int, f32); + /* 8098D938 */ bool setMotionAnm(int, f32); /* 8098DB44 */ void setExpression(int, f32); /* 8098DB70 */ void setMotion(int, f32, int); /* 8098DBB4 */ bool drawDbgInfo(); diff --git a/include/d/actor/d_a_npc_doorboy.h b/include/d/actor/d_a_npc_doorboy.h index 288f1014f5e..24b67b6dfef 100644 --- a/include/d/actor/d_a_npc_doorboy.h +++ b/include/d/actor/d_a_npc_doorboy.h @@ -35,7 +35,7 @@ public: /* 809ACA58 */ void main(); /* 809ACC5C */ void setAttnPos(); /* 809ACE18 */ void lookat(); - /* 809ACFF8 */ void setMotionAnm(int, f32); + /* 809ACFF8 */ bool setMotionAnm(int, f32); /* 809AD0C8 */ bool drawDbgInfo(); /* 809AD938 */ void adjustShapeAngle(); diff --git a/include/d/actor/d_a_npc_drainSol.h b/include/d/actor/d_a_npc_drainSol.h index be50a0cf972..1b9e9c38c6d 100644 --- a/include/d/actor/d_a_npc_drainSol.h +++ b/include/d/actor/d_a_npc_drainSol.h @@ -31,7 +31,7 @@ public: /* 809AEDA8 */ void setParam(); /* 809AEE24 */ void main(); /* 809AEFDC */ void setAttnPos(); - /* 809AF12C */ void setMotionAnm(int, f32); + /* 809AF12C */ bool setMotionAnm(int, f32); /* 809AF1FC */ bool drawDbgInfo(); /* 809AF934 */ void adjustShapeAngle(); diff --git a/include/d/actor/d_a_npc_fairy.h b/include/d/actor/d_a_npc_fairy.h index 77bfd31117b..d2790c074ec 100644 --- a/include/d/actor/d_a_npc_fairy.h +++ b/include/d/actor/d_a_npc_fairy.h @@ -17,7 +17,7 @@ public: /* 809B2430 */ void Create(); /* 809B26E8 */ void CreateHeap(); /* 809B2B44 */ void setAnmData(); - /* 809B2C20 */ void setMotionAnm(int, f32, int); + /* 809B2C20 */ bool setMotionAnm(int, f32, int); /* 809B2E78 */ void afterSetMotionAnm(int, int, f32, int); /* 809B2EFC */ void Delete(); /* 809B2F30 */ void Execute(); @@ -107,7 +107,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 809B9238 */ bool getEyeballMaterialNo(); + /* 809B9238 */ s32 getEyeballMaterialNo(); /* 809B9240 */ s32 getHeadJointNo(); /* 809B9248 */ s32 getNeckJointNo(); /* 809B9250 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_gra.h b/include/d/actor/d_a_npc_gra.h index 9aa026ef379..d30b65d5dff 100644 --- a/include/d/actor/d_a_npc_gra.h +++ b/include/d/actor/d_a_npc_gra.h @@ -42,7 +42,7 @@ public: /* 809C0948 */ void setExpressionAnm(int, bool); /* 809C0CE4 */ void setExpressionBtp(int); /* 809C0E18 */ void setExpression(int, f32); - /* 809C0E44 */ void setMotionAnm(int, f32); + /* 809C0E44 */ bool setMotionAnm(int, f32); /* 809C1018 */ void setMotion(int, f32, int); /* 809C105C */ bool drawDbgInfo(); /* 809C1064 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_grc.h b/include/d/actor/d_a_npc_grc.h index cc017fb7b76..6b41aa142ab 100644 --- a/include/d/actor/d_a_npc_grc.h +++ b/include/d/actor/d_a_npc_grc.h @@ -30,7 +30,7 @@ public: /* 809CC930 */ void setExpressionAnm(int, bool); /* 809CCB78 */ void setExpressionBtp(int); /* 809CCCA4 */ void setExpression(int, f32); - /* 809CCCD0 */ void setMotionAnm(int, f32); + /* 809CCCD0 */ bool setMotionAnm(int, f32); /* 809CCE70 */ void setMotion(int, f32, int); /* 809CCEB4 */ bool drawDbgInfo(); /* 809CCEBC */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_grd.h b/include/d/actor/d_a_npc_grd.h index eddd81fb2d3..5857deffeb6 100644 --- a/include/d/actor/d_a_npc_grd.h +++ b/include/d/actor/d_a_npc_grd.h @@ -30,7 +30,7 @@ public: /* 809D14BC */ void setExpressionAnm(int, bool); /* 809D1670 */ void setExpressionBtp(int); /* 809D1794 */ void setExpression(int, f32); - /* 809D17C0 */ void setMotionAnm(int, f32); + /* 809D17C0 */ bool setMotionAnm(int, f32); /* 809D1940 */ void setMotion(int, f32, int); /* 809D1984 */ bool drawDbgInfo(); /* 809D198C */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_grm.h b/include/d/actor/d_a_npc_grm.h index c0a9553b04d..c6bafe19c37 100644 --- a/include/d/actor/d_a_npc_grm.h +++ b/include/d/actor/d_a_npc_grm.h @@ -50,7 +50,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 809D5F98 */ bool getEyeballMaterialNo(); + /* 809D5F98 */ s32 getEyeballMaterialNo(); /* 809D5FA0 */ s32 getHeadJointNo(); /* 809D5FA8 */ s32 getNeckJointNo(); /* 809D5FB0 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_grmc.h b/include/d/actor/d_a_npc_grmc.h index 5376c3ae066..7ede7fa9ecf 100644 --- a/include/d/actor/d_a_npc_grmc.h +++ b/include/d/actor/d_a_npc_grmc.h @@ -53,7 +53,7 @@ public: /* 809D8FE4 */ bool getBackboneJointNo(); /* 809D8FEC */ void checkChangeJoint(int); /* 809D8FFC */ void checkRemoveJoint(int); - /* 809D900C */ bool getEyeballMaterialNo(); + /* 809D900C */ s32 getEyeballMaterialNo(); static void* mCutNameList; static u8 mCutList[12]; diff --git a/include/d/actor/d_a_npc_gro.h b/include/d/actor/d_a_npc_gro.h index 3e6ed3ed97f..d3beba12b38 100644 --- a/include/d/actor/d_a_npc_gro.h +++ b/include/d/actor/d_a_npc_gro.h @@ -30,7 +30,7 @@ public: /* 809DBD58 */ void setExpressionAnm(int, bool); /* 809DBFF4 */ void setExpressionBtp(int); /* 809DC118 */ void setExpression(int, f32); - /* 809DC144 */ void setMotionAnm(int, f32); + /* 809DC144 */ bool setMotionAnm(int, f32); /* 809DC2E4 */ void setMotion(int, f32, int); /* 809DC328 */ bool drawDbgInfo(); /* 809DC330 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_grr.h b/include/d/actor/d_a_npc_grr.h index 7c23b9e7601..73daf3c249b 100644 --- a/include/d/actor/d_a_npc_grr.h +++ b/include/d/actor/d_a_npc_grr.h @@ -30,7 +30,7 @@ public: /* 809E105C */ void setExpressionAnm(int, bool); /* 809E1260 */ void setExpressionBtp(int); /* 809E138C */ void setExpression(int, f32); - /* 809E13B8 */ void setMotionAnm(int, f32); + /* 809E13B8 */ bool setMotionAnm(int, f32); /* 809E1548 */ void setMotion(int, f32, int); /* 809E158C */ bool drawDbgInfo(); /* 809E1594 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_grs.h b/include/d/actor/d_a_npc_grs.h index bc7dd5ea95e..d18be8111c6 100644 --- a/include/d/actor/d_a_npc_grs.h +++ b/include/d/actor/d_a_npc_grs.h @@ -30,7 +30,7 @@ public: /* 809E5874 */ void setExpressionAnm(int, bool); /* 809E5A08 */ void setExpressionBtp(int); /* 809E5B1C */ void setExpression(int, f32); - /* 809E5B48 */ void setMotionAnm(int, f32); + /* 809E5B48 */ bool setMotionAnm(int, f32); /* 809E5CB8 */ void setMotion(int, f32, int); /* 809E5CFC */ bool drawDbgInfo(); /* 809E5D04 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_grz.h b/include/d/actor/d_a_npc_grz.h index 413b1067316..0ca2ca33d2f 100644 --- a/include/d/actor/d_a_npc_grz.h +++ b/include/d/actor/d_a_npc_grz.h @@ -37,7 +37,7 @@ public: /* 809EA734 */ void setExpressionAnm(int, bool); /* 809EAA08 */ void setExpressionBtp(int); /* 809EAB34 */ void setExpression(int, f32); - /* 809EAB60 */ void setMotionAnm(int, f32); + /* 809EAB60 */ bool setMotionAnm(int, f32); /* 809EAD4C */ void setMotion(int, f32, int); /* 809EAD90 */ bool drawDbgInfo(); /* 809EAD98 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_gwolf.h b/include/d/actor/d_a_npc_gwolf.h index c494a80905a..c203e865a4d 100644 --- a/include/d/actor/d_a_npc_gwolf.h +++ b/include/d/actor/d_a_npc_gwolf.h @@ -55,7 +55,7 @@ public: /* 809F4698 */ void setAttnPos(); /* 809F4BB0 */ bool setExpressionAnm(int, bool); /* 809F4BB8 */ void setExpression(int, f32); - /* 809F4BBC */ void setMotionAnm(int, f32); + /* 809F4BBC */ bool setMotionAnm(int, f32); /* 809F4DE8 */ void setMotion(int, f32, int); /* 809F4E2C */ BOOL drawDbgInfo(); /* 809F4E34 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_hanjo.h b/include/d/actor/d_a_npc_hanjo.h index 6757917cbac..d5546da996f 100644 --- a/include/d/actor/d_a_npc_hanjo.h +++ b/include/d/actor/d_a_npc_hanjo.h @@ -3,6 +3,90 @@ #include "d/actor/d_a_npc.h" +class daNpc_HanjoStone_c { +public: + /* 809FFFD4 */ ~daNpc_HanjoStone_c() {} + /* 80A001FC */ daNpc_HanjoStone_c() { + initialize(); + } + /* 80A0033C */ cXyz getPos() { return mPos; } + /* 80A00358 */ cXyz getOld() { return mOld; } + /* 80A00374 */ void posMoveF(fopAc_ac_c* param_1) { + cXyz cStack_48; + mOld = mPos; + if (mTmr != 0) { + cStack_48 = field_0x1c; + f32 dVar9 = mSpeedF * cM_ssin(mAngle.y); + f32 dVar10 = cStack_48.y + field_0x16c; + f32 dVar8 = mSpeedF * cM_scos(mAngle.y); + if (dVar10 < fopAcM_GetMaxFallSpeed(param_1)) { + dVar10 = fopAcM_GetMaxFallSpeed(param_1); + } + field_0x1c.set(dVar9, dVar10, dVar8); + mPos += field_0x1c; + mTmr--; + if (mTmr == 0) { + initialize(); + } + } + } + + /* 80A004A8 */ void setPos(cXyz pos) { + mPos = pos; + mOld = pos; + } + + /* 80A004E8 */ void setAngle(csXyz angle) { mAngle = angle; } + + dCcD_Sph* getSphP() { return &mSphere; } + f32 getSpeedF() { return mSpeedF; } + void setModel(J3DModel* model) { mModel = model; } + J3DModel* getModelP() { return mModel; } + + int chkActive() { + if (mModel != NULL) { + return mTmr != 0; + } + return FALSE; + } + + void initialize() { + mPos.setall(0.0f); + mOld = mPos; + field_0x1c.setall(0.0f); + mAngle.setall(0); + mSpeedF = 0; + field_0x16c = -3.0f; + mTmr = 0; + } + + void setMtx(Mtx mtx) { + if (chkActive()) { + if (cM3d_IsZero(mSpeedF)) { + mModel->setBaseTRMtx(mtx); + } else { + mDoMtx_stack_c::transS(mPos); + mDoMtx_stack_c::ZXYrotM(mAngle); + mModel->setBaseTRMtx(mDoMtx_stack_c::get()); + } + } + } + + void setTmr(int tmr) { mTmr = tmr; } + void setVSpeed(f32 speed) { field_0x1c.y = speed; } + void setSpeedF(f32 speed) { mSpeedF = speed; } + + /* 0x000 */ J3DModel* mModel; + /* 0x004 */ cXyz mOld; + /* 0x010 */ cXyz mPos; + /* 0x01C */ cXyz field_0x1c; + /* 0x028 */ csXyz mAngle; + /* 0x030 */ dCcD_Sph mSphere; + /* 0x168 */ f32 mSpeedF; + /* 0x16C */ f32 field_0x16c; + /* 0x170 */ int mTmr; +}; + /** * @ingroup actors-npcs * @class daNpc_Hanjo_c @@ -11,90 +95,181 @@ * @details * */ -class daNpc_Hanjo_c : public fopAc_ac_c { +class daNpc_Hanjo_c : public daNpcT_c { public: + typedef int (daNpc_Hanjo_c::*cutFunc)(int); + typedef int (daNpc_Hanjo_c::*actionFunc)(void*); + + enum Type { + TYPE_0, + TYPE_1, + TYPE_2, + TYPE_3, + TYPE_4, + }; + /* 809F908C */ ~daNpc_Hanjo_c(); - /* 809F9278 */ void create(); - /* 809F9578 */ void CreateHeap(); - /* 809F9B38 */ void Delete(); - /* 809F9B6C */ void Execute(); - /* 809F9B8C */ void Draw(); - /* 809F9C20 */ void createHeapCallBack(fopAc_ac_c*); - /* 809F9C40 */ void ctrlJointCallBack(J3DJoint*, int); - /* 809F9C98 */ void getType(); - /* 809F9CF0 */ void isDelete(); + /* 809F9278 */ int create(); + /* 809F9578 */ int CreateHeap(); + /* 809F9B38 */ int Delete(); + /* 809F9B6C */ int Execute(); + /* 809F9B8C */ int Draw(); + /* 809F9C20 */ static int createHeapCallBack(fopAc_ac_c*); + /* 809F9C40 */ static int ctrlJointCallBack(J3DJoint*, int); + /* 809F9C98 */ u8 getType(); + /* 809F9CF0 */ int isDelete(); /* 809F9D9C */ void reset(); /* 809F9FCC */ void afterJntAnm(int); /* 809FA050 */ void setParam(); - /* 809FA1C4 */ void checkChangeEvt(); + /* 809FA1C4 */ bool checkChangeEvt(); /* 809FA3B8 */ void setAfterTalkMotion(); /* 809FA45C */ void srchActors(); - /* 809FA55C */ void evtTalk(); - /* 809FA5FC */ void evtCutProc(); + /* 809FA55C */ bool evtTalk(); + /* 809FA5FC */ bool evtCutProc(); /* 809FA6C4 */ void action(); /* 809FA88C */ void beforeMove(); /* 809FAABC */ void afterMoved(); /* 809FABB8 */ void setAttnPos(); /* 809FAF90 */ void setCollision(); - /* 809FB2C4 */ bool drawDbgInfo(); + /* 809FB2C4 */ int drawDbgInfo(); /* 809FB2CC */ void drawOtherMdl(); - /* 809FB59C */ void selectAction(); - /* 809FB6CC */ void chkAction(int (daNpc_Hanjo_c::*)(void*)); - /* 809FB6F8 */ void setAction(int (daNpc_Hanjo_c::*)(void*)); + /* 809FB59C */ int selectAction(); + /* 809FB6CC */ int chkAction(int (daNpc_Hanjo_c::*)(void*)); + /* 809FB6F8 */ int setAction(int (daNpc_Hanjo_c::*)(void*)); /* 809FB7A0 */ void initShoot(int); - /* 809FB90C */ void shoot(int); + /* 809FB90C */ int shoot(int); /* 809FBB94 */ void initDive(); /* 809FBC3C */ void dive(); - /* 809FC06C */ void lookround(s16); - /* 809FC1BC */ void commandToHawk(); - /* 809FC2E4 */ void cutConversationAboutSaru(int); - /* 809FC438 */ void cutConversation(int); - /* 809FC80C */ void cutPursuitBee(int); - /* 809FCDC4 */ void cutAppearHawker(int); - /* 809FD3C0 */ void cutDive(int); - /* 809FD86C */ void wait(void*); - /* 809FDEFC */ void throwStone(void*); - /* 809FE2E0 */ void takayose(void*); - /* 809FEAEC */ void talk(void*); - /* 80A000A8 */ daNpc_Hanjo_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**); - /* 80A00334 */ s32 getEyeballMaterialNo(); - /* 80A004D0 */ s32 getHeadJointNo(); - /* 80A004D8 */ s32 getNeckJointNo(); - /* 80A004E0 */ bool getBackboneJointNo(); - /* 80A00504 */ void checkChangeJoint(int); - /* 80A00514 */ void checkRemoveJoint(int); - /* 80A00524 */ s32 getFootLJointNo(); - /* 80A0052C */ s32 getFootRJointNo(); + /* 809FC06C */ int lookround(s16); + /* 809FC1BC */ int commandToHawk(); + /* 809FC2E4 */ int cutConversationAboutSaru(int); + /* 809FC438 */ int cutConversation(int); + /* 809FC80C */ int cutPursuitBee(int); + /* 809FCDC4 */ int cutAppearHawker(int); + /* 809FD3C0 */ int cutDive(int); + /* 809FD86C */ int wait(void*); + /* 809FDEFC */ int throwStone(void*); + /* 809FE2E0 */ int takayose(void*); + /* 809FEAEC */ int talk(void*); + /* 80A000A8 */ daNpc_Hanjo_c(daNpcT_faceMotionAnmData_c const* param_1, daNpcT_motionAnmData_c const* param_2, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6, + daNpcT_evtData_c const* param_7, char** param_8) : + daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8) + {} + /* 80A00334 */ s32 getEyeballMaterialNo() { return 2; } + /* 80A004D0 */ s32 getHeadJointNo() { return 4; } + /* 80A004D8 */ s32 getNeckJointNo() { return 3; } + /* 80A004E0 */ s32 getBackboneJointNo() { return 1; } + /* 80A00504 */ int checkChangeJoint(int param_1) { return param_1 == 4; } + /* 80A00514 */ int checkRemoveJoint(int param_1) { return param_1 == 8; } + /* 80A00524 */ s32 getFootLJointNo() { return 22; } + /* 80A0052C */ s32 getFootRJointNo() { return 26; } - static u8 const mStoneCcDObjInfo[48]; - static void* mCutNameList[6]; - static u8 mCutList[72]; + int getFlowNodeNo() { + u16 nodeNo = home.angle.x; + if (nodeNo == 0xffff) { + return -1; + } + return nodeNo; + } + + u8 getPathID() { return (fopAcM_GetParam(this) & 0xff00) >> 8; } + + static dCcD_SrcGObjInf const mStoneCcDObjInfo; + static char* mCutNameList[6]; + static cutFunc mCutList[6]; static u8 mStoneCcDSph[64]; private: - /* 0x568 */ u8 field_0x568[0x172c - 0x568]; + /* 0x0E40 */ int field_0x0E40; + /* 0x0E44 */ J3DModel* mModel1; + /* 0x0E48 */ J3DModel* mModel2; + /* 0x0E4C */ dCcD_Cyl mCyl1; + /* 0x0F88 */ dCcD_Cyl mCyl2; + /* 0x10C4 */ u8 mType; + /* 0x10C8 */ daNpcT_ActorMngr_c field_0x10c8[4]; + /* 0x10E8 */ daNpcT_Path_c field_0x10e8; + /* 0x1110 */ daNpc_HanjoStone_c mStones[4]; + /* 0x16E0 */ actionFunc field_0x16e0; + /* 0x16EC */ actionFunc field_0x16ec; + /* 0x16F8 */ cXyz field_0x16f8; + /* 0x1704 */ int field_0x1704; + /* 0x1708 */ int field_0x1708; + /* 0x170C */ int field_0x170c; + /* 0x1710 */ int field_0x1710; + /* 0x1714 */ int field_0x1714; + /* 0x1718 */ f32 field_0x1718; + /* 0x171C */ s16 field_0x171c; + /* 0x171E */ u8 field_0x171e; + /* 0x171F */ u8 field_0x171f; + /* 0x1720 */ u8 field_0x1720; + /* 0x1721 */ u8 field_0x1721; + /* 0x1722 */ u8 field_0x1722; + /* 0x1723 */ u8 field_0x1723; + /* 0x1724 */ u8 field_0x1724; + /* 0x1728 */ int field_0x1728; }; STATIC_ASSERT(sizeof(daNpc_Hanjo_c) == 0x172c); class daNpc_Hanjo_Param_c { public: - /* 80A00534 */ ~daNpc_Hanjo_Param_c(); + /* 80A00534 */ virtual ~daNpc_Hanjo_Param_c() {} - static u8 const m[180]; -}; + struct Data { + /* 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 */ int field_0x64; + /* 0x68 */ int field_0x68; + /* 0x6C */ f32 field_0x6c; + /* 0x70 */ f32 field_0x70; + /* 0x74 */ f32 field_0x74; + /* 0x78 */ f32 field_0x78; + /* 0x7C */ f32 field_0x7c; + /* 0x80 */ f32 field_0x80; + /* 0x84 */ f32 field_0x84; + /* 0x88 */ f32 field_0x88; + /* 0x8C */ f32 field_0x8c; + /* 0x90 */ f32 field_0x90; + /* 0x94 */ f32 field_0x94; + /* 0x98 */ f32 field_0x98; + /* 0x9C */ f32 field_0x9c; + /* 0xA0 */ f32 field_0xa0; + /* 0xA4 */ f32 field_0xa4; + /* 0xA8 */ f32 field_0xa8; + /* 0xAC */ s16 field_0xac; + /* 0xAE */ s16 field_0xae; + /* 0xB0 */ s16 field_0xb0; + /* 0xB2 */ s16 field_0xb2; + }; -class daNpc_HanjoStone_c { -public: - /* 809FFFD4 */ ~daNpc_HanjoStone_c(); - /* 80A001FC */ daNpc_HanjoStone_c(); - /* 80A0033C */ void getPos(); - /* 80A00358 */ void getOld(); - /* 80A00374 */ void posMoveF(fopAc_ac_c*); - /* 80A004A8 */ void setPos(cXyz); - /* 80A004E8 */ void setAngle(csXyz); + static const Data m; }; #endif /* D_A_NPC_HANJO_H */ diff --git a/include/d/actor/d_a_npc_hoz.h b/include/d/actor/d_a_npc_hoz.h index ee7ea27d247..f34fbe37170 100644 --- a/include/d/actor/d_a_npc_hoz.h +++ b/include/d/actor/d_a_npc_hoz.h @@ -71,12 +71,12 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80A065A4 */ bool getEyeballMaterialNo(); + /* 80A065A4 */ s32 getEyeballMaterialNo(); /* 80A065AC */ s32 getHeadJointNo(); /* 80A065B4 */ s32 getNeckJointNo(); /* 80A065BC */ s32 getBackboneJointNo(); - /* 80A065C4 */ bool checkChangeJoint(int); - /* 80A065D4 */ bool checkRemoveJoint(int); + /* 80A065C4 */ int checkChangeJoint(int); + /* 80A065D4 */ int checkRemoveJoint(int); bool getGameStartFlag() { return mGameStartFlag; } void setPotBreakFlag() { mPotBreakFlag = true; } diff --git a/include/d/actor/d_a_npc_impal.h b/include/d/actor/d_a_npc_impal.h index f80a70539ee..94b00c697ad 100644 --- a/include/d/actor/d_a_npc_impal.h +++ b/include/d/actor/d_a_npc_impal.h @@ -25,7 +25,7 @@ public: /* 80A087DC */ void ctrlJointCallBack(J3DJoint*, int); /* 80A08828 */ void setExpressionAnm(int, bool); /* 80A08A68 */ void setExpressionBtp(int); - /* 80A08B48 */ void setMotionAnm(int, f32); + /* 80A08B48 */ bool setMotionAnm(int, f32); /* 80A08CBC */ void reset(); /* 80A08EB8 */ void setAction(bool (daNpcImpal_c::*)(void*)); /* 80A090E8 */ void wait(void*); diff --git a/include/d/actor/d_a_npc_ins.h b/include/d/actor/d_a_npc_ins.h index 6e1deee70e1..e978abfe772 100644 --- a/include/d/actor/d_a_npc_ins.h +++ b/include/d/actor/d_a_npc_ins.h @@ -25,7 +25,7 @@ public: /* 80A0F2AC */ void ctrlJointCallBack(J3DJoint*, int); /* 80A0F2F8 */ void setExpressionAnm(int, bool); /* 80A0F538 */ void setExpressionBtp(int); - /* 80A0F618 */ void setMotionAnm(int, f32); + /* 80A0F618 */ bool setMotionAnm(int, f32); /* 80A0F78C */ void reset(); /* 80A0F984 */ void waitShop(void*); /* 80A0FF40 */ void setMotion(int, f32, int); diff --git a/include/d/actor/d_a_npc_jagar.h b/include/d/actor/d_a_npc_jagar.h index a2c02a6d63e..38732a793b9 100644 --- a/include/d/actor/d_a_npc_jagar.h +++ b/include/d/actor/d_a_npc_jagar.h @@ -57,7 +57,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80A1A274 */ bool getEyeballMaterialNo(); + /* 80A1A274 */ s32 getEyeballMaterialNo(); /* 80A1A27C */ s32 getHeadJointNo(); /* 80A1A284 */ s32 getNeckJointNo(); /* 80A1A28C */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_kasi_hana.h b/include/d/actor/d_a_npc_kasi_hana.h index 93e517900b1..ee790bfb977 100644 --- a/include/d/actor/d_a_npc_kasi_hana.h +++ b/include/d/actor/d_a_npc_kasi_hana.h @@ -26,7 +26,7 @@ public: /* 80A1C9D0 */ void setParam(); /* 80A1CA60 */ void main(); /* 80A1CD28 */ void setAttnPos(); - /* 80A1CED0 */ void setMotionAnm(int, f32); + /* 80A1CED0 */ bool setMotionAnm(int, f32); /* 80A1CFA0 */ void setMotion(int, f32, int); /* 80A1CFE8 */ bool drawDbgInfo(); /* 80A1CFF0 */ void reset(); diff --git a/include/d/actor/d_a_npc_kasi_kyu.h b/include/d/actor/d_a_npc_kasi_kyu.h index 0c1d64ca802..0d47ca4d27c 100644 --- a/include/d/actor/d_a_npc_kasi_kyu.h +++ b/include/d/actor/d_a_npc_kasi_kyu.h @@ -26,7 +26,7 @@ public: /* 80A224C8 */ void setParam(); /* 80A22534 */ void main(); /* 80A227DC */ void setAttnPos(); - /* 80A22984 */ void setMotionAnm(int, f32); + /* 80A22984 */ bool setMotionAnm(int, f32); /* 80A22A54 */ void setMotion(int, f32, int); /* 80A22A9C */ bool drawDbgInfo(); /* 80A22AA4 */ void reset(); diff --git a/include/d/actor/d_a_npc_kasi_mich.h b/include/d/actor/d_a_npc_kasi_mich.h index 31132cf711f..60013d5bc18 100644 --- a/include/d/actor/d_a_npc_kasi_mich.h +++ b/include/d/actor/d_a_npc_kasi_mich.h @@ -26,7 +26,7 @@ public: /* 80A26CC8 */ void setParam(); /* 80A26D34 */ void main(); /* 80A26FDC */ void setAttnPos(); - /* 80A27184 */ void setMotionAnm(int, f32); + /* 80A27184 */ bool setMotionAnm(int, f32); /* 80A27254 */ void setMotion(int, f32, int); /* 80A2729C */ bool drawDbgInfo(); /* 80A272A4 */ void reset(); diff --git a/include/d/actor/d_a_npc_kn.h b/include/d/actor/d_a_npc_kn.h index 681d835bc08..7fde3293b8e 100644 --- a/include/d/actor/d_a_npc_kn.h +++ b/include/d/actor/d_a_npc_kn.h @@ -145,8 +145,8 @@ public: /* 80A3A2A8 */ void evtOrder(); /* 80A3A404 */ void evtChange(); /* 80A3A504 */ void clrParam(); - /* 80A3A568 */ void setFaceMotionAnm(int, bool); - /* 80A3A7C0 */ void setMotionAnm(int, f32, int); + /* 80A3A568 */ bool setFaceMotionAnm(int, bool); + /* 80A3A7C0 */ bool setMotionAnm(int, f32, int); /* 80A3AA58 */ void setPos(cXyz); /* 80A3AAF0 */ void setAngle(s16); /* 80A3AB18 */ void chkActorInSight(fopAc_ac_c*, f32, s16); @@ -174,7 +174,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80A3BD14 */ bool getEyeballMaterialNo(); + /* 80A3BD14 */ s32 getEyeballMaterialNo(); /* 80A3BD1C */ bool getEyeballLMaterialNo(); /* 80A3BD24 */ bool getEyeballRMaterialNo(); /* 80A3C998 */ void setParamTeach01(); diff --git a/include/d/actor/d_a_npc_len.h b/include/d/actor/d_a_npc_len.h index 022184afccd..a2572b200a3 100644 --- a/include/d/actor/d_a_npc_len.h +++ b/include/d/actor/d_a_npc_len.h @@ -50,7 +50,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80A68DE0 */ bool getEyeballMaterialNo(); + /* 80A68DE0 */ s32 getEyeballMaterialNo(); /* 80A68DE8 */ s32 getHeadJointNo(); /* 80A68DF0 */ s32 getNeckJointNo(); /* 80A68DF8 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_lud.h b/include/d/actor/d_a_npc_lud.h index b25f511e25a..81d4a83d6fe 100644 --- a/include/d/actor/d_a_npc_lud.h +++ b/include/d/actor/d_a_npc_lud.h @@ -58,7 +58,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80A6FCD0 */ bool getEyeballMaterialNo(); + /* 80A6FCD0 */ s32 getEyeballMaterialNo(); /* 80A6FCD8 */ s32 getHeadJointNo(); /* 80A6FCE0 */ s32 getNeckJointNo(); /* 80A6FCE8 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_maro.h b/include/d/actor/d_a_npc_maro.h index 7f9869894be..f814ac4b98d 100644 --- a/include/d/actor/d_a_npc_maro.h +++ b/include/d/actor/d_a_npc_maro.h @@ -75,7 +75,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80564970 */ bool getEyeballMaterialNo(); + /* 80564970 */ s32 getEyeballMaterialNo(); /* 80564978 */ s32 getHeadJointNo(); /* 80564980 */ s32 getNeckJointNo(); /* 80564988 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_moir.h b/include/d/actor/d_a_npc_moir.h index 3402f436e49..601ca97e371 100644 --- a/include/d/actor/d_a_npc_moir.h +++ b/include/d/actor/d_a_npc_moir.h @@ -25,7 +25,7 @@ public: /* 80A7D0EC */ void ctrlJointCallBack(J3DJoint*, int); /* 80A7D138 */ void setExpressionAnm(int, bool); /* 80A7D394 */ void setExpressionBtp(int); - /* 80A7D474 */ void setMotionAnm(int, f32); + /* 80A7D474 */ bool setMotionAnm(int, f32); /* 80A7D5C4 */ void reset(); /* 80A7D73C */ void setWaitAction(); /* 80A7D934 */ void wait_type0(void*); diff --git a/include/d/actor/d_a_npc_myna2.h b/include/d/actor/d_a_npc_myna2.h index bc0d39e6028..ce1a6c3f12b 100644 --- a/include/d/actor/d_a_npc_myna2.h +++ b/include/d/actor/d_a_npc_myna2.h @@ -25,7 +25,7 @@ public: /* 80A848B4 */ void main(); /* 80A84B64 */ void setAttnPos(); /* 80A84DAC */ void setExpressionBtp(int); - /* 80A84EAC */ void setMotionAnm(int, f32); + /* 80A84EAC */ bool setMotionAnm(int, f32); /* 80A84FEC */ void setMotion(int, f32, int); /* 80A85030 */ bool drawDbgInfo(); /* 80A85038 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_pachi_maro.h b/include/d/actor/d_a_npc_pachi_maro.h index 24956bd2204..ba68486ef15 100644 --- a/include/d/actor/d_a_npc_pachi_maro.h +++ b/include/d/actor/d_a_npc_pachi_maro.h @@ -82,7 +82,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80A9B7E0 */ bool getEyeballMaterialNo(); + /* 80A9B7E0 */ s32 getEyeballMaterialNo(); /* 80A9B7E8 */ s32 getHeadJointNo(); /* 80A9B7F0 */ s32 getNeckJointNo(); /* 80A9B7F8 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_post.h b/include/d/actor/d_a_npc_post.h index beb3fb1965f..5851a474b45 100644 --- a/include/d/actor/d_a_npc_post.h +++ b/include/d/actor/d_a_npc_post.h @@ -53,7 +53,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80AAD0D0 */ bool getEyeballMaterialNo(); + /* 80AAD0D0 */ s32 getEyeballMaterialNo(); /* 80AAD0D8 */ s32 getHeadJointNo(); /* 80AAD0E0 */ s32 getNeckJointNo(); /* 80AAD0E8 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_pouya.h b/include/d/actor/d_a_npc_pouya.h index e2c38deb7ee..b57369dcf68 100644 --- a/include/d/actor/d_a_npc_pouya.h +++ b/include/d/actor/d_a_npc_pouya.h @@ -50,7 +50,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80AB1F54 */ bool getEyeballMaterialNo(); + /* 80AB1F54 */ s32 getEyeballMaterialNo(); /* 80AB1F5C */ s32 getHeadJointNo(); /* 80AB1F64 */ s32 getNeckJointNo(); /* 80AB1F6C */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_prayer.h b/include/d/actor/d_a_npc_prayer.h index d9c86295568..209538fbe1c 100644 --- a/include/d/actor/d_a_npc_prayer.h +++ b/include/d/actor/d_a_npc_prayer.h @@ -26,7 +26,7 @@ public: /* 80AB38A0 */ void setParam(); /* 80AB390C */ void main(); /* 80AB3964 */ void setAttnPos(); - /* 80AB3B0C */ void setMotionAnm(int, f32); + /* 80AB3B0C */ bool setMotionAnm(int, f32); /* 80AB3BDC */ void setMotion(int, f32, int); /* 80AB3C24 */ bool drawDbgInfo(); /* 80AB3C2C */ void reset(); diff --git a/include/d/actor/d_a_npc_rafrel.h b/include/d/actor/d_a_npc_rafrel.h index de85cf74c76..9f382e21ebd 100644 --- a/include/d/actor/d_a_npc_rafrel.h +++ b/include/d/actor/d_a_npc_rafrel.h @@ -25,7 +25,7 @@ public: /* 80ABA698 */ void ctrlJointCallBack(J3DJoint*, int); /* 80ABA6E4 */ void setExpressionAnm(int, bool); /* 80ABA8EC */ void setExpressionBtp(int); - /* 80ABA9CC */ void setMotionAnm(int, f32); + /* 80ABA9CC */ bool setMotionAnm(int, f32); /* 80ABAB88 */ void reset(); /* 80ABADC4 */ void setWaitAction(); /* 80ABAFBC */ void isSneaking(); diff --git a/include/d/actor/d_a_npc_shad.h b/include/d/actor/d_a_npc_shad.h index db03a48062b..18c2b8839d9 100644 --- a/include/d/actor/d_a_npc_shad.h +++ b/include/d/actor/d_a_npc_shad.h @@ -25,7 +25,7 @@ public: /* 80AD946C */ void ctrlJointCallBack(J3DJoint*, int); /* 80AD94B8 */ void setExpressionAnm(int, bool); /* 80AD974C */ void setExpressionBtp(int); - /* 80AD982C */ void setMotionAnm(int, f32); + /* 80AD982C */ bool setMotionAnm(int, f32); /* 80AD99B4 */ void reset(); /* 80AD9C0C */ void setWaitAction(); /* 80AD9E04 */ void getPathPoint(u8, int, Vec*); diff --git a/include/d/actor/d_a_npc_shaman.h b/include/d/actor/d_a_npc_shaman.h index 90fe4b4cc39..3814dd192bb 100644 --- a/include/d/actor/d_a_npc_shaman.h +++ b/include/d/actor/d_a_npc_shaman.h @@ -59,7 +59,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80AE6B1C */ bool getEyeballMaterialNo(); + /* 80AE6B1C */ s32 getEyeballMaterialNo(); /* 80AE6B24 */ s32 getHeadJointNo(); /* 80AE6B2C */ s32 getNeckJointNo(); /* 80AE6B34 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_shoe.h b/include/d/actor/d_a_npc_shoe.h index d6c9401fdad..0c23a3a2542 100644 --- a/include/d/actor/d_a_npc_shoe.h +++ b/include/d/actor/d_a_npc_shoe.h @@ -34,7 +34,7 @@ public: /* 80AE93A0 */ void main(); /* 80AE9624 */ void setAttnPos(); /* 80AE9820 */ void lookat(); - /* 80AE9A00 */ void setMotionAnm(int, f32); + /* 80AE9A00 */ bool setMotionAnm(int, f32); /* 80AE9AD0 */ bool drawDbgInfo(); /* 80AEA340 */ void adjustShapeAngle(); diff --git a/include/d/actor/d_a_npc_soldierA.h b/include/d/actor/d_a_npc_soldierA.h index 79e9073ab53..eeb6b8f6426 100644 --- a/include/d/actor/d_a_npc_soldierA.h +++ b/include/d/actor/d_a_npc_soldierA.h @@ -27,7 +27,7 @@ public: /* 80AF02B0 */ void main(); /* 80AF0428 */ bool ctrlBtk(); /* 80AF0430 */ void setAttnPos(); - /* 80AF0928 */ void setMotionAnm(int, f32); + /* 80AF0928 */ bool setMotionAnm(int, f32); /* 80AF0A38 */ void setMotion(int, f32, int); /* 80AF0A7C */ bool drawDbgInfo(); /* 80AF0A84 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_soldierB.h b/include/d/actor/d_a_npc_soldierB.h index b9af0d6eeef..b0f023b930f 100644 --- a/include/d/actor/d_a_npc_soldierB.h +++ b/include/d/actor/d_a_npc_soldierB.h @@ -27,7 +27,7 @@ public: /* 80AF39B8 */ void main(); /* 80AF3B30 */ bool ctrlBtk(); /* 80AF3B38 */ void setAttnPos(); - /* 80AF4030 */ void setMotionAnm(int, f32); + /* 80AF4030 */ bool setMotionAnm(int, f32); /* 80AF4130 */ void setMotion(int, f32, int); /* 80AF4174 */ bool drawDbgInfo(); /* 80AF417C */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_the.h b/include/d/actor/d_a_npc_the.h index 8b391cc449d..ff217454a54 100644 --- a/include/d/actor/d_a_npc_the.h +++ b/include/d/actor/d_a_npc_the.h @@ -91,7 +91,7 @@ public: /* 80AF8114 */ static BOOL ctrlJointCallBack(J3DJoint*, int); /* 80AF8160 */ bool setExpressionAnm(int, bool); /* 80AF841C */ bool setExpressionBtp(int); - /* 80AF8564 */ void setMotionAnm(int, f32); + /* 80AF8564 */ bool setMotionAnm(int, f32); /* 80AF8744 */ BOOL wait(void*); /* 80AF8B0C */ void setMotion(int, f32, int); /* 80AF8B50 */ void setExpression(int, f32); diff --git a/include/d/actor/d_a_npc_theB.h b/include/d/actor/d_a_npc_theB.h index 870fd2d3195..98ecd7722c8 100644 --- a/include/d/actor/d_a_npc_theB.h +++ b/include/d/actor/d_a_npc_theB.h @@ -32,7 +32,7 @@ public: /* 80AFDB70 */ void setAttnPos(); /* 80AFDEC0 */ void setExpressionAnm(int, bool); /* 80AFE0BC */ void setExpressionBtp(int); - /* 80AFE1BC */ void setMotionAnm(int, f32); + /* 80AFE1BC */ bool setMotionAnm(int, f32); /* 80AFE398 */ bool drawDbgInfo(); /* 80AFE3A0 */ void reset(); /* 80AFE574 */ void playExpression(); diff --git a/include/d/actor/d_a_npc_tk.h b/include/d/actor/d_a_npc_tk.h index 1453c37b82d..aa4b8260391 100644 --- a/include/d/actor/d_a_npc_tk.h +++ b/include/d/actor/d_a_npc_tk.h @@ -81,12 +81,23 @@ public: } } + BOOL isAttackLink() { return field_0x71a != 0; } + void setAttackLink() { mFlags |= 0x10; } + void setBackHanjo() { mFlags |= 0x20; } + void setHanjoHand() { mFlags |= 0x40; } + void setQuickHanjoHand() { mFlags |= 0x200; } + BOOL isHanjoHand() { return field_0x6ad != 0; } + private: - /* 0x568 */ u8 field_0x568[0x6BE - 0x568]; + /* 0x568 */ u8 field_0x568[0x6ad - 0x568]; + /* 0x6AD */ u8 field_0x6ad; + /* 0x568 */ u8 field_0x6ae[0x6BE - 0x6ae]; /* 0x6BE */ u16 mFlags; /* 0x6C0 */ u8 field_0x6c0[0x6C8 - 0x6C0]; /* 0x6C8 */ dPath* field_0x6c8; - /* 0x6CC */ u8 field_0x6cc[0xB44 - 0x6CC]; + /* 0x6CC */ u8 field_0x6cc[0x71a - 0x6CC]; + /* 0x71A */ u8 field_0x71a; + /* 0x6CC */ u8 field_0x71b[0xB44 - 0x71b]; }; STATIC_ASSERT(sizeof(daNPC_TK_c) == 0xB44); diff --git a/include/d/actor/d_a_npc_tkc.h b/include/d/actor/d_a_npc_tkc.h index a9643e1d77e..9f28c8b4742 100644 --- a/include/d/actor/d_a_npc_tkc.h +++ b/include/d/actor/d_a_npc_tkc.h @@ -29,7 +29,7 @@ public: /* 80B0D458 */ void setExpressionAnm(int, bool); /* 80B0D5A4 */ void setExpressionBtp(int); /* 80B0D678 */ void reset(); - /* 80B0DA94 */ void setMotionAnm(int, f32); + /* 80B0DA94 */ bool setMotionAnm(int, f32); /* 80B0DBC8 */ void setAction(void (daNpcTkc_c::*)()); /* 80B0DC68 */ void wait(); /* 80B0DEF8 */ void calcFly(); diff --git a/include/d/actor/d_a_npc_tks.h b/include/d/actor/d_a_npc_tks.h index 016bc7f52ff..fa876b1166a 100644 --- a/include/d/actor/d_a_npc_tks.h +++ b/include/d/actor/d_a_npc_tks.h @@ -30,7 +30,7 @@ public: /* 80B15A24 */ void reset(); /* 80B160A8 */ void setAction(void (daNpcTks_c::*)()); /* 80B16148 */ void wait(); - /* 80B16344 */ void setMotionAnm(int, f32); + /* 80B16344 */ bool setMotionAnm(int, f32); /* 80B16634 */ void waitNude(); /* 80B1682C */ void waitLv6(); /* 80B16B74 */ void talk(); diff --git a/include/d/actor/d_a_npc_wrestler.h b/include/d/actor/d_a_npc_wrestler.h index 30e8972e718..16126bcfe6b 100644 --- a/include/d/actor/d_a_npc_wrestler.h +++ b/include/d/actor/d_a_npc_wrestler.h @@ -81,7 +81,7 @@ public: /* 80B3023C */ bool setExpressionAnm(int, bool); /* 80B30654 */ bool setExpressionBtp(int); /* 80B316C8 */ void setExpression(int, f32); - /* 80B3074C */ void setMotionAnm(int, f32); + /* 80B3074C */ bool setMotionAnm(int, f32); /* 80B31680 */ void setMotion(int, f32, int); /* 80B40D1C */ BOOL drawDbgInfo(); /* 80B40D24 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_yamid.h b/include/d/actor/d_a_npc_yamid.h index a75b853a5cd..62df0147c13 100644 --- a/include/d/actor/d_a_npc_yamid.h +++ b/include/d/actor/d_a_npc_yamid.h @@ -49,7 +49,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80B45F34 */ bool getEyeballMaterialNo(); + /* 80B45F34 */ s32 getEyeballMaterialNo(); /* 80B45F3C */ s32 getHeadJointNo(); /* 80B45F44 */ s32 getNeckJointNo(); /* 80B45F4C */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_yamis.h b/include/d/actor/d_a_npc_yamis.h index 6c9e684de6e..3224f62effe 100644 --- a/include/d/actor/d_a_npc_yamis.h +++ b/include/d/actor/d_a_npc_yamis.h @@ -49,7 +49,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80B49598 */ bool getEyeballMaterialNo(); + /* 80B49598 */ s32 getEyeballMaterialNo(); /* 80B495A0 */ s32 getHeadJointNo(); /* 80B495A8 */ s32 getNeckJointNo(); /* 80B495B0 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_yamit.h b/include/d/actor/d_a_npc_yamit.h index 27efa606791..4a916b65944 100644 --- a/include/d/actor/d_a_npc_yamit.h +++ b/include/d/actor/d_a_npc_yamit.h @@ -52,7 +52,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80B4CCF8 */ bool getEyeballMaterialNo(); + /* 80B4CCF8 */ s32 getEyeballMaterialNo(); /* 80B4CD00 */ s32 getHeadJointNo(); /* 80B4CD08 */ s32 getNeckJointNo(); /* 80B4CD10 */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_yelia.h b/include/d/actor/d_a_npc_yelia.h index 14f8740beee..f902bbca0fe 100644 --- a/include/d/actor/d_a_npc_yelia.h +++ b/include/d/actor/d_a_npc_yelia.h @@ -52,7 +52,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80B521E4 */ bool getEyeballMaterialNo(); + /* 80B521E4 */ s32 getEyeballMaterialNo(); /* 80B521EC */ s32 getHeadJointNo(); /* 80B521F4 */ s32 getNeckJointNo(); /* 80B521FC */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_npc_zra.h b/include/d/actor/d_a_npc_zra.h index 07edc26c372..f261b6fc43f 100644 --- a/include/d/actor/d_a_npc_zra.h +++ b/include/d/actor/d_a_npc_zra.h @@ -233,7 +233,7 @@ public: /* 80B7B9D4 */ bool setExpressionAnm(int, bool); /* 80B7BD60 */ bool setExpressionBtp(int); /* 80B7BE74 */ void setExpression(int, f32); - /* 80B7BEA0 */ void setMotionAnm(int, f32); + /* 80B7BEA0 */ bool setMotionAnm(int, f32); /* 80B7C070 */ void setMotionWaterAnm(int); /* 80B7C308 */ void setMotion(int, f32, BOOL); /* 80B7C34C */ BOOL drawDbgInfo(); diff --git a/include/d/actor/d_a_npc_zrc.h b/include/d/actor/d_a_npc_zrc.h index c6b357eba2b..9db44463e99 100644 --- a/include/d/actor/d_a_npc_zrc.h +++ b/include/d/actor/d_a_npc_zrc.h @@ -30,7 +30,7 @@ public: /* 80B8F56C */ void setExpressionAnm(int, bool); /* 80B8F898 */ void setExpressionBtp(int); /* 80B8F9CC */ void setExpression(int, f32); - /* 80B8F9F8 */ void setMotionAnm(int, f32); + /* 80B8F9F8 */ bool setMotionAnm(int, f32); /* 80B8FBE4 */ void setMotion(int, f32, int); /* 80B8FC28 */ bool drawDbgInfo(); /* 80B8FC30 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_npc_zrz.h b/include/d/actor/d_a_npc_zrz.h index 18ffbe28d66..469e103f4d2 100644 --- a/include/d/actor/d_a_npc_zrz.h +++ b/include/d/actor/d_a_npc_zrz.h @@ -38,7 +38,7 @@ public: /* 80B95C6C */ bool setExpressionAnm(int, bool); /* 80B95DD0 */ bool setExpressionBtp(int); /* 80B95F10 */ void setExpression(int, f32); - /* 80B95F3C */ void setMotionAnm(int, f32); + /* 80B95F3C */ bool setMotionAnm(int, f32); /* 80B9612C */ void setMotion(int, f32, int); /* 80B96170 */ BOOL drawDbgInfo(); /* 80B96178 */ void drawOtherMdls(); diff --git a/include/d/actor/d_a_obj_tks.h b/include/d/actor/d_a_obj_tks.h index 5c4c3df6dd3..e20f9cba357 100644 --- a/include/d/actor/d_a_obj_tks.h +++ b/include/d/actor/d_a_obj_tks.h @@ -33,7 +33,7 @@ public: /* 80D106C8 */ void setExpression(int, f32); /* 80D106F4 */ void talk(); /* 80D10A80 */ void demo(); - /* 80D11104 */ void setMotionAnm(int, f32); + /* 80D11104 */ bool setMotionAnm(int, f32); /* 80D11228 */ void warp(); /* 80D11670 */ void setParam(); /* 80D116C8 */ void main(); diff --git a/include/d/actor/d_a_peru.h b/include/d/actor/d_a_peru.h index 2a07a796617..7cb97b16a29 100644 --- a/include/d/actor/d_a_peru.h +++ b/include/d/actor/d_a_peru.h @@ -59,7 +59,7 @@ public: daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80D4BEC4 */ bool getEyeballMaterialNo(); + /* 80D4BEC4 */ s32 getEyeballMaterialNo(); /* 80D4BECC */ s32 getHeadJointNo(); /* 80D4BED4 */ s32 getNeckJointNo(); /* 80D4BEDC */ bool getBackboneJointNo(); diff --git a/include/d/actor/d_a_tag_push.h b/include/d/actor/d_a_tag_push.h index b85ee6c1af0..427fea91ed7 100644 --- a/include/d/actor/d_a_tag_push.h +++ b/include/d/actor/d_a_tag_push.h @@ -36,7 +36,7 @@ public: /* 0x568 */ daNpcT_ActorMngr_c mActorMngr; - /* 804908CC */ virtual ~daTag_Push_c(); + /* 804908CC */ virtual ~daTag_Push_c() {} }; STATIC_ASSERT(sizeof(daTag_Push_c) == 0x574); diff --git a/include/d/actor/d_a_tag_theB_hint.h b/include/d/actor/d_a_tag_theB_hint.h index d8319752c05..5eabf046c6d 100644 --- a/include/d/actor/d_a_tag_theB_hint.h +++ b/include/d/actor/d_a_tag_theB_hint.h @@ -26,7 +26,7 @@ struct daNpcTheB_c { /* 80AFDB70 */ void setAttnPos(); /* 80AFDEC0 */ void setExpressionAnm(int, bool); /* 80AFE0BC */ void setExpressionBtp(int); - /* 80AFE1BC */ void setMotionAnm(int, f32); + /* 80AFE1BC */ bool setMotionAnm(int, f32); /* 80AFE398 */ bool drawDbgInfo(); /* 80AFE3A0 */ void reset(); /* 80AFE574 */ void playExpression(); diff --git a/include/d/d_com_inf_game.h b/include/d/d_com_inf_game.h index 4b3781cb0d8..cac5fc947f7 100644 --- a/include/d/d_com_inf_game.h +++ b/include/d/d_com_inf_game.h @@ -1583,6 +1583,10 @@ inline bool dComIfGs_isCollectCrystal(u8 i_item) { return g_dComIfG_gameInfo.info.getPlayer().getCollect().isCollectCrystal(i_item); } +inline bool dComIfGs_isCollectShield(u8 i_item) { + return g_dComIfG_gameInfo.info.getPlayer().getCollect().isCollect(2, i_item); +} + inline void dComIfGs_onCollectMirror(u8 i_item) { g_dComIfG_gameInfo.info.getPlayer().getCollect().onCollectMirror(i_item); } diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index b3c9bc286e7..5ff787c1bbd 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -17,6 +17,12 @@ fopAcM_OnCondition(ptr, fopAcCnd_INIT_e); \ } +#define fopAcM_SetupActor2(ptr,ClassName, ...) \ + if (!fopAcM_CheckCondition(ptr, fopAcCnd_INIT_e)) { \ + new (ptr) ClassName(__VA_ARGS__); \ + fopAcM_OnCondition(ptr, fopAcCnd_INIT_e); \ + } + class J3DModelData; // placeholder class JKRHeap; class cM3dGPla; diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h index 23a5b2b613c..5b10aa786ff 100644 --- a/include/m_Do/m_Do_ext.h +++ b/include/m_Do/m_Do_ext.h @@ -293,6 +293,7 @@ public: void setFrame(f32 frame) { mFrameCtrl.setFrame((s16)frame); } void setFrameF(f32 frame) { mFrameCtrl.setFrame(frame); } BOOL checkFrame(f32 frame) { return mFrameCtrl.checkPass(frame); } + f32 getMorfRatio() { return mCurMorf; } /* 0x04 */ J3DModel* mpModel; /* 0x08 */ J3DAnmTransform* mpAnm; diff --git a/src/d/actor/d_a_npc.cpp b/src/d/actor/d_a_npc.cpp index 7ab73b78e5f..20b1f765c03 100644 --- a/src/d/actor/d_a_npc.cpp +++ b/src/d/actor/d_a_npc.cpp @@ -1156,19 +1156,12 @@ void daNpcT_JntAnm_c::calcJntRad(f32 param_0, f32 param_1, f32 param_2) { // NONMATCHING } -/* ############################################################################################## */ -/* 80453430-80453434 001A30 0004+00 1/1 0/0 0/0 .sdata2 @5422 */ -SECTION_SDATA2 static f32 lit_5422 = 10922.0f; - -/* 80453434-80453438 001A34 0004+00 1/1 0/0 0/0 .sdata2 @5423 */ -SECTION_SDATA2 static f32 lit_5423 = 7281.0f; - /* 80147DCC-80147E3C 14270C 0070+00 0/0 0/0 28/28 .text * setParam__19daNpcT_DmgStagger_cFP10fopAc_ac_cP10fopAc_ac_cs */ void daNpcT_DmgStagger_c::setParam(fopAc_ac_c* i_actor1, fopAc_ac_c* i_actor2, s16 i_angle) { if (i_actor2 && i_actor1) { - field_0xc = FLOAT_LABEL(lit_5422); - field_0x10 = FLOAT_LABEL(lit_5423); + field_0xc[0] = 10922.0f; + field_0xc[1] = 7281.0f; field_0x16 = fopAcM_searchActorAngleY(i_actor1, i_actor2) - i_angle; mStagger = 0x4000; } @@ -1844,12 +1837,12 @@ void daNpcT_c::clrParam() { } /* 8014A388-8014A628 144CC8 02A0+00 1/1 0/0 57/57 .text setFaceMotionAnm__8daNpcT_cFib */ -void daNpcT_c::setFaceMotionAnm(int param_0, bool param_1) { +bool daNpcT_c::setFaceMotionAnm(int param_0, bool param_1) { // NONMATCHING } /* 8014A628-8014A908 144F68 02E0+00 1/0 1/0 59/0 .text setMotionAnm__8daNpcT_cFifi */ -void daNpcT_c::setMotionAnm(int param_0, f32 param_1, int param_2) { +bool daNpcT_c::setMotionAnm(int param_0, f32 param_1, int param_2) { // NONMATCHING } @@ -1916,20 +1909,20 @@ SECTION_SDATA2 static f32 lit_6775 = 180.0f; /* 8014ABD0-8014ACF0 145510 0120+00 2/2 0/0 53/53 .text chkActorInSight__8daNpcT_cFP10fopAc_ac_cfs */ -void daNpcT_c::chkActorInSight(fopAc_ac_c* param_0, f32 param_1, s16 param_2) { +BOOL daNpcT_c::chkActorInSight(fopAc_ac_c* param_0, f32 param_1, s16 param_2) { // NONMATCHING } /* 8014ACF0-8014ADA0 145630 00B0+00 2/2 0/0 12/12 .text chkPointInArea__8daNpcT_cF4cXyz4cXyzfffs */ -void daNpcT_c::chkPointInArea(cXyz param_0, cXyz param_1, f32 param_2, f32 param_3, f32 param_4, +BOOL daNpcT_c::chkPointInArea(cXyz param_0, cXyz param_1, f32 param_2, f32 param_3, f32 param_4, s16 param_5) { // NONMATCHING } /* 8014ADA0-8014AE1C 1456E0 007C+00 1/1 0/0 1/1 .text chkPointInArea__8daNpcT_cF4cXyz4cXyz4cXyzs */ -void daNpcT_c::chkPointInArea(cXyz param_0, cXyz param_1, cXyz param_2, s16 param_3) { +BOOL daNpcT_c::chkPointInArea(cXyz param_0, cXyz param_1, cXyz param_2, s16 param_3) { // NONMATCHING } @@ -1974,7 +1967,7 @@ void daNpcT_c::chkFindWolf(s16 param_0, int param_1, int param_2, f32 param_3, f } /* 8014B338-8014B3EC 145C78 00B4+00 0/0 0/0 75/75 .text srchPlayerActor__8daNpcT_cFv */ -void daNpcT_c::srchPlayerActor() { +BOOL daNpcT_c::srchPlayerActor() { // NONMATCHING } @@ -2000,7 +1993,7 @@ void daNpcT_c::turn(s16 param_0, int param_1, int param_2) { } /* 8014B648-8014B808 145F88 01C0+00 0/0 0/0 177/177 .text step__8daNpcT_cFsiiii */ -void daNpcT_c::step(s16 param_0, int param_1, int param_2, int param_3, int param_4) { +int daNpcT_c::step(s16 param_0, int param_1, int param_2, int param_3, int param_4) { // NONMATCHING } @@ -2039,7 +2032,7 @@ int daNpcT_c::initTalk(int param_0, fopAc_ac_c** param_1) { /* 8014BC78-8014BE2C 1465B8 01B4+00 0/0 0/0 169/169 .text talkProc__8daNpcT_cFPiiPP10fopAc_ac_ci */ -void daNpcT_c::talkProc(int* param_0, int param_1, fopAc_ac_c** param_2, int param_3) { +int daNpcT_c::talkProc(int* param_0, int param_1, fopAc_ac_c** param_2, int param_3) { // NONMATCHING } @@ -2066,7 +2059,7 @@ fopAc_ac_c* daNpcT_c::getNearestActorP(s16 param_0) { /* 8014BEE4-8014BFB0 146824 00CC+00 0/0 0/0 12/12 .text getEvtAreaTagP__8daNpcT_cFii */ -void daNpcT_c::getEvtAreaTagP(int param_0, int param_1) { +fopAc_ac_c* daNpcT_c::getEvtAreaTagP(int param_0, int param_1) { // NONMATCHING } @@ -2258,13 +2251,6 @@ daNpcT_Hermite_c::~daNpcT_Hermite_c() { // NONMATCHING } -/* 8014CBF4-8014CC0C 147534 0018+00 1/0 1/0 0/0 .text decTmr__8daNpcT_cFv */ -void daNpcT_c::decTmr() { - if (mTimer != 0) { - mTimer--; - } -} - /* 8014CC0C-8014CC10 14754C 0004+00 1/0 1/0 0/0 .text setCollision__8daNpcT_cFv */ void daNpcT_c::setCollision() { /* empty function */ @@ -2276,7 +2262,8 @@ void daNpcT_c::setAttnPos() { } /* 8014CC14-8014CC18 147554 0004+00 1/0 1/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +//void daNpcT_c::ctrlSubFaceMotion(int param_0) { +void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } @@ -2305,26 +2292,11 @@ void daNpcT_c::drawOtherMdl() { /* empty function */ } -/* 8014CC2C-8014CC30 14756C 0004+00 1/0 1/0 0/0 .text drawGhost__8daNpcT_cFv */ -void daNpcT_c::drawGhost() { - /* empty function */ -} - /* 8014CC30-8014CC38 147570 0008+00 1/0 1/0 0/0 .text drawDbgInfo__8daNpcT_cFv */ int daNpcT_c::drawDbgInfo() { return false; } -/* 8014CC38-8014CC40 147578 0008+00 1/0 1/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - -/* 8014CC40-8014CC48 147580 0008+00 1/0 1/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - /* 8014CC48-8014CC4C 147588 0004+00 1/0 1/0 0/0 .text afterJntAnm__8daNpcT_cFi */ void daNpcT_c::afterJntAnm(int param_0) { /* empty function */ @@ -2393,22 +2365,6 @@ extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } -/* 8014CCA8-8014CCAC 1475E8 0004+00 1/0 1/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { - /* empty function */ -} - -/* 8014CCAC-8014CCB0 1475EC 0004+00 1/0 1/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { - /* empty function */ -} - -/* 8014CCB0-8014CCE0 1475F0 0030+00 1/0 1/0 0/0 .text - * getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c */ -daNpcT_faceMotionAnmData_c daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { - // NONMATCHING -} - /* 8014CCE0-8014CCE8 147620 0008+00 1/0 1/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi */ // bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { @@ -2416,29 +2372,6 @@ extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { return true; } -/* 8014CCE8-8014CCEC 147628 0004+00 1/0 1/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { - /* empty function */ -} - -/* 8014CCEC-8014CCF0 14762C 0004+00 1/0 1/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { - /* empty function */ -} - -/* 8014CCF0-8014CD20 147630 0030+00 1/0 1/0 0/0 .text - * getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c */ -// probably inline -#ifdef NONMATCHING -daNpcT_motionAnmData_c daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { - return param_0; -} -#else -daNpcT_motionAnmData_c daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { - // NONMATCHING -} -#endif - /* 8014CD20-8014D0A8 147660 0388+00 1/0 1/1 0/0 .text __dt__8daNpcT_cFv */ // daNpcT_c::~daNpcT_c() { extern "C" void __dt__8daNpcT_cFv() { @@ -2459,12 +2392,6 @@ extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } -/* 8014D0B8-8014D0C0 1479F8 0008+00 1/0 1/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 8014D0C0-8014D108 147A00 0048+00 1/0 0/0 0/0 .text __dt__22daNpcT_MotionSeqMngr_cFv */ // daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { extern "C" void __dt__22daNpcT_MotionSeqMngr_cFv() { @@ -5068,7 +4995,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 */ -void daNpcF_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcF_c::setMotionAnm(int param_0, f32 param_1) { /* empty function */ } diff --git a/src/d/actor/d_a_npc_aru.cpp b/src/d/actor/d_a_npc_aru.cpp index 977af0789df..343bce61f33 100644 --- a/src/d/actor/d_a_npc_aru.cpp +++ b/src/d/actor/d_a_npc_aru.cpp @@ -2119,4 +2119,4 @@ static u8 data_809581E8[4]; static u8 data_809581EC[4]; #pragma pop -/* 8095781C-8095781C 00014C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 8095781C-8095781C 00014C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_ash.cpp b/src/d/actor/d_a_npc_ash.cpp index 6ca74c0c830..22a3b985080 100644 --- a/src/d/actor/d_a_npc_ash.cpp +++ b/src/d/actor/d_a_npc_ash.cpp @@ -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 */ -void daNpcAsh_c::setMotionAnm(int i_idx, f32 i_morf) { +bool daNpcAsh_c::setMotionAnm(int i_idx, f32 i_morf) { if (i_idx < 8 || i_idx >= 18) { return; } diff --git a/src/d/actor/d_a_npc_ashB.cpp b/src/d/actor/d_a_npc_ashB.cpp index dc489969908..79ed43face6 100644 --- a/src/d/actor/d_a_npc_ashB.cpp +++ b/src/d/actor/d_a_npc_ashB.cpp @@ -740,7 +740,7 @@ void daNpcAshB_c::setExpressionBtp(int param_0) { } /* 8095EEE0-8095F0A4 001180 01C4+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcAshB_cFif */ -void daNpcAshB_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcAshB_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1613,4 +1613,4 @@ static void func_809620C8() { // NONMATCHING } -/* 809623E8-809623E8 000304 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809623E8-809623E8 000304 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_blue_ns.cpp b/src/d/actor/d_a_npc_blue_ns.cpp index 2f4df96c1dc..9f3e8c704b0 100644 --- a/src/d/actor/d_a_npc_blue_ns.cpp +++ b/src/d/actor/d_a_npc_blue_ns.cpp @@ -912,7 +912,7 @@ void daNpcBlueNS_c::setAttnPos() { } /* 8096A238-8096A308 0019B8 00D0+00 1/0 0/0 0/0 .text setMotionAnm__13daNpcBlueNS_cFif */ -void daNpcBlueNS_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcBlueNS_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1539,4 +1539,4 @@ static void func_8096C904() { // NONMATCHING } -/* 8096CB4C-8096CB4C 00022C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 8096CB4C-8096CB4C 00022C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_bou.cpp b/src/d/actor/d_a_npc_bou.cpp index 8616f1da34f..8431426c1b2 100644 --- a/src/d/actor/d_a_npc_bou.cpp +++ b/src/d/actor/d_a_npc_bou.cpp @@ -109,7 +109,7 @@ extern "C" void func_8097258C(void* _this, int*); extern "C" void __sinit_d_a_npc_bou_cpp(); extern "C" void __ct__11daNpc_Bou_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__11daNpc_Bou_cFv(); +extern "C" s32 getEyeballMaterialNo__11daNpc_Bou_cFv(); extern "C" s32 getHeadJointNo__11daNpc_Bou_cFv(); extern "C" s32 getNeckJointNo__11daNpc_Bou_cFv(); extern "C" bool getBackboneJointNo__11daNpc_Bou_cFv(); @@ -1687,7 +1687,7 @@ daNpc_Bou_c::daNpc_Bou_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 809727B4-809727BC 005914 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__11daNpc_Bou_cFv */ -bool daNpc_Bou_c::getEyeballMaterialNo() { +s32 daNpc_Bou_c::getEyeballMaterialNo() { return true; } @@ -1734,4 +1734,4 @@ static void func_80972844() { // NONMATCHING } -/* 8097299C-8097299C 00013C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 8097299C-8097299C 00013C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_bouS.cpp b/src/d/actor/d_a_npc_bouS.cpp index 3563c013250..21ef7ceb948 100644 --- a/src/d/actor/d_a_npc_bouS.cpp +++ b/src/d/actor/d_a_npc_bouS.cpp @@ -813,7 +813,7 @@ void daNpcBouS_c::setExpressionBtp(int param_0) { } /* 809745F4-80974730 001194 013C+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcBouS_cFif */ -void daNpcBouS_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcBouS_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2037,4 +2037,4 @@ static void func_809783F4() { // NONMATCHING } -/* 80978758-80978758 000348 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80978758-80978758 000348 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_chat.cpp b/src/d/actor/d_a_npc_chat.cpp index 344dc3387ce..722fe1bf134 100644 --- a/src/d/actor/d_a_npc_chat.cpp +++ b/src/d/actor/d_a_npc_chat.cpp @@ -2906,7 +2906,7 @@ void daNpcChat_c::setExpressionBtp(int param_0) { } /* 80983168-80983584 002A08 041C+00 3/0 0/0 0/0 .text setMotionAnm__11daNpcChat_cFif */ -void daNpcChat_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcChat_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -4799,4 +4799,4 @@ static u8 data_8098BE00[4]; static u8 data_8098BE04[4]; #pragma pop -/* 80987740-80987740 000DA4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80987740-80987740 000DA4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_chin.cpp b/src/d/actor/d_a_npc_chin.cpp index 3e6cd6d2bd0..8d0c847f856 100644 --- a/src/d/actor/d_a_npc_chin.cpp +++ b/src/d/actor/d_a_npc_chin.cpp @@ -1150,7 +1150,7 @@ COMPILER_STRIP_GATE(0x809919D8, &lit_4808); #pragma pop /* 8098D938-8098DB44 001B18 020C+00 2/0 0/0 0/0 .text setMotionAnm__11daNpcChin_cFif */ -void daNpcChin_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcChin_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2437,4 +2437,4 @@ static void func_809918DC() { // NONMATCHING } -/* 80991D40-80991D40 000448 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80991D40-80991D40 000448 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_doorboy.cpp b/src/d/actor/d_a_npc_doorboy.cpp index 3429d14c72c..3808af589e2 100644 --- a/src/d/actor/d_a_npc_doorboy.cpp +++ b/src/d/actor/d_a_npc_doorboy.cpp @@ -908,7 +908,7 @@ void daNpcDoorBoy_c::lookat() { /* 809ACFF8-809AD0C8 002458 00D0+00 1/0 0/0 0/0 .text setMotionAnm__14daNpcDoorBoy_cFif */ -void daNpcDoorBoy_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcDoorBoy_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1081,4 +1081,4 @@ static void func_809AD98C() { // NONMATCHING } -/* 809ADB04-809ADB04 00015C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809ADB04-809ADB04 00015C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_drainSol.cpp b/src/d/actor/d_a_npc_drainSol.cpp index 00a10796e1d..e11c2b468c6 100644 --- a/src/d/actor/d_a_npc_drainSol.cpp +++ b/src/d/actor/d_a_npc_drainSol.cpp @@ -633,7 +633,7 @@ void daNpcDrSol_c::setAttnPos() { } /* 809AF12C-809AF1FC 0013AC 00D0+00 1/0 0/0 0/0 .text setMotionAnm__12daNpcDrSol_cFif */ -void daNpcDrSol_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcDrSol_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -796,4 +796,4 @@ static void func_809AF988() { SECTION_DEAD static char const* const stringBase_809AFAC4 = "Shoe"; #pragma pop -/* 809AFAB0-809AFAB0 00010C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809AFAB0-809AFAB0 00010C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_fairy.cpp b/src/d/actor/d_a_npc_fairy.cpp index b612baf43d9..e629aad34b1 100644 --- a/src/d/actor/d_a_npc_fairy.cpp +++ b/src/d/actor/d_a_npc_fairy.cpp @@ -161,7 +161,7 @@ __ct__13daNpc_Fairy_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPC extern "C" void __dt__12J3DFrameCtrlFv(); extern "C" void __dt__8cM3dGCylFv(); extern "C" void __dt__8cM3dGAabFv(); -extern "C" bool getEyeballMaterialNo__13daNpc_Fairy_cFv(); +extern "C" s32 getEyeballMaterialNo__13daNpc_Fairy_cFv(); extern "C" s32 getHeadJointNo__13daNpc_Fairy_cFv(); extern "C" s32 getNeckJointNo__13daNpc_Fairy_cFv(); extern "C" bool getBackboneJointNo__13daNpc_Fairy_cFv(); @@ -1638,7 +1638,7 @@ void daNpc_Fairy_c::setAnmData() { /* 809B2C20-809B2E78 001200 0258+00 1/0 0/0 0/0 .text setMotionAnm__13daNpc_Fairy_cFifi */ -void daNpc_Fairy_c::setMotionAnm(int param_0, f32 param_1, int param_2) { +bool daNpc_Fairy_c::setMotionAnm(int param_0, f32 param_1, int param_2) { // NONMATCHING } @@ -2709,7 +2709,7 @@ extern "C" void __dt__8cM3dGAabFv() { } /* 809B9238-809B9240 007818 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__13daNpc_Fairy_cFv */ -bool daNpc_Fairy_c::getEyeballMaterialNo() { +s32 daNpc_Fairy_c::getEyeballMaterialNo() { return true; } @@ -2757,4 +2757,4 @@ static void func_809B92C8() { // NONMATCHING } -/* 809B94CC-809B94CC 0001E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809B94CC-809B94CC 0001E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_fairy_seirei.cpp b/src/d/actor/d_a_npc_fairy_seirei.cpp index ae308d6ad28..edfd9bd76a4 100644 --- a/src/d/actor/d_a_npc_fairy_seirei.cpp +++ b/src/d/actor/d_a_npc_fairy_seirei.cpp @@ -63,7 +63,7 @@ extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv(); extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void afterJntAnm__8daNpcT_cFi(); extern "C" bool checkChangeEvt__8daNpcT_cFv(); extern "C" bool evtEndProc__8daNpcT_cFv(); @@ -825,16 +825,6 @@ extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80541A68-80541A70 001BE8 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80541A70-80541A78 001BF0 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80541A78-80541A80 001BF8 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__8daNpcT_cFv */ s32 daNpcT_c::getBackboneJointNo() { return -1; @@ -874,12 +864,6 @@ extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } -/* 80541AB0-80541AB8 001C30 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80541AB8-80541ABC 001C38 0004+00 1/0 0/0 0/0 .text afterJntAnm__8daNpcT_cFi */ void daNpcT_c::afterJntAnm(int param_0) { /* empty function */ @@ -1045,4 +1029,4 @@ static void func_80541D70() { // NONMATCHING } -/* 80541E58-80541E58 0000CC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80541E58-80541E58 0000CC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_gnd.cpp b/src/d/actor/d_a_npc_gnd.cpp index e6b47cb3af6..b7bb214205d 100644 --- a/src/d/actor/d_a_npc_gnd.cpp +++ b/src/d/actor/d_a_npc_gnd.cpp @@ -78,7 +78,7 @@ extern "C" bool checkChangeJoint__8daNpcT_cFi(); extern "C" bool checkRemoveJoint__8daNpcT_cFi(); extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" bool checkChangeEvt__8daNpcT_cFv(); extern "C" bool evtEndProc__8daNpcT_cFv(); extern "C" void afterMoved__8daNpcT_cFv(); @@ -1046,16 +1046,6 @@ extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 809BE18C-809BE194 002C6C 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 809BE194-809BE19C 002C74 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 809BE19C-809BE1A4 002C7C 0008+00 1/0 0/0 0/0 .text getFootLJointNo__8daNpcT_cFv */ s32 daNpcT_c::getFootLJointNo() { return -1; @@ -1066,12 +1056,6 @@ s32 daNpcT_c::getFootRJointNo() { return -1; } -/* 809BE1AC-809BE1B4 002C8C 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 809BE1B4-809BE1BC 002C94 0008+00 1/0 0/0 0/0 .text checkChangeEvt__8daNpcT_cFv */ bool daNpcT_c::checkChangeEvt() { return false; @@ -1244,4 +1228,4 @@ static void func_809BE484() { // NONMATCHING } -/* 809BE588-809BE588 0000E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809BE588-809BE588 0000E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_gra.cpp b/src/d/actor/d_a_npc_gra.cpp index 232496f00f8..43b32387616 100644 --- a/src/d/actor/d_a_npc_gra.cpp +++ b/src/d/actor/d_a_npc_gra.cpp @@ -1830,7 +1830,7 @@ void daNpc_grA_c::setExpression(int param_0, f32 param_1) { } /* 809C0E44-809C1018 0025E4 01D4+00 2/0 0/0 0/0 .text setMotionAnm__11daNpc_grA_cFif */ -void daNpc_grA_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_grA_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -4039,4 +4039,4 @@ static u8 data_809CB3C0[4]; static u8 data_809CB3C4[4]; #pragma pop -/* 809CA4B8-809CA4B8 000720 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809CA4B8-809CA4B8 000720 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_grc.cpp b/src/d/actor/d_a_npc_grc.cpp index ff806c00c70..52d74d02e7a 100644 --- a/src/d/actor/d_a_npc_grc.cpp +++ b/src/d/actor/d_a_npc_grc.cpp @@ -910,7 +910,7 @@ void daNpc_grC_c::setExpression(int param_0, f32 param_1) { } /* 809CCCD0-809CCE70 0018F0 01A0+00 2/0 0/0 0/0 .text setMotionAnm__11daNpc_grC_cFif */ -void daNpc_grC_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_grC_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1864,4 +1864,4 @@ static u8 data_809CFC30[4]; static u8 data_809CFC34[4]; #pragma pop -/* 809CF7F0-809CF7F0 0002D4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809CF7F0-809CF7F0 0002D4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_grd.cpp b/src/d/actor/d_a_npc_grd.cpp index c761703030d..7e092c11ff2 100644 --- a/src/d/actor/d_a_npc_grd.cpp +++ b/src/d/actor/d_a_npc_grd.cpp @@ -936,7 +936,7 @@ void daNpc_Grd_c::setExpression(int param_0, f32 param_1) { } /* 809D17C0-809D1940 001B80 0180+00 1/0 0/0 0/0 .text setMotionAnm__11daNpc_Grd_cFif */ -void daNpc_Grd_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_Grd_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1690,4 +1690,4 @@ static u8 data_809D3F78[4]; static u8 data_809D3F7C[4]; #pragma pop -/* 809D3BF4-809D3BF4 0001F0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809D3BF4-809D3BF4 0001F0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_grm.cpp b/src/d/actor/d_a_npc_grm.cpp index f886404db29..92244bda2cc 100644 --- a/src/d/actor/d_a_npc_grm.cpp +++ b/src/d/actor/d_a_npc_grm.cpp @@ -54,7 +54,7 @@ __ct__11daNpc_grM_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ2 extern "C" void __dt__8cM3dGCylFv(); extern "C" void __dt__8cM3dGAabFv(); extern "C" void __dt__4cXyzFv(); -extern "C" bool getEyeballMaterialNo__11daNpc_grM_cFv(); +extern "C" s32 getEyeballMaterialNo__11daNpc_grM_cFv(); extern "C" s32 getHeadJointNo__11daNpc_grM_cFv(); extern "C" s32 getNeckJointNo__11daNpc_grM_cFv(); extern "C" bool getBackboneJointNo__11daNpc_grM_cFv(); @@ -982,7 +982,7 @@ extern "C" void __dt__4cXyzFv() { } /* 809D5F98-809D5FA0 002018 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__11daNpc_grM_cFv */ -bool daNpc_grM_c::getEyeballMaterialNo() { +s32 daNpc_grM_c::getEyeballMaterialNo() { return true; } @@ -1320,4 +1320,4 @@ void __sinit_d_a_npc_grm_cpp() { REGISTER_CTORS(0x809D6CD4, __sinit_d_a_npc_grm_cpp); #pragma pop -/* 809D6E60-809D6E60 0000F0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809D6E60-809D6E60 0000F0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_grmc.cpp b/src/d/actor/d_a_npc_grmc.cpp index 1da15fe5167..1bb1e7ff204 100644 --- a/src/d/actor/d_a_npc_grmc.cpp +++ b/src/d/actor/d_a_npc_grmc.cpp @@ -57,7 +57,7 @@ extern "C" s32 getNeckJointNo__12daNpc_grMC_cFv(); extern "C" bool getBackboneJointNo__12daNpc_grMC_cFv(); extern "C" void checkChangeJoint__12daNpc_grMC_cFi(); extern "C" void checkRemoveJoint__12daNpc_grMC_cFi(); -extern "C" bool getEyeballMaterialNo__12daNpc_grMC_cFv(); +extern "C" s32 getEyeballMaterialNo__12daNpc_grMC_cFv(); extern "C" void __dt__18daNpc_grMC_Param_cFv(); extern "C" static void func_809D905C(); extern "C" static void func_809D9064(); @@ -1004,7 +1004,7 @@ void daNpc_grMC_c::checkRemoveJoint(int param_0) { } /* 809D900C-809D9014 001CEC 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__12daNpc_grMC_cFv */ -bool daNpc_grMC_c::getEyeballMaterialNo() { +s32 daNpc_grMC_c::getEyeballMaterialNo() { return true; } @@ -1309,4 +1309,4 @@ void __sinit_d_a_npc_grmc_cpp() { REGISTER_CTORS(0x809D9CF4, __sinit_d_a_npc_grmc_cpp); #pragma pop -/* 809D9E68-809D9E68 0000F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809D9E68-809D9E68 0000F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_gro.cpp b/src/d/actor/d_a_npc_gro.cpp index 58203bfe775..8311d689f5b 100644 --- a/src/d/actor/d_a_npc_gro.cpp +++ b/src/d/actor/d_a_npc_gro.cpp @@ -1092,7 +1092,7 @@ void daNpc_grO_c::setExpression(int param_0, f32 param_1) { } /* 809DC144-809DC2E4 001CC4 01A0+00 2/0 0/0 0/0 .text setMotionAnm__11daNpc_grO_cFif */ -void daNpc_grO_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_grO_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2136,4 +2136,4 @@ static u8 data_809DF7C8[4]; static u8 data_809DF7CC[4]; #pragma pop -/* 809DF2B8-809DF2B8 00033C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809DF2B8-809DF2B8 00033C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_grr.cpp b/src/d/actor/d_a_npc_grr.cpp index 3a3506fbd78..2d21b865c72 100644 --- a/src/d/actor/d_a_npc_grr.cpp +++ b/src/d/actor/d_a_npc_grr.cpp @@ -970,7 +970,7 @@ void daNpc_grR_c::setExpression(int param_0, f32 param_1) { } /* 809E13B8-809E1548 001BD8 0190+00 1/0 0/0 0/0 .text setMotionAnm__11daNpc_grR_cFif */ -void daNpc_grR_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_grR_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1930,4 +1930,4 @@ static u8 data_809E3FC0[4]; static u8 data_809E3FC4[4]; #pragma pop -/* 809E3BCC-809E3BCC 0002F4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809E3BCC-809E3BCC 0002F4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_grs.cpp b/src/d/actor/d_a_npc_grs.cpp index 34b9a42fa19..488f5f73c5b 100644 --- a/src/d/actor/d_a_npc_grs.cpp +++ b/src/d/actor/d_a_npc_grs.cpp @@ -936,7 +936,7 @@ void daNpc_grS_c::setExpression(int param_0, f32 param_1) { } /* 809E5B48-809E5CB8 001B68 0170+00 1/0 0/0 0/0 .text setMotionAnm__11daNpc_grS_cFif */ -void daNpc_grS_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_grS_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1665,4 +1665,4 @@ static u8 data_809E8300[4]; static u8 data_809E8304[4]; #pragma pop -/* 809E7F9C-809E7F9C 0001D0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809E7F9C-809E7F9C 0001D0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_grz.cpp b/src/d/actor/d_a_npc_grz.cpp index 22dd4561e8f..a6c14a3029d 100644 --- a/src/d/actor/d_a_npc_grz.cpp +++ b/src/d/actor/d_a_npc_grz.cpp @@ -1402,7 +1402,7 @@ void daNpc_Grz_c::setExpression(int param_0, f32 param_1) { } /* 809EAB60-809EAD4C 002840 01EC+00 2/0 0/0 0/0 .text setMotionAnm__11daNpc_Grz_cFif */ -void daNpc_Grz_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_Grz_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2705,4 +2705,4 @@ static u8 data_809EFCD0[4]; static u8 data_809EFCD4[4]; #pragma pop -/* 809EF638-809EF638 000444 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809EF638-809EF638 000444 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_gwolf.cpp b/src/d/actor/d_a_npc_gwolf.cpp index e0c8c2286b1..f0a4760aeea 100644 --- a/src/d/actor/d_a_npc_gwolf.cpp +++ b/src/d/actor/d_a_npc_gwolf.cpp @@ -1397,7 +1397,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 */ -void daNpc_GWolf_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_GWolf_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2264,4 +2264,4 @@ static u8 data_809F8F90[4]; static u8 data_809F8F94[4]; #pragma pop -/* 809F871C-809F871C 000228 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 809F871C-809F871C 000228 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_hanjo.cpp b/src/d/actor/d_a_npc_hanjo.cpp index cab34b65157..4e4e3eed140 100644 --- a/src/d/actor/d_a_npc_hanjo.cpp +++ b/src/d/actor/d_a_npc_hanjo.cpp @@ -4,6 +4,13 @@ */ #include "d/actor/d_a_npc_hanjo.h" +#include "d/actor/d_a_npc_tk.h" +#include "d/actor/d_a_player.h" +#include "JSystem/J3DGraphBase/J3DMaterial.h" +#include "SSystem/SComponent/c_counter.h" +#include "d/actor/d_a_tag_evtarea.h" +#include "d/d_cc_uty.h" +#include "Z2AudioLib/Z2Instances.h" #include "dol2asm.h" // @@ -333,7 +340,6 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" extern void* __vt__14J3DMaterialAnm[4]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_Counter[12 + 4 /* padding */]; extern "C" u8 sincosTable___5JMath[65536]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz4cXyz(); @@ -343,29 +349,7 @@ extern "C" void __register_global_object(); // Declarations: // -/* ############################################################################################## */ -/* 80A007F8-80A007F8 0001F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80A007F8 = ""; -SECTION_DEAD static char const* const stringBase_80A007F9 = "NO_RESPONSE"; -SECTION_DEAD static char const* const stringBase_80A00805 = "CONVERSATION_ABOUT_SARU01"; -SECTION_DEAD static char const* const stringBase_80A0081F = "CONVERSATION_ABOUT_SARU02"; -SECTION_DEAD static char const* const stringBase_80A00839 = "CONVERSATION_ABOUT_HONEYCOMB1"; -SECTION_DEAD static char const* const stringBase_80A00857 = "CONVERSATION_ABOUT_HONEYCOMB2"; -SECTION_DEAD static char const* const stringBase_80A00875 = "CONVERSATION_ABOUT_HONEYCOMB3"; -SECTION_DEAD static char const* const stringBase_80A00893 = "CONVERSATION_ABOUT_HONEYCOMB4"; -SECTION_DEAD static char const* const stringBase_80A008B1 = "PURSUIT_BEE"; -SECTION_DEAD static char const* const stringBase_80A008BD = "APPEAR_HAWKER"; -SECTION_DEAD static char const* const stringBase_80A008CB = "DIVE"; -SECTION_DEAD static char const* const stringBase_80A008D0 = "Hanjo"; -SECTION_DEAD static char const* const stringBase_80A008D6 = "Hanjo1"; -SECTION_DEAD static char const* const stringBase_80A008DD = "Hanjo2"; -SECTION_DEAD static char const* const stringBase_80A008E4 = "J_Tobi"; -SECTION_DEAD static char const* const stringBase_80A008EB = "Sera"; -SECTION_DEAD static char const* const stringBase_80A008F0 = "CONVERSATION_ABOUT_SARU"; -SECTION_DEAD static char const* const stringBase_80A00908 = "CONVERSATION"; -#pragma pop + /* 80A00940-80A0094C 000000 000C+00 3/3 0/0 0/0 .data cNullVec__6Z2Calc */ SECTION_DATA static u8 cNullVec__6Z2Calc[12] = { @@ -386,274 +370,200 @@ SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = { #pragma pop /* 80A00960-80A00980 000020 0020+00 1/1 0/0 0/0 .data l_bmdData */ -SECTION_DATA static u8 l_bmdData[32] = { - 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x04, +static int l_bmdData[4][2] = { + {14, 1}, {26, 2}, + {25, 2}, {3, 4}, }; /* 80A00980-80A009D8 -00001 0058+00 1/2 0/0 0/0 .data l_evtList */ -SECTION_DATA static void* l_evtList[22] = { - (void*)&d_a_npc_hanjo__stringBase0, - (void*)NULL, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0x1), - (void*)NULL, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xD), - (void*)0x00000005, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0x27), - (void*)0x00000005, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0x41), - (void*)0x00000002, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0x5F), - (void*)0x00000002, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0x7D), - (void*)0x00000002, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0x9B), - (void*)0x00000002, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xB9), - (void*)0x00000002, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xC5), - (void*)0x00000003, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xD3), - (void*)0x00000003, +SECTION_DATA static daNpcT_evtData_c l_evtList[11] = { + {"", 0}, + {"NO_RESPONSE", 0}, + {"CONVERSATION_ABOUT_SARU01", 5}, + {"CONVERSATION_ABOUT_SARU02", 5}, + {"CONVERSATION_ABOUT_HONEYCOMB1", 2}, + {"CONVERSATION_ABOUT_HONEYCOMB2", 2}, + {"CONVERSATION_ABOUT_HONEYCOMB3", 2}, + {"CONVERSATION_ABOUT_HONEYCOMB4", 2}, + {"PURSUIT_BEE", 2}, + {"APPEAR_HAWKER", 3}, + {"DIVE", 3}, }; + + /* 80A009D8-80A009F0 -00001 0018+00 3/4 0/0 0/0 .data l_resNameList */ -SECTION_DATA static void* l_resNameList[6] = { - (void*)&d_a_npc_hanjo__stringBase0, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xD8), - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xDE), - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xE5), - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xEC), - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xF3), +static char* l_resNameList[6] = { + "", + "Hanjo", + "Hanjo1", + "Hanjo2", + "J_Tobi", + "Sera", }; +/* ############################################################################################## */ +/* 80A007F8-80A007F8 0001F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +#pragma push +#pragma force_active on +SECTION_DEAD static char const* const stringBase_80A008F0 = "CONVERSATION_ABOUT_SARU"; +SECTION_DEAD static char const* const stringBase_80A00908 = "CONVERSATION"; +#pragma pop + /* 80A009F0-80A009F4 0000B0 0003+01 1/0 0/0 0/0 .data l_loadResPtrn0 */ -SECTION_DATA static u8 l_loadResPtrn0[3 + 1 /* padding */] = { - 0x01, - 0x02, - 0xFF, - /* padding */ - 0x00, +static s8 l_loadResPtrn0[3] = { + 1, + 2, + -1, }; /* 80A009F4-80A009FC 0000B4 0005+03 1/0 0/0 0/0 .data l_loadResPtrn1 */ -SECTION_DATA static u8 l_loadResPtrn1[5 + 3 /* padding */] = { - 0x01, - 0x02, - 0x03, - 0x04, - 0xFF, - /* padding */ - 0x00, - 0x00, - 0x00, +static s8 l_loadResPtrn1[5] = { + 1, + 2, + 3, + 4, + -1, }; /* 80A009FC-80A00A00 0000BC 0002+02 1/0 0/0 0/0 .data l_loadResPtrn2 */ -SECTION_DATA static u16 l_loadResPtrn2[1 + 1 /* padding */] = { - 0x01FF, - /* padding */ - 0x0000, +static s8 l_loadResPtrn2[2] = { + 1, -1 }; /* 80A00A00-80A00A08 0000C0 0005+03 1/0 0/0 0/0 .data l_loadResPtrn9 */ -SECTION_DATA static u8 l_loadResPtrn9[5 + 3 /* padding */] = { - 0x01, - 0x02, - 0x03, - 0x04, - 0xFF, - /* padding */ - 0x00, - 0x00, - 0x00, +static s8 l_loadResPtrn9[5] = { + 1, + 2, + 3, + 4, + -1, }; /* 80A00A08-80A00A1C -00001 0014+00 1/2 0/0 0/0 .data l_loadResPtrnList */ -SECTION_DATA static void* l_loadResPtrnList[5] = { - (void*)&l_loadResPtrn0, (void*)&l_loadResPtrn1, (void*)&l_loadResPtrn1, - (void*)&l_loadResPtrn2, (void*)&l_loadResPtrn9, +static s8* l_loadResPtrnList[5] = { + l_loadResPtrn0, l_loadResPtrn1, l_loadResPtrn1, + l_loadResPtrn2, l_loadResPtrn9, }; /* 80A00A1C-80A00B34 0000DC 0118+00 0/1 0/0 0/0 .data l_faceMotionAnmData */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_faceMotionAnmData[280] = { - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x25, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x24, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, +SECTION_DATA static daNpcT_faceMotionAnmData_c l_faceMotionAnmData[10] = { + {-1, 0, 0, 20, 2, 1, 1}, + {7, 0, 1, 20, 2, 1, 1}, + {7, 0, 2, 34, 0, 2, 0}, + {8, 2, 2, 35, 2, 2, 0}, + {10, 2, 2, 37, 2, 2, 0}, + {12, 2, 2, 39, 2, 2, 0}, + {5, 0, 3, 16, 0, 3, 0}, + {6, 2, 3, 17, 2, 3, 0}, + {9, 0, 2, 36, 0, 2, 0}, + { 11, 2, 2, 38, 2, 2, 0}, }; #pragma pop /* 80A00B34-80A00DB8 0001F4 0284+00 1/2 0/0 0/0 .data l_motionAnmData */ -SECTION_DATA static u8 l_motionAnmData[644] = { - 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0D, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, -}; +SECTION_DATA static int l_motionAnmData[161] = { + 11, 2, 1, 17, 0, 1, 65536, 22, 2, 2, 17, 0, 1, 65536, 16, 2, 2, 17, 0, 1, 65536, + 13, 2, 2, 17, 0, 1, 65536, 21, 2, 2, 31, 2, 2, 0, 20, 0, 2, 30, 0, 2, 0, + 14, 0, 2, 29, 0, 2, 0, 8, 2, 1, 17, 0, 1, 65536, 6, 0, 1, 17, 0, 1, 65536, + 17, 2, 2, 17, 0, 1, 65536, 18, 2, 2, 17, 0, 1, 65536, 19, 0, 2, 17, 0, 1, 65536, + 15, 0, 2, 17, 0, 1, 65536, 13, 2, 3, 17, 0, 1, 65536, 9, 2, 3, 17, 0, 1, 65536, + 12, 2, 3, 17, 0, 1, 65536, 7, 0, 3, 17, 0, 1, 65536, 8, 2, 3, 17, 0, 1, 65536, + 10, 0, 3, 17, 0, 1, 65536, 9, 0, 1, 17, 0, 1, 65536, 11, 0, 3, 17, 0, 1, 65536, + 10, 0, 1, 17, 0, 1, 65536, -1, 0, 0, 17, 0, 1, 65536}; /* 80A00DB8-80A00E38 000478 0080+00 0/1 0/0 0/0 .data l_faceMotionSequenceData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_faceMotionSequenceData[128] = { - 0x00, 0x01, 0xFF, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x02, 0xFF, 0x01, 0x00, 0x04, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x08, 0xFF, 0x01, 0x00, 0x09, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x09, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x06, 0xFF, 0x01, 0x00, 0x07, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x04, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x05, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, -}; -#pragma pop +static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_faceMotionSequenceData[32] = { + {1, -1, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {2, -1, 1}, {4, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {8, -1, 1}, {9, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {9, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {6, -1, 1}, {7, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {4, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {5, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}}; /* 80A00E38-80A00F78 0004F8 0140+00 0/1 0/0 0/0 .data l_motionSequenceData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_motionSequenceData[320] = { - 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x15, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x04, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0B, 0xFF, 0x01, 0x00, 0x09, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0C, 0xFF, 0x01, 0x00, 0x02, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x01, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x03, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0A, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x10, 0xFF, 0x01, 0x00, 0x11, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x12, 0xFF, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x14, 0x04, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0D, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0E, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0F, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x13, 0x04, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x06, 0xFF, 0x01, 0x00, 0x05, 0x00, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x06, 0xFF, 0x01, 0x00, 0x05, 0x00, 0x01, 0x00, 0x04, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x07, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x08, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x09, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, -}; -#pragma pop +static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_motionSequenceData[80] = { + {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {21, -1, 1}, {0, 0, 0}, {-1, 0, 0}, + {-1, 0, 0}, {4, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {11, -1, 1}, {9, 0, 0}, + {-1, 0, 0}, {-1, 0, 0}, {12, -1, 1}, {2, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {1, -1, 0}, + {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {3, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {10, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {16, -1, 1}, {17, 0, 0}, {-1, 0, 0}, + {-1, 0, 0}, {18, -1, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {20, 4, 1}, {-1, 0, 0}, + {-1, 0, 0}, {-1, 0, 0}, {13, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {14, -1, 0}, + {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {15, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {19, 4, 1}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {6, -1, 1}, {5, 0, 1}, {-1, 0, 0}, + {-1, 0, 0}, {6, -1, 1}, {5, 0, 1}, {4, 0, 0}, {-1, 0, 0}, {7, -1, 0}, {-1, 0, 0}, + {-1, 0, 0}, {-1, 0, 0}, {8, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {9, -1, 0}, + {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}}; /* 80A00F78-80A00F90 -00001 0018+00 1/1 0/0 0/0 .data mCutNameList__13daNpc_Hanjo_c */ -SECTION_DATA void* daNpc_Hanjo_c::mCutNameList[6] = { - (void*)&d_a_npc_hanjo__stringBase0, - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xF8), - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0x110), - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xB9), - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xC5), - (void*)(((char*)&d_a_npc_hanjo__stringBase0) + 0xD3), +SECTION_DATA char* daNpc_Hanjo_c::mCutNameList[6] = { + "", + "CONVERSATION_ABOUT_SARU", + "CONVERSATION", + "PURSUIT_BEE", + "APPEAR_HAWKER", + "DIVE", }; -/* 80A00F90-80A00F9C -00001 000C+00 0/1 0/0 0/0 .data @3854 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3854[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)cutConversationAboutSaru__13daNpc_Hanjo_cFi, -}; -#pragma pop +// /* 80A00F90-80A00F9C -00001 000C+00 0/1 0/0 0/0 .data @3854 */ +// #pragma push +// #pragma force_active on +// SECTION_DATA static void* lit_3854[3] = { +// (void*)NULL, +// (void*)0xFFFFFFFF, +// (void*)cutConversationAboutSaru__13daNpc_Hanjo_cFi, +// }; +// #pragma pop -/* 80A00F9C-80A00FA8 -00001 000C+00 0/1 0/0 0/0 .data @3855 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3855[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)cutConversation__13daNpc_Hanjo_cFi, -}; -#pragma pop +// /* 80A00F9C-80A00FA8 -00001 000C+00 0/1 0/0 0/0 .data @3855 */ +// #pragma push +// #pragma force_active on +// SECTION_DATA static void* lit_3855[3] = { +// (void*)NULL, +// (void*)0xFFFFFFFF, +// (void*)cutConversation__13daNpc_Hanjo_cFi, +// }; +// #pragma pop -/* 80A00FA8-80A00FB4 -00001 000C+00 0/1 0/0 0/0 .data @3856 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3856[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)cutPursuitBee__13daNpc_Hanjo_cFi, -}; -#pragma pop +// /* 80A00FA8-80A00FB4 -00001 000C+00 0/1 0/0 0/0 .data @3856 */ +// #pragma push +// #pragma force_active on +// SECTION_DATA static void* lit_3856[3] = { +// (void*)NULL, +// (void*)0xFFFFFFFF, +// (void*)cutPursuitBee__13daNpc_Hanjo_cFi, +// }; +// #pragma pop -/* 80A00FB4-80A00FC0 -00001 000C+00 0/1 0/0 0/0 .data @3857 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3857[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)cutAppearHawker__13daNpc_Hanjo_cFi, -}; -#pragma pop +// /* 80A00FB4-80A00FC0 -00001 000C+00 0/1 0/0 0/0 .data @3857 */ +// #pragma push +// #pragma force_active on +// SECTION_DATA static void* lit_3857[3] = { +// (void*)NULL, +// (void*)0xFFFFFFFF, +// (void*)cutAppearHawker__13daNpc_Hanjo_cFi, +// }; +// #pragma pop -/* 80A00FC0-80A00FCC -00001 000C+00 0/1 0/0 0/0 .data @3858 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3858[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)cutDive__13daNpc_Hanjo_cFi, -}; -#pragma pop +// /* 80A00FC0-80A00FCC -00001 000C+00 0/1 0/0 0/0 .data @3858 */ +// #pragma push +// #pragma force_active on +// SECTION_DATA static void* lit_3858[3] = { +// (void*)NULL, +// (void*)0xFFFFFFFF, +// (void*)cutDive__13daNpc_Hanjo_cFi, +// }; +// #pragma pop /* 80A00FCC-80A01014 00068C 0048+00 1/2 0/0 0/0 .data mCutList__13daNpc_Hanjo_c */ -SECTION_DATA u8 daNpc_Hanjo_c::mCutList[72] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +daNpc_Hanjo_c::cutFunc daNpc_Hanjo_c::mCutList[6] = { + &daNpc_Hanjo_c::cutConversationAboutSaru, + &daNpc_Hanjo_c::cutConversation, + &daNpc_Hanjo_c::cutPursuitBee, + &daNpc_Hanjo_c::cutAppearHawker, + &daNpc_Hanjo_c::cutDive, + NULL, }; /* 80A01014-80A01054 0006D4 0040+00 0/1 0/0 0/0 .data mStoneCcDSph__13daNpc_Hanjo_c */ @@ -667,584 +577,707 @@ SECTION_DATA u8 daNpc_Hanjo_c::mStoneCcDSph[64] = { }; #pragma pop -/* 80A01054-80A01060 -00001 000C+00 1/1 0/0 0/0 .data @4803 */ -SECTION_DATA static void* lit_4803[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)talk__13daNpc_Hanjo_cFPv, -}; -/* 80A01060-80A0106C -00001 000C+00 1/1 0/0 0/0 .data @4891 */ -SECTION_DATA static void* lit_4891[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)talk__13daNpc_Hanjo_cFPv, -}; +// /* 80A010F8-80A01104 0007B8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ +// SECTION_DATA extern void* __vt__11J3DTexNoAnm[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)calc__11J3DTexNoAnmCFPUs, +// }; -/* 80A0106C-80A01078 -00001 000C+00 1/1 0/0 0/0 .data @4896 */ -SECTION_DATA static void* lit_4896[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)talk__13daNpc_Hanjo_cFPv, -}; +// /* 80A01104-80A01110 0007C4 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGSph */ +// SECTION_DATA extern void* __vt__8cM3dGSph[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__8cM3dGSphFv, +// }; -/* 80A01078-80A01084 -00001 000C+00 0/1 0/0 0/0 .data @5512 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5512[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)wait__13daNpc_Hanjo_cFPv, -}; -#pragma pop +// /* 80A01110-80A0111C 0007D0 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ +// SECTION_DATA extern void* __vt__12J3DFrameCtrl[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__12J3DFrameCtrlFv, +// }; -/* 80A01084-80A01090 -00001 000C+00 0/1 0/0 0/0 .data @5519 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5519[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)throwStone__13daNpc_Hanjo_cFPv, -}; -#pragma pop +// /* 80A0111C-80A01140 0007DC 0024+00 3/3 0/0 0/0 .data __vt__12dBgS_ObjAcch */ +// SECTION_DATA extern void* __vt__12dBgS_ObjAcch[9] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__12dBgS_ObjAcchFv, +// (void*)NULL, +// (void*)NULL, +// (void*)func_80A00584, +// (void*)NULL, +// (void*)NULL, +// (void*)func_80A0057C, +// }; -/* 80A01090-80A0109C -00001 000C+00 0/1 0/0 0/0 .data @5521 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5521[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)takayose__13daNpc_Hanjo_cFPv, -}; -#pragma pop +// /* 80A01140-80A0114C 000800 000C+00 2/2 0/0 0/0 .data __vt__12dBgS_AcchCir */ +// SECTION_DATA extern void* __vt__12dBgS_AcchCir[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__12dBgS_AcchCirFv, +// }; -/* 80A0109C-80A010A8 -00001 000C+00 0/1 0/0 0/0 .data @5523 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5523[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)wait__13daNpc_Hanjo_cFPv, -}; -#pragma pop +// /* 80A0114C-80A01158 00080C 000C+00 3/3 0/0 0/0 .data __vt__10cCcD_GStts */ +// SECTION_DATA extern void* __vt__10cCcD_GStts[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__10cCcD_GSttsFv, +// }; -/* 80A010A8-80A010C8 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Hanjo_MethodTable */ -static actor_method_class daNpc_Hanjo_MethodTable = { - (process_method_func)daNpc_Hanjo_Create__FPv, - (process_method_func)daNpc_Hanjo_Delete__FPv, - (process_method_func)daNpc_Hanjo_Execute__FPv, - (process_method_func)daNpc_Hanjo_IsDelete__FPv, - (process_method_func)daNpc_Hanjo_Draw__FPv, -}; +// /* 80A01158-80A01164 000818 000C+00 2/2 0/0 0/0 .data __vt__10dCcD_GStts */ +// SECTION_DATA extern void* __vt__10dCcD_GStts[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__10dCcD_GSttsFv, +// }; -/* 80A010C8-80A010F8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_HANJO */ -extern actor_process_profile_definition g_profile_NPC_HANJO = { - fpcLy_CURRENT_e, // mLayerID - 7, // mListID - fpcPi_CURRENT_e, // mListPrio - PROC_NPC_HANJO, // mProcName - &g_fpcLf_Method.mBase, // sub_method - sizeof(daNpc_Hanjo_c), // mSize - 0, // mSizeOther - 0, // mParameters - &g_fopAc_Method.base, // sub_method - 341, // mPriority - &daNpc_Hanjo_MethodTable, // sub_method - 0x00040107, // mStatus - fopAc_NPC_e, // mActorType - fopAc_CULLBOX_CUSTOM_e, // cullType -}; +// /* 80A01164-80A01170 000824 000C+00 3/3 0/0 0/0 .data __vt__22daNpcT_MotionSeqMngr_c */ +// SECTION_DATA extern void* __vt__22daNpcT_MotionSeqMngr_c[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__22daNpcT_MotionSeqMngr_cFv, +// }; -/* 80A010F8-80A01104 0007B8 000C+00 2/2 0/0 0/0 .data __vt__11J3DTexNoAnm */ -SECTION_DATA extern void* __vt__11J3DTexNoAnm[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)calc__11J3DTexNoAnmCFPUs, -}; +// /* 80A01170-80A0117C 000830 000C+00 5/5 0/0 0/0 .data __vt__18daNpcT_ActorMngr_c */ +// SECTION_DATA extern void* __vt__18daNpcT_ActorMngr_c[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__18daNpcT_ActorMngr_cFv, +// }; -/* 80A01104-80A01110 0007C4 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGSph */ -SECTION_DATA extern void* __vt__8cM3dGSph[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGSphFv, -}; +// /* 80A0117C-80A01188 00083C 000C+00 3/3 0/0 0/0 .data __vt__15daNpcT_JntAnm_c */ +// SECTION_DATA extern void* __vt__15daNpcT_JntAnm_c[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__15daNpcT_JntAnm_cFv, +// }; -/* 80A01110-80A0111C 0007D0 000C+00 3/3 0/0 0/0 .data __vt__12J3DFrameCtrl */ -SECTION_DATA extern void* __vt__12J3DFrameCtrl[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__12J3DFrameCtrlFv, -}; +// /* 80A01188-80A01194 000848 000C+00 5/5 0/0 0/0 .data __vt__8cM3dGAab */ +// SECTION_DATA extern void* __vt__8cM3dGAab[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__8cM3dGAabFv, +// }; -/* 80A0111C-80A01140 0007DC 0024+00 3/3 0/0 0/0 .data __vt__12dBgS_ObjAcch */ -SECTION_DATA extern void* __vt__12dBgS_ObjAcch[9] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__12dBgS_ObjAcchFv, - (void*)NULL, - (void*)NULL, - (void*)func_80A00584, - (void*)NULL, - (void*)NULL, - (void*)func_80A0057C, -}; +// /* 80A01194-80A011A0 000854 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGCyl */ +// SECTION_DATA extern void* __vt__8cM3dGCyl[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__8cM3dGCylFv, +// }; -/* 80A01140-80A0114C 000800 000C+00 2/2 0/0 0/0 .data __vt__12dBgS_AcchCir */ -SECTION_DATA extern void* __vt__12dBgS_AcchCir[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__12dBgS_AcchCirFv, -}; +// /* 80A011A0-80A011AC 000860 000C+00 3/3 0/0 0/0 .data __vt__13daNpcT_Path_c */ +// SECTION_DATA extern void* __vt__13daNpcT_Path_c[3] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__13daNpcT_Path_cFv, +// }; -/* 80A0114C-80A01158 00080C 000C+00 3/3 0/0 0/0 .data __vt__10cCcD_GStts */ -SECTION_DATA extern void* __vt__10cCcD_GStts[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__10cCcD_GSttsFv, -}; - -/* 80A01158-80A01164 000818 000C+00 2/2 0/0 0/0 .data __vt__10dCcD_GStts */ -SECTION_DATA extern void* __vt__10dCcD_GStts[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__10dCcD_GSttsFv, -}; - -/* 80A01164-80A01170 000824 000C+00 3/3 0/0 0/0 .data __vt__22daNpcT_MotionSeqMngr_c */ -SECTION_DATA extern void* __vt__22daNpcT_MotionSeqMngr_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__22daNpcT_MotionSeqMngr_cFv, -}; - -/* 80A01170-80A0117C 000830 000C+00 5/5 0/0 0/0 .data __vt__18daNpcT_ActorMngr_c */ -SECTION_DATA extern void* __vt__18daNpcT_ActorMngr_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__18daNpcT_ActorMngr_cFv, -}; - -/* 80A0117C-80A01188 00083C 000C+00 3/3 0/0 0/0 .data __vt__15daNpcT_JntAnm_c */ -SECTION_DATA extern void* __vt__15daNpcT_JntAnm_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__15daNpcT_JntAnm_cFv, -}; - -/* 80A01188-80A01194 000848 000C+00 5/5 0/0 0/0 .data __vt__8cM3dGAab */ -SECTION_DATA extern void* __vt__8cM3dGAab[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGAabFv, -}; - -/* 80A01194-80A011A0 000854 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGCyl */ -SECTION_DATA extern void* __vt__8cM3dGCyl[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGCylFv, -}; - -/* 80A011A0-80A011AC 000860 000C+00 3/3 0/0 0/0 .data __vt__13daNpcT_Path_c */ -SECTION_DATA extern void* __vt__13daNpcT_Path_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__13daNpcT_Path_cFv, -}; - -/* 80A011AC-80A01270 00086C 00C4+00 2/2 0/0 0/0 .data __vt__13daNpc_Hanjo_c */ -SECTION_DATA extern void* __vt__13daNpc_Hanjo_c[49] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__13daNpc_Hanjo_cFv, - (void*)ctrlBtk__8daNpcT_cFv, - (void*)ctrlSubFaceMotion__8daNpcT_cFi, - (void*)checkChangeJoint__13daNpc_Hanjo_cFi, - (void*)checkRemoveJoint__13daNpc_Hanjo_cFi, - (void*)getBackboneJointNo__13daNpc_Hanjo_cFv, - (void*)getNeckJointNo__13daNpc_Hanjo_cFv, - (void*)getHeadJointNo__13daNpc_Hanjo_cFv, - (void*)getFootLJointNo__13daNpc_Hanjo_cFv, - (void*)getFootRJointNo__13daNpc_Hanjo_cFv, - (void*)getEyeballLMaterialNo__8daNpcT_cFv, - (void*)getEyeballRMaterialNo__8daNpcT_cFv, - (void*)getEyeballMaterialNo__13daNpc_Hanjo_cFv, - (void*)ctrlJoint__8daNpcT_cFP8J3DJointP8J3DModel, - (void*)afterJntAnm__13daNpc_Hanjo_cFi, - (void*)setParam__13daNpc_Hanjo_cFv, - (void*)checkChangeEvt__13daNpc_Hanjo_cFv, - (void*)evtTalk__13daNpc_Hanjo_cFv, - (void*)evtEndProc__8daNpcT_cFv, - (void*)evtCutProc__13daNpc_Hanjo_cFv, - (void*)setAfterTalkMotion__13daNpc_Hanjo_cFv, - (void*)evtProc__8daNpcT_cFv, - (void*)action__13daNpc_Hanjo_cFv, - (void*)beforeMove__13daNpc_Hanjo_cFv, - (void*)afterMoved__13daNpc_Hanjo_cFv, - (void*)setAttnPos__13daNpc_Hanjo_cFv, - (void*)setFootPos__8daNpcT_cFv, - (void*)setCollision__13daNpc_Hanjo_cFv, - (void*)setFootPrtcl__8daNpcT_cFP4cXyzff, - (void*)checkCullDraw__8daNpcT_cFv, - (void*)twilight__8daNpcT_cFv, - (void*)chkXYItems__8daNpcT_cFv, - (void*)evtOrder__8daNpcT_cFv, - (void*)decTmr__8daNpcT_cFv, - (void*)clrParam__8daNpcT_cFv, - (void*)drawDbgInfo__13daNpc_Hanjo_cFv, - (void*)drawOtherMdl__13daNpc_Hanjo_cFv, - (void*)drawGhost__8daNpcT_cFv, - (void*)afterSetFaceMotionAnm__8daNpcT_cFiifi, - (void*)afterSetMotionAnm__8daNpcT_cFiifi, - (void*)getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c, - (void*)getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c, - (void*)changeAnm__8daNpcT_cFPiPi, - (void*)changeBck__8daNpcT_cFPiPi, - (void*)changeBtp__8daNpcT_cFPiPi, - (void*)changeBtk__8daNpcT_cFPiPi, - (void*)setMotionAnm__8daNpcT_cFifi, -}; +// /* 80A011AC-80A01270 00086C 00C4+00 2/2 0/0 0/0 .data __vt__13daNpc_Hanjo_c */ +// SECTION_DATA extern void* __vt__13daNpc_Hanjo_c[49] = { +// (void*)NULL /* RTTI */, +// (void*)NULL, +// (void*)__dt__13daNpc_Hanjo_cFv, +// (void*)ctrlBtk__8daNpcT_cFv, +// (void*)ctrlSubFaceMotion__8daNpcT_cFi, +// (void*)checkChangeJoint__13daNpc_Hanjo_cFi, +// (void*)checkRemoveJoint__13daNpc_Hanjo_cFi, +// (void*)getBackboneJointNo__13daNpc_Hanjo_cFv, +// (void*)getNeckJointNo__13daNpc_Hanjo_cFv, +// (void*)getHeadJointNo__13daNpc_Hanjo_cFv, +// (void*)getFootLJointNo__13daNpc_Hanjo_cFv, +// (void*)getFootRJointNo__13daNpc_Hanjo_cFv, +// (void*)getEyeballLMaterialNo__8daNpcT_cFv, +// (void*)getEyeballRMaterialNo__8daNpcT_cFv, +// (void*)getEyeballMaterialNo__13daNpc_Hanjo_cFv, +// (void*)ctrlJoint__8daNpcT_cFP8J3DJointP8J3DModel, +// (void*)afterJntAnm__13daNpc_Hanjo_cFi, +// (void*)setParam__13daNpc_Hanjo_cFv, +// (void*)checkChangeEvt__13daNpc_Hanjo_cFv, +// (void*)evtTalk__13daNpc_Hanjo_cFv, +// (void*)evtEndProc__8daNpcT_cFv, +// (void*)evtCutProc__13daNpc_Hanjo_cFv, +// (void*)setAfterTalkMotion__13daNpc_Hanjo_cFv, +// (void*)evtProc__8daNpcT_cFv, +// (void*)action__13daNpc_Hanjo_cFv, +// (void*)beforeMove__13daNpc_Hanjo_cFv, +// (void*)afterMoved__13daNpc_Hanjo_cFv, +// (void*)setAttnPos__13daNpc_Hanjo_cFv, +// (void*)setFootPos__8daNpcT_cFv, +// (void*)setCollision__13daNpc_Hanjo_cFv, +// (void*)setFootPrtcl__8daNpcT_cFP4cXyzff, +// (void*)checkCullDraw__8daNpcT_cFv, +// (void*)twilight__8daNpcT_cFv, +// (void*)chkXYItems__8daNpcT_cFv, +// (void*)evtOrder__8daNpcT_cFv, +// (void*)decTmr__8daNpcT_cFv, +// (void*)clrParam__8daNpcT_cFv, +// (void*)drawDbgInfo__13daNpc_Hanjo_cFv, +// (void*)drawOtherMdl__13daNpc_Hanjo_cFv, +// (void*)drawGhost__8daNpcT_cFv, +// (void*)afterSetFaceMotionAnm__8daNpcT_cFiifi, +// (void*)afterSetMotionAnm__8daNpcT_cFiifi, +// (void*)getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c, +// (void*)getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c, +// (void*)changeAnm__8daNpcT_cFPiPi, +// (void*)changeBck__8daNpcT_cFPiPi, +// (void*)changeBtp__8daNpcT_cFPiPi, +// (void*)changeBtk__8daNpcT_cFPiPi, +// (void*)setMotionAnm__8daNpcT_cFifi, +// }; /* 809F908C-809F9278 0000EC 01EC+00 1/0 0/0 0/0 .text __dt__13daNpc_Hanjo_cFv */ daNpc_Hanjo_c::~daNpc_Hanjo_c() { - // NONMATCHING + OS_REPORT("|%06d:%x|daNpc_Hanjo_c -> デストラクト\n", g_Counter, this); + if (mpMorf[0] != 0) { + mpMorf[0]->stopZelAnime(); + } + deleteRes(l_loadResPtrnList[mType], (char const**)l_resNameList); } /* ############################################################################################## */ /* 80A00600-80A006B4 000000 00B4+00 19/19 0/0 0/0 .rodata m__19daNpc_Hanjo_Param_c */ -SECTION_RODATA u8 const daNpc_Hanjo_Param_c::m[180] = { - 0x43, 0x20, 0x00, 0x00, 0xC0, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x43, 0xC8, 0x00, - 0x00, 0x43, 0x7F, 0x00, 0x00, 0x43, 0x20, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x41, 0xF0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0xC1, - 0x20, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0xC1, 0x20, 0x00, 0x00, 0x42, 0x34, 0x00, 0x00, - 0xC2, 0x34, 0x00, 0x00, 0x3F, 0x19, 0x99, 0x9A, 0x41, 0x40, 0x00, 0x00, 0x00, 0x03, 0x00, - 0x06, 0x00, 0x05, 0x00, 0x06, 0x42, 0xDC, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, 0x43, 0x96, - 0x00, 0x00, 0xC3, 0x96, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xC0, 0x00, 0x00, 0x41, 0x80, 0x00, 0x00, 0x40, 0x80, - 0x00, 0x00, 0x42, 0xA0, 0x00, 0x00, 0x42, 0x82, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x44, - 0x16, 0x00, 0x00, 0x43, 0x08, 0x00, 0x00, 0x05, 0x00, 0x00, 0x5A, 0x00, 0x5A, 0x00, 0x02, +daNpc_Hanjo_Param_c::Data const daNpc_Hanjo_Param_c::m = { + 160.0f, -3.0f, 1.0f, 400.0f, + 255.0f, 160.0f, 35.0f, 30.0f, 0.0f, 0.0f, 10.0f, -10.0f, 30.0f, -10.0f, 45.0f, + -45.0f, 0.6f, 12.0f, 3, 6, 5, 6, 110.0f, 500.0f, 300.0f, -300.0f, 60, 8, 0, 0, + 4.0f, 0.0f, 0.0f, + 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 24.0f, 16.0f, 4.0f, + 80.0f, 65.0f, 4.0f, 600.0f, 136.0f, 0x500, 90, 90, 2, }; -COMPILER_STRIP_GATE(0x80A00600, &daNpc_Hanjo_Param_c::m); /* 80A006B4-80A006E4 0000B4 0030+00 1/1 0/0 0/0 .rodata mStoneCcDObjInfo__13daNpc_Hanjo_c */ -SECTION_RODATA u8 const daNpc_Hanjo_c::mStoneCcDObjInfo[48] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +dCcD_SrcGObjInf const daNpc_Hanjo_c::mStoneCcDObjInfo = { + {0, {{0, 0, 0}, {0, 0}, {0x79}}}, + {0, 0, 0, 0, {0}}, + {0, 0, 0, 0, {0}}, + {{0}}, }; -COMPILER_STRIP_GATE(0x80A006B4, &daNpc_Hanjo_c::mStoneCcDObjInfo); /* 80A006E4-80A006F8 0000E4 0014+00 0/1 0/0 0/0 .rodata heapSize$4058 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const heapSize[20] = { - 0x00, 0x00, 0x61, 0xB0, 0x00, 0x00, 0x41, 0xD0, 0x00, 0x00, - 0x39, 0xD0, 0x00, 0x00, 0x39, 0xC0, 0x00, 0x00, 0x00, 0x00, +static int const heapSize[5] = { + 0x61B0, 0x41D0, 0x39D0, 0x39C0, 0, }; -COMPILER_STRIP_GATE(0x80A006E4, &heapSize); -#pragma pop - -/* 80A006F8-80A006FC 0000F8 0004+00 0/1 0/0 0/0 .rodata @4140 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4140 = 60.0f; -COMPILER_STRIP_GATE(0x80A006F8, &lit_4140); -#pragma pop - -/* 80A006FC-80A00700 0000FC 0004+00 10/26 0/0 0/0 .rodata @4141 */ -SECTION_RODATA static u8 const lit_4141[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x80A006FC, &lit_4141); - -/* 80A00700-80A00704 000100 0004+00 0/1 0/0 0/0 .rodata @4142 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4142 = -1000000000.0f; -COMPILER_STRIP_GATE(0x80A00700, &lit_4142); -#pragma pop /* 809F9278-809F9578 0002D8 0300+00 1/1 0/0 0/0 .text create__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::create() { - // NONMATCHING +int daNpc_Hanjo_c::create() { + fopAcM_SetupActor2(this, daNpc_Hanjo_c, l_faceMotionAnmData, + (daNpcT_motionAnmData_c*)l_motionAnmData, l_faceMotionSequenceData, 4, + l_motionSequenceData, 4, l_evtList, l_resNameList); + mType = getType(); + field_0xa7c = getFlowNodeNo(); + field_0xa89 = 0; + int rv = loadRes(l_loadResPtrnList[mType], (const char**)l_resNameList); + if (rv == cPhs_COMPLEATE_e) { + OS_REPORT("\t(%s:%d) flowNo:%d, PathID:%02x<%08x> ", fopAcM_getProcNameString(this), (uint)mType, + field_0xa7c, getPathID(), fopAcM_GetParam(this)); + if (isDelete()) { + return cPhs_ERROR_e; + } + OS_REPORT("\n"); + if (!fopAcM_entrySolidHeap(this, createHeapCallBack, heapSize[mType])) { + OS_REPORT("===>isDelete:TRUE\n"); + return cPhs_ERROR_e; + } + J3DModelData* modelData = mpMorf[0]->getModel()->getModelData(); + fopAcM_SetMtx(this, mpMorf[0]->getModel()->getBaseTRMtx()); + fopAcM_setCullSizeBox2(this, modelData); + field_0x580.init(¤t.pos, &eyePos, 3, 1); + field_0x9c0.init(&field_0x68c, 60.0f, 0.0f); + reset(); + field_0x68c.Set(fopAcM_GetPosition_p(this), fopAcM_GetOldPosition_p(this), this, 1, + &field_0x8a0, fopAcM_GetSpeed_p(this), fopAcM_GetAngle_p(this), + fopAcM_GetShapeAngle_p(this)); + field_0x864.Init(daNpc_Hanjo_Param_c::m.field_0x10, 0, this); + mCyl1.Set(mCcDCyl); + mCyl1.SetStts(&field_0x864); + mCyl1.SetTgHitCallback(tgHitCallBack); + mCyl2.Set(mCcDCyl); + mCyl2.SetStts(&field_0x864); + field_0x68c.CrrPos(dComIfG_Bgsp()); + field_0x930 = field_0x68c.m_gnd; + field_0xdf4 = field_0x68c.GetGroundH(); + if (field_0xdf4 != -1e9f) { + setEnvTevColor(); + setRoomNo(); + } + for (int i = 0; i < 4; i ++) { + mStones[i].getSphP()->Set(*(dCcD_SrcSph*)&mStoneCcDSph); + mStones[i].getSphP()->SetStts(&field_0x864); + } + field_0xa88 = 1; + Execute(); + field_0xa88 = 0; + } + return rv; } -/* ############################################################################################## */ -/* 80A00704-80A00708 000104 0004+00 3/5 0/0 0/0 .rodata @4212 */ -SECTION_RODATA static f32 const lit_4212 = -3.0f; -COMPILER_STRIP_GATE(0x80A00704, &lit_4212); - -/* 80A00708-80A0070C 000108 0004+00 0/2 0/0 0/0 .rodata @4384 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4384 = 65536.0f; -COMPILER_STRIP_GATE(0x80A00708, &lit_4384); -#pragma pop - -/* 80A0070C-80A00710 00010C 0004+00 0/3 0/0 0/0 .rodata @4385 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4385 = 1.0f / 5.0f; -COMPILER_STRIP_GATE(0x80A0070C, &lit_4385); -#pragma pop - /* 80A00710-80A00718 000110 0008+00 0/1 0/0 0/0 .rodata bmdTypeList$4495 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const bmdTypeList[8] = { - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, +static int const bmdTypeList[2] = { + 2, 3, }; COMPILER_STRIP_GATE(0x80A00710, &bmdTypeList); -#pragma pop -/* 80A00718-80A0071C 000118 0004+00 1/9 0/0 0/0 .rodata @4593 */ -SECTION_RODATA static f32 const lit_4593 = 1.0f; -COMPILER_STRIP_GATE(0x80A00718, &lit_4593); +// /* 80A00718-80A0071C 000118 0004+00 1/9 0/0 0/0 .rodata @4593 */ +// SECTION_RODATA static f32 const lit_4593 = 1.0f; +// COMPILER_STRIP_GATE(0x80A00718, &lit_4593); /* 809F9578-809F997C 0005D8 0404+00 1/1 0/0 0/0 .text CreateHeap__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::CreateHeap() { - // NONMATCHING -} - -/* 809F997C-809F99B8 0009DC 003C+00 1/1 0/0 0/0 .text __dt__15J3DTevKColorAnmFv */ -// J3DTevKColorAnm::~J3DTevKColorAnm() { -extern "C" void __dt__15J3DTevKColorAnmFv() { - // NONMATCHING -} - -/* 809F99B8-809F99D0 000A18 0018+00 1/1 0/0 0/0 .text __ct__15J3DTevKColorAnmFv */ -// J3DTevKColorAnm::J3DTevKColorAnm() { -extern "C" void __ct__15J3DTevKColorAnmFv() { - // NONMATCHING -} - -/* 809F99D0-809F9A0C 000A30 003C+00 1/1 0/0 0/0 .text __dt__14J3DTevColorAnmFv */ -// J3DTevColorAnm::~J3DTevColorAnm() { -extern "C" void __dt__14J3DTevColorAnmFv() { - // NONMATCHING -} - -/* 809F9A0C-809F9A24 000A6C 0018+00 1/1 0/0 0/0 .text __ct__14J3DTevColorAnmFv */ -// J3DTevColorAnm::J3DTevColorAnm() { -extern "C" void __ct__14J3DTevColorAnmFv() { - // NONMATCHING -} - -/* 809F9A24-809F9A6C 000A84 0048+00 1/1 0/0 0/0 .text __dt__11J3DTexNoAnmFv */ -// J3DTexNoAnm::~J3DTexNoAnm() { -extern "C" void __dt__11J3DTexNoAnmFv() { - // NONMATCHING -} - -/* 809F9A6C-809F9A90 000ACC 0024+00 1/1 0/0 0/0 .text __ct__11J3DTexNoAnmFv */ -// J3DTexNoAnm::J3DTexNoAnm() { -extern "C" void __ct__11J3DTexNoAnmFv() { - // NONMATCHING -} - -/* 809F9A90-809F9ACC 000AF0 003C+00 1/1 0/0 0/0 .text __dt__12J3DTexMtxAnmFv */ -// J3DTexMtxAnm::~J3DTexMtxAnm() { -extern "C" void __dt__12J3DTexMtxAnmFv() { - // NONMATCHING -} - -/* 809F9ACC-809F9AE4 000B2C 0018+00 1/1 0/0 0/0 .text __ct__12J3DTexMtxAnmFv */ -// J3DTexMtxAnm::J3DTexMtxAnm() { -extern "C" void __ct__12J3DTexMtxAnmFv() { - // NONMATCHING -} - -/* 809F9AE4-809F9B20 000B44 003C+00 1/1 0/0 0/0 .text __dt__14J3DMatColorAnmFv */ -// J3DMatColorAnm::~J3DMatColorAnm() { -extern "C" void __dt__14J3DMatColorAnmFv() { - // NONMATCHING -} - -/* 809F9B20-809F9B38 000B80 0018+00 1/1 0/0 0/0 .text __ct__14J3DMatColorAnmFv */ -// J3DMatColorAnm::J3DMatColorAnm() { -extern "C" void __ct__14J3DMatColorAnmFv() { - // NONMATCHING +int daNpc_Hanjo_c::CreateHeap() { + J3DModelData* modelData = static_cast(dComIfG_getObjectRes( + l_resNameList[l_bmdData[0][1]], l_bmdData[0][0])); + if (modelData == NULL) { + return 0; + } + mpMorf[0] = new mDoExt_McaMorfSO(modelData, NULL, NULL, NULL, -1, 1.0f, 0, -1, &field_0x580, + 0x80000, 0x11020284); + if (mpMorf[0] == NULL || mpMorf[0]->getModel() == NULL) { + return 0; + } + J3DModel* model = mpMorf[0]->getModel(); + for (u16 i = 0; i < modelData->getJointNum(); i++) { + modelData->getJointNodePointer(i)->setCallBack(ctrlJointCallBack); + } + model->setUserArea((u32)this); + field_0x96c = new daNpcT_MatAnm_c(); + if (field_0x96c == NULL) { + return 0; + } + switch (mType) { + case TYPE_0: + for (int i = 0; i < 1; i++) { + if (l_bmdData[bmdTypeList[i]][0] >= 0) { + modelData = (J3DModelData*)dComIfG_getObjectRes(l_resNameList[l_bmdData[bmdTypeList[i]][1]], + l_bmdData[bmdTypeList[i]][0]); + } else { + modelData = 0; + } + if (modelData != NULL) { + mModel1 = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); + } else { + mModel1 = NULL; + } + } + for (int i = 0; i < 4; i++) { + if (l_bmdData[bmdTypeList[1]][0] >= 0) { + modelData = (J3DModelData*)dComIfG_getObjectRes(l_resNameList[l_bmdData[1][1]], l_bmdData[1][0]); + } else { + modelData = NULL; + } + if (modelData != NULL) { + model = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); + } else { + model = NULL; + } + mStones[i].setModel(model); + } + break; + case TYPE_1: + for (int i = 1; i < 2; i++) { + if (l_bmdData[bmdTypeList[i]][0] >= 0) { + modelData = (J3DModelData*)dComIfG_getObjectRes(l_resNameList[l_bmdData[bmdTypeList[i]][1]], + l_bmdData[bmdTypeList[i]][0]); + } else { + modelData = NULL; + } + if (modelData != NULL) { + mModel2 = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084); + } else { + mModel2 = NULL; + } + } + break; + } + + if (setFaceMotionAnm(1, false) && setMotionAnm(0, 0.0f, 0)) + { + return 1; + } + return 0; } /* 809F9B38-809F9B6C 000B98 0034+00 1/1 0/0 0/0 .text Delete__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::Delete() { - // NONMATCHING +int daNpc_Hanjo_c::Delete() { + OS_REPORT("|%06d:%x|daNpc_Hanjo_c -> Delete\n", g_Counter, this); + fopAcM_GetID(this); + this->~daNpc_Hanjo_c(); + return 1; } /* 809F9B6C-809F9B8C 000BCC 0020+00 2/2 0/0 0/0 .text Execute__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::Execute() { - // NONMATCHING +int daNpc_Hanjo_c::Execute() { + return daNpcT_c::execute(); } -/* ############################################################################################## */ -/* 80A0071C-80A00720 00011C 0004+00 1/1 0/0 0/0 .rodata @4642 */ -SECTION_RODATA static f32 const lit_4642 = 100.0f; -COMPILER_STRIP_GATE(0x80A0071C, &lit_4642); - /* 809F9B8C-809F9C20 000BEC 0094+00 1/1 0/0 0/0 .text Draw__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::Draw() { - // NONMATCHING +int daNpc_Hanjo_c::Draw() { + if (field_0x96c != NULL) { + J3DModelData* modelData = mpMorf[0]->getModel()->getModelData(); + modelData->getMaterialNodePointer(getEyeballMaterialNo())->setMaterialAnm(field_0x96c); + } + return daNpcT_c::draw(0, 0, field_0xde8, NULL, 100.0f, 0, 0, 0); } /* 809F9C20-809F9C40 000C80 0020+00 1/1 0/0 0/0 .text * createHeapCallBack__13daNpc_Hanjo_cFP10fopAc_ac_c */ -void daNpc_Hanjo_c::createHeapCallBack(fopAc_ac_c* param_0) { - // NONMATCHING +int daNpc_Hanjo_c::createHeapCallBack(fopAc_ac_c* i_this) { + return static_cast(i_this)->CreateHeap(); } /* 809F9C40-809F9C98 000CA0 0058+00 1/1 0/0 0/0 .text * ctrlJointCallBack__13daNpc_Hanjo_cFP8J3DJointi */ -void daNpc_Hanjo_c::ctrlJointCallBack(J3DJoint* param_0, int param_1) { - // NONMATCHING +int daNpc_Hanjo_c::ctrlJointCallBack(J3DJoint* param_1, int param_2) { + if (param_2 == 0) { + J3DModel* model = j3dSys.getModel(); + daNpc_Hanjo_c* i_this = reinterpret_cast(model->getUserArea()); + if (i_this != 0) { + i_this->ctrlJoint(param_1, model); + } + } + return 1; } /* 809F9C98-809F9CF0 000CF8 0058+00 1/1 0/0 2/2 .text getType__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::getType() { - // NONMATCHING +u8 daNpc_Hanjo_c::getType() { + switch ((u8)fopAcM_GetParam(this)) { + case 0: + return TYPE_0; + case 1: + return TYPE_1; + case 2: + return TYPE_2; + case 3: + return TYPE_3; + default: + return TYPE_4; + } } /* 809F9CF0-809F9D9C 000D50 00AC+00 1/1 0/0 0/0 .text isDelete__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::isDelete() { - // NONMATCHING +int daNpc_Hanjo_c::isDelete() { + switch (mType) { + case TYPE_0: + return FALSE; + case TYPE_1: { + bool rv = true; + if (!daNpcT_chkEvtBit(0xd0) && !dComIfGs_isCollectShield(0)) { + rv = false; + } + return rv; + } + case TYPE_2: + return FALSE; + case TYPE_3: + return FALSE; + default: + return FALSE; + } } /* 809F9D9C-809F9FCC 000DFC 0230+00 1/1 0/0 0/0 .text reset__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::reset() { - // NONMATCHING + csXyz acStack_20; + int iVar1 = (u8*)&field_0x1728 - (u8*)&field_0x16e0; + if (field_0x96c != NULL) { + field_0x96c->initialize(); + } + initialize(); + for (int i = 0; i < 4; i++) { + field_0x10c8[i].initialize(); + } + memset(&field_0x16e0, 0, iVar1); + if (getPathID() != 0xff) { + field_0x10e8.initialize(); + field_0x10e8.setPathInfo(getPathID(), fopAcM_GetRoomNo(this), 0); + } + acStack_20.setall(0); + acStack_20.y = home.angle.y; + switch(mType) { + case TYPE_0: + if (daNpcT_chkEvtBit(0xad)) { + field_0x1718 = 1.0f; + } + break; + case TYPE_1: + if (daNpcT_chkEvtBit(0xcf)) { + home.angle.y += 0x8000; + acStack_20.y = home.angle.y; + } + break; + case TYPE_2: + break; + } + daNpcT_offTmpBit(0xac); + if (daNpcT_chkEvtBit(0xb1)) { + daNpcT_onTmpBit(0xac); + } + setAngle(acStack_20); } /* 809F9FCC-809FA050 00102C 0084+00 1/0 0/0 0/0 .text afterJntAnm__13daNpc_Hanjo_cFi */ -void daNpc_Hanjo_c::afterJntAnm(int param_0) { - // NONMATCHING +void daNpc_Hanjo_c::afterJntAnm(int param_1) { + if (param_1 == 1) { + mDoMtx_stack_c::YrotM(field_0xd08.getAngleZ(1)); + mDoMtx_stack_c::ZrotM(-field_0xd08.getAngleX(1)); + } else if (param_1 == 4) { + mDoMtx_stack_c::YrotM(field_0xd08.getAngleZ(0)); + mDoMtx_stack_c::ZrotM(field_0xd08.getAngleX(0)); + } } /* 809FA050-809FA1C4 0010B0 0174+00 1/0 0/0 0/0 .text setParam__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::setParam() { - // NONMATCHING + selectAction(); + srchActors(); + s16 sVar6 = daNpc_Hanjo_Param_c::m.field_0x48; + s16 sVar5 = daNpc_Hanjo_Param_c::m.field_0x4a; + s16 sVar4 = daNpc_Hanjo_Param_c::m.field_0x4c; + s16 sVar1 = daNpc_Hanjo_Param_c::m.field_0x4e; + if (field_0x1721 != 0) { + sVar6 = 6; + sVar5 = 6; + } else if (mType == TYPE_2) { + sVar6 = 4; + sVar5 = 6; + } + daPy_py_c* player = daPy_getPlayerActorClass(); + if (player->checkHorseRide() != 0) { + if (sVar6 < 7) { + sVar6 = 7; + } + if (sVar4 < 9) { + sVar4 = 9; + } + } + attention_info.distances[0] = daNpcT_getDistTableIdx(sVar4, sVar1); + attention_info.distances[1] = attention_info.distances[0]; + attention_info.distances[3] = daNpcT_getDistTableIdx(sVar6, sVar5); + attention_info.flags = 0xa; + scale.set(daNpc_Hanjo_Param_c::m.field_0x08, daNpc_Hanjo_Param_c::m.field_0x08, + daNpc_Hanjo_Param_c::m.field_0x08); + field_0x864.SetWeight(daNpc_Hanjo_Param_c::m.field_0x10); + field_0xdec = daNpc_Hanjo_Param_c::m.field_0x14; + field_0xdf0 = daNpc_Hanjo_Param_c::m.field_0x1c; + field_0xdf8 = daNpc_Hanjo_Param_c::m.field_0x50; + field_0x8a0.SetWallR(field_0xdf0); + field_0x8a0.SetWallH(daNpc_Hanjo_Param_c::m.field_0x18); + field_0xde8 = daNpc_Hanjo_Param_c::m.field_0x0c; + field_0xa80 = daNpc_Hanjo_Param_c::m.field_0x6c; + field_0xa84 = daNpc_Hanjo_Param_c::m.field_0x44; + gravity = daNpc_Hanjo_Param_c::m.field_0x04; } /* 809FA1C4-809FA3B8 001224 01F4+00 1/0 0/0 0/0 .text checkChangeEvt__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::checkChangeEvt() { - // NONMATCHING +bool daNpc_Hanjo_c::checkChangeEvt() { + if (!chkAction(&daNpc_Hanjo_c::talk)) { + field_0xe2e[0] = 0; + if (dComIfGp_event_chkTalkXY()) { + if (dComIfGp_evmng_ChkPresentEnd()) { + field_0xe30 = 1; + evtChange(); + } + return true; + } + u16 sVar3 = 0; + switch (mType) { + case TYPE_0: + if (field_0x1723 == 0 && + !daNpcT_chkEvtBit(0xac) && !daNpcT_chkEvtBit(0xab) && + !daNpcT_chkEvtBit(0xb7)) + { + if (daNpcT_chkEvtBit(0x235)) { + if (!daNpcT_chkEvtBit(0x243) && !daNpcT_chkEvtBit(0x26f)) { + sVar3 = 7; + } + } else { + if (daNpcT_chkEvtBit(0x18)) { + if (!daNpcT_chkEvtBit(0x243)) { + sVar3 = 5; + } else { + if (!daNpcT_chkEvtBit(0x8b)) { + sVar3 = 6; + } + } + } else { + if (!daNpcT_chkEvtBit(0x243)) { + sVar3 = 4; + } + } + + } + if (sVar3 != 0) { + field_0xe30 = sVar3; + evtChange(); + return true; + } + } + break; + case TYPE_3: + if (daNpcT_chkEvtBit(0x24d)) { + field_0xe30 = 3; + } else { + field_0xe30 = 2; + } + evtChange(); + return 1; + } + } + return false; } -/* ############################################################################################## */ -/* 80A00720-80A00724 000120 0004+00 5/13 0/0 0/0 .rodata @4869 */ -SECTION_RODATA static f32 const lit_4869 = -1.0f; -COMPILER_STRIP_GATE(0x80A00720, &lit_4869); /* 809FA3B8-809FA45C 001418 00A4+00 1/0 0/0 0/0 .text setAfterTalkMotion__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::setAfterTalkMotion() { - // NONMATCHING + int iVar2 = 7; + switch(field_0xb50.getNo()) { + case 1: + iVar2 = 5; + break; + case 2: + iVar2 = 3; + break; + case 3: + break; + case 4: + iVar2 = 6; + break; + } + field_0xb50.setNo(iVar2, -1.0f, 0, 0); } /* 809FA45C-809FA55C 0014BC 0100+00 1/1 0/0 0/0 .text srchActors__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::srchActors() { - // NONMATCHING + switch(mType) { + case TYPE_0: + if (field_0x10c8[0].getActorP() == NULL) { + field_0x10c8[0].entry(getNearestActorP(0x1e8)); + } + break; + case TYPE_1: + if (field_0x10c8[2].getActorP() == NULL) { + field_0x10c8[2].entry(getNearestActorP(0x100)); + } + if (field_0x10c8[3].getActorP() == NULL) { + field_0x10c8[3].entry(getEvtAreaTagP(0x16, 0)); + } + break; + case TYPE_2: + break; + case TYPE_3: + if (field_0x10c8[1].getActorP() == NULL) { + field_0x10c8[1].entry(getNearestActorP(0x245)); + } + break; + } } /* 809FA55C-809FA5FC 0015BC 00A0+00 1/0 0/0 0/0 .text evtTalk__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::evtTalk() { - // NONMATCHING +bool daNpc_Hanjo_c::evtTalk() { + if (chkAction(&daNpc_Hanjo_c::talk)) { + (this->*field_0x16ec)(NULL); + } else { + setAction(&daNpc_Hanjo_c::talk); + } + return 1; } /* 809FA5FC-809FA6C4 00165C 00C8+00 1/0 0/0 0/0 .text evtCutProc__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::evtCutProc() { - // NONMATCHING +bool daNpc_Hanjo_c::evtCutProc() { + int staffId = dComIfGp_getEventManager().getMyStaffId("Hanjo", this, -1); + if (staffId != -1) { + field_0xdac = staffId; + int actIdx = + dComIfGp_getEventManager().getMyActIdx(field_0xdac, (char**)mCutNameList, 6, 0, 0); + if ((this->*(mCutList[actIdx]))(field_0xdac) != 0) { + dComIfGp_getEventManager().cutEnd(field_0xdac); + } + return true; + } + return false; } /* 809FA6C4-809FA88C 001724 01C8+00 1/0 0/0 0/0 .text action__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::action() { - // NONMATCHING + fopAc_ac_c* hitActor = hitChk(&mCyl1, 0xffffffff); + if (hitActor != NULL) { + cCcD_Obj* hitObj = mCyl1.GetTgHitObj(); + if (hitObj->ChkAtType(AT_TYPE_THROW_OBJ) && (fopAcM_GetName(hitActor) != PROC_NPC_TK || mType != TYPE_1)) + { + field_0xd08.setParam(this, + hitActor, field_0xd78.y); + setDamage(0, 7, 0); + field_0xdb8 = 0; + field_0xba8.lookNone(1); + } + } + if (field_0xd08.checkRebirth()) { + field_0xd08.initialize(); + field_0xe22 = 1; + } + if (field_0x16e0) { + if (field_0x16ec == field_0x16e0) { + (this->*field_0x16ec)(NULL); + } else { + setAction(field_0x16e0); + } + } + if ((mType != TYPE_0) && field_0x1721 != 0) { + fopAcM_delete(this); + } } /* 809FA88C-809FAABC 0018EC 0230+00 1/0 0/0 0/0 .text beforeMove__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::beforeMove() { - // NONMATCHING + cXyz oldPos; + cXyz pos; + fopAcM_OffStatus(this, 0x8000000); + if (checkHide()) { + fopAcM_OnStatus(this, 0x8000000); + } + if (checkHide() || field_0xe2b != 0) { + attention_info.flags = 0; + } + for (int i = 0; i < 4; i++) { + if (mStones[i].chkActive()) { + if (cM3d_IsZero(mStones[i].getSpeedF()) == false) { + oldPos = mStones[i].getOld(); + pos = mStones[i].getPos(); + field_0xae0.Set(&oldPos, &pos, this); + if (!dComIfG_Bgsp().LineCross(&field_0xae0)) { + if (!mStones[i].getSphP()->ChkCoHit()) { + continue; + } + } + mStones[i].initialize(); + } + } + } + + if (field_0x1721 != 0) { + dive(); + } } /* 809FAABC-809FABB8 001B1C 00FC+00 1/0 0/0 0/0 .text afterMoved__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::afterMoved() { - // NONMATCHING + cXyz cStack_1c; + for (int i = 0; i < 4; i++) { + if (mStones[i].chkActive()) { + if (cM3d_IsZero(mStones[i].getSpeedF())) { + mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(18)); + mDoMtx_stack_c::multVecZero((Vec*)&cStack_1c); + mStones[i].setPos(cStack_1c); + } else { + mStones[i].posMoveF(this); + } + } + } } -/* ############################################################################################## */ -/* 80A00724-80A00728 000124 0004+00 0/1 0/0 0/0 .rodata @5228 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5228 = -10.0f; -COMPILER_STRIP_GATE(0x80A00724, &lit_5228); -#pragma pop - -/* 80A00728-80A0072C 000128 0004+00 0/1 0/0 0/0 .rodata @5229 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5229 = 10.0f; -COMPILER_STRIP_GATE(0x80A00728, &lit_5229); -#pragma pop - -/* 80A0072C-80A00730 00012C 0004+00 0/1 0/0 0/0 .rodata @5230 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u32 const lit_5230 = 0x38C90FDB; -COMPILER_STRIP_GATE(0x80A0072C, &lit_5230); -#pragma pop - -/* 80A00730-80A00734 000130 0004+00 0/1 0/0 0/0 .rodata @5231 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5231 = 20.0f; -COMPILER_STRIP_GATE(0x80A00730, &lit_5231); -#pragma pop - -/* 80A00734-80A00738 000134 0004+00 0/1 0/0 0/0 .rodata @5232 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5232 = 170.0f; -COMPILER_STRIP_GATE(0x80A00734, &lit_5232); -#pragma pop - -/* 80A00738-80A0073C 000138 0004+00 0/2 0/0 0/0 .rodata @5233 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5233 = -20.0f; -COMPILER_STRIP_GATE(0x80A00738, &lit_5233); -#pragma pop - -/* 80A0073C-80A00740 00013C 0004+00 0/2 0/0 0/0 .rodata @5234 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5234 = 3.0f; -COMPILER_STRIP_GATE(0x80A0073C, &lit_5234); -#pragma pop - -/* 80A00740-80A00744 000140 0004+00 0/1 0/0 0/0 .rodata @5235 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5235 = 17.0f; -COMPILER_STRIP_GATE(0x80A00740, &lit_5235); -#pragma pop - -/* 80A00744-80A00748 000144 0004+00 0/2 0/0 0/0 .rodata @5236 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5236 = 2.0f; -COMPILER_STRIP_GATE(0x80A00744, &lit_5236); -#pragma pop - -/* 80A00748-80A00750 000148 0008+00 1/5 0/0 0/0 .rodata @5238 */ -SECTION_RODATA static u8 const lit_5238[8] = { - 0x43, 0x30, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80A00748, &lit_5238); - /* 80A01288-80A0128C 000008 0001+03 1/1 0/0 0/0 .bss @1109 */ static u8 lit_1109[1 + 3 /* padding */]; @@ -1344,1017 +1377,1333 @@ static u8 lit_3859[12]; /* 80A012D4-80A012D8 000054 0004+00 1/1 0/0 0/0 .bss l_HIO */ static u8 l_HIO[4]; -/* 80A012D8-80A012E8 000058 000C+04 0/1 0/0 0/0 .bss @5144 */ -#pragma push -#pragma force_active on -static u8 lit_5144[12 + 4 /* padding */]; -#pragma pop - -/* 80A012E8-80A012F4 000068 000C+00 0/1 0/0 0/0 .bss prtclScl$5143 */ -#pragma push -#pragma force_active on -static u8 prtclScl[12]; -#pragma pop - /* 809FABB8-809FAF90 001C18 03D8+00 1/0 0/0 0/0 .text setAttnPos__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::setAttnPos() { - // NONMATCHING + cXyz cStack_38(-10.0f, 10.0f, 0.0f); + cXyz cStack_44; + field_0xd08.calc(0); + f32 dVar8 = cM_s2rad(field_0xd78.y - field_0xd7e.y); + J3DModel* model = mpMorf[0]->getModel(); + field_0xba8.setParam(this, model, &cStack_38, getBackboneJointNo(), getNeckJointNo(), + getHeadJointNo(), daNpc_Hanjo_Param_c::m.field_0x24, daNpc_Hanjo_Param_c::m.field_0x20, + daNpc_Hanjo_Param_c::m.field_0x2c, daNpc_Hanjo_Param_c::m.field_0x28, + daNpc_Hanjo_Param_c::m.field_0x34, daNpc_Hanjo_Param_c::m.field_0x30, + daNpc_Hanjo_Param_c::m.field_0x3c, daNpc_Hanjo_Param_c::m.field_0x38, + daNpc_Hanjo_Param_c::m.field_0x40, dVar8, NULL); + field_0xba8.calcJntRad(0.2f, 1.0f, dVar8); + setMtx(); + mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(getHeadJointNo())); + mDoMtx_stack_c::multVec(&cStack_38, &eyePos); + field_0xba8.setEyeAngleX(eyePos, 1.0f, 0); + field_0xba8.setEyeAngleY(eyePos, field_0xd78.y, 1, 1.0f, 0); + cStack_38.set(0.0f, 0.0f, 20.0f); + cStack_38.y = daNpc_Hanjo_Param_c::m.field_0x00; + if (field_0x1721 != 0) { + cStack_38.set(0.0f, 170.0f, -10.0f); + } else if (field_0xb74.getNo() == 2) { + cStack_38.set(0.0f, 170.0f, -20.0f); + } + if (1.0f <= mpMorf[0]->getMorfRatio()) { + field_0x16f8 = cStack_38; + } else { + cStack_44 = field_0x16f8 - cStack_38; + cStack_44 *= 1.0f - mpMorf[0]->getMorfRatio(); + cStack_38 = cStack_38 + cStack_44; + } + mDoMtx_stack_c::YrotS(field_0xd78.y); + mDoMtx_stack_c::multVec(&cStack_38, &cStack_38); + attention_info.position = current.pos + cStack_38; + static cXyz prtclScl(1.0f, 1.0f, 1.0f); + setFootPos(); + if (3.0f < speedF) { + setFootPrtcl(&prtclScl, 17.0f, 2.0f); + } } -/* ############################################################################################## */ -/* 80A00750-80A00758 000150 0008+00 0/1 0/0 0/0 .rodata @5296 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_5296[8] = { - 0x3F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80A00750, &lit_5296); -#pragma pop - -/* 80A00758-80A00760 000158 0008+00 0/1 0/0 0/0 .rodata @5297 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_5297[8] = { - 0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80A00758, &lit_5297); -#pragma pop - -/* 80A00760-80A00768 000160 0008+00 0/1 0/0 0/0 .rodata @5298 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_5298[8] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80A00760, &lit_5298); -#pragma pop - -/* 80A00768-80A0076C 000168 0004+00 0/1 0/0 0/0 .rodata @5386 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5386 = 320.0f; -COMPILER_STRIP_GATE(0x80A00768, &lit_5386); -#pragma pop - -/* 80A0076C-80A00770 00016C 0004+00 0/1 0/0 0/0 .rodata @5387 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5387 = -140.0f; -COMPILER_STRIP_GATE(0x80A0076C, &lit_5387); -#pragma pop - -/* 80A00770-80A00774 000170 0004+00 0/2 0/0 0/0 .rodata @5388 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5388 = 40.0f; -COMPILER_STRIP_GATE(0x80A00770, &lit_5388); -#pragma pop - -/* 80A00774-80A00778 000174 0004+00 0/1 0/0 0/0 .rodata @5389 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5389 = -240.0f; -COMPILER_STRIP_GATE(0x80A00774, &lit_5389); -#pragma pop - -/* 80A00778-80A0077C 000178 0004+00 0/1 0/0 0/0 .rodata @5390 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5390 = -200.0f; -COMPILER_STRIP_GATE(0x80A00778, &lit_5390); -#pragma pop - /* 809FAF90-809FB2C4 001FF0 0334+00 1/0 0/0 0/0 .text setCollision__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::setCollision() { - // NONMATCHING + cXyz cStack_4c; + if (field_0xe25 == 0) { + u32 tgType = 0xd8fbfdff; + u32 tgSPrm = 0x1f; + if (field_0xa89 != 0) { + tgType = 0; + tgSPrm = 0; + } else { + if (field_0xd08.checkStagger()) { + tgType = 0; + tgSPrm = 0; + } + } + mCyl1.SetCoSPrm(0x79); + mCyl1.SetTgType(tgType); + mCyl1.SetTgSPrm(tgSPrm); + mCyl1.OnTgNoHitMark(); + cStack_4c.set(0.0f, 0.0f, 0.0f); + f32 cylHeight = field_0xdec; + f32 cylRadius = field_0xdf0; + mDoMtx_stack_c::YrotS(field_0xd78.y); + mDoMtx_stack_c::multVec(&cStack_4c, &cStack_4c); + cStack_4c += current.pos; + mCyl1.SetH(cylHeight); + mCyl1.SetR(cylRadius); + mCyl1.SetC(cStack_4c); + dComIfG_Ccsp()->Set(&mCyl1); + if (mType == 1 || mType == 2) { + switch(mType) { + case TYPE_1: + cylRadius = 320.0f; + cStack_4c.set(-140.0f, 40.0f, -240.0f); + break; + case TYPE_2: + cylRadius = 320.0f; + cStack_4c.set(0.0f, 40.0f, -200.0f); + break; + default: + cylRadius = 0.0f; + cStack_4c.set(0.0f, 0.0f, 0.0f); + break; + } + if (cM3d_IsZero(cylRadius) == false) { + mDoMtx_stack_c::YrotS(0); + mDoMtx_stack_c::multVec(&cStack_4c, &cStack_4c); + cStack_4c += current.pos; + mCyl2.SetCoSPrm(0x19); + mCyl2.OnCoNoCrrBit(); + mCyl2.SetH(cylHeight); + mCyl2.SetR(cylRadius); + mCyl2.SetC(cStack_4c); + dComIfG_Ccsp()->Set(&mCyl2); + } + } + } + for (int i = 0; i < 4; i++) { + if (mStones[i].chkActive()) { + mStones[i].getSphP()->SetC(mStones[i].getPos()); + mStones[i].getSphP()->SetR(3.0f); + dComIfG_Ccsp()->Set(mStones[i].getSphP()); + mStones[i].getSphP()->ClrCoHit(); + } + } + mCyl1.ClrCoHit(); + mCyl2.ClrCoHit(); + mCyl1.ClrTgHit(); } /* 809FB2C4-809FB2CC 002324 0008+00 1/0 0/0 0/0 .text drawDbgInfo__13daNpc_Hanjo_cFv */ -bool daNpc_Hanjo_c::drawDbgInfo() { - return false; +int daNpc_Hanjo_c::drawDbgInfo() { + return 0; } -/* ############################################################################################## */ -/* 80A0077C-80A00780 00017C 0004+00 0/1 0/0 0/0 .rodata @5503 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u32 const lit_5503 = 0x3C1374BC; -COMPILER_STRIP_GATE(0x80A0077C, &lit_5503); -#pragma pop - -/* 80A00780-80A00784 000180 0004+00 0/1 0/0 0/0 .rodata @5504 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5504 = -9.0f / 50.0f; -COMPILER_STRIP_GATE(0x80A00780, &lit_5504); -#pragma pop - -/* 80A00784-80A00788 000184 0004+00 0/1 0/0 0/0 .rodata @5505 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u32 const lit_5505 = 0xBE147AE1; -COMPILER_STRIP_GATE(0x80A00784, &lit_5505); -#pragma pop - -/* 80A00788-80A0078C 000188 0004+00 0/2 0/0 0/0 .rodata @5506 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5506 = 3.0f / 20.0f; -COMPILER_STRIP_GATE(0x80A00788, &lit_5506); -#pragma pop - /* 809FB2CC-809FB59C 00232C 02D0+00 1/0 0/0 0/0 .text drawOtherMdl__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::drawOtherMdl() { - // NONMATCHING + Mtx mtx; + J3DModel* model = mpMorf[0]->getModel(); + for (int i = 0; i < 4; i++) { + if (mStones[i].chkActive()) { + g_env_light.setLightTevColorType_MAJI(mStones[i].getModelP(), &tevStr); + mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(18)); + cMtx_copy(mDoMtx_stack_c::get(), mtx); + mStones[i].setMtx(mtx); + mDoExt_modelUpdateDL(mStones[i].getModelP()); + } + } + if (mModel2 != NULL && (mType == TYPE_1 || mType == TYPE_2)) { + J3DAnmTransformKey* transformKey = getTrnsfrmKeyAnmP( + l_resNameList[l_motionAnmData[100]], l_motionAnmData[98]); + if (transformKey == mpMorf[0]->getAnm()) { + g_env_light.setLightTevColorType_MAJI(mModel2, + &tevStr); + mDoMtx_stack_c::copy(model->getAnmMtx(18)); + mDoMtx_stack_c::XYZrotM(cM_deg2s(32.602f), cM_deg2s(23.207f), + cM_deg2s(49.943f)); + mDoMtx_stack_c::transM(0.009f, -0.18f, -0.145f); + cMtx_copy(mDoMtx_stack_c::get(), mtx); + mModel2->setBaseTRMtx(mtx); + mDoExt_modelUpdateDL(mModel2); + } + } + if (mModel1 != NULL && cM3d_IsZero(field_0x1718) == false) { + g_env_light.setLightTevColorType_MAJI(mModel1, &tevStr); + mDoMtx_stack_c::copy(model->getAnmMtx(4)); + mDoMtx_stack_c::scaleM(field_0x1718, field_0x1718, field_0x1718); + cMtx_copy(mDoMtx_stack_c::get(), mtx); + mModel1->setBaseTRMtx(mtx); + mDoExt_modelUpdateDL(mModel1); + cLib_chaseF(&field_0x1718, 1.0f, 0.15f); + } } /* 809FB59C-809FB6CC 0025FC 0130+00 1/1 0/0 0/0 .text selectAction__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::selectAction() { - // NONMATCHING +int daNpc_Hanjo_c::selectAction() { + field_0x16e0 = NULL; + switch(mType) { + case TYPE_0: + field_0x16e0 = &daNpc_Hanjo_c::wait; + if (!daNpcT_chkEvtBit(0xad) && !daNpcT_chkEvtBit(0xab) && !daNpcT_chkEvtBit(0xb7) && + (daNpcT_chkEvtBit(0x235) || daNpcT_chkEvtBit(0x18))) + { + field_0x16e0 = &daNpc_Hanjo_c::throwStone; + } + break; + case TYPE_1: + field_0x16e0 = &daNpc_Hanjo_c::takayose; + break; + default: + field_0x16e0 = &daNpc_Hanjo_c::wait; + break; + } + + return 1; } /* 809FB6CC-809FB6F8 00272C 002C+00 2/2 0/0 0/0 .text * chkAction__13daNpc_Hanjo_cFM13daNpc_Hanjo_cFPCvPvPv_i */ -void daNpc_Hanjo_c::chkAction(int (daNpc_Hanjo_c::*param_0)(void*)) { - // NONMATCHING +int daNpc_Hanjo_c::chkAction(int (daNpc_Hanjo_c::*action)(void*)) { + return field_0x16ec == action; } /* 809FB6F8-809FB7A0 002758 00A8+00 2/2 0/0 0/0 .text * setAction__13daNpc_Hanjo_cFM13daNpc_Hanjo_cFPCvPvPv_i */ -void daNpc_Hanjo_c::setAction(int (daNpc_Hanjo_c::*param_0)(void*)) { - // NONMATCHING +int daNpc_Hanjo_c::setAction(int (daNpc_Hanjo_c::*action)(void*)) { + field_0xe22 = 3; + if (field_0x16ec != NULL) { + (this->*field_0x16ec)(NULL); + } + field_0xe22 = 0; + field_0x16ec = action; + if (field_0x16ec != NULL) { + (this->*field_0x16ec)(NULL); + } + return 1; } /* 809FB7A0-809FB90C 002800 016C+00 2/2 0/0 0/0 .text initShoot__13daNpc_Hanjo_cFi */ -void daNpc_Hanjo_c::initShoot(int param_0) { - // NONMATCHING +void daNpc_Hanjo_c::initShoot(int param_1) { + if (param_1 != 0) { + field_0xb50.setNo( 7, -1.0f, 0, 0); + field_0xb74.setNo( 16, 0.0f, 1, 0); + field_0xba8.lookNone(1); + } else { + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(15, -1.0f, 0, 0); + field_0xba8.lookNone(0); + } } -/* ############################################################################################## */ -/* 80A0078C-80A00790 00018C 0004+00 0/1 0/0 0/0 .rodata @5666 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u32 const lit_5666 = 0x43360B61; -COMPILER_STRIP_GATE(0x80A0078C, &lit_5666); -#pragma pop - -/* 80A00790-80A00794 000190 0004+00 0/1 0/0 0/0 .rodata @5667 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5667 = 36.0f; -COMPILER_STRIP_GATE(0x80A00790, &lit_5667); -#pragma pop - -/* 80A00794-80A00798 000194 0004+00 0/1 0/0 0/0 .rodata @5668 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5668 = 21.0f; -COMPILER_STRIP_GATE(0x80A00794, &lit_5668); -#pragma pop - -/* 80A00798-80A0079C 000198 0004+00 0/1 0/0 0/0 .rodata @5669 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5669 = 110.0f; -COMPILER_STRIP_GATE(0x80A00798, &lit_5669); -#pragma pop - -/* 80A0079C-80A007A0 00019C 0004+00 0/2 0/0 0/0 .rodata @5670 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5670 = 1.0f / 10.0f; -COMPILER_STRIP_GATE(0x80A0079C, &lit_5670); -#pragma pop - -/* 80A007A0-80A007A4 0001A0 0004+00 0/5 0/0 0/0 .rodata @5671 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5671 = 0.5f; -COMPILER_STRIP_GATE(0x80A007A0, &lit_5671); -#pragma pop - /* 809FB90C-809FBB94 00296C 0288+00 2/2 0/0 0/0 .text shoot__13daNpc_Hanjo_cFi */ -void daNpc_Hanjo_c::shoot(int param_0) { - // NONMATCHING +int daNpc_Hanjo_c::shoot(int param_1) { + csXyz cStack_60; + f32 dVar13 = daNpc_Hanjo_Param_c::m.field_0x98; + s16 sVar9 = cM_deg2s(daNpc_Hanjo_Param_c::m.field_0x9c); + if (field_0xb74.getNo() == 16 || field_0xb74.getNo() == 15) { + switch(field_0xb74.getStepNo()) { + case 0: + dVar13 = mpMorf[0]->getFrame(); + if (36.0f < dVar13 && field_0x170c == -1) { + int i = 0; + for (; i < 4; i = i + 1) { + if (!mStones[i].chkActive()) + break; + } + if (i < 4) { + mStones[i].initialize(); + mStones[i].setTmr(0x708); + cStack_60 = current.angle; + cStack_60.y += daNpc_Hanjo_Param_c::m.field_0xac; + mStones[i].setAngle(cStack_60); + field_0x170c = i; + } + } + break; + case 1: + if ((mpMorf[0]->checkFrame(21.0f)) && field_0x170c >= 0) { + if (param_1 != 0) { + dVar13 = 110.0f; + sVar9 = cM_deg2s(78.0f); + } + f32 dVar12 = dVar13 * cM_ssin(sVar9); + f32 dVar11 = dVar13 * cM_scos(sVar9); + f32 fVar1 = ((cM_rnd() - 0.5f) / 0.5f) * 0.1f; + if (param_1 != 0) { + fVar1 = 0.0; + } + mStones[field_0x170c].setVSpeed(dVar12 - (dVar12 * fVar1)); + mStones[field_0x170c].setSpeedF(dVar11 + (dVar11 * fVar1)); + } + break; + default: + return 1; + } + } + return 0; } /* 809FBB94-809FBC3C 002BF4 00A8+00 2/2 0/0 0/0 .text initDive__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::initDive() { - // NONMATCHING + field_0xb50.setNo(6, -1.0f, 0, 0); + field_0xb74.setNo(18, -1.0f, 0, 0); + speed.y = daNpc_Hanjo_Param_c::m.field_0x8c; + field_0x1721 = 1; } -/* ############################################################################################## */ -/* 80A007A4-80A007A8 0001A4 0004+00 0/1 0/0 0/0 .rodata @5802 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5802 = 5.5f; -COMPILER_STRIP_GATE(0x80A007A4, &lit_5802); -#pragma pop - -/* 80A007A8-80A007AC 0001A8 0004+00 0/1 0/0 0/0 .rodata @5803 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5803 = 3.0f / 10.0f; -COMPILER_STRIP_GATE(0x80A007A8, &lit_5803); -#pragma pop - -/* 80A007AC-80A007B0 0001AC 0004+00 0/1 0/0 0/0 .rodata @5804 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5804 = 260.0f; -COMPILER_STRIP_GATE(0x80A007AC, &lit_5804); -#pragma pop - -/* 80A007B0-80A007B4 0001B0 0004+00 0/1 0/0 0/0 .rodata @5805 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5805 = 18.0f; -COMPILER_STRIP_GATE(0x80A007B0, &lit_5805); -#pragma pop - /* 809FBC3C-809FC06C 002C9C 0430+00 1/1 0/0 0/0 .text dive__13daNpc_Hanjo_cFv */ void daNpc_Hanjo_c::dive() { - // NONMATCHING + f32 local_34; + if (fopAcM_getWaterY(¤t.pos, &local_34) != 0) { + if (local_34 <= current.pos.y) { + cLib_chaseF(&speedF, 0.0f, 0.1f); + } else { + if (field_0x1720 == 0) { + field_0x580.startCreatureSound(Z2SE_CM_BODYFALL_WATER_M, 0, 0xffffffff); + speedF *= 0.5f; + field_0x1720 = 1; + } else if (field_0x171f == 0) { + if (current.pos.y + field_0xdec < local_34) { + if (0.0f < speed.y) { + cLib_addCalc(&speed.y, 2.0f, 0.5f, 0.5f, 0.5f); + } else { + cLib_addCalc(&speed.y, 2.0f, 0.5f, 5.5f, 0.5f); + } + } + if (0.0f < speed.y && local_34 < current.pos.y + daNpc_Hanjo_Param_c::m.field_0xa8) + { + field_0x171f = 1; + if (field_0xb74.getNo() == 18) { + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(19, -1.0f, 0, 0); + } + field_0x171c = 0; + speed.y = 0; + } + } + if (field_0x171f != 0) { + s16 sVar1 = field_0x171c; + field_0x171c += 2100; + f32 dVar7 = cM_ssin(field_0x171c & 0x7fff); + if ((sVar1 < 0 && 0 <= field_0x171c) || + (sVar1 >= 0 && field_0x171c < 0)) + { + cXyz cStack_30(current.pos); + cStack_30.y = local_34; + dComIfGp_particle_set(0xffffffff, 0x8363, &cStack_30, 0, 0); + dComIfGp_particle_set(0xffffffff, 0x8364, &cStack_30, 0, 0); + dComIfGp_particle_set(0xffffffff, 0x8365, &cStack_30, 0, 0); + } + current.pos.y = local_34 - daNpc_Hanjo_Param_c::m.field_0xa8; + current.pos.y += dVar7 * -20.0f; + } + cLib_chaseF(&speedF, 0.0f, 0.3f); + gravity = 0; + } + } + if (field_0xb74.getNo() == 18) { + if (field_0x1720 != 0 && field_0x171f == 0 && 0.0f < speed.y) { + if (local_34 - current.pos.y < 260.0f && field_0xb74.getNo() == 18) { + if (cM3d_IsZero(mpMorf[0]->getPlaySpeed())) { + mpMorf[0]->setPlaySpeed(1.0f); + } + } + } else if ((field_0xb74.getNo() == 18) && mpMorf[0]->checkFrame(18.0f)) { + mpMorf[0]->setPlaySpeed(0.0f); + } + } } /* 809FC06C-809FC1BC 0030CC 0150+00 1/1 0/0 0/0 .text lookround__13daNpc_Hanjo_cFs */ -void daNpc_Hanjo_c::lookround(s16 param_0) { - // NONMATCHING +int daNpc_Hanjo_c::lookround(s16 param_1) { + if (field_0x171e != 0) { + cLib_addCalcAngleS2(¤t.angle.y, param_1, 4, 0x800); + shape_angle.y = current.angle.y; + field_0xd78.y = shape_angle.y; + if (field_0xb74.getNo() != 14) { + field_0xb74.setNo(14, -1.0f, 0, 0); + } else { + if (field_0xb74.checkEndSequence()) { + s16 angleDiff = param_1 - field_0xd78.y; + s16 absDiff = abs(angleDiff); + if (absDiff <= cM_deg2s(4.0f)) { + field_0xb74.setNo(0, -1.0f, 0, 0); + field_0x171e = 0; + } else { + field_0xb74.setNo(14, 0.0f, 1, 0); + } + } + } + } else { + s16 angleDiff = param_1 - field_0xd78.y; + s16 absDiff = abs(angleDiff); + if (absDiff > cM_deg2s(90.0f)) { + field_0x171e = 1; + } + } + return 1; } -/* ############################################################################################## */ -/* 80A007B4-80A007B8 0001B4 0004+00 1/2 0/0 0/0 .rodata @5887 */ -SECTION_RODATA static f32 const lit_5887 = 50.0f; -COMPILER_STRIP_GATE(0x80A007B4, &lit_5887); - /* 809FC1BC-809FC2E4 00321C 0128+00 1/1 0/0 0/0 .text commandToHawk__13daNpc_Hanjo_cFv */ -void daNpc_Hanjo_c::commandToHawk() { - // NONMATCHING +int daNpc_Hanjo_c::commandToHawk() { + daNPC_TK_c* pTkNpc = (daNPC_TK_c*)field_0x10c8[2].getActorP(); + int rv = 0; + if (pTkNpc != NULL) { + cXyz acStack_30(0.0f, 0.0f, 0.0f); + int iVar1 = field_0x1722; + if (iVar1) { + acStack_30.setall(50.0f); + } + rv = 0; + daTag_EvtArea_c* pEvtArea = + (daTag_EvtArea_c*)field_0x10c8[3].getActorP(); + if (pEvtArea != NULL) { + daPy_py_c* player = daPy_getPlayerActorClass(); + if (pEvtArea->chkPointInArea(player->current.pos, acStack_30)) { + rv = 1; + } + if (rv != 0) { + if (!pTkNpc->isAttackLink()) { + pTkNpc->setAttackLink(); + } + } else { + if (pTkNpc->isAttackLink()) { + pTkNpc->setBackHanjo(); + } + } + } + } + return rv == 1; } -/* ############################################################################################## */ -/* 80A007F8-80A007F8 0001F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80A00915 = "prm"; -#pragma pop - /* 809FC2E4-809FC438 003344 0154+00 1/0 0/0 0/0 .text cutConversationAboutSaru__13daNpc_Hanjo_cFi */ -void daNpc_Hanjo_c::cutConversationAboutSaru(int param_0) { - // NONMATCHING +int daNpc_Hanjo_c::cutConversationAboutSaru(int staffIdx) { + int rv = 0; + int iVar4 = -1; + int* piVar1 = (int*)dComIfGp_evmng_getMyIntegerP(staffIdx, "prm"); + if (piVar1 != NULL) { + iVar4 = *piVar1; + } + if (dComIfGp_getEventManager().getIsAddvance(staffIdx)) { + switch(iVar4) { + case 0: + field_0xdc8 = fopAcM_searchPlayerAngleY(this); + if (checkStep()) { + mStepNo = 0; + } + break; + case 1: + break; + } + } + switch (iVar4) { + case 0: + rv = 1; + break; + case 1: + field_0xba8.lookPlayer(0); + if (field_0xdc8 != field_0xd78.y) { + step(field_0xdc8, 7, 14, 15, 0); + } else { + rv = 1; + } + + } + return rv; } -/* ############################################################################################## */ -/* 80A007B8-80A007C0 0001B8 0008+00 0/1 0/0 0/0 .rodata @5944 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_5944[8] = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, -}; -COMPILER_STRIP_GATE(0x80A007B8, &lit_5944); -#pragma pop - -/* 80A007F8-80A007F8 0001F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80A00919 = "prm0"; -SECTION_DEAD static char const* const stringBase_80A0091E = "prm1"; -SECTION_DEAD static char const* const stringBase_80A00923 = "msgNo"; -#pragma pop - /* 809FC438-809FC80C 003498 03D4+00 1/0 0/0 0/0 .text cutConversation__13daNpc_Hanjo_cFi */ -void daNpc_Hanjo_c::cutConversation(int param_0) { - // NONMATCHING +int daNpc_Hanjo_c::cutConversation(int param_1) { + int rv = 0; + int iVar9 = -1; + int iVar6 = -1; + int iVar7 = 0; + int* piVar1 = dComIfGp_evmng_getMyIntegerP(param_1, "prm0"); + if (piVar1 != NULL) { + iVar9 = *piVar1; + } + piVar1 = dComIfGp_evmng_getMyIntegerP(param_1, "prm1"); + if (piVar1 != NULL) { + iVar6 = *piVar1; + } + piVar1 = dComIfGp_evmng_getMyIntegerP(param_1, "msgNo"); + if (piVar1 != NULL) { + iVar7 = *piVar1; + } + if (dComIfGp_getEventManager().getIsAddvance(param_1)) { + switch(iVar9) { + case 0: + field_0xb74.setNo(0, -1.0f, 0, 0); + initTalk(field_0xa7c, NULL); + field_0xb98.entry(daPy_getPlayerActorClass()); + break; + case 1: + case 2: + case 3: + if (iVar9 == 2) { + initTalk(field_0xa7c, NULL); + field_0xb98.entry(daPy_getPlayerActorClass()); + } + if (iVar6 == 1) { + fopAc_ac_c* actor_p =field_0x10c8[0].getActorP(); + JUT_ASSERT(2650, 0 != actor_p); + dComIfGp_getEvent().setPt2(actor_p); + } + break; + } + } + int local_38[2] = {-1, -1}; + switch(iVar9) { + case 0: + field_0xba8.lookPlayer(0); + if (field_0xdc8 == field_0xd78.y) { + rv = 1; + } else if (step(field_0xdc8, 7, 0xe, 0xf, 0)) { + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(0, -1.0f, 0, 0); + } + break; + case 1: + case 2: + case 3: + field_0xba8.lookPlayer(0); + if (iVar9 == 2) { + field_0xba8.lookNone(0); + } + if ((iVar9 == 3 && field_0xdc8 != field_0xd78.y) && + step(field_0xdc8, -1, -1, 15, 0)) + { + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(0, -1.0f, 0, 0); + } + local_38[0] = iVar7; + if (talkProc(local_38, 0, NULL, 0)) { + if (iVar7 == 0) { + if (mFlow.checkEndFlow()) { + rv = 1; + } + } else { + rv = 1; + } + } + break; + } + + return rv; } -/* ############################################################################################## */ -/* 80A007C0-80A007C4 0001C0 0004+00 0/1 0/0 0/0 .rodata @6200 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6200 = 1074.0f; -COMPILER_STRIP_GATE(0x80A007C0, &lit_6200); -#pragma pop - -/* 80A007C4-80A007C8 0001C4 0004+00 0/1 0/0 0/0 .rodata @6201 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6201 = -100.0f; -COMPILER_STRIP_GATE(0x80A007C4, &lit_6201); -#pragma pop - -/* 80A007C8-80A007CC 0001C8 0004+00 0/1 0/0 0/0 .rodata @6202 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6202 = -443.0f; -COMPILER_STRIP_GATE(0x80A007C8, &lit_6202); -#pragma pop - /* 809FC80C-809FCDC4 00386C 05B8+00 1/0 0/0 0/0 .text cutPursuitBee__13daNpc_Hanjo_cFi */ -void daNpc_Hanjo_c::cutPursuitBee(int param_0) { - // NONMATCHING +// NONMATCHING +// One instruction out of order +int daNpc_Hanjo_c::cutPursuitBee(int param_1) { + cXyz cStack_6c; + int rv = 0; + int* local_88 = NULL; + int local_8c = -1; + local_88 = dComIfGp_evmng_getMyIntegerP(param_1, "prm"); + if (local_88 != NULL) { + local_8c = *local_88; + } + if (dComIfGp_getEventManager().getIsAddvance(param_1)) { + fopAc_ac_c* actor_p; + switch(local_8c) { + case 0: + setAngle(home.angle.y); + actor_p = field_0x10c8[0].getActorP(); + JUT_ASSERT(2748, 0 != actor_p); + dComIfGp_getEvent().setPt2(actor_p); + for (int i = 0; i < 4; i++) { + if (mStones[i].chkActive()) { + mStones[i].initialize(); + } + } + initShoot(1); + field_0x170c = 0xffffffff; + break; + case 1: + field_0xdc4 = 0; + break; + case 3: + field_0xb50.setNo(6, -1.0f, 0, + 0); + field_0xb74.setNo(17, -1.0f, + 0, 0); + field_0xdc4 = 1; + field_0x580.startCreatureVoice(Z2SE_M077_HANJO_05, -1); + break; + case 4: + field_0x1724 = 0; + initDive(); + break; + case 5: + break; + case 99: + cStack_6c.set(1074.0f, -100.0f, -443.0f); + setPos(cStack_6c); + setAngle(home.angle.y); + speedF = 0; + speed.setall(0.0f); + field_0x171f = 1; + field_0x1720 = 1; + field_0x1721 = 1; + daNpcT_onEvtBit(0xad); + daNpcT_onEvtBit(0xb1); + field_0x1718 = 0.15f; + mFlow.remove(); + break; + } + } + switch(local_8c) { + case 0: + if (shoot(1)) { + rv = 1; + } + break; + case 1: + if (field_0xdc4 != 0) { + rv = 1; + } else { + for (int i = 0; i < 4; i++) { + if (mStones[i].getSphP()->ChkCoHit()) { + fopAc_ac_c* hitActor = mStones[i].getSphP()->GetCoHitObj()->GetAc(); + fopAc_ac_c* hitActor2 = dCc_GetAc(hitActor); + if (hitActor2 != NULL && fopAcM_GetName(hitActor2) == PROC_E_NEST) { + field_0xdc4 = daNpc_Hanjo_Param_c::m.field_0xb0; + } + mStones[i].initialize(); + } + } + } + break; + case 2: + if (cLib_calcTimer(&field_0xdc4) == 0) { + rv = 1; + } + break; + case 3: + field_0xba8.lookNone(0); + if (field_0x10e8.getDstPosH(current.pos, &cStack_6c, field_0x10e8.mpRoomPath->m_num, 4)) { + rv = 1; + } else { + cLib_addCalcAngleS2(¤t.angle.y, cLib_targetAngleY(¤t.pos, &cStack_6c), 4, 0x800); + shape_angle.y = current.angle.y; + field_0xd78.y = current.angle.y; + field_0xd7e.y = field_0xd78.y; + cLib_chaseF(&speedF, + daNpc_Hanjo_Param_c::m.field_0x90, 0.5f); + if (field_0xdc4 != 0 && + mCyl1.ChkCoHit()) + { + fopAc_ac_c* hitActor = mCyl1.GetCoHitAc(); + if (daPy_getPlayerActorClass() == hitActor) { + f32 dVar17 = 40.0f; + s16 sVar11 = cM_deg2s(50.0f); + s16 actorAngle = fopAcM_searchActorAngleY(this, daPy_getPlayerActorClass()) - current.angle.y; + s16 angle2; + if (actorAngle > 0) { + angle2 = current.angle.y + 0x2000; + } else { + angle2 = current.angle.y - 0x2000; + } + daPy_getPlayerActorClass()->setThrowDamage(angle2, dVar17 * cM_scos(sVar11), dVar17 * cM_ssin(sVar11), 0, 1, 0); + field_0x1724 = 1; + field_0xdc4 = 0; + } + } + } + break; + case 4: + if (field_0x171f != 0) { + field_0x1718 = 0.15f; + daNpcT_onEvtBit(0xad); + daNpcT_onEvtBit(0xb1); + rv = 1; + } + break; + case 5: + rv = 1; + break; + case 99: + rv = 1; + break; + } + return rv; } -/* ############################################################################################## */ -/* 80A007CC-80A007D0 0001CC 0004+00 0/1 0/0 0/0 .rodata @6354 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6354 = 8.0f; -COMPILER_STRIP_GATE(0x80A007CC, &lit_6354); -#pragma pop - -/* 80A007F8-80A007F8 0001F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80A00929 = "timer"; -SECTION_DEAD static char const* const stringBase_80A0092F = "@"; -#pragma pop - /* 809FCDC4-809FD3C0 003E24 05FC+00 1/0 0/0 0/0 .text cutAppearHawker__13daNpc_Hanjo_cFi */ -void daNpc_Hanjo_c::cutAppearHawker(int param_0) { - // NONMATCHING +int daNpc_Hanjo_c::cutAppearHawker(int param_1) { + cXyz cStack_a4; + int rv = 0; + int local_b4 = -1; + int iVar7 = 0; + int* piVar1 = dComIfGp_evmng_getMyIntegerP(param_1, "prm"); + fopAc_ac_c* actor_p; + if (piVar1 != NULL) { + local_b4 = *piVar1; + } + piVar1 = dComIfGp_evmng_getMyIntegerP(param_1, "timer"); + if (piVar1 != NULL) { + iVar7 = *piVar1; + } + if (dComIfGp_getEventManager().getIsAddvance(param_1)) { + char acStack_98 [100]; + switch (local_b4) { + case 0: + daNpcT_offTmpBit(0x27); + field_0xb50.setNo(7, 0.0f, 0, 0); + field_0xb74.setNo(11, 0.0f, 1, 0); + field_0xba8.lookNone(1); + home.angle.y += 0x8000; + setAngle(home.angle.y); + initTalk(0xcf, NULL); + strcpy(acStack_98, l_evtList[9].eventName); + strcat(acStack_98, "@"); + dComIfGp_getEvent().setSkipZev(this, acStack_98); + dComIfGp_getEvent().onSkipFade(); + dComIfGp_getVibration().StartShock( 9, 15, cXyz(0.0f, 1.0f, 0.0f)); + break; + case 1: + field_0xdc4 = iVar7; + break; + case 2: + initTalk(0xcf, NULL); + break; + case 3: + if (iVar7 < 1) { + iVar7 = 1; + } + field_0xdc4 = iVar7; + break; + case 4: + field_0xb74.setNo(13, -1.0f, 0, 0); + break; + case 5: + field_0xdc4 = iVar7; + break; + case 6: + field_0xdc4 = iVar7; + fopAc_ac_c* actor_p = field_0x10c8[2].getActorP(); + JUT_ASSERT(3005, 0 != actor_p); + ((daNPC_TK_c*)actor_p)->setAttackLink(); + field_0x1722 = 1; + break; + case 99: + field_0xb74.setNo(13, 0.0, 1, + 0); + dComIfGs_onSaveSwitch(0x2b); + actor_p = field_0x10c8[2].getActorP(); + JUT_ASSERT(3014, 0 != actor_p); + ((daNPC_TK_c*)actor_p)->setQuickHanjoHand(); + field_0x1722 = 1; + daNpcT_onTmpBit(0x27); + daNpcT_onEvtBit(0xcf); + mFlow.remove(); + break; + } + } + switch (local_b4) { + case 0: + if (talkProc(NULL, 0, NULL, 0) && mFlow.checkEndFlow()) { + daNpcT_onTmpBit(0x27); + rv = 1; + } + break; + case 1: + if (cLib_calcTimer(&field_0xdc4) == 0) { + rv = 1; + } + break; + case 2: + field_0xba8.lookCamera(0); + if (talkProc(NULL, 0, NULL, 0) && mFlow.checkEndFlow()) { + rv = 1; + } + break; + case 3: + if (field_0xdc4 != 0) { + if (cLib_calcTimer(&field_0xdc4) == 0) { + field_0xb74.setNo(12, 8.0f, 0, 0); + actor_p = field_0x10c8[2].getActorP(); + JUT_ASSERT(3068, 0 != actor_p); + ((daNPC_TK_c*)actor_p)->setHanjoHand(); + } + } else if (field_0xb74.checkEndSequence()) { + rv = 1; + } else if (mpMorf[0]->checkFrame(8.0f)) { + Z2GetAudioMgr()->seStart(Z2SE_PLAY_REED_TOBIKUSA, ¤t.pos, 0, 0, 1.0f, 1.0f, + -1.0f, -1.0f, 0); + } + break; + case 4: + field_0xba8.lookNone(0); + actor_p = field_0x10c8[2].getActorP(); + JUT_ASSERT(3090, 0 != actor_p); + if (((daNPC_TK_c*)actor_p)->isHanjoHand()) { + rv = 1; + } + break; + case 5: + field_0xba8.lookCamera(0); + if (cLib_calcTimer(&field_0xdc4) == 0) { + rv = 1; + } + break; + case 6: + if (cLib_calcTimer(&field_0xdc4) == 0) { + daNpcT_onEvtBit(0xcf); + rv = 1; + } + break; + case 99: + rv = 1; + break; + } + + if ((local_b4 == 1 && rv == 1) || 1 < local_b4) { + dKy_set_actcol_ratio(1.0f); + dKy_set_bgcol_ratio(1.0f); + dKy_set_fogcol_ratio(1.0f); + } + return rv; } -/* ############################################################################################## */ -/* 80A007D0-80A007D4 0001D0 0004+00 0/1 0/0 0/0 .rodata @6468 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6468 = 1400.0f; -COMPILER_STRIP_GATE(0x80A007D0, &lit_6468); -#pragma pop - -/* 80A007D4-80A007D8 0001D4 0004+00 0/1 0/0 0/0 .rodata @6469 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6469 = 600.0f; -COMPILER_STRIP_GATE(0x80A007D4, &lit_6469); -#pragma pop - -/* 80A007D8-80A007DC 0001D8 0004+00 0/1 0/0 0/0 .rodata @6470 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6470 = 180.0f; -COMPILER_STRIP_GATE(0x80A007D8, &lit_6470); -#pragma pop - -/* 80A007DC-80A007E0 0001DC 0004+00 0/1 0/0 0/0 .rodata @6471 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6471 = 200.0f; -COMPILER_STRIP_GATE(0x80A007DC, &lit_6471); -#pragma pop - /* 809FD3C0-809FD86C 004420 04AC+00 1/0 0/0 0/0 .text cutDive__13daNpc_Hanjo_cFi */ -void daNpc_Hanjo_c::cutDive(int param_0) { - // NONMATCHING +int daNpc_Hanjo_c::cutDive(int param_1) { + cXyz cStack_2c; + csXyz cStack_34; + int rv = 0; + int iVar5 = -1; + int uVar4 = 0; + int* piVar1 = dComIfGp_evmng_getMyIntegerP(param_1, "prm"); + if (piVar1 != NULL) { + iVar5 = *piVar1; + } + int* puVar2 = dComIfGp_evmng_getMyIntegerP(param_1, "timer"); + if (puVar2 != NULL) { + uVar4 = *puVar2; + } + if (dComIfGp_getEventManager().getIsAddvance(param_1)) { + switch(iVar5) { + case 0: + cStack_2c.set(1400.0f, 600.0f, 180.0f); + if (daPy_getPlayerActorClass()->checkPlayerFly()) { + cStack_2c.y += 200.0f; + } + cStack_34.y = cLib_targetAngleY(&cStack_2c, ¤t.pos); + daPy_getPlayerActorClass()->setPlayerPosAndAngle(&cStack_2c, cStack_34.y, 0); + dComIfGp_evmng_setGoal(&cStack_2c); + initTalk(0xd0, NULL); + field_0xdc4 = uVar4; + break; + case 1: + fopAc_ac_c* actor_p = field_0x10c8[2].getActorP(); + if (actor_p != NULL){ + ((daNPC_TK_c*)actor_p)->setAway(); + } + break; + case 2: + field_0xb50.setNo(6, -1.0f, 0, 0); + field_0xb74.setNo(17, -1.0f, 0, + 0); + field_0xba8.lookNone(1); + field_0x580.startCreatureVoice(Z2SE_M077_HANJO_05, -1); + break; + case 3: + initDive(); + break; + } + } + switch(iVar5) { + case 0: + if (cLib_calcTimer(&field_0xdc4) == 0) { + field_0xba8.lookPlayer(0); + if (field_0xdc8 == field_0xd78.y) { + rv = 1; + } else if (mType == TYPE_1) { + step(field_0xdc8, 7, 10, 0xf, 0); + } else { + step(field_0xdc8, 7, 0xe, 0xf, 0); + } + } + break; + case 1: + if (talkProc(NULL, 0, NULL, 0) && mFlow.checkEndFlow()) { + rv = 1; + } + break; + case 2: + cStack_2c.set(0.0f, 0.0f, 50.0f); + mDoMtx_stack_c::YrotS(field_0xd78.y); + mDoMtx_stack_c::multVec(&cStack_2c, &cStack_2c); + cStack_2c += current.pos; + cStack_2c.y = attention_info.position.y; + field_0x930.SetPos(&cStack_2c); + f32 dVar7 = dComIfG_Bgsp().GroundCross(&field_0x930); + if ((dVar7 - field_0xdf4) < -daNpc_Hanjo_Param_c::m.field_0x18) { + rv = 1; + } + if (mType == TYPE_1) { + cStack_34.y = home.angle.y - 0x8000; + if (daNpcT_chkEvtBit(0xcf)) { + cStack_34.y = home.angle.y + 0x4000; + } else { + cStack_34.y = home.angle.y - 0x4000; + } + } else { + cStack_34.y = home.angle.y; + } + cLib_addCalcAngleS2(¤t.angle.y, cStack_34.y, 4, 0x800); + shape_angle.y = current.angle.y; + field_0xd78.y = current.angle.y; + cLib_chaseF(&speedF, daNpc_Hanjo_Param_c::m.field_0x90, 1.0f); + break; + case 3: + if (field_0x1720) { + if (mType == TYPE_1) { + daNpcT_onEvtBit(0xd0); + } + rv = 1; + } + break; + } + return rv; } -/* ############################################################################################## */ -/* 80A007E0-80A007E4 0001E0 0004+00 0/1 0/0 0/0 .rodata @6683 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6683 = 150.0f; -COMPILER_STRIP_GATE(0x80A007E0, &lit_6683); -#pragma pop - -/* 80A007E4-80A007E8 0001E4 0004+00 0/1 0/0 0/0 .rodata @6684 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6684 = -150.0f; -COMPILER_STRIP_GATE(0x80A007E4, &lit_6684); -#pragma pop - -/* 80A007E8-80A007EC 0001E8 0004+00 0/1 0/0 0/0 .rodata @6685 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6685 = -40.0f; -COMPILER_STRIP_GATE(0x80A007E8, &lit_6685); -#pragma pop - /* 809FD86C-809FDEFC 0048CC 0690+00 2/0 0/0 0/0 .text wait__13daNpc_Hanjo_cFPv */ -void daNpc_Hanjo_c::wait(void* param_0) { - // NONMATCHING +int daNpc_Hanjo_c::wait(void* param_0) { + switch(field_0xe22) { + case 0: + case 1: + if (!field_0xd08.checkStagger()) { + switch (mType) { + case TYPE_0: + if (field_0x1721 != 0) { + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(19, -1.0f, 0, 0); + } else { + field_0xb50.setNo(7, -1.0f, 0, 0); + if (field_0xb98.getActorP() != NULL || daNpcT_chkEvtBit(0xab) || + daNpcT_chkEvtBit(0xb7)) + { + field_0xb74.setNo(0, -1.0f, 0, 0); + } else { + field_0xb74.setNo(2, -1.0f, 0, 0); + } + } + break; + default: + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(0, -1.0f, 0, 0); + break; + } + field_0xe22 = 2; + } + case 2: + switch(mType) { + case TYPE_0: + if (chkPointInArea(daPy_getPlayerActorClass()->current.pos, current.pos, + daNpc_Hanjo_Param_c::m.field_0x54, 150.0f, + -150.0f, 0)) { + if (daPy_getPlayerActorClass()->checkBeeChildDrink()) { + field_0xe32 = 1; + field_0x1723 = 1; + } + } + break; + case TYPE_1: + break; + case TYPE_2: + if (daPy_py_c::i_checkNowWolf() && mCyl2.ChkCoHit()) { + if (!daPy_getPlayerActorClass()->checkPlayerFly() || + daPy_getPlayerActorClass()->checkAutoJump() || + daPy_getPlayerActorClass()->checkWolfTriggerJump()) + { + field_0xe30 = 10; + } + } + } + + if (!field_0xd08.checkStagger()) { + if (mType == TYPE_0) { + if ((daNpcT_chkEvtBit(0xab) || + daNpcT_chkEvtBit(0xb7)) && field_0x1721 == 0 && field_0xb74.getNo() == 2) + { + field_0xb74.setNo(0, -1.0, 0, 0); + } + } else if (mType == TYPE_3) { + field_0xb98.remove(); + } + if (field_0xb98.getActorP() != NULL) { + field_0xba8.lookPlayer(0); + if (!chkActorInSight(field_0xb98.getActorP(), field_0xdf8, + field_0xd78.y)) { + field_0xba8.lookNone(0); + } + if (!srchPlayerActor() && home.angle.y == field_0xd78.y) { + field_0xe22 = 1; + } + } else { + field_0xba8.lookNone(0); + if (home.angle.y != field_0xd78.y) { + if (field_0xe34 != 0) { + if (field_0x1721 != 0) { + if (step(home.angle.y, -1, -1, 15, 0)) { + field_0xe22 = 1; + } + } else { + if (step(home.angle.y, 7, 14, 15, 0)) { + field_0xe22 = 1; + } + } + } else { + setAngle(home.angle.y); + field_0xe22 = 1; + } + attention_info.flags = 0; + } else { + srchPlayerActor(); + } + } + switch(field_0xba8.getMode()) { + case 1: + switch (mType) { + case TYPE_0: + if (field_0x1721 == 0 && field_0xb74.getNo() == 2) { + field_0xb74.setNo(0, -1.0f, 0, 0); + } + break; + } + break; + case 0: + switch (mType) { + case TYPE_3: + fopAc_ac_c* actor_p = field_0x10c8[1].getActorP(); + if (actor_p != NULL) { + field_0xba8.lookActor(actor_p, -40.0f, 0); + } + break; + } + break; + } + } + case 3: + default: + break; + } + return 1; } -/* ############################################################################################## */ -/* 80A007EC-80A007F0 0001EC 0004+00 0/2 0/0 0/0 .rodata @6795 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6795 = 1.5f; -COMPILER_STRIP_GATE(0x80A007EC, &lit_6795); -#pragma pop - -/* 80A007F0-80A007F4 0001F0 0004+00 0/1 0/0 0/0 .rodata @6796 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6796 = 1000.0f; -COMPILER_STRIP_GATE(0x80A007F0, &lit_6796); -#pragma pop - -/* 80A007F4-80A007F8 0001F4 0004+00 0/1 0/0 0/0 .rodata @6797 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_6797 = -1000.0f; -COMPILER_STRIP_GATE(0x80A007F4, &lit_6797); -#pragma pop - /* 809FDEFC-809FE2E0 004F5C 03E4+00 1/0 0/0 0/0 .text throwStone__13daNpc_Hanjo_cFPv */ -void daNpc_Hanjo_c::throwStone(void* param_0) { - // NONMATCHING +int daNpc_Hanjo_c::throwStone(void* param_0) { + int sVar4 = daNpc_Hanjo_Param_c::m.field_0xae; + switch(field_0xe22) { + case 0: + case 1: + if (!field_0xd08.checkStagger()) { + if (daNpcT_chkEvtBit(0x8b)) { + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(0, -1.0f, 0, 0); + } else { + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(2, -1.0f, 0, 0); + field_0x1704 = cLib_getRndValue(sVar4 * 0.5f, sVar4 * 1.5f); + } + field_0xe22 = 2; + } + case 2: + if (daNpcT_chkEvtBit(0x8b) && !daNpcT_chkEvtBit(0xad) && !daNpcT_chkEvtBit(0xb7)) { + if (chkPointInArea(daPy_getPlayerActorClass()->current.pos, current.pos, + daNpc_Hanjo_Param_c::m.field_0xa4, 1000.0f, -1000.0f, 0) == false) + { + field_0xe30 = 8; + } + } + if (!field_0xd08.checkStagger()) { + if (daNpcT_chkEvtBit(0x8b)) { + field_0xba8.lookPlayer(0); + lookround(fopAcM_searchPlayerAngleY(this)); + } else { + field_0xba8.lookNone(0); + if (home.angle.y != field_0xd78.y) { + if (field_0xe34 != 0) { + if (step(home.angle.y, 7, 14, 15, 0)) { + field_0xe22 = 1; + } + } else { + setAngle(home.angle.y); + field_0xe22 = 1; + } + attention_info.flags = 0; + } else { + if (field_0x1704 != 0) { + if (cLib_calcTimer(&field_0x1704) == 0) { + field_0x1708 = (g_Counter.mCounter0 & 1) + 1; + initShoot(0); + field_0x170c = 0xffffffff; + } + } else { + if (shoot(0)) { + if (field_0x1708 != 0) { + field_0xb74.setNo(15, -1.0f, 1, 0); + cLib_calcTimer(&field_0x1708); + field_0x170c = 0xffffffff; + } else { + field_0xe22 = 1; + } + } + } + } + + } + } + break; + case 3: + default: + break; + } + + return 1; } -/* ############################################################################################## */ -/* 80A007F8-80A007F8 0001F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80A00931 = "toal_enter01"; -#pragma pop - /* 809FE2E0-809FEAEC 005340 080C+00 1/0 0/0 0/0 .text takayose__13daNpc_Hanjo_cFPv */ -void daNpc_Hanjo_c::takayose(void* param_0) { - // NONMATCHING +int daNpc_Hanjo_c::takayose(void* param_0) { + f32 dVar8 = daNpc_Hanjo_Param_c::m.field_0xae; + cXyz cStack_50; + cXyz cStack_5c; + switch (field_0xe22) { + case 0: + case 1: + if (!field_0xd08.checkStagger()) { + if (mType == 1) { + if (daNpcT_chkEvtBit(0xcf)) { + field_0xb50.setNo(0, -1.0f, 0, 0); + field_0xb74.setNo(13, -1.0f, 0, 0); + field_0x1714 = 0; + } else { + if (field_0x1714 != 0) { + field_0xb50.setNo(0, -1.0f, 0, 0); + field_0xb74.setNo(0, -1.0f, 0, 0); + } else { + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(2, -1.0f, 0, 0); + } + } + } else { + field_0xb50.setNo(0, -1.0f, 0, 0); + field_0xb74.setNo(0, -1.0f, 0, 0); + } + field_0x1710 = cLib_getRndValue(dVar8 * 0.5f, dVar8 * 1.5f); + field_0xe22 = 2; + } + case 2: + field_0xe2d = 0; + dComIfG_play_c& play = g_dComIfG_gameInfo.play; + if (play.getEvent().runCheck()) { + if (strcmp("toal_enter01", play.getEvtManager().getRunEventName()) == 0) { + dComIfGp_event_setTalkPartner(this); + field_0xe2d = 1; + } + } + if (mType == TYPE_1 && !daNpcT_chkEvtBit(0xcf) && field_0x10c8[2].getActorP() != NULL) { + if (!daPy_getPlayerActorClass()->checkPlayerFly()) { + daTag_EvtArea_c* evtArea = (daTag_EvtArea_c*)field_0x10c8[3].getActorP(); + if (evtArea != NULL) { + if (evtArea->chkPointInArea(daPy_getPlayerActorClass()->current.pos)) { + field_0xe30 = 9; + } + } + } + } + if (daPy_py_c::i_checkNowWolf() && mCyl2.ChkCoHit() != NULL) { + if (!daPy_getPlayerActorClass()->checkPlayerFly() || + daPy_getPlayerActorClass()->checkAutoJump() || + daPy_getPlayerActorClass()->checkWolfTriggerJump()) + { + field_0xe30 = 10; + } + } + if (!field_0xd08.checkStagger()) { + if (mType == 1) { + field_0xb98.remove(); + } + if (field_0xb98.getActorP() != NULL) { + field_0xba8.lookPlayer(0); + if (!chkActorInSight(field_0xb98.getActorP(), field_0xdf8, field_0xd78.y)) { + field_0xba8.lookNone(0); + } + if (!srchPlayerActor() && home.angle.y == field_0xd78.y) { + field_0xe22 = 1; + } + } else { + field_0xba8.lookNone(0); + if (home.angle.y != field_0xd78.y) { + if (field_0xe34 != 0) { + if (step(home.angle.y, 7, 14, 15, 0)) { + field_0xe22 = 1; + } + } else { + setAngle(home.angle.y); + field_0xe22 = 1; + } + attention_info.flags = 0; + } else { + if (mType == 1) { + if (daNpcT_chkEvtBit(0xcf)) { + u8 dVar1 = field_0x1722; + fopAc_ac_c* actor_p = field_0x10c8[2].getActorP(); + if (actor_p != NULL) { + field_0x1722 = commandToHawk(); + if (field_0x1722 != 0) { + field_0xba8.lookPlayer(0); + if (field_0xb74.getNo() != 11) { + field_0xb50.setNo(7, -1.0f, 0, 0); + field_0xb74.setNo(11, -1.0f, 0, 0); + } + } else { + if (dVar1 != 0) { + field_0x1714 = 0; + field_0xe22 = 1; + } else { + if (field_0x1714 != 0) { + field_0xba8.lookNone(0); + if (field_0xb74.getStepNo() > 0) { + field_0x1714++; + field_0x1714 &= 1; + field_0xe22 = 1; + } + } else { + field_0xba8.lookActor(actor_p, 0.0, 0); + if (((daNPC_TK_c*)actor_p)->isHanjoHand() && + cLib_calcTimer(&field_0x1710) == 0) + { + field_0xb74.setNo(9, -1.0, 0, 0); + field_0x1714 = field_0x1714 + 1; + field_0x1714 &= 1; + } + } + } + } + } + } else { + if (!g_dComIfG_gameInfo.play.getEvent().mEventStatus && + cLib_calcTimer(&field_0x1710) == 0) + { + field_0x1714++; + field_0x1714 &= 1; + field_0xe22 = 1; + } + } + } + srchPlayerActor(); + } + } + } + break; + case 3: + default: + break; + } + return 1; } /* 809FEAEC-809FED58 005B4C 026C+00 3/0 0/0 0/0 .text talk__13daNpc_Hanjo_cFPv */ -void daNpc_Hanjo_c::talk(void* param_0) { - // NONMATCHING +int daNpc_Hanjo_c::talk(void* param_0) { + switch(field_0xe22) { + case 0: + case 1: + if (!field_0xd08.checkStagger()) { + if (mType == TYPE_0 && field_0xb74.getNo() == 2) { + field_0xb74.setNo(0, -1.0f, 0, 0); + } + if (field_0x1723 != 0) { + initTalk(44, NULL); + field_0x1723 = 0; + } else { + initTalk(field_0xa7c, NULL); + } + field_0xe22 = 2; + } + case 2: + if (!field_0xd08.checkStagger()) { + if (field_0xa89 != 0 || field_0xdc8 == field_0xd78.y) { + if (talkProc(NULL, 0, NULL, 0) && mFlow.checkEndFlow()) { + field_0xb98.entry(daPy_getPlayerActorClass()); + dComIfGp_event_reset(); + field_0xe22 = 3; + } + field_0xba8.lookPlayer(0); + if (field_0xa89 != 0) { + field_0xba8.lookNone(0); + } + } else { + field_0xba8.lookPlayer(0); + if (field_0x1721 != 0) { + step(field_0xdc8, -1, -1, 15, 0); + } else { + step(field_0xdc8, 7, 14, 15, 0); + } + } + } + break; + case 3: + default: + break; + } + return 0; } /* 809FED58-809FED78 005DB8 0020+00 1/0 0/0 0/0 .text daNpc_Hanjo_Create__FPv */ -static void daNpc_Hanjo_Create(void* param_0) { - // NONMATCHING +static int daNpc_Hanjo_Create(void* i_this) { + return static_cast(i_this)->create(); } /* 809FED78-809FED98 005DD8 0020+00 1/0 0/0 0/0 .text daNpc_Hanjo_Delete__FPv */ -static void daNpc_Hanjo_Delete(void* param_0) { - // NONMATCHING +static int daNpc_Hanjo_Delete(void* i_this) { + return static_cast(i_this)->Delete(); } /* 809FED98-809FEDB8 005DF8 0020+00 1/0 0/0 0/0 .text daNpc_Hanjo_Execute__FPv */ -static void daNpc_Hanjo_Execute(void* param_0) { - // NONMATCHING +static int daNpc_Hanjo_Execute(void* i_this) { + return static_cast(i_this)->Execute(); } /* 809FEDB8-809FEDD8 005E18 0020+00 1/0 0/0 0/0 .text daNpc_Hanjo_Draw__FPv */ -static void daNpc_Hanjo_Draw(void* param_0) { - // NONMATCHING +static int daNpc_Hanjo_Draw(void* i_this) { + return static_cast(i_this)->Draw(); } /* 809FEDD8-809FEDE0 005E38 0008+00 1/0 0/0 0/0 .text daNpc_Hanjo_IsDelete__FPv */ -static bool daNpc_Hanjo_IsDelete(void* param_0) { - return true; +static int daNpc_Hanjo_IsDelete(void* i_this) { + return 1; } -/* 809FEDE0-809FEE10 005E40 0030+00 1/0 0/0 0/0 .text calc__11J3DTexNoAnmCFPUs */ -// void J3DTexNoAnm::calc(u16* param_0) const { -extern "C" void calc__11J3DTexNoAnmCFPUs() { - // NONMATCHING -} +AUDIO_INSTANCES; -/* 809FEE10-809FEE58 005E70 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */ -// cCcD_GStts::~cCcD_GStts() { -extern "C" void __dt__10cCcD_GSttsFv() { - // NONMATCHING -} - -/* 809FEE58-809FF1E0 005EB8 0388+00 1/1 0/0 0/0 .text __dt__8daNpcT_cFv */ -// daNpcT_c::~daNpcT_c() { -extern "C" void __dt__8daNpcT_cFv() { - // NONMATCHING -} - -/* 809FF1E0-809FF21C 006240 003C+00 4/4 0/0 0/0 .text __dt__4cXyzFv */ -// cXyz::~cXyz() { -extern "C" void __dt__4cXyzFv() { - // NONMATCHING -} - -/* 809FF21C-809FF258 00627C 003C+00 2/2 0/0 0/0 .text __dt__5csXyzFv */ -// csXyz::~csXyz() { -extern "C" void __dt__5csXyzFv() { - // NONMATCHING -} - -/* 809FF258-809FF2A0 0062B8 0048+00 3/2 0/0 0/0 .text __dt__18daNpcT_ActorMngr_cFv */ -// daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { -extern "C" void __dt__18daNpcT_ActorMngr_cFv() { - // NONMATCHING -} - -/* 809FF2A0-809FF2E8 006300 0048+00 1/0 0/0 0/0 .text __dt__13daNpcT_Path_cFv */ -// daNpcT_Path_c::~daNpcT_Path_c() { -extern "C" void __dt__13daNpcT_Path_cFv() { - // NONMATCHING -} - -/* 809FF2E8-809FF324 006348 003C+00 1/1 0/0 0/0 .text __ct__18daNpcT_ActorMngr_cFv */ -// daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() { -extern "C" void __ct__18daNpcT_ActorMngr_cFv() { - // NONMATCHING -} - -/* 809FF324-809FF36C 006384 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */ -// cM3dGCyl::~cM3dGCyl() { -extern "C" void __dt__8cM3dGCylFv() { - // NONMATCHING -} - -/* 809FF36C-809FF3B4 0063CC 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */ -// cM3dGAab::~cM3dGAab() { -extern "C" void __dt__8cM3dGAabFv() { - // NONMATCHING -} - -/* 809FF3B4-809FF7B8 006414 0404+00 1/1 0/0 0/0 .text - * __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc - */ -// daNpcT_c::daNpcT_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) { -extern "C" void __ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc() { - // NONMATCHING -} - -/* 809FF7B8-809FF7BC 006818 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -// csXyz::csXyz() { -extern "C" void __ct__5csXyzFv() { - /* empty function */ -} - -/* 809FF7BC-809FF8B8 00681C 00FC+00 1/0 0/0 0/0 .text __dt__15daNpcT_JntAnm_cFv */ -// daNpcT_JntAnm_c::~daNpcT_JntAnm_c() { -extern "C" void __dt__15daNpcT_JntAnm_cFv() { - // NONMATCHING -} - -/* 809FF8B8-809FF8BC 006918 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -// cXyz::cXyz() { -extern "C" void __ct__4cXyzFv() { - /* empty function */ -} - -/* 809FF8BC-809FF904 00691C 0048+00 1/0 0/0 0/0 .text __dt__22daNpcT_MotionSeqMngr_cFv */ -// daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() { -extern "C" void __dt__22daNpcT_MotionSeqMngr_cFv() { - // NONMATCHING -} - -/* 809FF904-809FF974 006964 0070+00 1/0 0/0 0/0 .text __dt__12dBgS_AcchCirFv */ -// dBgS_AcchCir::~dBgS_AcchCir() { -extern "C" void __dt__12dBgS_AcchCirFv() { - // NONMATCHING -} - -/* 809FF974-809FF9D0 0069D4 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */ -// dCcD_GStts::~dCcD_GStts() { -extern "C" void __dt__10dCcD_GSttsFv() { - // NONMATCHING -} - -/* 809FF9D0-809FFA40 006A30 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */ -// dBgS_ObjAcch::~dBgS_ObjAcch() { -extern "C" void __dt__12dBgS_ObjAcchFv() { - // NONMATCHING -} - -/* 809FFA40-809FFA88 006AA0 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */ -// J3DFrameCtrl::~J3DFrameCtrl() { -extern "C" void __dt__12J3DFrameCtrlFv() { - // NONMATCHING -} - -/* 809FFA88-809FFBA4 006AE8 011C+00 1/1 0/0 0/0 .text setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs */ -// void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, -// s16 param_4) { -extern "C" void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs() { - // NONMATCHING -} - -/* 809FFBA4-809FFDAC 006C04 0208+00 1/1 0/0 0/0 .text setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs */ -// void daNpcT_JntAnm_c::setEyeAngleX(cXyz param_0, f32 param_1, s16 param_2) { -extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs() { - // NONMATCHING -} - -/* 809FFDAC-809FFDB0 006E0C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -// void daNpcT_c::ctrlSubFaceMotion(int param_0) { -extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { - /* empty function */ -} - -/* 809FFDB0-809FFDB8 006E10 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv - */ -// bool daNpcT_c::getEyeballLMaterialNo() { -extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { - return false; -} - -/* 809FFDB8-809FFDC0 006E18 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv - */ -// bool daNpcT_c::getEyeballRMaterialNo() { -extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { - return false; -} - -/* 809FFDC0-809FFDC8 006E20 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -// bool daNpcT_c::evtEndProc() { -extern "C" bool evtEndProc__8daNpcT_cFv() { - return true; -} - -/* 809FFDC8-809FFDD0 006E28 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -// bool daNpcT_c::chkXYItems() { -extern "C" bool chkXYItems__8daNpcT_cFv() { - return false; -} - -/* 809FFDD0-809FFDE8 006E30 0018+00 1/0 0/0 0/0 .text decTmr__8daNpcT_cFv */ -// void daNpcT_c::decTmr() { -extern "C" void decTmr__8daNpcT_cFv() { - // NONMATCHING -} - -/* 809FFDE8-809FFDEC 006E48 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -// void daNpcT_c::drawGhost() { -extern "C" void drawGhost__8daNpcT_cFv() { - /* empty function */ -} - -/* 809FFDEC-809FFDF4 006E4C 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ -// bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { -extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { - return true; -} - -/* 809FFDF4-809FFDFC 006E54 0008+00 1/0 0/0 0/0 .text afterSetMotionAnm__8daNpcT_cFiifi - */ -// bool daNpcT_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { -extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi() { - return true; -} - -/* 809FFDFC-809FFE2C 006E5C 0030+00 1/0 0/0 0/0 .text - * getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c */ -// void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { -extern "C" void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c() { - // NONMATCHING -} - -/* 809FFE2C-809FFE5C 006E8C 0030+00 1/0 0/0 0/0 .text - * getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c */ -// void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { -extern "C" void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c() { - // NONMATCHING -} - -/* 809FFE5C-809FFE60 006EBC 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -// void daNpcT_c::changeAnm(int* param_0, int* param_1) { -extern "C" void changeAnm__8daNpcT_cFPiPi() { - /* empty function */ -} - -/* 809FFE60-809FFE64 006EC0 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -// void daNpcT_c::changeBck(int* param_0, int* param_1) { -extern "C" void changeBck__8daNpcT_cFPiPi() { - /* empty function */ -} - -/* 809FFE64-809FFE68 006EC4 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -// void daNpcT_c::changeBtp(int* param_0, int* param_1) { -extern "C" void changeBtp__8daNpcT_cFPiPi() { - /* empty function */ -} - -/* 809FFE68-809FFE6C 006EC8 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -// void daNpcT_c::changeBtk(int* param_0, int* param_1) { -extern "C" void changeBtk__8daNpcT_cFPiPi() { - /* empty function */ -} - -/* 809FFE6C-809FFE88 006ECC 001C+00 5/5 0/0 0/0 .text cLib_calcTimer__FPi */ -extern "C" void func_809FFE6C(void* _this, int* param_0) { - // NONMATCHING -} - -/* 809FFE88-809FFEC4 006EE8 003C+00 2/2 0/0 0/0 .text cLib_getRndValue__Fff */ -extern "C" void func_809FFE88(void* _this, f32 param_0, f32 param_1) { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A01270-80A0127C 000930 000C+00 2/2 0/0 0/0 .data __vt__19daNpc_Hanjo_Param_c */ -SECTION_DATA extern void* __vt__19daNpc_Hanjo_Param_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__19daNpc_Hanjo_Param_cFv, +/* 80A010A8-80A010C8 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Hanjo_MethodTable */ +static actor_method_class daNpc_Hanjo_MethodTable = { + (process_method_func)daNpc_Hanjo_Create, + (process_method_func)daNpc_Hanjo_Delete, + (process_method_func)daNpc_Hanjo_Execute, + (process_method_func)daNpc_Hanjo_IsDelete, + (process_method_func)daNpc_Hanjo_Draw, }; -/* 809FFEC4-809FFFD4 006F24 0110+00 0/0 1/0 0/0 .text __sinit_d_a_npc_hanjo_cpp */ -void __sinit_d_a_npc_hanjo_cpp() { - // NONMATCHING -} +/* 80A010C8-80A010F8 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_HANJO */ +extern actor_process_profile_definition g_profile_NPC_HANJO = { + fpcLy_CURRENT_e, // mLayerID + 7, // mListID + fpcPi_CURRENT_e, // mListPrio + PROC_NPC_HANJO, // mProcName + &g_fpcLf_Method.mBase, // sub_method + sizeof(daNpc_Hanjo_c), // mSize + 0, // mSizeOther + 0, // mParameters + &g_fopAc_Method.base, // sub_method + 341, // mPriority + &daNpc_Hanjo_MethodTable, // sub_method + 0x00040107, // mStatus + fopAc_NPC_e, // mActorType + fopAc_CULLBOX_CUSTOM_e, // cullType +}; -#pragma push -#pragma force_active on -REGISTER_CTORS(0x809FFEC4, __sinit_d_a_npc_hanjo_cpp); -#pragma pop -/* 809FFFD4-80A000A8 007034 00D4+00 2/2 0/0 0/0 .text __dt__18daNpc_HanjoStone_cFv */ -daNpc_HanjoStone_c::~daNpc_HanjoStone_c() { - // NONMATCHING -} - -/* 80A000A8-80A001FC 007108 0154+00 1/1 0/0 0/0 .text - * __ct__13daNpc_Hanjo_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc - */ -daNpc_Hanjo_c::daNpc_Hanjo_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) { - // NONMATCHING -} - -/* 80A001FC-80A002EC 00725C 00F0+00 1/1 0/0 0/0 .text __ct__18daNpc_HanjoStone_cFv */ -daNpc_HanjoStone_c::daNpc_HanjoStone_c() { - // NONMATCHING -} - -/* 80A002EC-80A00334 00734C 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGSphFv */ -// cM3dGSph::~cM3dGSph() { -extern "C" void __dt__8cM3dGSphFv() { - // NONMATCHING -} - -/* 80A00334-80A0033C 007394 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__13daNpc_Hanjo_cFv */ -s32 daNpc_Hanjo_c::getEyeballMaterialNo() { - return 2; -} - -/* 80A0033C-80A00358 00739C 001C+00 2/2 0/0 0/0 .text getPos__18daNpc_HanjoStone_cFv */ -void daNpc_HanjoStone_c::getPos() { - // NONMATCHING -} - -/* 80A00358-80A00374 0073B8 001C+00 1/1 0/0 0/0 .text getOld__18daNpc_HanjoStone_cFv */ -void daNpc_HanjoStone_c::getOld() { - // NONMATCHING -} - -/* 80A00374-80A004A8 0073D4 0134+00 1/1 0/0 0/0 .text posMoveF__18daNpc_HanjoStone_cFP10fopAc_ac_c - */ -void daNpc_HanjoStone_c::posMoveF(fopAc_ac_c* param_0) { - // NONMATCHING -} - -/* 80A004A8-80A004D0 007508 0028+00 1/1 0/0 0/0 .text setPos__18daNpc_HanjoStone_cF4cXyz - */ -void daNpc_HanjoStone_c::setPos(cXyz param_0) { - // NONMATCHING -} - -/* 80A004D0-80A004D8 007530 0008+00 1/0 0/0 0/0 .text getHeadJointNo__13daNpc_Hanjo_cFv - */ -s32 daNpc_Hanjo_c::getHeadJointNo() { - return 4; -} - -/* 80A004D8-80A004E0 007538 0008+00 1/0 0/0 0/0 .text getNeckJointNo__13daNpc_Hanjo_cFv - */ -s32 daNpc_Hanjo_c::getNeckJointNo() { - return 3; -} - -/* 80A004E0-80A004E8 007540 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__13daNpc_Hanjo_cFv */ -bool daNpc_Hanjo_c::getBackboneJointNo() { - return true; -} - -/* 80A004E8-80A00504 007548 001C+00 1/1 0/0 0/0 .text setAngle__18daNpc_HanjoStone_cF5csXyz */ -void daNpc_HanjoStone_c::setAngle(csXyz param_0) { - // NONMATCHING -} - -/* 80A00504-80A00514 007564 0010+00 1/0 0/0 0/0 .text checkChangeJoint__13daNpc_Hanjo_cFi - */ -void daNpc_Hanjo_c::checkChangeJoint(int param_0) { - // NONMATCHING -} - -/* 80A00514-80A00524 007574 0010+00 1/0 0/0 0/0 .text checkRemoveJoint__13daNpc_Hanjo_cFi - */ -void daNpc_Hanjo_c::checkRemoveJoint(int param_0) { - // NONMATCHING -} - -/* 80A00524-80A0052C 007584 0008+00 1/0 0/0 0/0 .text getFootLJointNo__13daNpc_Hanjo_cFv - */ -s32 daNpc_Hanjo_c::getFootLJointNo() { - return 22; -} - -/* 80A0052C-80A00534 00758C 0008+00 1/0 0/0 0/0 .text getFootRJointNo__13daNpc_Hanjo_cFv - */ -s32 daNpc_Hanjo_c::getFootRJointNo() { - return 26; -} - -/* 80A00534-80A0057C 007594 0048+00 2/1 0/0 0/0 .text __dt__19daNpc_Hanjo_Param_cFv */ -daNpc_Hanjo_Param_c::~daNpc_Hanjo_Param_c() { - // NONMATCHING -} - -/* 80A0057C-80A00584 0075DC 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */ -static void func_80A0057C() { - // NONMATCHING -} - -/* 80A00584-80A0058C 0075E4 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */ -static void func_80A00584() { - // NONMATCHING -} - -/* 80A0058C-80A005EC 0075EC 0060+00 1/1 0/0 0/0 .text chkPointInArea__15daTag_EvtArea_cF4cXyz */ -// void daTag_EvtArea_c::chkPointInArea(cXyz param_0) { -extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A012F4-80A012F8 000074 0004+00 0/0 0/0 0/0 .bss - * sInstance__40JASGlobalInstance<19JASDefaultBankTable> */ -#pragma push -#pragma force_active on -static u8 data_80A012F4[4]; -#pragma pop - -/* 80A012F8-80A012FC 000078 0004+00 0/0 0/0 0/0 .bss - * sInstance__35JASGlobalInstance<14JASAudioThread> */ -#pragma push -#pragma force_active on -static u8 data_80A012F8[4]; -#pragma pop - -/* 80A012FC-80A01300 00007C 0004+00 0/0 0/0 0/0 .bss sInstance__27JASGlobalInstance<7Z2SeMgr> */ -#pragma push -#pragma force_active on -static u8 data_80A012FC[4]; -#pragma pop - -/* 80A01300-80A01304 000080 0004+00 0/0 0/0 0/0 .bss sInstance__28JASGlobalInstance<8Z2SeqMgr> */ -#pragma push -#pragma force_active on -static u8 data_80A01300[4]; -#pragma pop - -/* 80A01304-80A01308 000084 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2SceneMgr> - */ -#pragma push -#pragma force_active on -static u8 data_80A01304[4]; -#pragma pop - -/* 80A01308-80A0130C 000088 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2StatusMgr> - */ -#pragma push -#pragma force_active on -static u8 data_80A01308[4]; -#pragma pop - -/* 80A0130C-80A01310 00008C 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2DebugSys> - */ -#pragma push -#pragma force_active on -static u8 data_80A0130C[4]; -#pragma pop - -/* 80A01310-80A01314 000090 0004+00 0/0 0/0 0/0 .bss - * sInstance__36JASGlobalInstance<15JAISoundStarter> */ -#pragma push -#pragma force_active on -static u8 data_80A01310[4]; -#pragma pop - -/* 80A01314-80A01318 000094 0004+00 0/0 0/0 0/0 .bss - * sInstance__35JASGlobalInstance<14Z2SoundStarter> */ -#pragma push -#pragma force_active on -static u8 data_80A01314[4]; -#pragma pop - -/* 80A01318-80A0131C 000098 0004+00 0/0 0/0 0/0 .bss - * sInstance__33JASGlobalInstance<12Z2SpeechMgr2> */ -#pragma push -#pragma force_active on -static u8 data_80A01318[4]; -#pragma pop - -/* 80A0131C-80A01320 00009C 0004+00 0/0 0/0 0/0 .bss sInstance__28JASGlobalInstance<8JAISeMgr> */ -#pragma push -#pragma force_active on -static u8 data_80A0131C[4]; -#pragma pop - -/* 80A01320-80A01324 0000A0 0004+00 0/0 0/0 0/0 .bss sInstance__29JASGlobalInstance<9JAISeqMgr> */ -#pragma push -#pragma force_active on -static u8 data_80A01320[4]; -#pragma pop - -/* 80A01324-80A01328 0000A4 0004+00 0/0 0/0 0/0 .bss - * sInstance__33JASGlobalInstance<12JAIStreamMgr> */ -#pragma push -#pragma force_active on -static u8 data_80A01324[4]; -#pragma pop - -/* 80A01328-80A0132C 0000A8 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2SoundMgr> - */ -#pragma push -#pragma force_active on -static u8 data_80A01328[4]; -#pragma pop - -/* 80A0132C-80A01330 0000AC 0004+00 0/0 0/0 0/0 .bss - * sInstance__33JASGlobalInstance<12JAISoundInfo> */ -#pragma push -#pragma force_active on -static u8 data_80A0132C[4]; -#pragma pop - -/* 80A01330-80A01334 0000B0 0004+00 0/0 0/0 0/0 .bss - * sInstance__34JASGlobalInstance<13JAUSoundTable> */ -#pragma push -#pragma force_active on -static u8 data_80A01330[4]; -#pragma pop - -/* 80A01334-80A01338 0000B4 0004+00 0/0 0/0 0/0 .bss - * sInstance__38JASGlobalInstance<17JAUSoundNameTable> */ -#pragma push -#pragma force_active on -static u8 data_80A01334[4]; -#pragma pop - -/* 80A01338-80A0133C 0000B8 0004+00 0/0 0/0 0/0 .bss - * sInstance__33JASGlobalInstance<12JAUSoundInfo> */ -#pragma push -#pragma force_active on -static u8 data_80A01338[4]; -#pragma pop - -/* 80A0133C-80A01340 0000BC 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2SoundInfo> - */ -#pragma push -#pragma force_active on -static u8 data_80A0133C[4]; -#pragma pop - -/* 80A01340-80A01344 0000C0 0004+00 0/0 0/0 0/0 .bss - * sInstance__34JASGlobalInstance<13Z2SoundObjMgr> */ -#pragma push -#pragma force_active on -static u8 data_80A01340[4]; -#pragma pop - -/* 80A01344-80A01348 0000C4 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2Audience> - */ -#pragma push -#pragma force_active on -static u8 data_80A01344[4]; -#pragma pop - -/* 80A01348-80A0134C 0000C8 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2FxLineMgr> - */ -#pragma push -#pragma force_active on -static u8 data_80A01348[4]; -#pragma pop - -/* 80A0134C-80A01350 0000CC 0004+00 0/0 0/0 0/0 .bss sInstance__31JASGlobalInstance<10Z2EnvSeMgr> - */ -#pragma push -#pragma force_active on -static u8 data_80A0134C[4]; -#pragma pop - -/* 80A01350-80A01354 0000D0 0004+00 0/0 0/0 0/0 .bss sInstance__32JASGlobalInstance<11Z2SpeechMgr> - */ -#pragma push -#pragma force_active on -static u8 data_80A01350[4]; -#pragma pop - -/* 80A01354-80A01358 0000D4 0004+00 0/0 0/0 0/0 .bss - * sInstance__34JASGlobalInstance<13Z2WolfHowlMgr> */ -#pragma push -#pragma force_active on -static u8 data_80A01354[4]; -#pragma pop - -/* 80A007F8-80A007F8 0001F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A007F8-80A007F8 0001F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_hoz.cpp b/src/d/actor/d_a_npc_hoz.cpp index 6d726583ef0..ecf62803f36 100644 --- a/src/d/actor/d_a_npc_hoz.cpp +++ b/src/d/actor/d_a_npc_hoz.cpp @@ -116,7 +116,7 @@ extern "C" void func_80A063B4(void* _this, int*); extern "C" void __sinit_d_a_npc_hoz_cpp(); extern "C" void __ct__11daNpc_Hoz_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__11daNpc_Hoz_cFv(); +extern "C" s32 getEyeballMaterialNo__11daNpc_Hoz_cFv(); extern "C" s32 getHeadJointNo__11daNpc_Hoz_cFv(); extern "C" s32 getNeckJointNo__11daNpc_Hoz_cFv(); extern "C" bool getBackboneJointNo__11daNpc_Hoz_cFv(); @@ -1780,16 +1780,17 @@ REGISTER_CTORS(0x80A063D0, __sinit_d_a_npc_hoz_cpp); /* 80A064E4-80A065A4 0050C4 00C0+00 1/1 0/0 0/0 .text * __ct__11daNpc_Hoz_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc */ -daNpc_Hoz_c::daNpc_Hoz_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) { +daNpc_Hoz_c::daNpc_Hoz_c(daNpcT_faceMotionAnmData_c const* param_1, + daNpcT_motionAnmData_c const* param_2, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_3, int param_4, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_5, int param_6, + daNpcT_evtData_c const* param_7, char** param_8) : + daNpcT_c(param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8) { // NONMATCHING } /* 80A065A4-80A065AC 005184 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__11daNpc_Hoz_cFv */ -bool daNpc_Hoz_c::getEyeballMaterialNo() { +s32 daNpc_Hoz_c::getEyeballMaterialNo() { return true; } @@ -1811,13 +1812,13 @@ s32 daNpc_Hoz_c::getBackboneJointNo() { /* 80A065C4-80A065D4 0051A4 0010+00 1/0 0/0 0/0 .text checkChangeJoint__11daNpc_Hoz_cFi */ -bool daNpc_Hoz_c::checkChangeJoint(int param_0) { +int daNpc_Hoz_c::checkChangeJoint(int param_0) { // NONMATCHING } /* 80A065D4-80A065E4 0051B4 0010+00 1/0 0/0 0/0 .text checkRemoveJoint__11daNpc_Hoz_cFi */ -bool daNpc_Hoz_c::checkRemoveJoint(int param_0) { +int daNpc_Hoz_c::checkRemoveJoint(int param_0) { // NONMATCHING } @@ -1837,4 +1838,4 @@ static void func_80A06634() { // NONMATCHING } -/* 80A06764-80A06764 000114 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A06764-80A06764 000114 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_impal.cpp b/src/d/actor/d_a_npc_impal.cpp index f4e2f4e387f..8ccba05d552 100644 --- a/src/d/actor/d_a_npc_impal.cpp +++ b/src/d/actor/d_a_npc_impal.cpp @@ -776,7 +776,7 @@ void daNpcImpal_c::setExpressionBtp(int param_0) { } /* 80A08B48-80A08CBC 001248 0174+00 1/0 0/0 0/0 .text setMotionAnm__12daNpcImpal_cFif */ -void daNpcImpal_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcImpal_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1569,4 +1569,4 @@ static void func_80A0C254() { // NONMATCHING } -/* 80A0C4C8-80A0C4C8 000258 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A0C4C8-80A0C4C8 000258 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_ins.cpp b/src/d/actor/d_a_npc_ins.cpp index 87ecb1cbc8c..b12152ef316 100644 --- a/src/d/actor/d_a_npc_ins.cpp +++ b/src/d/actor/d_a_npc_ins.cpp @@ -857,7 +857,7 @@ void daNpcIns_c::setExpressionBtp(int param_0) { } /* 80A0F618-80A0F78C 0014B8 0174+00 1/0 0/0 0/0 .text setMotionAnm__10daNpcIns_cFif */ -void daNpcIns_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcIns_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1845,4 +1845,4 @@ static void func_80A13D90() { // NONMATCHING } -/* 80A14168-80A14168 0003BC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A14168-80A14168 0003BC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_jagar.cpp b/src/d/actor/d_a_npc_jagar.cpp index 273e5b56411..5fcb41ada5a 100644 --- a/src/d/actor/d_a_npc_jagar.cpp +++ b/src/d/actor/d_a_npc_jagar.cpp @@ -108,7 +108,7 @@ extern "C" void func_80A1A05C(void* _this, f32, f32); extern "C" void __sinit_d_a_npc_jagar_cpp(); extern "C" void __ct__13daNpc_Jagar_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__13daNpc_Jagar_cFv(); +extern "C" s32 getEyeballMaterialNo__13daNpc_Jagar_cFv(); extern "C" s32 getHeadJointNo__13daNpc_Jagar_cFv(); extern "C" s32 getNeckJointNo__13daNpc_Jagar_cFv(); extern "C" bool getBackboneJointNo__13daNpc_Jagar_cFv(); @@ -1811,7 +1811,7 @@ daNpc_Jagar_c::daNpc_Jagar_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80A1A274-80A1A27C 005C54 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__13daNpc_Jagar_cFv */ -bool daNpc_Jagar_c::getEyeballMaterialNo() { +s32 daNpc_Jagar_c::getEyeballMaterialNo() { return true; } @@ -2043,4 +2043,4 @@ static u8 data_80A1AEA8[4]; static u8 data_80A1AEAC[4]; #pragma pop -/* 80A1A49C-80A1A49C 00016C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A1A49C-80A1A49C 00016C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_kakashi.cpp b/src/d/actor/d_a_npc_kakashi.cpp index 32345ff8df8..cca293bf21f 100644 --- a/src/d/actor/d_a_npc_kakashi.cpp +++ b/src/d/actor/d_a_npc_kakashi.cpp @@ -76,7 +76,7 @@ extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv(); extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void afterJntAnm__8daNpcT_cFi(); extern "C" void setAfterTalkMotion__8daNpcT_cFv(); extern "C" void afterMoved__8daNpcT_cFv(); @@ -1371,16 +1371,6 @@ extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 8054E630-8054E638 0033B0 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 8054E638-8054E640 0033B8 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 8054E640-8054E648 0033C0 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__8daNpcT_cFv */ s32 daNpcT_c::getBackboneJointNo() { return -1; @@ -1420,12 +1410,6 @@ extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } -/* 8054E678-8054E680 0033F8 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 8054E680-8054E684 003400 0004+00 1/0 0/0 0/0 .text afterJntAnm__8daNpcT_cFi */ void daNpcT_c::afterJntAnm(int param_0) { /* empty function */ @@ -1768,4 +1752,4 @@ static u8 data_8054F2A0[4]; static u8 data_8054F2A4[4]; #pragma pop -/* 8054EBD0-8054EBD0 00010C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 8054EBD0-8054EBD0 00010C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_kasi_hana.cpp b/src/d/actor/d_a_npc_kasi_hana.cpp index 52924c22dbb..6320a87fc10 100644 --- a/src/d/actor/d_a_npc_kasi_hana.cpp +++ b/src/d/actor/d_a_npc_kasi_hana.cpp @@ -1173,7 +1173,7 @@ void daNpcKasiHana_c::setAttnPos() { /* 80A1CED0-80A1CFA0 002010 00D0+00 1/0 0/0 0/0 .text setMotionAnm__15daNpcKasiHana_cFif */ -void daNpcKasiHana_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcKasiHana_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2406,4 +2406,4 @@ static u8 data_80A218C0[4]; static u8 data_80A218C4[4]; #pragma pop -/* 80A21358-80A21358 0002D8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A21358-80A21358 0002D8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_kasi_kyu.cpp b/src/d/actor/d_a_npc_kasi_kyu.cpp index 756e7d00a34..88faf6c77d4 100644 --- a/src/d/actor/d_a_npc_kasi_kyu.cpp +++ b/src/d/actor/d_a_npc_kasi_kyu.cpp @@ -1054,7 +1054,7 @@ void daNpcKasiKyu_c::setAttnPos() { /* 80A22984-80A22A54 0010A4 00D0+00 1/0 0/0 0/0 .text setMotionAnm__14daNpcKasiKyu_cFif */ -void daNpcKasiKyu_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcKasiKyu_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2049,4 +2049,4 @@ static u8 data_80A260C8[4]; static u8 data_80A260CC[4]; #pragma pop -/* 80A25B0C-80A25B0C 000254 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A25B0C-80A25B0C 000254 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_kasi_mich.cpp b/src/d/actor/d_a_npc_kasi_mich.cpp index 1c7f08a1c19..4cf1943abd8 100644 --- a/src/d/actor/d_a_npc_kasi_mich.cpp +++ b/src/d/actor/d_a_npc_kasi_mich.cpp @@ -1055,7 +1055,7 @@ void daNpcKasiMich_c::setAttnPos() { /* 80A27184-80A27254 0010A4 00D0+00 1/0 0/0 0/0 .text setMotionAnm__15daNpcKasiMich_cFif */ -void daNpcKasiMich_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcKasiMich_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2035,4 +2035,4 @@ static u8 data_80A2A858[4]; static u8 data_80A2A85C[4]; #pragma pop -/* 80A2A298-80A2A298 00024C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A2A298-80A2A298 00024C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_kn.cpp b/src/d/actor/d_a_npc_kn.cpp index 8b318a33aa2..1fbd557bb7d 100644 --- a/src/d/actor/d_a_npc_kn.cpp +++ b/src/d/actor/d_a_npc_kn.cpp @@ -179,7 +179,7 @@ extern "C" void getFaceMotionAnm__10daNpc_Kn_cF26daNpcT_faceMotionAnmData_c(); extern "C" void getMotionAnm__10daNpc_Kn_cF22daNpcT_motionAnmData_c(); extern "C" void __ct__10daNpc_Kn_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__10daNpc_Kn_cFv(); +extern "C" s32 getEyeballMaterialNo__10daNpc_Kn_cFv(); extern "C" bool getEyeballLMaterialNo__10daNpc_Kn_cFv(); extern "C" bool getEyeballRMaterialNo__10daNpc_Kn_cFv(); extern "C" void func_80A3BD2C(void* _this, s16*); @@ -4595,12 +4595,12 @@ void daNpc_Kn_c::clrParam() { /* 80A3A568-80A3A7C0 00FC48 0258+00 2/2 0/0 0/0 .text setFaceMotionAnm__10daNpc_Kn_cFib */ -void daNpc_Kn_c::setFaceMotionAnm(int param_0, bool param_1) { +bool daNpc_Kn_c::setFaceMotionAnm(int param_0, bool param_1) { // NONMATCHING } /* 80A3A7C0-80A3AA58 00FEA0 0298+00 2/2 0/0 0/0 .text setMotionAnm__10daNpc_Kn_cFifi */ -void daNpc_Kn_c::setMotionAnm(int param_0, f32 param_1, int param_2) { +bool daNpc_Kn_c::setMotionAnm(int param_0, f32 param_1, int param_2) { // NONMATCHING } @@ -4756,7 +4756,7 @@ daNpc_Kn_c::daNpc_Kn_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80A3BD14-80A3BD1C 0113F4 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__10daNpc_Kn_cFv */ -bool daNpc_Kn_c::getEyeballMaterialNo() { +s32 daNpc_Kn_c::getEyeballMaterialNo() { return false; } @@ -5280,4 +5280,4 @@ static u8 data_80A43470[4]; static u8 data_80A43474[4]; #pragma pop -/* 80A40AF8-80A40AF8 000230 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A40AF8-80A40AF8 000230 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_knj.cpp b/src/d/actor/d_a_npc_knj.cpp index 0a25e69489b..b504dd4c48c 100644 --- a/src/d/actor/d_a_npc_knj.cpp +++ b/src/d/actor/d_a_npc_knj.cpp @@ -56,7 +56,7 @@ extern "C" void __dt__12dBgS_AcchCirFv(); extern "C" void __dt__10dCcD_GSttsFv(); extern "C" void __dt__12dBgS_ObjAcchFv(); extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" bool checkChangeJoint__8daNpcT_cFi(); extern "C" bool checkRemoveJoint__8daNpcT_cFi(); @@ -789,28 +789,12 @@ extern "C" void __dt__12J3DFrameCtrlFv() { // NONMATCHING } -/* 80A452E8-80A452F0 001E68 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80A452F0-80A452F4 001E70 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ // void daNpcT_c::ctrlSubFaceMotion(int param_0) { extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80A452F4-80A452FC 001E74 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80A452FC-80A45304 001E7C 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80A45304-80A4530C 001E84 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__8daNpcT_cFv */ s32 daNpcT_c::getBackboneJointNo() { return -1; @@ -993,4 +977,4 @@ static void func_80A454F4() { // NONMATCHING } -/* 80A455BC-80A455BC 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A455BC-80A455BC 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_kolinb.cpp b/src/d/actor/d_a_npc_kolinb.cpp index e994daee586..e1c0d7d1dd1 100644 --- a/src/d/actor/d_a_npc_kolinb.cpp +++ b/src/d/actor/d_a_npc_kolinb.cpp @@ -66,7 +66,7 @@ extern "C" void __dt__12dBgS_AcchCirFv(); extern "C" void __dt__10dCcD_GSttsFv(); extern "C" void __dt__12dBgS_ObjAcchFv(); extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); @@ -1069,12 +1069,6 @@ extern "C" void __dt__12J3DFrameCtrlFv() { // NONMATCHING } -/* 80A48350-80A48358 002AB0 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80A48358-80A4835C 002AB8 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ // void daNpcT_c::ctrlSubFaceMotion(int param_0) { extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { @@ -1279,4 +1273,4 @@ static void func_80A486F4() { // NONMATCHING } -/* 80A487DC-80A487DC 0000CC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A487DC-80A487DC 0000CC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_len.cpp b/src/d/actor/d_a_npc_len.cpp index abcc92823ad..6139f1e4524 100644 --- a/src/d/actor/d_a_npc_len.cpp +++ b/src/d/actor/d_a_npc_len.cpp @@ -101,7 +101,7 @@ extern "C" void func_80A68BD0(void* _this, int, int); extern "C" void __sinit_d_a_npc_len_cpp(); extern "C" void __ct__11daNpc_Len_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__11daNpc_Len_cFv(); +extern "C" s32 getEyeballMaterialNo__11daNpc_Len_cFv(); extern "C" s32 getHeadJointNo__11daNpc_Len_cFv(); extern "C" s32 getNeckJointNo__11daNpc_Len_cFv(); extern "C" bool getBackboneJointNo__11daNpc_Len_cFv(); @@ -1547,7 +1547,7 @@ daNpc_Len_c::daNpc_Len_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80A68DE0-80A68DE8 004BA0 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__11daNpc_Len_cFv */ -bool daNpc_Len_c::getEyeballMaterialNo() { +s32 daNpc_Len_c::getEyeballMaterialNo() { return true; } @@ -1609,4 +1609,4 @@ static void func_80A68E88() { // NONMATCHING } -/* 80A68FDC-80A68FDC 000138 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A68FDC-80A68FDC 000138 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_lud.cpp b/src/d/actor/d_a_npc_lud.cpp index a6126177556..b6b20ee94e2 100644 --- a/src/d/actor/d_a_npc_lud.cpp +++ b/src/d/actor/d_a_npc_lud.cpp @@ -108,7 +108,7 @@ extern "C" void func_80A6FAD4(void* _this, int*); extern "C" void __sinit_d_a_npc_lud_cpp(); extern "C" void __ct__11daNpc_Lud_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__11daNpc_Lud_cFv(); +extern "C" s32 getEyeballMaterialNo__11daNpc_Lud_cFv(); extern "C" s32 getHeadJointNo__11daNpc_Lud_cFv(); extern "C" s32 getNeckJointNo__11daNpc_Lud_cFv(); extern "C" bool getBackboneJointNo__11daNpc_Lud_cFv(); @@ -1736,7 +1736,7 @@ daNpc_Lud_c::daNpc_Lud_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80A6FCD0-80A6FCD8 005210 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__11daNpc_Lud_cFv */ -bool daNpc_Lud_c::getEyeballMaterialNo() { +s32 daNpc_Lud_c::getEyeballMaterialNo() { return true; } @@ -1783,4 +1783,4 @@ static void func_80A6FD60() { // NONMATCHING } -/* 80A6FECC-80A6FECC 000150 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A6FECC-80A6FECC 000150 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_maro.cpp b/src/d/actor/d_a_npc_maro.cpp index 458d05a9c25..a635645830e 100644 --- a/src/d/actor/d_a_npc_maro.cpp +++ b/src/d/actor/d_a_npc_maro.cpp @@ -124,7 +124,7 @@ extern "C" void func_8056469C(void* _this, int*); extern "C" void __sinit_d_a_npc_maro_cpp(); extern "C" void __ct__12daNpc_Maro_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__12daNpc_Maro_cFv(); +extern "C" s32 getEyeballMaterialNo__12daNpc_Maro_cFv(); extern "C" s32 getHeadJointNo__12daNpc_Maro_cFv(); extern "C" s32 getNeckJointNo__12daNpc_Maro_cFv(); extern "C" bool getBackboneJointNo__12daNpc_Maro_cFv(); @@ -2491,7 +2491,7 @@ daNpc_Maro_c::daNpc_Maro_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80564970-80564978 0094D0 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__12daNpc_Maro_cFv */ -bool daNpc_Maro_c::getEyeballMaterialNo() { +s32 daNpc_Maro_c::getEyeballMaterialNo() { return true; } @@ -2576,4 +2576,4 @@ extern "C" void chkPointInArea__15daTag_EvtArea_cF4cXyz() { // NONMATCHING } -/* 80564D58-80564D58 0001AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80564D58-80564D58 0001AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_midp.cpp b/src/d/actor/d_a_npc_midp.cpp index bcb7a3ccfc7..b9383cbc296 100644 --- a/src/d/actor/d_a_npc_midp.cpp +++ b/src/d/actor/d_a_npc_midp.cpp @@ -75,7 +75,7 @@ extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" bool checkChangeEvt__8daNpcT_cFv(); extern "C" bool evtEndProc__8daNpcT_cFv(); extern "C" void afterMoved__8daNpcT_cFv(); @@ -1024,12 +1024,6 @@ s32 daNpcT_c::getFootRJointNo() { return -1; } -/* 80A736A8-80A736B0 002B28 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80A736B0-80A736B8 002B30 0008+00 1/0 0/0 0/0 .text checkChangeEvt__8daNpcT_cFv */ bool daNpcT_c::checkChangeEvt() { return false; @@ -1215,4 +1209,4 @@ static void func_80A739A4() { // NONMATCHING } -/* 80A73AA0-80A73AA0 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A73AA0-80A73AA0 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_moir.cpp b/src/d/actor/d_a_npc_moir.cpp index f3922dc6673..4c02081ca9e 100644 --- a/src/d/actor/d_a_npc_moir.cpp +++ b/src/d/actor/d_a_npc_moir.cpp @@ -884,7 +884,7 @@ void daNpcMoiR_c::setExpressionBtp(int param_0) { } /* 80A7D474-80A7D5C4 0013F4 0150+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcMoiR_cFif */ -void daNpcMoiR_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcMoiR_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2396,4 +2396,4 @@ static void func_80A83290() { // NONMATCHING } -/* 80A83840-80A83840 000594 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A83840-80A83840 000594 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_myna2.cpp b/src/d/actor/d_a_npc_myna2.cpp index 1d7aadedc57..fa644ddedcc 100644 --- a/src/d/actor/d_a_npc_myna2.cpp +++ b/src/d/actor/d_a_npc_myna2.cpp @@ -956,7 +956,7 @@ void daNpc_myna2_c::setExpressionBtp(int param_0) { } /* 80A84EAC-80A84FEC 00110C 0140+00 1/0 0/0 0/0 .text setMotionAnm__13daNpc_myna2_cFif */ -void daNpc_myna2_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_myna2_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1908,4 +1908,4 @@ static u8 data_80A88BC0[4]; static u8 data_80A88BC4[4]; #pragma pop -/* 80A88654-80A88654 000220 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A88654-80A88654 000220 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_pachi_maro.cpp b/src/d/actor/d_a_npc_pachi_maro.cpp index 04332073977..8956eb59929 100644 --- a/src/d/actor/d_a_npc_pachi_maro.cpp +++ b/src/d/actor/d_a_npc_pachi_maro.cpp @@ -129,7 +129,7 @@ extern "C" void changeBtk__8daNpcT_cFPiPi(); extern "C" void __sinit_d_a_npc_pachi_maro_cpp(); extern "C" void __ct__18daNpc_Pachi_Maro_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__18daNpc_Pachi_Maro_cFv(); +extern "C" s32 getEyeballMaterialNo__18daNpc_Pachi_Maro_cFv(); extern "C" s32 getHeadJointNo__18daNpc_Pachi_Maro_cFv(); extern "C" s32 getNeckJointNo__18daNpc_Pachi_Maro_cFv(); extern "C" bool getBackboneJointNo__18daNpc_Pachi_Maro_cFv(); @@ -1701,7 +1701,7 @@ daNpc_Pachi_Maro_c::daNpc_Pachi_Maro_c( /* 80A9B7E0-80A9B7E8 003C40 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__18daNpc_Pachi_Maro_cFv */ -bool daNpc_Pachi_Maro_c::getEyeballMaterialNo() { +s32 daNpc_Pachi_Maro_c::getEyeballMaterialNo() { return true; } @@ -1747,4 +1747,4 @@ static void func_80A9B870() { // NONMATCHING } -/* 80A9B988-80A9B988 0000FC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80A9B988-80A9B988 0000FC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_post.cpp b/src/d/actor/d_a_npc_post.cpp index 4579fe4a7aa..5fdcdad3bca 100644 --- a/src/d/actor/d_a_npc_post.cpp +++ b/src/d/actor/d_a_npc_post.cpp @@ -102,7 +102,7 @@ extern "C" void func_80AACF2C(void* _this, f32, f32); extern "C" void __sinit_d_a_npc_post_cpp(); extern "C" void __ct__12daNpc_Post_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__12daNpc_Post_cFv(); +extern "C" s32 getEyeballMaterialNo__12daNpc_Post_cFv(); extern "C" s32 getHeadJointNo__12daNpc_Post_cFv(); extern "C" s32 getNeckJointNo__12daNpc_Post_cFv(); extern "C" bool getBackboneJointNo__12daNpc_Post_cFv(); @@ -1705,7 +1705,7 @@ daNpc_Post_c::daNpc_Post_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80AAD0D0-80AAD0D8 004530 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__12daNpc_Post_cFv */ -bool daNpc_Post_c::getEyeballMaterialNo() { +s32 daNpc_Post_c::getEyeballMaterialNo() { return true; } @@ -1941,4 +1941,4 @@ static u8 data_80AADCB8[4]; static u8 data_80AADCBC[4]; #pragma pop -/* 80AAD34C-80AAD34C 000160 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AAD34C-80AAD34C 000160 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_pouya.cpp b/src/d/actor/d_a_npc_pouya.cpp index 598dc6c4cee..cd783d957af 100644 --- a/src/d/actor/d_a_npc_pouya.cpp +++ b/src/d/actor/d_a_npc_pouya.cpp @@ -99,7 +99,7 @@ extern "C" void func_80AB1DDC(void* _this, int*); extern "C" void __sinit_d_a_npc_pouya_cpp(); extern "C" void __ct__13daNpc_Pouya_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__13daNpc_Pouya_cFv(); +extern "C" s32 getEyeballMaterialNo__13daNpc_Pouya_cFv(); extern "C" s32 getHeadJointNo__13daNpc_Pouya_cFv(); extern "C" s32 getNeckJointNo__13daNpc_Pouya_cFv(); extern "C" bool getBackboneJointNo__13daNpc_Pouya_cFv(); @@ -1601,7 +1601,7 @@ daNpc_Pouya_c::daNpc_Pouya_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80AB1F54-80AB1F5C 004294 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__13daNpc_Pouya_cFv */ -bool daNpc_Pouya_c::getEyeballMaterialNo() { +s32 daNpc_Pouya_c::getEyeballMaterialNo() { return true; } @@ -1657,4 +1657,4 @@ SECTION_RODATA static f32 const lit_5332 = 22.0f; COMPILER_STRIP_GATE(0x80AB211C, &lit_5332); #pragma pop -/* 80AB2120-80AB2120 000120 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AB2120-80AB2120 000120 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_prayer.cpp b/src/d/actor/d_a_npc_prayer.cpp index c9eb40180b6..fa396b258ea 100644 --- a/src/d/actor/d_a_npc_prayer.cpp +++ b/src/d/actor/d_a_npc_prayer.cpp @@ -624,7 +624,7 @@ void daNpcPray_c::setAttnPos() { } /* 80AB3B0C-80AB3BDC 000E0C 00D0+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcPray_cFif */ -void daNpcPray_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcPray_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1133,4 +1133,4 @@ static void func_80AB57EC() { // NONMATCHING } -/* 80AB5964-80AB5964 00015C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AB5964-80AB5964 00015C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_rafrel.cpp b/src/d/actor/d_a_npc_rafrel.cpp index 46eececa9fb..6176bf0a951 100644 --- a/src/d/actor/d_a_npc_rafrel.cpp +++ b/src/d/actor/d_a_npc_rafrel.cpp @@ -859,7 +859,7 @@ void daNpcRafrel_c::setExpressionBtp(int param_0) { } /* 80ABA9CC-80ABAB88 00148C 01BC+00 1/0 0/0 0/0 .text setMotionAnm__13daNpcRafrel_cFif */ -void daNpcRafrel_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcRafrel_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2024,4 +2024,4 @@ static void func_80ABF9C4() { // NONMATCHING } -/* 80ABFDBC-80ABFDBC 0003DC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80ABFDBC-80ABFDBC 0003DC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_saru.cpp b/src/d/actor/d_a_npc_saru.cpp index 31999a0cc79..ae6a5a0a713 100644 --- a/src/d/actor/d_a_npc_saru.cpp +++ b/src/d/actor/d_a_npc_saru.cpp @@ -77,7 +77,7 @@ extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv(); extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" bool evtEndProc__8daNpcT_cFv(); extern "C" void afterMoved__8daNpcT_cFv(); extern "C" bool chkXYItems__8daNpcT_cFv(); @@ -1357,16 +1357,6 @@ extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80AC41DC-80AC41E4 003E9C 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80AC41E4-80AC41EC 003EA4 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80AC41EC-80AC41F4 003EAC 0008+00 1/0 0/0 0/0 .text getFootLJointNo__8daNpcT_cFv */ s32 daNpcT_c::getFootLJointNo() { return -1; @@ -1391,11 +1381,6 @@ extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } -/* 80AC420C-80AC4214 003ECC 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} /* 80AC4214-80AC421C 003ED4 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ // bool daNpcT_c::evtEndProc() { @@ -1548,4 +1533,4 @@ static void func_80AC44DC() { // NONMATCHING } -/* 80AC4654-80AC4654 00015C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AC4654-80AC4654 00015C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_seib.cpp b/src/d/actor/d_a_npc_seib.cpp index 451e5864154..2dd3e2c80be 100644 --- a/src/d/actor/d_a_npc_seib.cpp +++ b/src/d/actor/d_a_npc_seib.cpp @@ -57,7 +57,7 @@ extern "C" void __dt__12dBgS_AcchCirFv(); extern "C" void __dt__10dCcD_GSttsFv(); extern "C" void __dt__12dBgS_ObjAcchFv(); extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" bool checkChangeJoint__8daNpcT_cFi(); extern "C" bool checkRemoveJoint__8daNpcT_cFi(); @@ -803,28 +803,11 @@ extern "C" void __dt__12J3DFrameCtrlFv() { // NONMATCHING } -/* 80AC6DF8-80AC6E00 001DF8 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80AC6E00-80AC6E04 001E00 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ // void daNpcT_c::ctrlSubFaceMotion(int param_0) { extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } - -/* 80AC6E04-80AC6E0C 001E04 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80AC6E0C-80AC6E14 001E0C 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80AC6E14-80AC6E1C 001E14 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__8daNpcT_cFv */ s32 daNpcT_c::getBackboneJointNo() { return -1; @@ -1014,4 +997,4 @@ static void func_80AC7008() { // NONMATCHING } -/* 80AC70D0-80AC70D0 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AC70D0-80AC70D0 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_seic.cpp b/src/d/actor/d_a_npc_seic.cpp index 85de65a73c4..deec2f241f0 100644 --- a/src/d/actor/d_a_npc_seic.cpp +++ b/src/d/actor/d_a_npc_seic.cpp @@ -57,7 +57,7 @@ extern "C" void __dt__12dBgS_AcchCirFv(); extern "C" void __dt__10dCcD_GSttsFv(); extern "C" void __dt__12dBgS_ObjAcchFv(); extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" bool checkChangeJoint__8daNpcT_cFi(); extern "C" bool checkRemoveJoint__8daNpcT_cFi(); @@ -795,28 +795,12 @@ extern "C" void __dt__12J3DFrameCtrlFv() { // NONMATCHING } -/* 80AC8FF0-80AC8FF8 001B90 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80AC8FF8-80AC8FFC 001B98 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ // void daNpcT_c::ctrlSubFaceMotion(int param_0) { extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80AC8FFC-80AC9004 001B9C 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80AC9004-80AC900C 001BA4 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80AC900C-80AC9014 001BAC 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__8daNpcT_cFv */ s32 daNpcT_c::getBackboneJointNo() { return -1; @@ -1006,4 +990,4 @@ static void func_80AC9200() { // NONMATCHING } -/* 80AC92C8-80AC92C8 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AC92C8-80AC92C8 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_seid.cpp b/src/d/actor/d_a_npc_seid.cpp index 9896297dedf..6593baa7eba 100644 --- a/src/d/actor/d_a_npc_seid.cpp +++ b/src/d/actor/d_a_npc_seid.cpp @@ -57,7 +57,7 @@ extern "C" void __dt__12dBgS_AcchCirFv(); extern "C" void __dt__10dCcD_GSttsFv(); extern "C" void __dt__12dBgS_ObjAcchFv(); extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" bool checkChangeJoint__8daNpcT_cFi(); extern "C" bool checkRemoveJoint__8daNpcT_cFi(); @@ -795,28 +795,12 @@ extern "C" void __dt__12J3DFrameCtrlFv() { // NONMATCHING } -/* 80ACB130-80ACB138 001B90 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80ACB138-80ACB13C 001B98 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ // void daNpcT_c::ctrlSubFaceMotion(int param_0) { extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80ACB13C-80ACB144 001B9C 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80ACB144-80ACB14C 001BA4 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80ACB14C-80ACB154 001BAC 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__8daNpcT_cFv */ s32 daNpcT_c::getBackboneJointNo() { return -1; @@ -1006,4 +990,4 @@ static void func_80ACB340() { // NONMATCHING } -/* 80ACB408-80ACB408 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80ACB408-80ACB408 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_seirei.cpp b/src/d/actor/d_a_npc_seirei.cpp index 85f2ac9ba4f..e1ae8c72980 100644 --- a/src/d/actor/d_a_npc_seirei.cpp +++ b/src/d/actor/d_a_npc_seirei.cpp @@ -60,7 +60,7 @@ extern "C" void __dt__12dBgS_AcchCirFv(); extern "C" void __dt__10dCcD_GSttsFv(); extern "C" void __dt__12dBgS_ObjAcchFv(); extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" bool checkChangeJoint__8daNpcT_cFi(); extern "C" bool checkRemoveJoint__8daNpcT_cFi(); @@ -950,28 +950,12 @@ extern "C" void __dt__12J3DFrameCtrlFv() { // NONMATCHING } -/* 80AD7A48-80AD7A50 002408 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80AD7A50-80AD7A54 002410 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ // void daNpcT_c::ctrlSubFaceMotion(int param_0) { extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80AD7A54-80AD7A5C 002414 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80AD7A5C-80AD7A64 00241C 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80AD7A64-80AD7A6C 002424 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__8daNpcT_cFv */ s32 daNpcT_c::getBackboneJointNo() { return -1; @@ -1161,4 +1145,4 @@ static void func_80AD7C8C() { // NONMATCHING } -/* 80AD7D88-80AD7D88 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AD7D88-80AD7D88 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_shad.cpp b/src/d/actor/d_a_npc_shad.cpp index 09a2d987e55..1cd07c8234d 100644 --- a/src/d/actor/d_a_npc_shad.cpp +++ b/src/d/actor/d_a_npc_shad.cpp @@ -1053,7 +1053,7 @@ void daNpcShad_c::setExpressionBtp(int param_0) { } /* 80AD982C-80AD99B4 00170C 0188+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcShad_cFif */ -void daNpcShad_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcShad_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2547,4 +2547,4 @@ SECTION_RODATA static f32 const lit_7144 = 40.0f; COMPILER_STRIP_GATE(0x80AE24C0, &lit_7144); #pragma pop -/* 80AE24C4-80AE24C4 0004E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AE24C4-80AE24C4 0004E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_shaman.cpp b/src/d/actor/d_a_npc_shaman.cpp index e50a549aa7a..79964c3b5f8 100644 --- a/src/d/actor/d_a_npc_shaman.cpp +++ b/src/d/actor/d_a_npc_shaman.cpp @@ -111,7 +111,7 @@ extern "C" void __ct__11daNpc_Sha_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); extern "C" void __dt__8cM3dGCylFv(); extern "C" void __dt__8cM3dGAabFv(); -extern "C" bool getEyeballMaterialNo__11daNpc_Sha_cFv(); +extern "C" s32 getEyeballMaterialNo__11daNpc_Sha_cFv(); extern "C" s32 getHeadJointNo__11daNpc_Sha_cFv(); extern "C" s32 getNeckJointNo__11daNpc_Sha_cFv(); extern "C" bool getBackboneJointNo__11daNpc_Sha_cFv(); @@ -1970,7 +1970,7 @@ extern "C" void __dt__8cM3dGAabFv() { } /* 80AE6B1C-80AE6B24 003E3C 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__11daNpc_Sha_cFv */ -bool daNpc_Sha_c::getEyeballMaterialNo() { +s32 daNpc_Sha_c::getEyeballMaterialNo() { return true; } @@ -2017,4 +2017,4 @@ static void func_80AE6BAC() { // NONMATCHING } -/* 80AE6CCC-80AE6CCC 000104 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AE6CCC-80AE6CCC 000104 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_shoe.cpp b/src/d/actor/d_a_npc_shoe.cpp index f79a745042c..1b61b14ef18 100644 --- a/src/d/actor/d_a_npc_shoe.cpp +++ b/src/d/actor/d_a_npc_shoe.cpp @@ -889,7 +889,7 @@ void daNpcShoe_c::lookat() { } /* 80AE9A00-80AE9AD0 0021A0 00D0+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcShoe_cFif */ -void daNpcShoe_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcShoe_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1063,4 +1063,4 @@ static void func_80AEA394() { // NONMATCHING } -/* 80AEA51C-80AEA51C 00016C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AEA51C-80AEA51C 00016C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_shop_maro.cpp b/src/d/actor/d_a_npc_shop_maro.cpp index 9699e50d925..a02b2a0b6f6 100644 --- a/src/d/actor/d_a_npc_shop_maro.cpp +++ b/src/d/actor/d_a_npc_shop_maro.cpp @@ -44,7 +44,7 @@ extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv(); extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void afterJntAnm__8daNpcT_cFi(); extern "C" void setParam__8daNpcT_cFv(); extern "C" bool checkChangeEvt__8daNpcT_cFv(); @@ -452,16 +452,6 @@ extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80AEC7C0-80AEC7C8 0009E0 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80AEC7C8-80AEC7D0 0009E8 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80AEC7D0-80AEC7D8 0009F0 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__8daNpcT_cFv */ s32 daNpcT_c::getBackboneJointNo() { return -1; @@ -501,12 +491,6 @@ extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { return false; } -/* 80AEC808-80AEC810 000A28 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80AEC810-80AEC814 000A30 0004+00 1/0 0/0 0/0 .text afterJntAnm__8daNpcT_cFi */ void daNpcT_c::afterJntAnm(int param_0) { /* empty function */ @@ -657,4 +641,4 @@ static void func_80AEC900() { /* 80AEC908-80AEC910 000B28 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */ static void func_80AEC908() { // NONMATCHING -} \ No newline at end of file +} diff --git a/src/d/actor/d_a_npc_sola.cpp b/src/d/actor/d_a_npc_sola.cpp index 2ee2582b9e2..31195b83674 100644 --- a/src/d/actor/d_a_npc_sola.cpp +++ b/src/d/actor/d_a_npc_sola.cpp @@ -58,7 +58,7 @@ extern "C" void __dt__12dBgS_AcchCirFv(); extern "C" void __dt__10dCcD_GSttsFv(); extern "C" void __dt__12dBgS_ObjAcchFv(); extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs(); extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); @@ -858,12 +858,6 @@ extern "C" void __dt__12J3DFrameCtrlFv() { // NONMATCHING } -/* 80AEEABC-80AEEAC4 001FFC 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80AEEAC4-80AEEBE0 002004 011C+00 1/1 0/0 0/0 .text setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs */ // void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, // s16 param_4) { @@ -911,16 +905,6 @@ extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80AEEDEC-80AEEDF4 00232C 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80AEEDF4-80AEEDFC 002334 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80AEEDFC-80AEEE04 00233C 0008+00 1/0 0/0 0/0 .text getFootLJointNo__8daNpcT_cFv */ s32 daNpcT_c::getFootLJointNo() { return -1; @@ -1113,4 +1097,4 @@ static void func_80AEF0E4() { // NONMATCHING } -/* 80AEF1E0-80AEF1E0 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AEF1E0-80AEF1E0 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_soldierA.cpp b/src/d/actor/d_a_npc_soldierA.cpp index 9caf634d115..6eb65137ff7 100644 --- a/src/d/actor/d_a_npc_soldierA.cpp +++ b/src/d/actor/d_a_npc_soldierA.cpp @@ -813,7 +813,7 @@ void daNpc_SoldierA_c::setAttnPos() { /* 80AF0928-80AF0A38 001488 0110+00 1/0 0/0 0/0 .text setMotionAnm__16daNpc_SoldierA_cFif */ -void daNpc_SoldierA_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_SoldierA_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1462,4 +1462,4 @@ static u8 data_80AF2BB8[4]; static u8 data_80AF2BBC[4]; #pragma pop -/* 80AF2864-80AF2864 00017C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AF2864-80AF2864 00017C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_soldierB.cpp b/src/d/actor/d_a_npc_soldierB.cpp index 498afd742c5..4787de7b629 100644 --- a/src/d/actor/d_a_npc_soldierB.cpp +++ b/src/d/actor/d_a_npc_soldierB.cpp @@ -791,7 +791,7 @@ void daNpc_SoldierB_c::setAttnPos() { /* 80AF4030-80AF4130 001470 0100+00 1/0 0/0 0/0 .text setMotionAnm__16daNpc_SoldierB_cFif */ -void daNpc_SoldierB_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_SoldierB_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1363,4 +1363,4 @@ static u8 data_80AF5EF8[4]; static u8 data_80AF5EFC[4]; #pragma pop -/* 80AF5BF4-80AF5BF4 000120 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80AF5BF4-80AF5BF4 000120 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_the.cpp b/src/d/actor/d_a_npc_the.cpp index d0969fde4a2..423ade9ac14 100644 --- a/src/d/actor/d_a_npc_the.cpp +++ b/src/d/actor/d_a_npc_the.cpp @@ -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 */ -void daNpcThe_c::setMotionAnm(int i_idx, f32 i_morf) { +bool daNpcThe_c::setMotionAnm(int i_idx, f32 i_morf) { J3DAnmTransformKey* anm_trans = NULL; J3DAnmTextureSRTKey* anm_tex = NULL; int attr = J3DFrameCtrl::LOOP_REPEAT_e; diff --git a/src/d/actor/d_a_npc_theB.cpp b/src/d/actor/d_a_npc_theB.cpp index 0e2de45a0c9..9cd1625e7a6 100644 --- a/src/d/actor/d_a_npc_theB.cpp +++ b/src/d/actor/d_a_npc_theB.cpp @@ -884,7 +884,7 @@ void daNpcTheB_c::setExpressionBtp(int param_0) { } /* 80AFE1BC-80AFE398 001B3C 01DC+00 1/0 0/0 0/0 .text setMotionAnm__11daNpcTheB_cFif */ -void daNpcTheB_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcTheB_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1488,4 +1488,4 @@ static void func_80B00D50() { // NONMATCHING } -/* 80B00FA0-80B00FA0 000234 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B00FA0-80B00FA0 000234 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_tkc.cpp b/src/d/actor/d_a_npc_tkc.cpp index 010ea7a975e..7fbca62e896 100644 --- a/src/d/actor/d_a_npc_tkc.cpp +++ b/src/d/actor/d_a_npc_tkc.cpp @@ -845,7 +845,7 @@ void daNpcTkc_c::reset() { } /* 80B0DA94-80B0DBC8 0013B4 0134+00 1/0 0/0 0/0 .text setMotionAnm__10daNpcTkc_cFif */ -void daNpcTkc_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcTkc_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1373,4 +1373,4 @@ static void func_80B10898() { // NONMATCHING } -/* 80B10A2C-80B10A2C 000178 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B10A2C-80B10A2C 000178 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_tks.cpp b/src/d/actor/d_a_npc_tks.cpp index f162af56b02..f95cc2b6e71 100644 --- a/src/d/actor/d_a_npc_tks.cpp +++ b/src/d/actor/d_a_npc_tks.cpp @@ -1431,7 +1431,7 @@ void daNpcTks_c::wait() { } /* 80B16344-80B16634 001E04 02F0+00 1/0 0/0 0/0 .text setMotionAnm__10daNpcTks_cFif */ -void daNpcTks_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcTks_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2293,4 +2293,4 @@ SECTION_RODATA static f32 const lit_7420 = 40.0f; COMPILER_STRIP_GATE(0x80B1E044, &lit_7420); #pragma pop -/* 80B1E048-80B1E048 0002F0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B1E048-80B1E048 0002F0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_wrestler.cpp b/src/d/actor/d_a_npc_wrestler.cpp index 6e77b305b30..308ee14464a 100644 --- a/src/d/actor/d_a_npc_wrestler.cpp +++ b/src/d/actor/d_a_npc_wrestler.cpp @@ -2128,7 +2128,7 @@ bool daNpcWrestler_c::setExpressionBtp(int param_0) { /* 80B3074C-80B308B0 0015AC 0164+00 1/0 0/0 0/0 .text setMotionAnm__15daNpcWrestler_cFif */ -void daNpcWrestler_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpcWrestler_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -3977,4 +3977,4 @@ static void func_80B416C0() { // NONMATCHING } -/* 80B41D7C-80B41D7C 0006A0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B41D7C-80B41D7C 0006A0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_yamid.cpp b/src/d/actor/d_a_npc_yamid.cpp index 3b9fa50fa6f..0a2618858f0 100644 --- a/src/d/actor/d_a_npc_yamid.cpp +++ b/src/d/actor/d_a_npc_yamid.cpp @@ -99,7 +99,7 @@ extern "C" void changeBtk__8daNpcT_cFPiPi(); extern "C" void __sinit_d_a_npc_yamid_cpp(); extern "C" void __ct__13daNpc_yamiD_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__13daNpc_yamiD_cFv(); +extern "C" s32 getEyeballMaterialNo__13daNpc_yamiD_cFv(); extern "C" s32 getHeadJointNo__13daNpc_yamiD_cFv(); extern "C" s32 getNeckJointNo__13daNpc_yamiD_cFv(); extern "C" bool getBackboneJointNo__13daNpc_yamiD_cFv(); @@ -1240,7 +1240,7 @@ daNpc_yamiD_c::daNpc_yamiD_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80B45F34-80B45F3C 0030D4 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__13daNpc_yamiD_cFv */ -bool daNpc_yamiD_c::getEyeballMaterialNo() { +s32 daNpc_yamiD_c::getEyeballMaterialNo() { return true; } @@ -1293,4 +1293,4 @@ static void func_80B46030() { // NONMATCHING } -/* 80B4612C-80B4612C 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B4612C-80B4612C 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_yamis.cpp b/src/d/actor/d_a_npc_yamis.cpp index 5912da87d52..eba2de6269c 100644 --- a/src/d/actor/d_a_npc_yamis.cpp +++ b/src/d/actor/d_a_npc_yamis.cpp @@ -99,7 +99,7 @@ extern "C" void changeBtk__8daNpcT_cFPiPi(); extern "C" void __sinit_d_a_npc_yamis_cpp(); extern "C" void __ct__13daNpc_yamiS_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__13daNpc_yamiS_cFv(); +extern "C" s32 getEyeballMaterialNo__13daNpc_yamiS_cFv(); extern "C" s32 getHeadJointNo__13daNpc_yamiS_cFv(); extern "C" s32 getNeckJointNo__13daNpc_yamiS_cFv(); extern "C" bool getBackboneJointNo__13daNpc_yamiS_cFv(); @@ -1240,7 +1240,7 @@ daNpc_yamiS_c::daNpc_yamiS_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80B49598-80B495A0 003118 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__13daNpc_yamiS_cFv */ -bool daNpc_yamiS_c::getEyeballMaterialNo() { +s32 daNpc_yamiS_c::getEyeballMaterialNo() { return true; } @@ -1293,4 +1293,4 @@ static void func_80B49694() { // NONMATCHING } -/* 80B49790-80B49790 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B49790-80B49790 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_yamit.cpp b/src/d/actor/d_a_npc_yamit.cpp index 54f474c45f0..228d93a35c9 100644 --- a/src/d/actor/d_a_npc_yamit.cpp +++ b/src/d/actor/d_a_npc_yamit.cpp @@ -101,7 +101,7 @@ extern "C" void changeBtk__8daNpcT_cFPiPi(); extern "C" void __sinit_d_a_npc_yamit_cpp(); extern "C" void __ct__13daNpc_yamiT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__13daNpc_yamiT_cFv(); +extern "C" s32 getEyeballMaterialNo__13daNpc_yamiT_cFv(); extern "C" s32 getHeadJointNo__13daNpc_yamiT_cFv(); extern "C" s32 getNeckJointNo__13daNpc_yamiT_cFv(); extern "C" bool getBackboneJointNo__13daNpc_yamiT_cFv(); @@ -1256,7 +1256,7 @@ daNpc_yamiT_c::daNpc_yamiT_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80B4CCF8-80B4CD00 0031F8 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__13daNpc_yamiT_cFv */ -bool daNpc_yamiT_c::getEyeballMaterialNo() { +s32 daNpc_yamiT_c::getEyeballMaterialNo() { return true; } @@ -1304,4 +1304,4 @@ static void func_80B4CD88() { // NONMATCHING } -/* 80B4CE84-80B4CE84 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B4CE84-80B4CE84 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_yelia.cpp b/src/d/actor/d_a_npc_yelia.cpp index 984b7204c76..f2e008d42c2 100644 --- a/src/d/actor/d_a_npc_yelia.cpp +++ b/src/d/actor/d_a_npc_yelia.cpp @@ -104,7 +104,7 @@ extern "C" void func_80B52004(void* _this, int*); extern "C" void __sinit_d_a_npc_yelia_cpp(); extern "C" void __ct__13daNpc_Yelia_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__13daNpc_Yelia_cFv(); +extern "C" s32 getEyeballMaterialNo__13daNpc_Yelia_cFv(); extern "C" s32 getHeadJointNo__13daNpc_Yelia_cFv(); extern "C" s32 getNeckJointNo__13daNpc_Yelia_cFv(); extern "C" bool getBackboneJointNo__13daNpc_Yelia_cFv(); @@ -1808,7 +1808,7 @@ daNpc_Yelia_c::daNpc_Yelia_c(daNpcT_faceMotionAnmData_c const* param_0, } /* 80B521E4-80B521EC 004FC4 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__13daNpc_Yelia_cFv */ -bool daNpc_Yelia_c::getEyeballMaterialNo() { +s32 daNpc_Yelia_c::getEyeballMaterialNo() { return true; } @@ -1867,4 +1867,4 @@ extern "C" void setOffsetPos__9daDitem_cF4cXyz() { // NONMATCHING } -/* 80B52408-80B52408 000154 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B52408-80B52408 000154 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_zant.cpp b/src/d/actor/d_a_npc_zant.cpp index 8f2c38d5e78..21e7ad007dc 100644 --- a/src/d/actor/d_a_npc_zant.cpp +++ b/src/d/actor/d_a_npc_zant.cpp @@ -59,7 +59,7 @@ extern "C" void __dt__12dBgS_AcchCirFv(); extern "C" void __dt__10dCcD_GSttsFv(); extern "C" void __dt__12dBgS_ObjAcchFv(); extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs(); extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs(); extern "C" s32 getHeadJointNo__8daNpcT_cFv(); @@ -862,12 +862,6 @@ extern "C" void __dt__12J3DFrameCtrlFv() { // NONMATCHING } -/* 80B6E368-80B6E370 0022A8 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80B6E370-80B6E48C 0022B0 011C+00 1/1 0/0 0/0 .text setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs */ // void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, // s16 param_4) { @@ -930,16 +924,6 @@ extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80B6E6B0-80B6E6B8 0025F0 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80B6E6B8-80B6E6C0 0025F8 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80B6E6C0-80B6E6C8 002600 0008+00 1/0 0/0 0/0 .text getFootLJointNo__8daNpcT_cFv */ s32 daNpcT_c::getFootLJointNo() { return -1; @@ -1112,4 +1096,4 @@ static void func_80B6E98C() { // NONMATCHING } -/* 80B6EA80-80B6EA80 0000D8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B6EA80-80B6EA80 0000D8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_zelR.cpp b/src/d/actor/d_a_npc_zelR.cpp index dbf23402906..a1a192f2a68 100644 --- a/src/d/actor/d_a_npc_zelR.cpp +++ b/src/d/actor/d_a_npc_zelR.cpp @@ -80,7 +80,7 @@ extern "C" s32 getNeckJointNo__8daNpcT_cFv(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" bool checkChangeEvt__8daNpcT_cFv(); extern "C" bool evtEndProc__8daNpcT_cFv(); extern "C" void afterMoved__8daNpcT_cFv(); @@ -1068,12 +1068,6 @@ s32 daNpcT_c::getFootRJointNo() { return -1; } -/* 80B71848-80B71850 002B08 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80B71850-80B71858 002B10 0008+00 1/0 0/0 0/0 .text checkChangeEvt__8daNpcT_cFv */ bool daNpcT_c::checkChangeEvt() { return false; @@ -1248,4 +1242,4 @@ static void func_80B71AC4() { // NONMATCHING } -/* 80B71BC0-80B71BC0 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B71BC0-80B71BC0 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_zelRo.cpp b/src/d/actor/d_a_npc_zelRo.cpp index f4373825785..5921a05c819 100644 --- a/src/d/actor/d_a_npc_zelRo.cpp +++ b/src/d/actor/d_a_npc_zelRo.cpp @@ -79,7 +79,7 @@ extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" bool checkChangeEvt__8daNpcT_cFv(); extern "C" bool evtEndProc__8daNpcT_cFv(); extern "C" void afterMoved__8daNpcT_cFv(); @@ -1063,12 +1063,6 @@ s32 daNpcT_c::getFootRJointNo() { return -1; } -/* 80B749BC-80B749C4 002AFC 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80B749C4-80B749CC 002B04 0008+00 1/0 0/0 0/0 .text checkChangeEvt__8daNpcT_cFv */ bool daNpcT_c::checkChangeEvt() { return false; @@ -1250,4 +1244,4 @@ static void func_80B74C40() { // NONMATCHING } -/* 80B74D3C-80B74D3C 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B74D3C-80B74D3C 0000E0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_zelda.cpp b/src/d/actor/d_a_npc_zelda.cpp index f6dcab67ec7..6af471e50f5 100644 --- a/src/d/actor/d_a_npc_zelda.cpp +++ b/src/d/actor/d_a_npc_zelda.cpp @@ -75,7 +75,7 @@ extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs(); extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); extern "C" s32 getFootLJointNo__8daNpcT_cFv(); extern "C" s32 getFootRJointNo__8daNpcT_cFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" bool evtEndProc__8daNpcT_cFv(); extern "C" void afterMoved__8daNpcT_cFv(); extern "C" bool chkXYItems__8daNpcT_cFv(); @@ -1080,12 +1080,6 @@ s32 daNpcT_c::getFootRJointNo() { return -1; } -/* 80B77CB4-80B77CBC 002C74 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80B77CBC-80B77CC4 002C7C 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ // bool daNpcT_c::evtEndProc() { extern "C" bool evtEndProc__8daNpcT_cFv() { @@ -1274,4 +1268,4 @@ static void func_80B77FAC() { // NONMATCHING } -/* 80B780C4-80B780C4 0000FC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B780C4-80B780C4 0000FC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_zra.cpp b/src/d/actor/d_a_npc_zra.cpp index 25121e7e3cc..fc3299d3685 100644 --- a/src/d/actor/d_a_npc_zra.cpp +++ b/src/d/actor/d_a_npc_zra.cpp @@ -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 */ -void daNpc_zrA_c::setMotionAnm(int i_idx, f32 i_morf) { +bool daNpc_zrA_c::setMotionAnm(int i_idx, f32 i_morf) { J3DAnmTransformKey* bck_anm = NULL; J3DAnmTextureSRTKey* btk_anm = NULL; int btk_idx = 0; diff --git a/src/d/actor/d_a_npc_zrc.cpp b/src/d/actor/d_a_npc_zrc.cpp index 236adee0bda..cecb2a44d14 100644 --- a/src/d/actor/d_a_npc_zrc.cpp +++ b/src/d/actor/d_a_npc_zrc.cpp @@ -1115,7 +1115,7 @@ void daNpc_zrC_c::setExpression(int param_0, f32 param_1) { } /* 80B8F9F8-80B8FBE4 001ED8 01EC+00 2/0 0/0 0/0 .text setMotionAnm__11daNpc_zrC_cFif */ -void daNpc_zrC_c::setMotionAnm(int param_0, f32 param_1) { +bool daNpc_zrC_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -2464,4 +2464,4 @@ static u8 data_80B93CD8[4]; static u8 data_80B93CDC[4]; #pragma pop -/* 80B9369C-80B9369C 0004A0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80B9369C-80B9369C 0004A0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_npc_zrz.cpp b/src/d/actor/d_a_npc_zrz.cpp index 6c6f42cd8fb..e7623c76193 100644 --- a/src/d/actor/d_a_npc_zrz.cpp +++ b/src/d/actor/d_a_npc_zrz.cpp @@ -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 */ -void daNpc_zrZ_c::setMotionAnm(int i_idx, f32 i_morf) { +bool daNpc_zrZ_c::setMotionAnm(int i_idx, f32 i_morf) { J3DAnmTransformKey* bck_anm = NULL; J3DAnmTextureSRTKey* btk_anm = NULL; int attr = J3DFrameCtrl::LOOP_REPEAT_e; diff --git a/src/d/actor/d_a_obj_sekizoa.cpp b/src/d/actor/d_a_obj_sekizoa.cpp index 0484b460e39..5e0258e58c7 100644 --- a/src/d/actor/d_a_obj_sekizoa.cpp +++ b/src/d/actor/d_a_obj_sekizoa.cpp @@ -233,7 +233,7 @@ struct daNpcT_c { daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_MotionSeqMngr_c::sequenceStepData_c const*, int, daNpcT_evtData_c const*, char**); - /* 80CD5478 */ bool getEyeballMaterialNo(); + /* 80CD5478 */ s32 getEyeballMaterialNo(); /* 80CD57A4 */ s32 getNeckJointNo(); /* 80CD57AC */ void ctrlSubFaceMotion(int); /* 80CD57B0 */ bool checkChangeJoint(int); @@ -536,7 +536,7 @@ extern "C" void __dt__12dBgS_AcchCirFv(); extern "C" void __dt__10dCcD_GSttsFv(); extern "C" void __dt__12dBgS_ObjAcchFv(); extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" bool getEyeballMaterialNo__8daNpcT_cFv(); +extern "C" s32 getEyeballMaterialNo__8daNpcT_cFv(); extern "C" void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs(); extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs(); extern "C" s32 getNeckJointNo__8daNpcT_cFv(); @@ -2157,12 +2157,6 @@ J3DFrameCtrl::~J3DFrameCtrl() { // NONMATCHING } -/* 80CD5478-80CD5480 007218 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daNpcT_cFv - */ -bool daNpcT_c::getEyeballMaterialNo() { - return false; -} - /* 80CD5480-80CD559C 007220 011C+00 1/1 0/0 0/0 .text setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs */ // void daNpcT_JntAnm_c::setEyeAngleY(cXyz param_0, s16 param_1, int param_2, f32 param_3, // s16 param_4) { @@ -2181,20 +2175,11 @@ s32 daNpcT_c::getNeckJointNo() { } /* 80CD57AC-80CD57B0 00754C 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -void daNpcT_c::ctrlSubFaceMotion(int param_0) { +//void daNpcT_c::ctrlSubFaceMotion(int param_0) { +void ctrlSubFaceMotion__8daNpcT_cFi() { /* empty function */ } -/* 80CD57B0-80CD57B8 007550 0008+00 1/0 0/0 0/0 .text checkChangeJoint__8daNpcT_cFi */ -bool daNpcT_c::checkChangeJoint(int param_0) { - return false; -} - -/* 80CD57B8-80CD57C0 007558 0008+00 1/0 0/0 0/0 .text checkRemoveJoint__8daNpcT_cFi */ -bool daNpcT_c::checkRemoveJoint(int param_0) { - return false; -} - /* 80CD57C0-80CD57C8 007560 0008+00 1/0 0/0 0/0 .text getFootLJointNo__8daNpcT_cFv */ s32 daNpcT_c::getFootLJointNo() { return -1; @@ -2236,49 +2221,12 @@ extern "C" bool chkXYItems__8daNpcT_cFv() { return false; } -/* 80CD57F4-80CD580C 007594 0018+00 1/0 0/0 0/0 .text decTmr__8daNpcT_cFv */ -void daNpcT_c::decTmr() { - // NONMATCHING -} - /* 80CD580C-80CD5814 0075AC 0008+00 1/0 0/0 0/0 .text afterSetFaceMotionAnm__8daNpcT_cFiifi */ // bool daNpcT_c::afterSetFaceMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi() { return true; } -/* 80CD5814-80CD5844 0075B4 0030+00 1/0 0/0 0/0 .text - * getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c */ -void daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c param_0) { - // NONMATCHING -} - -/* 80CD5844-80CD5874 0075E4 0030+00 1/0 0/0 0/0 .text - * getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c */ -void daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c param_0) { - // NONMATCHING -} - -/* 80CD5874-80CD5878 007614 0004+00 1/0 0/0 0/0 .text changeAnm__8daNpcT_cFPiPi */ -void daNpcT_c::changeAnm(int* param_0, int* param_1) { - /* empty function */ -} - -/* 80CD5878-80CD587C 007618 0004+00 1/0 0/0 0/0 .text changeBck__8daNpcT_cFPiPi */ -void daNpcT_c::changeBck(int* param_0, int* param_1) { - /* empty function */ -} - -/* 80CD587C-80CD5880 00761C 0004+00 1/0 0/0 0/0 .text changeBtp__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtp(int* param_0, int* param_1) { - /* empty function */ -} - -/* 80CD5880-80CD5884 007620 0004+00 1/0 0/0 0/0 .text changeBtk__8daNpcT_cFPiPi */ -void daNpcT_c::changeBtk(int* param_0, int* param_1) { - /* empty function */ -} - /* 80CD5884-80CD58A0 007624 001C+00 5/5 0/0 0/0 .text cLib_calcTimer__FPi */ extern "C" void func_80CD5884(void* _this, int* param_0) { // NONMATCHING @@ -2555,4 +2503,4 @@ static u8 data_80CD69BC[4]; static u8 data_80CD69C0[4]; #pragma pop -/* 80CD5E64-80CD5E64 000168 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80CD5E64-80CD5E64 000168 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_obj_tks.cpp b/src/d/actor/d_a_obj_tks.cpp index 2cce2b95a20..0fa93c2c739 100644 --- a/src/d/actor/d_a_obj_tks.cpp +++ b/src/d/actor/d_a_obj_tks.cpp @@ -961,7 +961,7 @@ void daObjTks_c::demo() { } /* 80D11104-80D11228 001F64 0124+00 1/0 0/0 0/0 .text setMotionAnm__10daObjTks_cFif */ -void daObjTks_c::setMotionAnm(int param_0, f32 param_1) { +bool daObjTks_c::setMotionAnm(int param_0, f32 param_1) { // NONMATCHING } @@ -1240,4 +1240,4 @@ static void func_80D12720() { // NONMATCHING } -/* 80D128C8-80D128C8 00018C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80D128C8-80D128C8 00018C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_peru.cpp b/src/d/actor/d_a_peru.cpp index b015abbe2cd..4e185039045 100644 --- a/src/d/actor/d_a_peru.cpp +++ b/src/d/actor/d_a_peru.cpp @@ -114,7 +114,7 @@ extern "C" void changeBtk__8daNpcT_cFPiPi(); extern "C" void __sinit_d_a_peru_cpp(); extern "C" void __ct__8daPeru_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" bool getEyeballMaterialNo__8daPeru_cFv(); +extern "C" s32 getEyeballMaterialNo__8daPeru_cFv(); extern "C" s32 getHeadJointNo__8daPeru_cFv(); extern "C" s32 getNeckJointNo__8daPeru_cFv(); extern "C" bool getBackboneJointNo__8daPeru_cFv(); @@ -1807,7 +1807,7 @@ daPeru_c::daPeru_c(daNpcT_faceMotionAnmData_c const* param_0, /* 80D4BEC4-80D4BECC 0050C4 0008+00 1/0 0/0 0/0 .text getEyeballMaterialNo__8daPeru_cFv */ -bool daPeru_c::getEyeballMaterialNo() { +s32 daPeru_c::getEyeballMaterialNo() { return true; } @@ -2040,4 +2040,4 @@ static u8 data_80D4C8B8[4]; static u8 data_80D4C8BC[4]; #pragma pop -/* 80D4C1B0-80D4C1B0 000150 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 80D4C1B0-80D4C1B0 000150 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_tag_allmato.cpp b/src/d/actor/d_a_tag_allmato.cpp index 4d28f29314f..d793d7d9ab2 100644 --- a/src/d/actor/d_a_tag_allmato.cpp +++ b/src/d/actor/d_a_tag_allmato.cpp @@ -544,7 +544,7 @@ static bool daTag_AllMato_IsDelete(void* param_0) { } /* 80489138-80489180 001C78 0048+00 3/2 0/0 0/0 .text __dt__18daNpcT_ActorMngr_cFv */ -daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { +void __dt__18daNpcT_ActorMngr_cFv() { // NONMATCHING } @@ -603,4 +603,4 @@ daTag_AllMato_c::~daTag_AllMato_c() { // NONMATCHING } -/* 8048973C-8048973C 000058 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ \ No newline at end of file +/* 8048973C-8048973C 000058 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/actor/d_a_tag_push.cpp b/src/d/actor/d_a_tag_push.cpp index dbf1d3d44cc..3d6fbb08cd0 100644 --- a/src/d/actor/d_a_tag_push.cpp +++ b/src/d/actor/d_a_tag_push.cpp @@ -164,12 +164,6 @@ static int daTag_Push_IsDelete(void* i_this) { return 1; } -/* 804908CC-80490944 00068C 0078+00 1/0 0/0 0/0 .text __dt__12daTag_Push_cFv */ -inline daTag_Push_c::~daTag_Push_c() {} - -/* 80490884-804908CC 000644 0048+00 1/0 0/0 0/0 .text __dt__18daNpcT_ActorMngr_cFv */ -inline daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() {} - /* ############################################################################################## */ /* 80490978-80490998 -00001 0020+00 1/0 0/0 0/0 .data daTag_Push_MethodTable */ static actor_method_class daTag_Push_MethodTable = { @@ -194,4 +188,4 @@ extern actor_process_profile_definition g_profile_TAG_PUSH = { 0x44000, 0, fopAc_CULLBOX_CUSTOM_e, -}; \ No newline at end of file +};