- Home /
Duplicate Question
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!
Answer by Kiwasi · Dec 19, 2014 at 11:53 PM
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);
}
}
}
Answer by spheria · Dec 20, 2014 at 01:09 AM
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 :)
Follow this Question
Related Questions
A node in a childnode? 1 Answer
Object Pool only activating one prefab 1 Answer
Random select from array and spawn 1 Answer
How to fix some of location have more than 1 object? 2 Answers
Array out of range 1 Answer