IEnumerator Spawn() { while (true) { if (!distanceController.checkBossStage()) { if (!enemyOnField) { enemyOnField = true; yield return(new WaitForSeconds(0.5f)); SetEnemyGroup(distanceController.GetStage()); rand = Random.Range((0 + stageOffset), (9 + stageOffset)); if (enemyGroup[rand] != null) { createdGroup = Instantiate(enemyGroup[rand], transform.position, Quaternion.identity) as GameObject; } } if (GameObject.FindWithTag("Enemy") == null) { Destroy(createdGroup); enemyOnField = false; } } yield return(new WaitForSeconds(0.1f)); } }