better pause menu system
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class MenuController : MonoBehaviour
|
||||
{
|
||||
public List<MenuScreen> screens;
|
||||
|
||||
public void ShowScreen(string screenName)
|
||||
{
|
||||
HideAllScreens();
|
||||
|
||||
MenuScreen selScreen = screens.Find(x => x.screenName == screenName);
|
||||
if (selScreen != null)
|
||||
{
|
||||
selScreen.Show();
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new System.Exception("Screen name was not found in list of screens!");
|
||||
}
|
||||
}
|
||||
|
||||
public void HideAllScreens()
|
||||
{
|
||||
foreach (var screen in screens)
|
||||
{
|
||||
screen.Hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2289f767f0db35c459c4aae4d94b05c5
|
||||
@@ -0,0 +1,16 @@
|
||||
using UnityEngine;
|
||||
|
||||
public class MenuScreen : MonoBehaviour
|
||||
{
|
||||
public string screenName;
|
||||
|
||||
public void Show()
|
||||
{
|
||||
gameObject.SetActive(true);
|
||||
}
|
||||
|
||||
public void Hide()
|
||||
{
|
||||
gameObject.SetActive(false);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3ba23d5f6c337c34caaac9a4d8aab191
|
||||
@@ -3,32 +3,13 @@
|
||||
|
||||
public class PauseMenu : MonoBehaviour
|
||||
{
|
||||
public Button SettingsButton;
|
||||
public Button SaveButton;
|
||||
public Button DeleteSaveButton;
|
||||
public Button QuitButton;
|
||||
|
||||
public GameObject SettingsMenu;
|
||||
|
||||
public void ReloadReferences()
|
||||
{
|
||||
// pull all game objs here
|
||||
}
|
||||
|
||||
void Start()
|
||||
{
|
||||
SettingsButton.onClick.AddListener(ShowSettings);
|
||||
SaveButton.onClick.AddListener(SaveSystem.Save);
|
||||
DeleteSaveButton.onClick.AddListener(SaveSystem.ClearSave);
|
||||
}
|
||||
|
||||
void Update()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void ShowSettings()
|
||||
{
|
||||
SettingsMenu.SetActive(true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3838,17 +3838,6 @@ Transform:
|
||||
- {fileID: 2146681817}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!114 &1889534305 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 249075524138301096, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
m_PrefabInstance: {fileID: 6325623361260993107}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Button
|
||||
--- !u!1 &1892268938
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -4386,6 +4375,34 @@ PrefabInstance:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 1704696510}
|
||||
m_Modifications:
|
||||
- target: {fileID: 249075524138301096, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Mode
|
||||
value: 5
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 249075524138301096, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target
|
||||
value:
|
||||
objectReference: {fileID: 6325623361260993111}
|
||||
- target: {fileID: 249075524138301096, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
|
||||
value: ShowScreen
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 249075524138301096, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
|
||||
value: MenuController, Assembly-CSharp
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 249075524138301096, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_StringArgument
|
||||
value: Settings
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 249075524138301096, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName
|
||||
value: UnityEngine.Object, UnityEngine
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 626836106421650934, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_TagString
|
||||
value: Untagged
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 818899427131401759, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
@@ -4394,6 +4411,10 @@ PrefabInstance:
|
||||
propertyPath: m_Name
|
||||
value: UI
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1376587328550839904, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_TagString
|
||||
value: MenuController
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2975696880262954876, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
@@ -4402,22 +4423,10 @@ PrefabInstance:
|
||||
propertyPath: m_IsActive
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4155624016714589187, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: -201
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4264548731807291060, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4666577222808766051, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: -330.1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4906462856215206936, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: -76
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5101319162034548862, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
@@ -4470,14 +4479,6 @@ PrefabInstance:
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8504793874200787636, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: SettingsMenu
|
||||
value:
|
||||
objectReference: {fileID: 6325623361260993109}
|
||||
- target: {fileID: 8504793874200787636, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
propertyPath: SettingsButton
|
||||
value:
|
||||
objectReference: {fileID: 1889534305}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
@@ -4488,11 +4489,17 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 6792308726050395253, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
m_PrefabInstance: {fileID: 6325623361260993107}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1 &6325623361260993109 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 3851509619645923519, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
--- !u!114 &6325623361260993111 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 6476180199089286077, guid: 6d1ef2b53d3ef0446852da522af66b73, type: 3}
|
||||
m_PrefabInstance: {fileID: 6325623361260993107}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 2289f767f0db35c459c4aae4d94b05c5, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: Assembly-CSharp::MenuController
|
||||
--- !u!1001 &7959480261809233915
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
@@ -14,7 +14,7 @@ public class GameManager : MonoBehaviour
|
||||
public PlayerManager PlayerManager { get; private set; }
|
||||
public Inventory Inventory { get; private set; }
|
||||
public Storybools Storybools { get; private set; }
|
||||
public PauseMenu PauseMenu { get; private set; }
|
||||
public MenuController MenuController { get; private set; }
|
||||
public SoundSettingManager SoundSettingManager { get; private set; }
|
||||
public PlayerController PlayerController { get; private set; }
|
||||
public Image BlackScreen { get; private set; }
|
||||
@@ -57,16 +57,15 @@ private void ReloadReferences()
|
||||
Instance.DialogueManager = GetComponent<DialogueManager>();
|
||||
Instance.DialogueManager.ReloadReferences();
|
||||
|
||||
Instance.PauseMenu = GameObject.FindWithTag("PauseMenu").GetComponent<PauseMenu>();
|
||||
Instance.PauseMenu.ReloadReferences();
|
||||
Instance.PauseMenu.gameObject.SetActive(false);
|
||||
|
||||
Instance.Inventory = GetComponent<Inventory>();
|
||||
Instance.TimeManager = GetComponent<TimeManager>();
|
||||
Instance.PlayerManager = GetComponent<PlayerManager>();
|
||||
|
||||
Instance.SoundSettingManager = GetComponent<SoundSettingManager>();
|
||||
Instance.SoundSettingManager.ReloadReferences();
|
||||
|
||||
Instance.MenuController = GameObject.FindWithTag("MenuController").GetComponent<MenuController>();
|
||||
Instance.MenuController.HideAllScreens();
|
||||
}
|
||||
|
||||
#region Map Load Handling
|
||||
|
||||
@@ -50,14 +50,14 @@ void Update()
|
||||
Time.timeScale = 0;
|
||||
canUseTools = false;
|
||||
hasControl = false;
|
||||
GameManager.Instance.PauseMenu.gameObject.SetActive(true);
|
||||
GameManager.Instance.MenuController.ShowScreen("Pause");
|
||||
}
|
||||
else
|
||||
{
|
||||
Time.timeScale = 1;
|
||||
canUseTools = true;
|
||||
hasControl = true;
|
||||
GameManager.Instance.PauseMenu.gameObject.SetActive(false);
|
||||
GameManager.Instance.MenuController.HideAllScreens();
|
||||
}
|
||||
|
||||
paused = !paused;
|
||||
|
||||
+1412
-17
File diff suppressed because it is too large
Load Diff
@@ -13,10 +13,10 @@ TagManager:
|
||||
- DialogItemText
|
||||
- ItemPickupText
|
||||
- DialogContainer
|
||||
- PauseMenu
|
||||
- MasterSlider
|
||||
- SfxSlider
|
||||
- MusicSlider
|
||||
- MenuController
|
||||
layers:
|
||||
- Default
|
||||
- TransparentFX
|
||||
|
||||
Reference in New Issue
Block a user