/// <summary> /// Toggles between panels /// </summary> /// <param name="panelName"></param> public void TogglePanel(string panelName) { MainMenuPanel panel = GetMenuPanel(panelName); if (panel == null) { Logger.Error("No such panel with the name of {@PanelName}!", name); return; } //There is a panel that is currently active, so close it if (GetActivePanel() != null && panel != GetActivePanel()) { Logger.Debug($"{GetActivePanel().name} is currently active, switching..."); ClosePanel(GetActivePanel(), true); OpenPanel(panel, true); return; } if (!panel.isOpen) { OpenPanel(panel); } else { ClosePanel(panel); } }
private void OpenPanel(MainMenuPanel panel, bool isSwitching = false) { Logger.Debug($"Opening {panel.name}"); if (!isSwitching) { if (panel.showTopBlackBar) { ActivateTopBlackBar(); } if (panel.darkenScreen) { ActivateBlackBackground(); } } panel.activePanel.SetActive(true); panel.isOpen = true; }