public void RotToTarget(Vector3 Tgt)
{
Vector3 tmpTGT = pivot.InverseTransformPoint(Tgt);
Vector2 target = new Vector2(tmpTGT.x, tmpTGT.y);
float angle = Mathf.Deg2Rad * Vector2.Angle(Vector2.up, target);
if (angle == 0) return;
angle = Mathf.Clamp(increment * TimeWarp.deltaTime, 0, angle);
if (target.x > 0)
{
angle = -angle;
}
if (!fullcircle)
{
tmpTGT = OrigRef;
target = new Vector2(tmpTGT.x, tmpTGT.y);
float angleRef = Mathf.Deg2Rad * Vector2.Angle(Vector2.up, target);
if (target.x > 0)
{
angleRef = -angleRef;
}
angle = Mathf.Clamp(angle, angleRef - angleMinus, angleRef + anglePlus);
if (angle == 0) return;
}
pivot.RotateAround(pivot.forward, angle);
}