public void StartWithGameplay <Result>(ModalMenuInput <Result> i_modalData, IModalGameplay i_gameplay) { Debug.Assert(m_levels.Count == 0); Type t = GetClassType <Result>(); ModalInfo info = new ModalInfo(); info.modalData = i_modalData; info.type = t; info.gameplay = i_gameplay; m_levels.Push(info); }
public ModalMenuInput <Result> ExtractData <Result>(IModalGameplay i_gameplay = null) { //Type t = GetClassType<Result>(); if (m_levels.Count == 0) { return(null); } ModalInfo info = m_levels.Peek(); info.gameplay = i_gameplay; return(info.modalData as ModalMenuInput <Result>); }