Exemple #1
0
    IEnumerator SpawnWave(WaveSingleton _wave)
    {
        anim.SetBool("CellRise", true);// cell rise animation
        Debug.Log("Spawning Wave" + _wave.name);
        state = SpawnState.Spawning;


        for (int i = 0; i < _wave.sCount; i++)
        {
            SpawnEnemy(_wave.Senemy);
            yield return(new WaitForSeconds(1f * _wave.rate));
        }
        for (int i = 0; i < _wave.mCount; i++)
        {
            SpawnEnemy(_wave.Menemy);
            yield return(new WaitForSeconds(1f * _wave.rate));
        }

        state = SpawnState.Waiting;
        anim.SetBool("CellRise", false);
        yield break;
    }
Exemple #2
0
    public void WaveCompleted()
    {
        Debug.Log("Wave COMPLETED!");
        state         = SpawnState.Counting;
        waveCountdown = timeBetweenWaves;

        if (nextWave + 1 > waves.Length - 1)
        {
            nextWave = 0;

            Debug.Log(" ALL WAVES COMPLETE!!");
            Debug.Log("Looping");

            GameObject    theWaveSpawner = GameObject.Find("WaveManager");
            WaveSingleton wave           = theWaveSpawner.GetComponent <WaveSingleton>();
            wave.mCount = wave.mCount + (Random.Range(1, 6));
            wave.sCount = wave.mCount + (Random.Range(1, 6));
        }
        else
        {
            nextWave++;
        }
    }
Exemple #3
0
 private void Awake()
 {
     Inst = this;
 }