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
+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: