From e095de7b0177b868308f46fee4e0a869fd5089d0 Mon Sep 17 00:00:00 2001 From: LagoLunatic Date: Mon, 29 Dec 2025 12:59:43 -0500 Subject: [PATCH] Fix d_a_obj_gnnbtltaki and d_a_obj_gnndemotakie create_heap --- configure.py | 4 +-- include/d/actor/d_a_obj_gnnbtltaki.h | 4 +-- include/d/actor/d_a_obj_gnndemotakie.h | 1 + src/d/actor/d_a_obj_gnnbtltaki.cpp | 45 +++++++++----------------- src/d/actor/d_a_obj_gnndemotakie.cpp | 16 ++++----- 5 files changed, 28 insertions(+), 42 deletions(-) diff --git a/configure.py b/configure.py index 22f2216da..af5c07aa7 100755 --- a/configure.py +++ b/configure.py @@ -1703,8 +1703,8 @@ config.libs = [ ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_ganonbed"), ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_gaship"), ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_gaship2"), - ActorRel(Matching, "d_a_obj_gnnbtltaki"), - ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_gnndemotakie"), + ActorRel(Matching, "d_a_obj_gnnbtltaki"), + ActorRel(Matching, "d_a_obj_gnndemotakie"), ActorRel(NonMatching, "d_a_obj_gnndemotakis"), ActorRel(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d_a_obj_gong"), ActorRel(NonMatching, "d_a_obj_gtaki"), diff --git a/include/d/actor/d_a_obj_gnnbtltaki.h b/include/d/actor/d_a_obj_gnnbtltaki.h index 70593920d..e6cf59c58 100644 --- a/include/d/actor/d_a_obj_gnnbtltaki.h +++ b/include/d/actor/d_a_obj_gnnbtltaki.h @@ -2,6 +2,7 @@ #define D_A_OBJ_GNNBTLTAKI_H #include "f_op/f_op_actor.h" +#include "m_Do/m_Do_ext.h" class daObjGnnbtaki_c : public fopAc_ac_c { public: @@ -14,8 +15,7 @@ public: bool _draw(); static const char M_arcname[]; public: - /* Place member variables here */ - /* 0x290 */ J3DModel* mJ3DModel; + /* 0x290 */ J3DModel* mpModel; /* 0x294 */ request_of_phase_process_class mPhase; /* 0x29C */ mDoExt_btkAnm mBtkAnm; /* 0x2B0 */ u8 field_0x2B0; diff --git a/include/d/actor/d_a_obj_gnndemotakie.h b/include/d/actor/d_a_obj_gnndemotakie.h index a7f4cf423..5e9cf797f 100644 --- a/include/d/actor/d_a_obj_gnndemotakie.h +++ b/include/d/actor/d_a_obj_gnndemotakie.h @@ -2,6 +2,7 @@ #define D_A_OBJ_GNNDEMOTAKIE_H #include "f_op/f_op_actor.h" +#include "m_Do/m_Do_ext.h" class daObjGnntakie_c : public fopAc_ac_c { public: diff --git a/src/d/actor/d_a_obj_gnnbtltaki.cpp b/src/d/actor/d_a_obj_gnnbtltaki.cpp index a68e12516..6ea9d72d2 100644 --- a/src/d/actor/d_a_obj_gnnbtltaki.cpp +++ b/src/d/actor/d_a_obj_gnnbtltaki.cpp @@ -6,7 +6,7 @@ #include "d/actor/d_a_obj_gnnbtltaki.h" #include "d/d_procname.h" #include "d/d_priority.h" -#include "d/res/res_kamome.h" +#include "d/res/res_gnnbtltaki.h" const char daObjGnnbtaki_c::M_arcname[] = "Gnnbtltaki"; @@ -18,29 +18,18 @@ BOOL daObjGnnbtaki_c::solidHeapCB(fopAc_ac_c *i_this) { /* 00000098-000001F4 .text create_heap__15daObjGnnbtaki_cFv */ BOOL daObjGnnbtaki_c::create_heap() { -#if VERSION == VERSION_DEMO J3DModelData* mdl_data; J3DAnmTextureSRTKey* btk_data; BOOL ret = FALSE; - mdl_data = (J3DModelData*)dComIfG_getObjectRes(M_arcname, 4); -#else - BOOL ret = FALSE; - J3DModelData *mdl_data = static_cast(dComIfG_getObjectRes(M_arcname, 4)); -#endif - JUT_ASSERT(0x5A, mdl_data != NULL); + mdl_data = static_cast(dComIfG_getObjectRes(M_arcname, GNNBTLTAKI_BDL_GNN_BTL_TAKI)); + JUT_ASSERT(90, mdl_data != NULL); if (mdl_data != NULL) { - mJ3DModel = mDoExt_J3DModel__create(mdl_data, 0, 0x11020203); - if (mJ3DModel != NULL) { -#if VERSION == VERSION_DEMO - btk_data = (J3DAnmTextureSRTKey*)dComIfG_getObjectRes(M_arcname, 7); -#else - J3DAnmTextureSRTKey *btk_data = static_cast(dComIfG_getObjectRes(M_arcname, 7)); -#endif - JUT_ASSERT(0x61, btk_data != NULL); - if (btk_data != NULL) { - if (mBtkAnm.init(mdl_data, btk_data, TRUE, J3DFrameCtrl::EMode_LOOP, 1.0, 0, -1, false, FALSE)) { - ret = TRUE; - } + mpModel = mDoExt_J3DModel__create(mdl_data, 0, 0x11020203); + if (mpModel != NULL) { + btk_data = static_cast(dComIfG_getObjectRes(M_arcname, GNNBTLTAKI_BTK_GNN_BTL_TAKI)); + JUT_ASSERT(97, btk_data != NULL); + if (btk_data != NULL && mBtkAnm.init(mdl_data, btk_data, TRUE, J3DFrameCtrl::EMode_LOOP, 1.0, 0, -1, false, FALSE)) { + ret = TRUE; } } } @@ -58,7 +47,7 @@ cPhs_State daObjGnnbtaki_c::_create() { if (field_0x2B1 == 0xF) { field_0x2B1 = 0; } - cullMtx = mJ3DModel->getBaseTRMtx(); + cullMtx = mpModel->getBaseTRMtx(); init_mtx(); mBtkAnm.getFrameCtrl()->setFrame(mBtkAnm.getStartFrame()); if (field_0x2B1 == 1) { @@ -76,17 +65,13 @@ cPhs_State daObjGnnbtaki_c::_create() { /* 000003EC-0000041C .text _delete__15daObjGnnbtaki_cFv */ bool daObjGnnbtaki_c::_delete() { -#if VERSION == VERSION_DEMO - dComIfG_deleteObjectRes(M_arcname); -#else - dComIfG_resDelete(&mPhase, M_arcname); -#endif + dComIfG_resDeleteDemo(&mPhase, M_arcname); return true; } /* 0000041C-0000043C .text init_mtx__15daObjGnnbtaki_cFv */ void daObjGnnbtaki_c::init_mtx() { - mJ3DModel->setBaseScale(scale); + mpModel->setBaseScale(scale); } /* 0000043C-00000548 .text _execute__15daObjGnnbtaki_cFv */ @@ -111,9 +96,9 @@ bool daObjGnnbtaki_c::_execute() { bool daObjGnnbtaki_c::_draw() { if (field_0x2B0 != NULL) { g_env_light.settingTevStruct(TEV_TYPE_BG3, ¤t.pos, &tevStr); - g_env_light.setLightTevColorType(mJ3DModel, &tevStr); - mBtkAnm.entry(mJ3DModel->getModelData()); - mDoExt_modelUpdateDL(mJ3DModel); + g_env_light.setLightTevColorType(mpModel, &tevStr); + mBtkAnm.entry(mpModel->getModelData()); + mDoExt_modelUpdateDL(mpModel); } return true; } diff --git a/src/d/actor/d_a_obj_gnndemotakie.cpp b/src/d/actor/d_a_obj_gnndemotakie.cpp index fc85bdc4a..57bdb37b9 100644 --- a/src/d/actor/d_a_obj_gnndemotakie.cpp +++ b/src/d/actor/d_a_obj_gnndemotakie.cpp @@ -18,18 +18,18 @@ BOOL daObjGnntakie_c::solidHeapCB(fopAc_ac_c* a_this) { /* 00000098-000001F4 .text create_heap__15daObjGnntakie_cFv */ BOOL daObjGnntakie_c::create_heap() { + J3DModelData* mdl_data; + J3DAnmTextureSRTKey* btk_data; BOOL ret = FALSE; - J3DModelData* mdl_data = static_cast(dComIfG_getObjectRes(M_arcname, GNNDEMOTAKIE_BDL_GNN_DEMO_TAKI_E)); - JUT_ASSERT(0x5A, mdl_data != NULL); + mdl_data = static_cast(dComIfG_getObjectRes(M_arcname, GNNDEMOTAKIE_BDL_GNN_DEMO_TAKI_E)); + JUT_ASSERT(90, mdl_data != NULL); if (mdl_data != NULL) { mpModel = mDoExt_J3DModel__create(mdl_data, 0, 0x11020203); if (mpModel != NULL) { - J3DAnmTextureSRTKey* btk_data = static_cast(dComIfG_getObjectRes(M_arcname, GNNDEMOTAKIE_BTK_GNN_DEMO_TAKI_E)); - JUT_ASSERT(0x61, btk_data != NULL); - if (btk_data != NULL) { - if (mpBtkAnm.init(mdl_data, btk_data, true, J3DFrameCtrl::EMode_LOOP, 1.0f, 0, -1, false, FALSE)) { - ret = TRUE; - } + btk_data = static_cast(dComIfG_getObjectRes(M_arcname, GNNDEMOTAKIE_BTK_GNN_DEMO_TAKI_E)); + JUT_ASSERT(97, btk_data != NULL); + if (btk_data != NULL && mpBtkAnm.init(mdl_data, btk_data, true, J3DFrameCtrl::EMode_LOOP, 1.0f, 0, -1, false, FALSE)) { + ret = TRUE; } } }