Пример #1
0
        protected override void DidActivate(bool firstActivation, ActivationType activationType)
        {
            if (firstActivation && activationType == ActivationType.AddedToHierarchy)
            {
                title = "More Songs";

                _moreSongsListViewController = BeatSaberUI.CreateViewController <MoreSongsListViewController>();
                _moreSongsListViewController.pageDownPressed     += _moreSongsListViewController_pageDownPressed;
                _moreSongsListViewController.pageUpPressed       += _moreSongsListViewController_pageUpPressed;
                _moreSongsListViewController.sortByTop           += () => { currentSortMode = "top"; currentPage = 0; StartCoroutine(GetPage(currentPage, currentSortMode)); currentSearchRequest = ""; };
                _moreSongsListViewController.sortByNew           += () => { currentSortMode = "new"; currentPage = 0; StartCoroutine(GetPage(currentPage, currentSortMode)); currentSearchRequest = ""; };
                _moreSongsListViewController.sortByPlays         += () => { currentSortMode = "plays"; currentPage = 0; StartCoroutine(GetPage(currentPage, currentSortMode)); currentSearchRequest = ""; };
                _moreSongsListViewController.searchButtonPressed += _moreSongsListViewController_searchButtonPressed;
                _moreSongsListViewController.didSelectRow        += _moreSongsListViewController_didSelectRow;

                _downloadQueueViewController = BeatSaberUI.CreateViewController <DownloadQueueViewController>();

                _simpleDialog = CustomUI.Utilities.ReflectionUtil.GetPrivateField <SimpleDialogPromptViewController>(Resources.FindObjectsOfTypeAll <MainFlowCoordinator>().First(), "_simpleDialogPromptViewController");
                _simpleDialog = Instantiate(_simpleDialog.gameObject, _simpleDialog.transform.parent).GetComponent <SimpleDialogPromptViewController>();
            }

            SongDownloader.Instance.songDownloaded -= SongDownloader_songDownloaded;
            SongDownloader.Instance.songDownloaded += SongDownloader_songDownloaded;

            SetViewControllersToNavigationConctroller(_moreSongsNavigationController, new VRUIViewController[]
            {
                _moreSongsListViewController
            });
            ProvideInitialViewControllers(_moreSongsNavigationController, _downloadQueueViewController, null);

            currentPage     = 0;
            currentSortMode = "top";
            StartCoroutine(GetPage(0, "top"));
        }
        public void Awake()
        {
            if (_moreSongsView == null)
            {
                _moreSongsView                 = BeatSaberUI.CreateViewController <MoreSongsListViewController>();
                _songDetailView                = BeatSaberUI.CreateViewController <SongDetailViewController>();
                _multiSelectDetailView         = BeatSaberUI.CreateViewController <MultiSelectDetailViewController>();
                _moreSongsNavigationcontroller = BeatSaberUI.CreateViewController <NavigationController>();
                _moreSongsView.navController   = _moreSongsNavigationcontroller;
                _songDescriptionView           = BeatSaberUI.CreateViewController <SongDescriptionViewController>();
                _downloadQueueView             = BeatSaberUI.CreateViewController <DownloadQueueViewController>();

                _moreSongsView.didSelectSong                      += HandleDidSelectSong;
                _moreSongsView.filterDidChange                    += HandleFilterDidChange;
                _moreSongsView.multiSelectDidChange               += HandleMultiSelectDidChange;
                _songDetailView.didPressDownload                  += HandleDidPressDownload;
                _songDetailView.didPressUploader                  += HandleDidPressUploader;
                _songDetailView.didPressPreview                   += HandleDidPressPreview;
                _songDetailView.setDescription                    += _songDescriptionView.Initialize;
                _multiSelectDetailView.multiSelectClearPressed    += _moreSongsView.MultiSelectClear;
                _multiSelectDetailView.multiSelectDownloadPressed += HandleMultiSelectDownload;

                AudioSource audioSource = Resources.FindObjectsOfTypeAll <AudioSource>().FirstOrDefault();;
                audioSource.volume = Misc.Preferences.shared.Volume;
                _songPlayer        = new Misc.SongPlayer(audioSource);
            }
        }
        protected override void DidActivate(bool firstActivation, ActivationType activationType)
        {
            if (firstActivation && activationType == ActivationType.AddedToHierarchy)
            {
                title = "Playlists";

                _playlistsNavigationController.didFinishEvent += _playlistsNavigationController_didFinishEvent;

                _playlistListViewController = BeatSaberUI.CreateViewController <PlaylistListViewController>();
                _playlistListViewController.didSelectRow += _playlistListViewController_didSelectRow;

                _playlistDetailViewController.downloadButtonPressed += _playlistDetailViewController_downloadButtonPressed;
                _playlistDetailViewController.selectButtonPressed   += _playlistDetailViewController_selectButtonPressed;
                _playlistDetailViewController.SetSelectButtonText("Select");

                _downloadQueueViewController = BeatSaberUI.CreateViewController <DownloadQueueViewController>();

                SetViewControllersToNavigationConctroller(_playlistsNavigationController, new VRUIViewController[]
                {
                    _playlistListViewController
                });

                ProvideInitialViewControllers(_playlistsNavigationController, _downloadQueueViewController, null);
            }
            _downloadingPlaylist = false;
            _playlistListViewController.SetContent(PlaylistsCollection.loadedPlaylists);

            _downloadQueueViewController.allSongsDownloaded += _downloadQueueViewController_allSongsDownloaded;
        }
        public void Awake()
        {
            if (_moreSongsView == null)
            {
                _moreSongsView  = BeatSaberUI.CreateViewController <MoreSongsListViewController>();
                _songDetailView = BeatSaberUI.CreateViewController <SongDetailViewController>();
                _moreSongsNavigationcontroller = BeatSaberUI.CreateViewController <NavigationController>();
                _moreSongsView.navController   = _moreSongsNavigationcontroller;
                _songDescriptionView           = BeatSaberUI.CreateViewController <SongDescriptionViewController>();
                _downloadQueueView             = BeatSaberUI.CreateViewController <DownloadQueueViewController>();

                _moreSongsView.didSelectSong     += HandleDidSelectSong;
                _moreSongsView.filterDidChange   += HandleFilterDidChange;
                _songDetailView.didPressDownload += HandleDidPressDownload;
                _songDetailView.didPressUploader += HandleDidPressUploader;
            }
        }
        protected override void DidActivate(bool firstActivation, ActivationType activationType)
        {
            try
            {
                if (firstActivation && activationType == ActivationType.AddedToHierarchy)
                {
                    title = "Playlists";

                    if (_playlistsReader == null)
                    {
                        _playlistsReader = new PlaylistsReader();
                        _playlistsReader.UpdatePlaylists();
                        Logger.Debug("Reader found {0} playlists!", _playlistsReader.Playlists.Count);

                        this.MatchSongsForAllPlaylists(true);
                    }

                    _playlistsNavigationController.didFinishEvent += _playlistsNavigationController_didFinishEvent;

                    _playlistListViewController = BeatSaberUI.CreateViewController <PlaylistListViewController>();
                    _playlistListViewController.didSelectRow += _playlistListViewController_didSelectRow;

                    _playlistDetailViewController.downloadButtonPressed += _playlistDetailViewController_downloadButtonPressed;
                    _playlistDetailViewController.selectButtonPressed   += _playlistDetailViewController_selectButtonPressed;

                    _downloadQueueViewController = BeatSaberUI.CreateViewController <DownloadQueueViewController>();

                    SetViewControllersToNavigationConctroller(_playlistsNavigationController, new VRUIViewController[]
                    {
                        _playlistListViewController
                    });

                    ProvideInitialViewControllers(_playlistsNavigationController, _downloadQueueViewController, null);
                }
                _downloadingPlaylist = false;
                _playlistListViewController.SetContent(_playlistsReader.Playlists);

                _downloadQueueViewController.allSongsDownloaded += _downloadQueueViewController_allSongsDownloaded;
            }
            catch (Exception e)
            {
                Logger.Exception("Error activating playlist flow coordinator: ", e);
            }
        }
        protected override void DidActivate(bool firstActivation, ActivationType activationType)
        {
            if (firstActivation)
            {
                title = "Playlists";

                _playlistListViewController = BeatSaberUI.CreateViewController <PlaylistListViewController>();
                _playlistListViewController.didSelectRow += _playlistListViewController_didSelectRow;

                _downloadQueueViewController = BeatSaberUI.CreateViewController <DownloadQueueViewController>();

                SetViewControllersToNavigationConctroller(_playlistsNavigationController, new VRUIViewController[]
                {
                    _playlistListViewController
                });

                ProvideInitialViewControllers(_playlistsNavigationController, _downloadQueueViewController, null);
            }
            _downloadingPlaylist = false;
            _playlistListViewController.SetContent(PlaylistsCollection.loadedPlaylists);

            _downloadQueueViewController.allSongsDownloaded += _downloadQueueViewController_allSongsDownloaded;
        }
Пример #7
0
        public void Awake()
        {
            if (_moreSongsView != null)
            {
                return;
            }

            _moreSongsView                 = BeatSaberUI.CreateViewController <MoreSongsListViewController>();
            _songDetailView                = BeatSaberUI.CreateViewController <SongDetailViewController>();
            _multiSelectDetailView         = BeatSaberUI.CreateViewController <MultiSelectDetailViewController>();
            _moreSongsNavigationController = BeatSaberUI.CreateViewController <NavigationController>();
            _moreSongsView.NavController   = _moreSongsNavigationController;
            _songDescriptionView           = BeatSaberUI.CreateViewController <SongDescriptionViewController>();
            _downloadQueueView             = BeatSaberUI.CreateViewController <DownloadQueueViewController>();

            _moreSongsView.DidSelectSong                      += HandleDidSelectSong;
            _moreSongsView.FilterDidChange                    += HandleFilterDidChange;
            _moreSongsView.MultiSelectDidChange               += HandleMultiSelectDidChange;
            _songDetailView.didPressDownload                  += HandleDidPressDownload;
            _songDetailView.didPressUploader                  += HandleDidPressUploader;
            _songDetailView.setDescription                    += _songDescriptionView.Initialize;
            _multiSelectDetailView.MultiSelectClearPressed    += _moreSongsView.MultiSelectClear;
            _multiSelectDetailView.MultiSelectDownloadPressed += HandleMultiSelectDownload;
        }