Implement enemies getting to a finish, enemy dying

This commit is contained in:
2024-08-13 16:46:46 +02:00
parent 3f715b2bbc
commit 5c6c425d9a
18 changed files with 514 additions and 461 deletions

View 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--;
}
}