gather-and-defend/Assets/Scripts/VictoryDefeat.cs

58 lines
1.4 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class VictoryDefeat : MonoBehaviour
{
public List<Opponent> _opponents = new List<Opponent>();
private bool _wavesEnd = false;
public Canvas victoryCanvas;
public Canvas defeatCanvas;
void Start()
{
victoryCanvas.gameObject.SetActive(false);
defeatCanvas.gameObject.SetActive(false);
}
void Update()
{
//J'estime que l'on gagne si les vagues sont finies et qu'il n'y a plus de monstres (à modifier dans le cas c'est pas ça)
if(_wavesEnd && _opponents.Count == 0) {
victoryCanvas.gameObject.SetActive(true);
//win !
}
//J'estime que l'on perd si un des ennemis arrive derrière notre ligne de défense (à modifier dans le cas c'est pas ça)
foreach (Opponent opponent in _opponents)
{
if (opponent.transform.position.x < -10.0f)
{
defeatCanvas.gameObject.SetActive(true);
//lose :(
}
}
}
public List<Opponent> Opponents
{
get { return _opponents; }
}
public void AddOpponent(Opponent opponent)
{
_opponents.Add(opponent);
}
public void RemoveOpponent(Opponent opponent)
{
_opponents.Remove(opponent);
}
}