예제 #1
0
 /// <summary>
 /// Queue a popup.
 /// </summary>
 /// <param name="popup"></param>
 public void QueuePopup(UIPopupData popup)
 {
     m_PopupStack.Push(popup);
     if (m_CurrentPopup == null)
     {
         ShowNextPopup();
     }
 }
예제 #2
0
    /// <summary>
    ///
    /// </summary>
    /// <param name="popup"></param>
    public void ShowNextPopup()
    {
        // Close any existing popups.
        ClosePopup();

        if (m_PopupStack.Count > 0)
        {
            InputManager.Instance.SetInputType("UI");

            UIPopupData nextPopup = m_PopupStack.Pop();
            m_CurrentPopup = GameObject.Instantiate <UIBasePopup>(m_GenericPopupPrefab, m_PopupCanvas.transform);
            m_CurrentPopup.SetData(nextPopup);
            m_CurrentPopup.Initialize();

            m_PopupLayer.SetActive(true);
        }
    }