IEnumerator GetToPosition() { ChickenArmyController chickenArmy = ChickenArmyController.Singleton; Vector2 purposePos = chickenArmy.GetPosition(columnIndex, rowIndex); while (Vector2.Distance(purposePos, transform.position) > speed * Time.deltaTime) { transform.position += ((Vector3)purposePos - transform.position).normalized * speed * Time.deltaTime; purposePos = chickenArmy.GetPosition(columnIndex, rowIndex); yield return(null); } isSetInPosition = true; chickenArmy.AddChicken(this, columnIndex, rowIndex); }