UPF/Assets/Game/Scripts/MessageDialog.cs
2022-08-28 19:33:14 +05:30

44 lines
1.1 KiB
C#

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<CanvasGroup>().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<CanvasGroup>().blocksRaycasts= value;
GetComponent<CanvasGroup>().interactable= value;
GetComponent<CanvasGroup>().alpha= (value) ? 1: 0;
}
}