Esempio n. 1
0
        public static void LoadNewSaber(string name)
        {
            if (name != "DefaultSabers")
            {
                SaberScript.CustomSaber = SaberLoader.GetSaberAssetBundle(name);
            }

            PlayerPrefs.SetString("lastSaber", name);
            Logger.Log($"Loaded saber {name}");
        }
        public override void __Activate(ActivationType activationType)
        {
            selected = SaberLoader.FindSaberByName(Plugin._currentSaberName);

            base.__Activate(activationType);
            _customListTableView.SelectCellWithIdx(selected);

            if (_backButton == null)
            {
                _backButton = BeatSaberUI.CreateBackButton(rectTransform as RectTransform);
                _backButton.onClick.AddListener(delegate()
                {
                    backButtonPressed?.Invoke();

                    SaberPreviewController.Instance.DestroyPreview();
                    _customListTableView.didSelectCellWithIdxEvent -= _sabersTableView_DidSelectRowEvent;
                    if (menuShockwave)
                    {
                        menuShockwave.enabled = menuShockwaveOriginalState;
                    }

                    if (CustomColorsPresent)
                    {
                        SaberPreviewController.Instance.CallCustomColors(false);
                    }
                });
            }

            PreviewCurrent();

            if (menuShockwave)
            {
                menuShockwaveOriginalState = menuShockwave.enabled;
                menuShockwave.enabled      = false;
            }

            var _versionNumber = BeatSaberUI.CreateText(rectTransform, "Text", new Vector2(-10f, -10f));

            (_versionNumber.transform as RectTransform).anchoredPosition = new Vector2(-10f, 10f);
            (_versionNumber.transform as RectTransform).anchorMax        = new Vector2(1f, 0f);
            (_versionNumber.transform as RectTransform).anchorMin        = new Vector2(1f, 0f);

            _versionNumber.text     = $"v{Plugin.PluginVersion}";
            _versionNumber.fontSize = 5;
            _versionNumber.color    = Color.white;

            _customListTableView.didSelectCellWithIdxEvent += _sabersTableView_DidSelectRowEvent;
            _customListTableView.ScrollToCellWithIdx(selected, TableViewScroller.ScrollPositionType.Beginning, false);
            _customListTableView.SelectCellWithIdx(selected, false);
        }
Esempio n. 3
0
        public void OnApplicationStart()
        {
            if (_init)
            {
                return;
            }
            _init = true;

            Logger.Log($"Custom Sabers v{Plugin.PluginVersion} has started", Logger.LogLevel.Notice);

            SaberLoader.LoadSabers();

            if (SaberLoader.AllSabers.Count == 0)
            {
                Logger.Log("No custom sabers found.");
                return;
            }

            _currentSaberName = PlayerPrefs.GetString("lastSaber", null);
            if (_currentSaberName == null || SaberLoader.FindSaberByName(_currentSaberName) == -1)
            {
                _currentSaberName = SaberLoader.AllSabers[0].Name;
            }
        }