diff options
author | aap <aap@papnet.eu> | 2021-08-17 09:46:11 +0200 |
---|---|---|
committer | aap <aap@papnet.eu> | 2021-08-17 09:46:11 +0200 |
commit | 7374fbf54cacb4c020e2185d5f4d01e9f65875a2 (patch) | |
tree | bb9d7b0dba9e9c08b6aa77c8c85c2a361810b5c2 /src | |
parent | 0c55f331cf258c57abba3ed70aa4e8ad25aef0b9 (diff) |
fixed car handling!!!!!!!
Diffstat (limited to 'src')
-rw-r--r-- | src/vehicles/Automobile.cpp | 6 | ||||
-rw-r--r-- | src/vehicles/Vehicle.cpp | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/vehicles/Automobile.cpp b/src/vehicles/Automobile.cpp index 810c1661..e13290c8 100644 --- a/src/vehicles/Automobile.cpp +++ b/src/vehicles/Automobile.cpp @@ -973,8 +973,8 @@ CAutomobile::ProcessControl(void) */ static float magicValue = 4.0f; - float steerRange; if(magicValue > 0.0f){ + float steerRange; // looks like a bug with the wheel ids here, why only left wheels? if(fwdSpeed > 0.01f && (m_aWheelTimer[CARWHEEL_FRONT_LEFT] > 0.0f || m_aWheelTimer[CARWHEEL_REAR_LEFT] > 0.0f) && GetStatus() == STATUS_PLAYER){ CColPoint point; @@ -995,9 +995,9 @@ CAutomobile::ProcessControl(void) }else steerRange = 1.0f; - } - m_fSteerAngle *= steerRange; + m_fSteerAngle *= steerRange; + } brake = m_fBrakePedal * pHandling->fBrakeDeceleration * CTimer::GetTimeStep(); diff --git a/src/vehicles/Vehicle.cpp b/src/vehicles/Vehicle.cpp index 7784bc07..591a9f83 100644 --- a/src/vehicles/Vehicle.cpp +++ b/src/vehicles/Vehicle.cpp @@ -965,7 +965,7 @@ CVehicle::ProcessWheel(CVector &wheelFwd, CVector &wheelRight, CVector &wheelCon turnDirection = direction; float impulse = speed*m_fMass; - float turnImpulse = turnSpeed*GetMass(wheelContactPoint, turnDirection); + float turnImpulse = turnSpeed*GetMass(wheelContactPoint - Multiply3x3(GetMatrix(), m_vecCentreOfMass), turnDirection); ApplyMoveForce(impulse * direction); ApplyTurnForce(turnImpulse * turnDirection, wheelContactPoint); |