Beispiel #1
0
        /// <summary>
        /// Internal function for updating the position and speed of this object.
        /// </summary>
        private void updateMotion()
        {
            float delta;
            float velocityDelta;

            velocityDelta    = (FlxU.computeVelocity(angularVelocity, angularAcceleration, angularDrag, maxAngular) - angularVelocity) / 2;
            angularVelocity += velocityDelta;
            angle           += angularVelocity * FlxG.elapsed;
            angularVelocity += velocityDelta;

            velocityDelta = (FlxU.computeVelocity(velocity.x, acceleration.x, drag.x, maxVelocity.x) - velocity.x) / 2;
            velocity.x   += velocityDelta;
            delta         = velocity.x * FlxG.elapsed;
            velocity.x   += velocityDelta;
            x            += delta;

            velocityDelta = (FlxU.computeVelocity(velocity.y, acceleration.y, drag.y, maxVelocity.y) - velocity.y) / 2;
            velocity.y   += velocityDelta;
            delta         = velocity.y * FlxG.elapsed;
            velocity.y   += velocityDelta;
            y            += delta;
        }