public override void Apply(GameActor actor)
        {
            // Only set this if we haven't already set it or other, mutually exclusive values.
            if (!actor.DesiredMovement.DesiredRotationAngle.HasValue && !actor.DesiredMovement.DesiredRotationRate.HasValue)
            {
                float speedModifier    = Reflex.ModifierParams.SpeedModifier;
                float turnSpeed        = speedModifier * actor.CalcTurnSpeed();
                float turnAcceleration = speedModifier * actor.CalcTurnAcceleration();

                actor.DesiredMovement.SetDesiredRotationAngle(Heading, turnSpeed * RotationRateModifier, turnAcceleration);
            }
        }