Files
GameJam2023/Levels/Scripts/Level.cs
2023-09-14 19:13:54 -07:00

32 lines
725 B
C#

using Godot;
using System.Collections.Generic;
using System.Linq;
public partial class Level : Node3D
{
private List<BasicEnemy> _enemies;
private GameManager _gameManager;
public override void _EnterTree()
{
_gameManager = GetTree().Root.GetNode<GameManager>("Main/GameManager");
_enemies = GetNode("Enemies").GetChildren().OfType<BasicEnemy>().ToList();
}
public void OnEnemyDefeated(BasicEnemy enemy)
{
if (_enemies.Contains(enemy))
{
GD.Print("On enemy defeated " + enemy.Name);
_enemies.Remove(enemy);
if (!_enemies.Any())
_gameManager.OnAllEnemiesDefeated();
}
}
public void GameEnding()
{
QueueFree();
}
}