// This function will need to be updated if you add or remove tabs private void refreshMenuTab() { // Attempt to save selected item and diary slots. Note: we don't save the selected // note slot because that behaves a little differently, and is saved on activation. saveSelectedItemSlot(); saveSelectedAudioDiarySlot(); // And De-activate ALL panels inventoryItemsListPanel.SetActive(false); inventoryItemInfoPanelParent.SetActive(false); audioDiariesPanel.SetActive(false); notesPanel.SetActive(false); noteContentsPanelParent.SetActive(false); systemPanel.SetActive(false); exitConfirmationPanel.SetActive(false); actionsPanelParent.SetActive(false); pageControlPanel.SetActive(false); // Then force select tab and activate the correct panel(s) switch (currentMenuTab) { case eMenuTab.ITEMS: itemsTab.ForceSelectTab(); refreshItemSlotsAndDetailsView(); inventoryItemsListPanel.SetActive(true); inventoryItemInfoPanelParent.SetActive(true); pageControlPanel.SetActive(true); restoreSelectedItemSlot(); break; case eMenuTab.AUDIO_DIARIES: audioDiariesTab.ForceSelectTab(); refreshAudioDiarySlotsView(); audioDiariesPanel.SetActive(true); pageControlPanel.SetActive(true); restoreSelectedAudioDiarySlot(); break; case eMenuTab.NOTES: notesTab.ForceSelectTab(); refreshNoteSlotsView(); notesPanel.SetActive(true); noteContentsPanelParent.SetActive(true); pageControlPanel.SetActive(true); //restoreSelectedNoteSlot(); break; case eMenuTab.SYSTEM: systemTab.ForceSelectTab(); systemPanel.SetActive(true); refreshSystemMenu(); break; default: Debug.LogError("FPEGameMenu.refreshMenuTab() in bad state. Current Menu Tab is '" + currentMenuTab + "' which is not a valid tab. Something upstream (probably menu tab selection functions) broke."); break; } menuAudio.clip = menuTabSelect; menuAudio.Play(); }