Changed the speed dependency of the visual skid offset:

before it was scaled by getSpeed()/getCurrentMaxSpeed().
Since current max speed is affected by zipper (it increases
max speed), the visual skid angle would change when the
skid bonus is activated, resulting in jump in the kart
rotation.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10711 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
hikerstk
2012-01-24 05:56:43 +00:00
parent f25cda4aa2
commit c9d2286e30

View File

@@ -2248,21 +2248,22 @@ btQuaternion Kart::getVisualRotation() const
*/
float Kart::getVisualSkidOffset() const
{
float speed_ratio = getSpeed()/MaxSpeed::getCurrentMaxSpeed();
float f = getSteerPercent() * speed_ratio;
if(m_kart_properties->getSkidVisualTime()==0)
{
float speed_ratio = getSpeed()/MaxSpeed::getCurrentMaxSpeed();
float r = m_skidding / m_kart_properties->getMaxSkid();
f *= r;
return getSteerPercent() * speed_ratio * r;
}
else
{
float st = fabsf(m_skid_time);
if(st>m_kart_properties->getSkidVisualTime())
st = m_kart_properties->getSkidVisualTime();
// New skidding code
float f = m_kart_properties->getSkidVisual() * getSteerPercent();
if(getSpeed() < m_kart_properties->getMaxSpeed())
f *= getSpeed()/m_kart_properties->getMaxSpeed();
float st = fabsf(m_skid_time);
if(st<m_kart_properties->getSkidVisualTime())
f *= st/m_kart_properties->getSkidVisualTime();
}
return f*m_kart_properties->getSkidVisual();
return f;
} // getVisualSkidOffset