Добавил новые состояния для игры

This commit is contained in:
2026-06-06 03:05:43 +03:00
parent 74c88748d0
commit 657fe72379
3 changed files with 21 additions and 3 deletions
+12
View File
@@ -6,6 +6,8 @@ public class AudioManager : MonoBehaviour
[SerializeField] private GameManager _gameManager;
[SerializeField] private AudioSource _levelBackgroundMusic;
[SerializeField] private AudioSource _buildBackgroundMusic;
[SerializeField] private AudioSource _winMusic;
[SerializeField] private AudioSource _loseMusic;
[SerializeField] private AudioSource[] _grassBlockDestroySound;
[SerializeField] private AudioSource[] _moneyChangeSound;
@@ -70,6 +72,16 @@ public class AudioManager : MonoBehaviour
Stop(_levelBackgroundMusic);
Play(_buildBackgroundMusic);
break;
case GameManager.GameState.Win:
Stop(_levelBackgroundMusic);
Stop(_buildBackgroundMusic);
Play(_winMusic);
break;
case GameManager.GameState.Lose:
Stop(_levelBackgroundMusic);
Stop(_buildBackgroundMusic);
Play(_loseMusic);
break;
}
}
+3 -1
View File
@@ -7,7 +7,9 @@ public class GameManager : MonoBehaviour
{
BuildingPath,
BuildingTurrets,
Level
Level,
Win,
Lose
}
[SerializeField] private Level[] _levels;
+5 -1
View File
@@ -40,7 +40,10 @@ public class WinLoseController : MonoBehaviour
private void OnLastEnemyDestroyed()
{
if (_isLastLevel)
if (!_isLastLevel)
return;
_gameManager.CurrentState = GameManager.GameState.Win;
_onWin?.Invoke();
}
@@ -52,6 +55,7 @@ public class WinLoseController : MonoBehaviour
private void OnDeath()
{
_gameManager.CurrentState = GameManager.GameState.Lose;
_onGameOver?.Invoke(new OnGameOverEventArgs(_currentLevel));
}