Compare commits

...

2 Commits

Author SHA1 Message Date
BOT Alex 258b467857 Merge branch 'main' of https://gitea.deprived.dev/Sveskejuice/3DTD 2024-04-21 06:13:41 +02:00
BOT Alex cd0d00af48 Added start, autoplay, Next buttons support 2024-04-21 06:13:36 +02:00
1 changed files with 36 additions and 1 deletions

View File

@ -2,9 +2,13 @@ using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.UI;
public class EnemySpawnManager : MonoBehaviour
{
public bool HasStarted = false;
public bool IsAutoPlaying = false;
private float time = 0f;
[SerializeField] private LevelDefinition levelDefinition;
[SerializeField] private EnemyCollection enemyCollection;
@ -12,11 +16,41 @@ public class EnemySpawnManager : MonoBehaviour
[SerializeField] private WaypointPath groundPath;
[SerializeField] private WaypointPath skyPath;
[Header("Buttons")]
[SerializeField] private Button StartButton;
[SerializeField] private Button NextButton;
[SerializeField] private Button AutoPlayButton;
private Queue<Wave> waveQueue;
private void Awake()
{
waveQueue = new Queue<Wave>(levelDefinition.Waves);
if (StartButton != null)
StartButton.onClick.AddListener(OnStartButtonClicked);
if (NextButton != null)
NextButton.onClick.AddListener(OnNextButtonClicked);
if (AutoPlayButton != null)
AutoPlayButton.onClick.AddListener(ToggleAutoPlayClicked);
}
public void OnStartButtonClicked()
{
HasStarted = true;
PopWave();
}
public void OnNextButtonClicked()
{
time = waveQueue.Peek().spawnTime;
PopWave();
}
public void ToggleAutoPlayClicked()
{
IsAutoPlaying = !IsAutoPlaying;
}
void Update()
@ -26,6 +60,7 @@ public class EnemySpawnManager : MonoBehaviour
return;
}
if (HasStarted && IsAutoPlaying)
time += Time.deltaTime;
if (waveQueue.Peek().spawnTime < time)