private void PrintMenuStack() { Stack <CloseableMenu> temp = new Stack <CloseableMenu>(); int i = 0; while (openMenues.Count > 0) { CloseableMenu top = openMenues.Pop(); Logger.log("[" + i + "] :" + top.menuObject.name); temp.Push(top); i--; } while (temp.Count > 0) { openMenues.Push(temp.Pop()); } }
public virtual void Hide() { CloseableMenu topMenu = openMenues.Pop(); topMenu.active = false; topMenu.menuObject.SetActive(false); if (openMenues.Count == 0) { Cursor.visible = false; Cursor.lockState = CursorLockMode.Locked; Time.timeScale = 1f; } else { CloseableMenu newTop = openMenues.Peek(); if (newTop.hideIfNotOnTop) { newTop.menuObject.SetActive(true); } } PrintMenuStack(); }