Esempio n. 1
0
    // 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));
        }
    }