Esempio n. 1
0
        private static void CreateSettingsUI()
        {
            var subMenu = SettingsUI.CreateSubMenu("Platforms");

            var feetMenu = subMenu.AddBool("Always Show Feet");

            feetMenu.GetValue += delegate
            {
                return(PlatformManager.Instance.envHider.showFeetOverride);
            };
            feetMenu.SetValue += delegate(bool value)
            {
                PlatformManager.Instance.envHider.showFeetOverride = value;
                ModPrefs.SetBool(CustomFloorPlugin.PluginName, "AlwaysShowFeet", PlatformManager.Instance.envHider.showFeetOverride);
            };

            var environment = subMenu.AddList("Environment Override", EnvironmentSceneOverrider.OverrideModes());

            environment.GetValue += delegate
            {
                return((float)EnvironmentSceneOverrider.overrideMode);
            };
            environment.SetValue += delegate(float value)
            {
                EnvironmentSceneOverrider.overrideMode = (EnvironmentSceneOverrider.EnvOverrideMode)value;
                EnvironmentSceneOverrider.OverrideEnvironmentScene();
                ModPrefs.SetInt(CustomFloorPlugin.PluginName, "EnvironmentOverrideMode", (int)EnvironmentSceneOverrider.overrideMode);
            };
            environment.FormatValue += delegate(float value) { return(EnvironmentSceneOverrider.Name((EnvironmentSceneOverrider.EnvOverrideMode)value)); };
        }
Esempio n. 2
0
        private void Start()
        {
            platforms = new PlatformLoader().CreateAllPlatforms(transform);

            // Retrieve saved path from player prefs if it exists
            if (ModPrefs.HasKey(CustomFloorPlugin.PluginName, "CustomPlatformPath"))
            {
                string savedPath = ModPrefs.GetString(CustomFloorPlugin.PluginName, "CustomPlatformPath");
                // Check if this path was loaded and update our platform index
                for (int i = 0; i < platforms.Length; i++)
                {
                    if (savedPath == platforms[i].platName + platforms[i].platAuthor)
                    {
                        platformIndex = i;
                        break;
                    }
                }
            }

            EnvironmentArranger.arrangement        = (EnvironmentArranger.Arrangement)ModPrefs.GetInt(CustomFloorPlugin.PluginName, "EnvironmentArrangement", 0, true);
            EnvironmentSceneOverrider.overrideMode = (EnvironmentSceneOverrider.EnvOverrideMode)ModPrefs.GetInt(CustomFloorPlugin.PluginName, "EnvironmentOverrideMode", 0, true);
            EnvironmentSceneOverrider.GetSceneInfos();
            EnvironmentSceneOverrider.OverrideEnvironmentScene();

            envHider = new EnvironmentHider();
            envHider.showFeetOverride = ModPrefs.GetBool(CustomFloorPlugin.PluginName, "AlwaysShowFeet", false, true);
            envHider.FindEnvironment();
            envHider.HideObjectsForPlatform(currentPlatform);

            currentPlatform.gameObject.SetActive(true);

            BSSceneManager.activeSceneChanged += SceneManagerOnActiveSceneChanged;

            PlatformUI.OnLoad();
        }
        /// <summary>
        /// Initializes the <see cref="PlatformManager"/>
        /// </summary>
        internal static void Init()
        {
            EnvironmentSceneOverrider.Init();
            Anchor.AddComponent <EasterEggs>();

            GSM.transitionDidStartEvent  += (float ignored) => { TransitionPrep(); };
            GSM.transitionDidFinishEvent += (ScenesTransitionSetupDataSO ignored1, DiContainer ignored2) => { TransitionFinalize(); };
            AllPlatforms = PlatformLoader.CreateAllPlatforms(Anchor.transform);

            CurrentPlatform = AllPlatforms[0];
            if (CONFIG.HasKey("Data", "CustomPlatformPath"))
            {
                string savedPath = CONFIG.GetString("Data", "CustomPlatformPath");
                for (int i = 0; i < AllPlatforms.Count; i++)
                {
                    if (savedPath == AllPlatforms[i].platName + AllPlatforms[i].platAuthor)
                    {
                        CurrentPlatform = AllPlatforms[i];
                        break;
                    }
                }
            }

            LoadHeart();
        }
Esempio n. 4
0
 /// <summary>
 /// Finishes up scene transitions, spawning the selected <see cref="CustomPlatform"/> if needed
 /// </summary>
 private static void TransitionFinalize()
 {
     try {
         Scene currentEvironment = GetCurrentEnvironment();
         if (!currentEvironment.name.StartsWith("Menu", STR_INV) && MultiplayerCheck() && D360Check() && currentEvironment.name != "TutorialEnvironment")   //Excluding TutorialEnvironment for Counters+ to work properly
         {
             try {
                 Settings.UpdatePlayerData();
                 if (EnvironmentSceneOverrider.didOverrideEnvironment || (PlatformsListView.EnvOr == EnvOverrideMode.Song && !Settings.PlayerData.overrideEnvironmentSettings.overrideEnvironments) || currentEvironment.name.StartsWith("Multiplayer", STR_INV))
                 {
                     if (!platformSpawned)
                     {
                         PlatformLifeCycleManagement.InternalChangeToPlatform();
                         EnvironmentSceneOverrider.Revert();
                     }
                 }
             }
             catch (ManagerNotFoundException e) {
                 Log(e);
             }
         }
         else if (currentEvironment.name.StartsWith("Menu", STR_INV))
         {
             platformSpawned = false;
             Heart.SetActive(Settings.ShowHeart);
             Heart.GetComponent <LightWithIdMonoBehaviour>().ColorWasSet(Color.magenta);
         }
     }
     catch (EnvironmentSceneNotFoundException) { }
 }
Esempio n. 5
0
        /// <summary>
        /// Initializes the <see cref="PlatformManager"/>
        /// </summary>
        internal static void Init()
        {
            EnvironmentSceneOverrider.Init();
            Anchor.AddComponent <EasterEggs>();

            GSM.transitionDidStartEvent  += (float ignored) => { TransitionPrep(); };
            GSM.transitionDidFinishEvent += (ScenesTransitionSetupDataSO ignored1, DiContainer ignored2) => { TransitionFinalize(); };
            Reload();
        }
Esempio n. 6
0
        private void Start()
        {
            EnvironmentSceneOverrider.GetSceneInfos();
            EnvironmentSceneOverrider.OverrideEnvironmentScene();

            EnvHider       = new EnvironmentHider();
            platformLoader = new PlatformLoader();

            RefreshPlatforms();
            PlatformUI.OnLoad();
        }
Esempio n. 7
0
        private static void CreateSettingsUI()
        {
            var subMenu = SettingsUI.CreateSubMenu("Platforms");

            var feetMenu = subMenu.AddBool("Always Show Feet");

            feetMenu.GetValue += delegate
            {
                return(EnvironmentHider.showFeetOverride);
            };
            feetMenu.SetValue += delegate(bool value)
            {
                EnvironmentHider.showFeetOverride = value;
                Plugin.config.SetBool("Settings", "AlwaysShowFeet", EnvironmentHider.showFeetOverride);
            };

            var environment = subMenu.AddList("Environment Override", EnvironmentSceneOverrider.OverrideModes());

            environment.GetValue += delegate
            {
                return((float)EnvironmentSceneOverrider.overrideMode);
            };
            environment.SetValue += delegate(float value)
            {
                EnvironmentSceneOverrider.overrideMode = (EnvironmentSceneOverrider.EnvOverrideMode)value;
                EnvironmentSceneOverrider.OverrideEnvironmentScene();
                Plugin.config.SetInt("Settings", "EnvironmentOverrideMode", (int)EnvironmentSceneOverrider.overrideMode);
            };
            environment.FormatValue += delegate(float value) { return(EnvironmentSceneOverrider.Name((EnvironmentSceneOverrider.EnvOverrideMode)value)); };

            var arrangement = subMenu.AddList("Environment Arrangement", EnvironmentArranger.RepositionModes());

            arrangement.GetValue += delegate
            {
                return((float)EnvironmentArranger.arrangement);
            };
            arrangement.SetValue += delegate(float value)
            {
                EnvironmentArranger.arrangement = (EnvironmentArranger.Arrangement)value;
                Plugin.config.SetInt("Settings", "EnvironmentArrangement", (int)EnvironmentArranger.arrangement);
            };
            arrangement.FormatValue += delegate(float value) { return(EnvironmentArranger.Name((EnvironmentArranger.Arrangement)value)); };
        }
        private void Start()
        {
            EnvironmentArranger.arrangement        = (EnvironmentArranger.Arrangement)Plugin.config.GetInt("Settings", "EnvironmentArrangement", 0, true);
            EnvironmentSceneOverrider.overrideMode = (EnvironmentSceneOverrider.EnvOverrideMode)Plugin.config.GetInt("Settings", "EnvironmentOverrideMode", 0, true);
            EnvironmentSceneOverrider.GetSceneInfos();
            EnvironmentSceneOverrider.OverrideEnvironmentScene();

            menuEnvHider   = new EnvironmentHider();
            gameEnvHider   = new EnvironmentHider();
            platformLoader = new PlatformLoader();

            BSEvents.gameSceneLoaded      += HandleGameSceneLoaded;
            BSEvents.menuSceneLoadedFresh += HandleMenuSceneLoadedFresh;
            BSEvents.menuSceneLoaded      += HandleMenuSceneLoaded;

            RefreshPlatforms();

            HandleMenuSceneLoadedFresh();

            PlatformUI.OnLoad();
        }
Esempio n. 9
0
        private void SceneManager_sceneLoaded(Scene arg0, LoadSceneMode arg1)
        {
            // Load in the menu scene
            if (arg0.name == "Menu" && !init)
            {
                init = true;

                SettingsUI.OnLoad();
                BSSceneManager.OnLoad();
                PlatformLoader.OnLoad();

                // Load from modprefs
                EnvironmentHider.showFeetOverride = ModPrefs.GetBool(PluginName, "AlwaysShowFeet", false, true);

                EnvironmentSceneOverrider.overrideMode = (EnvironmentSceneOverrider.EnvOverrideMode)ModPrefs.GetInt(PluginName, "EnvironmentOverrideMode", 0, true);
                EnvironmentSceneOverrider.GetSceneInfos();
                EnvironmentSceneOverrider.OverrideEnvironmentScene();

                //Application.logMessageReceived += LogCallback;
            }
        }