mirror of https://github.com/zeldaret/tp.git
d_a_obj_sword matching (#2349)
* d_a_obj_sword matching * d_a_obj_sword -- Addressed PR comments
This commit is contained in:
parent
b6febdc2b6
commit
764eb0493e
|
|
@ -2081,7 +2081,7 @@ config.libs = [
|
|||
ActorRel(NonMatching, "d_a_obj_swLight"),
|
||||
ActorRel(NonMatching, "d_a_obj_swchain"),
|
||||
ActorRel(Equivalent, "d_a_obj_swhang"), # vtable order
|
||||
ActorRel(NonMatching, "d_a_obj_sword"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_sword"),
|
||||
ActorRel(NonMatching, "d_a_obj_swpush2"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_swspinner"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_swturn"),
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef D_A_OBJ_SWORD_H
|
||||
#define D_A_OBJ_SWORD_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/actor/d_a_itembase.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-objects
|
||||
|
|
@ -11,25 +11,30 @@
|
|||
* @details
|
||||
*
|
||||
*/
|
||||
class daObjSword_c : public fopAc_ac_c {
|
||||
class daObjSword_c : public daItemBase_c {
|
||||
public:
|
||||
/* 80CFD558 */ void initBaseMtx();
|
||||
/* 80CFD594 */ void setBaseMtx();
|
||||
/* 80CFD600 */ void Create();
|
||||
/* 80CFD67C */ void create();
|
||||
/* 80CFDA14 */ void actionWait();
|
||||
/* 80CFDA8C */ void initActionOrderGetDemo();
|
||||
/* 80CFDB04 */ void actionOrderGetDemo();
|
||||
/* 80CFDB80 */ void actionGetDemo();
|
||||
/* 80CFDC1C */ void execute();
|
||||
/* 80CFDD18 */ void draw();
|
||||
/* 80CFDD6C */ void _delete();
|
||||
/* 80CFD600 */ int Create();
|
||||
/* 80CFD67C */ cPhs__Step create();
|
||||
/* 80CFDA14 */ int actionWait();
|
||||
/* 80CFDA8C */ int initActionOrderGetDemo();
|
||||
/* 80CFDB04 */ int actionOrderGetDemo();
|
||||
/* 80CFDB80 */ int actionGetDemo();
|
||||
/* 80CFDC1C */ int execute();
|
||||
/* 80CFDD18 */ int draw();
|
||||
/* 80CFDD6C */ int _delete();
|
||||
|
||||
u8 getItemBit() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||
u8 getSwbit() { return fopAcM_GetParamBit(this, 8, 8); }
|
||||
void setStatus(u8 status) { mStatus = status; }
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x938 - 0x568];
|
||||
/* 0x92c */ u32 field_0x92c;
|
||||
/* 0x930 */ fpc_ProcID mProcID;
|
||||
/* 0x934 */ u8 mStatus;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daObjSword_c) == 0x938);
|
||||
|
||||
|
||||
#endif /* D_A_OBJ_SWORD_H */
|
||||
|
|
|
|||
|
|
@ -1,398 +1,185 @@
|
|||
/**
|
||||
* @file d_a_obj_sword.cpp
|
||||
*
|
||||
*/
|
||||
*
|
||||
*/
|
||||
|
||||
#include "d/actor/d_a_obj_sword.h"
|
||||
#include "dol2asm.h"
|
||||
#include "d/actor/d_a_player.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "d/d_item_data.h"
|
||||
|
||||
UNK_REL_DATA;
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void initBaseMtx__12daObjSword_cFv();
|
||||
extern "C" void setBaseMtx__12daObjSword_cFv();
|
||||
extern "C" void Create__12daObjSword_cFv();
|
||||
extern "C" void create__12daObjSword_cFv();
|
||||
extern "C" void __dt__8cM3dGCylFv();
|
||||
extern "C" void __dt__8cM3dGAabFv();
|
||||
extern "C" void __dt__10dCcD_GSttsFv();
|
||||
extern "C" void __dt__12dBgS_AcchCirFv();
|
||||
extern "C" void __dt__12dBgS_ObjAcchFv();
|
||||
extern "C" void actionWait__12daObjSword_cFv();
|
||||
extern "C" void initActionOrderGetDemo__12daObjSword_cFv();
|
||||
extern "C" void actionOrderGetDemo__12daObjSword_cFv();
|
||||
extern "C" void actionGetDemo__12daObjSword_cFv();
|
||||
extern "C" void execute__12daObjSword_cFv();
|
||||
extern "C" void draw__12daObjSword_cFv();
|
||||
extern "C" void _delete__12daObjSword_cFv();
|
||||
extern "C" static void daObjSword_Draw__FP12daObjSword_c();
|
||||
extern "C" static void daObjSword_Execute__FP12daObjSword_c();
|
||||
extern "C" static void daObjSword_Delete__FP12daObjSword_c();
|
||||
extern "C" static void daObjSword_Create__FP12daObjSword_c();
|
||||
extern "C" void __dt__10cCcD_GSttsFv();
|
||||
extern "C" static void func_80CFDE6C();
|
||||
extern "C" static void func_80CFDE74();
|
||||
extern "C" extern char const* const d_a_obj_sword__stringBase0;
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void mDoMtx_ZXYrotM__FPA4_fsss();
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
|
||||
extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
|
||||
extern "C" void fopAcM_orderItemEvent__FP10fopAc_ac_cUsUs();
|
||||
extern "C" void fopAcM_createItemForTrBoxDemo__FPC4cXyziiiPC5csXyzPC4cXyz();
|
||||
extern "C" void fopAcM_cancelCarryNow__FP10fopAc_ac_c();
|
||||
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
|
||||
extern "C" void onSwitch__10dSv_info_cFii();
|
||||
extern "C" void onItem__10dSv_info_cFii();
|
||||
extern "C" void isItem__10dSv_info_cCFii();
|
||||
extern "C" void hide__12daItemBase_cFv();
|
||||
extern "C" void show__12daItemBase_cFv();
|
||||
extern "C" void chkDraw__12daItemBase_cFv();
|
||||
extern "C" void CheckFieldItemCreateHeap__FP10fopAc_ac_c();
|
||||
extern "C" void reset__14dEvt_control_cFv();
|
||||
extern "C" void setPtI_Id__14dEvt_control_cFUi();
|
||||
extern "C" void endCheckOld__16dEvent_manager_cFPCc();
|
||||
extern "C" void __ct__12dBgS_AcchCirFv();
|
||||
extern "C" void __dt__9dBgS_AcchFv();
|
||||
extern "C" void __ct__9dBgS_AcchFv();
|
||||
extern "C" void SetObj__16dBgS_PolyPassChkFv();
|
||||
extern "C" void __ct__10dCcD_GSttsFv();
|
||||
extern "C" void __ct__12dCcD_GObjInfFv();
|
||||
extern "C" void DeleteBase__12daItemBase_cFPCc();
|
||||
extern "C" bool clothCreate__12daItemBase_cFv();
|
||||
extern "C" bool __CreateHeap__12daItemBase_cFv();
|
||||
extern "C" void DrawBase__12daItemBase_cFv();
|
||||
extern "C" void RotateYBase__12daItemBase_cFv();
|
||||
extern "C" void setListStart__12daItemBase_cFv();
|
||||
extern "C" void settingBeforeDraw__12daItemBase_cFv();
|
||||
extern "C" void setTevStr__12daItemBase_cFv();
|
||||
extern "C" void setShadow__12daItemBase_cFv();
|
||||
extern "C" void animEntry__12daItemBase_cFv();
|
||||
extern "C" void chkFlag__12daItemBase_cFi();
|
||||
extern "C" void getTevFrm__12daItemBase_cFv();
|
||||
extern "C" void getBtpFrm__12daItemBase_cFv();
|
||||
extern "C" void getShadowSize__12daItemBase_cFv();
|
||||
extern "C" void getCollisionH__12daItemBase_cFv();
|
||||
extern "C" void getCollisionR__12daItemBase_cFv();
|
||||
extern "C" void __dt__13cBgS_PolyInfoFv();
|
||||
extern "C" void __dt__8cM3dGCirFv();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern void* __vt__8dCcD_Cyl[36];
|
||||
extern "C" extern void* __vt__9dCcD_Stts[11];
|
||||
extern "C" void* field_item_res__10dItem_data[1020];
|
||||
extern "C" extern void* __vt__12daItemBase_c[17 + 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" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 data_80CFE008[4];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
/* 80CFDEB4-80CFDECC 000020 0018+00 1/1 0/0 0/0 .data l_cull_box */
|
||||
static Vec l_cull_box[2] = {{-200.0f, 0.0f, -200.0f}, {200.0f, 100.0f, 200.0f}};
|
||||
|
||||
/* 80CFD558-80CFD594 000078 003C+00 1/1 0/0 0/0 .text initBaseMtx__12daObjSword_cFv */
|
||||
void daObjSword_c::initBaseMtx() {
|
||||
// NONMATCHING
|
||||
mpModel->setBaseScale(scale);
|
||||
setBaseMtx();
|
||||
}
|
||||
|
||||
/* 80CFD594-80CFD600 0000B4 006C+00 2/2 0/0 0/0 .text setBaseMtx__12daObjSword_cFv */
|
||||
void daObjSword_c::setBaseMtx() {
|
||||
// NONMATCHING
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z);
|
||||
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80CFDE94-80CFDEA0 000000 000C+00 1/1 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,
|
||||
};
|
||||
|
||||
/* 80CFDEA0-80CFDEB4 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
|
||||
|
||||
/* 80CFDEB4-80CFDECC 000020 0018+00 1/1 0/0 0/0 .data l_cull_box */
|
||||
SECTION_DATA static u8 l_cull_box[24] = {
|
||||
0xC3, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC3, 0x48, 0x00, 0x00,
|
||||
0x43, 0x48, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x43, 0x48, 0x00, 0x00,
|
||||
};
|
||||
|
||||
/* 80CFD600-80CFD67C 000120 007C+00 1/1 0/0 0/0 .text Create__12daObjSword_cFv */
|
||||
void daObjSword_c::Create() {
|
||||
// NONMATCHING
|
||||
int daObjSword_c::Create() {
|
||||
initBaseMtx();
|
||||
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
|
||||
fopAcM_setCullSizeBox(this, l_cull_box[0].x, l_cull_box[0].y, l_cull_box[0].z, l_cull_box[1].x,
|
||||
l_cull_box[1].y, l_cull_box[1].z);
|
||||
fopAcM_OnCarryType(this, fopAcM_CARRY_UNK_30);
|
||||
show();
|
||||
execute();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80CFDECC-80CFDED8 -00001 000C+00 0/1 0/0 0/0 .data @3900 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static void* lit_3900[3] = {
|
||||
(void*)NULL,
|
||||
(void*)0xFFFFFFFF,
|
||||
(void*)actionWait__12daObjSword_cFv,
|
||||
};
|
||||
#pragma pop
|
||||
|
||||
/* 80CFDED8-80CFDEE4 -00001 000C+00 0/1 0/0 0/0 .data @3901 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static void* lit_3901[3] = {
|
||||
(void*)NULL,
|
||||
(void*)0xFFFFFFFF,
|
||||
(void*)actionOrderGetDemo__12daObjSword_cFv,
|
||||
};
|
||||
#pragma pop
|
||||
|
||||
/* 80CFDEE4-80CFDEF0 -00001 000C+00 0/1 0/0 0/0 .data @3902 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static void* lit_3902[3] = {
|
||||
(void*)NULL,
|
||||
(void*)0xFFFFFFFF,
|
||||
(void*)actionGetDemo__12daObjSword_cFv,
|
||||
};
|
||||
#pragma pop
|
||||
|
||||
/* 80CFDEF0-80CFDF14 00005C 0024+00 0/1 0/0 0/0 .data l_demoFunc$3899 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DATA static u8 l_demoFunc[36] = {
|
||||
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,
|
||||
};
|
||||
#pragma pop
|
||||
|
||||
/* 80CFDF14-80CFDF34 -00001 0020+00 1/0 0/0 0/0 .data l_daObjSword_Method */
|
||||
static actor_method_class l_daObjSword_Method = {
|
||||
(process_method_func)daObjSword_Create__FP12daObjSword_c,
|
||||
(process_method_func)daObjSword_Delete__FP12daObjSword_c,
|
||||
(process_method_func)daObjSword_Execute__FP12daObjSword_c,
|
||||
0,
|
||||
(process_method_func)daObjSword_Draw__FP12daObjSword_c,
|
||||
};
|
||||
|
||||
/* 80CFDF34-80CFDF64 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Sword */
|
||||
extern actor_process_profile_definition g_profile_Obj_Sword = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
7, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_Sword, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daObjSword_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
586, // mPriority
|
||||
&l_daObjSword_Method, // sub_method
|
||||
0x00040100, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
||||
/* 80CFDF64-80CFDF70 0000D0 000C+00 1/1 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,
|
||||
};
|
||||
|
||||
/* 80CFDF70-80CFDF7C 0000DC 000C+00 2/2 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,
|
||||
};
|
||||
|
||||
/* 80CFDF7C-80CFDF88 0000E8 000C+00 1/1 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,
|
||||
};
|
||||
|
||||
/* 80CFDF88-80CFDFCC 0000F4 0044+00 1/1 0/0 0/0 .data __vt__12daObjSword_c */
|
||||
SECTION_DATA extern void* __vt__12daObjSword_c[17] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)DrawBase__12daItemBase_cFv,
|
||||
(void*)setListStart__12daItemBase_cFv,
|
||||
(void*)settingBeforeDraw__12daItemBase_cFv,
|
||||
(void*)setTevStr__12daItemBase_cFv,
|
||||
(void*)setShadow__12daItemBase_cFv,
|
||||
(void*)animEntry__12daItemBase_cFv,
|
||||
(void*)RotateYBase__12daItemBase_cFv,
|
||||
(void*)clothCreate__12daItemBase_cFv,
|
||||
(void*)__CreateHeap__12daItemBase_cFv,
|
||||
(void*)chkFlag__12daItemBase_cFi,
|
||||
(void*)getTevFrm__12daItemBase_cFv,
|
||||
(void*)getBtpFrm__12daItemBase_cFv,
|
||||
(void*)getShadowSize__12daItemBase_cFv,
|
||||
(void*)getCollisionH__12daItemBase_cFv,
|
||||
(void*)getCollisionR__12daItemBase_cFv,
|
||||
};
|
||||
|
||||
/* 80CFDFCC-80CFDFD8 000138 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGCyl */
|
||||
SECTION_DATA extern void* __vt__8cM3dGCyl[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__8cM3dGCylFv,
|
||||
};
|
||||
|
||||
/* 80CFDFD8-80CFDFE4 000144 000C+00 2/2 0/0 0/0 .data __vt__8cM3dGAab */
|
||||
SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__8cM3dGAabFv,
|
||||
};
|
||||
|
||||
/* 80CFDFE4-80CFE008 000150 0024+00 2/2 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_80CFDE74,
|
||||
(void*)NULL,
|
||||
(void*)NULL,
|
||||
(void*)func_80CFDE6C,
|
||||
};
|
||||
|
||||
/* 80CFD67C-80CFD848 00019C 01CC+00 1/1 0/0 0/0 .text create__12daObjSword_cFv */
|
||||
void daObjSword_c::create() {
|
||||
// NONMATCHING
|
||||
}
|
||||
cPhs__Step daObjSword_c::create() {
|
||||
fopAcM_SetupActor(this, daObjSword_c);
|
||||
m_itemNo = 0x28;
|
||||
if (fopAcM_isItem(this, getItemBit())) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
|
||||
/* 80CFD848-80CFD890 000368 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */
|
||||
// cM3dGCyl::~cM3dGCyl() {
|
||||
extern "C" void __dt__8cM3dGCylFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 80CFD890-80CFD8D8 0003B0 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
|
||||
// cM3dGAab::~cM3dGAab() {
|
||||
extern "C" void __dt__8cM3dGAabFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 80CFD8D8-80CFD934 0003F8 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */
|
||||
// dCcD_GStts::~dCcD_GStts() {
|
||||
extern "C" void __dt__10dCcD_GSttsFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 80CFD934-80CFD9A4 000454 0070+00 1/0 0/0 0/0 .text __dt__12dBgS_AcchCirFv */
|
||||
// dBgS_AcchCir::~dBgS_AcchCir() {
|
||||
extern "C" void __dt__12dBgS_AcchCirFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 80CFD9A4-80CFDA14 0004C4 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */
|
||||
// dBgS_ObjAcch::~dBgS_ObjAcch() {
|
||||
extern "C" void __dt__12dBgS_ObjAcchFv() {
|
||||
// NONMATCHING
|
||||
cPhs__Step phase = (cPhs__Step)dComIfG_resLoad(&mPhase, dItem_data::getFieldArc(m_itemNo));
|
||||
if (phase == cPhs_COMPLEATE_e) {
|
||||
if (!fopAcM_entrySolidHeap(this, CheckFieldItemCreateHeap, 0x4000)) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
if (!Create()) {
|
||||
return cPhs_ERROR_e;
|
||||
}
|
||||
}
|
||||
return phase;
|
||||
}
|
||||
|
||||
/* 80CFDA14-80CFDA8C 000534 0078+00 1/0 0/0 0/0 .text actionWait__12daObjSword_cFv */
|
||||
void daObjSword_c::actionWait() {
|
||||
// NONMATCHING
|
||||
int daObjSword_c::actionWait() {
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
if (fopAcM_checkCarryNow(this)) {
|
||||
cLib_offBit<u32>(attention_info.flags, 0x10);
|
||||
if (player->getGrabUpStart()) {
|
||||
fopAcM_cancelCarryNow(this);
|
||||
initActionOrderGetDemo();
|
||||
}
|
||||
} else {
|
||||
cLib_onBit<u32>(attention_info.flags, 0x10);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80CFDA8C-80CFDB04 0005AC 0078+00 1/1 0/0 0/0 .text initActionOrderGetDemo__12daObjSword_cFv */
|
||||
void daObjSword_c::initActionOrderGetDemo() {
|
||||
// NONMATCHING
|
||||
int daObjSword_c::initActionOrderGetDemo() {
|
||||
hide();
|
||||
fopAcM_orderItemEvent(this, 0, 0);
|
||||
eventInfo.onCondition(8);
|
||||
mProcID = fopAcM_createItemForTrBoxDemo(¤t.pos, m_itemNo, -1, fopAcM_GetRoomNo(this),
|
||||
NULL, NULL);
|
||||
setStatus(1);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80CFDB04-80CFDB80 000624 007C+00 1/0 0/0 0/0 .text actionOrderGetDemo__12daObjSword_cFv */
|
||||
void daObjSword_c::actionOrderGetDemo() {
|
||||
// NONMATCHING
|
||||
int daObjSword_c::actionOrderGetDemo() {
|
||||
if (eventInfo.checkCommandItem()) {
|
||||
setStatus(2);
|
||||
if (mProcID != fpcM_ERROR_PROCESS_ID_e) {
|
||||
dComIfGp_event_setItemPartnerId(mProcID);
|
||||
}
|
||||
} else {
|
||||
fopAcM_orderItemEvent(this, 0, 0);
|
||||
eventInfo.onCondition(8);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80CFDE84-80CFDE84 000000 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80CFDE84 = "DEFAULT_GETITEM";
|
||||
#pragma pop
|
||||
|
||||
/* 80CFDB80-80CFDC1C 0006A0 009C+00 1/0 0/0 0/0 .text actionGetDemo__12daObjSword_cFv */
|
||||
void daObjSword_c::actionGetDemo() {
|
||||
// NONMATCHING
|
||||
int daObjSword_c::actionGetDemo() {
|
||||
if (dComIfGp_evmng_endCheck("DEFAULT_GETITEM")) {
|
||||
fopAcM_onItem(this, getItemBit());
|
||||
fopAcM_onSwitch(this, getSwbit());
|
||||
dComIfGp_event_reset();
|
||||
fopAcM_delete(this);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80CFDC1C-80CFDD18 00073C 00FC+00 2/2 0/0 0/0 .text execute__12daObjSword_cFv */
|
||||
void daObjSword_c::execute() {
|
||||
// NONMATCHING
|
||||
int daObjSword_c::execute() {
|
||||
static int (daObjSword_c::* l_demoFunc[])() = {
|
||||
&daObjSword_c::actionWait, &daObjSword_c::actionOrderGetDemo, &daObjSword_c::actionGetDemo};
|
||||
field_0x92c++;
|
||||
(this->*l_demoFunc[mStatus])();
|
||||
attention_info.position = current.pos;
|
||||
eyePos = current.pos;
|
||||
setBaseMtx();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80CFDD18-80CFDD6C 000838 0054+00 1/1 0/0 0/0 .text draw__12daObjSword_cFv */
|
||||
void daObjSword_c::draw() {
|
||||
// NONMATCHING
|
||||
int daObjSword_c::draw() {
|
||||
if (!chkDraw()) {
|
||||
return 1;
|
||||
}
|
||||
DrawBase();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80CFDD6C-80CFDDA4 00088C 0038+00 1/1 0/0 0/0 .text _delete__12daObjSword_cFv */
|
||||
void daObjSword_c::_delete() {
|
||||
// NONMATCHING
|
||||
int daObjSword_c::_delete() {
|
||||
DeleteBase(dItem_data::getFieldArc(m_itemNo));
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80CFDDA4-80CFDDC4 0008C4 0020+00 1/0 0/0 0/0 .text daObjSword_Draw__FP12daObjSword_c
|
||||
*/
|
||||
static void daObjSword_Draw(daObjSword_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daObjSword_Draw(daObjSword_c* param_0) {
|
||||
return param_0->draw();
|
||||
}
|
||||
|
||||
/* 80CFDDC4-80CFDDE4 0008E4 0020+00 1/0 0/0 0/0 .text daObjSword_Execute__FP12daObjSword_c */
|
||||
static void daObjSword_Execute(daObjSword_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daObjSword_Execute(daObjSword_c* param_0) {
|
||||
return param_0->execute();
|
||||
}
|
||||
|
||||
/* 80CFDDE4-80CFDE04 000904 0020+00 1/0 0/0 0/0 .text daObjSword_Delete__FP12daObjSword_c
|
||||
*/
|
||||
static void daObjSword_Delete(daObjSword_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daObjSword_Delete(daObjSword_c* param_0) {
|
||||
return param_0->_delete();
|
||||
}
|
||||
|
||||
/* 80CFDE04-80CFDE24 000924 0020+00 1/0 0/0 0/0 .text daObjSword_Create__FP12daObjSword_c
|
||||
*/
|
||||
static void daObjSword_Create(daObjSword_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daObjSword_Create(daObjSword_c* param_0) {
|
||||
return param_0->create();
|
||||
}
|
||||
|
||||
/* 80CFDE24-80CFDE6C 000944 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */
|
||||
// cCcD_GStts::~cCcD_GStts() {
|
||||
extern "C" void __dt__10cCcD_GSttsFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
/* 80CFDF14-80CFDF34 -00001 0020+00 1/0 0/0 0/0 .data l_daObjSword_Method */
|
||||
static actor_method_class l_daObjSword_Method = {
|
||||
(process_method_func)daObjSword_Create, (process_method_func)daObjSword_Delete,
|
||||
(process_method_func)daObjSword_Execute, 0,
|
||||
(process_method_func)daObjSword_Draw,
|
||||
};
|
||||
|
||||
/* 80CFDE6C-80CFDE74 00098C 0008+00 1/0 0/0 0/0 .text @36@__dt__12dBgS_ObjAcchFv */
|
||||
static void func_80CFDE6C() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 80CFDE74-80CFDE7C 000994 0008+00 1/0 0/0 0/0 .text @20@__dt__12dBgS_ObjAcchFv */
|
||||
static void func_80CFDE74() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 80CFDE84-80CFDE84 000000 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
/* 80CFDF34-80CFDF64 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Sword */
|
||||
extern actor_process_profile_definition g_profile_Obj_Sword = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
7, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_Sword, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daObjSword_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
586, // mPriority
|
||||
&l_daObjSword_Method, // sub_method
|
||||
0x00040100, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue