From 4361019959acf84f347fec62315f8aefb2d63a6f Mon Sep 17 00:00:00 2001 From: Vlad Date: Sun, 6 Apr 2025 12:06:44 -0600 Subject: [PATCH] d_a_npc_shop0 matching (#2374) * d_a_npc_shop0 matching * d_a_npc_shop0 matching --- configure.py | 2 +- include/d/actor/d_a_npc_shop0.h | 83 ++- src/d/actor/d_a_npc_shop0.cpp | 938 ++++++++++++-------------------- 3 files changed, 415 insertions(+), 608 deletions(-) diff --git a/configure.py b/configure.py index 724e4c1db21..a899d18d817 100755 --- a/configure.py +++ b/configure.py @@ -1800,7 +1800,7 @@ config.libs = [ ActorRel(NonMatching, "d_a_npc_shad"), ActorRel(NonMatching, "d_a_npc_shaman"), ActorRel(NonMatching, "d_a_npc_shoe"), - ActorRel(NonMatching, "d_a_npc_shop0"), + ActorRel(MatchingFor("GZ2E01"), "d_a_npc_shop0"), ActorRel(Equivalent, "d_a_npc_shop_maro"), # weak function order ActorRel(NonMatching, "d_a_npc_sola"), ActorRel(NonMatching, "d_a_npc_soldierA"), diff --git a/include/d/actor/d_a_npc_shop0.h b/include/d/actor/d_a_npc_shop0.h index e4c9be68610..d89695f7951 100644 --- a/include/d/actor/d_a_npc_shop0.h +++ b/include/d/actor/d_a_npc_shop0.h @@ -11,46 +11,69 @@ * @details * */ + +class daNpc_Shop0_Param_c { +public: + /* 80AEBB14 */ virtual ~daNpc_Shop0_Param_c() {}; + + struct param { + /* 0x0 */ u32 mParam1; + /* 0x4 */ u32 mParam2; + /* 0x8 */ u32 mParam3; + }; + + static param const mParam; +}; + + class daNpc_Shop0_c : public fopAc_ac_c { public: - /* 80AEA7F8 */ ~daNpc_Shop0_c(); - /* 80AEAA10 */ void create(); - /* 80AEAE9C */ void createHeap(); - /* 80AEAF8C */ void destroy(); - /* 80AEAFC0 */ void execute(); - /* 80AEB078 */ void draw(); - /* 80AEB190 */ void getResName(); + /* 80AEA7F8 */ virtual ~daNpc_Shop0_c(); + /* 80AEAA10 */ int create(); + /* 80AEAE9C */ int createHeap(); + /* 80AEAF8C */ int destroy(); + /* 80AEAFC0 */ int execute(); + /* 80AEB078 */ int draw(); + /* 80AEB190 */ char* getResName(); /* 80AEB1A0 */ void getParam(); - /* 80AEB1C8 */ void getFlowNodeNum(); - /* 80AEB1D0 */ void isDelete(); - /* 80AEB22C */ void init(); - /* 80AEB32C */ void getTrnsfrmAnmP(int, char**); - /* 80AEB3A8 */ void setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); - /* 80AEB45C */ void setCollision(); - /* 80AEB4C8 */ void checkEvent(); + /* 80AEB1C8 */ int getFlowNodeNum(); + /* 80AEB1D0 */ int isDelete(); + /* 80AEB22C */ int init(); + /* 80AEB32C */ J3DAnmTransform* getTrnsfrmAnmP(int, char**); + /* 80AEB3A8 */ int setBckAnm(J3DAnmTransform*, f32, int, int, int, bool); + /* 80AEB45C */ int setCollision(); + /* 80AEB4C8 */ int checkEvent(); /* 80AEB5E8 */ void orderEvent(); /* 80AEB634 */ void setMtx(); /* 80AEB6DC */ void setRoomInf(); - /* 80AEB780 */ void cut_alert(int, int); - /* 80AEB7F0 */ void chkProcess(int (daNpc_Shop0_c::*)(void*)); - /* 80AEB824 */ void setProcess(int (daNpc_Shop0_c::*)(void*), void*, int); - /* 80AEB920 */ void wait(void*); - /* 80AEB9BC */ void talk(void*); + /* 80AEB780 */ int cut_alert(int, int); + /* 80AEB7F0 */ int chkProcess(int (daNpc_Shop0_c::*)(void*)); + /* 80AEB824 */ int setProcess(int (daNpc_Shop0_c::*)(void*), void*, int); + /* 80AEB920 */ int wait(void*); + /* 80AEB9BC */ int talk(void*); - static u8 const mCylDat[68]; + static dCcD_SrcCyl const mCylDat; -private: - /* 0x568 */ u8 field_0x568[0x9ec - 0x568]; + /* 0x56c */ u8 mParam; + /* 0x570 */ mDoExt_bckAnm mBckAnm; + /* 0x58c */ f32 mPlaySpeed; + /* 0x590 */ u32 mFlowNodeNum; + /* 0x594 */ dMsgFlow_c mMsgFlow; + /* 0x5e0 */ request_of_phase_process_class mPhaseReq; + /* 0x5e8 */ J3DModel* mpModel; + /* 0x5ec */ f32 mGroundCross; + /* 0x5f0 */ dBgS_ObjGndChk mGndChk; + /* 0x644 */ daNpc_Shop0_Param_c* mpShopParam; + /* 0x648 */ dBgS_AcchCir mAcchCir; + /* 0x688 */ dBgS_ObjAcch mAcch; + /* 0x860 */ dCcD_Stts mStts; + /* 0x89c */ dCcD_Cyl mCyl; + /* 0x9d8 */ s32 mMode; + /* 0x9dc */ int (daNpc_Shop0_c::*mProcess)(void*); + /* 0x9e8 */ s16 field_0x9e8; + /* 0x9ea */ u8 field_0x9ea; }; STATIC_ASSERT(sizeof(daNpc_Shop0_c) == 0x9ec); -class daNpc_Shop0_Param_c { -public: - /* 80AEBB14 */ ~daNpc_Shop0_Param_c(); - - static u8 const mParam[12]; -}; - - #endif /* D_A_NPC_SHOP0_H */ diff --git a/src/d/actor/d_a_npc_shop0.cpp b/src/d/actor/d_a_npc_shop0.cpp index 58b733d8cab..3491baa2201 100644 --- a/src/d/actor/d_a_npc_shop0.cpp +++ b/src/d/actor/d_a_npc_shop0.cpp @@ -4,190 +4,385 @@ */ #include "d/actor/d_a_npc_shop0.h" -#include "dol2asm.h" - -// -// Forward References: -// - -extern "C" static void createHeapCallBack__FP10fopAc_ac_c(); -extern "C" void __dt__13daNpc_Shop0_cFv(); -extern "C" void create__13daNpc_Shop0_cFv(); -extern "C" void __dt__8cM3dGCylFv(); -extern "C" void __dt__8cM3dGAabFv(); -extern "C" void __dt__10dCcD_GSttsFv(); -extern "C" void __dt__12dBgS_ObjAcchFv(); -extern "C" void __dt__12dBgS_AcchCirFv(); -extern "C" void __dt__14dBgS_ObjGndChkFv(); -extern "C" void __dt__12J3DFrameCtrlFv(); -extern "C" void createHeap__13daNpc_Shop0_cFv(); -extern "C" void destroy__13daNpc_Shop0_cFv(); -extern "C" void execute__13daNpc_Shop0_cFv(); -extern "C" void draw__13daNpc_Shop0_cFv(); -extern "C" void __dt__8cM3dGPlaFv(); -extern "C" void getResName__13daNpc_Shop0_cFv(); -extern "C" void getParam__13daNpc_Shop0_cFv(); -extern "C" void getFlowNodeNum__13daNpc_Shop0_cFv(); -extern "C" void isDelete__13daNpc_Shop0_cFv(); -extern "C" void init__13daNpc_Shop0_cFv(); -extern "C" void getTrnsfrmAnmP__13daNpc_Shop0_cFiPPc(); -extern "C" void setBckAnm__13daNpc_Shop0_cFP15J3DAnmTransformfiiib(); -extern "C" void setCollision__13daNpc_Shop0_cFv(); -extern "C" void checkEvent__13daNpc_Shop0_cFv(); -extern "C" void orderEvent__13daNpc_Shop0_cFv(); -extern "C" void setMtx__13daNpc_Shop0_cFv(); -extern "C" void setRoomInf__13daNpc_Shop0_cFv(); -extern "C" void cut_alert__13daNpc_Shop0_cFii(); -extern "C" void chkProcess__13daNpc_Shop0_cFM13daNpc_Shop0_cFPCvPvPv_i(); -extern "C" void setProcess__13daNpc_Shop0_cFM13daNpc_Shop0_cFPCvPvPv_iPvi(); -extern "C" void wait__13daNpc_Shop0_cFPv(); -extern "C" void talk__13daNpc_Shop0_cFPv(); -extern "C" static void daNpc_Shop0_Create__FPv(); -extern "C" static void daNpc_Shop0_Delete__FPv(); -extern "C" static void daNpc_Shop0_Execute__FPv(); -extern "C" static void daNpc_Shop0_Draw__FPv(); -extern "C" static bool daNpc_Shop0_IsDelete__FPv(); -extern "C" void __dt__19daNpc_Shop0_Param_cFv(); -extern "C" void __dt__10cCcD_GSttsFv(); -extern "C" static void func_80AEBBA4(); -extern "C" static void func_80AEBBAC(); -extern "C" static void func_80AEBBB4(); -extern "C" static void func_80AEBBBC(); -extern "C" static void func_80AEBBC4(); -extern "C" u8 const mCylDat__13daNpc_Shop0_c[68]; -extern "C" u8 const mParam__19daNpc_Shop0_Param_c[12]; -extern "C" extern char const* const d_a_npc_shop0__stringBase0; - -// -// External References: -// - -extern "C" void mDoMtx_YrotM__FPA4_fs(); -extern "C" void play__14mDoExt_baseAnmFv(); -extern "C" void init__13mDoExt_bckAnmFP15J3DAnmTransformiifssb(); -extern "C" void entry__13mDoExt_bckAnmFP12J3DModelDataf(); -extern "C" void mDoExt_modelUpdateDL__FP8J3DModel(); -extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl(); -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 dComIfG_resLoad__FP30request_of_phase_process_classPCc(); -extern "C" void isSwitch__10dSv_info_cCFii(); -extern "C" void getRes__14dRes_control_cFPCcPCcP11dRes_info_ci(); -extern "C" void reset__14dEvt_control_cFv(); -extern "C" void ChkPresentEnd__16dEvent_manager_cFv(); -extern "C" void setSimple__21dDlst_shadowControl_cFP4cXyzffP4cXyzsfP9_GXTexObj(); -extern "C" void GroundCross__4cBgSFP11cBgS_GndChk(); -extern "C" void GetTriPla__4cBgSCFRC13cBgS_PolyInfoP8cM3dGPla(); -extern "C" void GetPolyColor__4dBgSFRC13cBgS_PolyInfo(); -extern "C" void GetRoomId__4dBgSFRC13cBgS_PolyInfo(); -extern "C" void __ct__12dBgS_AcchCirFv(); -extern "C" void SetWallR__12dBgS_AcchCirFf(); -extern "C" void SetWall__12dBgS_AcchCirFff(); -extern "C" void __dt__9dBgS_AcchFv(); -extern "C" void __ct__9dBgS_AcchFv(); -extern "C" void Set__9dBgS_AcchFP4cXyzP4cXyzP10fopAc_ac_ciP12dBgS_AcchCirP4cXyzP5csXyzP5csXyz(); -extern "C" void __ct__11dBgS_GndChkFv(); -extern "C" void __dt__11dBgS_GndChkFv(); -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 __ct__10dMsgFlow_cFv(); -extern "C" void __dt__10dMsgFlow_cFv(); -extern "C" void init__10dMsgFlow_cFP10fopAc_ac_ciiPP10fopAc_ac_c(); -extern "C" void doFlow__10dMsgFlow_cFP10fopAc_ac_cPP10fopAc_ac_ci(); -extern "C" void Set__4cCcSFP8cCcD_Obj(); -extern "C" void __mi__4cXyzCFRC3Vec(); -extern "C" void SetPos__11cBgS_GndChkFPC4cXyz(); -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* __nw__FUl(); -extern "C" void __dl__FPv(); -extern "C" void init__12J3DFrameCtrlFs(); -extern "C" void __ptmf_test(); -extern "C" void __ptmf_cmpr(); -extern "C" void __ptmf_scall(); -extern "C" void _savegpr_27(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_27(); -extern "C" void _restgpr_29(); -extern "C" extern void* __vt__8dCcD_Cyl[36]; -extern "C" extern void* __vt__9dCcD_Stts[11]; -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" u8 now__14mDoMtx_stack_c[48]; -extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; - -// -// Declarations: -// /* 80AEA7D8-80AEA7F8 000078 0020+00 1/1 0/0 0/0 .text createHeapCallBack__FP10fopAc_ac_c */ -static void createHeapCallBack(fopAc_ac_c* param_0) { - // NONMATCHING +static int createHeapCallBack(fopAc_ac_c* i_this) { + return static_cast(i_this)->createHeap(); } -/* ############################################################################################## */ -/* 80AEBC54-80AEBC54 000080 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80AEBC54 = "Shop0"; -SECTION_DEAD static char const* const stringBase_80AEBC5A = "grA_a.bmd"; -SECTION_DEAD static char const* const stringBase_80AEBC64 = "grA_wait_a"; -#pragma pop - /* 80AEBC74-80AEBC78 -00001 0004+00 1/1 0/0 0/0 .data l_resName */ -SECTION_DATA static void* l_resName = (void*)&d_a_npc_shop0__stringBase0; +static char* l_resName = "Shop0"; /* 80AEBC78-80AEBC7C -00001 0004+00 1/1 0/0 0/0 .data l_bmdFileName */ -SECTION_DATA static void* l_bmdFileName = (void*)(((char*)&d_a_npc_shop0__stringBase0) + 0x6); +static char* l_bmdFileName = "grA_a.bmd"; /* 80AEBC7C-80AEBC80 -00001 0004+00 1/1 0/0 0/0 .data l_bckFileNameTBL */ -SECTION_DATA static void* l_bckFileNameTBL = (void*)(((char*)&d_a_npc_shop0__stringBase0) + 0x10); +static char* l_bckFileNameTBL = "grA_wait_a"; -/* 80AEBC80-80AEBC8C -00001 000C+00 1/1 0/0 0/0 .data @4087 */ -SECTION_DATA static void* lit_4087[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)wait__13daNpc_Shop0_cFPv, +/* 80AEA7F8-80AEAA10 000098 0218+00 1/0 0/0 0/0 .text __dt__13daNpc_Shop0_cFv */ +daNpc_Shop0_c::~daNpc_Shop0_c() { + dComIfG_resLoad(&mPhaseReq, getResName()); +} + +/* 80AEAA10-80AEAC10 0002B0 0200+00 1/1 0/0 0/0 .text create__13daNpc_Shop0_cFv */ +int daNpc_Shop0_c::create() { + fopAcM_SetupActor(this, daNpc_Shop0_c); + + int phase_step = dComIfG_resLoad(&mPhaseReq, getResName()); + if (phase_step == cPhs_COMPLEATE_e) { + getParam(); + if (fopAcM_entrySolidHeap(this, createHeapCallBack, 0) == 0) { + return cPhs_ERROR_e; + } else if (isDelete() || init() == 0) { + return cPhs_ERROR_e; + } + } + return phase_step; +} + +dCcD_SrcCyl const daNpc_Shop0_c::mCylDat = { + { + { + 0x0, // mFlags + { + {0x0, 0x0, 0x0}, // mObjAt + {0x0, 0x0}, // mObjTg + 0x79 // mObjCo + } // mSrcObjHitInf + }, // mObj + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjAt + {dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x0}, // mGObjTg + {0x0}, // mGObjCo + }, // mObjInf + { + {0.0f, 0.0f, 0.0f}, // mCenter + 0.0f, // mRadius + 0.0f // mHeight + } // mCyl }; -/* 80AEBC8C-80AEBC98 -00001 000C+00 1/1 0/0 0/0 .data @4132 */ -SECTION_DATA static void* lit_4132[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)talk__13daNpc_Shop0_cFPv, +/* 80AEBC18-80AEBC24 000044 000C+00 0/0 0/0 0/0 .rodata mParam__19daNpc_Shop0_Param_c */ +daNpc_Shop0_Param_c::param const daNpc_Shop0_Param_c::mParam = { + 0x44480000, + 0x44480000, + 0x41F00000, }; -/* 80AEBC98-80AEBCA4 -00001 000C+00 1/1 0/0 0/0 .data @4140 */ -SECTION_DATA static void* lit_4140[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)talk__13daNpc_Shop0_cFPv, -}; +/* 80AEAE9C-80AEAF8C 00073C 00F0+00 1/1 0/0 0/0 .text createHeap__13daNpc_Shop0_cFv */ +int daNpc_Shop0_c::createHeap() { + mpModel = mDoExt_J3DModel__create( + (J3DModelData *) dComIfG_getObjectRes(getResName(), l_bmdFileName), + 0x80000, + 0x11000084 + ); + if (mpModel == NULL) { + return 0; + } + + mpShopParam = new daNpc_Shop0_Param_c(); + if (mpShopParam == NULL) { + return 0; + } -/* 80AEBCA4-80AEBCB0 -00001 000C+00 1/1 0/0 0/0 .data @4268 */ -SECTION_DATA static void* lit_4268[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)wait__13daNpc_Shop0_cFPv, -}; + setBckAnm(getTrnsfrmAnmP(0, &l_bckFileNameTBL), 1.0, 2, 0 , -1, false); + return 1; +} + +/* 80AEAF8C-80AEAFC0 00082C 0034+00 1/1 0/0 0/0 .text destroy__13daNpc_Shop0_cFv */ +int daNpc_Shop0_c::destroy() { + this->~daNpc_Shop0_c(); + return 1; +} + +/* 80AEAFC0-80AEB078 000860 00B8+00 2/2 0/0 0/0 .text execute__13daNpc_Shop0_cFv */ +int daNpc_Shop0_c::execute() { + int event = checkEvent(); + gravity = -3.0f; + + mAcchCir.SetWallH(40.0f); + mAcchCir.SetWallR(40.0f); + + if (event) { + if (mProcess != NULL) { + (this->*mProcess)(0); + } + orderEvent(); + } + + mBckAnm.play(); + mBckAnm.setPlaySpeed(mPlaySpeed); + + setRoomInf(); + setCollision(); + setMtx(); + return 1; +} + +/* 80AEB078-80AEB148 000918 00D0+00 1/1 0/0 0/0 .text draw__13daNpc_Shop0_cFv */ +int daNpc_Shop0_c::draw() { + mBckAnm.entry(mpModel->getModelData()); + mDoExt_modelUpdateDL(mpModel); + + if (mGroundCross != -1e+9f) { + cM3dGPla tri_pla; + if (dComIfG_Bgsp().GetTriPla(mGndChk, &tri_pla)) { + dComIfGd_setSimpleShadow( + ¤t.pos, + mGroundCross, + 10.0f, + &tri_pla.mNormal, + 0, + 1.0f, + dDlst_shadowControl_c::getSimpleTex()); + } + } + return 1; +} + +/* 80AEB190-80AEB1A0 000A30 0010+00 5/5 0/0 0/0 .text getResName__13daNpc_Shop0_cFv */ +char* daNpc_Shop0_c::getResName() { + return l_resName; +} + +/* 80AEB1A0-80AEB1C8 000A40 0028+00 1/1 0/0 0/0 .text getParam__13daNpc_Shop0_cFv */ +void daNpc_Shop0_c::getParam() { + mParam = fopAcM_GetParam(this); + mFlowNodeNum = (fopAcM_GetParam(this) & 0xffff00) >> 8; + mFlowNodeNum = 9; + field_0x9ea = 0; +} + +/* 80AEB1C8-80AEB1D0 000A68 0008+00 2/2 0/0 0/0 .text getFlowNodeNum__13daNpc_Shop0_cFv + */ +int daNpc_Shop0_c::getFlowNodeNum() { + return mFlowNodeNum; +} + +/* 80AEB1D0-80AEB22C 000A70 005C+00 1/1 0/0 0/0 .text isDelete__13daNpc_Shop0_cFv */ +int daNpc_Shop0_c::isDelete() { + bool ret = 0; + if (field_0x9ea != 0xff && dComIfGs_isSwitch(field_0x9ea, fopAcM_GetRoomNo(this))) { + ret = 1; + } + return ret; +} + +/* 80AEB22C-80AEB32C 000ACC 0100+00 1/1 0/0 0/0 .text init__13daNpc_Shop0_cFv */ +int daNpc_Shop0_c::init() { + fopAcM_SetMtx(this, mpModel->getBaseTRMtx()); + mAcchCir.SetWall(40.0f, 40.0f); + 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)); + mStts.Init(0xd9, 0xff, this); + mCyl.SetStts(&mStts); + mCyl.Set(mCylDat); + + attention_info.flags = 0xa; + eventInfo.setArchiveName(getResName()); + field_0x9e8 = -1; + + setProcess(daNpc_Shop0_c::wait, NULL, 0); + setRoomInf(); + return execute(); +} + +/* 80AEBDC0-80AEBDD8 000000 0015+03 1/1 0/0 0/0 .bss l_fileName */ +static char l_fileName[21]; + +/* 80AEB32C-80AEB3A8 000BCC 007C+00 1/1 0/0 0/0 .text getTrnsfrmAnmP__13daNpc_Shop0_cFiPPc */ +J3DAnmTransform* daNpc_Shop0_c::getTrnsfrmAnmP(int i_fileIndex, char** i_fileName) { + strcpy(l_fileName, i_fileName[i_fileIndex]); + strcat(l_fileName, ".bck"); + return (J3DAnmTransform*) dComIfG_getObjectRes(getResName(), l_fileName); +} + +/* 80AEB3A8-80AEB45C 000C48 00B4+00 1/1 0/0 0/0 .text + * setBckAnm__13daNpc_Shop0_cFP15J3DAnmTransformfiiib */ +int daNpc_Shop0_c::setBckAnm(J3DAnmTransform* i_bck, f32 i_rate, int i_attr, int i_start, int i_end, + bool i_modify) { + int init_status = mBckAnm.init(i_bck, 1, i_attr, 0, i_start, i_end, i_modify); + if (init_status) { + mBckAnm.reset(); + mPlaySpeed = i_rate; + } + return init_status; +} + +/* 80AEB45C-80AEB4C8 000CFC 006C+00 1/1 0/0 0/0 .text setCollision__13daNpc_Shop0_cFv */ +int daNpc_Shop0_c::setCollision() { + mCyl.SetR(40.0f); + mCyl.SetH(40.0f); + mCyl.SetC(current.pos); + + dComIfG_Ccsp()->Set(&mCyl); + return 1; +} + +/* 80AEB4C8-80AEB5E8 000D68 0120+00 1/1 0/0 0/0 .text checkEvent__13daNpc_Shop0_cFv */ +int daNpc_Shop0_c::checkEvent() { + int ret = 1; + if (dComIfGp_event_runCheck()) { + ret = 0; + if (eventInfo.checkCommandTalk()) { + if (chkProcess(&daNpc_Shop0_c::talk)) { + ret = (this->*mProcess)(0); + } else if (dComIfGp_event_chkTalkXY() == 0 || dComIfGp_evmng_ChkPresentEnd()) { + setProcess(&daNpc_Shop0_c::talk, NULL, 0); + } + return ret; + } + } + return ret; +} + +/* 80AEB5E8-80AEB634 000E88 004C+00 1/1 0/0 0/0 .text orderEvent__13daNpc_Shop0_cFv */ +void daNpc_Shop0_c::orderEvent() { + if (getFlowNodeNum() >= 0 && attention_info.flags == 0xa) { + eventInfo.onCondition(1); + } +} + +/* 80AEB634-80AEB6DC 000ED4 00A8+00 1/1 0/0 0/0 .text setMtx__13daNpc_Shop0_cFv */ +void daNpc_Shop0_c::setMtx() { + mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z); + mDoMtx_stack_c::YrotM(shape_angle.y); + + mpModel->setBaseTRMtx(mDoMtx_stack_c::get()); + + attention_info.position = current.pos; + attention_info.position.y += 240.0f; + eyePos = current.pos; +} + +/* 80AEB6DC-80AEB780 000F7C 00A4+00 2/2 0/0 0/0 .text setRoomInf__13daNpc_Shop0_cFv */ +void daNpc_Shop0_c::setRoomInf() { + u32 room_no; + mGndChk.SetPos(¤t.pos); + + mGroundCross = dComIfG_Bgsp().GroundCross(&mGndChk); + + if (mGroundCross != -1e+09f) { + room_no = dComIfG_Bgsp().GetRoomId(mGndChk); + tevStr.YukaCol = dComIfG_Bgsp().GetPolyColor(mGndChk); + } else { + room_no = dComIfGp_roomControl_getStayNo(); + } + tevStr.room_no = room_no; + fopAcM_SetRoomNo(this, room_no); +} + +/* 80AEB780-80AEB7F0 001020 0070+00 1/1 0/0 0/0 .text cut_alert__13daNpc_Shop0_cFii */ +int daNpc_Shop0_c::cut_alert(int, int i_param1) { + if (i_param1) { + mMsgFlow.init(this, getFlowNodeNum(), 0, NULL); + return 0; + } else if (mMsgFlow.doFlow(this, NULL, 0) == 0) { + return 0; + } + return 1; +} + +/* 80AEB7F0-80AEB824 001090 0034+00 2/2 0/0 0/0 .text + * chkProcess__13daNpc_Shop0_cFM13daNpc_Shop0_cFPCvPvPv_i */ +int daNpc_Shop0_c::chkProcess(int (daNpc_Shop0_c::* process)(void*)) { + return process == mProcess; + +} + +/* 80AEB824-80AEB920 0010C4 00FC+00 3/3 0/0 0/0 .text + * setProcess__13daNpc_Shop0_cFM13daNpc_Shop0_cFPCvPvPv_iPvi */ +int daNpc_Shop0_c::setProcess(int (daNpc_Shop0_c::* process)(void*), void* i_func_param, + int param_2) { + int ret = 0; + if (chkProcess(process) && param_2 == 0) { + return 0; + } + + mMode = 2; + if (mProcess != NULL) { + ret = (this->*mProcess)(0); + } + + mProcess = process; + mMode = 0; + if (mProcess != NULL) { + ret = (this->*mProcess)(i_func_param); + } + + mMode = 1; + return ret; +} + +/* 80AEB920-80AEB9BC 0011C0 009C+00 2/0 0/0 0/0 .text wait__13daNpc_Shop0_cFPv */ +int daNpc_Shop0_c::wait(void* i_stat_loc) { + switch (mMode) { + case 0: + break; + case 1: + (daPy_getPlayerActorClass()->current.pos - current.pos).absXZ(); + break; + case 2: + default: + break; + } + return 1; +} + +/* 80AEB9BC-80AEBA8C 00125C 00D0+00 2/0 0/0 0/0 .text talk__13daNpc_Shop0_cFPv */ +int daNpc_Shop0_c::talk(void* i_stat_loc) { + int ret = 0; + switch (mMode) { + case 0: + cut_alert(-1, 1); + break; + case 1: + if (cut_alert(-1, 0) != 0) { + setProcess(daNpc_Shop0_c::wait, NULL, 0); + } + break; + case 2: + dComIfGp_event_reset(); + ret = 1; + } + return ret; +} + +/* 80AEBA8C-80AEBAAC 00132C 0020+00 1/0 0/0 0/0 .text daNpc_Shop0_Create__FPv */ +static int daNpc_Shop0_Create(void* i_this) { + return static_cast(i_this)->create(); +} + +/* 80AEBAAC-80AEBACC 00134C 0020+00 1/0 0/0 0/0 .text daNpc_Shop0_Delete__FPv */ +static int daNpc_Shop0_Delete(void* i_this) { + return static_cast(i_this)->destroy(); +} + +/* 80AEBACC-80AEBAEC 00136C 0020+00 1/0 0/0 0/0 .text daNpc_Shop0_Execute__FPv */ +static int daNpc_Shop0_Execute(void* i_this) { + return static_cast(i_this)->execute(); +} + +/* 80AEBAEC-80AEBB0C 00138C 0020+00 1/0 0/0 0/0 .text daNpc_Shop0_Draw__FPv */ +static int daNpc_Shop0_Draw(void* i_this) { + return static_cast(i_this)->draw(); +} + +/* 80AEBB0C-80AEBB14 0013AC 0008+00 1/0 0/0 0/0 .text daNpc_Shop0_IsDelete__FPv */ +static int daNpc_Shop0_IsDelete(void*) { + return true; +} /* 80AEBCB0-80AEBCD0 -00001 0020+00 1/0 0/0 0/0 .data daNpc_Shop0_MethodTable */ static actor_method_class daNpc_Shop0_MethodTable = { - (process_method_func)daNpc_Shop0_Create__FPv, - (process_method_func)daNpc_Shop0_Delete__FPv, - (process_method_func)daNpc_Shop0_Execute__FPv, - (process_method_func)daNpc_Shop0_IsDelete__FPv, - (process_method_func)daNpc_Shop0_Draw__FPv, + daNpc_Shop0_Create, daNpc_Shop0_Delete, daNpc_Shop0_Execute, daNpc_Shop0_IsDelete, daNpc_Shop0_Draw, }; /* 80AEBCD0-80AEBD00 -00001 0030+00 0/0 0/0 1/0 .data g_profile_NPC_SHOP0 */ @@ -196,7 +391,7 @@ extern actor_process_profile_definition g_profile_NPC_SHOP0 = { 7, // mListID fpcPi_CURRENT_e, // mListPrio PROC_NPC_SHOP0, // mProcName - &g_fpcLf_Method.base, // sub_method + &g_fpcLf_Method.base, // sub_method sizeof(daNpc_Shop0_c), // mSize 0, // mSizeOther 0, // mParameters @@ -207,414 +402,3 @@ extern actor_process_profile_definition g_profile_NPC_SHOP0 = { fopAc_ACTOR_e, // mActorType fopAc_CULLBOX_0_e, // cullType }; - -/* 80AEBD00-80AEBD0C 00008C 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGPla */ -SECTION_DATA extern void* __vt__8cM3dGPla[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__8cM3dGPlaFv, -}; - -/* 80AEBD0C-80AEBD18 000098 000C+00 2/2 0/0 0/0 .data __vt__19daNpc_Shop0_Param_c */ -SECTION_DATA extern void* __vt__19daNpc_Shop0_Param_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__19daNpc_Shop0_Param_cFv, -}; - -/* 80AEBD18-80AEBD24 0000A4 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, -}; - -/* 80AEBD24-80AEBD54 0000B0 0030+00 3/3 0/0 0/0 .data __vt__14dBgS_ObjGndChk */ -SECTION_DATA extern void* __vt__14dBgS_ObjGndChk[12] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__14dBgS_ObjGndChkFv, - (void*)NULL, - (void*)NULL, - (void*)func_80AEBBB4, - (void*)NULL, - (void*)NULL, - (void*)func_80AEBBC4, - (void*)NULL, - (void*)NULL, - (void*)func_80AEBBBC, -}; - -/* 80AEBD54-80AEBD60 0000E0 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, -}; - -/* 80AEBD60-80AEBD84 0000EC 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_80AEBBAC, - (void*)NULL, - (void*)NULL, - (void*)func_80AEBBA4, -}; - -/* 80AEBD84-80AEBD90 000110 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, -}; - -/* 80AEBD90-80AEBD9C 00011C 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, -}; - -/* 80AEBD9C-80AEBDA8 000128 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, -}; - -/* 80AEBDA8-80AEBDB4 000134 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, -}; - -/* 80AEBDB4-80AEBDC0 000140 000C+00 2/2 0/0 0/0 .data __vt__13daNpc_Shop0_c */ -SECTION_DATA extern void* __vt__13daNpc_Shop0_c[3] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__13daNpc_Shop0_cFv, -}; - -/* 80AEA7F8-80AEAA10 000098 0218+00 1/0 0/0 0/0 .text __dt__13daNpc_Shop0_cFv */ -daNpc_Shop0_c::~daNpc_Shop0_c() { - // NONMATCHING -} - -/* 80AEAA10-80AEAC10 0002B0 0200+00 1/1 0/0 0/0 .text create__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::create() { - // NONMATCHING -} - -/* 80AEAC10-80AEAC58 0004B0 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */ -// cM3dGCyl::~cM3dGCyl() { -extern "C" void __dt__8cM3dGCylFv() { - // NONMATCHING -} - -/* 80AEAC58-80AEACA0 0004F8 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */ -// cM3dGAab::~cM3dGAab() { -extern "C" void __dt__8cM3dGAabFv() { - // NONMATCHING -} - -/* 80AEACA0-80AEACFC 000540 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */ -// dCcD_GStts::~dCcD_GStts() { -extern "C" void __dt__10dCcD_GSttsFv() { - // NONMATCHING -} - -/* 80AEACFC-80AEAD6C 00059C 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */ -// dBgS_ObjAcch::~dBgS_ObjAcch() { -extern "C" void __dt__12dBgS_ObjAcchFv() { - // NONMATCHING -} - -/* 80AEAD6C-80AEADDC 00060C 0070+00 1/0 0/0 0/0 .text __dt__12dBgS_AcchCirFv */ -// dBgS_AcchCir::~dBgS_AcchCir() { -extern "C" void __dt__12dBgS_AcchCirFv() { - // NONMATCHING -} - -/* 80AEADDC-80AEAE54 00067C 0078+00 4/3 0/0 0/0 .text __dt__14dBgS_ObjGndChkFv */ -// dBgS_ObjGndChk::~dBgS_ObjGndChk() { -extern "C" void __dt__14dBgS_ObjGndChkFv() { - // NONMATCHING -} - -/* 80AEAE54-80AEAE9C 0006F4 0048+00 1/0 0/0 0/0 .text __dt__12J3DFrameCtrlFv */ -// J3DFrameCtrl::~J3DFrameCtrl() { -extern "C" void __dt__12J3DFrameCtrlFv() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AEBBD4-80AEBC18 000000 0044+00 2/2 0/0 0/0 .rodata mCylDat__13daNpc_Shop0_c */ -SECTION_RODATA u8 const daNpc_Shop0_c::mCylDat[68] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80AEBBD4, &daNpc_Shop0_c::mCylDat); - -/* 80AEBC18-80AEBC24 000044 000C+00 0/0 0/0 0/0 .rodata mParam__19daNpc_Shop0_Param_c */ -#pragma push -#pragma force_active on -SECTION_RODATA u8 const daNpc_Shop0_Param_c::mParam[12] = { - 0x44, 0x48, 0x00, 0x00, 0x44, 0x48, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80AEBC18, &daNpc_Shop0_Param_c::mParam); -#pragma pop - -/* 80AEBC24-80AEBC28 000050 0004+00 2/3 0/0 0/0 .rodata @4004 */ -SECTION_RODATA static f32 const lit_4004 = 1.0f; -COMPILER_STRIP_GATE(0x80AEBC24, &lit_4004); - -/* 80AEAE9C-80AEAF8C 00073C 00F0+00 1/1 0/0 0/0 .text createHeap__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::createHeap() { - // NONMATCHING -} - -/* 80AEAF8C-80AEAFC0 00082C 0034+00 1/1 0/0 0/0 .text destroy__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::destroy() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AEBC28-80AEBC2C 000054 0004+00 1/1 0/0 0/0 .rodata @4023 */ -SECTION_RODATA static f32 const lit_4023 = -3.0f; -COMPILER_STRIP_GATE(0x80AEBC28, &lit_4023); - -/* 80AEBC2C-80AEBC30 000058 0004+00 3/3 0/0 0/0 .rodata @4024 */ -SECTION_RODATA static f32 const lit_4024 = 40.0f; -COMPILER_STRIP_GATE(0x80AEBC2C, &lit_4024); - -/* 80AEAFC0-80AEB078 000860 00B8+00 2/2 0/0 0/0 .text execute__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::execute() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AEBC30-80AEBC34 00005C 0004+00 1/2 0/0 0/0 .rodata @4051 */ -SECTION_RODATA static f32 const lit_4051 = -1000000000.0f; -COMPILER_STRIP_GATE(0x80AEBC30, &lit_4051); - -/* 80AEBC34-80AEBC38 000060 0004+00 0/1 0/0 0/0 .rodata @4052 */ -#pragma push -#pragma force_active on -SECTION_RODATA static f32 const lit_4052 = 10.0f; -COMPILER_STRIP_GATE(0x80AEBC34, &lit_4052); -#pragma pop - -/* 80AEB078-80AEB148 000918 00D0+00 1/1 0/0 0/0 .text draw__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::draw() { - // NONMATCHING -} - -/* 80AEB148-80AEB190 0009E8 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGPlaFv */ -// cM3dGPla::~cM3dGPla() { -extern "C" void __dt__8cM3dGPlaFv() { - // NONMATCHING -} - -/* 80AEB190-80AEB1A0 000A30 0010+00 5/5 0/0 0/0 .text getResName__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::getResName() { - // NONMATCHING -} - -/* 80AEB1A0-80AEB1C8 000A40 0028+00 1/1 0/0 0/0 .text getParam__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::getParam() { - // NONMATCHING -} - -/* 80AEB1C8-80AEB1D0 000A68 0008+00 2/2 0/0 0/0 .text getFlowNodeNum__13daNpc_Shop0_cFv - */ -void daNpc_Shop0_c::getFlowNodeNum() { - // NONMATCHING -} - -/* 80AEB1D0-80AEB22C 000A70 005C+00 1/1 0/0 0/0 .text isDelete__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::isDelete() { - // NONMATCHING -} - -/* 80AEB22C-80AEB32C 000ACC 0100+00 1/1 0/0 0/0 .text init__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::init() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AEBC54-80AEBC54 000080 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80AEBC6F = ".bck"; -#pragma pop - -/* 80AEBDC0-80AEBDD8 000000 0015+03 1/1 0/0 0/0 .bss l_fileName */ -static u8 l_fileName[21 + 3 /* padding */]; - -/* 80AEB32C-80AEB3A8 000BCC 007C+00 1/1 0/0 0/0 .text getTrnsfrmAnmP__13daNpc_Shop0_cFiPPc */ -void daNpc_Shop0_c::getTrnsfrmAnmP(int param_0, char** param_1) { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AEBC38-80AEBC3C 000064 0004+00 2/2 0/0 0/0 .rodata @4118 */ -SECTION_RODATA static u8 const lit_4118[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; -COMPILER_STRIP_GATE(0x80AEBC38, &lit_4118); - -/* 80AEBC3C-80AEBC44 000068 0008+00 1/1 0/0 0/0 .rodata @4120 */ -SECTION_RODATA static u8 const lit_4120[8] = { - 0x43, 0x30, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80AEBC3C, &lit_4120); - -/* 80AEB3A8-80AEB45C 000C48 00B4+00 1/1 0/0 0/0 .text - * setBckAnm__13daNpc_Shop0_cFP15J3DAnmTransformfiiib */ -void daNpc_Shop0_c::setBckAnm(J3DAnmTransform* param_0, f32 param_1, int param_2, int param_3, - int param_4, bool param_5) { - // NONMATCHING -} - -/* 80AEB45C-80AEB4C8 000CFC 006C+00 1/1 0/0 0/0 .text setCollision__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::setCollision() { - // NONMATCHING -} - -/* 80AEB4C8-80AEB5E8 000D68 0120+00 1/1 0/0 0/0 .text checkEvent__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::checkEvent() { - // NONMATCHING -} - -/* 80AEB5E8-80AEB634 000E88 004C+00 1/1 0/0 0/0 .text orderEvent__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::orderEvent() { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AEBC44-80AEBC4C 000070 0004+04 1/1 0/0 0/0 .rodata @4181 */ -SECTION_RODATA static f32 const lit_4181[1 + 1 /* padding */] = { - 240.0f, - /* padding */ - 0.0f, -}; -COMPILER_STRIP_GATE(0x80AEBC44, &lit_4181); - -/* 80AEB634-80AEB6DC 000ED4 00A8+00 1/1 0/0 0/0 .text setMtx__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::setMtx() { - // NONMATCHING -} - -/* 80AEB6DC-80AEB780 000F7C 00A4+00 2/2 0/0 0/0 .text setRoomInf__13daNpc_Shop0_cFv */ -void daNpc_Shop0_c::setRoomInf() { - // NONMATCHING -} - -/* 80AEB780-80AEB7F0 001020 0070+00 1/1 0/0 0/0 .text cut_alert__13daNpc_Shop0_cFii */ -void daNpc_Shop0_c::cut_alert(int param_0, int param_1) { - // NONMATCHING -} - -/* 80AEB7F0-80AEB824 001090 0034+00 2/2 0/0 0/0 .text - * chkProcess__13daNpc_Shop0_cFM13daNpc_Shop0_cFPCvPvPv_i */ -void daNpc_Shop0_c::chkProcess(int (daNpc_Shop0_c::*param_0)(void*)) { - // NONMATCHING -} - -/* 80AEB824-80AEB920 0010C4 00FC+00 3/3 0/0 0/0 .text - * setProcess__13daNpc_Shop0_cFM13daNpc_Shop0_cFPCvPvPv_iPvi */ -void daNpc_Shop0_c::setProcess(int (daNpc_Shop0_c::*param_0)(void*), void* param_1, - int param_2) { - // NONMATCHING -} - -/* ############################################################################################## */ -/* 80AEBC4C-80AEBC54 000078 0008+00 1/1 0/0 0/0 .rodata @4259 */ -SECTION_RODATA static u8 const lit_4259[8] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -COMPILER_STRIP_GATE(0x80AEBC4C, &lit_4259); - -/* 80AEB920-80AEB9BC 0011C0 009C+00 2/0 0/0 0/0 .text wait__13daNpc_Shop0_cFPv */ -void daNpc_Shop0_c::wait(void* param_0) { - // NONMATCHING -} - -/* 80AEB9BC-80AEBA8C 00125C 00D0+00 2/0 0/0 0/0 .text talk__13daNpc_Shop0_cFPv */ -void daNpc_Shop0_c::talk(void* param_0) { - // NONMATCHING -} - -/* 80AEBA8C-80AEBAAC 00132C 0020+00 1/0 0/0 0/0 .text daNpc_Shop0_Create__FPv */ -static void daNpc_Shop0_Create(void* param_0) { - // NONMATCHING -} - -/* 80AEBAAC-80AEBACC 00134C 0020+00 1/0 0/0 0/0 .text daNpc_Shop0_Delete__FPv */ -static void daNpc_Shop0_Delete(void* param_0) { - // NONMATCHING -} - -/* 80AEBACC-80AEBAEC 00136C 0020+00 1/0 0/0 0/0 .text daNpc_Shop0_Execute__FPv */ -static void daNpc_Shop0_Execute(void* param_0) { - // NONMATCHING -} - -/* 80AEBAEC-80AEBB0C 00138C 0020+00 1/0 0/0 0/0 .text daNpc_Shop0_Draw__FPv */ -static void daNpc_Shop0_Draw(void* param_0) { - // NONMATCHING -} - -/* 80AEBB0C-80AEBB14 0013AC 0008+00 1/0 0/0 0/0 .text daNpc_Shop0_IsDelete__FPv */ -static bool daNpc_Shop0_IsDelete(void* param_0) { - return true; -} - -/* 80AEBB14-80AEBB5C 0013B4 0048+00 1/0 0/0 0/0 .text __dt__19daNpc_Shop0_Param_cFv */ -daNpc_Shop0_Param_c::~daNpc_Shop0_Param_c() { - // NONMATCHING -} - -/* 80AEBB5C-80AEBBA4 0013FC 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */ -// cCcD_GStts::~cCcD_GStts() { -extern "C" void __dt__10cCcD_GSttsFv() { - // NONMATCHING -} - -/* 80AEBBA4-80AEBBAC 001444 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */ -static void func_80AEBBA4() { - // NONMATCHING -} - -/* 80AEBBAC-80AEBBB4 00144C 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */ -static void func_80AEBBAC() { - // NONMATCHING -} - -/* 80AEBBB4-80AEBBBC 001454 0008+00 1/0 0/0 0/0 .text @20@__dt__14dBgS_ObjGndChkFv */ -static void func_80AEBBB4() { - // NONMATCHING -} - -/* 80AEBBBC-80AEBBC4 00145C 0008+00 1/0 0/0 0/0 .text @76@__dt__14dBgS_ObjGndChkFv */ -static void func_80AEBBBC() { - // NONMATCHING -} - -/* 80AEBBC4-80AEBBCC 001464 0008+00 1/0 0/0 0/0 .text @60@__dt__14dBgS_ObjGndChkFv */ -static void func_80AEBBC4() { - // NONMATCHING -} - -/* 80AEBC54-80AEBC54 000080 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */