// Used in combat to create a target Vector from input at a given speed.
 private Vector3 ProcessStep(Vector3 input, float stepSpeed)
 {
     VerticalVelocity = 0;
     MotorHelper.KillVector(ref input, WallVector);
     MotorHelper.FollowVector(ref input, SlopeNormal);
     MotorHelper.ApplySpeed(ref input, stepSpeed);
     return(input);
 }
    public override Vector3 ProcessMovement(Vector3 input)
    {
        float speed = MainManager.Get.settings.data.playerSpeed;

        input.Set(0, 0, input.z);
        currentSpeed = Mathf.Min(currentSpeed + 1, speed);
        MotorHelper.FollowVector(ref input, machine.SlopeNormal);
        MotorHelper.KillVector(ref input, machine.WallVector);
        MotorHelper.ApplySpeed(ref input, currentSpeed);
        return(input);
    }