using TMPro; using UnityEngine; using UnityEngine.Events; using UnityEngine.EventSystems; using UnityEngine.UI; [RequireComponent(typeof(CanvasGroup))] public class UIAlert : MonoBehaviour { private string title; private string message; private string okButtonText = "확인"; private string cancelButtonText = "취소"; private bool showCancelButton = false; public UnityEvent OnOk; public UnityEvent OnCancel; private Button okButton; private Button cancelButton; private TextMeshProUGUI titleText; private TextMeshProUGUI messageText; private CanvasGroup canvasGroup; private bool animatting = false; private float target = 0; private float duration = 0.25f; private float alpha = 1; private bool useKeyboard = false; public void Init(string title, string message, string okButtonText = "확인", string cancelButtonText = "취소", bool showCancelButton = true) { this.title = title; this.message = message; this.okButtonText = okButtonText; this.cancelButtonText = cancelButtonText; this.showCancelButton = showCancelButton; canvasGroup = GetComponent(); var okBtn = GetComponentInChildren(); var cancelBtn = GetComponentInChildren(); var titleTxt = GetComponentInChildren(); var messageTxt = GetComponentInChildren(); if (okButton == null) okButton = okBtn.GetComponent