private void Move() { if (Vector2.Distance(transform.position, _targetPosition) < 0.1f) { gameObject.GetComponent <Animator>().SetInteger(WalkDirection, 4); _isMoving = false; return; } _agentScript.SetTarget(_targetPosition); var diff = _targetPosition - transform.position; var angleBetween = Mathf.Atan2(diff.y, diff.x) * Mathf.Rad2Deg; angleBetween += 45.0f; angleBetween %= 360; if (angleBetween < 0) { angleBetween += 360; } AngleToAnim((int)angleBetween / 90); }