| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- using System;
- using UnityEngine;
- using UnityEngine.UI;
- public class PauseMenu : MonoBehaviour
- {
- private Toggle m_MenuToggle;
- private float m_TimeScaleRef = 1f;
- private float m_VolumeRef = 1f;
- private bool m_Paused;
- void Awake()
- {
- m_MenuToggle = GetComponent <Toggle> ();
- }
- private void MenuOn ()
- {
- m_TimeScaleRef = Time.timeScale;
- Time.timeScale = 0f;
- m_VolumeRef = AudioListener.volume;
- AudioListener.volume = 0f;
- m_Paused = true;
- }
- public void MenuOff ()
- {
- Time.timeScale = m_TimeScaleRef;
- AudioListener.volume = m_VolumeRef;
- m_Paused = false;
- }
- public void OnMenuStatusChange ()
- {
- if (m_MenuToggle.isOn && !m_Paused)
- {
- MenuOn();
- }
- else if (!m_MenuToggle.isOn && m_Paused)
- {
- MenuOff();
- }
- }
- #if !MOBILE_INPUT
- void Update()
- {
- if(Input.GetKeyUp(KeyCode.Escape))
- {
- m_MenuToggle.isOn = !m_MenuToggle.isOn;
- Cursor.visible = m_MenuToggle.isOn;//force the cursor visible if anythign had hidden it
- }
- }
- #endif
- }
|