using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; [RequireComponent(typeof(CanvasGroup))] public class MessageDialog : MonoBehaviour { private static MessageDialog m_instance; public static MessageDialog instance=>m_instance; public TMPro.TMP_Text titleTxt; public TMPro.TMP_Text messageTxt; public Button actionBtn; public bool showing => GetComponent().blocksRaycasts; void Start() { m_instance = this; actionBtn.onClick.AddListener(OnAction); SetActive(false); } void OnAction(){ if(showing){ SetActive(false); } } public void ShowDialog(string title, string message){ titleTxt.text = title; messageTxt.text = message; SetActive(true); } public void SetActive(bool value){ GetComponent().blocksRaycasts= value; GetComponent().interactable= value; GetComponent().alpha= (value) ? 1: 0; } }