From 264ee5d6e1cacf0c3bae2dd1a83fe15052d35b94 Mon Sep 17 00:00:00 2001 From: LagoLunatic Date: Wed, 18 Jun 2025 19:29:02 -0400 Subject: [PATCH] Clean up some inlines and field names --- include/d/actor/d_a_player_main.h | 57 +++++++++++++++------ include/d/d_bg_s_acch.h | 10 ++-- src/d/actor/d_a_player_main.cpp | 9 ++-- src/d/actor/d_a_player_particle.inc | 77 ++++++++++++++--------------- src/d/d_bg_s_acch.cpp | 26 +++++----- 5 files changed, 100 insertions(+), 79 deletions(-) diff --git a/include/d/actor/d_a_player_main.h b/include/d/actor/d_a_player_main.h index ebb844c8f..37c913983 100644 --- a/include/d/actor/d_a_player_main.h +++ b/include/d/actor/d_a_player_main.h @@ -96,10 +96,11 @@ public: void setID(s32 id) { mId = id; } s32 getID() const { return mId; } void setAngle(csXyz* angle) { mAngle = *angle; } - const csXyz& getAngle() { return mAngle; } + csXyz& getAngle() { return mAngle; } void setPos(const cXyz* pos) { mPos = *pos; } - const cXyz& getPos() { return mPos; } + cXyz& getPos() { return mPos; } +private: /* 0x00 */ dPa_smokeEcallBack mSmokeCb; /* 0x20 */ dPa_followEcallBack mFollowCb; /* 0x34 */ cXyz mPos; @@ -128,7 +129,7 @@ public: } } -public: +protected: /* 0x4 */ BOOL mAlphaOutFlg; /* 0x8 */ JPABaseEmitter* mpEmitter; }; // Size: 0xC @@ -137,8 +138,12 @@ class daPy_waterDropPcallBack_c : public JPACallBackBase2(this); J3DMaterialAnm::calc(mat); @@ -11131,7 +11132,7 @@ void daPy_lk_c::checkRoofRestart() { } #endif - f32 dVar9 = mAcch.m_roof_y; + f32 dVar9 = mAcch.GetRoofHeight(); if (dVar9 > mAcch.GetGroundH()) { f32 dVar10 = mHeadTopPos.y - 10.0f; f32 dVar8 = 10.0f + current.pos.y; @@ -11730,11 +11731,7 @@ BOOL daPy_lk_c::playerDelete() { mFootEffect[i].getSmokeCallBack()->remove(); mFootEffect[i].getOtherCallBack()->remove(); } - if (mFanSwingCb.mpEmitter) { - mFanSwingCb.mpEmitter->quitImmortalEmitter(); - mFanSwingCb.mpEmitter->setEmitterCallBackPtr(NULL); - mFanSwingCb.mpEmitter = NULL; - } + mFanSwingCb.deleteCallBack(); m338C.end(); m33A8.end(); m3280.end(); diff --git a/src/d/actor/d_a_player_particle.inc b/src/d/actor/d_a_player_particle.inc index 9aa4d019c..d50a9799e 100644 --- a/src/d/actor/d_a_player_particle.inc +++ b/src/d/actor/d_a_player_particle.inc @@ -25,7 +25,7 @@ /* 8012901C-80129034 .text setup__24daPy_swimTailEcallBack_cFP14JPABaseEmitterPC4cXyzPC5csXyzSc */ void daPy_swimTailEcallBack_c::setup(JPABaseEmitter* emitter, const cXyz* pos, const csXyz* angle, s8) { mpEmitter = emitter; - field_0x04 = false; + mbEnd = false; field_0x20 = angle; field_0x05 = false; } @@ -34,13 +34,13 @@ void daPy_swimTailEcallBack_c::setup(JPABaseEmitter* emitter, const cXyz* pos, c void daPy_swimTailEcallBack_c::getMaxWaterY(JGeometry::TVec3* pos) { if (daSea_ChkArea(pos->x, pos->z)) { pos->y = daSea_calcWave(pos->x, pos->z) + 2.0f; - if (field_0x10 > pos->y) { - pos->y = field_0x10 + 2.0f; + if (mWaterFlatY > pos->y) { + pos->y = mWaterFlatY + 2.0f; } - } else if (field_0x10 != -G_CM3D_F_INF) { - pos->y = field_0x10 + 2.0f; + } else if (mWaterFlatY != -G_CM3D_F_INF) { + pos->y = mWaterFlatY + 2.0f; } else { - pos->y = field_0x0C; + pos->y = mWaterY; } } @@ -62,7 +62,7 @@ void daPy_swimTailEcallBack_c::execute(JPABaseEmitter* emitter) { dKy_get_seacolor(&ambColor, &difColor); emitter->setGlobalPrmColor(ambColor.r, ambColor.g, ambColor.b); - if (field_0x04) { + if (mbEnd) { s16 sp8 = emitter->getGlobalAlpha(); cLib_chaseS(&sp8, 0, 0x14); emitter->setGlobalAlpha(sp8); @@ -84,10 +84,10 @@ void daPy_swimTailEcallBack_c::execute(JPABaseEmitter* emitter) { emitter->getGlobalTranslation(sp20); getMaxWaterY(&sp20); emitter->setGlobalTranslation(sp20); - cLib_chaseF(&field_0x08, 0.0f, 0.08f); + cLib_chaseF(&mSpeedRate, 0.0f, 0.08f); } - emitter->setDirectionalSpeed(1.0f + 12.0f * field_0x08); + emitter->setDirectionalSpeed(1.0f + 12.0f * mSpeedRate); if (field_0x05) { emitter->setDirection(right_dir); @@ -347,7 +347,7 @@ void daPy_fanSwingEcallBack_c::execute(JPABaseEmitter* emitter) { /* 80129E9C-80129F48 .text execute__25daPy_waterDropPcallBack_cFP14JPABaseEmitterP15JPABaseParticle */ void daPy_waterDropPcallBack_c::execute(JPABaseEmitter* emitter, JPABaseParticle* ptcl) { - if (field_0x4) { + if (mbWaterMark) { JGeometry::TVec3 ptclPos; ptcl->getGlobalPosition(ptclPos); @@ -651,35 +651,29 @@ void daPy_lk_c::setWaterRipple() { } if (checkModeFlg(ModeFlg_SWIM)) { - if (!mSwimTailEcallBack[0].field_0x04) { - mSwimTailEcallBack[0].field_0x08 = std::fabsf(mVelocity / mMaxNormalSpeed); + if (!mSwimTailEcallBack[0].getEnd()) { + mSwimTailEcallBack[0].setSpeedRate(std::fabsf(mVelocity / mMaxNormalSpeed)); } - if (!mSwimTailEcallBack[1].field_0x04) { - mSwimTailEcallBack[1].field_0x08 = std::fabsf(mVelocity / mMaxNormalSpeed); + if (!mSwimTailEcallBack[1].getEnd()) { + mSwimTailEcallBack[1].setSpeedRate(std::fabsf(mVelocity / mMaxNormalSpeed)); } cXyz local_1c; cMtx_multVec(mpCLModel->getAnmMtx(15), &wave_offset, &local_1c); - cXyz local_20; - cXyz local_28; local_1c.y = m35D0; f32 cos = cM_scos(shape_angle.y) * 5.0f; f32 sin = cM_ssin(shape_angle.y) * 5.0f; - local_20.x = local_1c.x + cos; - local_20.y = local_1c.y; - local_20.z = local_1c.z - sin; - local_28.x = local_1c.x - cos; - local_28.y = local_1c.y; - local_28.z = local_1c.z + sin; - mSwimTailEcallBack[0].mPos.set(local_20); - mSwimTailEcallBack[0].field_0x0C = m35D0 + 2.0f; - mSwimTailEcallBack[0].field_0x10 = mAcch.m_wtr.GetHeight(); - mSwimTailEcallBack[1].mPos.set(local_28); - mSwimTailEcallBack[1].field_0x0C = m35D0 + 2.0f; - mSwimTailEcallBack[1].field_0x10 = mAcch.m_wtr.GetHeight(); + cXyz local_20(local_1c.x + cos, local_1c.y, local_1c.z - sin); + cXyz local_28(local_1c.x - cos, local_1c.y, local_1c.z + sin); + mSwimTailEcallBack[0].setPos(local_20); + mSwimTailEcallBack[0].setWaterY(m35D0 + 2.0f); + mSwimTailEcallBack[0].setWaterFlatY(mAcch.m_wtr.GetHeight()); + mSwimTailEcallBack[1].setPos(local_28); + mSwimTailEcallBack[1].setWaterY(m35D0 + 2.0f); + mSwimTailEcallBack[1].setWaterFlatY(mAcch.m_wtr.GetHeight()); cXyz local_40; cMtx_multVec(mpCLModel->getAnmMtx(15), &swim_offset, &local_40); @@ -808,7 +802,7 @@ void daPy_lk_c::setFootEffectType(int effectID, cXyz* i_pos, int param_2, int pa footEffect->setAngle(&angle); if (effectID == dPa_name::ID_COMMON_0023) { if (checkNoResetFlg0(daPyFlg0_UNK80) && m35D0 > 10.0f + i_pos->y) { - footEffect->mPos.y = m35D0 - 10.0f; + footEffect->getPos().y = m35D0 - 10.0f; } } else if (mCurProc == daPyProc_CUT_ROLL_e && effectID == dPa_name::ID_COMMON_2022) { effectID = -2; @@ -897,7 +891,7 @@ void daPy_lk_c::setFootMark(cXyz* i_pos) { fopKyM_create(PROC_WATER_MARK, (shape_angle.y << 16) | 2, &pos, &scale, NULL); } - if (m336C.mpEmitter != NULL) { + if (m336C.getEmitter() != NULL) { fopKyM_create(PROC_WATER_MARK, shape_angle.y << 16, i_pos, &scale); } } @@ -931,7 +925,7 @@ void daPy_lk_c::setFootEffect() { m3410.setAngle(0, current.angle.y + 0x8000, 0); - if (m3410.mpEmitter == NULL) { + if (m3410.getEmitter() == NULL) { GXColor amb, dif; dKy_get_seacolor(&amb, &dif); @@ -1071,7 +1065,7 @@ void daPy_lk_c::setSwimTail() { if (mSwimTailEcallBack[0].getEmitter() == NULL) { dComIfGp_particle_setShipTail(dPa_name::ID_COMMON_003A, &mSwimTailEcallBack[0].getPos(), ¤t.angle, &scale, 0xFF, &mSwimTailEcallBack[0]); - mSwimTailEcallBack[0].field_0x05 = true; + mSwimTailEcallBack[0].onRightFlg(); } if (mSwimTailEcallBack[1].getEmitter() == NULL) { @@ -1093,20 +1087,20 @@ void daPy_lk_c::setCutWaterSplash() { void daPy_lk_c::setSwimWaterDrop(daPy_waterDropEcallBack_c* callBack) { f32 tmp = m35D0 + 10.0f; if (checkNoResetFlg1(daPy_lk_c::daPyFlg1_WATER_DROP) || !checkNoResetFlg0(daPy_lk_c::daPyFlg0_UNK80) || (callBack->getPos().y > tmp && !checkModeFlg(ModeFlg_SWIM))) { - if (callBack->getEmitter() == NULL && (callBack->field_0x1C || checkNoResetFlg1(daPy_lk_c::daPyFlg1_WATER_DROP))) { + if (callBack->getEmitter() == NULL && (callBack->checkReady() || checkNoResetFlg1(daPy_lk_c::daPyFlg1_WATER_DROP))) { JPABaseEmitter* emitter = dComIfGp_particle_setP1(dPa_name::ID_COMMON_0038, &callBack->getPos(), NULL, NULL, 0xFF, callBack); if (emitter != NULL) { - emitter->setParticleCallBackPtr(&daPy_waterDropEcallBack_c::m_pcallback); + emitter->setParticleCallBackPtr(daPy_waterDropEcallBack_c::getPcallBack()); } } - callBack->field_0x1C = FALSE; + callBack->offReady(); offNoResetFlg1(daPy_lk_c::daPyFlg1_WATER_DROP); } else if (checkNoResetFlg0(daPy_lk_c::daPyFlg0_UNK80) && callBack->getPos().y < m35D0) { callBack->end(); if (mCurProc != daPyProc_VOMIT_WAIT_e) { - callBack->field_0x1C = TRUE; + callBack->onReady(); } } } @@ -1122,9 +1116,9 @@ void daPy_lk_c::setWaterDrop() { m336C.setPos(&tmp); if (checkModeFlg(ModeFlg_00000001)) { - daPy_waterDropEcallBack_c::m_pcallback.field_0x4 = TRUE; + daPy_waterDropEcallBack_c::getPcallBack()->onWaterMark(); } else { - daPy_waterDropEcallBack_c::m_pcallback.field_0x4 = FALSE; + daPy_waterDropEcallBack_c::getPcallBack()->offWaterMark(); } if (daPy_dmEcallBack_c::checkFlame()) { @@ -1135,7 +1129,12 @@ void daPy_lk_c::setWaterDrop() { return; } - if (dKyr_player_overhead_bg_chk() && dStage_stagInfo_GetSTType(dComIfGp_getStageStagInfo()) != dStageType_MISC_e && mCurProc != daPyProc_DEMO_LAST_COMBO_e && mAcch.m_roof_y == G_CM3D_F_INF) { + if ( + dKyr_player_overhead_bg_chk() && + dStage_stagInfo_GetSTType(dComIfGp_getStageStagInfo()) != dStageType_MISC_e && + mCurProc != daPyProc_DEMO_LAST_COMBO_e && + mAcch.GetRoofHeight() == G_CM3D_F_INF + ) { if (m3460[0].getEmitter() == NULL) { m3460[0].makeEmitter(dPa_name::ID_COMMON_0432, mpCLModel->getAnmMtx(0x0E), ¤t.pos, NULL); } diff --git a/src/d/d_bg_s_acch.cpp b/src/d/d_bg_s_acch.cpp index c442ed504..05399f6da 100644 --- a/src/d/d_bg_s_acch.cpp +++ b/src/d/d_bg_s_acch.cpp @@ -65,10 +65,10 @@ dBgS_Acch::dBgS_Acch() { field_0xb8 = 0.0f; m_tbl_size = 0; pm_acch_cir = NULL; - m_roof_y = 0.0f; - m_roof_crr_height = 0.0f; m_roof_height = 0.0f; - m_water_check_offset = 200.0f; + m_roof_crr_height = 0.0f; + field_0xC4 = 0.0f; + m_wtr_check_offset = 200.0f; pm_angle = NULL; pm_shape_angle = NULL; m_my_ac = NULL; @@ -156,17 +156,17 @@ void dBgS_Acch::GroundCheck(dBgS& i_bgs) { /* 800A305C-800A313C .text GroundRoofProc__9dBgS_AcchFR4dBgS */ void dBgS_Acch::GroundRoofProc(dBgS& i_bgs) { if (m_ground_h != -G_CM3D_F_INF) { - if (field_0xb8 < m_roof_height && m_roof_height < pm_pos->y) { - pm_pos->y = m_roof_height; + if (field_0xb8 < field_0xC4 && field_0xC4 < pm_pos->y) { + pm_pos->y = field_0xC4; } if (!(m_flags & ROOF_NONE)) { - if (m_ground_h >= m_roof_y) { + if (m_ground_h >= m_roof_height) { m_roof.SetExtChk(*this); ClrRoofHit(); cXyz pos = *pm_pos; m_roof.SetPos(pos); - m_roof_y = i_bgs.RoofChk(&m_roof); + m_roof_height = i_bgs.RoofChk(&m_roof); } } } @@ -248,15 +248,15 @@ void dBgS_Acch::CrrPos(dBgS& i_bgs) { LineCheck(i_bgs); } - m_roof_height = G_CM3D_F_INF; + field_0xC4 = G_CM3D_F_INF; if (!(m_flags & ROOF_NONE)) { m_roof.SetExtChk(*(cBgS_Chk*)this); ClrRoofHit(); cXyz roofPos = *pm_pos; m_roof.SetPos(roofPos); - m_roof_y = i_bgs.RoofChk(&m_roof); - if (m_roof_y != G_CM3D_F_INF && pm_pos->y + m_roof_crr_height > m_roof_y) { - m_roof_height = m_roof_y - m_roof_crr_height; + m_roof_height = i_bgs.RoofChk(&m_roof); + if (m_roof_height != G_CM3D_F_INF && pm_pos->y + m_roof_crr_height > m_roof_height) { + field_0xC4 = m_roof_height - m_roof_crr_height; SetRoofHit(); } } @@ -265,8 +265,8 @@ void dBgS_Acch::CrrPos(dBgS& i_bgs) { ClrGroundFind(); GroundCheck(i_bgs); GroundRoofProc(i_bgs); - } else if (m_roof_height < pm_pos->y) { - pm_pos->y = m_roof_height; + } else if (field_0xC4 < pm_pos->y) { + pm_pos->y = field_0xC4; } if (!(m_flags & WATER_NONE)) {