protected float ClampAngle(float value, LBAngleRestraint limit) { if (!limit.outer) { return(Mathf.Clamp(value, limit.min, limit.max)); } else { float c, min, max; min = Mathf.Min(limit.min, limit.max); max = Mathf.Max(limit.min, limit.max); if (value >= min && value <= max) { c = max - min; if (value < c) { return(limit.min); } else { return(limit.max); } } } return(value); }
protected bool CheckAngleLimit(float value, LBAngleRestraint limit) { if (!limit.outer) { if (value > Mathf.Min(limit.min, limit.max) && value < Mathf.Max(limit.min, limit.max)) { return(true); } else { return(false); } } else { if (value < Mathf.Min(limit.min, limit.max) || value > Mathf.Max(limit.min, limit.max)) { return(true); } else { return(false); } } }