This commit is contained in:
manhduyhoang90
2026-05-26 09:46:57 +07:00
commit 167a617e09
1758 changed files with 1757605 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
using System.Collections.Generic;
using Unity.FPS.Game;
using UnityEngine;
namespace Unity.FPS.AI
{
public class EnemyManager : MonoBehaviour
{
public List<EnemyController> Enemies { get; private set; }
public int NumberOfEnemiesTotal { get; private set; }
public int NumberOfEnemiesRemaining => Enemies.Count;
void Awake()
{
Enemies = new List<EnemyController>();
}
public void RegisterEnemy(EnemyController enemy)
{
Enemies.Add(enemy);
NumberOfEnemiesTotal++;
}
public void UnregisterEnemy(EnemyController enemyKilled)
{
int enemiesRemainingNotification = NumberOfEnemiesRemaining - 1;
EnemyKillEvent evt = Events.EnemyKillEvent;
evt.Enemy = enemyKilled.gameObject;
evt.RemainingEnemyCount = enemiesRemainingNotification;
EventManager.Broadcast(evt);
// removes the enemy from the list, so that we can keep track of how many are left on the map
Enemies.Remove(enemyKilled);
}
}
}