49 lines
936 B
C#
49 lines
936 B
C#
using Sirenix.OdinInspector;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using UnityEngine;
|
|
using Zenject;
|
|
|
|
public class LevelManager : MonoBehaviour
|
|
{
|
|
[SerializeField]
|
|
[ReadOnly]
|
|
[Inject]
|
|
private Level level;
|
|
|
|
[SerializeField]
|
|
[ReadOnly]
|
|
private int health = 0;
|
|
|
|
[SerializeField]
|
|
private HashSet<EnemyComponent> finishedEnemies = new HashSet<EnemyComponent>();
|
|
|
|
[Inject]
|
|
[SerializeField]
|
|
[ReadOnly]
|
|
private MusicManager musicManager;
|
|
|
|
private void Start()
|
|
{
|
|
health = level.health;
|
|
|
|
if (level.pauseClip != null)
|
|
{
|
|
musicManager.Play(level.pauseClip);
|
|
}
|
|
}
|
|
|
|
public void OnEnemyReachedFinish(EnemyComponent enemy)
|
|
{
|
|
if (finishedEnemies.Contains(enemy))
|
|
{
|
|
return;
|
|
}
|
|
|
|
finishedEnemies.Add(enemy);
|
|
enemy.Destroy();
|
|
health--;
|
|
}
|
|
}
|