Ejemplo n.º 1
0
    //Корутина подготовки новой волны
    IEnumerator StartNewWaveRoutine()
    {
        waveCounter++;

        enemiesOnThisLevel = Random.Range(waveCounter, waveCounter + thisLevelData.MaxRandomEnemiesInWave + 1);

        float t = 0;

        while (t < thisLevelData.TimeBetweenWaves)
        {
            t += Time.deltaTime;

            yield return(null);
        }

        enemyCounter        = 0;
        readyToStartNewWave = true;

        //Улучшение характеристик противников
        if (waveCounter > 1)
        {
            enemiesManager.UpgradeEnemy();
        }

        //Обновление UI
        GameInstance.Instance.gameplayUiController.UpdateWaveText(waveCounter);

        isNewLevelRoutineStart = false;
        StopAllCoroutines();
    }