| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- using UnityEngine;
- using UnityEngine.InputSystem;
- public class PauseMenu : MonoBehaviour
- {
- public static bool GameIsPaused = false;
- public GameObject pauseMenuUI;
- private SaveSystem saveSystem;
- void Start()
- {
- saveSystem = FindFirstObjectByType<SaveSystem>();
- }
- void Update()
- {
- // F Key to Toggle Pause
- if (Keyboard.current.fKey.wasPressedThisFrame)
- {
- if (GameIsPaused) Resume();
- else Pause();
- }
- // F5 to Save
- if (Keyboard.current.f5Key.wasPressedThisFrame)
- {
- saveSystem.SaveGame();
- }
- // F9 to Load
- if (Keyboard.current.f9Key.wasPressedThisFrame)
- {
- saveSystem.LoadGame();
- }
- }
- public void Resume()
- {
- pauseMenuUI.SetActive(false);
- Time.timeScale = 1f;
- GameIsPaused = false;
- Cursor.lockState = CursorLockMode.Locked;
- Cursor.visible = false;
- }
- void Pause()
- {
- pauseMenuUI.SetActive(true);
- Time.timeScale = 0f;
- GameIsPaused = true;
- Cursor.lockState = CursorLockMode.None;
- Cursor.visible = true;
- }
- public void QuitToMenu()
- {
- Time.timeScale = 1f;
- // Adjust "MainMenu" to your actual Main Menu scene name later
- UnityEngine.SceneManagement.SceneManager.LoadScene("MainMenu");
- }
- }
|