IEnumerator MoveToCoroutine() { GameObject player = GameObject.FindGameObjectsWithTag("Player")[0]; PlayerController pc = player.GetComponent <PlayerController>(); pc.enabled = false; target.MoveTo(player.transform.position + new Vector3(Mathf.Pow(-1, pc.minions.Count) * Mathf.Ceil((pc.minions.Count + 1) / 2), 1, 0)); while ((player.transform.position + new Vector3(Mathf.Pow(-1, pc.minions.Count) * Mathf.Ceil((pc.minions.Count + 1) / 2), 1, 0) - target.transform.position).magnitude > 0.1f) { yield return(null); } target.transform.parent = player.transform; pc.enabled = true; gameObject.SetActive(false); player.GetComponent <PlayerController>().minions.Add(target); }