public void PlayHide(GUIDialogBase dialogBase) { if (showSequence != null) { showSequence.Kill(); } if (guiControlLocation != null) { hideSequence = DOTween.Sequence(); SettingHideEffect(); hideSequence.AppendCallback(() => { OnEndHide(); GUIManager.InvokeEvent(dialogName, DialogEvent.Hidden); dialogBase.DestroyDialog(this); }); hideSequence.Play(); showStatus = DialogStatus.Hiding; } else { showStatus = DialogStatus.Hiding; OnEndHide(); GUIManager.InvokeEvent(dialogName, DialogEvent.Hidden); dialogBase.DestroyDialog(this); } }