Example #1
0
    public void Wave()
    {
        if (ZombiesSpawned < ZombiesAWave)
        {
            if (index >= Seconds(spawnDelay) && Zombies.Length < 40 && spawns.Length > 0 && ZombieSpawns)
            {
                GameObject NewEnemy = enemy[Random.Range(0, enemy.Length)];
                int        Chosen   = Random.Range(0, spawns.Length); // creates a number between 1 and the amount of spawns
                spawn = GameObject.Find(spawns[Chosen].name);
                NewEnemy.transform.position = new Vector3(spawn.transform.position.x, spawn.transform.position.y, spawn.transform.position.z);
                Instantiate(NewEnemy);
                ZombiesSpawned++;
                index = 0;
            }
        }
        else
        {
            if (Zombies.Length == 0)
            {
                pointScript.Wave = pointScript.Wave + 1;
                WaveNr++;

                if (spawnDelay >= 0.75)
                {
                    spawnDelay = spawnDelay - 0.15f;
                }

                soundManager.addWaveSound = true;
                soundManager.StartWaveSound();
                ZombiesAWave  = ZombiesAWave + (3 * WaveNr);
                Zombieskilled = 0;
                pointScript.ZombiesLeftDisplay.text = ZombiesAWave.ToString();
                ZombiesSpawned = 0;

                gunScript.nadesLeft = 4;

                index = 0;
            }
        }
    }