Implement enemies getting to a finish, enemy dying
This commit is contained in:
39
Assets/Scripts/Managers/LevelManager.cs
Normal file
39
Assets/Scripts/Managers/LevelManager.cs
Normal file
@@ -0,0 +1,39 @@
|
||||
using Sirenix.OdinInspector;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
|
||||
public class LevelManager : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
private Level level;
|
||||
|
||||
[SerializeField]
|
||||
[ReadOnly]
|
||||
private int health = 0;
|
||||
|
||||
[SerializeField]
|
||||
private HashSet<EnemyComponent> finishedEnemies = new HashSet<EnemyComponent>();
|
||||
|
||||
private void Start()
|
||||
{
|
||||
health = level.health;
|
||||
}
|
||||
|
||||
public void OnEnemyReachedFinish(Collider enemyCollider)
|
||||
{
|
||||
var enemy = enemyCollider
|
||||
.gameObject
|
||||
.GetComponentInParent<EnemyComponent>();
|
||||
|
||||
if (finishedEnemies.Contains(enemy))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
finishedEnemies.Add(enemy);
|
||||
enemy.Destroy();
|
||||
health--;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user