Пример #1
0
        private void ToggleSongOptions(ESongOptionsView view)
        {
            _SongOptionsActive = view != ESongOptionsView.None;
            if (_SongOptionsActive)
            {
                if (view == ESongOptionsView.Song)
                {
                    EGameMode LastMode = EGameMode.TR_GAMEMODE_NORMAL;
                    if (_AvailableGameModes.Count > 0)
                        LastMode = _AvailableGameModes[SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Selection];
                    SetInteractionToButton(Buttons[htButtons(ButtonOptionsSing)]);
                    _AvailableGameModes.Clear();
                    SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Clear();
                    if (!CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
                    {
                        SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_NORMAL));
                        _AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_NORMAL);
                        SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_SHORTSONG));
                        _AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_SHORTSONG);
                    }
                    if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
                    {
                        SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_DUET));
                        _AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_DUET);
                    }
                    if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].Medley.Source != EMedleySource.None)
                    {
                        SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_MEDLEY));
                        _AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_MEDLEY);
                    }
                    //Set SelectSlide-Selection to last selected game-mode if possible
                    for (int i = 0; i < _AvailableGameModes.Count; i++)
                    {
                        if (_AvailableGameModes[i] == LastMode)
                            SelectSlides[htSelectSlides(SelectSlideOptionsMode)].SetSelectionByValueIndex(i);
                    }
                    SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Visible = true;
                    SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Visible = true;
                    Buttons[htButtons(ButtonOptionsSing)].Visible = true;
                    Buttons[htButtons(ButtonOptionsPlaylist)].Visible = true;
                }
                else if (view == ESongOptionsView.General)
                {
                    Buttons[htButtons(ButtonOptionsRandom)].Visible = CSongs.Category != -1;
                    Buttons[htButtons(ButtonOptionsRandomCategory)].Visible = CSongs.Category == -1;
                    Buttons[htButtons(ButtonOptionsSingAll)].Visible = true;
                    Buttons[htButtons(ButtonOptionsSingAllVisible)].Visible = CSongs.Category != -1;

                    if (SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].NumValues > 0)
                    {
                        Buttons[htButtons(ButtonOptionsOpenPlaylist)].Visible = true;
                        SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Visible = true;
                        SetInteractionToButton(Buttons[htButtons(ButtonOptionsOpenPlaylist)]);
                    }
                    else
                    {
                        Buttons[htButtons(ButtonOptionsOpenPlaylist)].Visible = false;
                        SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Visible = false;

                        if (Buttons[htButtons(ButtonOptionsRandom)].Visible)
                            SetInteractionToButton(Buttons[htButtons(ButtonOptionsRandom)]);
                        else
                            SetInteractionToButton(Buttons[htButtons(ButtonOptionsSingAll)]);
                    }
                }
                Buttons[htButtons(ButtonOptionsClose)].Visible = true;
                Texts[htTexts(TextOptionsTitle)].Visible = true;
                Statics[htStatics(StaticOptionsBG)].Visible = true;
                Buttons[htButtons(ButtonOpenOptions)].Visible = false;
            }
            else 
            {
                SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Visible = false;
                SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Visible = false;
                SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Visible = false;
                Buttons[htButtons(ButtonOptionsClose)].Visible = false;
                Buttons[htButtons(ButtonOptionsSing)].Visible = false;
                Buttons[htButtons(ButtonOptionsPlaylist)].Visible = false;
                Buttons[htButtons(ButtonOptionsRandom)].Visible = false;
                Buttons[htButtons(ButtonOptionsRandomCategory)].Visible = false;
                Buttons[htButtons(ButtonOptionsSingAll)].Visible = false;
                Buttons[htButtons(ButtonOptionsSingAllVisible)].Visible = false;
                Buttons[htButtons(ButtonOptionsOpenPlaylist)].Visible = false;
                Buttons[htButtons(ButtonOpenOptions)].Visible = true;
                Texts[htTexts(TextOptionsTitle)].Visible = false;
                Statics[htStatics(StaticOptionsBG)].Visible = false;
            }
        }
Пример #2
0
        private void ToggleSongOptions(ESongOptionsView view)
        {
            _SongOptionsActive = view != ESongOptionsView.None;
            if (_SongOptionsActive)
            {
                if (view == ESongOptionsView.Song)
                {
                    EGameMode LastMode = EGameMode.TR_GAMEMODE_NORMAL;
                    if (_AvailableGameModes.Count > 0)
                    {
                        LastMode = _AvailableGameModes[SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Selection];
                    }
                    SetInteractionToButton(Buttons[htButtons(ButtonOptionsSing)]);
                    _AvailableGameModes.Clear();
                    SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Clear();
                    if (!CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
                    {
                        SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_NORMAL));
                        _AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_NORMAL);
                        SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_SHORTSONG));
                        _AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_SHORTSONG);
                    }
                    if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].IsDuet)
                    {
                        SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_DUET));
                        _AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_DUET);
                    }
                    if (CSongs.VisibleSongs[SongMenus[htSongMenus(SongMenu)].GetSelectedSong()].Medley.Source != EMedleySource.None)
                    {
                        SelectSlides[htSelectSlides(SelectSlideOptionsMode)].AddValue(Enum.GetName(typeof(GameModes.EGameMode), GameModes.EGameMode.TR_GAMEMODE_MEDLEY));
                        _AvailableGameModes.Add(GameModes.EGameMode.TR_GAMEMODE_MEDLEY);
                    }
                    //Set SelectSlide-Selection to last selected game-mode if possible
                    for (int i = 0; i < _AvailableGameModes.Count; i++)
                    {
                        if (_AvailableGameModes[i] == LastMode)
                        {
                            SelectSlides[htSelectSlides(SelectSlideOptionsMode)].SetSelectionByValueIndex(i);
                        }
                    }
                    SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Visible        = true;
                    SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Visible = true;
                    Buttons[htButtons(ButtonOptionsSing)].Visible     = true;
                    Buttons[htButtons(ButtonOptionsPlaylist)].Visible = true;
                }
                else if (view == ESongOptionsView.General)
                {
                    Buttons[htButtons(ButtonOptionsRandom)].Visible         = CSongs.Category != -1;
                    Buttons[htButtons(ButtonOptionsRandomCategory)].Visible = CSongs.Category == -1;
                    Buttons[htButtons(ButtonOptionsSingAll)].Visible        = true;
                    Buttons[htButtons(ButtonOptionsSingAllVisible)].Visible = CSongs.Category != -1;

                    if (SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].NumValues > 0)
                    {
                        Buttons[htButtons(ButtonOptionsOpenPlaylist)].Visible = true;
                        SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Visible = true;
                        SetInteractionToButton(Buttons[htButtons(ButtonOptionsOpenPlaylist)]);
                    }
                    else
                    {
                        Buttons[htButtons(ButtonOptionsOpenPlaylist)].Visible = false;
                        SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Visible = false;

                        if (Buttons[htButtons(ButtonOptionsRandom)].Visible)
                        {
                            SetInteractionToButton(Buttons[htButtons(ButtonOptionsRandom)]);
                        }
                        else
                        {
                            SetInteractionToButton(Buttons[htButtons(ButtonOptionsSingAll)]);
                        }
                    }
                }
                Buttons[htButtons(ButtonOptionsClose)].Visible = true;
                Texts[htTexts(TextOptionsTitle)].Visible       = true;
                Statics[htStatics(StaticOptionsBG)].Visible    = true;
                Buttons[htButtons(ButtonOpenOptions)].Visible  = false;
            }
            else
            {
                SelectSlides[htSelectSlides(SelectSlideOptionsMode)].Visible         = false;
                SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistAdd)].Visible  = false;
                SelectSlides[htSelectSlides(SelectSlideOptionsPlaylistOpen)].Visible = false;
                Buttons[htButtons(ButtonOptionsClose)].Visible          = false;
                Buttons[htButtons(ButtonOptionsSing)].Visible           = false;
                Buttons[htButtons(ButtonOptionsPlaylist)].Visible       = false;
                Buttons[htButtons(ButtonOptionsRandom)].Visible         = false;
                Buttons[htButtons(ButtonOptionsRandomCategory)].Visible = false;
                Buttons[htButtons(ButtonOptionsSingAll)].Visible        = false;
                Buttons[htButtons(ButtonOptionsSingAllVisible)].Visible = false;
                Buttons[htButtons(ButtonOptionsOpenPlaylist)].Visible   = false;
                Buttons[htButtons(ButtonOpenOptions)].Visible           = true;
                Texts[htTexts(TextOptionsTitle)].Visible    = false;
                Statics[htStatics(StaticOptionsBG)].Visible = false;
            }
        }