diff options
| author | Max Roncace <me@caseif.net> | 2026-02-28 15:13:57 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-02-28 12:13:57 -0800 |
| commit | ebe7c7aabc32e0842aaaf1c5cf1ab6cf5737417f (patch) | |
| tree | 25fb02da5b81be6ed97f3eccc2964a076d49daf4 /src/d/actor/d_a_obj_fallobj.cpp | |
| parent | c900a043b89786d5e594ec883d9acd92e0db6bc7 (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_fallobj.cpp')
| -rw-r--r-- | src/d/actor/d_a_obj_fallobj.cpp | 49 |
1 files changed, 21 insertions, 28 deletions
diff --git a/src/d/actor/d_a_obj_fallobj.cpp b/src/d/actor/d_a_obj_fallobj.cpp index 6900391d26..f386a649cc 100644 --- a/src/d/actor/d_a_obj_fallobj.cpp +++ b/src/d/actor/d_a_obj_fallobj.cpp @@ -125,7 +125,7 @@ int daObjFallObj_c::create1st() { if (phase == cPhs_ERROR_e) { return phase; } - + #if DEBUG // Falling obj l_HIO.entryHIO("落下OBJ"); @@ -134,7 +134,6 @@ int daObjFallObj_c::create1st() { return phase; } -// TODO: Debug Nonmatching / Fakematch (bVar1) int daObjFallObj_c::Execute(Mtx** i_mtx) { cXyz cStack_d8(0.0f, 150.0f, 160.0f + KREG_F(0)); @@ -147,38 +146,32 @@ int daObjFallObj_c::Execute(Mtx** i_mtx) { daPy_py_c* player = daPy_getPlayerActorClass(); - f32 dVar12 = std::fabs(player->current.pos.y - cStack_d8.y); - f32 dVar13 = cStack_d8.absXZ(player->current.pos); - f32 dVar14 = player->current.pos.abs(cStack_d8); + f32 var_f31 = std::fabs(player->current.pos.y - cStack_d8.y); + f32 var_f30 = cStack_d8.absXZ(player->current.pos); + f32 var_f29 = player->current.pos.abs(cStack_d8); dBgS_LinChk linChk; linChk.Set(&player->eyePos, &attention_info.position, this); - bool bVar1 = false; - + //TODO: fakematch #if DEBUG - int check3 = 0; - int check2 = 0; - int check1 = 0; - if (!dComIfG_Bgsp().LineCross(&linChk) && !checkHang2()) { - check1 = 1; - } - if (check1 && dVar12 - KREG_F(4) < dVar13) { - check2 = 1; - } - if (check2 && dVar14 < 2150.0f - KREG_F(5)) { - check3 = 1; - } - if (check3 && mAction == ACTION_WAIT) { - bVar1 = true; - } + bool temp = !dComIfG_Bgsp().LineCross(&linChk) && + !checkHang2() && + var_f31 - KREG_F(4) < var_f30 && + var_f29 < 2150.0f - KREG_F(5) && + mAction == ACTION_WAIT; #else - if (!dComIfG_Bgsp().LineCross(&linChk) && !checkHang2() && dVar12 - KREG_F(4) < dVar13 && dVar14 < 2150.0f - KREG_F(5) && mAction == ACTION_WAIT) { - bVar1 = true; + bool temp = false; + if (!dComIfG_Bgsp().LineCross(&linChk) && + !checkHang2() && + var_f31 - KREG_F(4) < var_f30 && + var_f29 < 2150.0f - KREG_F(5) && + mAction == ACTION_WAIT) { + temp = true; } #endif - if (((bool) bVar1) != 0) { + if (temp) { attention_info.distances[fopAc_attn_BATTLE_e] = 0x22; attention_info.flags |= fopAc_AttnFlag_BATTLE_e; } else { @@ -217,7 +210,7 @@ void daObjFallObj_c::action() { action_follow_fall(); break; } - + if (mVibrationOn && !field_0x5e4) { dComIfGp_getVibration().StopQuake(0x1f); mVibrationOn = false; @@ -344,7 +337,7 @@ void daObjFallObj_c::action_follow_fall() { bool daObjFallObj_c::checkHang() { bool rv = false; daPy_py_c* player = daPy_getPlayerActorClass(); - + u32 status = dComIfGp_checkPlayerStatus1(0, 0x2000000); if (status && fopAcM_searchPlayerDistanceXZ(this) < 250.0f && player->current.pos.y > current.pos.y - 100.0f && @@ -395,7 +388,7 @@ bool daObjFallObj_c::checkHang2() { return false; } } - + return false; } |
