From 0490fd3c84852b4751aa1867b0a07d110781cb09 Mon Sep 17 00:00:00 2001 From: LagoLunatic Date: Fri, 22 Dec 2023 21:02:23 -0500 Subject: [PATCH] more collision enums and inlines --- include/SSystem/SComponent/c_cc_d.h | 33 +++++++++++++---------------- include/d/d_bg_s.h | 2 +- include/d/d_cc_s.h | 14 ++++++++++++ src/c/c_damagereaction.cpp | 2 +- src/d/actor/d_a_agbsw0.cpp | 2 +- src/d/actor/d_a_am.cpp | 6 +++--- src/d/actor/d_a_am2.cpp | 4 ++-- src/d/actor/d_a_arrow.cpp | 6 +++--- src/d/actor/d_a_bomb.cpp | 4 ++-- src/d/actor/d_a_bomb2.cpp | 6 +++--- src/d/actor/d_a_hookshot.cpp | 2 +- src/d/actor/d_a_ib.cpp | 4 ++-- src/d/actor/d_a_item.cpp | 6 +++--- src/d/actor/d_a_lamp.cpp | 2 +- src/d/actor/d_a_nh.cpp | 2 +- src/d/actor/d_a_npc_kamome.cpp | 6 +++--- src/d/actor/d_a_npc_md.cpp | 2 +- src/d/actor/d_a_obj_barrier.cpp | 2 +- src/d/actor/d_a_obj_dragonhead.cpp | 2 +- src/d/actor/d_a_obj_hfuck1.cpp | 2 +- src/d/actor/d_a_obj_hole.cpp | 2 +- src/d/actor/d_a_obj_movebox.cpp | 4 ++-- src/d/actor/d_a_obj_mtest.cpp | 2 +- src/d/actor/d_a_obj_paper.cpp | 2 +- src/d/actor/d_a_obj_toripost.cpp | 2 +- src/d/actor/d_a_obj_zouK.cpp | 2 +- src/d/actor/d_a_player_main.cpp | 10 ++++----- src/d/actor/d_a_race_item.cpp | 6 +++--- src/d/actor/d_a_rd.cpp | 16 +++++++------- src/d/actor/d_a_swattack.cpp | 2 +- src/d/actor/d_a_swhit0.cpp | 4 ++-- src/d/actor/d_a_switem.cpp | 2 +- src/d/actor/d_a_tag_ret.cpp | 2 +- src/d/d_bg_s.cpp | 6 +++--- src/d/d_com_inf_game.cpp | 2 +- src/d/d_kankyo_rain.cpp | 13 ++---------- src/d/d_npc.cpp | 2 +- 37 files changed, 95 insertions(+), 93 deletions(-) diff --git a/include/SSystem/SComponent/c_cc_d.h b/include/SSystem/SComponent/c_cc_d.h index fe107c04e..22384acd0 100644 --- a/include/SSystem/SComponent/c_cc_d.h +++ b/include/SSystem/SComponent/c_cc_d.h @@ -49,8 +49,8 @@ enum cCcD_AtSPrm_e { /* 0x01 */ AT_SPRM_SET = 0x01, /* 0x02 */ AT_SPRM_VS_ENEMY = 0x02, /* 0x04 */ AT_SPRM_VS_PLAYER = 0x04, - /* 0x08 */ AT_SPRM_UNK8 = 0x08, // May be for interactable objects? Doesn't have inlines like enemy and player - /* 0x0E */ AT_SPRM_GRP = AT_SPRM_VS_ENEMY | AT_SPRM_VS_PLAYER | AT_SPRM_UNK8, + /* 0x08 */ AT_SPRM_VS_OTHER = 0x08, + /* 0x0E */ AT_SPRM_GRP = AT_SPRM_VS_ENEMY | AT_SPRM_VS_PLAYER | AT_SPRM_VS_OTHER, /* 0x10 */ AT_SPRM_NO_TG_HIT_INF_SET = 0x10, }; @@ -58,22 +58,21 @@ enum cCcD_TgSPrm_e { /* 0x01 */ TG_SPRM_SET = 0x01, /* 0x02 */ TG_SPRM_IS_ENEMY = 0x02, /* 0x04 */ TG_SPRM_IS_PLAYER = 0x04, - /* 0x08 */ TG_SPRM_UNK8 = 0x08, - /* 0x0E */ TG_SPRM_GRP = TG_SPRM_IS_ENEMY | TG_SPRM_IS_PLAYER | TG_SPRM_UNK8, + /* 0x08 */ TG_SPRM_IS_OTHER = 0x08, + /* 0x0E */ TG_SPRM_GRP = TG_SPRM_IS_ENEMY | TG_SPRM_IS_PLAYER | TG_SPRM_IS_OTHER, /* 0x10 */ TG_SPRM_NO_AT_HIT_INF_SET = 0x10, }; enum cCcD_CoSPrm_e { /* 0x0001 */ CO_SPRM_SET = 0x01, - /* 0x0002 */ CO_SPRM_UNK2 = 0x02, - /* 0x0004 */ CO_SPRM_UNK4 = 0x04, - /* 0x0008 */ CO_SPRM_UNK8 = 0x08, - /* 0x0010 */ CO_SPRM_UNK10 = 0x10, - /* 0x0020 */ CO_SPRM_UNK20 = 0x20, - /* 0x0040 */ CO_SPRM_UNK40 = 0x40, - /* 0x000E */ CO_SPRM_IGRP = CO_SPRM_UNK2 | CO_SPRM_UNK4 | CO_SPRM_UNK8, - /* 0x001E */ CO_SPRM_GRP = CO_SPRM_IGRP | CO_SPRM_UNK10, - /* 0x0070 */ CO_SPRM_VSGRP = CO_SPRM_UNK10 | CO_SPRM_UNK20 | CO_SPRM_UNK40, + /* 0x0002 */ CO_SPRM_IS_UNK2 = 0x02, + /* 0x0004 */ CO_SPRM_IS_UNK4 = 0x04, + /* 0x0008 */ CO_SPRM_IS_UNK8 = 0x08, + /* 0x0010 */ CO_SPRM_VS_UNK2 = 0x10, + /* 0x0020 */ CO_SPRM_VS_UNK4 = 0x20, + /* 0x0040 */ CO_SPRM_VS_UNK8 = 0x40, + /* 0x000E */ CO_SPRM_IGRP = CO_SPRM_IS_UNK2 | CO_SPRM_IS_UNK4 | CO_SPRM_IS_UNK8, + /* 0x0070 */ CO_SPRM_VSGRP = CO_SPRM_VS_UNK2 | CO_SPRM_VS_UNK4 | CO_SPRM_VS_UNK8, /* 0x0080 */ CO_SPRM_SPH_3D_CRR = 0x80, /* 0x0100 */ CO_SPRM_NO_CRR = 0x100, /* 0x0200 */ CO_SPRM_NO_CO_HIT_INF_SET = 0x200, @@ -503,7 +502,6 @@ public: OffSPrmBit(CO_SPRM_VSGRP); OnSPrmBit(grp); } - u32 GetGrp() const { return MskSPrm(CO_SPRM_GRP); } bool ChkSet() const { return MskSPrm(CO_SPRM_SET); } u32 GetVsGrp() const { return MskSPrm(CO_SPRM_VSGRP); } u32 GetIGrp() const { return MskSPrm(CO_SPRM_IGRP); } @@ -538,7 +536,6 @@ public: cCcD_ObjCo& GetObjCo() { return mObjCo; } // Fake inline u32 GetTgGrp() const { return mObjTg.GetGrp(); } u32 GetAtGrp() const { return mObjAt.GetGrp(); } - u32 GetCoGrp() const { return mObjCo.GetGrp(); } // Fake inline, included for completeness u32 GetTgType() const { return mObjTg.GetType(); } u32 GetAtType() const { return mObjAt.GetType(); } bool ChkTgSet() const { return mObjTg.ChkSet(); } @@ -558,14 +555,15 @@ public: u32 ChkCoSph3DCrr() const { return mObjCo.ChkSph3DCrr(); } void OnAtSPrmBit(u32 flag) { mObjAt.OnSPrmBit(flag); } void OffAtSPrmBit(u32 flag) { mObjAt.OffSPrmBit(flag); } + void OnTgSPrmBit(u32 flag) { mObjTg.OnSPrmBit(flag); } + void OffTgSPrmBit(u32 flag) { mObjTg.OffSPrmBit(flag); } + void OnCoSPrmBit(u32 flag) { mObjCo.OnSPrmBit(flag); } void OffCoSPrmBit(u32 flag) { mObjCo.OffSPrmBit(flag); } void SetAtType(u32 type) { mObjAt.SetType(type); } void OnAtSetBit() { mObjAt.OnSPrmBit(AT_SPRM_SET); } void SetAtAtp(int atp) { mObjAt.SetAtp(atp); } void OffCoSetBit() { mObjCo.ClrSet(); } void SetTgType(u32 type) { mObjTg.SetType(type); } - void OnTgSPrmBit(u32 flag) { mObjTg.OnSPrmBit(flag); } - void OffTgSPrmBit(u32 flag) { mObjTg.OffSPrmBit(flag); } void OffAtSetBit() { mObjAt.ClrSet(); } void OnAtHitBit() { mObjAt.OnHitBit(); } void OffAtHitBit() { mObjAt.OffHitBit(); } @@ -578,7 +576,6 @@ public: void OffAtVsEnemyBit() { mObjAt.OffSPrmBit(AT_SPRM_VS_ENEMY); } void OnAtVsPlayerBit() { mObjAt.OnSPrmBit(AT_SPRM_VS_PLAYER); } void OffAtVsPlayerBit() { mObjAt.OffSPrmBit(AT_SPRM_VS_PLAYER); } - void OnCoSPrmBit(u32 flag) { mObjCo.OnSPrmBit(flag); } void SetTgSPrm(u32 prm) { mObjTg.SetSPrm(prm); } // Fake inline, but exists in TP void SetCoSPrm(u32 prm) { mObjCo.SetSPrm(prm); } void ClrAtHit() { mObjAt.ClrHit(); } diff --git a/include/d/d_bg_s.h b/include/d/d_bg_s.h index 521921375..09e8a805d 100644 --- a/include/d/d_bg_s.h +++ b/include/d/d_bg_s.h @@ -95,7 +95,7 @@ public: int GetRoomPathId(cBgS_PolyInfo&); int GetRoomPathPntNo(cBgS_PolyInfo&); s32 GetRoomId(cBgS_PolyInfo&); - BOOL ChkPolyHSStick(cBgS_PolyInfo&); + u32 ChkPolyHSStick(cBgS_PolyInfo&); bool LineCrossNonMoveBG(cBgS_LinChk*); void WallCorrect(dBgS_Acch*); f32 RoofChk(dBgS_RoofChk*); diff --git a/include/d/d_cc_s.h b/include/d/d_cc_s.h index 565225956..c22f94fae 100644 --- a/include/d/d_cc_s.h +++ b/include/d/d_cc_s.h @@ -43,8 +43,22 @@ public: virtual void MoveAfterCheck(); virtual void CalcParticleAngle(dCcD_GObjInf*, cCcD_Stts*, cCcD_Stts*, csXyz*); + u32 ChkMass(cXyz* p_xyz, fopAc_ac_c** p_actor, dCcMassS_HitInf* p_hitInf) { + return mMass_Mng.Chk(p_xyz, p_actor, p_hitInf); + } void SetMass(cCcD_Obj* i_obj, u8 i_priority) { mMass_Mng.Set(i_obj, i_priority); } void PrepareMass() { mMass_Mng.Prepare(); } + void SetMassAttr(f32 radius, f32 height, u8 param_2, u8 param_3) { + mMass_Mng.SetAttr(radius, height, param_2, param_3); + } + + void ChkActor(fopAc_ac_c*) {} + void GetMassCamTopPos(Vec*) {} + void GetMassResultCam() {} + void OffMassAllTimer() {} + void OnMassAllTimer() {} + void SetMassAreaChk(cCcD_Obj*, u8, void (*)(fopAc_ac_c*, cXyz*, u32)) {} + void SetMassCam(cM3dGCps&) {} static u8 m_mtrl_hit_tbl[64]; diff --git a/src/c/c_damagereaction.cpp b/src/c/c_damagereaction.cpp index 0cb602e3a..b660e3b01 100644 --- a/src/c/c_damagereaction.cpp +++ b/src/c/c_damagereaction.cpp @@ -81,7 +81,7 @@ dCcD_SrcCyl cc_cyl_src = { /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_GRP, /* SrcObjTg Type */ AT_TYPE_ALL, /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_ENEMY, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK4 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK4 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_agbsw0.cpp b/src/d/actor/d_a_agbsw0.cpp index 1715a63b9..d628e3b1b 100644 --- a/src/d/actor/d_a_agbsw0.cpp +++ b/src/d/actor/d_a_agbsw0.cpp @@ -35,7 +35,7 @@ static dCcD_SrcCyl l_cyl_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_BOMB, - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ 0, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, diff --git a/src/d/actor/d_a_am.cpp b/src/d/actor/d_a_am.cpp index 42e4a28f3..cb4673b85 100644 --- a/src/d/actor/d_a_am.cpp +++ b/src/d/actor/d_a_am.cpp @@ -1292,7 +1292,7 @@ static s32 daAM_Create(fopAc_ac_c* i_actor) { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK4 | CO_SPRM_UNK40 | CO_SPRM_NO_CRR, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK4 | CO_SPRM_VS_UNK8 | CO_SPRM_NO_CRR, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, @@ -1323,7 +1323,7 @@ static s32 daAM_Create(fopAc_ac_c* i_actor) { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_WATER | AT_TYPE_UNK20000 | AT_TYPE_LEAF_WIND | AT_TYPE_UNK400000 | AT_TYPE_LIGHT), /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_ENEMY, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK4 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK4 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, @@ -1355,7 +1355,7 @@ static s32 daAM_Create(fopAc_ac_c* i_actor) { /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_GRP, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK4 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK4 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0x06, diff --git a/src/d/actor/d_a_am2.cpp b/src/d/actor/d_a_am2.cpp index 37911ece6..734eb68cb 100644 --- a/src/d/actor/d_a_am2.cpp +++ b/src/d/actor/d_a_am2.cpp @@ -1434,7 +1434,7 @@ static s32 daAM2_Create(fopAc_ac_c* i_actor) { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_WATER | AT_TYPE_UNK20000 | AT_TYPE_LEAF_WIND | AT_TYPE_UNK400000 | AT_TYPE_LIGHT), /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_ENEMY, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK4 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK4 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, @@ -1466,7 +1466,7 @@ static s32 daAM2_Create(fopAc_ac_c* i_actor) { /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_PLAYER, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK20 | CO_SPRM_UNK40, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_VS_UNK4 | CO_SPRM_VS_UNK8, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0x06, diff --git a/src/d/actor/d_a_arrow.cpp b/src/d/actor/d_a_arrow.cpp index 6a0f68fb8..f9dd046ff 100644 --- a/src/d/actor/d_a_arrow.cpp +++ b/src/d/actor/d_a_arrow.cpp @@ -29,7 +29,7 @@ const dCcD_SrcCps daArrow_c::m_at_cps_src = { /* Flags */ 0, /* SrcObjAt Type */ AT_TYPE_NORMAL_ARROW, /* SrcObjAt Atp */ 2, - /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_UNK8, + /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_VS_OTHER, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, /* SrcObjCo SPrm */ 0, @@ -62,7 +62,7 @@ const dCcD_SrcSph daArrow_c::m_co_sph_src = { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_UNK10 | CO_SPRM_NO_CRR, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VS_UNK2 | CO_SPRM_NO_CRR, /* SrcGObjAt Se */ 0x07, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, @@ -252,7 +252,7 @@ void daArrow_c::setDrawShapeMaterial() { if (mbSetByZelda) { mAtCps.SetAtAtp(4); mAtCps.SetAtType(arrow_mat[0].mAtType); - mAtCps.OnAtSPrmBit(0xE); + mAtCps.OnAtSPrmBit(AT_SPRM_GRP); } if (arrow_mat[mArrowType].mTipJointIdx != 0) { diff --git a/src/d/actor/d_a_bomb.cpp b/src/d/actor/d_a_bomb.cpp index d71f2beaf..904864df5 100644 --- a/src/d/actor/d_a_bomb.cpp +++ b/src/d/actor/d_a_bomb.cpp @@ -197,7 +197,7 @@ BOOL daBomb_c::draw() { } if(fopAcM_GetModel(this) == 0 && mAcch.GetGroundH() != -1.0e9f) { - cM3dGPla* pNormal = dComIfG_Bgsp()->GetTriPla(mAcch.m_gnd.GetBgIndex(), mAcch.m_gnd.GetPolyIndex()); + cM3dGPla* pNormal = dComIfG_Bgsp()->GetTriPla(mAcch.m_gnd); if(pNormal) { dComIfGd_setSimpleShadow(¤t.pos, mAcch.GetGroundH(), 25.0f, &pNormal->mNormal, 0, 1.0f, dDlst_shadowControl_c::getSimpleTex()); } @@ -480,7 +480,7 @@ void daBomb_c::posMoveF() { if(!chk_state(STATE_5) && !chk_state(STATE_6) && field_0x6F3 != 1) { water_tention(); - tri = dComIfG_Bgsp()->GetTriPla(mAcch.m_gnd.GetBgIndex(), mAcch.m_gnd.GetPolyIndex()); + tri = dComIfG_Bgsp()->GetTriPla(mAcch.m_gnd); f32 mag = mWindVec.getSquareMag(); if(mag > 0.01f) { diff --git a/src/d/actor/d_a_bomb2.cpp b/src/d/actor/d_a_bomb2.cpp index 4cdc57518..0b10175d0 100644 --- a/src/d/actor/d_a_bomb2.cpp +++ b/src/d/actor/d_a_bomb2.cpp @@ -308,8 +308,8 @@ namespace daBomb2 { /* SrcObjAt Atp */ 0x04, /* SrcObjAt SPrm */ AT_SPRM_GRP, /* SrcObjTg Type */ ~(AT_TYPE_WATER | AT_TYPE_UNK20000 | AT_TYPE_UNK400000 | AT_TYPE_LIGHT), - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_VSGRP, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0x01, @@ -1017,7 +1017,7 @@ namespace daBomb2 { } void Act_c::tensor_wait_ground() { - cM3dGPla* pNormal = dComIfG_Bgsp()->GetTriPla(mAcch.m_gnd.GetBgIndex(), mAcch.m_gnd.GetPolyIndex()); + cM3dGPla* pNormal = dComIfG_Bgsp()->GetTriPla(mAcch.m_gnd); if(pNormal) { field_0x784 = pNormal->mNormal.z * attr().field_0x64; field_0x788 = pNormal->mNormal.x * attr().field_0x64; diff --git a/src/d/actor/d_a_hookshot.cpp b/src/d/actor/d_a_hookshot.cpp index 05fb8e2f9..c0b0696f3 100644 --- a/src/d/actor/d_a_hookshot.cpp +++ b/src/d/actor/d_a_hookshot.cpp @@ -277,7 +277,7 @@ static dCcD_SrcCps l_at_cps_src = { /* Flags */ 0, /* SrcObjAt Type */ AT_TYPE_HOOKSHOT, /* SrcObjAt Atp */ 0x01, - /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_UNK8, + /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_VS_OTHER, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, /* SrcObjCo SPrm */ 0, diff --git a/src/d/actor/d_a_ib.cpp b/src/d/actor/d_a_ib.cpp index ea1a6065e..6bd797851 100644 --- a/src/d/actor/d_a_ib.cpp +++ b/src/d/actor/d_a_ib.cpp @@ -331,8 +331,8 @@ dCcD_SrcCyl daIball_c::m_cyl_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_LIGHT), - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_VSGRP, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_item.cpp b/src/d/actor/d_a_item.cpp index d2eec0e69..0aa8c61e7 100644 --- a/src/d/actor/d_a_item.cpp +++ b/src/d/actor/d_a_item.cpp @@ -1102,7 +1102,7 @@ void daItem_c::checkWall() { return; } - cM3dGPla* wallPlane = dComIfG_Bgsp()->GetTriPla(mAcchCir.GetBgIndex(), mAcchCir.GetPolyIndex()); + cM3dGPla* wallPlane = dComIfG_Bgsp()->GetTriPla(mAcchCir); cXyz wallNorm = wallPlane->mNormal; cXyz vel; @@ -1478,8 +1478,8 @@ dCcD_SrcCyl daItem_c::m_cyl_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_ALL, - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_UNK10 | CO_SPRM_UNK40, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VS_UNK2 | CO_SPRM_VS_UNK8, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_lamp.cpp b/src/d/actor/d_a_lamp.cpp index 5b744e02c..7e8199320 100644 --- a/src/d/actor/d_a_lamp.cpp +++ b/src/d/actor/d_a_lamp.cpp @@ -17,7 +17,7 @@ static dCcD_SrcSph sph_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_FIRE | AT_TYPE_UNK20000 | AT_TYPE_FIRE_ARROW | AT_TYPE_LEAF_WIND | AT_TYPE_UNK400000, - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ 0, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, diff --git a/src/d/actor/d_a_nh.cpp b/src/d/actor/d_a_nh.cpp index 4b4c15bb0..107f8073a 100644 --- a/src/d/actor/d_a_nh.cpp +++ b/src/d/actor/d_a_nh.cpp @@ -27,7 +27,7 @@ static dCcD_SrcCyl l_cyl_src = { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_ALL, /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_ENEMY, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_UNK10, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VS_UNK2, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_npc_kamome.cpp b/src/d/actor/d_a_npc_kamome.cpp index d82ebbbe7..72d0cc98a 100644 --- a/src/d/actor/d_a_npc_kamome.cpp +++ b/src/d/actor/d_a_npc_kamome.cpp @@ -313,10 +313,10 @@ static dCcD_SrcSph l_sph_src = { /* Flags */ 0, /* SrcObjAt Type */ AT_TYPE_SWORD, /* SrcObjAt Atp */ 0, - /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_UNK8, + /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_OTHER, /* SrcObjTg Type */ AT_TYPE_ALL, /* SrcObjTg SPrm */ 0, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, @@ -371,7 +371,7 @@ static dCcD_SrcCps l_kam_at_cps_src = { /* Flags */ 0, /* SrcObjAt Type */ AT_TYPE_SWORD, /* SrcObjAt Atp */ 0, - /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_UNK8, + /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_OTHER, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, /* SrcObjCo SPrm */ 0, diff --git a/src/d/actor/d_a_npc_md.cpp b/src/d/actor/d_a_npc_md.cpp index 10638479e..a21a2e38e 100644 --- a/src/d/actor/d_a_npc_md.cpp +++ b/src/d/actor/d_a_npc_md.cpp @@ -55,7 +55,7 @@ static dCcD_SrcCyl l_cyl_src = { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_BOOMERANG | AT_TYPE_LEAF_WIND | AT_TYPE_LIGHT), /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_PLAYER, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK4 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK4 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_obj_barrier.cpp b/src/d/actor/d_a_obj_barrier.cpp index 2bf46774d..d838037ac 100644 --- a/src/d/actor/d_a_obj_barrier.cpp +++ b/src/d/actor/d_a_obj_barrier.cpp @@ -54,7 +54,7 @@ static const dCcD_SrcCyl l_cyl_tg_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_WATER | AT_TYPE_UNK20000 | AT_TYPE_UNK400000 | AT_TYPE_LIGHT), - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ 0, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, diff --git a/src/d/actor/d_a_obj_dragonhead.cpp b/src/d/actor/d_a_obj_dragonhead.cpp index 27e1c15f2..5fd7789bc 100644 --- a/src/d/actor/d_a_obj_dragonhead.cpp +++ b/src/d/actor/d_a_obj_dragonhead.cpp @@ -21,7 +21,7 @@ static dCcD_SrcSph sph_check_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_FIRE_ARROW, - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ 0, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, diff --git a/src/d/actor/d_a_obj_hfuck1.cpp b/src/d/actor/d_a_obj_hfuck1.cpp index 54cd5cdf7..f181cf139 100644 --- a/src/d/actor/d_a_obj_hfuck1.cpp +++ b/src/d/actor/d_a_obj_hfuck1.cpp @@ -24,7 +24,7 @@ namespace { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_HOOKSHOT, - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ 0, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, diff --git a/src/d/actor/d_a_obj_hole.cpp b/src/d/actor/d_a_obj_hole.cpp index c0cf878c9..c68e149db 100644 --- a/src/d/actor/d_a_obj_hole.cpp +++ b/src/d/actor/d_a_obj_hole.cpp @@ -89,7 +89,7 @@ void daObj_Hole_c::getPosAndAngle() { mLinChk.Set(&posUp, &posDown, this); if (dComIfG_Bgsp()->LineCross(&mLinChk) != 0) { - cM3dGPla* triPla = dComIfG_Bgsp()->GetTriPla(mLinChk.GetBgIndex(), mLinChk.GetPolyIndex()); + cM3dGPla* triPla = dComIfG_Bgsp()->GetTriPla(mLinChk); triPla->CalcAngleXz(&shape_angle.x, &shape_angle.z); triPla->getCrossY(current.pos, ¤t.pos.y); diff --git a/src/d/actor/d_a_obj_movebox.cpp b/src/d/actor/d_a_obj_movebox.cpp index 22b9d7e46..150c8e37f 100644 --- a/src/d/actor/d_a_obj_movebox.cpp +++ b/src/d/actor/d_a_obj_movebox.cpp @@ -389,8 +389,8 @@ namespace daObjMovebox { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_BOMB, - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_VSGRP, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_obj_mtest.cpp b/src/d/actor/d_a_obj_mtest.cpp index f6f6022db..a82259639 100644 --- a/src/d/actor/d_a_obj_mtest.cpp +++ b/src/d/actor/d_a_obj_mtest.cpp @@ -77,7 +77,7 @@ const dCcD_SrcCyl daObjMtest::Act_c::M_cyl_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_BOMB, - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ 0, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, diff --git a/src/d/actor/d_a_obj_paper.cpp b/src/d/actor/d_a_obj_paper.cpp index f5a578e30..8f3041952 100644 --- a/src/d/actor/d_a_obj_paper.cpp +++ b/src/d/actor/d_a_obj_paper.cpp @@ -62,7 +62,7 @@ namespace daObjPaper { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_WATER | AT_TYPE_UNK20000 | AT_TYPE_LEAF_WIND | AT_TYPE_UNK400000 | AT_TYPE_LIGHT), /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_GRP, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_obj_toripost.cpp b/src/d/actor/d_a_obj_toripost.cpp index 704575297..26d73163e 100644 --- a/src/d/actor/d_a_obj_toripost.cpp +++ b/src/d/actor/d_a_obj_toripost.cpp @@ -44,7 +44,7 @@ const dCcD_SrcCyl daObjTpost_c::m_cyl_src = { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_BOOMERANG), /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_GRP, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_obj_zouK.cpp b/src/d/actor/d_a_obj_zouK.cpp index abc45f5dc..8b1426d1b 100644 --- a/src/d/actor/d_a_obj_zouK.cpp +++ b/src/d/actor/d_a_obj_zouK.cpp @@ -34,7 +34,7 @@ namespace daObjZouk { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_ALL & ~(AT_TYPE_LIGHT | AT_TYPE_UNK400000 | AT_TYPE_LEAF_WIND | AT_TYPE_UNK20000 | AT_TYPE_WATER), /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_GRP, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_player_main.cpp b/src/d/actor/d_a_player_main.cpp index 03935a7d2..68f6a8860 100644 --- a/src/d/actor/d_a_player_main.cpp +++ b/src/d/actor/d_a_player_main.cpp @@ -1861,7 +1861,7 @@ static dCcD_SrcCyl l_cyl_src = { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_WATER | AT_TYPE_UNK20000 | AT_TYPE_LEAF_WIND | AT_TYPE_UNK400000 | AT_TYPE_LIGHT), /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_PLAYER, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK2 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK2 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, @@ -1918,7 +1918,7 @@ static dCcD_SrcCyl l_at_cyl_src = { /* Flags */ 0, /* SrcObjAt Type */ AT_TYPE_SWORD, /* SrcObjAt Atp */ 0x02, - /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_UNK8, + /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_VS_OTHER, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, /* SrcObjCo SPrm */ 0, @@ -1948,7 +1948,7 @@ static dCcD_SrcCps l_at_cps_src = { /* Flags */ 0, /* SrcObjAt Type */ AT_TYPE_SWORD, /* SrcObjAt Atp */ 0x01, - /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_UNK8, + /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_VS_OTHER, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, /* SrcObjCo SPrm */ 0, @@ -1978,7 +1978,7 @@ static dCcD_SrcCps l_fan_wind_cps_src = { /* Flags */ 0, /* SrcObjAt Type */ AT_TYPE_LEAF_WIND, /* SrcObjAt Atp */ 0, - /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_UNK8, + /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_VS_OTHER, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, /* SrcObjCo SPrm */ 0, @@ -2008,7 +2008,7 @@ static dCcD_SrcSph l_fan_wind_sph_src = { /* Flags */ 0, /* SrcObjAt Type */ AT_TYPE_LEAF_WIND, /* SrcObjAt Atp */ 0, - /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_UNK8, + /* SrcObjAt SPrm */ AT_SPRM_SET | AT_SPRM_VS_ENEMY | AT_SPRM_VS_OTHER, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, /* SrcObjCo SPrm */ 0, diff --git a/src/d/actor/d_a_race_item.cpp b/src/d/actor/d_a_race_item.cpp index ee5379e9d..39c97bdf0 100644 --- a/src/d/actor/d_a_race_item.cpp +++ b/src/d/actor/d_a_race_item.cpp @@ -20,7 +20,7 @@ static dCcD_SrcCyl l_cyl_src = { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_ALL, /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_ENEMY, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_UNK10, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VS_UNK2, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, @@ -154,8 +154,8 @@ BOOL daRaceItem_c::execute() { mCyl.ClrTgHit(); mCyl.ClrCoHit(); - mCyl.OffCoSPrmBit(0x1); - mCyl.OffTgSPrmBit(0x1); + mCyl.ClrCoSet(); + mCyl.ClrTgSet(); field_0x645 &= 0xFE; field_0x640 = 2; diff --git a/src/d/actor/d_a_rd.cpp b/src/d/actor/d_a_rd.cpp index 4ea7c8977..aab879c71 100644 --- a/src/d/actor/d_a_rd.cpp +++ b/src/d/actor/d_a_rd.cpp @@ -38,7 +38,7 @@ const dCcD_SrcCyl daRd_c::m_cyl_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_WATER | AT_TYPE_UNK20000 | AT_TYPE_LEAF_WIND | AT_TYPE_UNK400000), - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IGRP | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, @@ -694,16 +694,16 @@ bool daRd_c::checkTgHit() { /* 00001650-000017D0 .text setCollision__6daRd_cFv */ void daRd_c::setCollision() { if (mMode == MODE_DEATH) { - mCyl.OffCoSPrmBit(0x10); - mCyl.OffCoSPrmBit(0x02); + mCyl.OffCoSPrmBit(CO_SPRM_VS_UNK2); + mCyl.OffCoSPrmBit(CO_SPRM_IS_UNK2); mCyl.OffTgSPrmBit(TG_SPRM_SET); - mCyl.OffTgSPrmBit(0x08); + mCyl.OffTgSPrmBit(TG_SPRM_IS_OTHER); } else if (mMode == MODE_ATTACK || mMode == MODE_CRY || dComIfGp_evmng_startCheck("DEFAULT_RD_CRY")) { - mCyl.OffCoSPrmBit(0x10); - mCyl.OffCoSPrmBit(0x02); + mCyl.OffCoSPrmBit(CO_SPRM_VS_UNK2); + mCyl.OffCoSPrmBit(CO_SPRM_IS_UNK2); } else { - mCyl.OnCoSPrmBit(0x10); - mCyl.OnCoSPrmBit(0x02); + mCyl.OnCoSPrmBit(CO_SPRM_VS_UNK2); + mCyl.OnCoSPrmBit(CO_SPRM_IS_UNK2); } if (isAnm(AnmPrm_SUWARIP)) { diff --git a/src/d/actor/d_a_swattack.cpp b/src/d/actor/d_a_swattack.cpp index aa96741cf..b897019a0 100644 --- a/src/d/actor/d_a_swattack.cpp +++ b/src/d/actor/d_a_swattack.cpp @@ -18,7 +18,7 @@ static dCcD_SrcCyl l_cyl_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_ALL, - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ 0, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, diff --git a/src/d/actor/d_a_swhit0.cpp b/src/d/actor/d_a_swhit0.cpp index 06762801a..8ca5bd9f2 100644 --- a/src/d/actor/d_a_swhit0.cpp +++ b/src/d/actor/d_a_swhit0.cpp @@ -18,7 +18,7 @@ static dCcD_SrcSph l_sph_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_LIGHT | AT_TYPE_UNK400000 | AT_TYPE_LEAF_WIND | AT_TYPE_UNK20000 | AT_TYPE_WATER), // 0xFF1DFEFF - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ 0, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, @@ -48,7 +48,7 @@ static dCcD_SrcCyl l_cyl_src = { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK4 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK4 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/actor/d_a_switem.cpp b/src/d/actor/d_a_switem.cpp index 3eff50988..20aee062a 100644 --- a/src/d/actor/d_a_switem.cpp +++ b/src/d/actor/d_a_switem.cpp @@ -20,7 +20,7 @@ static dCcD_SrcCyl l_cyl_src = { /* SrcObjAt Atp */ 0, /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ AT_TYPE_ALL, - /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_UNK8, + /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_OTHER, /* SrcObjCo SPrm */ 0, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, diff --git a/src/d/actor/d_a_tag_ret.cpp b/src/d/actor/d_a_tag_ret.cpp index fada836c9..75ecda3c7 100644 --- a/src/d/actor/d_a_tag_ret.cpp +++ b/src/d/actor/d_a_tag_ret.cpp @@ -21,7 +21,7 @@ static dCcD_SrcCyl cyl_check_src = { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ 0, /* SrcObjTg SPrm */ 0, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK8 | CO_SPRM_UNK10 | CO_SPRM_NO_CRR, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK8 | CO_SPRM_VS_UNK2 | CO_SPRM_NO_CRR, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0, diff --git a/src/d/d_bg_s.cpp b/src/d/d_bg_s.cpp index 52337791d..51763ebd3 100644 --- a/src/d/d_bg_s.cpp +++ b/src/d/d_bg_s.cpp @@ -298,7 +298,7 @@ s32 dBgS::GetRoomId(cBgS_PolyInfo& polyInfo) { } /* 800A0F88-800A111C .text ChkPolyHSStick__4dBgSFR13cBgS_PolyInfo */ -BOOL dBgS::ChkPolyHSStick(cBgS_PolyInfo& polyInfo) { +u32 dBgS::ChkPolyHSStick(cBgS_PolyInfo& polyInfo) { s32 bg_index = polyInfo.GetBgIndex(); JUT_ASSERT(0x583, 0 <= bg_index && bg_index < 256); if (!m_chk_element[bg_index].ChkUsed()) @@ -571,7 +571,7 @@ void dBgS_CrrPos::CrrPos(dBgS& i_bgs) { if (i_bgs.LineCross(&linChk)) { *pm_pos = linChk.GetCross(); - cM3dGPla* plane = i_bgs.GetTriPla(linChk.GetBgIndex(), linChk.GetPolyIndex()); + cM3dGPla* plane = i_bgs.GetTriPla(linChk); pm_pos->x += plane->GetNP()->x; pm_pos->y += plane->GetNP()->y - mWallHeight; pm_pos->z += plane->GetNP()->z; @@ -590,7 +590,7 @@ void dBgS_CrrPos::CrrPos(dBgS& i_bgs) { if (i_bgs.LineCross(&linChk)) { *pm_pos = linChk.GetCross(); - cM3dGPla* plane = i_bgs.GetTriPla(linChk.GetBgIndex(), linChk.GetPolyIndex()); + cM3dGPla* plane = i_bgs.GetTriPla(linChk); pm_pos->x += plane->GetNP()->x; pm_pos->y += plane->GetNP()->y - mWallHeight; pm_pos->z += plane->GetNP()->z; diff --git a/src/d/d_com_inf_game.cpp b/src/d/d_com_inf_game.cpp index 47b19d559..fe78a6487 100644 --- a/src/d/d_com_inf_game.cpp +++ b/src/d/d_com_inf_game.cpp @@ -559,7 +559,7 @@ int dComIfGd_setSimpleShadow2(cXyz* i_pos, f32 param_1, f32 param_2, cBgS_PolyIn s16 i_angle, f32 param_5, GXTexObj* i_tex) { if (i_floorPoly.ChkSetInfo() && -1000000000.0f != param_1) { cM3dGPla* plane_p = - dComIfG_Bgsp()->GetTriPla(i_floorPoly.GetBgIndex(), i_floorPoly.GetPolyIndex()); + dComIfG_Bgsp()->GetTriPla(i_floorPoly); return dComIfGd_setSimpleShadow(i_pos, param_1, param_2, &plane_p->mNormal, i_angle, param_5, i_tex); diff --git a/src/d/d_kankyo_rain.cpp b/src/d/d_kankyo_rain.cpp index f3dac6ce2..c8269131d 100644 --- a/src/d/d_kankyo_rain.cpp +++ b/src/d/d_kankyo_rain.cpp @@ -754,7 +754,7 @@ BOOL light_at_hit_check(cXyz* pPos) { dCcMassS_HitInf hitInfo; BOOL ret = FALSE; fopAc_ac_c * pActor; - u32 res = dComIfG_Ccsp()->mMass_Mng.Chk(pPos, &pActor, &hitInfo); + u32 res = dComIfG_Ccsp()->ChkMass(pPos, &pActor, &hitInfo); if (((res & 1) != 0) && (hitInfo.GetAtHitObj()->GetAtType() & AT_TYPE_LIGHT) != 0) ret = TRUE; return ret; @@ -775,16 +775,7 @@ void dKyr_poison_light_colision() { if (!dKyr_poison_live_check()) return; - // inline should match, but doesn't -#if 0 - dComIfG_Ccsp()->mMass_Mng.SetAttr(220.0f, 140.0f, 0x0B, 0x03); -#else - dCcMassS_Mng * mass = &dComIfG_Ccsp()->mMass_Mng; - dComIfG_Ccsp()->mMass_Mng.mCylAttr.SetR(220.0f); - dComIfG_Ccsp()->mMass_Mng.mCylAttr.SetH(140.0f); - mass->field_0x128 = 0x0B; - mass->mResultCamBit = 0x03; -#endif + dComIfG_Ccsp()->SetMassAttr(220.0f, 140.0f, 0x0B, 0x03); f32 halfHeight = 70.0f; for (s32 i = 0; i < g_env_light.mPoisonCount; i++) { diff --git a/src/d/d_npc.cpp b/src/d/d_npc.cpp index 326a8e5f1..769d6300f 100644 --- a/src/d/d_npc.cpp +++ b/src/d/d_npc.cpp @@ -933,7 +933,7 @@ dCcD_SrcCyl dNpc_cyl_src = { /* SrcObjAt SPrm */ 0, /* SrcObjTg Type */ ~(AT_TYPE_BOOMERANG), /* SrcObjTg SPrm */ TG_SPRM_SET | TG_SPRM_IS_ENEMY, - /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_UNK4 | CO_SPRM_VSGRP, + /* SrcObjCo SPrm */ CO_SPRM_SET | CO_SPRM_IS_UNK4 | CO_SPRM_VSGRP, /* SrcGObjAt Se */ 0, /* SrcGObjAt HitMark */ 0, /* SrcGObjAt Spl */ 0,