IEnumerator SpawnStage() { if (currentStage == SpawnStages.SPAWNING) { for (int i = 0; i < numberOfSpawns; i++) { yield return(new WaitForSeconds(0.8f)); EnemySpawn(); } } currentStage = SpawnStages.WAITING; numberOfSpawns++; if (numberOfSpawns > 5) { numberOfSpawns = 1; enemySelection++; } if (enemySelection > 9) { enemySelection = 0; } }
void LastEnemyCheck() { if (enemyCount.Count == 0) { currentStage = SpawnStages.DEFEATED; StartCoroutine(nameof(DefeatStage)); } }
private void HandleOnDefendingState() { currentStage = SpawnStages.SPAWNING; StartCoroutine(nameof(SpawnStage)); }