From e682f6597be2472312dcd5d217acfe403d73705e Mon Sep 17 00:00:00 2001 From: Carco_21 <144170194+carter-ktb21@users.noreply.github.com> Date: Tue, 13 May 2025 15:45:26 -0400 Subject: [PATCH] d_a_npc_seic almost equivalent (#2432) * Data work and fopacmsetup * d_a_npc_seic almost equivalent * Now equivalent and configure.py updated --- configure.py | 2 +- include/d/actor/d_a_npc_seib.h | 2 +- include/d/actor/d_a_npc_seic.h | 140 +++- src/d/actor/d_a_npc_seib.cpp | 40 +- src/d/actor/d_a_npc_seic.cpp | 1357 ++++++++++++-------------------- 5 files changed, 629 insertions(+), 912 deletions(-) diff --git a/configure.py b/configure.py index 5ed2c75bf96..79be89b87d3 100755 --- a/configure.py +++ b/configure.py @@ -1817,7 +1817,7 @@ config.libs = [ ActorRel(NonMatching, "d_a_npc_rafrel"), ActorRel(NonMatching, "d_a_npc_saru"), ActorRel(Equivalent, "d_a_npc_seib"), # weak func order - ActorRel(NonMatching, "d_a_npc_seic"), + ActorRel(Equivalent, "d_a_npc_seic"), # weak func order ActorRel(NonMatching, "d_a_npc_seid"), ActorRel(NonMatching, "d_a_npc_seira"), ActorRel(NonMatching, "d_a_npc_seira2"), diff --git a/include/d/actor/d_a_npc_seib.h b/include/d/actor/d_a_npc_seib.h index d1d2b580a5e..1be33d5f2eb 100644 --- a/include/d/actor/d_a_npc_seib.h +++ b/include/d/actor/d_a_npc_seib.h @@ -16,7 +16,7 @@ class daNpc_seiB_Param_c { public: /* 80AC6FB8 */ virtual ~daNpc_seiB_Param_c() {}; struct Data { - /* 0x00 */ u32 field_0x00; + /* 0x00 */ f32 field_0x00; /* 0x04 */ f32 mGravity; /* 0x08 */ f32 mScale; /* 0x0C */ f32 field_0xc; diff --git a/include/d/actor/d_a_npc_seic.h b/include/d/actor/d_a_npc_seic.h index ff63bd854ef..97f15be4037 100644 --- a/include/d/actor/d_a_npc_seic.h +++ b/include/d/actor/d_a_npc_seic.h @@ -11,54 +11,126 @@ * @details * */ -class daNpc_seiC_c : public fopAc_ac_c { + + struct daNpc_seiC_HIOParam { + /* 0x00 */ f32 field_0x00; + /* 0x04 */ f32 mGravity; + /* 0x08 */ f32 mScale; + /* 0x0C */ f32 field_0x0c; + /* 0x10 */ f32 mSttsWeight; + /* 0x14 */ f32 mCylH; + /* 0x18 */ f32 mWallH; + /* 0x1C */ f32 mWallR; + /* 0x20 */ f32 field_0x20; + /* 0x24 */ f32 field_0x24; + /* 0x28 */ f32 field_0x28; + /* 0x2C */ f32 field_0x2c; + /* 0x30 */ f32 field_0x30; + /* 0x34 */ f32 field_0x34; + /* 0x38 */ f32 field_0x38; + /* 0x3C */ f32 field_0x3c; + /* 0x40 */ f32 field_0x40; + /* 0x44 */ f32 mMorfFrames; + /* 0x48 */ f32 field_0x48; + /* 0x4C */ f32 field_0x4c; + /* 0x50 */ f32 field_0x50; + /* 0x54 */ f32 field_0x54; + /* 0x58 */ f32 field_0x58; + /* 0x5C */ f32 field_0x5c; + /* 0x60 */ f32 field_0x60; + /* 0x64 */ f32 field_0x64; + /* 0x68 */ f32 field_0x68; + /* 0x6C */ f32 field_0x6c; + /* 0x70 */ f32 field_0x70; + /* 0x74 */ f32 field_0x74; + /* 0x78 */ f32 field_0x78; + /* 0x7C */ f32 field_0x7c; + /* 0x80 */ f32 field_0x80; + /* 0x84 */ f32 field_0x84; + /* 0x88 */ f32 field_0x88; + /* 0x8C */ f32 field_0x8c; + /* 0x90 */ f32 field_0x90; +}; + +class daNpc_seiC_Param_c { + public: + /* 80AC91B0 */ virtual ~daNpc_seiC_Param_c() {}; + + static const daNpc_seiC_HIOParam m; +}; + +class daNpc_seiC_HIO_c +#ifdef DEBUG +: public mDoHIO_entry_c +#endif +{ public: + void genMessage(JORMContext*); + + #ifdef DEBUG + /* 0x08 */ daNpc_seiC_HIOParam field_0x8; + /* 0x94 */ f32 field_0x94; // "強制会話距離" "Forced conversation distance" | Slider + /* 0x98 */ f32 field_0x98; // "会話距離" "Conversation distance" | Slider + #endif +}; + +class daNpc_seiC_c : public daNpcT_c { +public: + typedef int (daNpc_seiC_c::*cutFunc)(int); + typedef int (daNpc_seiC_c::*actionFunc)(void*); + + + enum Type { + TYPE_0, + TYPE_1, + }; + /* 80AC754C */ ~daNpc_seiC_c(); - /* 80AC75E8 */ void create(); - /* 80AC7828 */ void CreateHeap(); - /* 80AC7980 */ void Delete(); - /* 80AC79B4 */ void Execute(); - /* 80AC79D4 */ void Draw(); - /* 80AC7A68 */ void createHeapCallBack(fopAc_ac_c*); - /* 80AC7A88 */ void getType(); - /* 80AC7AA8 */ void getFlowNodeNo(); - /* 80AC7AC4 */ bool isDelete(); + /* 80AC75E8 */ int create(); + /* 80AC7828 */ int CreateHeap(); + /* 80AC7980 */ int Delete(); + /* 80AC79B4 */ int Execute(); + /* 80AC79D4 */ int Draw(); + /* 80AC7A68 */ static int createHeapCallBack(fopAc_ac_c*); + /* 80AC7A88 */ u8 getType(); + /* 80AC7AA8 */ u32 getFlowNodeNo(); + /* 80AC7AC4 */ int isDelete(); /* 80AC7ACC */ void reset(); /* 80AC7C1C */ void setParam(); /* 80AC7D48 */ void srchActors(); - /* 80AC7D4C */ void evtTalk(); - /* 80AC7E4C */ void evtCutProc(); + /* 80AC7D4C */ BOOL evtTalk(); + /* 80AC7E4C */ BOOL evtCutProc(); /* 80AC7F14 */ void action(); /* 80AC7F9C */ void beforeMove(); /* 80AC801C */ void setAttnPos(); - /* 80AC8078 */ bool drawDbgInfo(); - /* 80AC8080 */ void afterSetMotionAnm(int, int, f32, int); - /* 80AC8218 */ void selectAction(); - /* 80AC8260 */ void chkAction(int (daNpc_seiC_c::*)(void*)); - /* 80AC828C */ void setAction(int (daNpc_seiC_c::*)(void*)); + /* 80AC8078 */ int drawDbgInfo(); + /* 80AC8080 */ bool afterSetMotionAnm(int, int, f32, int); + /* 80AC8218 */ int selectAction(); + /* 80AC8260 */ int chkAction(int (daNpc_seiC_c::*)(void*)); + /* 80AC828C */ int setAction(int (daNpc_seiC_c::*)(void*)); /* 80AC8334 */ void ctrlWaitAnm(); - /* 80AC8338 */ void wait(void*); - /* 80AC8364 */ void talk(void*); - /* 80AC916C */ daNpc_seiC_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**); + /* 80AC8338 */ int wait(void*); + /* 80AC8364 */ int talk(void*); + /* 80AC916C */ daNpc_seiC_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) {}; - static void* mCutNameList; - static u8 mCutList[12]; + static char* mCutNameList; + static cutFunc mCutList[1]; private: - /* 0x568 */ u8 field_0x568[0xe64 - 0x568]; + /* 0xE40 */ daNpc_seiC_HIO_c* field_0xe40; + /* 0xE44 */ u8 mType; + /* 0xE45 */ u8 field_0xe45[0xe48 - 0xe45]; + /* 0xE48 */ actionFunc mAction; + /* 0xE54 */ actionFunc mAction2; + /* 0xE60 */ int field_0xe60; }; STATIC_ASSERT(sizeof(daNpc_seiC_c) == 0xe64); -class daNpc_seiC_Param_c { -public: - /* 80AC91B0 */ ~daNpc_seiC_Param_c(); - - static u8 const m[148]; -}; - - #endif /* D_A_NPC_SEIC_H */ diff --git a/src/d/actor/d_a_npc_seib.cpp b/src/d/actor/d_a_npc_seib.cpp index 1c85e46d4ed..1bc4e085907 100644 --- a/src/d/actor/d_a_npc_seib.cpp +++ b/src/d/actor/d_a_npc_seib.cpp @@ -73,8 +73,44 @@ daNpc_seiB_c::~daNpc_seiB_c() { /* 80AC7024-80AC70B8 000000 0094+00 4/4 0/0 0/0 .rodata m__18daNpc_seiB_Param_c */ daNpc_seiB_Param_c::Data const daNpc_seiB_Param_c::m = { - 0, 0, 1.0f, 4000.0f, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1200.0f}; + 0.0f, + 0.0f, + 1.0f, + 4000.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 1200.0f, +}; /* 80AC5188-80AC53C8 000188 0240+00 1/1 0/0 0/0 .text create__12daNpc_seiB_cFv */ int daNpc_seiB_c::create() { diff --git a/src/d/actor/d_a_npc_seic.cpp b/src/d/actor/d_a_npc_seic.cpp index a0d82e2bbbb..d2f960957bd 100644 --- a/src/d/actor/d_a_npc_seic.cpp +++ b/src/d/actor/d_a_npc_seic.cpp @@ -4,344 +4,531 @@ */ #include "d/actor/d_a_npc_seic.h" -#include "dol2asm.h" -// -// Forward References: -// - -extern "C" void __dt__12daNpc_seiC_cFv(); -extern "C" void create__12daNpc_seiC_cFv(); -extern "C" void CreateHeap__12daNpc_seiC_cFv(); -extern "C" void Delete__12daNpc_seiC_cFv(); -extern "C" void Execute__12daNpc_seiC_cFv(); -extern "C" void Draw__12daNpc_seiC_cFv(); -extern "C" void createHeapCallBack__12daNpc_seiC_cFP10fopAc_ac_c(); -extern "C" void getType__12daNpc_seiC_cFv(); -extern "C" void getFlowNodeNo__12daNpc_seiC_cFv(); -extern "C" bool isDelete__12daNpc_seiC_cFv(); -extern "C" void reset__12daNpc_seiC_cFv(); -extern "C" void setParam__12daNpc_seiC_cFv(); -extern "C" void getDistTable__12dAttention_cFi(); -extern "C" void srchActors__12daNpc_seiC_cFv(); -extern "C" void evtTalk__12daNpc_seiC_cFv(); -extern "C" void evtCutProc__12daNpc_seiC_cFv(); -extern "C" void action__12daNpc_seiC_cFv(); -extern "C" void beforeMove__12daNpc_seiC_cFv(); -extern "C" void setAttnPos__12daNpc_seiC_cFv(); -extern "C" bool drawDbgInfo__12daNpc_seiC_cFv(); -extern "C" void afterSetMotionAnm__12daNpc_seiC_cFiifi(); -extern "C" void selectAction__12daNpc_seiC_cFv(); -extern "C" void chkAction__12daNpc_seiC_cFM12daNpc_seiC_cFPCvPvPv_i(); -extern "C" void setAction__12daNpc_seiC_cFM12daNpc_seiC_cFPCvPvPv_i(); -extern "C" void ctrlWaitAnm__12daNpc_seiC_cFv(); -extern "C" void wait__12daNpc_seiC_cFPv(); -extern "C" void talk__12daNpc_seiC_cFPv(); -extern "C" static void daNpc_seiC_Create__FPv(); -extern "C" static void daNpc_seiC_Delete__FPv(); -extern "C" static void daNpc_seiC_Execute__FPv(); -extern "C" static void daNpc_seiC_Draw__FPv(); -extern "C" static bool daNpc_seiC_IsDelete__FPv(); -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 -__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__18daNpcT_ActorMngr_cFv(); -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" s32 getEyeballMaterialNo__8daNpcT_cFv(); -extern "C" void ctrlSubFaceMotion__8daNpcT_cFi(); -extern "C" bool checkChangeJoint__8daNpcT_cFi(); -extern "C" bool checkRemoveJoint__8daNpcT_cFi(); -extern "C" s32 getBackboneJointNo__8daNpcT_cFv(); -extern "C" s32 getNeckJointNo__8daNpcT_cFv(); -extern "C" s32 getHeadJointNo__8daNpcT_cFv(); -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" bool checkChangeEvt__8daNpcT_cFv(); -extern "C" bool evtEndProc__8daNpcT_cFv(); -extern "C" void setAfterTalkMotion__8daNpcT_cFv(); -extern "C" void afterMoved__8daNpcT_cFv(); -extern "C" void setCollision__8daNpcT_cFv(); -extern "C" bool chkXYItems__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" 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 __sinit_d_a_npc_seic_cpp(); -extern "C" void -__ct__12daNpc_seiC_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc(); -extern "C" void __dt__18daNpc_seiC_Param_cFv(); -extern "C" static void func_80AC91F8(); -extern "C" static void func_80AC9200(); -extern "C" u8 const m__18daNpc_seiC_Param_c[148]; -extern "C" extern char const* const d_a_npc_seic__stringBase0; -extern "C" void* mCutNameList__12daNpc_seiC_c; -extern "C" u8 mCutList__12daNpc_seiC_c[12]; - -// -// 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 fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl(); -extern "C" void dComIfGs_wolfeye_effect_check__Fv(); -extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci(); -extern "C" void reset__14dEvt_control_cFv(); -extern "C" void getMyStaffId__16dEvent_manager_cFPCcP10fopAc_ac_ci(); -extern "C" void getMyActIdx__16dEvent_manager_cFiPCPCciii(); -extern "C" void cutEnd__16dEvent_manager_cFi(); -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 initialize__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 getTexSRTKeyAnmP__8daNpcT_cFPCci(); -extern "C" void getTevRegKeyAnmP__8daNpcT_cFPCci(); -extern "C" void setBtkAnm__8daNpcT_cFP19J3DAnmTextureSRTKeyP12J3DModelDatafi(); -extern "C" void setBrkAnm__8daNpcT_cFP15J3DAnmTevRegKeyP12J3DModelDatafi(); -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 ctrlJoint__8daNpcT_cFP8J3DJointP8J3DModel(); -extern "C" void evtProc__8daNpcT_cFv(); -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 evtOrder__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 setAngle__8daNpcT_cFs(); -extern "C" void initTalk__8daNpcT_cFiPP10fopAc_ac_c(); -extern "C" void talkProc__8daNpcT_cFPiiPP10fopAc_ac_ci(); -extern "C" void __ct__10dMsgFlow_cFv(); -extern "C" void __dt__10dMsgFlow_cFv(); -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 __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 __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_25(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_22(); -extern "C" void _restgpr_25(); -extern "C" void _restgpr_29(); -extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; -extern "C" u8 dist_table__12dAttention_c[6552]; -extern "C" extern void* __vt__9dCcD_Stts[11]; -extern "C" extern void* __vt__8daNpcT_c[49]; -extern "C" extern void* __vt__9cCcD_Stts[8]; -extern "C" void __register_global_object(); - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 80AC92C8-80AC92C8 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80AC92C8 = ""; -SECTION_DEAD static char const* const stringBase_80AC92C9 = "DEFAULT_GETITEM"; -SECTION_DEAD static char const* const stringBase_80AC92D9 = "NO_RESPONSE"; -SECTION_DEAD static char const* const stringBase_80AC92E5 = "seiC"; -#pragma pop - -/* 80AC92F0-80AC92FC 000000 000C+00 2/2 0/0 0/0 .data cNullVec__6Z2Calc */ -SECTION_DATA static u8 cNullVec__6Z2Calc[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -/* 80AC92FC-80AC9310 00000C 0004+10 0/0 0/0 0/0 .data @1787 */ -#pragma push -#pragma force_active on -SECTION_DATA static u32 lit_1787[1 + 4 /* padding */] = { - 0x02000201, - /* padding */ - 0x40080000, - 0x00000000, - 0x3FE00000, - 0x00000000, -}; -#pragma pop +UNK_REL_DATA /* 80AC9310-80AC9318 000020 0008+00 1/1 0/0 0/0 .data l_bmdData */ -SECTION_DATA static u8 l_bmdData[8] = { - 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x01, +static int l_bmdData[1][2] = { + {9, 1} }; /* 80AC9318-80AC9330 -00001 0018+00 0/1 0/0 0/0 .data l_evtList */ -#pragma push -#pragma force_active on -SECTION_DATA static void* l_evtList[6] = { - (void*)&d_a_npc_seic__stringBase0, - (void*)NULL, - (void*)(((char*)&d_a_npc_seic__stringBase0) + 0x1), - (void*)NULL, - (void*)(((char*)&d_a_npc_seic__stringBase0) + 0x11), - (void*)NULL, +static daNpcT_evtData_c l_evtList[3] = { + {"", 0}, + {"DEFAULT_GETITEM", 0}, + {"NO_RESPONSE",0 } }; -#pragma pop /* 80AC9330-80AC9338 -00001 0008+00 2/4 0/0 0/0 .data l_resNameList */ -SECTION_DATA static void* l_resNameList[2] = { - (void*)&d_a_npc_seic__stringBase0, - (void*)(((char*)&d_a_npc_seic__stringBase0) + 0x1D), +static char* l_resNameList[2] = { + "", + "seiC" }; /* 80AC9338-80AC933C 000048 0002+02 1/0 0/0 0/0 .data l_loadResPtrn0 */ -SECTION_DATA static u16 l_loadResPtrn0[1 + 1 /* padding */] = { - 0x01FF, - /* padding */ - 0x0000, +static s8 l_loadResPtrn0[2] = { + 1, -1 }; /* 80AC933C-80AC9344 -00001 0008+00 1/2 0/0 0/0 .data l_loadResPtrnList */ -SECTION_DATA static void* l_loadResPtrnList[2] = { - (void*)&l_loadResPtrn0, - (void*)&l_loadResPtrn0, +static s8* l_loadResPtrnList[2] = { + l_loadResPtrn0, + l_loadResPtrn0, }; /* 80AC9344-80AC9360 000054 001C+00 0/1 0/0 0/0 .data l_faceMotionAnmData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_faceMotionAnmData[28] = { - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +static daNpcT_faceMotionAnmData_c l_faceMotionAnmData = { + -1, 0, 0, -1, 0, 0, 0 }; -#pragma pop /* 80AC9360-80AC937C 000070 001C+00 0/1 0/0 0/0 .data l_motionAnmData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_motionAnmData[28] = { - 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF, - 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +static daNpcT_motionAnmData_c l_motionAnmData = { + 6, 2, 1, -1, 0, 0, 0, 0 }; -#pragma pop /* 80AC937C-80AC938C 00008C 0010+00 0/1 0/0 0/0 .data l_faceMotionSequenceData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_faceMotionSequenceData[16] = { - 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, +static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_faceMotionSequenceData[4] = { + {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, }; -#pragma pop /* 80AC938C-80AC939C 00009C 0010+00 0/1 0/0 0/0 .data l_motionSequenceData */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 l_motionSequenceData[16] = { - 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, +static daNpcT_MotionSeqMngr_c::sequenceStepData_c l_motionSequenceData[4] = { + {0, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, {-1, 0, 0}, }; -#pragma pop /* 80AC939C-80AC93A0 -00001 0004+00 1/1 0/0 0/0 .data mCutNameList__12daNpc_seiC_c */ -SECTION_DATA void* daNpc_seiC_c::mCutNameList = (void*)&d_a_npc_seic__stringBase0; +char* daNpc_seiC_c::mCutNameList = ""; /* 80AC93A0-80AC93AC 0000B0 000C+00 2/2 0/0 0/0 .data mCutList__12daNpc_seiC_c */ -SECTION_DATA u8 daNpc_seiC_c::mCutList[12] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +daNpc_seiC_c::cutFunc daNpc_seiC_c::mCutList[1] = { + 0 }; -/* 80AC93AC-80AC93B8 -00001 000C+00 1/1 0/0 0/0 .data @4342 */ -SECTION_DATA static void* lit_4342[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)talk__12daNpc_seiC_cFPv, +/* 80AC754C-80AC75E8 0000EC 009C+00 1/0 0/0 0/0 .text __dt__12daNpc_seiC_cFv */ +daNpc_seiC_c::~daNpc_seiC_c() { + OS_REPORT("|%06d:%x|daNpc_seiC_c -> デストラクト\n", g_Counter.mCounter0, this); + + if (heap != NULL) { + mpMorf[0]->stopZelAnime(); + } + + #ifdef DEBUG + if (field_0xe40 != NULL) { + field_0xe40.removeHIO(); + } + #endif + + deleteRes(l_loadResPtrnList[mType], (const char**)l_resNameList); +} + +/* 80AC921C-80AC92B0 000000 0094+00 4/4 0/0 0/0 .rodata m__18daNpc_seiC_Param_c */ +daNpc_seiC_HIOParam const daNpc_seiC_Param_c::m = { + 0.0f, + 0.0f, + 1.0f, + 4000.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 0.0f, + 1200.0f, }; -/* 80AC93B8-80AC93C4 -00001 000C+00 1/1 0/0 0/0 .data @4352 */ -SECTION_DATA static void* lit_4352[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)talk__12daNpc_seiC_cFPv, -}; +/* 80AC958C-80AC9590 000014 0004+00 1/1 0/0 0/0 .bss l_HIO */ +static daNpc_seiC_Param_c l_HIO; -/* 80AC93C4-80AC93CC 0000D4 0008+00 0/1 0/0 0/0 .data btkAnmData$4416 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 btkAnmData[8] = { - 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x01, -}; -#pragma pop +/* 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, + 4, l_motionSequenceData, 4, l_evtList, l_resNameList); -/* 80AC93CC-80AC93D4 0000DC 0008+00 0/1 0/0 0/0 .data brkAnmData$4417 */ -#pragma push -#pragma force_active on -SECTION_DATA static u8 brkAnmData[8] = { - 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x01, -}; -#pragma pop + mType = getType(); + mFlowNodeNo = getFlowNodeNo(); + mTwilight = false; -/* 80AC93D4-80AC93E0 -00001 000C+00 1/1 0/0 0/0 .data @4467 */ -SECTION_DATA static void* lit_4467[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)wait__12daNpc_seiC_cFPv, -}; + int phase = loadRes(l_loadResPtrnList[mType], (const char**)l_resNameList); + if (phase == cPhs_COMPLEATE_e) { + if (!fopAcM_entrySolidHeap(this, createHeapCallBack, 0)) { + return cPhs_ERROR_e; + } + + OS_REPORT("\t(%s:%d) flowNo:%d<%08x> ", fopAcM_getProcNameString(this), mType, mFlowNodeNo, fopAcM_GetParam(this)); + + if (isDelete()) { + OS_REPORT("===>isDelete:TRUE\n"); + return cPhs_ERROR_e; + } + + OS_REPORT("\n"); + fopAcM_SetMtx(this, mpMorf[0]->getModel()->getBaseTRMtx()); + mSound.init(¤t.pos, &eyePos, 3, 1); + + #ifdef DEBUG + field_0xe40->field_0x8 = &l_HIO; + field_0xe40->entryHIO("光の精霊c"); // Spirit of Light c + #endif + + 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_seiC_Param_c::m.mSttsWeight, 0, this); + + reset(); + mCreating = true; + Execute(); + mCreating = false; + } + + return phase; +} + +/* 80AC7828-80AC7980 0003C8 0158+00 1/1 0/0 0/0 .text CreateHeap__12daNpc_seiC_cFv */ +int daNpc_seiC_c::CreateHeap() { + J3DModelData* mdlData_p = (J3DModelData*)dComIfG_getObjectRes(l_resNameList[l_bmdData[0][1]], l_bmdData[0][0]); + JUT_ASSERT(424, 0 != mdlData_p); + + mpMorf[0] = new mDoExt_McaMorfSO(mdlData_p, NULL, NULL, NULL, -1, 1.0f, 0, -1, &mSound, 0, 0x11020284); + if (mpMorf[0] != NULL && mpMorf[0]->getModel() == NULL) { + mpMorf[0]->stopZelAnime(); + mpMorf[0] = NULL; + } + + if (mpMorf[0] == NULL) { + return 0; + } + + mpMorf[0]->getModel()->setUserArea((u32)this); + if (setFaceMotionAnm(0, false) && setMotionAnm(0, 0.0f, FALSE)) { + return 1; + } + + return 0; +} + +/* 80AC7980-80AC79B4 000520 0034+00 1/1 0/0 0/0 .text Delete__12daNpc_seiC_cFv */ +int daNpc_seiC_c::Delete() { + OS_REPORT("|%06d:%x|daNpc_seiC_c -> Delete\n", g_Counter.mCounter0, this); + fopAcM_GetID(this); + this->~daNpc_seiC_c(); + return 1; +} + +/* 80AC79B4-80AC79D4 000554 0020+00 2/2 0/0 0/0 .text Execute__12daNpc_seiC_cFv */ +int daNpc_seiC_c::Execute() { + return execute(); +} + +/* 80AC79D4-80AC7A68 000574 0094+00 1/1 0/0 0/0 .text Draw__12daNpc_seiC_cFv */ +int daNpc_seiC_c::Draw() { + daNpcT_MatAnm_c* matAnm = mpMatAnm[0]; + if (matAnm != NULL) { + J3DModelData* modelData = mpMorf[0]->getModel()->getModelData(); + J3DMaterial* material = modelData->getMaterialNodePointer(getEyeballMaterialNo()); + material->setMaterialAnm(matAnm); + } + return draw(FALSE, TRUE, field_0xde8, NULL, 100.0f, FALSE, FALSE, FALSE); +} + +/* 80AC7A68-80AC7A88 000608 0020+00 1/1 0/0 0/0 .text createHeapCallBack__12daNpc_seiC_cFP10fopAc_ac_c */ +int daNpc_seiC_c::createHeapCallBack(fopAc_ac_c* actor) { + daNpc_seiC_c* i_this = (daNpc_seiC_c*)actor; + return i_this->CreateHeap(); +} + +/* 80AC7A88-80AC7AA8 000628 0020+00 1/1 0/0 0/0 .text getType__12daNpc_seiC_cFv */ +u8 daNpc_seiC_c::getType() { + switch ((u8)fopAcM_GetParam(this)) { + case 0: + return TYPE_0; + } + + return TYPE_1; +} + +/* 80AC7AA8-80AC7AC4 000648 001C+00 1/1 0/0 0/0 .text getFlowNodeNo__12daNpc_seiC_cFv */ +u32 daNpc_seiC_c::getFlowNodeNo() { + u16 rv = home.angle.x; + if (rv == 0xffff) { + return -1; + } + return rv; +} + +/* 80AC7AC4-80AC7ACC 000664 0008+00 1/1 0/0 0/0 .text isDelete__12daNpc_seiC_cFv */ +int daNpc_seiC_c::isDelete() { + return 0; +} + +/* 80AC7ACC-80AC7C1C 00066C 0150+00 1/1 0/0 0/0 .text reset__12daNpc_seiC_cFv */ +void daNpc_seiC_c::reset() { + initialize(); + int size = (u8*)&field_0xe60 - (u8*)&mAction; + memset(&mAction, 0, size); + + if (mpMatAnm[0] != NULL) { + mpMatAnm[0]->initialize(); + } + + setAngle(home.angle.y); + mMotionSeqMngr.setNo(0, -1.0f, 0, 0); +} + +/* 80AC7C1C-80AC7D34 0007BC 0118+00 1/0 0/0 0/0 .text setParam__12daNpc_seiC_cFv */ +void daNpc_seiC_c::setParam() { + // NONMATCHING + selectAction(); + srchActors(); + + dComIfGp_getAttention().getDistTable(0x28).mDistMax = daNpc_seiC_Param_c::m.field_0x90; + dComIfGp_getAttention().getDistTable(0x28).mDistMaxRelease = daNpc_seiC_Param_c::m.field_0x90; + + dComIfGp_getAttention().getDistTable(0x27).mDistMax = daNpc_seiC_Param_c::m.field_0x90; + dComIfGp_getAttention().getDistTable(0x27).mDistMaxRelease = daNpc_seiC_Param_c::m.field_0x90; + + attention_info.distances[0] = 39; + attention_info.distances[1] = 39; + attention_info.distances[3] = 39; + attention_info.flags = 0; + + scale.set(daNpc_seiC_Param_c::m.mScale, daNpc_seiC_Param_c::m.mScale, daNpc_seiC_Param_c::m.mScale); + mCcStts.SetWeight(daNpc_seiC_Param_c::m.mSttsWeight); + mCylH = daNpc_seiC_Param_c::m.mCylH; + mWallR = daNpc_seiC_Param_c::m.mWallR; + mAcchCir.SetWallR(mWallR); + mAcchCir.SetWallH(daNpc_seiC_Param_c::m.mWallH); + field_0xde8 = daNpc_seiC_Param_c::m.field_0x0c; + gravity = daNpc_seiC_Param_c::m.mGravity; + field_0xa80 = daNpc_seiC_Param_c::m.field_0x6c; + mMorfFrames = daNpc_seiC_Param_c::m.mMorfFrames; +} + +/* 80AC7D48-80AC7D4C 0008E8 0004+00 1/1 0/0 0/0 .text srchActors__12daNpc_seiC_cFv */ +void daNpc_seiC_c::srchActors() { + /* empty function */ +} + +/* 80AC7D4C-80AC7E4C 0008EC 0100+00 1/0 0/0 0/0 .text evtTalk__12daNpc_seiC_cFv */ +BOOL daNpc_seiC_c::evtTalk() { + if (chkAction(&daNpc_seiC_c::talk) != 0) { + (this->*mAction2)(NULL); + } else { + mPreItemNo = 0; + if (dComIfGp_event_chkTalkXY()) { + if (!dComIfGp_evmng_ChkPresentEnd()) { + return TRUE; + } + + mEvtNo = 2; + evtChange(); + return TRUE; + } + + setAction(&daNpc_seiC_c::talk); + } + + return TRUE; +} + +/* 80AC7E4C-80AC7F14 0009EC 00C8+00 1/0 0/0 0/0 .text evtCutProc__12daNpc_seiC_cFv */ +BOOL daNpc_seiC_c::evtCutProc() { + BOOL rv = 0; + int staffID = dComIfGp_getEventManager().getMyStaffId("Seic", this, -1); + if (staffID != -1) { + mStaffId = staffID; + staffID = dComIfGp_getEventManager().getMyActIdx(mStaffId, &mCutNameList, 1, 0, 0); + if ((this->*(mCutList[staffID]))(mStaffId)) { + dComIfGp_getEventManager().cutEnd(mStaffId); + } + rv = 1; + } + + return rv; +} + +/* 80AC7F14-80AC7F9C 000AB4 0088+00 1/0 0/0 0/0 .text action__12daNpc_seiC_cFv */ +void daNpc_seiC_c::action() { + if (mAction) { + if (mAction2 == mAction) { + (this->*mAction2)(NULL); + } else { + setAction(mAction); + } + } +} + +/* 80AC7F9C-80AC801C 000B3C 0080+00 1/0 0/0 0/0 .text beforeMove__12daNpc_seiC_cFv */ +void daNpc_seiC_c::beforeMove() { + if (checkHide() || mNoDraw) { + attention_info.flags = 0; + } + ctrlWaitAnm(); +} + +/* 80AC801C-80AC8078 000BBC 005C+00 1/0 0/0 0/0 .text setAttnPos__12daNpc_seiC_cFv */ +void daNpc_seiC_c::setAttnPos() { + setMtx(); + eyePos = current.pos; + attention_info.position = current.pos; +} + +/* 80AC8078-80AC8080 000C18 0008+00 1/0 0/0 0/0 .text drawDbgInfo__12daNpc_seiC_cFv */ +int daNpc_seiC_c::drawDbgInfo() { + return 0; +} + +/* 80AC8080-80AC8218 000C20 0198+00 1/0 0/0 0/0 .text afterSetMotionAnm__12daNpc_seiC_cFiifi */ +bool daNpc_seiC_c::afterSetMotionAnm(int param_1, int param_2, f32 param_3, int param_4) { + static struct { + int field_0x0; + u32 field_0x4; + } btkAnmData[1] = { + {15, 1}, + }; + + static struct { + int field_0x0; + u32 field_0x4; + } brkAnmData[1] = { + {12, 1}, + }; + + J3DAnmTextureSRTKey* anm_text = NULL; + J3DAnmTevRegKey* anm_tev = NULL; + if (btkAnmData[param_1].field_0x0 != -1) { + anm_text = getTexSRTKeyAnmP(l_resNameList[btkAnmData[param_1].field_0x4], btkAnmData[param_1].field_0x0); + } + + if (anm_text) { + if (mBtkAnm.getBtkAnm() == anm_text) { + mAnmFlags |= 0x80; + } else if (setBtkAnm(anm_text, mpMorf[0]->getModel()->getModelData(), 1.0f, param_2)) { + mAnmFlags |= 0x82; + } + } + + if (anm_text == NULL && btkAnmData[param_1].field_0x0 != -1) { + return 0; + } + + if (brkAnmData[param_1].field_0x0 != -1) { + anm_tev = getTevRegKeyAnmP(l_resNameList[brkAnmData[param_1].field_0x4], brkAnmData[param_1].field_0x0); + } + + if (anm_tev) { + if (mBrkAnm.getBrkAnm() == anm_tev) { + mAnmFlags |= 0x100; + } else if (setBrkAnm(anm_tev, mpMorf[0]->getModel()->getModelData(), 1.0f, param_2)) { + mAnmFlags |= 0x104; + } + } + + if (anm_tev == NULL && brkAnmData[param_1].field_0x0 != -1) { + return 0; + } + + return 1; +} + +/* 80AC8218-80AC8260 000DB8 0048+00 1/1 0/0 0/0 .text selectAction__12daNpc_seiC_cFv */ +int daNpc_seiC_c::selectAction() { + mAction = NULL; + mAction = &daNpc_seiC_c::wait; + return 1; +} + +/* 80AC8260-80AC828C 000E00 002C+00 1/1 0/0 0/0 .text chkAction__12daNpc_seiC_cFM12daNpc_seiC_cFPCvPvPv_i */ +int daNpc_seiC_c::chkAction(int (daNpc_seiC_c::*action)(void*)) { + return mAction2 == action; +} + +/* 80AC828C-80AC8334 000E2C 00A8+00 2/2 0/0 0/0 .text setAction__12daNpc_seiC_cFM12daNpc_seiC_cFPCvPvPv_i */ +int daNpc_seiC_c::setAction(int (daNpc_seiC_c::*action)(void*)) { + mMode = 3; + if (mAction2) { + (this->*mAction2)(NULL); + } + + mMode = 0; + mAction2 = action; + if (mAction2) { + (this->*mAction2)(NULL); + } + + return 1; +} + +/* 80AC8334-80AC8338 000ED4 0004+00 1/1 0/0 0/0 .text ctrlWaitAnm__12daNpc_seiC_cFv */ +void daNpc_seiC_c::ctrlWaitAnm() { + /* empty function */ +} + +/* 80AC8338-80AC8364 000ED8 002C+00 1/0 0/0 0/0 .text wait__12daNpc_seiC_cFPv */ +int daNpc_seiC_c::wait(void* param_1) { + switch (mMode) { + case 0: + case 1: + mMode = 2; + break; + + case 2: + case 3: + break; + } + + return 1; +} + +/* 80AC8364-80AC8404 000F04 00A0+00 2/0 0/0 0/0 .text talk__12daNpc_seiC_cFPv */ +int daNpc_seiC_c::talk(void* param_1) { + switch (mMode) { + case 0: + case 1: + initTalk(mFlowNodeNo, NULL); + field_0xe26 = 0; + mMode = 2; + // fallthrough + case 2: + if (talkProc(NULL, 0, NULL, 0)) { + dComIfGp_event_reset(); + mMode = 3; + } + // fallthrough + case 3: + break; + } + + return 0; +} + +/* 80AC8404-80AC8424 000FA4 0020+00 1/0 0/0 0/0 .text daNpc_seiC_Create__FPv */ +static int daNpc_seiC_Create(void* param_1) { + daNpc_seiC_c* i_this = (daNpc_seiC_c*)param_1; + return i_this->create(); +} + +/* 80AC8424-80AC8444 000FC4 0020+00 1/0 0/0 0/0 .text daNpc_seiC_Delete__FPv */ +static int daNpc_seiC_Delete(void* param_1) { + daNpc_seiC_c* i_this = (daNpc_seiC_c*)param_1; + return i_this->Delete(); +} + +/* 80AC8444-80AC8464 000FE4 0020+00 1/0 0/0 0/0 .text daNpc_seiC_Execute__FPv */ +static int daNpc_seiC_Execute(void* param_1) { + daNpc_seiC_c* i_this = (daNpc_seiC_c*)param_1; + return i_this->Execute(); +} + +/* 80AC8464-80AC8484 001004 0020+00 1/0 0/0 0/0 .text daNpc_seiC_Draw__FPv */ +static int daNpc_seiC_Draw(void* param_1) { + daNpc_seiC_c* i_this = (daNpc_seiC_c*)param_1; + return i_this->Draw(); +} + +/* 80AC8484-80AC848C 001024 0008+00 1/0 0/0 0/0 .text daNpc_seiC_IsDelete__FPv */ +static int daNpc_seiC_IsDelete(void* param_1) { + return 1; +} /* 80AC93E0-80AC9400 -00001 0020+00 1/0 0/0 0/0 .data daNpc_seiC_MethodTable */ static actor_method_class daNpc_seiC_MethodTable = { - (process_method_func)daNpc_seiC_Create__FPv, - (process_method_func)daNpc_seiC_Delete__FPv, - (process_method_func)daNpc_seiC_Execute__FPv, - (process_method_func)daNpc_seiC_IsDelete__FPv, - (process_method_func)daNpc_seiC_Draw__FPv, + (process_method_func)daNpc_seiC_Create, + (process_method_func)daNpc_seiC_Delete, + (process_method_func)daNpc_seiC_Execute, + (process_method_func)daNpc_seiC_IsDelete, + (process_method_func)daNpc_seiC_Draw, }; /* 80AC9400-80AC9430 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SEIC */ @@ -362,582 +549,4 @@ extern actor_process_profile_definition g_profile_NPC_SEIC = { fopAc_CULLBOX_CUSTOM_e, // cullType }; -/* 80AC9430-80AC943C 000140 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, -}; - -/* 80AC943C-80AC9460 00014C 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_80AC9200, - (void*)NULL, - (void*)NULL, - (void*)func_80AC91F8, -}; - -/* 80AC9460-80AC946C 000170 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, -}; - -/* 80AC946C-80AC9478 00017C 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, -}; - -/* 80AC9478-80AC9484 000188 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, -}; - -/* 80AC9484-80AC9490 000194 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, -}; - -/* 80AC9490-80AC949C 0001A0 000C+00 4/4 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, -}; - -/* 80AC949C-80AC94A8 0001AC 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, -}; - -/* 80AC94A8-80AC956C 0001B8 00C4+00 2/2 0/0 0/0 .data __vt__12daNpc_seiC_c */ -SECTION_DATA extern void* __vt__12daNpc_seiC_c[49] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__12daNpc_seiC_cFv, - (void*)ctrlBtk__8daNpcT_cFv, - (void*)ctrlSubFaceMotion__8daNpcT_cFi, - (void*)checkChangeJoint__8daNpcT_cFi, - (void*)checkRemoveJoint__8daNpcT_cFi, - (void*)getBackboneJointNo__8daNpcT_cFv, - (void*)getNeckJointNo__8daNpcT_cFv, - (void*)getHeadJointNo__8daNpcT_cFv, - (void*)getFootLJointNo__8daNpcT_cFv, - (void*)getFootRJointNo__8daNpcT_cFv, - (void*)getEyeballLMaterialNo__8daNpcT_cFv, - (void*)getEyeballRMaterialNo__8daNpcT_cFv, - (void*)getEyeballMaterialNo__8daNpcT_cFv, - (void*)ctrlJoint__8daNpcT_cFP8J3DJointP8J3DModel, - (void*)afterJntAnm__8daNpcT_cFi, - (void*)setParam__12daNpc_seiC_cFv, - (void*)checkChangeEvt__8daNpcT_cFv, - (void*)evtTalk__12daNpc_seiC_cFv, - (void*)evtEndProc__8daNpcT_cFv, - (void*)evtCutProc__12daNpc_seiC_cFv, - (void*)setAfterTalkMotion__8daNpcT_cFv, - (void*)evtProc__8daNpcT_cFv, - (void*)action__12daNpc_seiC_cFv, - (void*)beforeMove__12daNpc_seiC_cFv, - (void*)afterMoved__8daNpcT_cFv, - (void*)setAttnPos__12daNpc_seiC_cFv, - (void*)setFootPos__8daNpcT_cFv, - (void*)setCollision__8daNpcT_cFv, - (void*)setFootPrtcl__8daNpcT_cFP4cXyzff, - (void*)checkCullDraw__8daNpcT_cFv, - (void*)twilight__8daNpcT_cFv, - (void*)chkXYItems__8daNpcT_cFv, - (void*)evtOrder__8daNpcT_cFv, - (void*)decTmr__8daNpcT_cFv, - (void*)clrParam__8daNpcT_cFv, - (void*)drawDbgInfo__12daNpc_seiC_cFv, - (void*)drawOtherMdl__8daNpcT_cFv, - (void*)drawGhost__8daNpcT_cFv, - (void*)afterSetFaceMotionAnm__8daNpcT_cFiifi, - (void*)afterSetMotionAnm__12daNpc_seiC_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, -}; - -/* 80AC754C-80AC75E8 0000EC 009C+00 1/0 0/0 0/0 .text __dt__12daNpc_seiC_cFv */ -daNpc_seiC_c::~daNpc_seiC_c() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AC921C-80AC92B0 000000 0094+00 4/4 0/0 0/0 .rodata m__18daNpc_seiC_Param_c */ -SECTION_RODATA u8 const daNpc_seiC_Param_c::m[148] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x45, 0x7A, 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, 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, 0x44, 0x96, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80AC921C, &daNpc_seiC_Param_c::m); - -/* 80AC75E8-80AC7828 000188 0240+00 1/1 0/0 0/0 .text create__12daNpc_seiC_cFv */ -void daNpc_seiC_c::create() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AC92B0-80AC92B4 000094 0004+00 1/3 0/0 0/0 .rodata @4089 */ -SECTION_RODATA static u8 const lit_4089[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x80AC92B0, &lit_4089); - -/* 80AC92B4-80AC92B8 000098 0004+00 0/2 0/0 0/0 .rodata @4090 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4090 = 65536.0f; -COMPILER_STRIP_GATE(0x80AC92B4, &lit_4090); -#pragma pop - -/* 80AC92B8-80AC92BC 00009C 0004+00 0/2 0/0 0/0 .rodata @4091 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4091 = 1.0f / 5.0f; -COMPILER_STRIP_GATE(0x80AC92B8, &lit_4091); -#pragma pop - -/* 80AC92BC-80AC92C0 0000A0 0004+00 2/2 0/0 0/0 .rodata @4215 */ -SECTION_RODATA static f32 const lit_4215 = 1.0f; -COMPILER_STRIP_GATE(0x80AC92BC, &lit_4215); - -/* 80AC7828-80AC7980 0003C8 0158+00 1/1 0/0 0/0 .text CreateHeap__12daNpc_seiC_cFv */ -void daNpc_seiC_c::CreateHeap() { - // NONMATCHING -} - -/* 80AC7980-80AC79B4 000520 0034+00 1/1 0/0 0/0 .text Delete__12daNpc_seiC_cFv */ -void daNpc_seiC_c::Delete() { - // NONMATCHING -} - -/* 80AC79B4-80AC79D4 000554 0020+00 2/2 0/0 0/0 .text Execute__12daNpc_seiC_cFv */ -void daNpc_seiC_c::Execute() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AC92C0-80AC92C4 0000A4 0004+00 1/1 0/0 0/0 .rodata @4247 */ -SECTION_RODATA static f32 const lit_4247 = 100.0f; -COMPILER_STRIP_GATE(0x80AC92C0, &lit_4247); - -/* 80AC79D4-80AC7A68 000574 0094+00 1/1 0/0 0/0 .text Draw__12daNpc_seiC_cFv */ -void daNpc_seiC_c::Draw() { - // NONMATCHING -} - -/* 80AC7A68-80AC7A88 000608 0020+00 1/1 0/0 0/0 .text - * createHeapCallBack__12daNpc_seiC_cFP10fopAc_ac_c */ -void daNpc_seiC_c::createHeapCallBack(fopAc_ac_c* param_0) { - // NONMATCHING -} - -/* 80AC7A88-80AC7AA8 000628 0020+00 1/1 0/0 0/0 .text getType__12daNpc_seiC_cFv */ -void daNpc_seiC_c::getType() { - // NONMATCHING -} - -/* 80AC7AA8-80AC7AC4 000648 001C+00 1/1 0/0 0/0 .text getFlowNodeNo__12daNpc_seiC_cFv */ -void daNpc_seiC_c::getFlowNodeNo() { - // NONMATCHING -} - -/* 80AC7AC4-80AC7ACC 000664 0008+00 1/1 0/0 0/0 .text isDelete__12daNpc_seiC_cFv */ -bool daNpc_seiC_c::isDelete() { - return false; -} - -/* ############################################################################################## */ -/* 80AC92C4-80AC92C8 0000A8 0004+00 0/1 0/0 0/0 .rodata @4292 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4292 = -1.0f; -COMPILER_STRIP_GATE(0x80AC92C4, &lit_4292); -#pragma pop - -/* 80AC7ACC-80AC7C1C 00066C 0150+00 1/1 0/0 0/0 .text reset__12daNpc_seiC_cFv */ -void daNpc_seiC_c::reset() { - // NONMATCHING -} - -/* 80AC7C1C-80AC7D34 0007BC 0118+00 1/0 0/0 0/0 .text setParam__12daNpc_seiC_cFv */ -void daNpc_seiC_c::setParam() { - // NONMATCHING -} - -/* 80AC7D34-80AC7D48 0008D4 0014+00 1/1 0/0 0/0 .text getDistTable__12dAttention_cFi */ -// void dAttention_c::getDistTable(int param_0) { -extern "C" void getDistTable__12dAttention_cFi() { - // NONMATCHING -} - -/* 80AC7D48-80AC7D4C 0008E8 0004+00 1/1 0/0 0/0 .text srchActors__12daNpc_seiC_cFv */ -void daNpc_seiC_c::srchActors() { - /* empty function */ -} - -/* 80AC7D4C-80AC7E4C 0008EC 0100+00 1/0 0/0 0/0 .text evtTalk__12daNpc_seiC_cFv */ -void daNpc_seiC_c::evtTalk() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AC92C8-80AC92C8 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80AC92EA = "Seic"; -#pragma pop - -/* 80AC7E4C-80AC7F14 0009EC 00C8+00 1/0 0/0 0/0 .text evtCutProc__12daNpc_seiC_cFv */ -void daNpc_seiC_c::evtCutProc() { - // NONMATCHING -} - -/* 80AC7F14-80AC7F9C 000AB4 0088+00 1/0 0/0 0/0 .text action__12daNpc_seiC_cFv */ -void daNpc_seiC_c::action() { - // NONMATCHING -} - -/* 80AC7F9C-80AC801C 000B3C 0080+00 1/0 0/0 0/0 .text beforeMove__12daNpc_seiC_cFv */ -void daNpc_seiC_c::beforeMove() { - // NONMATCHING -} - -/* 80AC801C-80AC8078 000BBC 005C+00 1/0 0/0 0/0 .text setAttnPos__12daNpc_seiC_cFv */ -void daNpc_seiC_c::setAttnPos() { - // NONMATCHING -} - -/* 80AC8078-80AC8080 000C18 0008+00 1/0 0/0 0/0 .text drawDbgInfo__12daNpc_seiC_cFv */ -bool daNpc_seiC_c::drawDbgInfo() { - return false; -} - -/* 80AC8080-80AC8218 000C20 0198+00 1/0 0/0 0/0 .text afterSetMotionAnm__12daNpc_seiC_cFiifi */ -void daNpc_seiC_c::afterSetMotionAnm(int param_0, int param_1, f32 param_2, int param_3) { - // NONMATCHING -} - -/* 80AC8218-80AC8260 000DB8 0048+00 1/1 0/0 0/0 .text selectAction__12daNpc_seiC_cFv */ -void daNpc_seiC_c::selectAction() { - // NONMATCHING -} - -/* 80AC8260-80AC828C 000E00 002C+00 1/1 0/0 0/0 .text - * chkAction__12daNpc_seiC_cFM12daNpc_seiC_cFPCvPvPv_i */ -void daNpc_seiC_c::chkAction(int (daNpc_seiC_c::*param_0)(void*)) { - // NONMATCHING -} - -/* 80AC828C-80AC8334 000E2C 00A8+00 2/2 0/0 0/0 .text - * setAction__12daNpc_seiC_cFM12daNpc_seiC_cFPCvPvPv_i */ -void daNpc_seiC_c::setAction(int (daNpc_seiC_c::*param_0)(void*)) { - // NONMATCHING -} - -/* 80AC8334-80AC8338 000ED4 0004+00 1/1 0/0 0/0 .text ctrlWaitAnm__12daNpc_seiC_cFv */ -void daNpc_seiC_c::ctrlWaitAnm() { - /* empty function */ -} - -/* 80AC8338-80AC8364 000ED8 002C+00 1/0 0/0 0/0 .text wait__12daNpc_seiC_cFPv */ -void daNpc_seiC_c::wait(void* param_0) { - // NONMATCHING -} - -/* 80AC8364-80AC8404 000F04 00A0+00 2/0 0/0 0/0 .text talk__12daNpc_seiC_cFPv */ -void daNpc_seiC_c::talk(void* param_0) { - // NONMATCHING -} - -/* 80AC8404-80AC8424 000FA4 0020+00 1/0 0/0 0/0 .text daNpc_seiC_Create__FPv */ -static void daNpc_seiC_Create(void* param_0) { - // NONMATCHING -} - -/* 80AC8424-80AC8444 000FC4 0020+00 1/0 0/0 0/0 .text daNpc_seiC_Delete__FPv */ -static void daNpc_seiC_Delete(void* param_0) { - // NONMATCHING -} - -/* 80AC8444-80AC8464 000FE4 0020+00 1/0 0/0 0/0 .text daNpc_seiC_Execute__FPv */ -static void daNpc_seiC_Execute(void* param_0) { - // NONMATCHING -} - -/* 80AC8464-80AC8484 001004 0020+00 1/0 0/0 0/0 .text daNpc_seiC_Draw__FPv */ -static void daNpc_seiC_Draw(void* param_0) { - // NONMATCHING -} - -/* 80AC8484-80AC848C 001024 0008+00 1/0 0/0 0/0 .text daNpc_seiC_IsDelete__FPv */ -static bool daNpc_seiC_IsDelete(void* param_0) { - return true; -} - -/* 80AC848C-80AC84D4 00102C 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */ -// cCcD_GStts::~cCcD_GStts() { -extern "C" void __dt__10cCcD_GSttsFv() { - // NONMATCHING -} - -/* 80AC84D4-80AC885C 001074 0388+00 1/1 0/0 0/0 .text __dt__8daNpcT_cFv */ -// daNpcT_c::~daNpcT_c() { -extern "C" void __dt__8daNpcT_cFv() { - // NONMATCHING -} - -/* 80AC885C-80AC8898 0013FC 003C+00 3/3 0/0 0/0 .text __dt__4cXyzFv */ -// cXyz::~cXyz() { -extern "C" void __dt__4cXyzFv() { - // NONMATCHING -} - -/* 80AC8898-80AC88D4 001438 003C+00 2/2 0/0 0/0 .text __dt__5csXyzFv */ -// csXyz::~csXyz() { -extern "C" void __dt__5csXyzFv() { - // NONMATCHING -} - -/* 80AC88D4-80AC8CD8 001474 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 -} - -/* 80AC8CD8-80AC8CDC 001878 0004+00 1/1 0/0 0/0 .text __ct__5csXyzFv */ -// csXyz::csXyz() { -extern "C" void __ct__5csXyzFv() { - /* empty function */ -} - -/* 80AC8CDC-80AC8DD8 00187C 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 -} - -/* 80AC8DD8-80AC8DDC 001978 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */ -// cXyz::cXyz() { -extern "C" void __ct__4cXyzFv() { - /* empty function */ -} - -/* 80AC8DDC-80AC8E24 00197C 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 -} - -/* 80AC8E24-80AC8E6C 0019C4 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 -} - -/* 80AC8E6C-80AC8EDC 001A0C 0070+00 1/0 0/0 0/0 .text __dt__12dBgS_AcchCirFv */ -// dBgS_AcchCir::~dBgS_AcchCir() { -extern "C" void __dt__12dBgS_AcchCirFv() { - // NONMATCHING -} - -/* 80AC8EDC-80AC8F38 001A7C 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */ -// dCcD_GStts::~dCcD_GStts() { -extern "C" void __dt__10dCcD_GSttsFv() { - // NONMATCHING -} - -/* 80AC8F38-80AC8FA8 001AD8 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */ -// dBgS_ObjAcch::~dBgS_ObjAcch() { -extern "C" void __dt__12dBgS_ObjAcchFv() { - // NONMATCHING -} - -/* 80AC8FA8-80AC8FF0 001B48 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */ -// J3DFrameCtrl::~J3DFrameCtrl() { -extern "C" void __dt__12J3DFrameCtrlFv() { - // NONMATCHING -} - -/* 80AC8FF8-80AC8FFC 001B98 0004+00 1/0 0/0 0/0 .text ctrlSubFaceMotion__8daNpcT_cFi */ -// void daNpcT_c::ctrlSubFaceMotion(int param_0) { -extern "C" void ctrlSubFaceMotion__8daNpcT_cFi() { - /* empty function */ -} - -/* 80AC9034-80AC903C 001BD4 0008+00 1/0 0/0 0/0 .text getEyeballLMaterialNo__8daNpcT_cFv - */ -// bool daNpcT_c::getEyeballLMaterialNo() { -extern "C" bool getEyeballLMaterialNo__8daNpcT_cFv() { - return false; -} - -/* 80AC903C-80AC9044 001BDC 0008+00 1/0 0/0 0/0 .text getEyeballRMaterialNo__8daNpcT_cFv - */ -// bool daNpcT_c::getEyeballRMaterialNo() { -extern "C" bool getEyeballRMaterialNo__8daNpcT_cFv() { - return false; -} - -/* 80AC9050-80AC9058 001BF0 0008+00 1/0 0/0 0/0 .text evtEndProc__8daNpcT_cFv */ -// bool daNpcT_c::evtEndProc() { -extern "C" bool evtEndProc__8daNpcT_cFv() { - return true; -} - -/* 80AC9064-80AC906C 001C04 0008+00 1/0 0/0 0/0 .text chkXYItems__8daNpcT_cFv */ -// bool daNpcT_c::chkXYItems() { -extern "C" bool chkXYItems__8daNpcT_cFv() { - return false; -} - -/* 80AC906C-80AC9084 001C0C 0018+00 1/0 0/0 0/0 .text decTmr__8daNpcT_cFv */ -// void daNpcT_c::decTmr() { -extern "C" void decTmr__8daNpcT_cFv() { - // NONMATCHING -} - -/* 80AC9084-80AC9088 001C24 0004+00 1/0 0/0 0/0 .text drawOtherMdl__8daNpcT_cFv */ -// void daNpcT_c::drawOtherMdl() { -extern "C" void drawOtherMdl__8daNpcT_cFv() { - /* empty function */ -} - -/* 80AC9088-80AC908C 001C28 0004+00 1/0 0/0 0/0 .text drawGhost__8daNpcT_cFv */ -// void daNpcT_c::drawGhost() { -extern "C" void drawGhost__8daNpcT_cFv() { - /* empty function */ -} - -/* 80AC908C-80AC9094 001C2C 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; -} - -/* 80AC9094-80AC90C4 001C34 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 -} - -/* 80AC90C4-80AC90F4 001C64 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 -} - -/* 80AC90F4-80AC90F8 001C94 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 */ -} - -/* 80AC90F8-80AC90FC 001C98 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 */ -} - -/* 80AC90FC-80AC9100 001C9C 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 */ -} - -/* 80AC9100-80AC9104 001CA0 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 */ -} - -/* ############################################################################################## */ -/* 80AC956C-80AC9578 00027C 000C+00 2/2 0/0 0/0 .data __vt__18daNpc_seiC_Param_c */ -SECTION_DATA extern void* __vt__18daNpc_seiC_Param_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__18daNpc_seiC_Param_cFv, -}; - -/* 80AC9580-80AC958C 000008 000C+00 1/1 0/0 0/0 .bss @3814 */ -static u8 lit_3814[12]; - -/* 80AC958C-80AC9590 000014 0004+00 1/1 0/0 0/0 .bss l_HIO */ -static u8 l_HIO[4]; - -/* 80AC9104-80AC916C 001CA4 0068+00 0/0 1/0 0/0 .text __sinit_d_a_npc_seic_cpp */ -void __sinit_d_a_npc_seic_cpp() { - // NONMATCHING -} - -#pragma push -#pragma force_active on -REGISTER_CTORS(0x80AC9104, __sinit_d_a_npc_seic_cpp); -#pragma pop - -/* 80AC916C-80AC91B0 001D0C 0044+00 1/1 0/0 0/0 .text - * __ct__12daNpc_seiC_cFPC26daNpcT_faceMotionAnmData_cPC22daNpcT_motionAnmData_cPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPCQ222daNpcT_MotionSeqMngr_c18sequenceStepData_ciPC16daNpcT_evtData_cPPc - */ -daNpc_seiC_c::daNpc_seiC_c(daNpcT_faceMotionAnmData_c const* param_0, - daNpcT_motionAnmData_c const* param_1, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_2, - int param_3, - daNpcT_MotionSeqMngr_c::sequenceStepData_c const* param_4, - int param_5, daNpcT_evtData_c const* param_6, char** param_7) { - // NONMATCHING -} - -/* 80AC91B0-80AC91F8 001D50 0048+00 2/1 0/0 0/0 .text __dt__18daNpc_seiC_Param_cFv */ -daNpc_seiC_Param_c::~daNpc_seiC_Param_c() { - // NONMATCHING -} - -/* 80AC91F8-80AC9200 001D98 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */ -static void func_80AC91F8() { - // NONMATCHING -} - -/* 80AC9200-80AC9208 001DA0 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */ -static void func_80AC9200() { - // NONMATCHING -} - /* 80AC92C8-80AC92C8 0000AC 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */