55 lines
1.2 KiB
C#
55 lines
1.2 KiB
C#
using System;
|
|
using TMPro;
|
|
using UnityEngine;
|
|
|
|
public enum ePopupType { One, Two, Check }
|
|
|
|
public class Popup : MonoBehaviourSingletonTemplateBackKeyAdd<Popup>
|
|
{
|
|
public GameObject m_popup;
|
|
public TextMeshProUGUI label_msg;
|
|
|
|
Action m_ok, m_no;
|
|
|
|
public void Set(ePopupType _btn, int _msgkey, Action _ok = null, Action _no = null)
|
|
{
|
|
m_ok = _ok;
|
|
m_no = _no;
|
|
|
|
base.Set();
|
|
m_popup.SetActive(true);
|
|
label_msg.text = table_localtext.Ins.Get_Text(_msgkey);
|
|
}
|
|
|
|
public void Set(ePopupType _btn, int _msgkey, Action _ok = null, Action _no = null, params object[] args)
|
|
{
|
|
m_ok = _ok;
|
|
m_no = _no;
|
|
|
|
base.Set();
|
|
m_popup.SetActive(true);
|
|
label_msg.text = DSUtil.Format(_msgkey, args);
|
|
}
|
|
|
|
public void Set_QuitPopup()
|
|
{
|
|
Set(ePopupType.Two, 22, () => { ServerInfo.Ins.Write(DSUtil.Quit); });
|
|
}
|
|
|
|
public void OnClick_OK()
|
|
{
|
|
ClosePopup();
|
|
m_ok?.Invoke();
|
|
}
|
|
public override void OnClick_Back()
|
|
{
|
|
ClosePopup();
|
|
m_no?.Invoke();
|
|
}
|
|
|
|
void ClosePopup()
|
|
{
|
|
m_popup.SetActive(false);
|
|
BackKeyMgr.Ins.Del_Back(OnClick_Back);
|
|
}
|
|
} |