summaryrefslogtreecommitdiff
path: root/src/d/actor/d_a_obj_katatsumuri.cpp
diff options
context:
space:
mode:
authorMax Roncace <me@caseif.net>2026-02-28 15:13:57 -0500
committerGitHub <noreply@github.com>2026-02-28 12:13:57 -0800
commitebe7c7aabc32e0842aaaf1c5cf1ab6cf5737417f (patch)
tree25fb02da5b81be6ed97f3eccc2964a076d49daf4 /src/d/actor/d_a_obj_katatsumuri.cpp
parentc900a043b89786d5e594ec883d9acd92e0db6bc7 (diff)
ShieldD: Clean up a bunch of 99% matching TUs (#3113)
* d_a_npc_ks debug code 100% * d_a_npc_rafrel debug code 100% * d_a_npc_inko minor improvements * d_a_npc_gro debug code 100% * d_a_npc_pachi_taro debug code 100% * d_a_npc_passer debug code 100% * d_a_npc_pachi_maro debug code 100% * d_a_npc_post debug code 100% * d_a_obj_bemos debug improvements * d_a_obj_scannon_ten debug code 100% * d_a_b_mgn debug code 100% * d_a_e_fb debug code 100% * d_a_e_gb debug code 100% * d_a_e_hz debug code 100% * d_a_e_cr_egg debug code 100% * d_a_e_md debug code 100% * d_a_e_wb debug code 100% * d_a_obj_mirror_6pole debug code 100% * d_a_obj_spinLift debug data fixes * d_a_obj_pdwall debug data fixes * d_a_obj_ss_drink debug code almost matching * d_a_obj_poFire debug code 100% * d_a_obj_picture debug code 100% * d_a_obj_dust debug code 100% * d_a_obj_fallobj debug code 100% * d_a_obj_itamato debug code almost matching * d_a_obj_syRock debug code 100% * d_a_obj_katatsumuri debug code 100% * d_a_obj_wood_statue debug code 100% * d_a_obj_lv6egate debug code 100% * d_a_tag_qs minor debug symbol fixes * d_a_obj_twGate debug code 100% * d_a_obj_lv6SwGate debug code 100% * d_a_obj_lv6swturn debug code 100% * d_a_obj_lv6Tenbin debug code 100% * d_a_obj_kwheel01 debug code 100% * Fix RTTI order regression (cM3dGCyl vs cBgS_*)
Diffstat (limited to 'src/d/actor/d_a_obj_katatsumuri.cpp')
-rw-r--r--src/d/actor/d_a_obj_katatsumuri.cpp35
1 files changed, 29 insertions, 6 deletions
diff --git a/src/d/actor/d_a_obj_katatsumuri.cpp b/src/d/actor/d_a_obj_katatsumuri.cpp
index 9f1e3a555f..6cb86dc3e4 100644
--- a/src/d/actor/d_a_obj_katatsumuri.cpp
+++ b/src/d/actor/d_a_obj_katatsumuri.cpp
@@ -15,6 +15,18 @@
#include "m_Do/m_Do_lib.h"
#include <cstring>
+class daObj_KatHIO_c : public JORReflexible {
+public:
+ daObj_KatHIO_c();
+ virtual ~daObj_KatHIO_c() {}
+
+ void genMessage(JORMContext* ctx);
+
+ s8 field_0x4;
+ f32 mScaleFemale;
+ f32 mScaleMale;
+};
+
static u8 hio_set;
static daObj_KatHIO_c l_HIO;
@@ -25,6 +37,17 @@ daObj_KatHIO_c::daObj_KatHIO_c() {
mScaleFemale = 1.0f;
}
+#if DEBUG
+void daObj_KatHIO_c::genMessage(JORMContext* ctx) {
+ // Golden Snail
+ ctx->genLabel("黄金蟲(カタツムリ)", 0x80000001);
+ // Model scale (male)
+ ctx->genSlider("モデルスケール(オス)", &mScaleMale, 0.1f, 4.0f);
+ // Model scale (female)
+ ctx->genSlider("モデルスケール(メス)", &mScaleFemale, 0.1f, 4.0f);
+}
+#endif
+
static u8 const l_kat_itemno[2] = {
fpcNm_ITEM_M_SNAIL,
fpcNm_ITEM_F_SNAIL,
@@ -84,7 +107,7 @@ static int useHeapInit(fopAc_ac_c* i_this) {
return kat->CreateHeap();
}
-int daObjKAT_c::CreateHeap() {
+inline int daObjKAT_c::CreateHeap() {
J3DModelData* modelData = (J3DModelData*)dComIfG_getObjectRes("Kat", 9);
JUT_ASSERT(0x136, modelData != NULL);
mpMorfSO =
@@ -140,12 +163,12 @@ int daObjKAT_c::CreateHeap() {
static int daObjKAT_Create(fopAc_ac_c* i_this) {
daObjKAT_c* kat = (daObjKAT_c*)i_this;
- fpc_ProcID unused = fopAcM_GetID(i_this);
+ fopAcM_RegisterCreateID(i_this, "Obj_KAT");
return kat->create();
}
static int daObjKAT_Delete(daObjKAT_c* i_this) {
- fpc_ProcID unused = fopAcM_GetID(i_this);
+ fopAcM_RegisterDeleteID(i_this, "Obj_KAT");
i_this->Delete();
return 1;
}
@@ -623,7 +646,7 @@ void daObjKAT_c::Z_BufferChk() {
field_0x800 = ((near + far * near / projected.z) / (far - near) + 1.0f) * 16777215.0f;
}
-int daObjKAT_c::Delete() {
+inline int daObjKAT_c::Delete() {
dComIfG_resDelete(&mPhase, "Kat");
if (field_0xa70 != 0) {
hio_set = 0;
@@ -694,12 +717,12 @@ bool daObjKAT_c::CreateChk() {
return true;
}
-int daObjKAT_c::create() {
+inline int daObjKAT_c::create() {
fopAcM_ct(this, daObjKAT_c);
s32 loadResult = dComIfG_resLoad(&mPhase, "Kat");
if (loadResult == cPhs_COMPLEATE_e) {
- OS_REPORT("KAT PARAM: %x", fopAcM_GetParam(this));
+ OS_REPORT("KAT PARAM %x\n", fopAcM_GetParam(this));
field_0x808 = fopAcM_GetParam(this) & 0xf;
if (field_0x808 == 2) {
field_0x56c = 0;