// invokeRepeating private void SpawnRepeating() { // create the stack // create the method in a Utils class spawnStack = ListUtils.CreateShuffleStack(spawnPoints); InvokeRepeating("Spawn", spawnDelay, spawnInterval); }
// spawn a single enemy ship private void Spawn() { if (spawnStack.Count == 0) { // reshuffle the stack again spawnStack = ListUtils.CreateShuffleStack(spawnPoints); } var spawnPoint = spawnStack.Pop(); //var enemy = Instantiate(enemyPrefab); //adds to the hierachy base level var enemy = Instantiate(enemyPrefab, enemyParent.transform); enemy.transform.position = spawnPoint.transform.position; }
// Update is called once per frame private void SpawnRepeating() { spawnStack = ListUtils.CreateShuffleStack(spawnPoints); InvokeRepeating("Spawn", spawnDelay, spawnInterval); }