spawning waves script.

I’m trying to write a script for a enemy spawner.

Here’s an example to show what i should be capable of:

wave1:

10 instances of ennemy a
5 instances of ennemy b
1 instance of ennemy c

wave2:

12 instances of ennemy a
7 instances of ennemy b
3 instance of ennemy c
etc…

they should spawn one by one and a soon as the specified amount of ennemies a are spawned, the instances of ennemy b have to start spawning.

i’m guessing i should use a 3d array or a list or something but I don’t know how to go about this.

any help would be greatly appreciated!

Use a custom class to define each wave. Store the waves in a list. Here is some psuedo code to start with

[System.Serilizable]
public class Wave {
    public int noOfAlienA;
    ...
    public float timeToNextWave;
}

public class Spawner : MonoBehaviour {
    public List<Wave> waves;

    IEnumerator Spawn(){
        foreach (Wave wave in waves){
            SpawnNewAliensOfTypeA(wave.noOfAliensA);
            yield return new WaitForSeconds(wave.timeToNextWave);
        }
    }
}

Ok i get the idea but i’m having problems storing my class instances in my list.
Should i use a constructor for that?

anyway thanks a lot already :slight_smile: