Merge pull request #1120 from LagoLunatic/clib-limit

Improve cLib limit inlines
This commit is contained in:
LagoLunatic
2026-07-16 17:21:09 -04:00
committed by GitHub
parent c30c494a15
commit c562f05ffa
2 changed files with 6 additions and 9 deletions
+3 -6
View File
@@ -58,10 +58,7 @@ inline void cLib_setBit(T& value, T bit) {
template <typename T>
inline T cLib_minMaxLimit(T val, T min, T max) {
return (T)((T)val < (T)min ? (T)min : ((T)val > (T)max ? (T)max : (T)val));
// Might also be one of these? Try them first if having issues getting this inline to match.
// return (T)((T)val < min ? min : ((T)val > max ? max : (T)val));
// return (T)(val < min ? min : (val > max ? max : val));
return (T)((T)val < min ? min : ((T)val > max ? max : (T)val));
}
template <typename T>
@@ -71,12 +68,12 @@ inline bool cLib_checkMinMaxLimit(T val, T min, T max) {
template <typename T>
inline T cLib_maxLimit(T val, T max) {
return (T)((T)val > (T)max ? (T)max : (T)val);
return (T)((T)val > max ? max : (T)val);
}
template <typename T>
inline T cLib_minLimit(T val, T min) {
return (T)((T)val < (T)min ? (T)min : (T)val);
return (T)((T)val < min ? min : (T)val);
}
template <typename T>
+3 -3
View File
@@ -5001,7 +5001,7 @@ static cXyz l_head_top(1.0f, 0.0f, 0.0f);
/* 0001031C-00010E3C .text daNpc_Ji1_setHairAngle__FP11daNpc_Ji1_c */
static BOOL daNpc_Ji1_setHairAngle(daNpc_Ji1_c* i_this) {
/* Nonmatching - stack */
/* Nonmatching - retail-only load order */
f32 wind = *dKyw_get_wind_power() * *dKyw_get_wind_power() * 25.0f;
cXyz* windVec = dKyw_get_wind_vec();
@@ -5057,7 +5057,7 @@ static BOOL daNpc_Ji1_setHairAngle(daNpc_Ji1_c* i_this) {
i_this->field_0xBAA += (s16)(i_this->field_0xBB6 + temp3_2);
i_this->field_0xBAA += (s16)(i_this->field_0xBB6 + temp3_2);
i_this->field_0xBAA = cLib_minMaxLimit(i_this->field_0xBAA, l_HIO.field_0xF4, l_HIO.field_0xF6);
i_this->field_0xBAA = cLib_minMaxLimit<s16>(i_this->field_0xBAA, l_HIO.field_0xF4, l_HIO.field_0xF6);
s16 r4_2 = i_this->current.angle.y + i_this->m_jnt.getHead_y();
f32 f5 = cM_ssin(r4_2);
@@ -5065,7 +5065,7 @@ static BOOL daNpc_Ji1_setHairAngle(daNpc_Ji1_c* i_this) {
cLib_addCalcAngleS2(&i_this->field_0xBAC, cM_atan2s(sp3C.z * f5 - sp3C.x * f6, std::sqrtf(temp10 * temp10 + sp3C.y * sp3C.y)), 5, 0x400);
i_this->field_0xBAC += (s16)(i_this->field_0xBB8 - temp4_2);
i_this->field_0xBAC = cLib_minMaxLimit(i_this->field_0xBAC, l_HIO.field_0xE8, l_HIO.field_0xEA);
i_this->field_0xBAC = cLib_minMaxLimit<s16>(i_this->field_0xBAC, l_HIO.field_0xE8, l_HIO.field_0xEA);
i_this->field_0xBB6 = (s16)(i_this->field_0xBAA - r26) * 0.2f;
i_this->field_0xBB8 = (s16)(i_this->field_0xBAC - r25) * 0.2f;