Files
ProjectBall.Unity/Assets/Scripts/MenuManager.cs
T
2025-05-13 05:18:03 +03:00

62 lines
1.1 KiB
C#

using UnityEngine;
using System.Collections;
[ExecuteInEditMode]
public class MenuManager : MonoBehaviour {
public MenuLayer activeMenu;
public MenuLayer previousMenu;
private MenuLayer[] menuArray;
// Use this for initialization
void Start () {
menuArray = GameObject.FindObjectsOfType<MenuLayer> ();
foreach (var m in menuArray) {
m.manager = this;
Debug.Log("Found menu: " + m.Name);
}
}
// Update is called once per frame
void Update () {
}
public MenuLayer GetMenu(string menuName){
if (string.IsNullOrEmpty (menuName)) {
return null;
}
foreach (var m in menuArray) {
if(m.Name == menuName){
return m;
}
}
return null;
}
public void ActivateMenu(string menu){
var nextMenu = GetMenu (menu);
if (activeMenu == nextMenu) {
return;
}
if (activeMenu != null) {
activeMenu.Leave();
}
previousMenu = activeMenu;
activeMenu = nextMenu;
if (nextMenu != null) {
nextMenu.Enter();
}
}
public void ActivatePreviousMenu(){
ActivateMenu (previousMenu == null ? "" : previousMenu.Name);
}
/*void OnGUI(){
if (activeMenu == null) {
return;
}
activeMenu.Draw ();
}*/
}