d_a_obj_vgnfd OK, d_a_obj_doguu OK, clean up weak-but-not-inlined funcs in finished actors

This commit is contained in:
LagoLunatic
2025-04-25 18:44:45 -04:00
parent 0c6c84d675
commit 341f329dde
19 changed files with 105 additions and 112 deletions
+4 -4
View File
@@ -1381,7 +1381,7 @@ config.libs = [
ActorRel(Matching, "d_a_obj_cafelmp"),
ActorRel(NonMatching, "d_a_obj_coming"),
ActorRel(NonMatching, "d_a_obj_demo_barrel"),
ActorRel(Equivalent, "d_a_obj_doguu"), # weak func order
ActorRel(Matching, "d_a_obj_doguu", extra_cflags=['-pragma "nosyminline on"']),
ActorRel(Matching, "d_a_obj_doguu_demo"),
ActorRel(Matching, "d_a_obj_gryw00", extra_cflags=['-pragma "nosyminline on"']),
ActorRel(Matching, "d_a_obj_hfuck1", extra_cflags=['-pragma "nosyminline on"']),
@@ -1665,7 +1665,7 @@ config.libs = [
ActorRel(Matching, "d_a_obj_homensmoke", extra_cflags=['-pragma "nosyminline on"']),
ActorRel(NonMatching, "d_a_obj_hsehi1"),
ActorRel(NonMatching, "d_a_obj_htetu1"),
ActorRel(Matching, "d_a_obj_iceisland", extra_cflags=['-pragma "nosyminline on"']),
ActorRel(Matching, "d_a_obj_iceisland", extra_cflags=['-pragma "nosyminline on"']),
ActorRel(NonMatching, "d_a_obj_jump"),
ActorRel(NonMatching, "d_a_obj_kanoke"),
ActorRel(Equivalent, "d_a_obj_ladder", extra_cflags=['-pragma "nosyminline on"']), # weak func order
@@ -1688,7 +1688,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_plant"),
ActorRel(NonMatching, "d_a_obj_rflw"),
ActorRel(Matching, "d_a_obj_rforce"),
ActorRel(Matching, "d_a_obj_smplbg", extra_cflags=['-pragma "nosyminline on"']),
ActorRel(Matching, "d_a_obj_smplbg", extra_cflags=['-pragma "nosyminline on"']),
ActorRel(NonMatching, "d_a_obj_tapestry"),
ActorRel(NonMatching, "d_a_obj_tntrap"),
ActorRel(Matching, "d_a_obj_tower"),
@@ -1697,7 +1697,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_obj_try"),
ActorRel(Matching, "d_a_obj_usovmc"),
ActorRel(Matching, "d_a_obj_vfan", extra_cflags=[ '-pragma "nosyminline on"']),
ActorRel(NonMatching, "d_a_obj_vgnfd"),
ActorRel(Matching, "d_a_obj_vgnfd", extra_cflags=[ '-pragma "nosyminline on"']),
ActorRel(Matching, "d_a_obj_vmc", extra_cflags=["-sym off"]),
ActorRel(Matching, "d_a_obj_vmsdz"),
ActorRel(Matching, "d_a_obj_vmsms"),
@@ -14,7 +14,7 @@ class JUTNameTab;
enum J3DMaterialCopyFlag {
J3DMatCopyFlag_Material = 0x01,
J3DMatCopyFlag_Texture = 0x02,
J3DMatCopyFlag_All = 0x03,
J3DMatCopyFlag_All = J3DMatCopyFlag_Material | J3DMatCopyFlag_Texture,
};
enum {
+2 -2
View File
@@ -14,8 +14,8 @@ public:
inline bool _execute();
f32 getYureScale() const { return mScale; }
s16 getYureTimer() const { return mTimer; }
void setMoveBGMtx(); // weak but not inlined?
void set_mtx(); // weak but not inlined?
inline void setMoveBGMtx(); // weak but not inlined
inline void set_mtx(); // weak but not inlined
BOOL CreateHeap();
void CreateInit();
+1 -1
View File
@@ -10,7 +10,7 @@ public:
inline bool _delete();
inline bool _draw();
inline bool _execute();
inline void setEffectMtx(const cXyz*, float); // weak but not inlined?
inline void setEffectMtx(const cXyz*, float); // weak but not inlined
void setPointLight();
BOOL CreateHeap();
+1 -2
View File
@@ -118,8 +118,7 @@ public:
class daObjHha_c : public fopAc_ac_c {
public:
BOOL check_sw(); // weak but not inline?
inline BOOL check_sw(); // weak but not inlined
static int solidHeapCB(fopAc_ac_c*);
BOOL create_heap();
+3 -3
View File
@@ -11,9 +11,9 @@ class dBgW;
class daObjVgnfd_c : public fopAc_ac_c {
public:
void check_boss(int) {}
BOOL check_ev_init(int); // weak but not inlined?
void on_door_ev(int) {}
inline BOOL check_ev_init(int); // weak but not inlined
inline void on_door_ev(int);
inline BOOL check_boss(int);
static BOOL solidHeapCB(fopAc_ac_c*);
BOOL create_bdl_brk(int);
+1 -1
View File
@@ -6,7 +6,7 @@
class daObjVmsms_c : public fopAc_ac_c {
public:
bool check_demo() const; // weak but not inlined?
inline bool check_demo() const; // weak but not inlined
static BOOL solidHeapCB(fopAc_ac_c*);
BOOL create_heap();
+1 -1
View File
@@ -7,7 +7,7 @@
class daToge_c : public fopAc_ac_c {
public:
inline void set_mtx(); // weak but not inlined?
inline void set_mtx(); // weak but not inlined
BOOL _delete();
BOOL CreateHeap();
+2 -2
View File
@@ -7,8 +7,8 @@
class daYgcwp_c : public fopAc_ac_c {
public:
BOOL check_ev() const; // weak but not inlined?
void off_ev() const; // weak but not inlined?
inline BOOL check_ev() const; // weak but not inlined
inline void off_ev() const; // weak but not inlined
static BOOL solidHeapCB(fopAc_ac_c*);
BOOL create_heap();
+3 -3
View File
@@ -2051,15 +2051,15 @@ void daNpcRoten_c::eventOrder() {
}
}
else if(field_0x9B7 == 3) {
fopAcM_orderOtherEventId(this, field_0x99E, 0xFF, 0xFF7F, 0, 1);
fopAcM_orderOtherEventId(this, field_0x99E, 0xFF, 0xFF7F);
field_0x9B2 |= 0x4000;
}
else if(field_0x9B7 == 4) {
fopAcM_orderOtherEventId(this, field_0x9A0, 0xFF, 0xFF7F, 0, 1);
fopAcM_orderOtherEventId(this, field_0x9A0, 0xFF, 0xFF7F);
field_0x9B2 |= 0x4000;
}
else if(field_0x9B7 == 5) {
fopAcM_orderOtherEventId(this, field_0x9A2, 0xFF, 0xFF7F, 0, 1);
fopAcM_orderOtherEventId(this, field_0x9A2, 0xFF, 0xFF7F);
field_0x9B2 |= 0x4000;
}
else if(field_0x9B7 == 6) {
+46 -49
View File
@@ -41,6 +41,7 @@ static dCcD_SrcCyl l_cyl_src = {
/* Height */ 200.0f,
}
};
const struct {
int bmt_vgsm[3];
int bmt_vgsb[3];
@@ -109,7 +110,7 @@ BOOL daObjDoguu_c::CreateHeap() {
JUT_ASSERT(0x170, brk_doguu != NULL);
if (mBrk.init(modelData, brk_doguu, true, J3DFrameCtrl::EMode_LOOP, 1.0f, 0, -1, false, 0) == 0) {
return FALSE;
return FALSE;
}
modelData = static_cast<J3DModelData*>(dComIfG_getObjectRes("Doguu", daObjDoguu_idx_table.bdl_vgsh[field_0x894]));
@@ -142,7 +143,7 @@ BOOL daObjDoguu_c::CreateHeap() {
field_0x6D4 = mDoExt_J3DModel__create(modelData, 0x80000,0x15220202);
if (field_0x6D4 == NULL) {
return FALSE;
return FALSE;
}
JUTNameTab* nameTable = field_0x6D4->getModelData()->getJointName();
@@ -159,7 +160,7 @@ BOOL daObjDoguu_c::CreateHeap() {
JUT_ASSERT(0x1AB, bck_body != NULL);
if (mBckBody.init(modelData, bck_body, true, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1, false) == 0) {
return FALSE;
return FALSE;
}
deform = new J3DSkinDeform();
@@ -183,19 +184,18 @@ BOOL daObjDoguu_c::CreateHeap() {
if(mBckCrystal.init(modelData, bck_crystal, true, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1, false) == 0){
return FALSE;
} else{
field_0x89C = 1;
return TRUE;
}
field_0x89C = 1;
return TRUE;
}
/* 000007D0-00000B80 .text CreateInit__12daObjDoguu_cFv */
void daObjDoguu_c::CreateInit() {
cullMtx = field_0x6CC->getBaseTRMtx();
fopAcM_SetMtx(this, field_0x6CC->getBaseTRMtx());
fopAcM_setCullSizeBox(this, -600.0f, -0.0f, -600.0f, 600.0f, 400.0f, 600.0f);
fopAcM_setCullSizeFar(this, 1.0f);
if (field_0x894 == 0){
mItemNo = dItem_PEARL_DIN_e;
} else if(field_0x894 == 1) {
@@ -203,6 +203,7 @@ void daObjDoguu_c::CreateInit() {
} else{
mItemNo = dItem_PEARL_NAYRU_e;
}
mStts.Init(0xff, 0xff, this);
mCyl.Set(l_cyl_src);
if(!checkItemGet(mItemNo, TRUE)){
@@ -232,9 +233,9 @@ void daObjDoguu_c::CreateInit() {
} else {
field_0x8A1 = false;
if (
(field_0x894 == 0) && dComIfGs_isEventBit(0x1480) ||
(field_0x894 == 1 && dComIfGs_isEventBit(0x1440) ||
(field_0x894 == 2 && dComIfGs_isEventBit(0x1410)))
(field_0x894 == 0 && dComIfGs_isEventBit(0x1480)) ||
(field_0x894 == 1 && dComIfGs_isEventBit(0x1440)) ||
(field_0x894 == 2 && dComIfGs_isEventBit(0x1410))
) {
field_0x8A2 = true;
field_0x8A0 = true;
@@ -245,6 +246,7 @@ void daObjDoguu_c::CreateInit() {
field_0x8AC = 0;
}
}
eyePos.y += attr().mOffsetEyePos;
set_mtx();
@@ -310,13 +312,11 @@ u16 daObjDoguu_c::next_msgStatus(u32* pMsgNo) {
u32 daObjDoguu_c::getMsg() {
if (mActIdx == 4) {
return 3821;
}
if (field_0x894 == 0) {
} else if (field_0x894 == 0) {
return 3822;
}
if(field_0x894 == 1){
} else if (field_0x894 == 1){
return 3823;
} else{
} else {
return 3824;
}
}
@@ -343,10 +343,8 @@ void daObjDoguu_c::setPlayerAngle(int i_staffIdx) {
/* 00000F18-00000FB8 .text setQuake__12daObjDoguu_cFi */
void daObjDoguu_c::setQuake(int i_staffIdx) {
// u8 temp[4] = {0x00, 0x10, 0xFF, 0xEE}; // Doesn't match
u32 temp2 = 0x0010FFEE;
u8* temp = (u8*)&temp2;
dComIfGp_getVibration().StartQuake(temp, 0, 63, cXyz(0.0f, 1.0f, 0.0f));
u32 pattern = 0x0010FFEE;
dComIfGp_getVibration().StartQuake((u8*)&pattern, 0, 63, cXyz(0.0f, 1.0f, 0.0f));
mTimer = *dComIfGp_evmng_getMyIntegerP(i_staffIdx, "Timer");
}
@@ -432,14 +430,14 @@ void daObjDoguu_c::privateCut() {
case 6:
mTimer--;
if (mTimer == 0) {
doCutEnd = true;
dComIfGp_getVibration().StopQuake(63);
doCutEnd = true;
dComIfGp_getVibration().StopQuake(63);
}
break;
case 7:
doCutEnd = true;
break;
case 8:
case 8: {
int iVar2 = field_0x8C4;
if(iVar2 >= 200){
mAllColRatio = 1.0f;
@@ -456,12 +454,10 @@ void daObjDoguu_c::privateCut() {
mAllColRatio = 0.375f - (iVar2 + -40) * 0.00625f;
} else if ((iVar2 >= 130) && (iVar2 < 150)) {
mAllColRatio = (iVar2 + -130) * 0.00625f + 0.25f;
} else {
if((field_0x8C4 >= 150) && (field_0x8C4 < 170)){
mAllColRatio = (iVar2 + -150) * 0.0125f + 0.375f;
} else if((iVar2 >= 170) && (iVar2 <= 190)){
mAllColRatio = (iVar2 + -170) * 0.01875f + 0.625f;
}
} else if((field_0x8C4 >= 150) && (field_0x8C4 < 170)){
mAllColRatio = (iVar2 + -150) * 0.0125f + 0.375f;
} else if((iVar2 >= 170) && (iVar2 <= 190)){
mAllColRatio = (iVar2 + -170) * 0.01875f + 0.625f;
}
if (field_0x8C4 == 40) {
@@ -482,6 +478,7 @@ void daObjDoguu_c::privateCut() {
field_0x8A3 = true;
}
break;
}
default:
doCutEnd = true;
break;
@@ -513,12 +510,11 @@ int daObjDoguu_c::getFinishEventCount() {
void daObjDoguu_c::setFinishMyEvent() {
if (field_0x894 == 0) {
dComIfGs_onEventBit(0x1480);
} else if (field_0x894 == 1) {
} else if (field_0x894 == 1) {
dComIfGs_onEventBit(0x1440);
} else {
} else {
dComIfGs_onEventBit(0x1410);
}
return;
}
}
/* 000016A4-000016C4 .text daObjDoguu_Create__FPv */
@@ -526,8 +522,6 @@ static cPhs_State daObjDoguu_Create(void* i_this) {
return static_cast<daObjDoguu_c*>(i_this)->_create();
}
daObjDoguu_c::daObjDoguu_c() {}
/* 000016C4-0000178C .text _create__12daObjDoguu_cFv */
cPhs_State daObjDoguu_c::_create() {
fopAcM_SetupActor(this, daObjDoguu_c);
@@ -540,20 +534,20 @@ cPhs_State daObjDoguu_c::_create() {
if (phase_state == cPhs_COMPLEATE_e) {
if(!fopAcM_entrySolidHeap(this, CheckCreateHeap, 0)){
return cPhs_ERROR_e;
} else{
CreateInit();
}
}
CreateInit();
}
return phase_state;
}
daObjDoguu_c::daObjDoguu_c() {}
bool daObjDoguu_c::_delete(){
dKy_plight_cut(&mLightInfluence);
dComIfG_resDelete(&mPhs,"Doguu");
return true;
}
/* 00001CC8-00001D0C .text daObjDoguu_Delete__FPv */
static BOOL daObjDoguu_Delete(void* i_this) {
return static_cast<daObjDoguu_c*>(i_this)->_delete();
@@ -620,28 +614,31 @@ void daObjDoguu_c::setEffectMtx(const cXyz* i_pos, float i_scale) {
Mtx reflMtx;
C_MTXLookAt(reflMtx, &cXyz::Zero, &cXyz::BaseY, &refl);
mDoMtx_stack_c::scaleS(scale, scale, 1.0f);
MTXConcat(mDoMtx_stack_c::now, mtx_adj, mDoMtx_stack_c::now);
MTXConcat(mDoMtx_stack_c::now, reflMtx, mDoMtx_stack_c::now);
mDoMtx_stack_c::now[0][3] = 0.0f;
mDoMtx_stack_c::now[1][3] = 0.0f;
mDoMtx_stack_c::now[2][3] = 0.0f;
mDoMtx_stack_c::concat(mtx_adj);
mDoMtx_stack_c::concat(reflMtx);
MtxP mtx = mDoMtx_stack_c::get();
mtx[0][3] = 0.0f;
mtx[1][3] = 0.0f;
mtx[2][3] = 0.0f;
J3DModelData *modelData = field_0x6D0->getModelData();
for (u16 i = 0; i < modelData->getMaterialNum(); i++) {
J3DMaterial* mat = modelData->getMaterialNodePointer(i);
for (u32 j = 0; j < 8; j++) {
J3DTexMtx* texMtx = mat->getTexMtx(j);
if (texMtx != NULL && texMtx->getTexMtxInfo().mInfo == 10) {
texMtx->getTexMtxInfo().setEffectMtx(mDoMtx_stack_c::now);
texMtx->getTexMtxInfo().setEffectMtx(mDoMtx_stack_c::get());
}
}
}
modelData = field_0x6D4->getModelData();
for (u16 i = 0; i < modelData->getMaterialNum(); i++) {
J3DMaterial* mat = modelData->getMaterialNodePointer(i);
for (u32 j = 0; j < 8; j++) {
J3DTexMtx* texMtx = mat->getTexMtx(j);
if (texMtx != NULL && texMtx->getTexMtxInfo().mInfo == 10) {
texMtx->getTexMtxInfo().setEffectMtx(mDoMtx_stack_c::now);
texMtx->getTexMtxInfo().setEffectMtx(mDoMtx_stack_c::get());
}
}
}
@@ -665,17 +662,17 @@ bool daObjDoguu_c::_execute() {
mCyl.SetC(current.pos);
dComIfG_Ccsp()->Set(&mCyl);
if (mAllColRatio != 1.0f) {
dKy_set_allcol_ratio(mAllColRatio);
}
switch(field_0x8AC) {
case 0:
fopAc_ac_c *ac;
if (checkItemGet(mItemNo, TRUE) && mCyl.ChkCoHit()) {
cCcD_Obj* hitObj = mCyl.GetCoHitObj();
if (hitObj != NULL) {
ac = hitObj->GetAc();
fopAc_ac_c *ac = hitObj->GetAc();
if ((ac != NULL) && (fopAcM_GetName(ac) == PROC_PLAYER)) {
mCyl.SetR(50.0f);
fopAcM_orderOtherEventId(this, mDoguuDemo1EventIdx);
+1 -1
View File
@@ -984,7 +984,7 @@ BOOL daObjFigure_c::createHeap() {
return false;
}
if(mpMorf->getModel()->setSkinDeform(pDeform, 1) != 0) {
if(mpMorf->getModel()->setSkinDeform(pDeform, 1) != J3DErrType_Success) {
return false;
}
}
+6 -6
View File
@@ -48,8 +48,8 @@ void daObjIceisland_c::daObjIceisland_particle_set() {
/* 00000410-00000588 .text CreateInit__16daObjIceisland_cFv */
void daObjIceisland_c::CreateInit() {
cullMtx = mpModel->getBaseTRMtx();
cullSizeFar = 1.0f;
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
fopAcM_setCullSizeFar(this, 1.0f);
set_mtx();
dKy_tevstr_init(&mTevStr, fopAcM_GetHomeRoomNo(this), 0xFF);
g_env_light.settingTevStruct(TEV_TYPE_BG0, &current.pos, &mTevStr);
@@ -85,7 +85,7 @@ void daObjIceisland_c::set_mtx() {
void daObjIceisland_c::daObjIceisland_freeze_main() {
u8 switchNo = daObjIceisland_prm::getSwitchNo(this);
if(fopAcM_isSwitch(this, switchNo)){
fopAcM_orderOtherEventId(this, mMeltIceEventIdx, 0xffff);
fopAcM_orderOtherEventId(this, mMeltIceEventIdx);
field_0x39C = 1;
}
}
@@ -107,7 +107,7 @@ void daObjIceisland_c::daObjIceisland_melt_demo_wait() {
mBrkAnm.setPlaySpeed(1.0f);
field_0x39C = 2;
} else {
fopAcM_orderOtherEventId(this,mMeltIceEventIdx,0xffff);
fopAcM_orderOtherEventId(this, mMeltIceEventIdx);
}
}
@@ -124,7 +124,7 @@ void daObjIceisland_c::daObjIceisland_melt_demo() {
void daObjIceisland_c::daObjIceisland_melt_main() {
u8 switchNo = daObjIceisland_prm::getSwitchNo(this);
if(!fopAcM_isSwitch(this, switchNo)){
fopAcM_orderOtherEventId(this,mFreezeIceEventIdx,0xffff);
fopAcM_orderOtherEventId(this, mFreezeIceEventIdx);
field_0x39C = 4;
}
}
@@ -137,7 +137,7 @@ void daObjIceisland_c::daObjIceisland_freeze_demo_wait() {
field_0x39C = 5;
}
else {
fopAcM_orderOtherEventId(this, mFreezeIceEventIdx, 0xffff);
fopAcM_orderOtherEventId(this, mFreezeIceEventIdx);
}
}
+1 -2
View File
@@ -36,8 +36,7 @@ BOOL daObjSmplbg::Act_c::CreateHeap() {
/* 00000144-0000032C .text Create__Q211daObjSmplbg5Act_cFv */
BOOL daObjSmplbg::Act_c::Create() {
cullMtx = mpModel->getBaseTRMtx();
fopAcM_SetMtx(this, cullMtx);
fopAcM_SetMtx(this, mpModel->getBaseTRMtx());
init_mtx();
eyePos.y += attr().mEyeOffset;
+21 -16
View File
@@ -75,21 +75,19 @@ enum {
/* 00000078-00000098 .text solidHeapCB__12daObjVgnfd_cFP10fopAc_ac_c */
BOOL daObjVgnfd_c::solidHeapCB(fopAc_ac_c* i_ac) {
/* Nonmatching */
return ((daObjVgnfd_c*)i_ac)->create_heap();
}
/* 00000098-0000022C .text create_bdl_brk__12daObjVgnfd_cFi */
BOOL daObjVgnfd_c::create_bdl_brk(int i) {
/* Nonmatching */
BOOL ret = FALSE;
J3DModelData* mdl_data = (J3DModelData*)dComIfG_getObjectRes(M_arcname, M_door_bdl_table[i]);
J3DModelData* mdl_data = static_cast<J3DModelData*>(dComIfG_getObjectRes(M_arcname, M_bdl_table[i]));
JUT_ASSERT(0xfe, mdl_data != NULL);
if (mdl_data != NULL) {
mModel[i] = mDoExt_J3DModel__create(mdl_data, 0, 0x11020203);
if (mModel[i] != NULL) {
if (M_brk_table[i] != -1) {
J3DAnmTevRegKey* brk_p = (J3DAnmTevRegKey*)dComIfG_getObjectRes(M_arcname, M_brk_table[i]);
J3DAnmTevRegKey* brk_p = static_cast<J3DAnmTevRegKey*>(dComIfG_getObjectRes(M_arcname, M_brk_table[i]));
JUT_ASSERT(0x105, brk_p != NULL);
if (brk_p != NULL) {
if (mBrkAnm[i].init(mdl_data, brk_p, TRUE, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1, false, FALSE))
@@ -105,9 +103,9 @@ BOOL daObjVgnfd_c::create_bdl_brk(int i) {
/* 0000022C-000004A4 .text create_heap__12daObjVgnfd_cFv */
BOOL daObjVgnfd_c::create_heap() {
/* Nonmatching */
BOOL ret = TRUE;
for (s32 i = 0; i < (s32)ARRAY_SIZE(mModel); i++) {
s32 i;
for (i = 0; i < (s32)ARRAY_SIZE(mModel); i++) {
if (!create_bdl_brk(i)) {
ret = FALSE;
break;
@@ -115,8 +113,8 @@ BOOL daObjVgnfd_c::create_heap() {
}
if (ret) {
for (s32 i = 0; i < (s32)ARRAY_SIZE(mModel2); i++) {
J3DModelData* mdl_data = (J3DModelData*)dComIfG_getObjectRes(M_arcname, M_door_bdl_table[i]);
for (i = 0; i < (s32)ARRAY_SIZE(mModel2); i++) {
J3DModelData* mdl_data = static_cast<J3DModelData*>(dComIfG_getObjectRes(M_arcname, M_door_bdl_table[i]));
JUT_ASSERT(0x133, mdl_data != NULL);
if (mdl_data != NULL) {
@@ -133,7 +131,7 @@ BOOL daObjVgnfd_c::create_heap() {
}
if (ret) {
J3DAnmTextureSRTKey* btk_data = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(M_arcname, VGNFD_BTK_YGCBD00);
J3DAnmTextureSRTKey* btk_data = static_cast<J3DAnmTextureSRTKey*>(dComIfG_getObjectRes(M_arcname, VGNFD_BTK_YGCBD00));
JUT_ASSERT(0x144, btk_data != NULL);
if (btk_data == NULL || !mBtkAnm.init(mModel2[1]->getModelData(), btk_data, TRUE, J3DFrameCtrl::EMode_NONE, 1.0f, 0, -1, false, FALSE)) {
@@ -219,12 +217,20 @@ BOOL daObjVgnfd_c::check_ev_init(int i) {
return dComIfGs_isEventBit(M_door_ev_table[i]);
}
void daObjVgnfd_c::on_door_ev(int i) {
dComIfGs_onEventBit(M_door_ev_table[i]);
}
BOOL daObjVgnfd_c::check_boss(int i) {
return dComIfGs_isEventBit(M_boss_ev_table[i]);
}
/* 00000914-000009AC .text get_start_demo_idx__12daObjVgnfd_cFv */
s32 daObjVgnfd_c::get_start_demo_idx() {
s32 ret = -1;
for (s32 i = 0; i < (s32)ARRAY_SIZE(M_door_ev_table); i++) {
if (!dComIfGs_isEventBit(M_door_ev_table[i]) && dComIfGs_isEventBit(M_boss_ev_table[i])) {
if (!check_ev_init(i) && check_boss(i)) {
ret = i;
break;
}
@@ -235,11 +241,11 @@ s32 daObjVgnfd_c::get_start_demo_idx() {
/* 000009AC-00000A28 .text check_fin__12daObjVgnfd_cFv */
BOOL daObjVgnfd_c::check_fin() {
/* Nonmatching */
s32 i;
BOOL ret = TRUE;
for (s32 i = 0; i < (s32)ARRAY_SIZE(M_door_ev_table); i++) {
if (!dComIfGs_isEventBit(M_door_ev_table[i])) {
for (i = 0; i < (s32)ARRAY_SIZE(M_door_ev_table); i++) {
if (!check_ev_init(i)) {
ret = FALSE;
break;
}
@@ -274,7 +280,6 @@ void daObjVgnfd_c::set_timer() {
/* 00000BA0-00001298 .text _execute__12daObjVgnfd_cFv */
bool daObjVgnfd_c::_execute() {
/* Nonmatching */
BOOL done = FALSE;
switch (mState) {
@@ -308,7 +313,7 @@ bool daObjVgnfd_c::_execute() {
if (dComIfGp_evmng_getIsAddvance(mStaffId)) {
switch (actIdx) {
case ACT_WAIT0:
dComIfGs_onEventBit(M_door_ev_table[M_demo_idx]);
on_door_ev(M_demo_idx);
set_timer();
break;
case ACT_WAIT1:
@@ -400,9 +405,9 @@ bool daObjVgnfd_c::_execute() {
mTimer--;
switch (actIdx) {
case ACT_WAIT0:
case ACT_BURST:
break;
case ACT_WAIT0:
case ACT_GANNON:
case ACT_VIB0:
case ACT_VIB1:
+2 -4
View File
@@ -88,10 +88,8 @@ void daPy_py_c::setDoButtonQuake() {
onNoResetFlg0(daPyFlg0_UNK200000);
mQuakeTimer = 60;
// u8 temp[4] = {0x00, 0x10, 0xFF, 0xEE}; // Doesn't match
u32 temp2 = 0x0010FFEE;
u8* temp = (u8*)&temp2;
dComIfGp_getVibration().StartQuake(temp, 0, 1, cXyz(0.0f, 1.0f, 0.0f));
u32 pattern = 0x0010FFEE;
dComIfGp_getVibration().StartQuake((u8*)&pattern, 0, 1, cXyz(0.0f, 1.0f, 0.0f));
}
/* 80102D90-80102E18 .text stopDoButtonQuake__9daPy_py_cFi */
+1 -1
View File
@@ -4358,7 +4358,7 @@ BOOL daShip_c::createHeap() {
return FALSE;
}
if (pModel->setSkinDeform(mSkinDeform, 1)) {
if (pModel->setSkinDeform(mSkinDeform, 1) != J3DErrType_Success) {
return FALSE;
}
}
+7 -7
View File
@@ -230,7 +230,7 @@ BOOL daTag_Event_c::actionReady() {
} else if (swbit != 0xFF && dComIfGs_isSwitch(swbit, fopAcM_GetRoomNo(this))) {
setActio(ACTION_WAIT);
} else {
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo(), 0xFFFF, 0, 1);
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo());
if (cancelShutter()) {
dComIfGp_event_onEventFlag(1);
}
@@ -253,7 +253,7 @@ BOOL daTag_Event_c::actionHunt() {
setActio(ACTION_WAIT);
} else if (sp20.abs2XZ() < (scale.x*scale.x) * (100.0f*100.0f) && sp20.y <= scale.y * 100.0f) {
setActio(ACTION_READY);
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo(), 0xFFFF, 0, 1);
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo());
if (cancelShutter()) {
dComIfGp_event_onEventFlag(1);
}
@@ -335,7 +335,7 @@ BOOL daTag_Event_c::actionSpeReady() {
actionSpeEvent();
dComIfGs_onEventBit(0x2740);
} else {
fopAcM_orderOtherEventId(this, mEventIdx, 0xFF, 0xFFFF, 0, 1);
fopAcM_orderOtherEventId(this, mEventIdx);
}
return TRUE;
}
@@ -349,7 +349,7 @@ BOOL daTag_Event_c::actionSpeHunt() {
}
if (sp20.abs2XZ() < (scale.x*scale.x) * (100.0f*100.0f) && sp20.y <= scale.y * 100.0f) {
setActio(ACTION_SPE_READY);
fopAcM_orderOtherEventId(this, mEventIdx, 0xFF, 0xFFFF, 0, 1);
fopAcM_orderOtherEventId(this, mEventIdx);
}
return TRUE;
}
@@ -398,7 +398,7 @@ BOOL daTag_Event_c::actionMjReady() {
} else {
mEventIdx = dComIfGp_evmng_getEventIdx("BEAST_GATE2", getEventNo());
}
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo(), 0xFFFF, 0, 1);
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo());
if (cancelShutter()) {
dComIfGp_event_onEventFlag(1);
}
@@ -425,7 +425,7 @@ BOOL daTag_Event_c::actionMjHunt() {
mEventIdx = dComIfGp_evmng_getEventIdx("BEAST_GATE2", getEventNo());
}
setActio(ACTION_MJ_READY);
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo(), 0xFFFF, 0, 1);
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo());
if (cancelShutter()) {
dComIfGp_event_onEventFlag(1);
}
@@ -446,7 +446,7 @@ BOOL daTag_Event_c::actionHunt2() {
m294--;
} else {
setActio(ACTION_READY);
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo(), 0xFFFF, 0, 1);
fopAcM_orderOtherEventId(this, mEventIdx, getEventNo());
}
} else {
m294 = 65;
+1 -6
View File
@@ -168,7 +168,6 @@ void daToge_c::set_mtx() {
mpModel->setBaseScale(scale);
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
mDoMtx_stack_c::YrotM(current.angle.y);
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
mDoMtx_copy(mDoMtx_stack_c::get(), mtx1);
}
@@ -201,11 +200,7 @@ BOOL daToge_c::_execute() {
toge_move();
mpModel->setBaseScale(scale);
mDoMtx_stack_c::transS(current.pos);
mDoMtx_stack_c::YrotM(current.angle.y);
mpModel->setBaseTRMtx(mDoMtx_stack_c::get());
mDoMtx_copy(mDoMtx_stack_c::get(), mtx1);
set_mtx();
mpBgW2->Move();