Files
Darklings-FightingGame/Assets/_Project/Scripts/UIScripts/MenuScripts/BaseMenu.cs
2023-07-19 17:10:21 +03:00

48 lines
1.0 KiB
C#

using System.Collections;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class BaseMenu : MonoBehaviour
{
[SerializeField] protected Selectable _startingOption = default;
public void OpenMenuHideCurrent(BaseMenu menu)
{
EventSystem.current.SetSelectedGameObject(null);
gameObject.SetActive(false);
menu.Show();
}
public void OpenMenu(BaseMenu menu)
{
menu.gameObject.SetActive(true);
}
public virtual void Show()
{
gameObject.SetActive(true);
StartCoroutine(ActivateCoroutine());
}
public void Hide()
{
Cursor.SetCursor(null, Vector2.zero, CursorMode.Auto);
EventSystem.current.SetSelectedGameObject(null);
gameObject.SetActive(false);
}
void OnEnable()
{
StartCoroutine(ActivateCoroutine());
}
IEnumerator ActivateCoroutine()
{
yield return null;
if (_startingOption != null)
_startingOption.Select();
}
}