IEnumerator GenerateRoutin() { yield return(null); GameObject floorRoot = new GameObject("FloorRoot"); for (int i = 0; i < Row; i++) { for (int j = 0; j < Column; j++) { yield return(new WaitForSeconds(waitTime)); CurrentPosition = new Vector3(j, 0, i); var floor = Instantiate(_floorUnitPrefab, CurrentPosition, Quaternion.identity); if (i == CenterX && j == CenterY) { CardBehaviour cardBehaviour = floor.GetComponentInChildren <CardBehaviour>(); cardBehaviour.MakeCenter(); } floor.transform.parent = floorRoot.transform; } } }