summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergeanur <s.anureev@yandex.ua>2019-10-06 14:42:48 +0200
committerSergeanur <s.anureev@yandex.ua>2019-10-06 14:42:48 +0200
commit90aa16b9b01ee1fc394e9ad984ddccaabb83257a (patch)
tree860bc10238dfe15b49f0ba0813800054dc0ad9ee
parentFixed player blip heading when looking left/right/behind (diff)
downloadre3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar
re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.gz
re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.bz2
re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.lz
re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.xz
re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.tar.zst
re3-90aa16b9b01ee1fc394e9ad984ddccaabb83257a.zip
-rw-r--r--src/vehicles/Automobile.cpp16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/vehicles/Automobile.cpp b/src/vehicles/Automobile.cpp
index 67d80915..00dc73fc 100644
--- a/src/vehicles/Automobile.cpp
+++ b/src/vehicles/Automobile.cpp
@@ -1933,13 +1933,15 @@ CAutomobile::Render(void)
CVector frontWheelFwd = Multiply3x3(GetMatrix(), CVector(-Sin(m_fSteerAngle), Cos(m_fSteerAngle), 0.0f));
CVector rearWheelFwd = GetForward();
for(i = 0; i < 4; i++){
- contactPoints[i] = m_aWheelColPoints[i].point - GetPosition();
- contactSpeeds[i] = GetSpeed(contactPoints[i]);
- if(i == CARWHEEL_FRONT_LEFT || i == CARWHEEL_FRONT_RIGHT)
- m_aWheelSpeed[i] = ProcessWheelRotation(m_aWheelState[i], frontWheelFwd, contactSpeeds[i], 0.5f*mi->m_wheelScale);
- else
- m_aWheelSpeed[i] = ProcessWheelRotation(m_aWheelState[i], rearWheelFwd, contactSpeeds[i], 0.5f*mi->m_wheelScale);
- m_aWheelRotation[i] += m_aWheelSpeed[i];
+ if (m_aWheelTimer[i] > 0.0f) {
+ contactPoints[i] = m_aWheelColPoints[0].point - GetPosition();
+ contactSpeeds[i] = GetSpeed(contactPoints[i]);
+ if (i == CARWHEEL_FRONT_LEFT || i == CARWHEEL_FRONT_RIGHT)
+ m_aWheelSpeed[i] = ProcessWheelRotation(m_aWheelState[i], frontWheelFwd, contactSpeeds[i], 0.5f*mi->m_wheelScale);
+ else
+ m_aWheelSpeed[i] = ProcessWheelRotation(m_aWheelState[i], rearWheelFwd, contactSpeeds[i], 0.5f*mi->m_wheelScale);
+ m_aWheelRotation[i] += m_aWheelSpeed[i];
+ }
}
// Rear right wheel