From: <hik...@us...> - 2012-05-13 21:49:35
|
Revision: 11230 http://supertuxkart.svn.sourceforge.net/supertuxkart/?rev=11230&view=rev Author: hikerstk Date: 2012-05-13 21:49:28 +0000 (Sun, 13 May 2012) Log Message: ----------- Removed 'jump' in visual rotation when skidding is ended. Modified Paths: -------------- main/trunk/src/karts/skidding.cpp main/trunk/src/karts/skidding_properties.hpp Modified: main/trunk/src/karts/skidding.cpp =================================================================== --- main/trunk/src/karts/skidding.cpp 2012-05-13 01:51:24 UTC (rev 11229) +++ main/trunk/src/karts/skidding.cpp 2012-05-13 21:49:28 UTC (rev 11230) @@ -78,19 +78,20 @@ case SKID_ACCUMULATE_RIGHT: { float f = (1.0f+steer)*0.5f; // map [-1,1] --> [0, 1] - m_real_steering = m_skid_reduce_turn_min+ - m_skid_reduce_turn_delta*f; + m_real_steering = m_skid_reduce_turn_min+ + m_skid_reduce_turn_delta*f; + m_visual_rotation = m_skid_visual * m_real_steering; break; } case SKID_ACCUMULATE_LEFT: { float f = (-1.0f+steer)*0.5f; // map [-1,1] --> [-1, 0] - m_real_steering = -m_skid_reduce_turn_min+ - m_skid_reduce_turn_delta*f; + m_real_steering = -m_skid_reduce_turn_min+ + m_skid_reduce_turn_delta*f; + m_visual_rotation = m_skid_visual * m_real_steering; break; } } // switch m_skid_state - m_visual_rotation = m_skid_visual * m_real_steering; float st = fabsf(m_skid_time); if(st<m_skid_visual_time) @@ -168,9 +169,7 @@ // to the left. So we test for a 'clear enough' steering direction. if(!skidding || fabsf(steering)<0.9f) break; m_skid_state = steering > 0 ? SKID_ACCUMULATE_RIGHT - : SKID_ACCUMULATE_LEFT; - m_skid_time = 0; // fallthrough - + : SKID_ACCUMULATE_LEFT; // Add a little jump to the kart. Determine the vertical speed // necessary for the kart to go 0.5*jump_time up (then it needs // the same time to come down again), based on v = gravity * t. @@ -180,6 +179,8 @@ * 0.5f*m_jump_time; btVector3 imp(0, v / m_kart->getBody()->getInvMass(),0); m_kart->getVehicle()->getRigidBody()->applyCentralImpulse(imp); + + m_skid_time = 0; // fallthrough } case SKID_ACCUMULATE_LEFT: case SKID_ACCUMULATE_RIGHT: Modified: main/trunk/src/karts/skidding_properties.hpp =================================================================== --- main/trunk/src/karts/skidding_properties.hpp 2012-05-13 01:51:24 UTC (rev 11229) +++ main/trunk/src/karts/skidding_properties.hpp 2012-05-13 21:49:28 UTC (rev 11230) @@ -31,14 +31,14 @@ /** A simple class that stores all skidding related properties. It acts as * interface between kart_properties and Skidding (to avoid either passing * very many individual variables, or making KartProperties a dependency - * of Skidding. + * of Skidding). * \ingroup karts */ class SkiddingProperties { public: -// LEAK_CHECK(); + //LEAK_CHECK(); protected: /** Skidding is multiplied by this when skidding * to increase to m_skid_increase. */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |