Skip to content
Snippets Groups Projects
Commit d15fa5c8 authored by mikeleo03's avatar mikeleo03
Browse files

feat : base game over scheme

parent 7d45365e
Branches
Tags
No related merge requests found
using System.Collections; using System.Collections;
using UnityEngine; using UnityEngine;
using UnityEngine.Events; using UnityEngine.Events;
using UnityEngine.SceneManagement;
namespace Nightmare namespace Nightmare {
{ public class GameOverManager : MonoBehaviour {
public class GameOverManager : MonoBehaviour
{
private PlayerHealth playerHealth; private PlayerHealth playerHealth;
[SerializeField] private TimerManager timerManager; [SerializeField] private TimerManager timerManager;
Animator anim; Animator anim;
LevelManager lm; LevelManager lm;
private UnityEvent listener;
void Awake () public float restartDelay = 10f;
{ float restartTimer;
void Awake () {
playerHealth = FindObjectOfType<PlayerHealth>(); playerHealth = FindObjectOfType<PlayerHealth>();
anim = GetComponent <Animator> (); anim = GetComponent<Animator>();
lm = FindObjectOfType<LevelManager>(); lm = FindObjectOfType<LevelManager>();
EventManager.StartListening("GameOver", ShowGameOver);
} }
void OnDestroy() void Update() {
{ if (playerHealth.currentHealth <= 0) {
EventManager.StopListening("GameOver", ShowGameOver); anim.SetTrigger("GameOver");
} restartTimer += Time.deltaTime;
void ShowGameOver() if (restartTimer >= restartDelay) {
{ SceneManager.LoadScene("Menu");
anim.SetBool("GameOver", true); anim.SetBool("GameOver", false);
timerManager.ResetTimer(); }
}
} }
private void ResetLevel() private void ResetLevel() {
{
ScoreManager.score = 0; ScoreManager.score = 0;
LevelManager lm = FindObjectOfType<LevelManager>(); timerManager.ResetTimer();
lm.LoadInitialLevel();
anim.SetBool("GameOver", false);
playerHealth.ResetPlayer();
} }
} }
} }
\ No newline at end of file
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment