Hi, I am trying to make a random enemy spawner that spawns a random enemy at a random spawn point and only spawns enemies every X seconds and when there are no more than 10 enemies in the scene for some reason it not working. I tried to change several things and I still can’t find it to work.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class EnemySpawner : MonoBehaviour
{
public Transform[] spawnPoints;
public GameObject[] enemyPrefabs;
public int spawnCount;
public int spawnLimit;
public bool spawn;
public float startSpawnTime;
public float spawnTime;
// Start is called before the first frame update
void Start()
{
spawnTime = startSpawnTime;
}
// Update is called once per frame
void Update()
{
if(!spawn && spawnLimit < spawnCount)
{
spawnTime = 0f;
startSpawnTime -= Time.deltaTime;
Spawner();
spawn = true;
}
}
void Spawner()
{
if (spawnTime < 0 )
{
int randEnemy = Random.Range(0, enemyPrefabs.Length);
int randEnemySpawners = Random.Range(0, spawnPoints.Length);
spawnCount++;
Instantiate(enemyPrefabs[randEnemy], spawnPoints[randEnemySpawners].position, transform.rotation);
}
else { spawnTime -= startSpawnTime; }
}
}