Match daObj_hole

This commit is contained in:
Dylan Ascencio
2023-10-09 01:01:35 -04:00
parent 3ae551367b
commit 816986a8b3
7 changed files with 324 additions and 153 deletions
+10
View File
@@ -2,6 +2,7 @@
#define C_M3D_G_PLA_H_
#include "SSystem/SComponent/c_xyz.h"
#include "SSystem/SComponent/c_m3d.h"
#include "dolphin/mtx/vec.h"
// Plane with a normal
@@ -14,10 +15,19 @@ public:
cM3dGPla() {}
void CalcAngleXz(short* pAngleX, short* pAngleY) const;
void SetupNP0(const Vec&, const Vec&);
f32 getPlaneFunc(const Vec *p) const {
return mD + VECDotProduct(&mNormal, p);
}
const cXyz * GetNP() const { return &mNormal; }
f32 getCrossY(const cXyz& i_axis, float* i_value) const {
if (!cM3d_IsZero(mNormal.y)) {
*i_value = (-mNormal.x * i_axis.x -
mNormal.z * i_axis.z -
mD) / mNormal.y;
}
}
virtual ~cM3dGPla() {}
};
+2 -1
View File
@@ -120,6 +120,7 @@ public:
void ClrGroundLanding() { m_flags &= ~GROUND_LANDING; }
void ClrGroundAway() { m_flags &= ~GROUND_AWAY; }
void ClrWallHit() { m_flags &= ~WALL_HIT; }
void SetWallNone() { m_flags |= WALL_NONE; }
void SetRoofNone() { m_flags |= ROOF_NONE; }
void SetRoofHit() { m_flags |= ROOF_HIT; }
void SetWaterNone() { m_flags |= WATER_NONE; }
@@ -209,4 +210,4 @@ public:
virtual ~dBgS_ObjAcch() {}
}; // Size: 0x1C4
#endif /* D_BG_D_BG_S_ACCH_H */
#endif /* D_BG_D_BG_S_ACCH_H */
+3 -3
View File
@@ -54,9 +54,9 @@ public:
class dBgS_ObjLinChk : public dBgS_LinChk {
public:
dBgS_ObjLinChk();
dBgS_ObjLinChk() { SetObj(); }
virtual ~dBgS_ObjLinChk();
virtual ~dBgS_ObjLinChk() {}
};
class dBgS_BombLinChk : public dBgS_LinChk {
@@ -87,4 +87,4 @@ public:
virtual ~dBgS_MirLightLinChk();
};
#endif /* D_BG_D_BG_S_LIN_CHK_H */
#endif /* D_BG_D_BG_S_LIN_CHK_H */
+1 -1
View File
@@ -40,4 +40,4 @@ public:
STATIC_ASSERT(sizeof(dBgS_PolyPassChk) == 0xC);
#endif /* D_BG_D_BG_S_POLY_PASS_CHK_H */
#endif /* D_BG_D_BG_S_POLY_PASS_CHK_H */
+3
View File
@@ -49,5 +49,8 @@ public:
};
void dLib_bcks_setAnm(const char*, mDoExt_McaMorf*, s8*, s8*, s8*, const int*, const dLib_anm_prm_c*, bool);
bool dLib_checkPlayerInCircle(cXyz, f32, f32);
void dLib_setNextStageBySclsNum(u8, s8);
#endif /* D_LIB_H */