diff --git a/configure.py b/configure.py index 9b34b73d7aa..91b71062e08 100755 --- a/configure.py +++ b/configure.py @@ -1874,7 +1874,7 @@ config.libs = [ ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_gwolf", extra_cflags=[DANPCF_C_HACK]), ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_hanjo"), ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_henna0"), - ActorRel(NonMatching, "d_a_npc_hoz"), + ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_hoz"), ActorRel(NonMatching, "d_a_npc_impal", extra_cflags=[DANPCF_C_HACK]), ActorRel(NonMatching, "d_a_npc_inko"), ActorRel(Equivalent, "d_a_npc_ins", extra_cflags=[DANPCF_C_HACK]), # weak func order diff --git a/include/d/actor/d_a_npc.h b/include/d/actor/d_a_npc.h index 537ae86bef8..9dd14737b03 100644 --- a/include/d/actor/d_a_npc.h +++ b/include/d/actor/d_a_npc.h @@ -799,6 +799,12 @@ public: STATIC_ASSERT(sizeof(daNpcT_c) == 0xE40); +#define daNpcT_ct(ptr, ClassName, faceMotionAnmData, motionAnmData, faceMotionSequenceData, faceMotionStepNum, motionSequenceData, motionStepNum, evtData, arcNames) \ + if (!fopAcM_CheckCondition(ptr, fopAcCnd_INIT_e)) { \ + new (ptr) ClassName(faceMotionAnmData, motionAnmData, faceMotionSequenceData, faceMotionStepNum, motionSequenceData, motionStepNum, evtData, arcNames); \ + fopAcM_OnCondition(ptr, fopAcCnd_INIT_e); \ + } + BOOL daNpcT_chkEvtBit(u32 i_idx); BOOL daNpcT_chkPointInArea(cXyz param_0, cXyz param_1, cXyz param_2, s16 param_3, BOOL param_4); u8 daNpcT_getDistTableIdx(int param_0, int param_1); diff --git a/include/d/actor/d_a_npc_hoz.h b/include/d/actor/d_a_npc_hoz.h index 61757295345..1082ffbe9d9 100644 --- a/include/d/actor/d_a_npc_hoz.h +++ b/include/d/actor/d_a_npc_hoz.h @@ -2,6 +2,7 @@ #define D_A_NPC_HOZ_H #include "d/actor/d_a_npc.h" +#include "d/actor/d_a_startAndGoal.h" /** * @ingroup actors-npcs @@ -13,6 +14,9 @@ */ class daNpc_Hoz_c : public daNpcT_c { public: + typedef int (daNpc_Hoz_c::*actionFunc)(void*); + typedef int (daNpc_Hoz_c::*cutFunc)(int); + enum Type { /* 0 */ TYPE_0, /* 1 */ TYPE_1, @@ -23,80 +27,113 @@ public: /* 6 */ TYPE_6, }; - /* 80A0150C */ ~daNpc_Hoz_c(); - /* 80A01658 */ void create(); - /* 80A01904 */ void CreateHeap(); - /* 80A01D54 */ void Delete(); - /* 80A01D88 */ void Execute(); - /* 80A01DA8 */ void Draw(); - /* 80A01E44 */ void createHeapCallBack(fopAc_ac_c*); - /* 80A01E64 */ void ctrlJointCallBack(J3DJoint*, int); + /* 80A01658 */ int create(); + /* 80A01904 */ int CreateHeap(); + /* 80A01D54 */ int Delete(); + /* 80A01D88 */ int Execute(); + /* 80A01DA8 */ int Draw(); + /* 80A01E44 */ static int createHeapCallBack(fopAc_ac_c*); + /* 80A01E64 */ static int ctrlJointCallBack(J3DJoint*, int); /* 80A01F54 */ u8 getType(); - /* 80A01FC8 */ void getFlowNodeNo(); - /* 80A01FE4 */ bool isDelete(); + /* 80A01FC8 */ int getFlowNodeNo(); + /* 80A01FE4 */ int isDelete(); /* 80A01FEC */ void reset(); - /* 80A021DC */ void setParam(); - /* 80A0236C */ void setAfterTalkMotion(); /* 80A02370 */ void srchActors(); - /* 80A02374 */ BOOL checkChangeEvt(); - /* 80A023EC */ BOOL evtTalk(); - /* 80A024D0 */ BOOL evtEndProc(); - /* 80A0260C */ BOOL evtCutProc(); - /* 80A026D4 */ int evtProc(); - /* 80A02918 */ void action(); - /* 80A029A0 */ void beforeMove(); - /* 80A02A18 */ void setAttnPos(); - /* 80A02C50 */ void setCollision(); - /* 80A02DD4 */ void evtOrder(); - /* 80A02F78 */ int drawDbgInfo(); - /* 80A02F80 */ void selectAction(); - /* 80A030A8 */ void chkAction(int (daNpc_Hoz_c::*)(void*)); - /* 80A030D4 */ void setAction(int (daNpc_Hoz_c::*)(void*)); - /* 80A0317C */ void wait(void*); - /* 80A03304 */ void waitBattle(void*); - /* 80A03578 */ void waitTwilightBattle(void*); - /* 80A037E4 */ void waitBoat(void*); - /* 80A03BDC */ void waitBoat2(void*); - /* 80A03F8C */ void waitBoat1_5(void*); - /* 80A04400 */ void waitTw(void*); - /* 80A045FC */ void talk(void*); - /* 80A0487C */ void ECut_boatRace(int); - /* 80A04BE4 */ void ECut_beforeBattle(int); - /* 80A04CDC */ void ECut_afterBattle(int); - /* 80A04E24 */ void ECut_beforeBlast(int); - /* 80A04F6C */ void ECut_afterBlast(int); - /* 80A050B4 */ void ECut_yMushi(int); - /* 80A051C8 */ void ECut_talkBreak(int); - /* 80A064E4 */ daNpc_Hoz_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**); - /* 80A065A4 */ u16 getEyeballMaterialNo(); - /* 80A065AC */ s32 getHeadJointNo(); - /* 80A065B4 */ s32 getNeckJointNo(); - /* 80A065BC */ s32 getBackboneJointNo(); - /* 80A065C4 */ int checkChangeJoint(int); - /* 80A065D4 */ int checkRemoveJoint(int); + /* 80A02F80 */ int selectAction(); + /* 80A030A8 */ int chkAction(int (daNpc_Hoz_c::*)(void*)); + /* 80A030D4 */ int setAction(int (daNpc_Hoz_c::*)(void*)); + /* 80A0317C */ int wait(void*); + /* 80A03304 */ int waitBattle(void*); + /* 80A03578 */ int waitTwilightBattle(void*); + /* 80A037E4 */ int waitBoat(void*); + /* 80A03BDC */ int waitBoat2(void*); + /* 80A03F8C */ int waitBoat1_5(void*); + /* 80A04400 */ int waitTw(void*); + /* 80A045FC */ int talk(void*); + /* 80A0487C */ int ECut_boatRace(int); + /* 80A04BE4 */ int ECut_beforeBattle(int); + /* 80A04CDC */ int ECut_afterBattle(int); + /* 80A04E24 */ int ECut_beforeBlast(int); + /* 80A04F6C */ int ECut_afterBlast(int); + /* 80A050B4 */ int ECut_yMushi(int); + /* 80A051C8 */ int ECut_talkBreak(int); + /* 80A064E4 */ daNpc_Hoz_c(daNpcT_faceMotionAnmData_c const* i_faceMotionAnmData, + daNpcT_motionAnmData_c const* i_motionAnmData, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_faceMotionSequenceData, + int i_faceMotionStepNum, + daNpcT_MotionSeqMngr_c::sequenceStepData_c const* i_motionSequenceData, int i_motionStepNum, + daNpcT_evtData_c const* i_evtData, char** i_arcNames) + : daNpcT_c(i_faceMotionAnmData, i_motionAnmData, i_faceMotionSequenceData, + i_faceMotionStepNum, i_motionSequenceData, i_motionStepNum, i_evtData, + i_arcNames) + { + OS_REPORT("|%06d:%x|daNpc_Hoz_c -> コンストラクト\n", g_Counter.mCounter0, this); + } + + /* 80A0150C */ virtual ~daNpc_Hoz_c(); + /* 80A065C4 */ virtual int checkChangeJoint(int i_jointNo) { return i_jointNo == 4; } + /* 80A065D4 */ virtual int checkRemoveJoint(int i_jointNo) { return i_jointNo == 9; } + /* 80A065BC */ virtual s32 getBackboneJointNo() { return 1; } + /* 80A065B4 */ virtual s32 getNeckJointNo() { return 3; } + /* 80A065AC */ virtual s32 getHeadJointNo() { return 4; } + /* 80A065A4 */ virtual u16 getEyeballMaterialNo() { return 1; } + /* 80A021DC */ virtual void setParam(); + /* 80A02374 */ virtual BOOL checkChangeEvt(); + /* 80A023EC */ virtual BOOL evtTalk(); + /* 80A024D0 */ virtual BOOL evtEndProc(); + /* 80A0260C */ virtual BOOL evtCutProc(); + /* 80A0236C */ virtual void setAfterTalkMotion(); + /* 80A026D4 */ virtual int evtProc(); + /* 80A02918 */ virtual void action(); + /* 80A029A0 */ virtual void beforeMove(); + /* 80A02A18 */ virtual void setAttnPos(); + /* 80A02C50 */ virtual void setCollision(); + /* 80A02DD4 */ virtual void evtOrder(); + /* 80A02F78 */ virtual int drawDbgInfo(); + + #if DEBUG + int test(void*); + #endif bool getGameStartFlag() { return mGameStartFlag; } void setPotBreakFlag() { mPotBreakFlag = true; } static char* mCutNameList[8]; - static u8 mCutList[96]; + static cutFunc mCutList[]; private: - /* 0xE40 */ u8 field_0xe40[0x14d]; + /* 0xE40 */ u8 field_0xE40[0xE44 - 0xE40]; + /* 0xE44 */ dCcD_Cyl mCyl; + /* 0xF80 */ u8 mType; + /* 0xF84 */ daStartAndGoal_c* field_0xf84; + /* 0xF88 */ u8 field_0xf88; + /* 0xF89 */ u8 field_0xf89; + /* 0xF8A */ u8 field_0xf8a; + /* 0xF8B */ u8 field_0xf8b; + /* 0xF8C */ u8 field_0xf8c; /* 0xF8D */ bool mGameStartFlag; /* 0xF8E */ bool mPotBreakFlag; - /* 0xF8F */ u8 field_0xf8f[0x39]; + /* 0xF90 */ cXyz field_0xf90; + /* 0xF9C */ s16 field_0xf9c; + /* 0xFA0 */ daNpcT_ActorMngr_c field_0xfa0; + /* 0xFA8 */ int field_0xfa8; + /* 0xFAC */ int (daNpc_Hoz_c::*field_0xfac)(void*); + /* 0xFB8 */ int (daNpc_Hoz_c::*mAction)(void*); + /* 0xFC4 */ u8 field_0xfc4; }; STATIC_ASSERT(sizeof(daNpc_Hoz_c) == 0xFC8); -struct daNpc_Hoz_Param_c { - /* 80A065E4 */ ~daNpc_Hoz_Param_c(); +struct daNpc_Hoz_HIOParam { + /* 0x00 */ daNpcT_HIOParam common; + /* 0x8C */ f32 field_0x8c; +}; - static u8 const m[144]; +class daNpc_Hoz_Param_c { +public: + /* 80A065E4 */ virtual ~daNpc_Hoz_Param_c() {} + + static const daNpc_Hoz_HIOParam m; }; #endif /* D_A_NPC_HOZ_H */ diff --git a/include/d/actor/d_a_startAndGoal.h b/include/d/actor/d_a_startAndGoal.h index 3e8d121ee7a..f4984dae11e 100644 --- a/include/d/actor/d_a_startAndGoal.h +++ b/include/d/actor/d_a_startAndGoal.h @@ -1,5 +1,33 @@ #ifndef D_A_STARTANDGOAL_H #define D_A_STARTANDGOAL_H +#include "d/actor/d_a_npc.h" + +class daStartAndGoal_Path_c : public daNpcF_Path_c { +public: + /* 80D4D7B8 */ BOOL chkPassed2(cXyz); + + /* 80D4D928 */ virtual ~daStartAndGoal_Path_c(); +}; + +class daStartAndGoal_c : public fopAc_ac_c { +public: + /* 80D4D84C */ int getType(); + /* 80D4D884 */ int Create(); + /* 80D4D998 */ void init(); + /* 80D4DA68 */ void actorPosCheck(); + /* 80D4DB30 */ int readyStartTimer(); + /* 80D4DBAC */ BOOL isStartCheck(); + /* 80D4DBD0 */ BOOL isReadyCheck(); + /* 80D4DC50 */ int Execute(); + /* 80D4DCF4 */ int Draw(); + /* 80D4DCFC */ int Delete(); + + /* 0x568 */ daStartAndGoal_Path_c mPath; + /* 0xB98 */ u8 field_0xb98; + /* 0xB99 */ u8 mType; + /* 0xB9C */ int mAction; + /* 0xBA0 */ bool mStarted; +}; #endif /* D_A_STARTANDGOAL_H */ diff --git a/include/d/d_meter2_info.h b/include/d/d_meter2_info.h index 6865ac2ccb2..b41fcfd51a6 100644 --- a/include/d/d_meter2_info.h +++ b/include/d/d_meter2_info.h @@ -206,6 +206,7 @@ public: void resetWindowAccept() { mWindowAccept = 0xFFFF; } void onWindowAccept(int param_0) { mWindowAccept |= (u16)(1 << param_0); } void offWindowAccept(int param_0) { mWindowAccept &= ~(u16)(1 << param_0); } + void onMenuInForce(int param_0) { unk_0x98 |= (u16)(1 << param_0); } public: /* 0x04 */ u8 unk_0x4[4]; @@ -853,4 +854,8 @@ inline void dMeter2Info_offWindowAccept(int param_0) { g_meter2_info.offWindowAccept(param_0); } +inline void dMeter2Info_onMenuInForce(int param_0) { + g_meter2_info.onMenuInForce(param_0); +} + #endif /* D_METER_D_METER2_INFO_H */ diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index 86214932095..52a032253f0 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -18,12 +18,6 @@ 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); \ - } - #define fopAcM_RegisterDeleteID(i_this, actor_name_str) \ const fpc_ProcID procID = fopAcM_GetID(i_this); \ "Delete -> " actor_name_str "(id=%d)\n" diff --git a/src/d/actor/d_a_npc_aru.cpp b/src/d/actor/d_a_npc_aru.cpp index bb64567772a..a8ea18adca6 100644 --- a/src/d/actor/d_a_npc_aru.cpp +++ b/src/d/actor/d_a_npc_aru.cpp @@ -331,7 +331,7 @@ const daNpc_Aru_HIOParam daNpc_Aru_Param_c::m = { /* 809518C4-80951BB0 000224 02EC+00 1/1 0/0 0/0 .text create__11daNpc_Aru_cFv */ cPhs__Step daNpc_Aru_c::create() { - fopAcM_SetupActor2(this, daNpc_Aru_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Aru_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_bans.cpp b/src/d/actor/d_a_npc_bans.cpp index 69533051034..3cd351b500a 100644 --- a/src/d/actor/d_a_npc_bans.cpp +++ b/src/d/actor/d_a_npc_bans.cpp @@ -392,7 +392,7 @@ static NPC_BANS_HIO_CLASS l_HIO; /* 80962AA0-80962D6C 0002C0 02CC+00 1/1 0/0 0/0 .text create__12daNpc_Bans_cFv */ cPhs__Step daNpc_Bans_c::create() { - fopAcM_SetupActor2(this, daNpc_Bans_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Bans_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_besu.cpp b/src/d/actor/d_a_npc_besu.cpp index 2ffc5941ee4..e501dfd34ec 100644 --- a/src/d/actor/d_a_npc_besu.cpp +++ b/src/d/actor/d_a_npc_besu.cpp @@ -620,7 +620,7 @@ int daNpc_Besu_c::create() { 0x35C0, 0x35C0, 0x35D0, 0x35C0, 0x35C0, 0x35C0, 0x0, }; - fopAcM_SetupActor2(this, daNpc_Besu_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Besu_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList ); diff --git a/src/d/actor/d_a_npc_bou.cpp b/src/d/actor/d_a_npc_bou.cpp index a9825373f3a..a8d516a043b 100644 --- a/src/d/actor/d_a_npc_bou.cpp +++ b/src/d/actor/d_a_npc_bou.cpp @@ -183,7 +183,7 @@ daNpc_Bou_Param_c::Data const daNpc_Bou_Param_c::m= { /* 8096D0D8-8096D38C 000238 02B4+00 1/1 0/0 0/0 .text create__11daNpc_Bou_cFv */ int daNpc_Bou_c::create() { static int const heapSize[6] = {15696, 15696, 15696, 15696, 15696, 0}; - fopAcM_SetupActor2(this, daNpc_Bou_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Bou_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList ); diff --git a/src/d/actor/d_a_npc_fairy_seirei.cpp b/src/d/actor/d_a_npc_fairy_seirei.cpp index 1d79452f1e2..271ca24be66 100644 --- a/src/d/actor/d_a_npc_fairy_seirei.cpp +++ b/src/d/actor/d_a_npc_fairy_seirei.cpp @@ -88,7 +88,7 @@ const f32 daNpc_FairySeirei_Param_c::m[37] = { /* 8054006C-80540298 0001EC 022C+00 1/1 0/0 0/0 .text create__19daNpc_FairySeirei_cFv */ int daNpc_FairySeirei_c::create() { - fopAcM_SetupActor2(this, daNpc_FairySeirei_c, &l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_FairySeirei_c, &l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_gnd.cpp b/src/d/actor/d_a_npc_gnd.cpp index 7c700c1f0fd..bc40192b5aa 100644 --- a/src/d/actor/d_a_npc_gnd.cpp +++ b/src/d/actor/d_a_npc_gnd.cpp @@ -131,7 +131,7 @@ daNpc_Gnd_c::~daNpc_Gnd_c() { /* 809BB730-809BB9D4 000210 02A4+00 1/1 0/0 0/0 .text create__11daNpc_Gnd_cFv */ int daNpc_Gnd_c::create() { - fopAcM_SetupActor2(this, daNpc_Gnd_c, l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Gnd_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_npc_grmc.cpp b/src/d/actor/d_a_npc_grmc.cpp index ca3b1d7d09a..5807320ec17 100644 --- a/src/d/actor/d_a_npc_grmc.cpp +++ b/src/d/actor/d_a_npc_grmc.cpp @@ -222,7 +222,7 @@ daNpc_grMC_HIOParam const daNpc_grMC_Param_c::m = { /* 809D7534-809D77BC 000214 0288+00 1/1 0/0 0/0 .text create__12daNpc_grMC_cFv */ cPhs__Step daNpc_grMC_c::create() { - fopAcM_SetupActor2(this, daNpc_grMC_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, + daNpcT_ct(this, daNpc_grMC_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_hanjo.cpp b/src/d/actor/d_a_npc_hanjo.cpp index 695394a9c3f..09eee361263 100644 --- a/src/d/actor/d_a_npc_hanjo.cpp +++ b/src/d/actor/d_a_npc_hanjo.cpp @@ -194,7 +194,7 @@ dCcD_SrcGObjInf const daNpc_Hanjo_c::mStoneCcDObjInfo = { /* 809F9278-809F9578 0002D8 0300+00 1/1 0/0 0/0 .text create__13daNpc_Hanjo_cFv */ int daNpc_Hanjo_c::create() { static int const heapSize[5] = {0x61B0, 0x41D0, 0x39D0, 0x39C0, 0}; - fopAcM_SetupActor2(this, daNpc_Hanjo_c, l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Hanjo_c, l_faceMotionAnmData, (daNpcT_motionAnmData_c*)l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_hoz.cpp b/src/d/actor/d_a_npc_hoz.cpp index 01a21be4092..46016bdd0bf 100644 --- a/src/d/actor/d_a_npc_hoz.cpp +++ b/src/d/actor/d_a_npc_hoz.cpp @@ -6,306 +6,14 @@ #include "d/dolzel_rel.h" // IWYU pragma: keep #include "d/actor/d_a_npc_hoz.h" -#include "dol2asm.h" - - -// -// Forward References: -// - -extern "C" void __dt__11daNpc_Hoz_cFv(); -extern "C" void create__11daNpc_Hoz_cFv(); -extern "C" void CreateHeap__11daNpc_Hoz_cFv(); -extern "C" void __dt__15J3DTevKColorAnmFv(); -extern "C" void __ct__15J3DTevKColorAnmFv(); -extern "C" void __dt__14J3DTevColorAnmFv(); -extern "C" void __ct__14J3DTevColorAnmFv(); -extern "C" void __dt__11J3DTexNoAnmFv(); -extern "C" void __ct__11J3DTexNoAnmFv(); -extern "C" void __dt__12J3DTexMtxAnmFv(); -extern "C" void __ct__12J3DTexMtxAnmFv(); -extern "C" void __dt__14J3DMatColorAnmFv(); -extern "C" void __ct__14J3DMatColorAnmFv(); -extern "C" void Delete__11daNpc_Hoz_cFv(); -extern "C" void Execute__11daNpc_Hoz_cFv(); -extern "C" void Draw__11daNpc_Hoz_cFv(); -extern "C" void createHeapCallBack__11daNpc_Hoz_cFP10fopAc_ac_c(); -extern "C" void ctrlJointCallBack__11daNpc_Hoz_cFP8J3DJointi(); -extern "C" static void s_sub__FPvPv(); -extern "C" static void s_subCanoe__FPvPv(); -extern "C" void getType__11daNpc_Hoz_cFv(); -extern "C" void getFlowNodeNo__11daNpc_Hoz_cFv(); -extern "C" bool isDelete__11daNpc_Hoz_cFv(); -extern "C" void reset__11daNpc_Hoz_cFv(); -extern "C" static void s_subBomb__FPvPv(); -extern "C" void setParam__11daNpc_Hoz_cFv(); -extern "C" void setAfterTalkMotion__11daNpc_Hoz_cFv(); -extern "C" void srchActors__11daNpc_Hoz_cFv(); -extern "C" void checkChangeEvt__11daNpc_Hoz_cFv(); -extern "C" void evtTalk__11daNpc_Hoz_cFv(); -extern "C" void evtEndProc__11daNpc_Hoz_cFv(); -extern "C" void evtCutProc__11daNpc_Hoz_cFv(); -extern "C" void evtProc__11daNpc_Hoz_cFv(); -extern "C" void action__11daNpc_Hoz_cFv(); -extern "C" void beforeMove__11daNpc_Hoz_cFv(); -extern "C" void setAttnPos__11daNpc_Hoz_cFv(); -extern "C" void setCollision__11daNpc_Hoz_cFv(); -extern "C" void evtOrder__11daNpc_Hoz_cFv(); -extern "C" bool drawDbgInfo__11daNpc_Hoz_cFv(); -extern "C" void selectAction__11daNpc_Hoz_cFv(); -extern "C" void chkAction__11daNpc_Hoz_cFM11daNpc_Hoz_cFPCvPvPv_i(); -extern "C" void setAction__11daNpc_Hoz_cFM11daNpc_Hoz_cFPCvPvPv_i(); -extern "C" void wait__11daNpc_Hoz_cFPv(); -extern "C" void waitBattle__11daNpc_Hoz_cFPv(); -extern "C" void waitTwilightBattle__11daNpc_Hoz_cFPv(); -extern "C" void waitBoat__11daNpc_Hoz_cFPv(); -extern "C" void waitBoat2__11daNpc_Hoz_cFPv(); -extern "C" void waitBoat1_5__11daNpc_Hoz_cFPv(); -extern "C" void waitTw__11daNpc_Hoz_cFPv(); -extern "C" void talk__11daNpc_Hoz_cFPv(); -extern "C" void ECut_boatRace__11daNpc_Hoz_cFi(); -extern "C" void ECut_beforeBattle__11daNpc_Hoz_cFi(); -extern "C" void ECut_afterBattle__11daNpc_Hoz_cFi(); -extern "C" void ECut_beforeBlast__11daNpc_Hoz_cFi(); -extern "C" void ECut_afterBlast__11daNpc_Hoz_cFi(); -extern "C" void ECut_yMushi__11daNpc_Hoz_cFi(); -extern "C" void ECut_talkBreak__11daNpc_Hoz_cFi(); -extern "C" static void daNpc_Hoz_Create__FPv(); -extern "C" static void daNpc_Hoz_Delete__FPv(); -extern "C" static void daNpc_Hoz_Execute__FPv(); -extern "C" static void daNpc_Hoz_Draw__FPv(); -extern "C" static bool daNpc_Hoz_IsDelete__FPv(); -extern "C" void calc__11J3DTexNoAnmCFPUs(); -extern "C" void __dt__10cCcD_GSttsFv(); -extern "C" void __dt__8daNpcT_cFv(); -extern "C" void __dt__4cXyzFv(); -extern "C" void __dt__5csXyzFv(); -extern "C" void __dt__18daNpcT_ActorMngr_cFv(); -extern "C" void __dt__8cM3dGCylFv(); -extern "C" void __dt__8cM3dGAabFv(); -extern "C" void -__ct__8daNpcT_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" void __ct__5csXyzFv(); -extern "C" void __dt__15daNpcT_JntAnm_cFv(); -extern "C" void __ct__4cXyzFv(); -extern "C" void __dt__22daNpcT_MotionSeqMngr_cFv(); -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" void setEyeAngleY__15daNpcT_JntAnm_cF4cXyzsifs(); -extern "C" void setEyeAngleX__15daNpcT_JntAnm_cF4cXyzfs(); -extern "C" bool chkXYItems__8daNpcT_cFv(); -extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); -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" void afterJntAnm__8daNpcT_cFi(); -extern "C" void afterMoved__8daNpcT_cFv(); -extern "C" void decTmr__8daNpcT_cFv(); -extern "C" void drawOtherMdl__8daNpcT_cFv(); -extern "C" void drawGhost__8daNpcT_cFv(); -extern "C" bool afterSetFaceMotionAnm__8daNpcT_cFiifi(); -extern "C" bool afterSetMotionAnm__8daNpcT_cFiifi(); -extern "C" void getFaceMotionAnm__8daNpcT_cF26daNpcT_faceMotionAnmData_c(); -extern "C" void getMotionAnm__8daNpcT_cF22daNpcT_motionAnmData_c(); -extern "C" void changeAnm__8daNpcT_cFPiPi(); -extern "C" void changeBck__8daNpcT_cFPiPi(); -extern "C" void changeBtp__8daNpcT_cFPiPi(); -extern "C" void changeBtk__8daNpcT_cFPiPi(); -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" u16 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(); -extern "C" void checkChangeJoint__11daNpc_Hoz_cFi(); -extern "C" void checkRemoveJoint__11daNpc_Hoz_cFi(); -extern "C" void __dt__17daNpc_Hoz_Param_cFv(); -extern "C" static void func_80A0662C(); -extern "C" static void func_80A06634(); -extern "C" u8 const m__17daNpc_Hoz_Param_c[144]; -extern "C" extern char const* const d_a_npc_hoz__stringBase0; -extern "C" void* mCutNameList__11daNpc_Hoz_c[8]; -extern "C" u8 mCutList__11daNpc_Hoz_c[96]; - -// -// External References: -// - -extern "C" void -__ct__16mDoExt_McaMorfSOFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiP10Z2CreatureUlUl(); -extern "C" void stopZelAnime__16mDoExt_McaMorfSOFv(); -extern "C" void __ct__10fopAc_ac_cFv(); -extern "C" void __dt__10fopAc_ac_cFv(); -extern "C" void fopAc_IsActor__FPv(); -extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl(); -extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff(); -extern "C" void fopAcM_searchActorAngleY__FPC10fopAc_ac_cPC10fopAc_ac_c(); -extern "C" void fopAcM_orderSpeakEvent__FP10fopAc_ac_cUsUs(); -extern "C" void fopAcM_orderOtherEventId__FP10fopAc_ac_csUcUsUsUs(); -extern "C" void fpcEx_Search__FPFPvPv_PvPv(); -extern "C" void dComIfGs_wolfeye_effect_check__Fv(); -extern "C" void isSwitch__12dSv_danBit_cCFi(); -extern "C" void onSwitch__10dSv_info_cFii(); -extern "C" void isSwitch__10dSv_info_cCFii(); -extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci(); -extern "C" void reset__14dEvt_control_cFv(); -extern "C" void setPtT__14dEvt_control_cFPv(); -extern "C" void setPtI_Id__14dEvt_control_cFUi(); -extern "C" void setObjectArchive__16dEvent_manager_cFPc(); -extern "C" void getEventIdx__16dEvent_manager_cFP10fopAc_ac_cPCcUc(); -extern "C" void endCheck__16dEvent_manager_cFs(); -extern "C" void getMyStaffId__16dEvent_manager_cFPCcP10fopAc_ac_ci(); -extern "C" void getIsAddvance__16dEvent_manager_cFi(); -extern "C" void getMyActIdx__16dEvent_manager_cFiPCPCciii(); -extern "C" void getMySubstanceP__16dEvent_manager_cFiPCci(); -extern "C" void cutEnd__16dEvent_manager_cFi(); -extern "C" void getRunEventName__16dEvent_manager_cFv(); -extern "C" void ChkPresentEnd__16dEvent_manager_cFv(); -extern "C" void __ct__12dBgS_AcchCirFv(); -extern "C" void SetWallR__12dBgS_AcchCirFf(); -extern "C" void __dt__9dBgS_AcchFv(); -extern "C" void __ct__9dBgS_AcchFv(); -extern "C" void Set__9dBgS_AcchFP4cXyzP4cXyzP10fopAc_ac_ciP12dBgS_AcchCirP4cXyzP5csXyzP5csXyz(); -extern "C" void CrrPos__9dBgS_AcchFR4dBgS(); -extern "C" void __ct__11dBgS_GndChkFv(); -extern "C" void __dt__11dBgS_GndChkFv(); -extern "C" void __ct__11dBgS_LinChkFv(); -extern "C" void __dt__11dBgS_LinChkFv(); -extern "C" void SetObj__16dBgS_PolyPassChkFv(); -extern "C" void __ct__10dCcD_GSttsFv(); -extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c(); -extern "C" void __ct__12dCcD_GObjInfFv(); -extern "C" void __dt__12dCcD_GObjInfFv(); -extern "C" void Set__8dCcD_CylFRC11dCcD_SrcCyl(); -extern "C" void initialize__18daNpcT_ActorMngr_cFv(); -extern "C" void entry__18daNpcT_ActorMngr_cFP10fopAc_ac_c(); -extern "C" void remove__18daNpcT_ActorMngr_cFv(); -extern "C" void getActorP__18daNpcT_ActorMngr_cFv(); -extern "C" void initialize__15daNpcT_MatAnm_cFv(); -extern "C" void initialize__22daNpcT_MotionSeqMngr_cFv(); -extern "C" void initialize__15daNpcT_JntAnm_cFv(); -extern "C" void setParam__15daNpcT_JntAnm_cFP10fopAc_ac_cP8J3DModelP4cXyziiiffffffffffP4cXyz(); -extern "C" void calcJntRad__15daNpcT_JntAnm_cFfff(); -extern "C" void tgHitCallBack__8daNpcT_cFP10fopAc_ac_cP12dCcD_GObjInfP10fopAc_ac_cP12dCcD_GObjInf(); -extern "C" void loadRes__8daNpcT_cFPCScPPCc(); -extern "C" void deleteRes__8daNpcT_cFPCScPPCc(); -extern "C" void execute__8daNpcT_cFv(); -extern "C" void draw__8daNpcT_cFiifP11_GXColorS10fiii(); -extern "C" void setEnvTevColor__8daNpcT_cFv(); -extern "C" void setRoomNo__8daNpcT_cFv(); -extern "C" void ctrlBtk__8daNpcT_cFv(); -extern "C" void setMtx__8daNpcT_cFv(); -extern "C" void ctrlMsgAnm__8daNpcT_cFPiPiP10fopAc_ac_ci(); -extern "C" void ctrlJoint__8daNpcT_cFP8J3DJointP8J3DModel(); -extern "C" void setFootPos__8daNpcT_cFv(); -extern "C" void setFootPrtcl__8daNpcT_cFP4cXyzff(); -extern "C" bool checkCullDraw__8daNpcT_cFv(); -extern "C" void twilight__8daNpcT_cFv(); -extern "C" void evtChange__8daNpcT_cFv(); -extern "C" void clrParam__8daNpcT_cFv(); -extern "C" void setFaceMotionAnm__8daNpcT_cFib(); -extern "C" void setMotionAnm__8daNpcT_cFifi(); -extern "C" void setPos__8daNpcT_cF4cXyz(); -extern "C" void setAngle__8daNpcT_cFs(); -extern "C" void srchPlayerActor__8daNpcT_cFv(); -extern "C" void step__8daNpcT_cFsiiii(); -extern "C" void initTalk__8daNpcT_cFiPP10fopAc_ac_c(); -extern "C" void talkProc__8daNpcT_cFPiiPP10fopAc_ac_ci(); -extern "C" void daNpcT_getDistTableIdx__Fii(); -extern "C" void daNpcT_chkEvtBit__FUl(); -extern "C" void daNpcT_offTmpBit__FUl(); -extern "C" void daNpcT_chkTmpBit__FUl(); -extern "C" void daNpcF_chkEvtBit__FUl(); -extern "C" void checkNowWolfEyeUp__9daPy_py_cFv(); -extern "C" void dKy_darkworld_check__Fv(); -extern "C" void setMiniGameItem__13dMeter2Info_cFUc(); -extern "C" void resetMiniGameItem__13dMeter2Info_cFb(); -extern "C" void setMiniGameCount__13dMeter2Info_cFSc(); -extern "C" void __ct__10dMsgFlow_cFv(); -extern "C" void __dt__10dMsgFlow_cFv(); -extern "C" void Set__4cCcSFP8cCcD_Obj(); -extern "C" void __mi__4cXyzCFRC3Vec(); -extern "C" void cM_atan2s__Fff(); -extern "C" void cM_rndF__Ff(); -extern "C" void __ct__11cBgS_GndChkFv(); -extern "C" void __dt__11cBgS_GndChkFv(); -extern "C" void __dt__13cBgS_PolyInfoFv(); -extern "C" void __dt__8cM3dGCirFv(); -extern "C" void SetC__8cM3dGCylFRC4cXyz(); -extern "C" void SetH__8cM3dGCylFf(); -extern "C" void SetR__8cM3dGCylFf(); -extern "C" void __ct__10Z2CreatureFv(); -extern "C" void __dt__10Z2CreatureFv(); -extern "C" void init__10Z2CreatureFP3VecP3VecUcUc(); -extern "C" void* __nw__FUl(); -extern "C" void __dl__FPv(); -extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void getTexNo__16J3DAnmTexPatternCFUsPUs(); -extern "C" void initialize__14J3DMaterialAnmFv(); -extern "C" void __destroy_arr(); -extern "C" void __construct_array(); -extern "C" void __ptmf_test(); -extern "C" void __ptmf_cmpr(); -extern "C" void __ptmf_scall(); -extern "C" void _savegpr_22(); -extern "C" void _savegpr_26(); -extern "C" void _savegpr_27(); -extern "C" void _savegpr_28(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_22(); -extern "C" void _restgpr_26(); -extern "C" void _restgpr_27(); -extern "C" void _restgpr_28(); -extern "C" void _restgpr_29(); -extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" extern void* __vt__8dCcD_Cyl[36]; -extern "C" extern void* __vt__9dCcD_Stts[11]; -extern "C" u8 mCcDCyl__8daNpcT_c[68]; -extern "C" extern void* __vt__8daNpcT_c[49]; -extern "C" extern void* __vt__15daNpcT_MatAnm_c[4 + 1 /* padding */]; -extern "C" extern void* __vt__12cCcD_CylAttr[25]; -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_meter2_info[248]; -extern "C" void __register_global_object(); -extern "C" void readyStartTimer__16daStartAndGoal_cFv(); -extern "C" void isStartCheck__16daStartAndGoal_cFv(); - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 80A06764-80A06764 000114 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80A06764 = ""; -SECTION_DEAD static char const* const stringBase_80A06765 = "BOAT_RACE"; -SECTION_DEAD static char const* const stringBase_80A0676F = "BOAT_RACE_RETURN"; -SECTION_DEAD static char const* const stringBase_80A06780 = "BEFORE_BATTLE"; -SECTION_DEAD static char const* const stringBase_80A0678E = "AFTER_BATTLE"; -SECTION_DEAD static char const* const stringBase_80A0679B = "BEFORE_BLAST"; -SECTION_DEAD static char const* const stringBase_80A067A8 = "AFTER_BLAST"; -SECTION_DEAD static char const* const stringBase_80A067B4 = "Y_MUSHI"; -SECTION_DEAD static char const* const stringBase_80A067BC = "TALK_BREAK"; -SECTION_DEAD static char const* const stringBase_80A067C7 = "Hoz"; -SECTION_DEAD static char const* const stringBase_80A067CB = "Hoz_TW"; -SECTION_DEAD static char const* const stringBase_80A067D2 = "Hoz1"; -SECTION_DEAD static char const* const stringBase_80A067D7 = "Hoz2"; -SECTION_DEAD static char const* const stringBase_80A067DC = "Hoz3"; -SECTION_DEAD static char const* const stringBase_80A067E1 = "Hoz2_3"; -#pragma pop +#include "d/actor/d_a_arrow.h" +#include "d/actor/d_a_canoe.h" +#include "d/d_meter2_info.h" /* 80A06824-80A06834 000020 0010+00 1/1 0/0 0/0 .data l_bmdData */ -SECTION_DATA static u8 l_bmdData[16] = { - 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x02, +static int l_bmdData[2][2] = { + {13, 1}, + {3, 2}, }; /* 80A06834-80A0687C -00001 0048+00 0/1 0/0 0/0 .data l_evtList */ @@ -333,276 +41,163 @@ static char* l_resNameList[7] = { }; /* 80A06898-80A0689C 000094 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[] = { + 1, + 2, + -1, }; /* 80A0689C-80A068A0 000098 0004+00 1/0 0/0 0/0 .data l_loadResPtrnTW */ -SECTION_DATA static u32 l_loadResPtrnTW = 0x010203FF; +static s8 l_loadResPtrnTW[] = {1, 2, 3, -1}; /* 80A068A0-80A068A4 00009C 0004+00 1/0 0/0 0/0 .data l_loadResPtrn1 */ -SECTION_DATA static u32 l_loadResPtrn1 = 0x010406FF; +static s8 l_loadResPtrn1[] = {1, 4, 6, -1}; /* 80A068A4-80A068AC 0000A0 0005+03 1/0 0/0 0/0 .data l_loadResPtrnBattle */ -SECTION_DATA static u8 l_loadResPtrnBattle[5 + 3 /* padding */] = { - 0x01, - 0x04, - 0x05, - 0x06, - 0xFF, - /* padding */ - 0x00, - 0x00, - 0x00, +static s8 l_loadResPtrnBattle[] = { + 1, + 4, + 5, + 6, + -1, }; /* 80A068AC-80A068C8 -00001 001C+00 1/2 0/0 0/0 .data l_loadResPtrnList */ -SECTION_DATA static void* l_loadResPtrnList[7] = { - (void*)&l_loadResPtrn0, (void*)&l_loadResPtrn1, (void*)&l_loadResPtrn1, - (void*)&l_loadResPtrnBattle, (void*)&l_loadResPtrnTW, (void*)&l_loadResPtrn1, - (void*)&l_loadResPtrnTW, +static s8* l_loadResPtrnList[7] = { + l_loadResPtrn0, l_loadResPtrn1, l_loadResPtrn1, + l_loadResPtrnBattle, l_loadResPtrnTW, l_loadResPtrn1, + l_loadResPtrnTW, }; /* 80A068C8-80A06D0C 0000C4 0444+00 0/1 0/0 0/0 .data l_faceMotionAnmData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_faceMotionAnmData[1092] = { - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x2E, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x2F, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x34, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0D, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x13, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x13, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0A, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x32, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x37, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0A, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, - 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x13, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x13, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x2B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, - 0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x27, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, - 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x2C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x17, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, - 0x00, 0x00, 0x00, 0x2D, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x2A, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x01, +static daNpcT_faceMotionAnmData_c l_faceMotionAnmData[39] = { + {-1, 0, 0, 19, 2, 1, 1}, + {8, 0, 1, 19, 2, 1, 1}, + {7, 2, 1, 19, 2, 1, 1}, + {5, 2, 3, 45, 2, 3, 0}, + {6, 0, 3, 46, 0, 3, 0}, + {7, 0, 3, 47, 0, 3, 0}, + {8, 0, 3, 48, 0, 3, 0}, + {9, 2, 3, 49, 2, 3, 0}, + {12, 0, 3, 52, 0, 3, 0}, + {13, 0, 3, 53, 0, 3, 0}, + {14, 0, 3, 19, 2, 1, 1}, + {15, 0, 3, 54, 0, 3, 0}, + {26, 2, 3, 19, 2, 1, 1}, + {16, 2, 3, 19, 2, 1, 1}, + {17, 0, 3, 19, 2, 1, 1}, + {27, 2, 3, 19, 2, 1, 1}, + {18, 0, 3, 19, 2, 1, 1}, + {10, 0, 3, 50, 0, 3, 0}, + {24, 2, 3, 55, 2, 3, 0}, + {11, 0, 3, 51, 0, 3, 0}, + {4, 0, 6, 10, 0, 6, 0}, + {5, 2, 6, 11, 2, 6, 0}, + {3, 0, 5, 19, 0, 1, 1}, + {4, 0, 5, 19, 0, 1, 1}, + {5, 2, 5, 19, 0, 1, 1}, + {19, 0, 4, 19, 0, 1, 1}, + {16, 0, 4, 43, 0, 4, 0}, + {10, 0, 4, 38, 0, 4, 0}, + {11, 0, 4, 39, 0, 4, 0}, + {12, 0, 4, 40, 0, 4, 0}, + {13, 0, 4, 19, 2, 1, 1}, + {20, 2, 4, 19, 2, 1, 1}, + {18, 0, 4, 44, 0, 4, 0}, + {23, 2, 4, 19, 2, 1, 1}, + {14, 0, 4, 41, 0, 4, 1}, + {21, 2, 4, 45, 2, 4, 1}, + {15, 0, 4, 42, 0, 4, 1}, + {17, 0, 4, 19, 2, 1, 1}, + {22, 2, 4, 19, 2, 1, 1}, }; -#pragma pop /* 80A06D0C-80A07150 000508 0444+00 0/1 0/0 0/0 .data l_motionAnmData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_motionAnmData[1092] = { - 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x10, - 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, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x2A, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x25, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, - 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1D, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, - 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, - 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, - 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x22, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, - 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1B, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, - 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x01, 0x00, 0x00, +static daNpcT_motionAnmData_c l_motionAnmData[39] = { + {10, 2, 1, 16, 0, 1, 1, 0}, + {9, 0, 1, 16, 0, 1, 1, 0}, + {19, 2, 3, 16, 0, 1, 1, 0}, + {20, 0, 3, 40, 0, 3, 0, 0}, + {21, 0, 3, 16, 0, 1, 1, 0}, + {22, 0, 3, 41, 0, 3, 0, 0}, + {23, 2, 3, 42, 2, 3, 0, 0}, + {30, 0, 3, 16, 0, 1, 1, 0}, + {31, 0, 3, 16, 0, 1, 1, 0}, + {32, 2, 3, 16, 0, 1, 1, 0}, + {33, 0, 3, 16, 0, 1, 1, 0}, + {34, 2, 3, 16, 0, 1, 1, 0}, + {35, 0, 3, 16, 0, 1, 1, 0}, + {37, 2, 3, 16, 0, 1, 1, 0}, + {36, 0, 3, 16, 0, 1, 1, 0}, + {28, 0, 3, 16, 0, 1, 1, 0}, + {29, 2, 3, 16, 0, 1, 1, 0}, + {6, 0, 6, 16, 0, 1, 1, 0}, + {7, 2, 6, 16, 0, 1, 1, 0}, + {6, 0, 5, 16, 0, 1, 1, 0}, + {7, 2, 5, 16, 0, 1, 1, 0}, + {29, 0, 4, 16, 0, 1, 1, 0}, + {8, 0, 4, 16, 0, 1, 1, 0}, + {9, 0, 4, 16, 0, 1, 1, 0}, + {24, 0, 4, 16, 0, 1, 1, 0}, + {25, 2, 4, 16, 0, 1, 1, 0}, + {26, 0, 4, 16, 0, 1, 1, 0}, + {30, 0, 4, 16, 0, 1, 1, 0}, + {32, 2, 4, 16, 0, 1, 1, 0}, + {34, 0, 4, 16, 0, 1, 1, 0}, + {31, 0, 4, 16, 0, 1, 1, 0}, + {33, 2, 4, 16, 0, 1, 1, 0}, + {35, 0, 4, 16, 0, 1, 1, 0}, + {27, 0, 4, 16, 0, 1, 1, 0}, + {28, 2, 4, 16, 0, 1, 1, 0}, + {4, 0, 4, 16, 0, 1, 1, 0}, + {5, 2, 4, 16, 0, 1, 1, 0}, + {6, 0, 4, 16, 0, 1, 1, 0}, + {7, 2, 4, 16, 0, 1, 1, 0}, }; -#pragma pop /* 80A07150-80A07380 00094C 0230+00 0/1 0/0 0/0 .data l_faceMotionSequenceData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_faceMotionSequenceData[560] = { - 0x00, 0x01, 0xFF, 0x01, 0x00, 0x00, 0xFF, 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, 0x04, 0xFF, 0x01, 0x00, 0x03, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x06, 0xFF, 0x01, 0x00, 0x07, 0xFF, 0x00, 0xFF, 0xFF, 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, 0x01, 0x00, 0x0A, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x09, 0xFF, 0x01, 0x00, 0x0A, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0B, 0xFF, 0x01, 0x00, 0x0C, 0xFF, 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, 0x01, 0x00, 0x0F, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1A, 0xFF, 0x01, 0x00, 0x02, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1B, 0xFF, 0x01, 0x00, 0x02, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1C, 0xFF, 0x01, 0x00, 0x02, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1D, 0xFF, 0x01, 0x00, 0x1F, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x20, 0xFF, 0x01, 0x00, 0x21, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x22, 0xFF, 0x01, 0x00, 0x23, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x24, 0xFF, 0x01, 0x00, 0x23, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x14, 0xFF, 0x01, 0x00, 0x15, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x16, 0xFF, 0x01, 0x00, 0x17, 0xFF, 0x01, 0x00, 0x18, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x17, 0xFF, 0x01, 0x00, 0x18, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x15, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x25, 0xFF, 0x01, 0x00, 0x26, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1E, 0xFF, 0x01, 0x00, 0x1F, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x19, 0xFF, 0x01, 0x00, 0x02, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x11, 0xFF, 0x01, 0x00, 0x12, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x13, 0xFF, 0x01, 0x00, 0x12, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x12, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x10, 0xFF, 0x01, 0x00, 0x0A, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x18, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x23, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1F, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x21, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0C, 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, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, +static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_faceMotionSequenceData[140] = { + {1, -1, 1}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {3, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {4, -1, 1}, {3, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {6, -1, 1}, {7, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {7, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {8, -1, 1}, {10, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {9, -1, 1}, {10, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {11, -1, 1}, {12, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {13, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {14, -1, 1}, {15, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {26, -1, 1}, {2, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {27, -1, 1}, {2, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {28, -1, 1}, {2, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {29, -1, 1}, {31, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {32, -1, 1}, {33, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {34, -1, 1}, {35, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {36, -1, 1}, {35, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {20, -1, 1}, {21, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {22, -1, 1}, {23, -1, 1}, {24, -1, 0}, {-1, 0, 0}, {23, -1, 1}, {24, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {21, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {37, -1, 1}, {38, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {30, -1, 1}, {31, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {25, -1, 1}, {2, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {17, -1, 1}, {18, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {19, -1, 1}, {18, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {18, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {16, -1, 1}, {10, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {24, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {35, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {31, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {33, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {12, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {10, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, }; -#pragma pop /* 80A07380-80A075C0 000B7C 0240+00 0/1 0/0 0/0 .data l_motionSequenceData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_motionSequenceData[576] = { - 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x01, 0xFF, 0x01, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x02, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x03, 0xFF, 0x01, 0x00, 0x02, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x05, 0xFF, 0x01, 0x00, 0x06, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x06, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x07, 0xFF, 0x01, 0x00, 0x09, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x08, 0xFF, 0x01, 0x00, 0x09, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0A, 0xFF, 0x01, 0x00, 0x0B, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0B, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0C, 0xFF, 0x01, 0x00, 0x0D, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x15, 0xFF, 0x01, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x16, 0xFF, 0x01, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x17, 0xFF, 0x01, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x18, 0xFF, 0x01, 0x00, 0x19, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1B, 0xFF, 0x01, 0x00, 0x1C, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x19, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x21, 0xFF, 0x01, 0x00, 0x22, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x22, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x11, 0xFF, 0x01, 0x00, 0x12, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x13, 0xFF, 0x01, 0x00, 0x14, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x14, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x12, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x23, 0xFF, 0x01, 0x00, 0x24, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x24, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x25, 0xFF, 0x01, 0x00, 0x26, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x26, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x23, 0xFF, 0x01, 0x00, 0x25, 0xFF, 0x01, 0x00, 0x26, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1E, 0xFF, 0x01, 0x00, 0x1F, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0F, 0xFF, 0x01, 0x00, 0x10, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x10, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x20, 0xFF, 0x01, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x0E, 0xFF, 0x01, 0x00, 0x09, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1A, 0xFF, 0x01, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x1D, 0xFF, 0x01, 0x00, 0x00, 0xFF, 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, +static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_motionSequenceData[144] = { + {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {1, -1, 1}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {2, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {3, -1, 1}, {2, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {5, -1, 1}, {6, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {6, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {7, -1, 1}, {9, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {8, -1, 1}, {9, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {10, -1, 1}, {11, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {11, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {12, -1, 1}, {13, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {21, -1, 1}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {22, -1, 1}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {23, -1, 1}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {24, -1, 1}, {25, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {27, -1, 1}, {28, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {25, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {33, -1, 1}, {34, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {34, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {17, -1, 1}, {18, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {19, -1, 1}, {20, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {20, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {18, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {35, -1, 1}, {36, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {36, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {37, -1, 1}, {38, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {38, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {35, -1, 1}, {37, -1, 1}, {38, -1, 0}, {-1, 0, 0}, + {30, -1, 1}, {31, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {15, -1, 1}, {16, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, + {16, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {32, -1, 1}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {14, -1, 1}, {9, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {26, -1, 1}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, + {29, -1, 1}, {0, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {9, -1, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, }; -#pragma pop /* 80A075C0-80A075E0 -00001 0020+00 1/1 0/0 0/0 .data mCutNameList__11daNpc_Hoz_c */ char* daNpc_Hoz_c::mCutNameList[8] = { @@ -616,190 +211,1523 @@ char* daNpc_Hoz_c::mCutNameList[8] = { "TALK_BREAK", }; -/* 80A075E0-80A075EC -00001 000C+00 0/1 0/0 0/0 .data @3957 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3957[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)ECut_boatRace__11daNpc_Hoz_cFi, -}; -#pragma pop - -/* 80A075EC-80A075F8 -00001 000C+00 0/1 0/0 0/0 .data @3958 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3958[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)ECut_beforeBattle__11daNpc_Hoz_cFi, -}; -#pragma pop - -/* 80A075F8-80A07604 -00001 000C+00 0/1 0/0 0/0 .data @3959 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3959[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)ECut_afterBattle__11daNpc_Hoz_cFi, -}; -#pragma pop - -/* 80A07604-80A07610 -00001 000C+00 0/1 0/0 0/0 .data @3960 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3960[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)ECut_beforeBlast__11daNpc_Hoz_cFi, -}; -#pragma pop - -/* 80A07610-80A0761C -00001 000C+00 0/1 0/0 0/0 .data @3961 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3961[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)ECut_afterBlast__11daNpc_Hoz_cFi, -}; -#pragma pop - -/* 80A0761C-80A07628 -00001 000C+00 0/1 0/0 0/0 .data @3962 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3962[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)ECut_yMushi__11daNpc_Hoz_cFi, -}; -#pragma pop - -/* 80A07628-80A07634 -00001 000C+00 0/1 0/0 0/0 .data @3963 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_3963[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)ECut_talkBreak__11daNpc_Hoz_cFi, -}; -#pragma pop - /* 80A07634-80A07694 000E30 0060+00 1/2 0/0 0/0 .data mCutList__11daNpc_Hoz_c */ -SECTION_DATA u8 daNpc_Hoz_c::mCutList[96] = { - 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, 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_Hoz_c::cutFunc daNpc_Hoz_c::mCutList[] = { + NULL, + &daNpc_Hoz_c::ECut_boatRace, + &daNpc_Hoz_c::ECut_beforeBattle, + &daNpc_Hoz_c::ECut_afterBattle, + &daNpc_Hoz_c::ECut_beforeBlast, + &daNpc_Hoz_c::ECut_afterBlast, + &daNpc_Hoz_c::ECut_yMushi, + &daNpc_Hoz_c::ECut_talkBreak, }; -/* 80A07694-80A076A0 -00001 000C+00 1/1 0/0 0/0 .data @4712 */ -SECTION_DATA static void* lit_4712[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)talk__11daNpc_Hoz_cFPv, +/* 80A06650-80A066E0 000000 0090+00 10/10 0/0 0/0 .rodata m__17daNpc_Hoz_Param_c */ +const daNpc_Hoz_HIOParam daNpc_Hoz_Param_c::m = { + 60.0f, + -3.0f, + 1.0f, + 500.0f, + 255.0f, + 210.0f, + 35.0f, + 30.0f, + 0.0f, + 0.0f, + 30.0f, + -30.0f, + 30.0f, + -10.0f, + 45.0f, + -45.0f, + 0.6f, + 12.0f, + 4, + 6, + 4, + 6, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 60, + 8, + 0, + 0, + 0, + 0, + 0, + 4.0f, + -20.0f, + 0.0f, + -20.0f, + 20.0f, + 40.0f, + 20.0f, + 110.0f, + 600.0f, }; -/* 80A076A0-80A076AC -00001 000C+00 1/1 0/0 0/0 .data @4720 */ -SECTION_DATA static void* lit_4720[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)talk__11daNpc_Hoz_cFPv, -}; +/* 80A0150C-80A01658 0000EC 014C+00 1/0 0/0 0/0 .text __dt__11daNpc_Hoz_cFv */ +daNpc_Hoz_c::~daNpc_Hoz_c() { + if (mType == 1) { + daNpcT_offTmpBit(0x46); + } -/* 80A076AC-80A076D0 -00001 0024+00 1/1 0/0 0/0 .data @4755 */ -SECTION_DATA static void* lit_4755[9] = { - (void*)(((char*)evtEndProc__11daNpc_Hoz_cFv) + 0x118), - (void*)(((char*)evtEndProc__11daNpc_Hoz_cFv) + 0xE4), - (void*)(((char*)evtEndProc__11daNpc_Hoz_cFv) + 0x118), - (void*)(((char*)evtEndProc__11daNpc_Hoz_cFv) + 0x38), - (void*)(((char*)evtEndProc__11daNpc_Hoz_cFv) + 0x4C), - (void*)(((char*)evtEndProc__11daNpc_Hoz_cFv) + 0x60), - (void*)(((char*)evtEndProc__11daNpc_Hoz_cFv) + 0xA4), - (void*)(((char*)evtEndProc__11daNpc_Hoz_cFv) + 0x118), - (void*)(((char*)evtEndProc__11daNpc_Hoz_cFv) + 0xF4), -}; + if (heap != NULL) { + mpMorf[0]->stopZelAnime(); + } -/* 80A076D0-80A076DC -00001 000C+00 0/1 0/0 0/0 .data @5073 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5073[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)waitBoat__11daNpc_Hoz_cFPv, -}; -#pragma pop + deleteRes(l_loadResPtrnList[mType], (const char**)l_resNameList); +} -/* 80A076DC-80A076E8 -00001 000C+00 0/1 0/0 0/0 .data @5075 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5075[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)waitBoat2__11daNpc_Hoz_cFPv, -}; -#pragma pop +/* 80A01658-80A01904 000238 02AC+00 1/1 0/0 0/0 .text create__11daNpc_Hoz_cFv */ +int daNpc_Hoz_c::create() { + daNpcT_ct(this, daNpc_Hoz_c, + l_faceMotionAnmData, + l_motionAnmData, + l_faceMotionSequenceData, 4, + l_motionSequenceData, 4, + l_evtList, + l_resNameList); -/* 80A076E8-80A076F4 -00001 000C+00 0/1 0/0 0/0 .data @5077 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5077[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)waitBattle__11daNpc_Hoz_cFPv, -}; -#pragma pop + mType = getType(); + mFlowNodeNo = getFlowNodeNo(); + mTwilight = dKy_darkworld_check(); + field_0xf88 = (fopAcM_GetParam(this) & 0xFF0000) >> 0x10; + field_0xf89 = (fopAcM_GetParam(this) & 0xFF000000) >> 0x18; -/* 80A076F4-80A07700 -00001 000C+00 0/1 0/0 0/0 .data @5079 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5079[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)waitTwilightBattle__11daNpc_Hoz_cFPv, -}; -#pragma pop + int temp_r3 = loadRes(l_loadResPtrnList[mType], (const char**)l_resNameList); + if (temp_r3 == 4) { + static int const heapSize[7] = { + 0x0, 0x3F70, 0x3F70, 0x3F80, + 0x3EC0, 0x3F70, 0x3EB0, + }; -/* 80A07700-80A0770C -00001 000C+00 0/1 0/0 0/0 .data @5081 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5081[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)waitBoat1_5__11daNpc_Hoz_cFPv, -}; -#pragma pop + if (!fopAcM_entrySolidHeap(this, createHeapCallBack, heapSize[mType])) { + return cPhs_ERROR_e; + } -/* 80A0770C-80A07718 -00001 000C+00 0/1 0/0 0/0 .data @5083 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5083[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)waitTw__11daNpc_Hoz_cFPv, -}; -#pragma pop + //OS_REPORT("\t(%s:%d) flowNo:%d, PathID:%02x<%08x> ", fopAcM_getProcNameString(this), mType, mFlowNodeNo, getPathID() & 0xFF, fopAcM_GetParam(this)); -/* 80A07718-80A07724 -00001 000C+00 0/1 0/0 0/0 .data @5085 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_5085[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)wait__11daNpc_Hoz_cFPv, -}; -#pragma pop + if (isDelete()) { + OS_REPORT("===>isDelete:TRUE\n"); + return cPhs_ERROR_e; + } + + OS_REPORT("\n"); + + J3DModelData* sp10 = mpMorf[0]->getModel()->getModelData(); + fopAcM_SetMtx(this, mpMorf[0]->getModel()->getBaseTRMtx()); + fopAcM_setCullSizeBox(this, -300.0f, -50.0f, -300.0f, 300.0f, 450.0f,300.0f); + + mSound.init(¤t.pos, &eyePos, 3, 1); + + mAcch.Set(fopAcM_GetPosition_p(this), fopAcM_GetOldPosition_p(this), this, 1, &mAcchCir, fopAcM_GetSpeed_p(this), fopAcM_GetAngle_p(this), fopAcM_GetShapeAngle_p(this)); + mAcch.CrrPos(dComIfG_Bgsp()); + mGndChk = mAcch.m_gnd; + mGroundH = mAcch.GetGroundH(); + + setEnvTevColor(); + setRoomNo(); + + mCcStts.Init(daNpc_Hoz_Param_c::m.common.weight, 0, this); + mCyl.Set(mCcDCyl); + mCyl.SetStts(&mCcStts); + mCyl.SetTgHitCallback(tgHitCallBack); + reset(); + + mCreating = true; + Execute(); + mCreating = false; + } + + return temp_r3; +} + +static f32 dummyFloat(int _) { + switch (_) { + case 0: return 0.0f; + case 1: return 65536.0f; + case 2: return 0.2f; + } +} + +/* 80A01904-80A01B98 0004E4 0294+00 1/1 0/0 0/0 .text CreateHeap__11daNpc_Hoz_cFv */ +int daNpc_Hoz_c::CreateHeap() { + J3DModelData* mdlData_p; + int bmdIdx; + int resIdx; + + int idx = 0; + idx = mTwilight == true ? TRUE : FALSE; + resIdx = l_bmdData[idx][1]; + bmdIdx = l_bmdData[idx][0]; + + mdlData_p = (J3DModelData*)dComIfG_getObjectRes(l_resNameList[resIdx], bmdIdx); + JUT_ASSERT(1543, NULL != mdlData_p); + + u32 sp1C = 0x11020284; + mpMorf[0] = new mDoExt_McaMorfSO(mdlData_p, NULL, NULL, NULL, -1, 1.0f, 0, -1, &mSound, J3DMdlFlag_DifferedDLBuffer, sp1C); + if (mpMorf[0] != NULL && mpMorf[0]->getModel() == NULL) { + mpMorf[0]->stopZelAnime(); + mpMorf[0] = NULL; + } + + if (mpMorf[0] == NULL) { + return 0; + } + + J3DModel* model = mpMorf[0]->getModel(); + for (u16 i = 0; i < mdlData_p->getJointNum(); i++) { + mdlData_p->getJointNodePointer(i)->setCallBack(ctrlJointCallBack); + } + model->setUserArea((uintptr_t)this); + + mpMatAnm[0] = new daNpcT_MatAnm_c(); + if (mpMatAnm[0] == NULL) { + return 0; + } + + if (setFaceMotionAnm(1, false) && setMotionAnm(0, 0.0f, FALSE)) { + return 1; + } + + return 0; +} + +/* 80A01D54-80A01D88 000934 0034+00 1/1 0/0 0/0 .text Delete__11daNpc_Hoz_cFv */ +int daNpc_Hoz_c::Delete() { + OS_REPORT("|%06d:%x|daNpc_Hoz_c -> Delete\n", g_Counter.mCounter0, this); + fpc_ProcID id = fopAcM_GetID(this); + this->~daNpc_Hoz_c(); + return 1; +} + +/* 80A01D88-80A01DA8 000968 0020+00 2/2 0/0 0/0 .text Execute__11daNpc_Hoz_cFv */ +int daNpc_Hoz_c::Execute() { + return execute(); +} + +/* 80A01DA8-80A01E44 000988 009C+00 1/1 0/0 0/0 .text Draw__11daNpc_Hoz_cFv */ +int daNpc_Hoz_c::Draw() { + if (mpMatAnm[0] != NULL) { + J3DModelData* modelData = mpMorf[0]->getModel()->getModelData(); + modelData->getMaterialNodePointer(getEyeballMaterialNo())->setMaterialAnm(mpMatAnm[0]); + } + + #if DEBUG + return draw(chkAction(&daNpc_Hoz_c::test), FALSE, daNpc_Hoz_Param_c::m.common.real_shadow_size, NULL, 100.0f, FALSE, FALSE, FALSE); + #else + return draw(FALSE, FALSE, daNpc_Hoz_Param_c::m.common.real_shadow_size, NULL, 100.0f, FALSE, FALSE, FALSE); + #endif +} + +/* 80A01E44-80A01E64 000A24 0020+00 1/1 0/0 0/0 .text + * createHeapCallBack__11daNpc_Hoz_cFP10fopAc_ac_c */ +int daNpc_Hoz_c::createHeapCallBack(fopAc_ac_c* actor) { + daNpc_Hoz_c* i_this = (daNpc_Hoz_c*)actor; + return i_this->CreateHeap(); +} + +/* 80A01E64-80A01EBC 000A44 0058+00 1/1 0/0 0/0 .text ctrlJointCallBack__11daNpc_Hoz_cFP8J3DJointi + */ +int daNpc_Hoz_c::ctrlJointCallBack(J3DJoint* i_joint, int param_1) { + if (param_1 == 0) { + J3DModel* model = j3dSys.getModel(); + daNpc_Hoz_c* i_this = (daNpc_Hoz_c*)model->getUserArea(); + if (i_this != NULL) { + i_this->ctrlJoint(i_joint, model); + } + } + + return 1; +} + +/* 80A01EBC-80A01F08 000A9C 004C+00 4/4 0/0 0/0 .text s_sub__FPvPv */ +static void* s_sub(void* i_actor, void* i_data) { + if (fopAcM_IsActor(i_actor) && fopAcM_GetName(i_actor) == PROC_START_AND_GOAL) { + return i_actor; + } + + return NULL; +} + +/* 80A01F08-80A01F54 000AE8 004C+00 4/4 0/0 0/0 .text s_subCanoe__FPvPv */ +static void* s_subCanoe(void* i_actor, void* i_data) { + if (fopAcM_IsActor(i_actor) && fopAcM_GetName(i_actor) == PROC_CANOE) { + return i_actor; + } + + return NULL; +} + +/* 80A01F54-80A01FC8 000B34 0074+00 1/1 0/0 1/1 .text getType__11daNpc_Hoz_cFv */ +u8 daNpc_Hoz_c::getType() { + switch (fopAcM_GetParam(this) & 0xFF) { + case 1: + return 1; + case 2: + return 2; + case 3: + return 3; + case 4: + return 4; + case 5: + return 5; + case 6: + return 6; + default: + return 0; + } +} + +/* 80A01FC8-80A01FE4 000BA8 001C+00 2/2 0/0 0/0 .text getFlowNodeNo__11daNpc_Hoz_cFv */ +int daNpc_Hoz_c::getFlowNodeNo() { + u16 nodeNo = home.angle.x; + + int rt; + if (nodeNo == 0xFFFF) { + rt = -1; + } else { + rt = nodeNo; + } + + return rt; +} + +/* 80A01FE4-80A01FEC 000BC4 0008+00 1/1 0/0 0/0 .text isDelete__11daNpc_Hoz_cFv */ +int daNpc_Hoz_c::isDelete() { + return 0; +} + +/* 80A01FEC-80A02184 000BCC 0198+00 1/1 0/0 0/0 .text reset__11daNpc_Hoz_cFv */ +void daNpc_Hoz_c::reset() { + initialize(); + memset(&field_0xfac, 0, (u32)&field_0xfc4 - (u32)&field_0xfac); + + if (mpMatAnm[0] != NULL) { + mpMatAnm[0]->initialize(); + } + + setAngle(home.angle.y); + + field_0xf8a = 0; + field_0xf8b = 0; + field_0xf8c = 0; + mGameStartFlag = 0; + mPotBreakFlag = 0; + + field_0xfa0.initialize(); + field_0xfa8 = 0; + + if (mType == 4 || mType == 6) { + mAcch.SetGrndNone(); + mAcch.SetWallNone(); + current.pos = home.pos; + } +} + +/* 80A02184-80A021DC 000D64 0058+00 1/1 0/0 0/0 .text s_subBomb__FPvPv */ +static void* s_subBomb(void* i_actor, void* i_data) { + if (fopAcM_IsActor(i_actor) && fopAcM_GetName(i_actor) == PROC_ARROW && ((daArrow_c*)i_actor)->checkBombArrow()) { + return i_actor; + } + + return NULL; +} + +/* 80A021DC-80A0236C 000DBC 0190+00 1/0 0/0 0/0 .text setParam__11daNpc_Hoz_cFv */ +void daNpc_Hoz_c::setParam() { + u32 attn_flags = fopAc_AttnFlag_SPEAK_e | fopAc_AttnFlag_TALK_e; + + selectAction(); + srchActors(); + + s16 talk_dist = daNpc_Hoz_Param_c::m.common.talk_distance; + s16 talk_angle = daNpc_Hoz_Param_c::m.common.talk_angle; + s16 attn_dist = daNpc_Hoz_Param_c::m.common.attention_distance; + s16 attn_angle = daNpc_Hoz_Param_c::m.common.attention_angle; + + attention_info.distances[fopAc_attn_LOCK_e] = daNpcT_getDistTableIdx(attn_dist, attn_angle); + attention_info.distances[fopAc_attn_TALK_e] = attention_info.distances[fopAc_attn_LOCK_e]; + attention_info.distances[fopAc_attn_SPEAK_e] = daNpcT_getDistTableIdx(talk_dist, talk_angle); + + if (mType == 1 && field_0xf8b == 0) { + fopAc_ac_c* var_r3 = (fopAc_ac_c*)fpcM_Search(s_subBomb, this); + if (var_r3 != NULL) { + attn_flags = 0; + field_0xfa8 = 10; + } else if (cLib_calcTimer(&field_0xfa8)) { + attn_flags = 0; + } + } + + if (daPy_py_c::checkNowWolf()) { + attention_info.flags = attn_flags | fopAc_AttnFlag_UNK_0x800000; + } else { + attention_info.flags = attn_flags; + } + + scale.set(daNpc_Hoz_Param_c::m.common.scale, daNpc_Hoz_Param_c::m.common.scale, daNpc_Hoz_Param_c::m.common.scale); + + mAcchCir.SetWallR(daNpc_Hoz_Param_c::m.common.width); + mAcchCir.SetWallH(daNpc_Hoz_Param_c::m.common.knee_length); + + mCcStts.SetWeight(daNpc_Hoz_Param_c::m.common.weight); + mCylH = daNpc_Hoz_Param_c::m.common.height; + mWallR = daNpc_Hoz_Param_c::m.common.width; + + if (mType == 4 || mType == 6) { + gravity = 0.0f; + } else { + gravity = daNpc_Hoz_Param_c::m.common.gravity; + } + + mExpressionMorfFrame = daNpc_Hoz_Param_c::m.common.expression_morf_frame; + mMorfFrames = daNpc_Hoz_Param_c::m.common.morf_frame; +} + +/* 80A0236C-80A02370 000F4C 0004+00 1/0 0/0 0/0 .text setAfterTalkMotion__11daNpc_Hoz_cFv + */ +void daNpc_Hoz_c::setAfterTalkMotion() {} + +/* 80A02370-80A02374 000F50 0004+00 1/1 0/0 0/0 .text srchActors__11daNpc_Hoz_cFv */ +void daNpc_Hoz_c::srchActors() {} + +/* 80A02374-80A023EC 000F54 0078+00 1/0 0/0 0/0 .text checkChangeEvt__11daNpc_Hoz_cFv */ +BOOL daNpc_Hoz_c::checkChangeEvt() { + switch (mType) { + case 4: + if (!dComIfGs_isSwitch(field_0xf88, fopAcM_GetRoomNo(this))) { + field_0xf8c = 7; + mEvtNo = 7; + evtChange(); + return 1; + } + } + + return FALSE; +} + +/* 80A023EC-80A024D0 000FCC 00E4+00 1/0 0/0 0/0 .text evtTalk__11daNpc_Hoz_cFv */ +BOOL daNpc_Hoz_c::evtTalk() { + if (chkAction(&daNpc_Hoz_c::talk)) { + (this->*mAction)(NULL); + } else if (dComIfGp_event_chkTalkXY() == FALSE || dComIfGp_evmng_ChkPresentEnd()) { + setAction(&daNpc_Hoz_c::talk); + } + + return TRUE; +} + +/* 80A024D0-80A0260C 0010B0 013C+00 2/0 0/0 0/0 .text evtEndProc__11daNpc_Hoz_cFv */ +BOOL daNpc_Hoz_c::evtEndProc() { + switch (field_0xf8c) { + case 3: + field_0xf8a = 1; + field_0xf8c = 0; + break; + case 4: + field_0xf8b = 1; + field_0xf8c = 0; + break; + case 5: + field_0xf8a = 1; + field_0xf8c = 0; + + if (mFlow.getChoiceNo() == 0) { + dMeter2Info_setMiniGameItem(3); + dMeter2Info_onMenuInForce(2); + } + break; + case 6: + field_0xf8b = 1; + + if (daNpcT_chkTmpBit(0x43)) { + field_0xf8c = 1; + mEvtNo = 1; + dMeter2Info_resetMiniGameItem(0); + evtChange(); + } + break; + case 1: + field_0xf8c = 0; + mEvtNo = 0; + break; + case 8: + if (mPotBreakFlag) { + mPotBreakFlag = 0; + } + + field_0xf8c = 0; + mEvtNo = 0; + break; + default: + field_0xf8c = 0; + mEvtNo = 0; + break; + } + + return 1; +} + +/* 80A0260C-80A026D4 0011EC 00C8+00 1/0 0/0 0/0 .text evtCutProc__11daNpc_Hoz_cFv */ +BOOL daNpc_Hoz_c::evtCutProc() { + BOOL var_r30 = FALSE; + + int staffId = dComIfGp_getEventManager().getMyStaffId("Hoz", this, -1); + if (staffId != -1) { + mStaffId = staffId; + int actIdx = dComIfGp_getEventManager().getMyActIdx(mStaffId, mCutNameList, ARRAY_SIZE(mCutNameList), 0, 0); + + if ((this->*mCutList[actIdx])(mStaffId)) { + dComIfGp_getEventManager().cutEnd(mStaffId); + } + + var_r30 = TRUE; + } + + return var_r30; +} + +/* 80A026D4-80A02918 0012B4 0244+00 1/0 0/0 0/0 .text evtProc__11daNpc_Hoz_cFv */ +int daNpc_Hoz_c::evtProc() { + BOOL ret = FALSE; + +#if VERSION != VERSION_SHIELD_DEBUG + // TODO: gameInfo fake match to force reuse of pointer + dComIfG_play_c* play = &g_dComIfG_gameInfo.play; + if (play->getEvent().runCheck()) +#else + if (dComIfGp_event_runCheck()) +#endif + { + if (eventInfo.checkCommandTalk()) { + if (!checkChangeEvt()) { + evtTalk(); + } + ret = TRUE; + } else if (eventInfo.checkCommandDemoAccrpt() + && dComIfGp_getEventManager().endCheck(mEvtId)) { + if (evtEndProc()) { +#if VERSION != VERSION_SHIELD_DEBUG + play->getEvent().reset(); +#else + dComIfGp_event_reset(); +#endif + mEvtId = -1; + } + } else { + if (!strcmp(dComIfGp_getEventManager().getRunEventName(), "DEFAULT_GETITEM") + && mItemPartnerId != fpcM_ERROR_PROCESS_ID_e) { + dComIfGp_event_setTalkPartner(NULL); + dComIfGp_event_setItemPartnerId(mItemPartnerId); + mItemPartnerId = fpcM_ERROR_PROCESS_ID_e; + } + ret = evtCutProc(); + } + + int temp_r28 = field_0xdb4; + int face_motion, motion; + if (ctrlMsgAnm(&face_motion, &motion, this, field_0xe2d)) { + if (field_0xe26) { + mFaceMotionSeqMngr.setNo(face_motion, -1.0f, TRUE, mFaceMotionSeqMngr.getOffset()); + mMotionSeqMngr.setNo(motion, -1.0f, TRUE, mMotionSeqMngr.getOffset()); + } + } else if (temp_r28 != 0 && field_0xe26) { + setAfterTalkMotion(); + } + + mAnmFlags &= 0xFFFFBFFF; + field_0xe26 = true; + } else { + if (mStaffId != -1) { + mMode = 1; + mStaffId = -1; + } + + field_0xdb4 = 0; + field_0xe26 = true; + } + + return ret; +} + +/* 80A02918-80A029A0 0014F8 0088+00 1/0 0/0 0/0 .text action__11daNpc_Hoz_cFv */ +void daNpc_Hoz_c::action() { + if (field_0xfac != NULL) { + if (mAction == field_0xfac) { + (this->*mAction)(NULL); + } else { + setAction(field_0xfac); + } + } +} + +/* 80A029A0-80A02A18 001580 0078+00 1/0 0/0 0/0 .text beforeMove__11daNpc_Hoz_cFv */ +void daNpc_Hoz_c::beforeMove() { + if (checkHide() || mNoDraw) { + attention_info.flags = 0; + } +} + +/* 80A02A18-80A02C50 0015F8 0238+00 1/0 0/0 0/0 .text setAttnPos__11daNpc_Hoz_cFv */ +void daNpc_Hoz_c::setAttnPos() { + cXyz sp34(0.0f, -30.0f, 0.0f); + + mJntAnm.setParam(this, mpMorf[0]->getModel(), &sp34, getBackboneJointNo(), getNeckJointNo(), getHeadJointNo(), + daNpc_Hoz_Param_c::m.common.body_angleX_min, daNpc_Hoz_Param_c::m.common.body_angleX_max, + daNpc_Hoz_Param_c::m.common.body_angleY_min, daNpc_Hoz_Param_c::m.common.body_angleY_max, + daNpc_Hoz_Param_c::m.common.head_angleX_min, daNpc_Hoz_Param_c::m.common.head_angleX_max, + daNpc_Hoz_Param_c::m.common.head_angleY_min, daNpc_Hoz_Param_c::m.common.head_angleY_max, + daNpc_Hoz_Param_c::m.common.neck_rotation_ratio, 0.0f, NULL); + + f32 var_f31 = cM_s2rad(mCurAngle.y - field_0xd7e.y); + mJntAnm.calcJntRad(0.2f, 1.0f, var_f31); + + setMtx(); + + mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(getHeadJointNo())); + mDoMtx_stack_c::multVec(&sp34, &eyePos); + + mJntAnm.setEyeAngleX(eyePos, 1.0f, 0); + mJntAnm.setEyeAngleY(eyePos, mCurAngle.y, 1, 1.0f, 0); + + cXyz sp28; + mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(4)); + mDoMtx_stack_c::multVecZero(&sp28); + attention_info.position.set(sp28.x, sp28.y + daNpc_Hoz_Param_c::m.common.attention_offset, sp28.z); +} + +/* 80A02C50-80A02DD4 001830 0184+00 1/0 0/0 0/0 .text setCollision__11daNpc_Hoz_cFv */ +void daNpc_Hoz_c::setCollision() { + cXyz pos; + + if (!mHide) { + mCyl.SetCoSPrm(0x79); + + f32 cyl_h; + f32 cyl_r; + if (mType == 4) { + mDoMtx_stack_c::copy(mpMorf[0]->getModel()->getAnmMtx(1)); + + if (daNpcT_chkEvtBit(0x50)) { + cXyz sp8(0.0f, -15.0f, 0.0f); + mDoMtx_stack_c::multVec(&sp8, &pos); + } else { + mDoMtx_stack_c::multVecZero(&pos); + } + + pos.y -= 30.0f; + cyl_h = daNpc_Hoz_Param_c::m.common.height; + cyl_r = daNpc_Hoz_Param_c::m.common.width; + } else { + pos = current.pos; + cyl_h = daNpc_Hoz_Param_c::m.common.height; + cyl_r = daNpc_Hoz_Param_c::m.common.width; + } + + mCyl.SetH(cyl_h); + mCyl.SetR(cyl_r); + mCyl.SetC(pos); + dComIfG_Ccsp()->Set(&mCyl); + } + + mCyl.ClrCoHit(); + mCyl.ClrTgHit(); +} + +/* 80A02DD4-80A02F78 0019B4 01A4+00 1/0 0/0 0/0 .text evtOrder__11daNpc_Hoz_cFv */ +void daNpc_Hoz_c::evtOrder() { + if (strlen(mpEvtData[mEvtNo].eventName) != 0) { + if (strlen(mpArcNames[mpEvtData[mEvtNo].num]) != 0) { + eventInfo.setArchiveName(mpArcNames[mpEvtData[mEvtNo].num]); + dComIfGp_getEventManager().setObjectArchive(eventInfo.getArchiveName()); + } + + mEvtId = dComIfGp_getEventManager().getEventIdx(this, mpEvtData[mEvtNo].eventName, 0xFF); + if (mEvtNo == 2) { + fopAcM_orderOtherEventId(this, mEvtId, 0xFF, 0xFFFF, 4, 3); + } else { + fopAcM_orderOtherEventId(this, mEvtId, 0xFF, 0xFFFF, 40, 1); + } + } else if ((!mTwilight || daPy_py_c::checkNowWolfEyeUp()) && ((attention_info.flags & fopAc_AttnFlag_SPEAK_e) || (attention_info.flags & fopAc_AttnFlag_TALK_e))) { + eventInfo.onCondition(dEvtCnd_CANTALK_e); + if (chkXYItems()) { + eventInfo.onCondition(dEvtCnd_CANTALKITEM_e); + } + if (mSpeakEvent) { + fopAcM_orderSpeakEvent(this, 0, 0); + } + } +} + +/* 80A02F78-80A02F80 001B58 0008+00 1/0 0/0 0/0 .text drawDbgInfo__11daNpc_Hoz_cFv */ +BOOL daNpc_Hoz_c::drawDbgInfo() { + return false; +} + +/* 80A02F80-80A030A8 001B60 0128+00 1/1 0/0 0/0 .text selectAction__11daNpc_Hoz_cFv */ +int daNpc_Hoz_c::selectAction() { + field_0xfac = NULL; + + switch (mType) { + case 1: + field_0xfac = &daNpc_Hoz_c::waitBoat; + break; + case 2: + field_0xfac = &daNpc_Hoz_c::waitBoat2; + break; + case 3: + field_0xfac = &daNpc_Hoz_c::waitBattle; + break; + case 4: + field_0xfac = &daNpc_Hoz_c::waitTwilightBattle; + break; + case 5: + field_0xfac = &daNpc_Hoz_c::waitBoat1_5; + break; + case 6: + field_0xfac = &daNpc_Hoz_c::waitTw; + break; + default: + field_0xfac = &daNpc_Hoz_c::wait; + break; + } + + return 1; +} + +/* 80A030A8-80A030D4 001C88 002C+00 1/1 0/0 0/0 .text + * chkAction__11daNpc_Hoz_cFM11daNpc_Hoz_cFPCvPvPv_i */ +int daNpc_Hoz_c::chkAction(int (daNpc_Hoz_c::*i_action)(void*)) { + return mAction == i_action; +} + +/* 80A030D4-80A0317C 001CB4 00A8+00 2/2 0/0 0/0 .text + * setAction__11daNpc_Hoz_cFM11daNpc_Hoz_cFPCvPvPv_i */ +int daNpc_Hoz_c::setAction(int (daNpc_Hoz_c::*i_action)(void*)) { + mMode = 3; + if (mAction != NULL) { + (this->*mAction)(NULL); + } + + mMode = 0; + mAction = i_action; + if (mAction != NULL) { + (this->*mAction)(NULL); + } + + return 1; +} + +/* 80A0317C-80A03304 001D5C 0188+00 1/0 0/0 0/0 .text wait__11daNpc_Hoz_cFPv */ +int daNpc_Hoz_c::wait(void* param_0) { + switch (mMode) { + case 0: + case 1: + mFaceMotionSeqMngr.setNo(0x22, -1.0f, 0, 0); + mMotionSeqMngr.setNo(0, -1.0f, 0, 0); + mMode = 2; + case 2: + if (!mTwilight) { + if (srchPlayerActor()) { + mJntAnm.lookPlayer(0); + } else { + if (home.angle.y != mCurAngle.y && step(home.angle.y, -1, -1, 0xF, 0)) { + mMode = 1; + } + + mJntAnm.lookNone(0); + } + } + break; + case 3: + break; + } + + return 1; +} + +/* 80A03304-80A03578 001EE4 0274+00 1/0 0/0 0/0 .text waitBattle__11daNpc_Hoz_cFPv */ +int daNpc_Hoz_c::waitBattle(void* param_0) { + switch (mMode) { + case 0: + case 1: + if (field_0xf8a == 0) { + mFaceMotionSeqMngr.setNo(0x22, -1.0f, 0, 0); + mMotionSeqMngr.setNo(0, -1.0f, 0, 0); + } else { + mFaceMotionSeqMngr.setNo(0x14, -1.0f, 0, 0); + mMotionSeqMngr.setNo(0x16, -1.0f, 0, 0); + } + mMode = 2; + case 2: + if (field_0xf8a == 0 && dComIfGs_isSwitch(field_0xf88, fopAcM_GetRoomNo(this))) { + field_0xf8c = 3; + mEvtNo = 3; + field_0xe33 = 1; + } else if (field_0xf8b == 0 && dComIfGs_isSwitch(field_0xf89, fopAcM_GetRoomNo(this))) { + field_0xf8c = 4; + mEvtNo = 4; + field_0xe33 = 1; + } else if (srchPlayerActor()) { + mJntAnm.lookPlayer(0); + } else { + if (home.angle.y != mCurAngle.y && step(home.angle.y, -1, -1, 0xF, 0)) { + mMode = 1; + } + mJntAnm.lookNone(0); + } + break; + case 3: + break; + } + + return 1; +} + +/* 80A03578-80A037E4 002158 026C+00 1/0 0/0 0/0 .text waitTwilightBattle__11daNpc_Hoz_cFPv */ +int daNpc_Hoz_c::waitTwilightBattle(void* param_0) { + switch (mMode) { + case 0: + case 1: + if (daNpcT_chkEvtBit(0x50) != 0) { + if (mMotionSeqMngr.getNo() == 10) { + mMotionSeqMngr.setNo(0x20, -1.0f, 0, 0); + } else { + mMotionSeqMngr.setNo(0x23, -1.0f, 0, 0); + } + + if (mFaceMotionSeqMngr.getNo() == 9) { + mFaceMotionSeqMngr.setNo(0x1B, -1.0f, 0, 0); + } else { + mFaceMotionSeqMngr.setNo(0x21, -1.0f, 0, 0); + } + } else { + mFaceMotionSeqMngr.setNo(1, -1.0f, 0, 0); + mMotionSeqMngr.setNo(2, -1.0f, 0, 0); + } + + mMode = 2; + case 2: + if (!mTwilight) { + if (srchPlayerActor()) { + mJntAnm.lookPlayer(0); + } else { + if (home.angle.y != mCurAngle.y && step(home.angle.y, -1, -1, 0xF, 0)) { + mMode = 1; + } + mJntAnm.lookNone(0); + } + } + break; + case 3: + break; + } + + return 1; +} + +/* 80A037E4-80A03BDC 0023C4 03F8+00 1/0 0/0 0/0 .text waitBoat__11daNpc_Hoz_cFPv */ +int daNpc_Hoz_c::waitBoat(void* param_0) { + switch (mMode) { + case 0: + case 1: + mFaceMotionSeqMngr.setNo(0x22, -1.0f, 0, 0); + switch (mMotionSeqMngr.getNo()) { + case 16: + case 14: + mMotionSeqMngr.setNo(0x21, -1.0f, 0, 0); + break; + case 15: + mMotionSeqMngr.setNo(0x22, -1.0f, 0, 0); + break; + case 28: + mMotionSeqMngr.setNo(0x1F, -1.0f, 0, 0); + break; + default: + mMotionSeqMngr.setNo(0, -1.0f, 0, 0); + break; + } + mMode = 2; + case 2: + if (field_0xf84 == NULL) { + field_0xf84 = (daStartAndGoal_c*)fpcM_Search(s_sub, this); + dMeter2Info_setNowCount(0); + dMeter2Info_setMiniGameCount(0); + } + + if (field_0xfa0.getActorP() == NULL) { + fopAc_ac_c* temp_r3_2 = (fopAc_ac_c*)fpcM_Search(s_subCanoe, this); + if (temp_r3_2 != NULL) { + field_0xfa0.entry(temp_r3_2); + field_0xf90 = temp_r3_2->current.pos; + field_0xf9c = temp_r3_2->current.angle.y; + } + } + + if (field_0xf8a == 0) { + if (strcmp(dComIfGp_getStartStageName(), "F_SP112") == 0 && fopAcM_GetRoomNo(this) == 1 && dComIfGs_getStartPoint() == 2) { + field_0xf8c = 5; + mEvtNo = 5; + field_0xe33 = 1; + break; + } + + field_0xf8a = 1; + } + + if (field_0xf8b == 0 && dComIfGs_isSwitch(field_0xf88, fopAcM_GetRoomNo(this))) { + field_0xf8c = 6; + mEvtNo = 6; + field_0xe33 = 1; + } else if (mGameStartFlag) { + mJntAnm.lookPlayer(0); + } else { + if (srchPlayerActor()) { + mJntAnm.lookPlayer(0); + } else { + if (home.angle.y != mCurAngle.y && step(home.angle.y, -1, -1, 0xF, 0)) { + mMode = 1; + } + mJntAnm.lookNone(0); + } + + daCanoe_c* temp_r3_3 = (daCanoe_c*)field_0xfa0.getActorP(); + if (temp_r3_3 != NULL) { + temp_r3_3->setPosAndAngle(&field_0xf90, field_0xf9c); + } + } + break; + case 3: + break; + } + + return 1; +} + +/* 80A03BDC-80A03F8C 0027BC 03B0+00 1/0 0/0 0/0 .text waitBoat2__11daNpc_Hoz_cFPv */ +int daNpc_Hoz_c::waitBoat2(void* param_0) { + switch (mMode) { + case 0: + case 1: + mFaceMotionSeqMngr.setNo(0x22, -1.0f, 0, 0); + switch (mMotionSeqMngr.getNo()) { + case 16: + case 14: + mMotionSeqMngr.setNo(0x21, -1.0f, 0, 0); + break; + case 15: + mMotionSeqMngr.setNo(0x22, -1.0f, 0, 0); + break; + case 28: + mMotionSeqMngr.setNo(0x1F, -1.0f, 0, 0); + break; + default: + mMotionSeqMngr.setNo(0, -1.0f, 0, 0); + break; + } + mMode = 2; + case 2: + if (field_0xf84 == NULL) { + field_0xf84 = (daStartAndGoal_c*)fpcM_Search(s_sub, this); + dMeter2Info_setNowCount(0); + dMeter2Info_setMiniGameCount(0); + } + + if (dComIfGs_isSaveDunSwitch(0x3E) != 0) { + field_0xe33 = 1; + field_0xf8c = 2; + mEvtNo = 2; + } else { + if (field_0xfa0.getActorP() == NULL) { + fopAc_ac_c* temp_r3_2 = (fopAc_ac_c*)fpcM_Search(s_subCanoe, this); + if (temp_r3_2 != NULL) { + field_0xfa0.entry(temp_r3_2); + field_0xf90 = temp_r3_2->current.pos; + field_0xf9c = temp_r3_2->current.angle.y; + } + } + + if (!daNpcT_chkEvtBit(0x7F)) { + mSpeakEvent = 1; + } else if (mPotBreakFlag == true) { + field_0xf8c = 8; + mEvtNo = 8; + break; + } + + if (mGameStartFlag) { + mJntAnm.lookPlayer(0); + } else { + if (srchPlayerActor()) { + mJntAnm.lookPlayer(0); + } else { + if (home.angle.y != mCurAngle.y && step(home.angle.y, -1, -1, 0xF, 0)) { + mMode = 1; + } + mJntAnm.lookNone(0); + } + + daCanoe_c* temp_r3_3 = (daCanoe_c*)field_0xfa0.getActorP(); + if (temp_r3_3 != NULL) { + temp_r3_3->setPosAndAngle(&field_0xf90, field_0xf9c); + } + } + } + break; + case 3: + break; + } + + return 1; +} + +/* 80A03F8C-80A04400 002B6C 0474+00 1/0 0/0 0/0 .text waitBoat1_5__11daNpc_Hoz_cFPv */ +int daNpc_Hoz_c::waitBoat1_5(void* param_0) { + switch (mMode) { + case 0: + case 1: + mFaceMotionSeqMngr.setNo(0x22, -1.0f, 0, 0); + switch (mMotionSeqMngr.getNo()) { + case 16: + case 14: + mMotionSeqMngr.setNo(0x21, -1.0f, 0, 0); + break; + case 15: + mMotionSeqMngr.setNo(0x22, -1.0f, 0, 0); + break; + case 28: + mMotionSeqMngr.setNo(0x1F, -1.0f, 0, 0); + break; + default: + mMotionSeqMngr.setNo(0, -1.0f, 0, 0); + break; + } + mMode = 2; + case 2: + if (field_0xf84 == NULL) { + field_0xf84 = (daStartAndGoal_c*)fpcM_Search(s_sub, this); + dMeter2Info_setNowCount(0); + dMeter2Info_setMiniGameCount(0); + } + + if (field_0xfa0.getActorP() == NULL) { + fopAc_ac_c* temp_r3_2 = (fopAc_ac_c*)fpcM_Search(s_subCanoe, this); + if (temp_r3_2 != NULL) { + field_0xfa0.entry(temp_r3_2); + field_0xf90 = temp_r3_2->current.pos; + field_0xf9c = temp_r3_2->current.angle.y; + } + } + + if (field_0xf8a == 0 && (current.pos - daPy_getPlayerActorClass()->current.pos).absXZ() <= daNpc_Hoz_Param_c::m.field_0x8c) { + mSpeakEvent = 1; + } + + if (mGameStartFlag) { + mJntAnm.lookPlayer(0); + } else { + if (srchPlayerActor()) { + mJntAnm.lookPlayer(0); + } else { + if (home.angle.y != mCurAngle.y && step(home.angle.y, -1, -1, 0xF, 0)) { + mMode = 1; + } + mJntAnm.lookNone(0); + } + + daCanoe_c* temp_r3_3 = (daCanoe_c*)field_0xfa0.getActorP(); + if (temp_r3_3 != NULL) { + temp_r3_3->setPosAndAngle(&field_0xf90, field_0xf9c); + } + } + break; + case 3: + break; + } + + return 1; +} + +/* 80A04400-80A045FC 002FE0 01FC+00 1/0 0/0 0/0 .text waitTw__11daNpc_Hoz_cFPv */ +int daNpc_Hoz_c::waitTw(void* param_0) { + switch (mMode) { + case 0: + case 1: + if (daNpcF_chkEvtBit(0x2C0)) { + mFaceMotionSeqMngr.setNo(0x1A, -1.0f, 0, 0); + mMotionSeqMngr.setNo(0x1E, -1.0f, 0, 0); + } else { + mFaceMotionSeqMngr.setNo(0x21, -1.0f, 0, 0); + mMotionSeqMngr.setNo(0x23, -1.0f, 0, 0); + } + mMode = 2; + case 2: + if (!mTwilight) { + if (srchPlayerActor()) { + mJntAnm.lookPlayer(0); + } else { + if (home.angle.y != mCurAngle.y && step(home.angle.y, -1, -1, 0xF, 0)) { + mMode = 1; + } + + mJntAnm.lookNone(0); + } + } + break; + case 3: + break; + } + + return 1; +} + +/* 80A045FC-80A0487C 0031DC 0280+00 2/0 0/0 0/0 .text talk__11daNpc_Hoz_cFPv */ +int daNpc_Hoz_c::talk(void* param_0) { + BOOL var_r29 = FALSE; + + switch (mMode) { + case 0: + case 1: + initTalk(mFlowNodeNo, NULL); + mMode = 2; + case 2: + + if (!mTwilight) { + mJntAnm.lookPlayer(0); + + if (mCurAngle.y == fopAcM_searchPlayerAngleY(this)) { + var_r29 = 1; + } else if (step(fopAcM_searchPlayerAngleY(this), -1, -1, 0xF, 0)) { + var_r29 = 1; + } + } else { + var_r29 = 1; + } + + if (var_r29 && talkProc(NULL, 0, NULL, 0)) { + mFlowNodeNo = getFlowNodeNo(); + mPlayerActorMngr.entry(daPy_getPlayerActorClass()); + dComIfGp_event_reset(); + mMode = 3; + + switch (mType) { + case 1: + if (dComIfGs_isSwitch(field_0xf88, fopAcM_GetRoomNo(this))) { + if (mFlow.getChoiceNo() == 0) { + field_0xf8c = 1; + mEvtNo = 1; + evtChange(); + } + } else if (dMeter2Info_getRentalBombBag() == 0xFF) { + if (mFlow.getChoiceNo() == 0) { + dMeter2Info_setMiniGameItem(3); + dMeter2Info_onMenuInForce(2); + } + } + break; + case 2: + if (daNpcT_chkTmpBit(0x43)) { + if (mFlow.getChoiceNo() == 0) { + field_0xf8c = 1; + mEvtNo = 1; + evtChange(); + } + } + break; + case 5: + field_0xf8a = 1; + if (mFlow.getChoiceNo() == 0) { + field_0xf8c = 1; + mEvtNo = 1; + evtChange(); + } + break; + } + } + break; + case 3: + break; + } + + return 0; +} + +/* 80A0487C-80A04BE4 00345C 0368+00 1/0 0/0 0/0 .text ECut_boatRace__11daNpc_Hoz_cFi */ +int daNpc_Hoz_c::ECut_boatRace(int i_staffId) { + dEvent_manager_c& evtmgr = dComIfGp_getEventManager(); + int rt = 0; + int prm = -1; + + int* data_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm"); + if (data_p != NULL) { + prm = *data_p; + } + + if (evtmgr.getIsAddvance(i_staffId)) { + switch (prm) { + case 40: + case 0: + break; + case 10: { + daPy_getPlayerActorClass()->setCanoeSlider(); + dMeter2Info_resetMiniGameItem(0); + dMeter2Info_setMiniGameItem(1); + + setAngle(0); + home.angle.y = 0; + cXyz sp18(-5083.76f, 17082.0f, -89740.0f); + setPos(sp18); + break; + } + case 11: + current.angle.y = fopAcM_searchPlayerAngleY(this); + setAngle(current.angle.y); + mFaceMotionSeqMngr.setNo(0x22, -1.0f, 0, 0); + mMotionSeqMngr.setNo(0x18, -1.0f, 0, 0); + break; + case 20: + initTalk(mFlowNodeNo, NULL); + break; + case 30: + if (field_0xf84 != NULL) { + field_0xf84->readyStartTimer(); + mEventTimer = 30; + } + break; + } + } + + switch (prm) { + case 0: + if (field_0xf84 == NULL) { + field_0xf84 = (daStartAndGoal_c*)fpcM_Search(s_sub, this); + if (field_0xf84 != NULL) { + dMeter2Info_setNowCount(0); + dMeter2Info_setMiniGameCount(0); + } + } + + if (field_0xfa0.getActorP() == NULL) { + fopAc_ac_c* temp_r3_2 = (fopAc_ac_c*)fpcM_Search(s_subCanoe, this); + if (temp_r3_2 != NULL) { + field_0xfa0.entry(temp_r3_2); + } + } + + if (field_0xf84 != NULL && field_0xfa0.getActorP() != NULL) { + rt = 1; + } + break; + case 10: + case 11: + rt = 1; + break; + case 20: + if (talkProc(NULL, 0, NULL, 0)) { + rt = 1; + } + break; + case 30: + if (cLib_calcTimer(&mEventTimer) == 0) { + mGameStartFlag = 1; + rt = 1; + } + case 40: + if (field_0xf84 != NULL && field_0xf84->isStartCheck()) { + mGameStartFlag = 1; + rt = 1; + dComIfGs_onSwitch(field_0xf89, fopAcM_GetRoomNo(this)); + } + break; + default: + rt = 1; + } + + return rt; +} + +/* 80A04BE4-80A04CDC 0037C4 00F8+00 1/0 0/0 0/0 .text ECut_beforeBattle__11daNpc_Hoz_cFi + */ +int daNpc_Hoz_c::ECut_beforeBattle(int i_staffId) { + dEvent_manager_c& evtmgr = dComIfGp_getEventManager(); + int rt = 0; + int prm = -1; + + int* data_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm"); + if (data_p != NULL) { + prm = *data_p; + } + + if (evtmgr.getIsAddvance(i_staffId)) { + switch (prm) { + case 0: + break; + case 10: + initTalk(mFlowNodeNo, NULL); + break; + } + } + + switch (prm) { + case 0: + rt = 1; + break; + case 10: + if (talkProc(NULL, 0, NULL, 0)) { + rt = 1; + } + break; + default: + rt = 1; + } + + return rt; +} + +/* 80A04CDC-80A04E24 0038BC 0148+00 1/0 0/0 0/0 .text ECut_afterBattle__11daNpc_Hoz_cFi + */ +int daNpc_Hoz_c::ECut_afterBattle(int i_staffId) { + dEvent_manager_c& evtmgr = dComIfGp_getEventManager(); + int rt = 0; + int prm = -1; + + int* data_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm"); + if (data_p != NULL) { + prm = *data_p; + } + + if (evtmgr.getIsAddvance(i_staffId)) { + switch (prm) { + case 0: + break; + case 10: + initTalk(mFlowNodeNo, NULL); + break; + } + } + + switch (prm) { + case 0: + if (mCurAngle.y != fopAcM_searchPlayerAngleY(this)) { + step(fopAcM_searchPlayerAngleY(this), -1, -1, 0xF, 0); + } else { + rt = 1; + } + break; + case 10: + if (talkProc(NULL, 0, NULL, 0)) { + rt = 1; + } + break; + default: + rt = 1; + } + + return rt; +} + +/* 80A04E24-80A04F6C 003A04 0148+00 1/0 0/0 0/0 .text ECut_beforeBlast__11daNpc_Hoz_cFi + */ +int daNpc_Hoz_c::ECut_beforeBlast(int i_staffId) { + dEvent_manager_c& evtmgr = dComIfGp_getEventManager(); + int rt = 0; + int prm = -1; + + int* data_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm"); + if (data_p != NULL) { + prm = *data_p; + } + + if (evtmgr.getIsAddvance(i_staffId)) { + switch (prm) { + case 0: + break; + case 10: + initTalk(mFlowNodeNo, NULL); + break; + } + } + + switch (prm) { + case 0: + if (mCurAngle.y != fopAcM_searchPlayerAngleY(this)) { + step(fopAcM_searchPlayerAngleY(this), -1, -1, 0xF, 0); + } else { + rt = 1; + } + break; + case 10: + if (talkProc(NULL, 0, NULL, 0)) { + rt = 1; + } + break; + default: + rt = 1; + } + + return rt; +} + +/* 80A04F6C-80A050B4 003B4C 0148+00 1/0 0/0 0/0 .text ECut_afterBlast__11daNpc_Hoz_cFi */ +int daNpc_Hoz_c::ECut_afterBlast(int i_staffId) { + dEvent_manager_c& evtmgr = dComIfGp_getEventManager(); + int rt = 0; + int prm = -1; + + int* data_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm"); + if (data_p != NULL) { + prm = *data_p; + } + + if (evtmgr.getIsAddvance(i_staffId)) { + switch (prm) { + case 0: + break; + case 10: + initTalk(mFlowNodeNo, NULL); + break; + } + } + + switch (prm) { + case 0: + if (mCurAngle.y != fopAcM_searchPlayerAngleY(this)) { + step(fopAcM_searchPlayerAngleY(this), -1, -1, 0xF, 0); + } else { + rt = 1; + } + break; + case 10: + if (talkProc(NULL, 0, NULL, 0)) { + rt = 1; + } + break; + default: + rt = 1; + } + + return rt; +} + +/* 80A050B4-80A051C8 003C94 0114+00 1/0 0/0 0/0 .text ECut_yMushi__11daNpc_Hoz_cFi */ +int daNpc_Hoz_c::ECut_yMushi(int i_staffId) { + dEvent_manager_c& evtmgr = dComIfGp_getEventManager(); + int rt = 0; + int prm = -1; + + int* data_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm"); + if (data_p != NULL) { + prm = *data_p; + } + + if (evtmgr.getIsAddvance(i_staffId)) { + switch (prm) { + case 0: + dComIfGs_onSwitch(field_0xf88, fopAcM_GetRoomNo(this)); + break; + case 10: + initTalk(mFlowNodeNo, NULL); + break; + } + } + + switch (prm) { + case 0: + rt = 1; + break; + case 10: + if (talkProc(NULL, 0, NULL, 0)) { + rt = 1; + } + break; + default: + rt = 1; + } + + return rt; +} + +/* 80A051C8-80A05310 003DA8 0148+00 1/0 0/0 0/0 .text ECut_talkBreak__11daNpc_Hoz_cFi */ +int daNpc_Hoz_c::ECut_talkBreak(int i_staffId) { + dEvent_manager_c& evtmgr = dComIfGp_getEventManager(); + int rt = 0; + int prm = -1; + + int* data_p = dComIfGp_evmng_getMyIntegerP(i_staffId, "prm"); + if (data_p != NULL) { + prm = *data_p; + } + + if (evtmgr.getIsAddvance(i_staffId)) { + switch (prm) { + case 0: + break; + case 10: + initTalk(0x3E1, NULL); + break; + } + } + + switch (prm) { + case 0: + if (mCurAngle.y != fopAcM_searchPlayerAngleY(this)) { + step(fopAcM_searchPlayerAngleY(this), -1, -1, 0xF, 0); + } else { + rt = 1; + } + break; + case 10: + if (talkProc(NULL, 0, NULL, 0)) { + rt = 1; + } + break; + default: + rt = 1; + } + + return rt; +} + +/* 80A05310-80A05330 003EF0 0020+00 1/0 0/0 0/0 .text daNpc_Hoz_Create__FPv */ +static int daNpc_Hoz_Create(void* i_this) { + return ((daNpc_Hoz_c*)i_this)->create(); +} + +/* 80A05330-80A05350 003F10 0020+00 1/0 0/0 0/0 .text daNpc_Hoz_Delete__FPv */ +static int daNpc_Hoz_Delete(void* i_this) { + return ((daNpc_Hoz_c*)i_this)->Delete(); +} + +/* 80A05350-80A05370 003F30 0020+00 1/0 0/0 0/0 .text daNpc_Hoz_Execute__FPv */ +static int daNpc_Hoz_Execute(void* i_this) { + return ((daNpc_Hoz_c*)i_this)->Execute(); +} + +/* 80A05370-80A05390 003F50 0020+00 1/0 0/0 0/0 .text daNpc_Hoz_Draw__FPv */ +static int daNpc_Hoz_Draw(void* i_this) { + return ((daNpc_Hoz_c*)i_this)->Draw(); +} + +/* 80A05390-80A05398 003F70 0008+00 1/0 0/0 0/0 .text daNpc_Hoz_IsDelete__FPv */ +static int daNpc_Hoz_IsDelete(void* i_this) { + return true; +} + +/* 80A078F4-80A078F8 000014 0004+00 1/1 0/0 0/0 .bss l_HIO */ +static daNpc_Hoz_Param_c l_HIO; /* 80A07724-80A07744 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Hoz_MethodTable */ static actor_method_class daNpc_Hoz_MethodTable = { - (process_method_func)daNpc_Hoz_Create__FPv, - (process_method_func)daNpc_Hoz_Delete__FPv, - (process_method_func)daNpc_Hoz_Execute__FPv, - (process_method_func)daNpc_Hoz_IsDelete__FPv, - (process_method_func)daNpc_Hoz_Draw__FPv, + (process_method_func)daNpc_Hoz_Create, + (process_method_func)daNpc_Hoz_Delete, + (process_method_func)daNpc_Hoz_Execute, + (process_method_func)daNpc_Hoz_IsDelete, + (process_method_func)daNpc_Hoz_Draw, }; /* 80A07744-80A07774 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_HOZ */ @@ -819,975 +1747,3 @@ extern actor_process_profile_definition g_profile_NPC_HOZ = { fopAc_NPC_e, // mActorType fopAc_CULLBOX_CUSTOM_e, // cullType }; - -/* 80A07774-80A07780 000F70 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, -}; - -/* 80A07780-80A0778C 000F7C 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, -}; - -/* 80A0778C-80A077B0 000F88 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_80A06634, - (void*)NULL, - (void*)NULL, - (void*)func_80A0662C, -}; - -/* 80A077B0-80A077BC 000FAC 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, -}; - -/* 80A077BC-80A077C8 000FB8 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, -}; - -/* 80A077C8-80A077D4 000FC4 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, -}; - -/* 80A077D4-80A077E0 000FD0 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, -}; - -/* 80A077E0-80A077EC 000FDC 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, -}; - -/* 80A077EC-80A077F8 000FE8 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGAab */ -SECTION_DATA extern void* __vt__8cM3dGAab[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGAabFv, -}; - -/* 80A077F8-80A07804 000FF4 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, -}; - -/* 80A07804-80A07810 001000 000C+00 6/6 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, -}; - -/* 80A07810-80A078D4 00100C 00C4+00 2/2 0/0 0/0 .data __vt__11daNpc_Hoz_c */ -SECTION_DATA extern void* __vt__11daNpc_Hoz_c[49] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__11daNpc_Hoz_cFv, - (void*)ctrlBtk__8daNpcT_cFv, - (void*)ctrlSubFaceMotion__8daNpcT_cFi, - (void*)checkChangeJoint__11daNpc_Hoz_cFi, - (void*)checkRemoveJoint__11daNpc_Hoz_cFi, - (void*)getBackboneJointNo__11daNpc_Hoz_cFv, - (void*)getNeckJointNo__11daNpc_Hoz_cFv, - (void*)getHeadJointNo__11daNpc_Hoz_cFv, - (void*)getFootLJointNo__8daNpcT_cFv, - (void*)getFootRJointNo__8daNpcT_cFv, - (void*)getEyeballLMaterialNo__8daNpcT_cFv, - (void*)getEyeballRMaterialNo__8daNpcT_cFv, - (void*)getEyeballMaterialNo__11daNpc_Hoz_cFv, - (void*)ctrlJoint__8daNpcT_cFP8J3DJointP8J3DModel, - (void*)afterJntAnm__8daNpcT_cFi, - (void*)setParam__11daNpc_Hoz_cFv, - (void*)checkChangeEvt__11daNpc_Hoz_cFv, - (void*)evtTalk__11daNpc_Hoz_cFv, - (void*)evtEndProc__11daNpc_Hoz_cFv, - (void*)evtCutProc__11daNpc_Hoz_cFv, - (void*)setAfterTalkMotion__11daNpc_Hoz_cFv, - (void*)evtProc__11daNpc_Hoz_cFv, - (void*)action__11daNpc_Hoz_cFv, - (void*)beforeMove__11daNpc_Hoz_cFv, - (void*)afterMoved__8daNpcT_cFv, - (void*)setAttnPos__11daNpc_Hoz_cFv, - (void*)setFootPos__8daNpcT_cFv, - (void*)setCollision__11daNpc_Hoz_cFv, - (void*)setFootPrtcl__8daNpcT_cFP4cXyzff, - (void*)checkCullDraw__8daNpcT_cFv, - (void*)twilight__8daNpcT_cFv, - (void*)chkXYItems__8daNpcT_cFv, - (void*)evtOrder__11daNpc_Hoz_cFv, - (void*)decTmr__8daNpcT_cFv, - (void*)clrParam__8daNpcT_cFv, - (void*)drawDbgInfo__11daNpc_Hoz_cFv, - (void*)drawOtherMdl__8daNpcT_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, -}; - -/* 80A0150C-80A01658 0000EC 014C+00 1/0 0/0 0/0 .text __dt__11daNpc_Hoz_cFv */ -// daNpc_Hoz_c::~daNpc_Hoz_c() { -extern "C" void __dt__11daNpc_Hoz_cFv() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A06650-80A066E0 000000 0090+00 10/10 0/0 0/0 .rodata m__17daNpc_Hoz_Param_c */ -SECTION_RODATA u8 const daNpc_Hoz_Param_c::m[144] = { - 0x42, 0x70, 0x00, 0x00, 0xC0, 0x40, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x43, 0xFA, 0x00, 0x00, - 0x43, 0x7F, 0x00, 0x00, 0x43, 0x52, 0x00, 0x00, 0x42, 0x0C, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0xC1, 0xF0, 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, 0x04, 0x00, 0x06, 0x00, 0x04, 0x00, 0x06, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x3C, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, - 0xC1, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC1, 0xA0, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, - 0x42, 0x20, 0x00, 0x00, 0x41, 0xA0, 0x00, 0x00, 0x42, 0xDC, 0x00, 0x00, 0x44, 0x16, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80A06650, &daNpc_Hoz_Param_c::m); - -/* 80A066E0-80A066FC 000090 001C+00 0/1 0/0 0/0 .rodata heapSize$4117 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const heapSize[28] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x70, 0x00, 0x00, 0x3F, 0x70, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x00, 0x3E, 0xC0, 0x00, 0x00, 0x3F, 0x70, 0x00, 0x00, 0x3E, 0xB0, -}; -COMPILER_STRIP_GATE(0x80A066E0, &heapSize); -#pragma pop - -/* 80A066FC-80A06700 0000AC 0004+00 0/1 0/0 0/0 .rodata @4176 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4176 = -300.0f; -COMPILER_STRIP_GATE(0x80A066FC, &lit_4176); -#pragma pop - -/* 80A06700-80A06704 0000B0 0004+00 0/1 0/0 0/0 .rodata @4177 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4177 = -50.0f; -COMPILER_STRIP_GATE(0x80A06700, &lit_4177); -#pragma pop - -/* 80A06704-80A06708 0000B4 0004+00 0/1 0/0 0/0 .rodata @4178 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4178 = 300.0f; -COMPILER_STRIP_GATE(0x80A06704, &lit_4178); -#pragma pop - -/* 80A06708-80A0670C 0000B8 0004+00 0/1 0/0 0/0 .rodata @4179 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4179 = 450.0f; -COMPILER_STRIP_GATE(0x80A06708, &lit_4179); -#pragma pop - -/* 80A01658-80A01904 000238 02AC+00 1/1 0/0 0/0 .text create__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::create() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A0670C-80A06710 0000BC 0004+00 9/15 0/0 0/0 .rodata @4337 */ -SECTION_RODATA static u8 const lit_4337[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x80A0670C, &lit_4337); - -/* 80A06710-80A06714 0000C0 0004+00 0/2 0/0 0/0 .rodata @4338 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4338 = 65536.0f; -COMPILER_STRIP_GATE(0x80A06710, &lit_4338); -#pragma pop - -/* 80A06714-80A06718 0000C4 0004+00 0/3 0/0 0/0 .rodata @4339 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4339 = 1.0f / 5.0f; -COMPILER_STRIP_GATE(0x80A06714, &lit_4339); -#pragma pop - -/* 80A06718-80A0671C 0000C8 0004+00 2/4 0/0 0/0 .rodata @4486 */ -SECTION_RODATA static f32 const lit_4486 = 1.0f; -COMPILER_STRIP_GATE(0x80A06718, &lit_4486); - -/* 80A01904-80A01B98 0004E4 0294+00 1/1 0/0 0/0 .text CreateHeap__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::CreateHeap() { - // NONMATCHING -} - -/* 80A01B98-80A01BD4 000778 003C+00 1/1 0/0 0/0 .text __dt__15J3DTevKColorAnmFv */ -// J3DTevKColorAnm::~J3DTevKColorAnm() { -extern "C" void __dt__15J3DTevKColorAnmFv() { - // NONMATCHING -} - -/* 80A01BD4-80A01BEC 0007B4 0018+00 1/1 0/0 0/0 .text __ct__15J3DTevKColorAnmFv */ -// J3DTevKColorAnm::J3DTevKColorAnm() { -extern "C" void __ct__15J3DTevKColorAnmFv() { - // NONMATCHING -} - -/* 80A01BEC-80A01C28 0007CC 003C+00 1/1 0/0 0/0 .text __dt__14J3DTevColorAnmFv */ -// J3DTevColorAnm::~J3DTevColorAnm() { -extern "C" void __dt__14J3DTevColorAnmFv() { - // NONMATCHING -} - -/* 80A01C28-80A01C40 000808 0018+00 1/1 0/0 0/0 .text __ct__14J3DTevColorAnmFv */ -// J3DTevColorAnm::J3DTevColorAnm() { -extern "C" void __ct__14J3DTevColorAnmFv() { - // NONMATCHING -} - -/* 80A01C40-80A01C88 000820 0048+00 1/1 0/0 0/0 .text __dt__11J3DTexNoAnmFv */ -// J3DTexNoAnm::~J3DTexNoAnm() { -extern "C" void __dt__11J3DTexNoAnmFv() { - // NONMATCHING -} - -/* 80A01C88-80A01CAC 000868 0024+00 1/1 0/0 0/0 .text __ct__11J3DTexNoAnmFv */ -// J3DTexNoAnm::J3DTexNoAnm() { -extern "C" void __ct__11J3DTexNoAnmFv() { - // NONMATCHING -} - -/* 80A01CAC-80A01CE8 00088C 003C+00 1/1 0/0 0/0 .text __dt__12J3DTexMtxAnmFv */ -// J3DTexMtxAnm::~J3DTexMtxAnm() { -extern "C" void __dt__12J3DTexMtxAnmFv() { - // NONMATCHING -} - -/* 80A01CE8-80A01D00 0008C8 0018+00 1/1 0/0 0/0 .text __ct__12J3DTexMtxAnmFv */ -// J3DTexMtxAnm::J3DTexMtxAnm() { -extern "C" void __ct__12J3DTexMtxAnmFv() { - // NONMATCHING -} - -/* 80A01D00-80A01D3C 0008E0 003C+00 1/1 0/0 0/0 .text __dt__14J3DMatColorAnmFv */ -// J3DMatColorAnm::~J3DMatColorAnm() { -extern "C" void __dt__14J3DMatColorAnmFv() { - // NONMATCHING -} - -/* 80A01D3C-80A01D54 00091C 0018+00 1/1 0/0 0/0 .text __ct__14J3DMatColorAnmFv */ -// J3DMatColorAnm::J3DMatColorAnm() { -extern "C" void __ct__14J3DMatColorAnmFv() { - // NONMATCHING -} - -/* 80A01D54-80A01D88 000934 0034+00 1/1 0/0 0/0 .text Delete__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::Delete() { - // NONMATCHING -} - -/* 80A01D88-80A01DA8 000968 0020+00 2/2 0/0 0/0 .text Execute__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::Execute() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A0671C-80A06720 0000CC 0004+00 1/1 0/0 0/0 .rodata @4536 */ -SECTION_RODATA static f32 const lit_4536 = 100.0f; -COMPILER_STRIP_GATE(0x80A0671C, &lit_4536); - -/* 80A01DA8-80A01E44 000988 009C+00 1/1 0/0 0/0 .text Draw__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::Draw() { - // NONMATCHING -} - -/* 80A01E44-80A01E64 000A24 0020+00 1/1 0/0 0/0 .text - * createHeapCallBack__11daNpc_Hoz_cFP10fopAc_ac_c */ -void daNpc_Hoz_c::createHeapCallBack(fopAc_ac_c* param_0) { - // NONMATCHING -} - -/* 80A01E64-80A01EBC 000A44 0058+00 1/1 0/0 0/0 .text ctrlJointCallBack__11daNpc_Hoz_cFP8J3DJointi - */ -void daNpc_Hoz_c::ctrlJointCallBack(J3DJoint* param_0, int param_1) { - // NONMATCHING -} - -/* 80A01EBC-80A01F08 000A9C 004C+00 4/4 0/0 0/0 .text s_sub__FPvPv */ -static void s_sub(void* param_0, void* param_1) { - // NONMATCHING -} - -/* 80A01F08-80A01F54 000AE8 004C+00 4/4 0/0 0/0 .text s_subCanoe__FPvPv */ -static void s_subCanoe(void* param_0, void* param_1) { - // NONMATCHING -} - -/* 80A01F54-80A01FC8 000B34 0074+00 1/1 0/0 1/1 .text getType__11daNpc_Hoz_cFv */ -u8 daNpc_Hoz_c::getType() { - // NONMATCHING -} - -/* 80A01FC8-80A01FE4 000BA8 001C+00 2/2 0/0 0/0 .text getFlowNodeNo__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::getFlowNodeNo() { - // NONMATCHING -} - -/* 80A01FE4-80A01FEC 000BC4 0008+00 1/1 0/0 0/0 .text isDelete__11daNpc_Hoz_cFv */ -bool daNpc_Hoz_c::isDelete() { - return false; -} - -/* 80A01FEC-80A02184 000BCC 0198+00 1/1 0/0 0/0 .text reset__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::reset() { - // NONMATCHING -} - -/* 80A02184-80A021DC 000D64 0058+00 1/1 0/0 0/0 .text s_subBomb__FPvPv */ -static void s_subBomb(void* param_0, void* param_1) { - // NONMATCHING -} - -/* 80A021DC-80A0236C 000DBC 0190+00 1/0 0/0 0/0 .text setParam__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::setParam() { - // NONMATCHING -} - -/* 80A0236C-80A02370 000F4C 0004+00 1/0 0/0 0/0 .text setAfterTalkMotion__11daNpc_Hoz_cFv - */ -void daNpc_Hoz_c::setAfterTalkMotion() { - /* empty function */ -} - -/* 80A02370-80A02374 000F50 0004+00 1/1 0/0 0/0 .text srchActors__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::srchActors() { - /* empty function */ -} - -/* 80A02374-80A023EC 000F54 0078+00 1/0 0/0 0/0 .text checkChangeEvt__11daNpc_Hoz_cFv */ -BOOL daNpc_Hoz_c::checkChangeEvt() { - // NONMATCHING -} - -/* 80A023EC-80A024D0 000FCC 00E4+00 1/0 0/0 0/0 .text evtTalk__11daNpc_Hoz_cFv */ -BOOL daNpc_Hoz_c::evtTalk() { - // NONMATCHING -} - -/* 80A024D0-80A0260C 0010B0 013C+00 2/0 0/0 0/0 .text evtEndProc__11daNpc_Hoz_cFv */ -BOOL daNpc_Hoz_c::evtEndProc() { - // NONMATCHING -} - -/* 80A0260C-80A026D4 0011EC 00C8+00 1/0 0/0 0/0 .text evtCutProc__11daNpc_Hoz_cFv */ -BOOL daNpc_Hoz_c::evtCutProc() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A06720-80A06724 0000D0 0004+00 7/9 0/0 0/0 .rodata @4832 */ -SECTION_RODATA static f32 const lit_4832 = -1.0f; -COMPILER_STRIP_GATE(0x80A06720, &lit_4832); - -/* 80A06764-80A06764 000114 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80A067E8 = "DEFAULT_GETITEM"; -#pragma pop - -/* 80A026D4-80A02918 0012B4 0244+00 1/0 0/0 0/0 .text evtProc__11daNpc_Hoz_cFv */ -int daNpc_Hoz_c::evtProc() { - // NONMATCHING -} - -/* 80A02918-80A029A0 0014F8 0088+00 1/0 0/0 0/0 .text action__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::action() { - // NONMATCHING -} - -/* 80A029A0-80A02A18 001580 0078+00 1/0 0/0 0/0 .text beforeMove__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::beforeMove() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A06724-80A06728 0000D4 0004+00 0/1 0/0 0/0 .rodata @4920 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4920 = -30.0f; -COMPILER_STRIP_GATE(0x80A06724, &lit_4920); -#pragma pop - -/* 80A06728-80A06730 0000D8 0004+04 0/1 0/0 0/0 .rodata @4921 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u32 const lit_4921[1 + 1 /* padding */] = { - 0x38C90FDB, - /* padding */ - 0x00000000, -}; -COMPILER_STRIP_GATE(0x80A06728, &lit_4921); -#pragma pop - -/* 80A06730-80A06738 0000E0 0008+00 1/3 0/0 0/0 .rodata @4923 */ -SECTION_RODATA static u8 const lit_4923[8] = { - 0x43, 0x30, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80A06730, &lit_4923); - -/* 80A02A18-80A02C50 0015F8 0238+00 1/0 0/0 0/0 .text setAttnPos__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::setAttnPos() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A06738-80A06740 0000E8 0008+00 0/2 0/0 0/0 .rodata @4981 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_4981[8] = { - 0x3F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80A06738, &lit_4981); -#pragma pop - -/* 80A06740-80A06748 0000F0 0008+00 0/2 0/0 0/0 .rodata @4982 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_4982[8] = { - 0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80A06740, &lit_4982); -#pragma pop - -/* 80A06748-80A06750 0000F8 0008+00 0/2 0/0 0/0 .rodata @4983 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u8 const lit_4983[8] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80A06748, &lit_4983); -#pragma pop - -/* 80A06750-80A06754 000100 0004+00 0/1 0/0 0/0 .rodata @5031 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5031 = -15.0f; -COMPILER_STRIP_GATE(0x80A06750, &lit_5031); -#pragma pop - -/* 80A06754-80A06758 000104 0004+00 0/1 0/0 0/0 .rodata @5032 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5032 = 30.0f; -COMPILER_STRIP_GATE(0x80A06754, &lit_5032); -#pragma pop - -/* 80A02C50-80A02DD4 001830 0184+00 1/0 0/0 0/0 .text setCollision__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::setCollision() { - // NONMATCHING -} - -/* 80A02DD4-80A02F78 0019B4 01A4+00 1/0 0/0 0/0 .text evtOrder__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::evtOrder() { - // NONMATCHING -} - -/* 80A02F78-80A02F80 001B58 0008+00 1/0 0/0 0/0 .text drawDbgInfo__11daNpc_Hoz_cFv */ -BOOL daNpc_Hoz_c::drawDbgInfo() { - return false; -} - -/* 80A02F80-80A030A8 001B60 0128+00 1/1 0/0 0/0 .text selectAction__11daNpc_Hoz_cFv */ -void daNpc_Hoz_c::selectAction() { - // NONMATCHING -} - -/* 80A030A8-80A030D4 001C88 002C+00 1/1 0/0 0/0 .text - * chkAction__11daNpc_Hoz_cFM11daNpc_Hoz_cFPCvPvPv_i */ -void daNpc_Hoz_c::chkAction(int (daNpc_Hoz_c::*param_0)(void*)) { - // NONMATCHING -} - -/* 80A030D4-80A0317C 001CB4 00A8+00 2/2 0/0 0/0 .text - * setAction__11daNpc_Hoz_cFM11daNpc_Hoz_cFPCvPvPv_i */ -void daNpc_Hoz_c::setAction(int (daNpc_Hoz_c::*param_0)(void*)) { - // NONMATCHING -} - -/* 80A0317C-80A03304 001D5C 0188+00 1/0 0/0 0/0 .text wait__11daNpc_Hoz_cFPv */ -void daNpc_Hoz_c::wait(void* param_0) { - // NONMATCHING -} - -/* 80A03304-80A03578 001EE4 0274+00 1/0 0/0 0/0 .text waitBattle__11daNpc_Hoz_cFPv */ -void daNpc_Hoz_c::waitBattle(void* param_0) { - // NONMATCHING -} - -/* 80A03578-80A037E4 002158 026C+00 1/0 0/0 0/0 .text waitTwilightBattle__11daNpc_Hoz_cFPv */ -void daNpc_Hoz_c::waitTwilightBattle(void* param_0) { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A06764-80A06764 000114 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80A067F8 = "F_SP112"; -#pragma pop - -/* 80A037E4-80A03BDC 0023C4 03F8+00 1/0 0/0 0/0 .text waitBoat__11daNpc_Hoz_cFPv */ -void daNpc_Hoz_c::waitBoat(void* param_0) { - // NONMATCHING -} - -/* 80A03BDC-80A03F8C 0027BC 03B0+00 1/0 0/0 0/0 .text waitBoat2__11daNpc_Hoz_cFPv */ -void daNpc_Hoz_c::waitBoat2(void* param_0) { - // NONMATCHING -} - -/* 80A03F8C-80A04400 002B6C 0474+00 1/0 0/0 0/0 .text waitBoat1_5__11daNpc_Hoz_cFPv */ -void daNpc_Hoz_c::waitBoat1_5(void* param_0) { - // NONMATCHING -} - -/* 80A04400-80A045FC 002FE0 01FC+00 1/0 0/0 0/0 .text waitTw__11daNpc_Hoz_cFPv */ -void daNpc_Hoz_c::waitTw(void* param_0) { - // NONMATCHING -} - -/* 80A045FC-80A0487C 0031DC 0280+00 2/0 0/0 0/0 .text talk__11daNpc_Hoz_cFPv */ -void daNpc_Hoz_c::talk(void* param_0) { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A06758-80A0675C 000108 0004+00 0/1 0/0 0/0 .rodata @5865 */ -#pragma push -#pragma force_active on -SECTION_RODATA static u32 const lit_5865 = 0xC59EDE14; -COMPILER_STRIP_GATE(0x80A06758, &lit_5865); -#pragma pop - -/* 80A0675C-80A06760 00010C 0004+00 0/1 0/0 0/0 .rodata @5866 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5866 = 17082.0f; -COMPILER_STRIP_GATE(0x80A0675C, &lit_5866); -#pragma pop - -/* 80A06760-80A06764 000110 0004+00 0/1 0/0 0/0 .rodata @5867 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_5867 = -89740.0f; -COMPILER_STRIP_GATE(0x80A06760, &lit_5867); -#pragma pop - -/* 80A06764-80A06764 000114 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80A06800 = "prm"; -#pragma pop - -/* 80A0487C-80A04BE4 00345C 0368+00 1/0 0/0 0/0 .text ECut_boatRace__11daNpc_Hoz_cFi */ -void daNpc_Hoz_c::ECut_boatRace(int param_0) { - // NONMATCHING -} - -/* 80A04BE4-80A04CDC 0037C4 00F8+00 1/0 0/0 0/0 .text ECut_beforeBattle__11daNpc_Hoz_cFi - */ -void daNpc_Hoz_c::ECut_beforeBattle(int param_0) { - // NONMATCHING -} - -/* 80A04CDC-80A04E24 0038BC 0148+00 1/0 0/0 0/0 .text ECut_afterBattle__11daNpc_Hoz_cFi - */ -void daNpc_Hoz_c::ECut_afterBattle(int param_0) { - // NONMATCHING -} - -/* 80A04E24-80A04F6C 003A04 0148+00 1/0 0/0 0/0 .text ECut_beforeBlast__11daNpc_Hoz_cFi - */ -void daNpc_Hoz_c::ECut_beforeBlast(int param_0) { - // NONMATCHING -} - -/* 80A04F6C-80A050B4 003B4C 0148+00 1/0 0/0 0/0 .text ECut_afterBlast__11daNpc_Hoz_cFi */ -void daNpc_Hoz_c::ECut_afterBlast(int param_0) { - // NONMATCHING -} - -/* 80A050B4-80A051C8 003C94 0114+00 1/0 0/0 0/0 .text ECut_yMushi__11daNpc_Hoz_cFi */ -void daNpc_Hoz_c::ECut_yMushi(int param_0) { - // NONMATCHING -} - -/* 80A051C8-80A05310 003DA8 0148+00 1/0 0/0 0/0 .text ECut_talkBreak__11daNpc_Hoz_cFi */ -void daNpc_Hoz_c::ECut_talkBreak(int param_0) { - // NONMATCHING -} - -/* 80A05310-80A05330 003EF0 0020+00 1/0 0/0 0/0 .text daNpc_Hoz_Create__FPv */ -static void daNpc_Hoz_Create(void* param_0) { - // NONMATCHING -} - -/* 80A05330-80A05350 003F10 0020+00 1/0 0/0 0/0 .text daNpc_Hoz_Delete__FPv */ -static void daNpc_Hoz_Delete(void* param_0) { - // NONMATCHING -} - -/* 80A05350-80A05370 003F30 0020+00 1/0 0/0 0/0 .text daNpc_Hoz_Execute__FPv */ -static void daNpc_Hoz_Execute(void* param_0) { - // NONMATCHING -} - -/* 80A05370-80A05390 003F50 0020+00 1/0 0/0 0/0 .text daNpc_Hoz_Draw__FPv */ -static void daNpc_Hoz_Draw(void* param_0) { - // NONMATCHING -} - -/* 80A05390-80A05398 003F70 0008+00 1/0 0/0 0/0 .text daNpc_Hoz_IsDelete__FPv */ -static bool daNpc_Hoz_IsDelete(void* param_0) { - return true; -} - -/* 80A05398-80A053C8 003F78 0030+00 1/0 0/0 0/0 .text calc__11J3DTexNoAnmCFPUs */ -// void J3DTexNoAnm::calc(u16* param_0) const { -extern "C" void calc__11J3DTexNoAnmCFPUs() { - // NONMATCHING -} - -/* 80A053C8-80A05410 003FA8 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */ -// cCcD_GStts::~cCcD_GStts() { -extern "C" void __dt__10cCcD_GSttsFv() { - // NONMATCHING -} - -/* 80A05410-80A05798 003FF0 0388+00 1/1 0/0 0/0 .text __dt__8daNpcT_cFv */ -// daNpcT_c::~daNpcT_c() { -extern "C" void __dt__8daNpcT_cFv() { - // NONMATCHING -} - -/* 80A05798-80A057D4 004378 003C+00 3/3 0/0 0/0 .text __dt__4cXyzFv */ -// cXyz::~cXyz() { -extern "C" void __dt__4cXyzFv() { - // NONMATCHING -} - -/* 80A057D4-80A05810 0043B4 003C+00 2/2 0/0 0/0 .text __dt__5csXyzFv */ -// csXyz::~csXyz() { -extern "C" void __dt__5csXyzFv() { - // NONMATCHING -} - -/* 80A05810-80A05858 0043F0 0048+00 1/0 0/0 0/0 .text __dt__18daNpcT_ActorMngr_cFv */ -// daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() { -extern "C" void __dt__18daNpcT_ActorMngr_cFv() { - // NONMATCHING -} - -/* 80A05858-80A058A0 004438 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */ -// cM3dGCyl::~cM3dGCyl() { -extern "C" void __dt__8cM3dGCylFv() { - // NONMATCHING -} - -/* 80A058A0-80A058E8 004480 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */ -// cM3dGAab::~cM3dGAab() { -extern "C" void __dt__8cM3dGAabFv() { - // NONMATCHING -} - -/* 80A058E8-80A05CEC 0044C8 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 -} - -/* 80A05CEC-80A05CF0 0048CC 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -// csXyz::csXyz() { -extern "C" void __ct__5csXyzFv() { - /* empty function */ -} - -/* 80A05CF0-80A05DEC 0048D0 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 -} - -/* 80A05DEC-80A05DF0 0049CC 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -// cXyz::cXyz() { -extern "C" void __ct__4cXyzFv() { - /* empty function */ -} - -/* 80A05DF0-80A05E38 0049D0 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 -} - -/* 80A05E38-80A05EA8 004A18 0070+00 1/0 0/0 0/0 .text __dt__12dBgS_AcchCirFv */ -// dBgS_AcchCir::~dBgS_AcchCir() { -extern "C" void __dt__12dBgS_AcchCirFv() { - // NONMATCHING -} - -/* 80A05EA8-80A05F04 004A88 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */ -// dCcD_GStts::~dCcD_GStts() { -extern "C" void __dt__10dCcD_GSttsFv() { - // NONMATCHING -} - -/* 80A05F04-80A05F74 004AE4 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */ -// dBgS_ObjAcch::~dBgS_ObjAcch() { -extern "C" void __dt__12dBgS_ObjAcchFv() { - // NONMATCHING -} - -/* 80A05F74-80A05FBC 004B54 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */ -// J3DFrameCtrl::~J3DFrameCtrl() { -extern "C" void __dt__12J3DFrameCtrlFv() { - // NONMATCHING -} - -/* 80A05FBC-80A060D8 004B9C 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 -} - -/* 80A060D8-80A062E0 004CB8 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 -} - -/* 80A062E0-80A062E8 004EC0 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -// bool daNpcT_c::chkXYItems() { -extern "C" bool chkXYItems__8daNpcT_cFv() { - return false; -} - -/* 80A062E8-80A062EC 004EC8 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 */ -} - -/* 80A062FC-80A06304 004EDC 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv - */ -// bool daNpcT_c::getEyeballLMaterialNo() { -extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { - return false; -} - -/* 80A06304-80A0630C 004EE4 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv - */ -// bool daNpcT_c::getEyeballRMaterialNo() { -extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { - return false; -} - -/* 80A06314-80A0632C 004EF4 0018+00 1/0 0/0 0/0 .text decTmr__8daNpcT_cFv */ -// void daNpcT_c::decTmr() { -extern "C" void decTmr__8daNpcT_cFv() { - // NONMATCHING -} - -/* 80A0632C-80A06330 004F0C 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -// void daNpcT_c::drawOtherMdl() { -extern "C" void drawOtherMdl__8daNpcT_cFv() { - /* empty function */ -} - -/* 80A06330-80A06334 004F10 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -// void daNpcT_c::drawGhost() { -extern "C" void drawGhost__8daNpcT_cFv() { - /* empty function */ -} - -/* 80A06334-80A0633C 004F14 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; -} - -/* 80A0633C-80A06344 004F1C 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; -} - -/* 80A06344-80A06374 004F24 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 -} - -/* 80A06374-80A063A4 004F54 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 -} - -/* 80A063A4-80A063A8 004F84 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 */ -} - -/* 80A063A8-80A063AC 004F88 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 */ -} - -/* 80A063AC-80A063B0 004F8C 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 */ -} - -/* 80A063B0-80A063B4 004F90 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 */ -} - -/* 80A063B4-80A063D0 004F94 001C+00 2/2 0/0 0/0 .text cLib_calcTimer__FPi */ -extern "C" void func_80A063B4(void* _this, int* param_0) { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80A078D4-80A078E0 0010D0 000C+00 2/2 0/0 0/0 .data __vt__17daNpc_Hoz_Param_c */ -SECTION_DATA extern void* __vt__17daNpc_Hoz_Param_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__17daNpc_Hoz_Param_cFv, -}; - -/* 80A078E8-80A078F4 000008 000C+00 1/1 0/0 0/0 .bss @3964 */ -static u8 lit_3964[12]; - -/* 80A078F4-80A078F8 000014 0004+00 1/1 0/0 0/0 .bss l_HIO */ -static u8 l_HIO[4]; - -/* 80A063D0-80A064E4 004FB0 0114+00 0/0 1/0 0/0 .text __sinit_d_a_npc_hoz_cpp */ -void __sinit_d_a_npc_hoz_cpp() { - // NONMATCHING -} - -#pragma push -#pragma force_active on -REGISTER_CTORS(0x80A063D0, __sinit_d_a_npc_hoz_cpp); -#pragma pop - -/* 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_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 */ -u16 daNpc_Hoz_c::getEyeballMaterialNo() { - return true; -} - -/* 80A065AC-80A065B4 00518C 0008+00 1/0 0/0 0/0 .text getHeadJointNo__11daNpc_Hoz_cFv */ -s32 daNpc_Hoz_c::getHeadJointNo() { - return 4; -} - -/* 80A065B4-80A065BC 005194 0008+00 1/0 0/0 0/0 .text getNeckJointNo__11daNpc_Hoz_cFv */ -s32 daNpc_Hoz_c::getNeckJointNo() { - return 3; -} - -/* 80A065BC-80A065C4 00519C 0008+00 1/0 0/0 0/0 .text getBackboneJointNo__11daNpc_Hoz_cFv - */ -s32 daNpc_Hoz_c::getBackboneJointNo() { - return true; -} - -/* 80A065C4-80A065D4 0051A4 0010+00 1/0 0/0 0/0 .text checkChangeJoint__11daNpc_Hoz_cFi - */ -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 - */ -int daNpc_Hoz_c::checkRemoveJoint(int param_0) { - // NONMATCHING -} - -/* 80A065E4-80A0662C 0051C4 0048+00 2/1 0/0 0/0 .text __dt__17daNpc_Hoz_Param_cFv */ -// daNpc_Hoz_Param_c::~daNpc_Hoz_Param_c() { -extern "C" void __dt__17daNpc_Hoz_Param_cFv() { - // NONMATCHING -} - -/* 80A0662C-80A06634 00520C 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */ -static void func_80A0662C() { - // NONMATCHING -} - -/* 80A06634-80A0663C 005214 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */ -static void func_80A06634() { - // NONMATCHING -} - -/* 80A06764-80A06764 000114 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 6a3f69596a2..fc97654c34d 100644 --- a/src/d/actor/d_a_npc_jagar.cpp +++ b/src/d/actor/d_a_npc_jagar.cpp @@ -363,7 +363,7 @@ daNpc_Jagar_c::~daNpc_Jagar_c() { /* 80A14858-80A14B20 000238 02C8+00 1/1 0/0 0/0 .text create__13daNpc_Jagar_cFv */ int daNpc_Jagar_c::create() { static int const heapSize[4] = {14416, 14448, 14448, 0}; - fopAcM_SetupActor2(this, daNpc_Jagar_c, l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Jagar_c, l_faceMotionAnmData, (const daNpcT_motionAnmData_c *)l_motionAnmData, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c *) l_faceMotionSequenceData, 4, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c *)l_motionSequenceData, 4, (const daNpcT_evtData_c *)l_evtList, (char **)l_resNameList ); diff --git a/src/d/actor/d_a_npc_kakashi.cpp b/src/d/actor/d_a_npc_kakashi.cpp index d86eacdf2c9..5b1f1c1f540 100644 --- a/src/d/actor/d_a_npc_kakashi.cpp +++ b/src/d/actor/d_a_npc_kakashi.cpp @@ -161,7 +161,7 @@ const daNpc_Kakashi_HIOParam daNpc_Kakashi_Param_c::m = { /* 8054B4E8-8054B7D8 000268 02F0+00 1/1 0/0 0/0 .text create__15daNpc_Kakashi_cFv */ int daNpc_Kakashi_c::create() { - fopAcM_SetupActor2(this, daNpc_Kakashi_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Kakashi_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_npc_kkri.cpp b/src/d/actor/d_a_npc_kkri.cpp index 57ca42ad759..169418be27c 100644 --- a/src/d/actor/d_a_npc_kkri.cpp +++ b/src/d/actor/d_a_npc_kkri.cpp @@ -303,7 +303,7 @@ const daNpc_Kkri_HIOParam daNpc_Kkri_Param_c::m = { /* 8054F4F8-8054F7D0 000238 02D8+00 1/1 0/0 0/0 .text create__12daNpc_Kkri_cFv */ int daNpc_Kkri_c::create() { - fopAcM_SetupActor2(this, daNpc_Kkri_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Kkri_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_npc_kn.cpp b/src/d/actor/d_a_npc_kn.cpp index ec303aa62aa..f53e67c738f 100644 --- a/src/d/actor/d_a_npc_kn.cpp +++ b/src/d/actor/d_a_npc_kn.cpp @@ -441,7 +441,7 @@ const daNpc_Kn_HIOParam daNpc_Kn_Param_c::m = { /* 80A2AFD4-80A2B278 0006B4 02A4+00 1/1 0/0 0/0 .text create__10daNpc_Kn_cFv */ int daNpc_Kn_c::create() { - fopAcM_SetupActor2(this, daNpc_Kn_c, l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Kn_c, l_faceMotionAnmData, (daNpcT_motionAnmData_c*)l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_npc_kolin.cpp b/src/d/actor/d_a_npc_kolin.cpp index 0c5ad0c3de3..8cd2621a24b 100644 --- a/src/d/actor/d_a_npc_kolin.cpp +++ b/src/d/actor/d_a_npc_kolin.cpp @@ -412,7 +412,7 @@ daNpc_Kolin_HIOParam const daNpc_Kolin_Param_c::m = { /* 80554138-80554414 000238 02DC+00 1/1 0/0 0/0 .text create__13daNpc_Kolin_cFv */ cPhs__Step daNpc_Kolin_c::create() { - fopAcM_SetupActor2(this, daNpc_Kolin_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); + daNpcT_ct(this, daNpc_Kolin_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); mFlowNodeNo = getFlowNodeNo(); diff --git a/src/d/actor/d_a_npc_kolinb.cpp b/src/d/actor/d_a_npc_kolinb.cpp index 1e059c765c9..4f5aaaaaea3 100644 --- a/src/d/actor/d_a_npc_kolinb.cpp +++ b/src/d/actor/d_a_npc_kolinb.cpp @@ -267,7 +267,7 @@ daNpc_Kolinb_HIOParam const daNpc_Kolinb_Param_c::m = { /* 80A45ADC-80A45DC4 00023C 02E8+00 1/1 0/0 0/0 .text create__14daNpc_Kolinb_cFv */ cPhs__Step daNpc_Kolinb_c::create() { - fopAcM_SetupActor2(this, daNpc_Kolinb_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); + daNpcT_ct(this, daNpc_Kolinb_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); mFlowNodeNo = getFlowNodeNo(); diff --git a/src/d/actor/d_a_npc_len.cpp b/src/d/actor/d_a_npc_len.cpp index 25e4db2f434..3f99ac6efb9 100644 --- a/src/d/actor/d_a_npc_len.cpp +++ b/src/d/actor/d_a_npc_len.cpp @@ -185,7 +185,7 @@ int daNpc_Len_c::create() { 0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x4380, 0x0, }; - fopAcM_SetupActor2(this, daNpc_Len_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Len_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData, (const daNpcT_motionAnmData_c*)l_motionAnmData, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, diff --git a/src/d/actor/d_a_npc_lud.cpp b/src/d/actor/d_a_npc_lud.cpp index b8197f08dce..a6f3a0e1a16 100644 --- a/src/d/actor/d_a_npc_lud.cpp +++ b/src/d/actor/d_a_npc_lud.cpp @@ -266,7 +266,7 @@ int daNpc_Lud_c::create() { 0x3EF0, 0x3EF0, 0x3EF0, 0x3EF0, 0x46D0, 0x5000, 0x46E0, 0x3EF0, 0x0, }; - fopAcM_SetupActor2(this, daNpc_Lud_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Lud_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData, (const daNpcT_motionAnmData_c*)l_motionAnmData, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, diff --git a/src/d/actor/d_a_npc_maro.cpp b/src/d/actor/d_a_npc_maro.cpp index ac1f6698dd1..4b9bed69178 100644 --- a/src/d/actor/d_a_npc_maro.cpp +++ b/src/d/actor/d_a_npc_maro.cpp @@ -243,7 +243,7 @@ int daNpc_Maro_c::create() { 0x3310, 0x3310, 0x3310, 0x3310, 0, }; - fopAcM_SetupActor2(this, daNpc_Maro_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Maro_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList ); diff --git a/src/d/actor/d_a_npc_midp.cpp b/src/d/actor/d_a_npc_midp.cpp index 592047e4155..dc6468a7b18 100644 --- a/src/d/actor/d_a_npc_midp.cpp +++ b/src/d/actor/d_a_npc_midp.cpp @@ -132,7 +132,7 @@ daNpc_midP_HIOParam const daNpc_midP_Param_c::m = { /* 80A70D90-80A71074 000210 02E4+00 1/1 0/0 0/0 .text create__12daNpc_midP_cFv */ int daNpc_midP_c::create() { - fopAcM_SetupActor2(this, daNpc_midP_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData, 4, + daNpcT_ct(this, daNpc_midP_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_moi.cpp b/src/d/actor/d_a_npc_moi.cpp index 670a4a87873..a4763a5a684 100644 --- a/src/d/actor/d_a_npc_moi.cpp +++ b/src/d/actor/d_a_npc_moi.cpp @@ -271,7 +271,7 @@ daNpc_Moi_c::~daNpc_Moi_c() { int daNpc_Moi_c::create() { static const int heapSize[] = {0, 0x5C70, 0x7CB0, 0x7CA0, 0x5C70, 0x5C80, 0}; - fopAcM_SetupActor2(this, daNpc_Moi_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Moi_c, (daNpcT_faceMotionAnmData_c const*)l_faceMotionAnmData, (const daNpcT_motionAnmData_c*)l_motionAnmData, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, diff --git a/src/d/actor/d_a_npc_pachi_besu.cpp b/src/d/actor/d_a_npc_pachi_besu.cpp index f6690472834..cfaa72d3d50 100644 --- a/src/d/actor/d_a_npc_pachi_besu.cpp +++ b/src/d/actor/d_a_npc_pachi_besu.cpp @@ -539,7 +539,7 @@ daNpc_Pachi_Besu_HIOParam const daNpc_Pachi_Besu_Param_c::m = { /* 80A92EA4-80A9317C 000224 02D8+00 1/1 0/0 0/0 .text create__18daNpc_Pachi_Besu_cFv */ cPhs__Step daNpc_Pachi_Besu_c::create() { - fopAcM_SetupActor2(this, daNpc_Pachi_Besu_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Pachi_Besu_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_npc_raca.cpp b/src/d/actor/d_a_npc_raca.cpp index a01f69dc51b..b753282fef8 100644 --- a/src/d/actor/d_a_npc_raca.cpp +++ b/src/d/actor/d_a_npc_raca.cpp @@ -222,7 +222,7 @@ daNpc_Raca_HIOParam const daNpc_Raca_Param_c::m = { /* 80AB5DFC-80AB60B8 00023C 02BC+00 1/1 0/0 0/0 .text create__12daNpc_Raca_cFv */ cPhs__Step daNpc_Raca_c::create() { - fopAcM_SetupActor2(this, daNpc_Raca_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, + daNpcT_ct(this, daNpc_Raca_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_saru.cpp b/src/d/actor/d_a_npc_saru.cpp index 42502745cbd..2aff61598ad 100644 --- a/src/d/actor/d_a_npc_saru.cpp +++ b/src/d/actor/d_a_npc_saru.cpp @@ -300,7 +300,7 @@ int daNpc_Saru_c::create() { 14480, 14480, 14464, 0, }; - fopAcM_SetupActor2(this, daNpc_Saru_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Saru_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, (char**)l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_seib.cpp b/src/d/actor/d_a_npc_seib.cpp index 8127f519e53..66b801e2c17 100644 --- a/src/d/actor/d_a_npc_seib.cpp +++ b/src/d/actor/d_a_npc_seib.cpp @@ -114,7 +114,7 @@ daNpc_seiB_Param_c::Data const daNpc_seiB_Param_c::m = { /* 80AC5188-80AC53C8 000188 0240+00 1/1 0/0 0/0 .text create__12daNpc_seiB_cFv */ int daNpc_seiB_c::create() { - fopAcM_SetupActor2(this, daNpc_seiB_c, &l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_seiB_c, &l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_npc_seic.cpp b/src/d/actor/d_a_npc_seic.cpp index 63fc2b86c26..cc1e7c121e9 100644 --- a/src/d/actor/d_a_npc_seic.cpp +++ b/src/d/actor/d_a_npc_seic.cpp @@ -128,7 +128,7 @@ static daNpc_seiC_Param_c l_HIO; /* 80AC75E8-80AC7828 000188 0240+00 1/1 0/0 0/0 .text create__12daNpc_seiC_cFv */ int daNpc_seiC_c::create() { - fopAcM_SetupActor2(this, daNpc_seiC_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData, + daNpcT_ct(this, daNpc_seiC_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_seid.cpp b/src/d/actor/d_a_npc_seid.cpp index 0dc362cc5d0..9dd687fdd6a 100644 --- a/src/d/actor/d_a_npc_seid.cpp +++ b/src/d/actor/d_a_npc_seid.cpp @@ -129,7 +129,7 @@ static daNpc_seiD_Param_c l_HIO; /* 80AC9728-80AC9968 000188 0240+00 1/1 0/0 0/0 .text create__12daNpc_seiD_cFv */ int daNpc_seiD_c::create() { - fopAcM_SetupActor2(this, daNpc_seiD_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, + daNpcT_ct(this, daNpc_seiD_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_seira.cpp b/src/d/actor/d_a_npc_seira.cpp index 143ba667a2d..cdf9f651f2a 100644 --- a/src/d/actor/d_a_npc_seira.cpp +++ b/src/d/actor/d_a_npc_seira.cpp @@ -197,7 +197,7 @@ const daNpc_Seira_HIOParam daNpc_Seira_Param_c::m = { /* 80ACB918-80ACBBD4 000238 02BC+00 1/1 0/0 0/0 .text create__13daNpc_Seira_cFv */ int daNpc_Seira_c::create() { - fopAcM_SetupActor2(this, daNpc_Seira_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Seira_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList ); diff --git a/src/d/actor/d_a_npc_seira2.cpp b/src/d/actor/d_a_npc_seira2.cpp index 6b1c5338394..4a6a9f47d30 100644 --- a/src/d/actor/d_a_npc_seira2.cpp +++ b/src/d/actor/d_a_npc_seira2.cpp @@ -182,7 +182,7 @@ const daNpc_Seira2_HIOParam daNpc_Seira2_Param_c::m = { /* 80AD0D58-80AD0FF8 000238 02A0+00 1/1 0/0 0/0 .text create__14daNpc_Seira2_cFv */ int daNpc_Seira2_c::create() { - fopAcM_SetupActor2(this, daNpc_Seira2_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Seira2_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList ); diff --git a/src/d/actor/d_a_npc_seirei.cpp b/src/d/actor/d_a_npc_seirei.cpp index f178b45b422..54ff3e8d6f8 100644 --- a/src/d/actor/d_a_npc_seirei.cpp +++ b/src/d/actor/d_a_npc_seirei.cpp @@ -220,7 +220,7 @@ daNpc_Seirei_HIOParam const daNpc_Seirei_Param_c::m = { /* 80AD57C4-80AD5A7C 000184 02B8+00 1/1 0/0 0/0 .text create__14daNpc_Seirei_cFv */ cPhs__Step daNpc_Seirei_c::create() { - fopAcM_SetupActor2(this, daNpc_Seirei_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, + daNpcT_ct(this, daNpc_Seirei_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_taro.cpp b/src/d/actor/d_a_npc_taro.cpp index 5d8bb745de2..def5334c139 100644 --- a/src/d/actor/d_a_npc_taro.cpp +++ b/src/d/actor/d_a_npc_taro.cpp @@ -285,7 +285,7 @@ daNpc_Taro_HIOParam const daNpc_Taro_Param_c::m = { /* 8056604C-80566340 0002AC 02F4+00 1/1 0/0 0/0 .text create__12daNpc_Taro_cFv */ int daNpc_Taro_c::create() { - fopAcM_SetupActor2(this, daNpc_Taro_c, l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Taro_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_npc_tkj.cpp b/src/d/actor/d_a_npc_tkj.cpp index 8dd6c060f99..5e1062c04e9 100644 --- a/src/d/actor/d_a_npc_tkj.cpp +++ b/src/d/actor/d_a_npc_tkj.cpp @@ -141,7 +141,7 @@ const daNpc_Tkj_HIOParam daNpc_Tkj_Param_c::m = { /* 80573850-80573B18 000210 02C8+00 1/1 0/0 0/0 .text create__10daNpcTkj_cFv */ int daNpcTkj_c::create() { - fopAcM_SetupActor2(this, daNpcTkj_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpcTkj_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_npc_toby.cpp b/src/d/actor/d_a_npc_toby.cpp index ec43a90683e..6cdde5e0c83 100644 --- a/src/d/actor/d_a_npc_toby.cpp +++ b/src/d/actor/d_a_npc_toby.cpp @@ -304,7 +304,7 @@ int daNpc_Toby_c::create() { 0x3BC0, 0x3B10, 0x3B10, 0x43C0, 0x0, 0x3BD0, 0x0, }; - fopAcM_SetupActor2(this, daNpc_Toby_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_Toby_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList ); diff --git a/src/d/actor/d_a_npc_uri.cpp b/src/d/actor/d_a_npc_uri.cpp index cb0831a39b5..27366910629 100644 --- a/src/d/actor/d_a_npc_uri.cpp +++ b/src/d/actor/d_a_npc_uri.cpp @@ -238,7 +238,7 @@ daNpc_Uri_c::~daNpc_Uri_c() { int daNpc_Uri_c::create() { static const int heapSize[] = {0, 0x3F20, 0, 0, 0x3740, 0x3740, 0}; - fopAcM_SetupActor2(this, daNpc_Uri_c, l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Uri_c, l_faceMotionAnmData, (const daNpcT_motionAnmData_c*)l_motionAnmData, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4, (const daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, diff --git a/src/d/actor/d_a_npc_yamid.cpp b/src/d/actor/d_a_npc_yamid.cpp index c0b93867ab8..24f2da52a33 100644 --- a/src/d/actor/d_a_npc_yamid.cpp +++ b/src/d/actor/d_a_npc_yamid.cpp @@ -206,7 +206,7 @@ static NPC_YAMID_HIO_CLASS l_HIO; /* 80B43084-80B43338 000224 02B4+00 1/1 0/0 0/0 .text create__13daNpc_yamiD_cFv */ cPhs__Step daNpc_yamiD_c::create() { - fopAcM_SetupActor2(this, daNpc_yamiD_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_yamiD_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_npc_ykm.cpp b/src/d/actor/d_a_npc_ykm.cpp index c0b9d59d9c7..3195025fe68 100644 --- a/src/d/actor/d_a_npc_ykm.cpp +++ b/src/d/actor/d_a_npc_ykm.cpp @@ -491,7 +491,7 @@ daNpc_ykM_HIOParam const daNpc_ykM_Param_c::m = { /* 80B53698-80B53990 000298 02F8+00 1/1 0/0 0/0 .text create__11daNpc_ykM_cFv */ cPhs__Step daNpc_ykM_c::create() { - fopAcM_SetupActor2(this, daNpc_ykM_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, + daNpcT_ct(this, daNpc_ykM_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); mFlowNodeNo = getFlowNodeNo(); diff --git a/src/d/actor/d_a_npc_ykw.cpp b/src/d/actor/d_a_npc_ykw.cpp index 312aecd198a..134df546f10 100644 --- a/src/d/actor/d_a_npc_ykw.cpp +++ b/src/d/actor/d_a_npc_ykw.cpp @@ -324,7 +324,7 @@ static u32 const heapSize[8] = { /* 80B5F084-80B5F34C 000264 02C8+00 1/1 0/0 0/0 .text create__11daNpc_ykW_cFv */ int daNpc_ykW_c::create() { - fopAcM_SetupActor2(this, daNpc_ykW_c, l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daNpc_ykW_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, (char**)l_resNameList); field_0xf80 = getType(); diff --git a/src/d/actor/d_a_npc_zant.cpp b/src/d/actor/d_a_npc_zant.cpp index 8e8aac3853f..31f612c4586 100644 --- a/src/d/actor/d_a_npc_zant.cpp +++ b/src/d/actor/d_a_npc_zant.cpp @@ -93,7 +93,7 @@ daNpc_Zant_Param_c::Data const daNpc_Zant_Param_c::m = { int daNpc_Zant_c::create() { int rv; - fopAcM_SetupActor2(this, daNpc_Zant_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData, + daNpcT_ct(this, daNpc_Zant_c, &l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_zelR.cpp b/src/d/actor/d_a_npc_zelR.cpp index 2ce86cad406..f31ab98b577 100644 --- a/src/d/actor/d_a_npc_zelR.cpp +++ b/src/d/actor/d_a_npc_zelR.cpp @@ -131,7 +131,7 @@ daNpc_ZelR_HIOParam const daNpc_ZelR_Param_c::m = { /* 80B6EF64-80B6F1F8 000224 0294+00 1/1 0/0 0/0 .text create__12daNpc_ZelR_cFv */ int daNpc_ZelR_c::create() { - fopAcM_SetupActor2(this, daNpc_ZelR_c, l_faceMotionAnmData, + daNpcT_ct(this, daNpc_ZelR_c, l_faceMotionAnmData, &l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); diff --git a/src/d/actor/d_a_npc_zelRo.cpp b/src/d/actor/d_a_npc_zelRo.cpp index bd394f4b555..d7b22ed6ced 100644 --- a/src/d/actor/d_a_npc_zelRo.cpp +++ b/src/d/actor/d_a_npc_zelRo.cpp @@ -155,7 +155,7 @@ const daNpc_ZelRo_HIOParam daNpc_ZelRo_Param_c::m = { /* 80B720E4-80B72378 000224 0294+00 1/1 0/0 0/0 .text create__13daNpc_ZelRo_cFv */ cPhs__Step daNpc_ZelRo_c::create() { - fopAcM_SetupActor2(this, daNpc_ZelRo_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); + daNpcT_ct(this, daNpc_ZelRo_c, l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); mType = getType(); mFlowNodeNo = getFlowNodeNo(); diff --git a/src/d/actor/d_a_npc_zelda.cpp b/src/d/actor/d_a_npc_zelda.cpp index 09d49be5d49..7f43c10f280 100644 --- a/src/d/actor/d_a_npc_zelda.cpp +++ b/src/d/actor/d_a_npc_zelda.cpp @@ -171,7 +171,7 @@ int daNpc_Zelda_c::create() { 0x8FE0, }; - fopAcM_SetupActor2(this, daNpc_Zelda_c, (daNpcT_faceMotionAnmData_c*)l_faceMotionAnmData, + daNpcT_ct(this, daNpc_Zelda_c, (daNpcT_faceMotionAnmData_c*)l_faceMotionAnmData, (daNpcT_motionAnmData_c*)l_motionAnmData, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, 4, diff --git a/src/d/actor/d_a_obj_sekizoa.cpp b/src/d/actor/d_a_obj_sekizoa.cpp index fd3cf06dbde..7f17d71f4c1 100644 --- a/src/d/actor/d_a_obj_sekizoa.cpp +++ b/src/d/actor/d_a_obj_sekizoa.cpp @@ -167,7 +167,7 @@ int daObj_Sekizoa_c::create() { 0x2390, 0x2380, 0x2390, 0x2380, 0x2350, 0x2340, 0x33E0, 0, }; - fopAcM_SetupActor2(this, daObj_Sekizoa_c, &l_faceMotionAnmData, l_motionAnmData, + daNpcT_ct(this, daObj_Sekizoa_c, &l_faceMotionAnmData, l_motionAnmData, l_faceMotionSequenceData, 4, l_motionSequenceData, 4, l_evtList, l_resNameList); diff --git a/src/d/actor/d_a_peru.cpp b/src/d/actor/d_a_peru.cpp index c3dcf6e64e3..4b96a227876 100644 --- a/src/d/actor/d_a_peru.cpp +++ b/src/d/actor/d_a_peru.cpp @@ -170,7 +170,7 @@ PeruParams const daPeru_Param_c::m = { /* 80D46FCC-80D4720C 0001CC 0240+00 1/1 0/0 0/0 .text create__8daPeru_cFv */ int daPeru_c::create() { - fopAcM_SetupActor2(this, daPeru_c, (daNpcT_faceMotionAnmData_c*)l_faceMotionAnmData, (daNpcT_motionAnmData_c*)l_motionAnmData, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, 4, l_evtList, l_resNameList); + daNpcT_ct(this, daPeru_c, (daNpcT_faceMotionAnmData_c*)l_faceMotionAnmData, (daNpcT_motionAnmData_c*)l_motionAnmData, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_faceMotionSequenceData, 4, (daNpcT_MotionSeqMngr_c::sequenceStepData_c*)l_motionSequenceData, 4, l_evtList, l_resNameList); OS_REPORT("------------ ルイーズ生成処理開始\n"); mType = getType(); OS_REPORT("type=%d\n", mType); diff --git a/src/d/actor/d_a_startAndGoal.cpp b/src/d/actor/d_a_startAndGoal.cpp index 4f6d4c7e8e5..6eba1b9b7d6 100644 --- a/src/d/actor/d_a_startAndGoal.cpp +++ b/src/d/actor/d_a_startAndGoal.cpp @@ -6,38 +6,10 @@ #include "d/dolzel_rel.h" // IWYU pragma: keep #include "d/actor/d_a_startAndGoal.h" -#include "d/actor/d_a_npc.h" #include "d/d_timer.h" #include "d/d_meter2_info.h" #include "f_op/f_op_actor_mng.h" -class daStartAndGoal_Path_c : public daNpcF_Path_c { -public: - /* 80D4D7B8 */ BOOL chkPassed2(cXyz); - - /* 80D4D928 */ virtual ~daStartAndGoal_Path_c() {} -}; - -class daStartAndGoal_c : public fopAc_ac_c { -public: - /* 80D4D84C */ int getType(); - /* 80D4D884 */ int Create(); - /* 80D4D998 */ void init(); - /* 80D4DA68 */ void actorPosCheck(); - /* 80D4DB30 */ int readyStartTimer(); - /* 80D4DBAC */ BOOL isStartCheck(); - /* 80D4DBD0 */ BOOL isReadyCheck(); - /* 80D4DC50 */ int Execute(); - /* 80D4DCF4 */ int Draw(); - /* 80D4DCFC */ int Delete(); - - /* 0x568 */ daStartAndGoal_Path_c mPath; - /* 0xB98 */ u8 field_0xb98; - /* 0xB99 */ u8 mType; - /* 0xB9C */ int mAction; - /* 0xBA0 */ bool mStarted; -}; - /* 80D4D7B8-80D4D84C 000078 0094+00 1/1 0/0 0/0 .text chkPassed2__21daStartAndGoal_Path_cF4cXyz */ BOOL daStartAndGoal_Path_c::chkPassed2(cXyz i_checkPos) { int var_r31 = 0; @@ -89,6 +61,8 @@ int daStartAndGoal_c::Create() { return cPhs_COMPLEATE_e; } +daStartAndGoal_Path_c::~daStartAndGoal_Path_c() {} + /* 80D4DEB8-80D4DEBC 000000 0001+03 1/1 0/0 0/0 .rodata l_DATA */ static const u8 l_DATA[1] = {0}; // unused