private void HandleDifficultyViewControllerDidSelectDifficulty(
     StandardLevelDifficultyViewController viewController,
     IStandardLevelDifficultyBeatmap difficultyLevel)
 {
     if (!_levelDetailViewController.isInViewControllerHierarchy)
     {
         _levelDetailViewController.Init(
             _customLevel.GetDifficultyLevel(_levelDifficultyViewController.selectedDifficultyLevel.difficulty),
             GameplayMode.SoloStandard, StandardLevelDetailViewController.LeftPanelViewControllerType.HowToPlay);
         _levelRequestNavigationController.PushViewController(_levelDetailViewController,
                                                              viewController.isRebuildingHierarchy);
     }
     else
     {
         _levelDetailViewController.SetContent(
             _customLevel.GetDifficultyLevel(_levelDifficultyViewController.selectedDifficultyLevel.difficulty),
             GameplayMode.SoloStandard);
     }
 }
Пример #2
0
        public void SceneManagerOnActiveSceneChanged(Scene arg0, Scene scene)
        {
            if (isMenuScene(scene))
            {
                flowController           = Resources.FindObjectsOfTypeAll <StandardLevelSelectionFlowCoordinator>().FirstOrDefault();
                navController            = flowController.GetPrivateField <StandardLevelSelectionNavigationController>("_levelSelectionNavigationController");
                listViewController       = flowController.GetPrivateField <StandardLevelListViewController>("_levelListViewController");
                difficultyViewController = flowController.GetPrivateField <StandardLevelDifficultyViewController>("_levelDifficultyViewController");
                listTableView            = listViewController.GetPrivateField <StandardLevelListTableView>("_levelListTableView");
                tableView            = listTableView.GetPrivateField <TableView>("_tableView");
                detailViewController = flowController.GetPrivateField <StandardLevelDetailViewController>("_levelDetailViewController");
                player = Resources.FindObjectsOfTypeAll <SongPreviewPlayer>().FirstOrDefault();

                FixDiffOrder();
                CreatUI();
                CreateRandomButton();
            }
            else
            {
                isShowing = false;
            }
        }
Пример #3
0
 private void Awake()
 {
     try
     {
         _mainMenuViewController             = Resources.FindObjectsOfTypeAll <MainMenuViewController>().First();
         _soloModeSelectionViewController    = Resources.FindObjectsOfTypeAll <SoloModeSelectionViewController>().First();
         _levelSelectionFlowCoordinator      = Resources.FindObjectsOfTypeAll <StandardLevelSelectionFlowCoordinator>().First();
         _levelSelectionNavigationController = _levelSelectionFlowCoordinator.GetPrivateField <StandardLevelSelectionNavigationController>("_levelSelectionNavigationController");
         _levelDetailViewController          = _levelSelectionFlowCoordinator.GetPrivateField <StandardLevelDetailViewController>("_levelDetailViewController");
         _levelDifficultyViewController      = _levelSelectionFlowCoordinator.GetPrivateField <StandardLevelDifficultyViewController>("_levelDifficultyViewController");
         _levelListViewController            = _levelSelectionFlowCoordinator.GetPrivateField <StandardLevelListViewController>("_levelListViewController");
         listTableView = _levelListViewController.GetPrivateField <StandardLevelListTableView>("_levelListTableView");
         tableView     = listTableView.GetPrivateField <TableView>("_tableView");
         GetBeatSaberIcons();
         AddModMenuButton();
         leaderboardHooks = new LeaderboardsModelHooks();
         leaderboardHooks.StartHooking();
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.Message + "\n" + ex.StackTrace);
     }
 }
        public void Present(VRUIViewController parentViewController, bool fromDebug)
        {
            _ui     = TwitchIntegrationUi.Instance;
            _logger = LogManager.GetCurrentClassLogger();

            try
            {
                _menuSceneSetupData     = Resources.FindObjectsOfTypeAll <MenuSceneSetupData>().First();
                _mainGameSceneSetupData = Resources.FindObjectsOfTypeAll <MainGameSceneSetupData>().First();
                _resultsFlowCoordinator = Resources.FindObjectsOfTypeAll <ResultsFlowCoordinator>().First();

                if (_levelRequestNavigationController == null)
                {
                    _levelRequestNavigationController =
                        _ui.CreateViewController <LevelRequestNavigationController>("LevelRequestNavController");
                }

                if (_requestInfoViewController == null)
                {
                    _requestInfoViewController = _ui.CreateViewController <RequestInfoViewController>("RequestInfo");
                    _requestInfoViewController.rectTransform.anchorMin = new Vector2(0.3f, 0f);
                    _requestInfoViewController.rectTransform.anchorMax = new Vector2(0.7f, 1f);
                }

                _levelDifficultyViewController =
                    Resources.FindObjectsOfTypeAll <StandardLevelDifficultyViewController>().First();
                _levelDetailViewController =
                    Resources.FindObjectsOfTypeAll <StandardLevelDetailViewController>().First();
            }
            catch (Exception e)
            {
                _logger.Error("Unable to load UI components: " + e);
                return;
            }

            if (!_initialized)
            {
                DidFinishEvent += Finish;
                _levelRequestNavigationController.DidFinishEvent        += HandleLevelRequestNavigationControllerDidfinish;
                _levelDifficultyViewController.didSelectDifficultyEvent +=
                    HandleDifficultyViewControllerDidSelectDifficulty;
                _levelDetailViewController.didPressPlayButtonEvent += HandleDetailViewControllerDidPressPlayButton;



                _requestInfoViewController.DownloadButtonpressed += HandleDidPressDownloadButton;
                _requestInfoViewController.SkipButtonPressed     += HandleDidPressSkipButton;

                _initialized = true;
            }

            //_levelRequestNavigationController.Init();
            parentViewController.PresentModalViewController(_levelRequestNavigationController, null,
                                                            StaticData.DidStartFromQueue);
            _requestInfoViewController.Init("Default Song Name", "Default User");

            _levelRequestNavigationController.PushViewController(_requestInfoViewController, true);

            if (!fromDebug)
            {
                return;             //Loading song preview arrests control from the results controller, causing it to display improperly.
            }
            CheckQueueAndUpdate();
        }