PauseMenu.cs 906 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using UnityEngine;
  2. using UnityEngine.SceneManagement;
  3. public class PauseMenu : MonoBehaviour
  4. {
  5. public static bool GameIsPaused = false;
  6. public GameObject PauseMenuUI;
  7. void Update()
  8. {
  9. if (Input.GetKeyDown(KeyCode.Escape))
  10. {
  11. if (GameIsPaused)
  12. {
  13. Resume();
  14. }
  15. else
  16. {
  17. Pause();
  18. }
  19. }
  20. }
  21. public void MainMenu()
  22. {
  23. SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex - 1);
  24. }
  25. public void QuitGame()
  26. {
  27. Debug.Log("Quit Game");
  28. Application.Quit();
  29. }
  30. public void Resume()
  31. {
  32. PauseMenuUI.SetActive(false);
  33. Time.timeScale = 1;
  34. GameIsPaused = false;
  35. }
  36. void Pause()
  37. {
  38. PauseMenuUI.SetActive(true);
  39. Time.timeScale = 0;
  40. GameIsPaused = true;
  41. }
  42. }