// Start is called before the first frame update IEnumerator Start() { waveCleared = GameObject.FindObjectOfType <WaveCleared>(); enemyBehaviour = GameObject.FindObjectOfType <Enemy>(); do { yield return(StartCoroutine(SpawnAllWaves())); numWavesCleared++; Debug.Log("Current Wave = " + numWavesCleared); waveCleared.UpdateCurrentWave(numWavesCleared); }while (looping); }
private IEnumerator SpawnAllWaves() { for (int waveIndex = startingWave; waveIndex < waveConfigs.Count; waveIndex++) { var currentWave = waveConfigs[waveIndex]; yield return(StartCoroutine(SpawnAllEnemyInWave(currentWave))); numWavesCleared++; Debug.Log("Current Wave = " + numWavesCleared); waveCleared.UpdateCurrentWave(numWavesCleared); if (numWavesCleared >= 10) { waveSpawnTime -= 0.1f; } yield return(new WaitForSeconds(waveSpawnTime)); } }