protected override void UpdateStandardMenu(bool active) { int index = ChoiceNodes.ActiveNodeIndex; ChoiceNodes.Update(active); if (index != ChoiceNodes.ActiveNodeIndex) { Selection = (ExtrasSelections)MenuChoices.IndexOf(ChoiceNodes.ActiveNode); RefreshLocs(); OnIndexChanged(new EventArgs()); } }
public ExtrasMenu() : base() { MenuChoices.Add(new MainMenuChoicePanel("Sound Room")); MenuChoices.Add(new MainMenuChoicePanel("Supports")); MenuChoices.Add(new MainMenuChoicePanel("Credits")); MenuChoices[(int)ExtrasSelections.SoundRoom].Visible = Global.progress.SoundRoomAccessible; MenuChoices[(int)ExtrasSelections.SupportViewer].Visible = Global.progress.SupportViewerAccessible; RefreshLocs(); IEnumerable <MainMenuChoicePanel> nodes = new List <MainMenuChoicePanel>(MenuChoices); nodes = nodes.Where(x => x.Visible); ChoiceNodes = new UINodeSet <MainMenuChoicePanel>(nodes); ChoiceNodes.CursorMoveSound = System_Sounds.Menu_Move1; ChoiceNodes.SoundOnMouseMove = true; ChoiceNodes.set_active_node(nodes.FirstOrDefault()); Selection = (ExtrasSelections)MenuChoices.IndexOf(ChoiceNodes.ActiveNode); RefreshLocs(); }