47 lines
1.2 KiB
C#
47 lines
1.2 KiB
C#
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.Pool;
|
|
|
|
namespace AsteroidGame.Handlers
|
|
{
|
|
public class EnemyHandler : HandlerBase
|
|
{
|
|
[Header("Parameters")]
|
|
[SerializeField] [Range(0.1f, 60f)] float _spawnRate = 60f;
|
|
[SerializeField] int _objectPoolSize = 15;
|
|
|
|
[Header("Prefabs")]
|
|
[SerializeField] GameObject _objectPool;
|
|
[SerializeField] List<GameObject> _enemyPrefabs = new List<GameObject>();
|
|
|
|
[Header("Lists")]
|
|
[SerializeField] List<GameObject> _enemyPools = new List<GameObject>();
|
|
[SerializeField] List<GameObject> _allEnemies = new List<GameObject>();
|
|
|
|
private void Start()
|
|
{
|
|
|
|
}
|
|
|
|
public void AddEnemyToAllEnemies(GameObject enemy)
|
|
{
|
|
_allEnemies.Add(enemy);
|
|
}
|
|
|
|
public void RemoveEnemy(GameObject enemy)
|
|
{
|
|
_allEnemies.Remove(enemy);
|
|
}
|
|
|
|
public List<GameObject> ReturnAllEnemies()
|
|
{
|
|
return _allEnemies;
|
|
}
|
|
|
|
public void NotifyEnemiesOfNewPath()
|
|
{
|
|
BroadcastMessage("RecalculatePath", SendMessageOptions.DontRequireReceiver);
|
|
}
|
|
}
|
|
}
|