Beispiel #1
0
        private void AddModMenuButton()
        {
            try
            {
                _rightScreen =
                    ReflectionUtil.GetPrivateField <VRUIViewController>(_mainMenuViewController,
                                                                        "_releaseInfoViewController");
                _rightPos = _rightScreen.gameObject.transform as RectTransform;
                var modMenuButton = CreateButton(_rightPos);
                SetButtonText(ref modMenuButton, "Mod Menu");
                SetButtonIcon(ref modMenuButton, Icons.First(x => x.name == "SettingsIcon"));

                if (modMenuButton == null)
                {
                    ModMenuPlugin.debugLogger.Exception("Mod menu button returned as null");
                    return;
                }

                // Change button text and add listener
                modMenuButton.onClick.AddListener(delegate
                {
                    try
                    {
                        ModMenuPlugin.debugLogger.Log("Mod menu pressed");
                        if (_modMenuController == null)
                        {
                            _modMenuController = CreateViewController <ModMenuMasterViewController>();
                        }
                        _rightScreen.PresentModalViewController(_modMenuController, null);
                        ModMenuPlugin.debugLogger.Log("Mod menu setup finished");
                        //DELETE POSSIBLE DIFFICULTY TEXT
                        var modlisttemp = GameObject.FindObjectOfType <ModsListViewController>();
                        if (modlisttemp != null)
                        {
                            var textmeshs = modlisttemp.gameObject.GetComponentsInChildren <TextMeshProUGUI>();


                            foreach (TextMeshProUGUI textmesh in textmeshs)
                            {
                                ModMenuPlugin.debugLogger.Log(textmesh.rectTransform.parent.gameObject.name);
                                if (textmesh.rectTransform.parent.name == "DifficultyTableCell(Clone)")
                                {
                                    DestroyImmediate(textmesh.rectTransform.parent.gameObject);
                                }
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        ModMenuPlugin.debugLogger.Exception(ex.StackTrace + ex.Message);
                    }
                });
            }

            catch (Exception ex)
            {
                ModMenuPlugin.debugLogger.Exception(ex.StackTrace + ex.Message);
            }
        }
        private void AddCustomSaberButton()
        {
            _rightScreen = ReflectionUtil.GetPrivateField <VRUIViewController>(_mainMenuViewController, "_releaseInfoViewController");
            _rightPos    = _rightScreen.rectTransform;
            var customSaberButton = CreateButton(_rightPos);

            if (customSaberButton == null)
            {
                return;
            }

            SetButtonText(ref customSaberButton, "Saber Menu");
            customSaberButton.onClick.AddListener(delegate
            {
                if (_sabersMasterViewController == null)
                {
                    _sabersMasterViewController = CreateViewController <CustomSaberMasterViewController>();
                }

                _rightScreen.PresentModalViewController(_sabersMasterViewController, null);
            });
        }
Beispiel #3
0
        private void AddModMenuButton()
        {
            try
            {
                _rightScreen =
                    ReflectionUtil.GetPrivateField <VRUIViewController>(_mainMenuViewController,
                                                                        "_releaseInfoViewController");
                _rightPos = _rightScreen.gameObject.transform as RectTransform;
                var modMenuButton = CreateButton(_rightPos);
                SetButtonText(ref modMenuButton, "Saber Menu");
                SetButtonIcon(ref modMenuButton, Icons.First(x => x.name == "SingleSaberIcon"));

                if (modMenuButton == null)
                {
                    return;
                }

                // Change button text and add listener
                modMenuButton.onClick.AddListener(delegate
                {
                    try
                    {
                        if (_modMenuController == null)
                        {
                            _modMenuController = CreateViewController <ModMenuMasterViewController>();
                        }
                        try
                        {
                        }
                        catch (Exception e)
                        {
                            Console.WriteLine(e.ToString());
                            throw;
                        }
                        _rightScreen.PresentModalViewController(_modMenuController, null);
                        //DELETE POSSIBLE DIFFICULTY TEXT
                        var modlisttemp = GameObject.FindObjectOfType <ModsListViewController>();
                        if (modlisttemp != null)
                        {
                            var textmeshs = modlisttemp.gameObject.GetComponentsInChildren <TextMeshProUGUI>();


                            foreach (TextMeshProUGUI textmesh in textmeshs)
                            {
                                if (textmesh.rectTransform.parent.name == "DifficultyTableCell(Clone)")
                                {
                                    DestroyImmediate(textmesh.rectTransform.parent.gameObject);
                                }
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                    }
                });
            }

            catch (Exception ex)
            {
            }
        }
        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();
        }