public void HideDialog() { if (currentViewDialog.Count <= 0) { return; } Dialog dialog = currentViewDialog.Dequeue(); DialogPool dialogPool; if (!dialogDictionary.TryGetValue(dialog.DialogName, out dialogPool)) { return; } StartCoroutine(KKUtilities.WaitAction(dialog.OnHideAnimationEnd, () => { dialogPool.ReturnInstance(dialog); })); dialog.Hide(); }
/// <summary> /// アクションが呼ばれるまで待機する /// </summary> public static Coroutine WaitAction <T1, T2>(this MonoBehaviour mono, MyUnityEvent <T1, T2> action, Action callback = null) { return(mono.StartCoroutine(KKUtilities.WaitAction(action, callback))); }