mirror of https://github.com/zeldaret/tp.git
d_a_obj_wooden_statue OK (#2532)
This commit is contained in:
parent
9c48ec0905
commit
cd99fa788c
|
|
@ -3,9 +3,9 @@ _epilog = .text:0x0000002C; // type:function size:0x2C scope:global
|
|||
_unresolved = .text:0x00000058; // type:function size:0x20 scope:global
|
||||
Reflect__FP4cXyzRC13cBgS_PolyInfof = .text:0x00000078; // type:function size:0x2FC scope:global
|
||||
__dt__8cM3dGPlaFv = .text:0x00000374; // type:function size:0x48 scope:global
|
||||
lifeGetTgCallBack__FP10fopAc_ac_cP12dCcD_GObjInfP10fopAc_ac_cP12dCcD_GObjInf = .text:0x000003BC; // type:function size:0x5C scope:global
|
||||
lifeGetCoCallBack__FP10fopAc_ac_cP12dCcD_GObjInfP10fopAc_ac_cP12dCcD_GObjInf = .text:0x00000418; // type:function size:0x44 scope:global
|
||||
s_sh_sub__FPvPv = .text:0x0000045C; // type:function size:0x4C scope:global
|
||||
lifeGetTgCallBack__FP10fopAc_ac_cP12dCcD_GObjInfP10fopAc_ac_cP12dCcD_GObjInf = .text:0x000003BC; // type:function size:0x5C scope:local
|
||||
lifeGetCoCallBack__FP10fopAc_ac_cP12dCcD_GObjInfP10fopAc_ac_cP12dCcD_GObjInf = .text:0x00000418; // type:function size:0x44 scope:local
|
||||
s_sh_sub__FPvPv = .text:0x0000045C; // type:function size:0x4C scope:local
|
||||
initBaseMtx__14daObjWStatue_cFv = .text:0x000004A8; // type:function size:0x3C scope:global
|
||||
setBaseMtx__14daObjWStatue_cFv = .text:0x000004E4; // type:function size:0x4C scope:global
|
||||
Create__14daObjWStatue_cFv = .text:0x00000530; // type:function size:0x184 scope:global
|
||||
|
|
@ -36,10 +36,10 @@ execute__14daObjWStatue_cFv = .text:0x000014E0; // type:function size:0x188 scop
|
|||
draw__14daObjWStatue_cFv = .text:0x00001668; // type:function size:0x54 scope:global
|
||||
setListStart__14daObjWStatue_cFv = .text:0x000016BC; // type:function size:0x4 scope:global
|
||||
_delete__14daObjWStatue_cFv = .text:0x000016C0; // type:function size:0x38 scope:global
|
||||
daObjWStatue_Draw__FP14daObjWStatue_c = .text:0x000016F8; // type:function size:0x20 scope:global
|
||||
daObjWStatue_Execute__FP14daObjWStatue_c = .text:0x00001718; // type:function size:0x20 scope:global
|
||||
daObjWStatue_Delete__FP14daObjWStatue_c = .text:0x00001738; // type:function size:0x20 scope:global
|
||||
daObjWStatue_Create__FP10fopAc_ac_c = .text:0x00001758; // type:function size:0x20 scope:global
|
||||
daObjWStatue_Draw__FP14daObjWStatue_c = .text:0x000016F8; // type:function size:0x20 scope:local
|
||||
daObjWStatue_Execute__FP14daObjWStatue_c = .text:0x00001718; // type:function size:0x20 scope:local
|
||||
daObjWStatue_Delete__FP14daObjWStatue_c = .text:0x00001738; // type:function size:0x20 scope:local
|
||||
daObjWStatue_Create__FP10fopAc_ac_c = .text:0x00001758; // type:function size:0x20 scope:local
|
||||
__dt__10cCcD_GSttsFv = .text:0x00001778; // type:function size:0x48 scope:global
|
||||
__dt__18dPa_levelEcallBackFv = .text:0x000017C0; // type:function size:0x74 scope:global
|
||||
execute__18JPAEmitterCallBackFP14JPABaseEmitter = .text:0x00001834; // type:function size:0x4 scope:global
|
||||
|
|
@ -52,7 +52,7 @@ cLib_calcTimer<Uc>__FPUc = .text:0x00001844; // type:function size:0x1C scope:gl
|
|||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
_dtors = .dtors:0x00000000; // type:label scope:global
|
||||
...rodata.0 = .rodata:0x00000000; // type:label scope:local
|
||||
l_cyl_src = .rodata:0x00000000; // type:object size:0x44 scope:global
|
||||
l_cyl_src = .rodata:0x00000000; // type:object size:0x44 scope:local
|
||||
@3857 = .rodata:0x00000044; // type:object size:0x4 scope:local
|
||||
@3858 = .rodata:0x00000048; // type:object size:0x8 scope:local
|
||||
@3859 = .rodata:0x00000050; // type:object size:0x8 scope:local
|
||||
|
|
@ -73,11 +73,11 @@ l_cyl_src = .rodata:0x00000000; // type:object size:0x44 scope:global
|
|||
@4324 = .rodata:0x00000098; // type:object size:0x4 scope:local
|
||||
@stringBase0 = .rodata:0x0000009C; // type:object size:0x45 scope:local data:string_table
|
||||
...data.0 = .data:0x00000000; // type:label scope:local
|
||||
cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:global
|
||||
cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:local
|
||||
@1787 = .data:0x0000000C; // type:object size:0x4 scope:local
|
||||
lbl_691_data_10 = .data:0x00000010; // type:object size:0x10
|
||||
l_arcName = .data:0x00000020; // type:object size:0x4 scope:global data:4byte
|
||||
l_eventName = .data:0x00000024; // type:object size:0x4 scope:global data:4byte
|
||||
l_arcName = .data:0x00000020; // type:object size:0x4 scope:local data:4byte
|
||||
l_eventName = .data:0x00000024; // type:object size:0x4 scope:local data:4byte
|
||||
action_table$4273 = .data:0x00000028; // type:object size:0x10 scope:local
|
||||
@4356 = .data:0x00000038; // type:object size:0xC scope:local
|
||||
@4357 = .data:0x00000044; // type:object size:0xC scope:local
|
||||
|
|
@ -85,7 +85,7 @@ action_table$4273 = .data:0x00000028; // type:object size:0x10 scope:local
|
|||
@4359 = .data:0x0000005C; // type:object size:0xC scope:local
|
||||
@4360 = .data:0x00000068; // type:object size:0xC scope:local
|
||||
l_demoFunc$4355 = .data:0x00000074; // type:object size:0x3C scope:local
|
||||
l_daObjWStatue_Method = .data:0x000000B0; // type:object size:0x20 scope:global
|
||||
l_daObjWStatue_Method = .data:0x000000B0; // type:object size:0x20 scope:local
|
||||
g_profile_Obj_WoodStatue = .data:0x000000D0; // type:object size:0x30 scope:global
|
||||
__vt__12dBgS_AcchCir = .data:0x00000100; // type:object size:0xC scope:global
|
||||
__vt__10cCcD_GStts = .data:0x0000010C; // type:object size:0xC scope:global
|
||||
|
|
@ -96,4 +96,4 @@ __vt__8cM3dGAab = .data:0x00000154; // type:object size:0xC scope:global
|
|||
__vt__12dBgS_ObjAcch = .data:0x00000160; // type:object size:0x24 scope:global
|
||||
__vt__14daObjWStatue_c = .data:0x00000184; // type:object size:0x44 scope:global
|
||||
__vt__8cM3dGPla = .data:0x000001C8; // type:object size:0xC scope:global
|
||||
lbl_691_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte
|
||||
init$2078 = .bss:0x00000000; // type:object size:0x1 scope:local data:byte
|
||||
|
|
|
|||
|
|
@ -95,4 +95,4 @@ __vt__8cM3dGAab = .data:0x00000154; // type:object size:0xC scope:global
|
|||
__vt__12dBgS_ObjAcch = .data:0x00000160; // type:object size:0x24 scope:global
|
||||
__vt__14daObjWStatue_c = .data:0x00000184; // type:object size:0x44 scope:global
|
||||
__vt__8cM3dGPla = .data:0x000001C8; // type:object size:0xC scope:global
|
||||
lbl_691_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte
|
||||
init$2078 = .bss:0x00000000; // type:object size:0x1 data:byte
|
||||
|
|
|
|||
|
|
@ -95,4 +95,4 @@ __vt__8cM3dGAab = .data:0x00000154; // type:object size:0xC scope:global
|
|||
__vt__12dBgS_ObjAcch = .data:0x00000160; // type:object size:0x24 scope:global
|
||||
__vt__14daObjWStatue_c = .data:0x00000184; // type:object size:0x44 scope:global
|
||||
__vt__8cM3dGPla = .data:0x000001C8; // type:object size:0xC scope:global
|
||||
lbl_691_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte
|
||||
init$2078 = .bss:0x00000000; // type:object size:0x1 data:byte
|
||||
|
|
|
|||
|
|
@ -2163,7 +2163,7 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_wind_stone"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_window"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_wood_pendulum"),
|
||||
ActorRel(NonMatching, "d_a_obj_wood_statue"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_wood_statue"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_wsword"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_yel_bag"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_ystone"),
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ public:
|
|||
void hide();
|
||||
void show();
|
||||
void changeDraw();
|
||||
u8 chkDraw();
|
||||
bool chkDraw();
|
||||
void dead();
|
||||
bool chkDead();
|
||||
int CreateItemHeap(char const*, s16, s16, s16, s16, s16, s16, s16);
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
#ifndef D_A_OBJ_WOOD_STATUE_H
|
||||
#define D_A_OBJ_WOOD_STATUE_H
|
||||
|
||||
#include "d/actor/d_a_itembase.h"
|
||||
#include "d/d_particle.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
/**
|
||||
|
|
@ -11,33 +13,57 @@
|
|||
* @details
|
||||
*
|
||||
*/
|
||||
class daObjWStatue_c : public fopAc_ac_c {
|
||||
class daObjWStatue_c : public daItemBase_c {
|
||||
public:
|
||||
typedef int (daObjWStatue_c::*demoFunc)();
|
||||
|
||||
enum Status {
|
||||
STATUS_WAIT,
|
||||
STATUS_ORDER_GET_DEMO,
|
||||
STATUS_GET_DEMO,
|
||||
STATUS_SW_ON_WAIT,
|
||||
STATUS_BOOMERANG_CARRY,
|
||||
};
|
||||
|
||||
/* 80D3A268 */ void initBaseMtx();
|
||||
/* 80D3A2A4 */ void setBaseMtx();
|
||||
/* 80D3A2F0 */ void Create();
|
||||
/* 80D3A474 */ bool __CreateHeap();
|
||||
/* 80D3A47C */ void create();
|
||||
/* 80D3A2F0 */ int Create();
|
||||
/* 80D3A474 */ int __CreateHeap();
|
||||
/* 80D3A47C */ int create();
|
||||
/* 80D3A8E8 */ void bg_check();
|
||||
/* 80D3AA3C */ void actionWaitInit();
|
||||
/* 80D3AA80 */ void actionWait();
|
||||
/* 80D3AB9C */ void initActionOrderGetDemo();
|
||||
/* 80D3AC64 */ void actionOrderGetDemo();
|
||||
/* 80D3ACAC */ void actionGetDemo();
|
||||
/* 80D3AD30 */ void actionInitSwOnWait();
|
||||
/* 80D3AD88 */ void actionSwOnWait();
|
||||
/* 80D3AE7C */ void actionInitBoomerangCarry();
|
||||
/* 80D3AF5C */ void actionBoomerangCarry();
|
||||
/* 80D3AA3C */ int actionWaitInit();
|
||||
/* 80D3AA80 */ int actionWait();
|
||||
/* 80D3AB9C */ int initActionOrderGetDemo();
|
||||
/* 80D3AC64 */ int actionOrderGetDemo();
|
||||
/* 80D3ACAC */ int actionGetDemo();
|
||||
/* 80D3AD30 */ int actionInitSwOnWait();
|
||||
/* 80D3AD88 */ int actionSwOnWait();
|
||||
/* 80D3AE7C */ int actionInitBoomerangCarry();
|
||||
/* 80D3AF5C */ int actionBoomerangCarry();
|
||||
/* 80D3AFC0 */ void demoProc();
|
||||
/* 80D3B164 */ void effectSet();
|
||||
/* 80D3B250 */ void effectStop();
|
||||
/* 80D3B2A0 */ void execute();
|
||||
/* 80D3B428 */ void draw();
|
||||
/* 80D3B2A0 */ int execute();
|
||||
/* 80D3B428 */ int draw();
|
||||
/* 80D3B47C */ void setListStart();
|
||||
/* 80D3B480 */ void _delete();
|
||||
/* 80D3B480 */ int _delete();
|
||||
|
||||
bool chkStatus(u8 status) { return mStatus == status; }
|
||||
void setStatus(u8 status) { mStatus = status; }
|
||||
u8 getSwbit2() { return fopAcM_GetParamBit(this, 8, 8); }
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x974 - 0x568];
|
||||
/* 0x92C */ fpc_ProcID mItemId;
|
||||
/* 0x930 */ int field_0x930;
|
||||
/* 0x934 */ int mStaffIdx;
|
||||
/* 0x938 */ u8 mStatus;
|
||||
/* 0x939 */ u8 mShouldBoundSEPlay;
|
||||
/* 0x93A */ u8 field_0x93a;
|
||||
/* 0x93B */ u8 mRespawnTimer;
|
||||
/* 0x93C */ cXyz field_0x93c;
|
||||
/* 0x948 */ s16 mEventIdx;
|
||||
/* 0x94A */ s16 mBoundSETimer;
|
||||
/* 0x94C */ dPa_followEcallBack mCallbacks[2];
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daObjWStatue_c) == 0x974);
|
||||
|
|
|
|||
|
|
@ -86,16 +86,9 @@ struct fopAcM_search_prm {
|
|||
/* 0x0A */ s8 subtype;
|
||||
};
|
||||
|
||||
// define to avoid vtable mess in WIP TUs
|
||||
#ifndef HIO_entry_c_NO_VIRTUAL
|
||||
struct fOpAcm_HIO_entry_c : public mDoHIO_entry_c {
|
||||
virtual ~fOpAcm_HIO_entry_c() {}
|
||||
};
|
||||
#else
|
||||
struct fOpAcm_HIO_entry_c {
|
||||
~fOpAcm_HIO_entry_c();
|
||||
};
|
||||
#endif
|
||||
|
||||
class l_HIO {
|
||||
public:
|
||||
|
|
@ -389,7 +382,7 @@ inline const Vec* fopAcM_getCullSizeBoxMax(const fopAc_ac_c* i_actor) {
|
|||
return &i_actor->cull.box.max;
|
||||
}
|
||||
|
||||
inline void fopAcM_SetCullSize(fopAc_ac_c* i_actor, s8 i_cullsize) {
|
||||
inline void fopAcM_SetCullSize(fopAc_ac_c* i_actor, int i_cullsize) {
|
||||
i_actor->cullType = i_cullsize;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ int daItemKantera_c::Create() {
|
|||
mCcCyl.SetStts(&mCcStts);
|
||||
mCcCyl.SetR(dItem_data::getR(m_itemNo));
|
||||
mCcCyl.SetH(dItem_data::getH(m_itemNo));
|
||||
fopAcM_SetCullSize(this, 0xF);
|
||||
fopAcM_SetCullSize(this, fopAc_CULLSPHERE_0_e);
|
||||
actionWaitInit();
|
||||
fopAcM_SetGravity(this, -6.0f);
|
||||
fopAcM_OnCarryType(this, fopAcM_CARRY_ITEM);
|
||||
|
|
|
|||
|
|
@ -90,7 +90,7 @@ int daItemShield_c::Create() {
|
|||
mCcCyl.SetStts(&mCcStts);
|
||||
mCcCyl.SetR(dItem_data::getR(m_itemNo));
|
||||
mCcCyl.SetH(dItem_data::getH(m_itemNo));
|
||||
fopAcM_SetCullSize(this, 15);
|
||||
fopAcM_SetCullSize(this, fopAc_CULLSPHERE_0_e);
|
||||
actionWaitInit();
|
||||
if (fopAcM_isSwitch(this, getSwBit())) {
|
||||
field_0x94a = 3;
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -28,8 +28,8 @@ void daItemBase_c::changeDraw() {
|
|||
}
|
||||
}
|
||||
|
||||
u8 daItemBase_c::chkDraw() {
|
||||
return cLib_checkBit<u8>(field_0x92b, 1) != 0;
|
||||
bool daItemBase_c::chkDraw() {
|
||||
return cLib_checkBit<u8>(field_0x92b, 1);
|
||||
}
|
||||
|
||||
void daItemBase_c::dead() {
|
||||
|
|
|
|||
Loading…
Reference in New Issue