diff --git a/configure.py b/configure.py index ac3e4592a..814d6b923 100755 --- a/configure.py +++ b/configure.py @@ -465,7 +465,7 @@ config.libs = [ Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_save.cpp", extra_cflags=['-pragma "nosyminline on"']), Object(Matching, "d/d_save_init.cpp"), Object(Matching, "d/d_shop.cpp", extra_cflags=['-pragma "nosyminline on"']), - Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "d/d_jnt_hit.cpp"), + Object(Matching, "d/d_jnt_hit.cpp"), Object(Matching, "d/d_chain.cpp"), Object(NonMatching, "d/d_cloth_packet.cpp"), Object(NonMatching, "d/d_a_obj.cpp"), diff --git a/src/d/d_jnt_hit.cpp b/src/d/d_jnt_hit.cpp index 8d1fef5ca..34c0eb440 100644 --- a/src/d/d_jnt_hit.cpp +++ b/src/d/d_jnt_hit.cpp @@ -85,9 +85,9 @@ BOOL JntHit_c::CylHitPosAngleOffset(cXyz* r27, csXyz* r28, cXyz* r29, csXyz* r30 f32 sinX = cM_ssin(r28->x); f32 cosX = cM_scos(r28->x); - f32 x = cM_ssin(r28->y) * cosX; - f32 z = cM_scos(r28->y) * cosX; - cXyz r1_C4(x, -sinX, z); + f32 sinY = cM_ssin(r28->y); + f32 cosY = cM_scos(r28->y); + cXyz r1_C4(cosX * sinY, -sinX, cosX * cosY); f1 = r1_C4.inprod(r1_F4); cXyz r1_B8 = r1_C4; r1_D0 = r1_F4; @@ -98,7 +98,8 @@ BOOL JntHit_c::CylHitPosAngleOffset(cXyz* r27, csXyz* r28, cXyz* r29, csXyz* r30 f32 temp = f31*f31 + f28*f28 - r1_DC.abs2(); if (temp < 0.0f) temp = 0.0f; - r1_E8 = r1_C4 * (-f31 - std::sqrtf(temp)); + f32 temp2 = (-f31 - std::sqrtf(temp)); + r1_E8 = r1_C4 * temp2; r1_E8 += *r27; if (temp == 0.0f) { cXyz r1_AC = r1_E8; @@ -142,13 +143,13 @@ BOOL JntHit_c::Cyl2HitPosAngleOffset(cXyz* r27, csXyz* r29, cXyz* r30, csXyz* r3 cXyz r1_88 = r1_94.normZP(); f32 f29 = r1_94.abs(); f32 f30 = r27->inprod(r1_88); - + f32 sinX = cM_ssin(r29->x); f32 cosX = cM_scos(r29->x); - f32 x = cM_ssin(r29->y) * cosX; - f32 z = cM_scos(r29->y) * cosX; + f32 sinY = cM_ssin(r29->y); + f32 cosY = cM_scos(r29->y); cXyz r1_7C; - cXyz r1_70(x, -sinX, z); + cXyz r1_70(cosX * sinY, -sinX, cosX * cosY); f32 f1 = r1_70.inprod(r1_88); if (!cLib_IsZero(f1)) { if (f1 > 0.0f) { @@ -189,15 +190,15 @@ BOOL JntHit_c::Cyl2HitPosAngleOffset(cXyz* r27, csXyz* r29, cXyz* r30, csXyz* r3 BOOL JntHit_c::SphHitPosAngleOffset(cXyz* r27, csXyz* r29, cXyz* r30, csXyz* r31, cXyz r28, f32 f30) { f32 sinX = cM_ssin(r29->x); f32 cosX = cM_scos(r29->x); - f32 x = cM_ssin(r29->y) * cosX; - f32 z = cM_scos(r29->y) * cosX; - cXyz r1_34(x, -sinX, z); + f32 sinY = cM_ssin(r29->y); + f32 cosY = cM_scos(r29->y); + cXyz r1_34(cosX * sinY, -sinX, cosX * cosY); f32 f31 = r27->inprod(r1_34); f32 temp = f31*f31 + f30*f30 - r27->abs2(); if (temp < 0.0f) temp = 0.0f; - - cXyz r1_28 = r1_34 * (-f31 - std::sqrtf(temp)); + f32 temp2 = (-f31 - std::sqrtf(temp)); + cXyz r1_28 = r1_34 * temp2; r1_28 += *r27; if (r1_28.abs() > f30) { r1_28.normalizeZP(); @@ -269,7 +270,8 @@ s32 JntHit_c::searchJntHitPosAngleOffset(cXyz* r18, csXyz* r28, cXyz* r29, csXyz int posIndex = 0; int hitIndex = 0; int hitPosIndex = 0; - int r1_20 = JntHitIdx_NONE_e; + int tmp = JntHitIdx_NONE_e; + int r1_20 = tmp; for (; j++ < mMaxNum; i++) { mDoMtx_stack_c::copy(model->getAnmMtx(*pJointIndex));