void ReadPreferences() { _overrideCustomSabers = Config.GetBool("Core", "OverrideCustomSabers", true, true); useArrowColorsForSabers = Config.GetBool("Core", "useArrowColorsForSabers", false, true); allowEnvironmentColors = Config.GetBool("Core", "allowEnvironmentColors", true, true); disablePlugin = Config.GetBool("Core", "disablePlugin", false, true) || ctInstalled; if (disablePlugin) { queuedDisable = true; } if (queuedDisable) { ColorLeft = new Color( 1f, 4f / 255f, 4f / 255f ); ColorRight = new Color( 0, 192f / 255f, 1f ); ColorLeftLight = new Color(1, 4 / 255f, 4 / 255f); ColorRightLight = new Color(0, 192 / 255f, 1); wallColorPreset = 0; wallFrameColorPreset = 0; } if (disablePlugin == false) { leftColorPreset = Config.GetInt("Presets", "leftNoteColorPreset", 0, true); rightColorPreset = Config.GetInt("Presets", "rightNoteColorPreset", 0, true); wallColorPreset = Config.GetInt("Presets", "wallColorPreset", 0, true); wallFrameColorPreset = Config.GetInt("Presets", "wallFrameColorPreset", 0, true); leftLightPreset = Config.GetInt("Presets", "leftLightPreset", 1, true); rightLightPreset = Config.GetInt("Presets", "rightLightPreset", 2, true); bombColorPreset = Config.GetInt("Presets", "bombColorPreset", 0, true); leftArrowPreset = Config.GetInt("Presets", "leftArrowPreset", 0, true); rightArrowPreset = Config.GetInt("Presets", "rightArrowPreset", 0, true); leftArrowGlowPreset = Config.GetInt("Presets", "leftArrowGlowPreset", 0, true); rightArrowGlowPreset = Config.GetInt("Presets", "rightArrowGlowPreset", 0, true); dotArrowFix = Config.GetBool("Core", "dotArrowFix", false, true); disableArrowChanges = Config.GetBool("Core", "disableArrowChanges", false, true); brightness = Config.GetFloat("Core", "Brightness", 1, true); rainbowWall = Config.GetBool("Presets", "rainbowWalls", false, true); //Make sure preset exists, else default to user if (leftColorPreset > ColorsUI.ColorPresets.Count) { leftColorPreset = 0; } if (rightColorPreset > ColorsUI.ColorPresets.Count) { rightColorPreset = 0; } if (leftLightPreset > ColorsUI.OtherPresets.Count) { leftLightPreset = 0; } if (rightLightPreset > ColorsUI.OtherPresets.Count) { rightLightPreset = 0; } if (wallColorPreset > ColorsUI.OtherPresets.Count) { wallColorPreset = 0; } if (wallFrameColorPreset > ColorsUI.OtherPresets.Count) { wallFrameColorPreset = 0; } if (leftArrowGlowPreset > ColorsUI.OtherPresets.Count) { leftArrowGlowPreset = 0; } if (rightArrowGlowPreset > ColorsUI.OtherPresets.Count) { rightArrowGlowPreset = 0; } if (rightArrowPreset > ColorsUI.OtherPresets.Count) { rightArrowPreset = 0; } if (leftArrowPreset > ColorsUI.OtherPresets.Count) { leftArrowPreset = 0; } if (bombColorPreset > ColorsUI.OtherPresets.Count) { bombColorPreset = 0; } //If preset is user get config values for colors, otherwise use preset LeftUserColor = new Color( Config.GetFloat("User Preset Colors", "Left User Preset R", 255, true) / 255f, Config.GetFloat("User Preset Colors", "Left User Preset G", 4, true) / 255f, Config.GetFloat("User Preset Colors", "Left User Preset B", 4, true) / 255f ); RightUserColor = new Color( Config.GetFloat("User Preset Colors", "Right User Preset R", 0, true) / 255f, Config.GetFloat("User Preset Colors", "Right User Preset G", 192, true) / 255f, Config.GetFloat("User Preset Colors", "Right User Preset B", 255, true) / 255f ); if (leftColorPreset == 0) { ColorLeft = LeftUserColor; } else { ColorLeft = ColorsUI.ColorPresets[leftColorPreset].Item1; } if (rightColorPreset == 0) { ColorRight = RightUserColor; } else { ColorRight = ColorsUI.ColorPresets[rightColorPreset].Item1; } //Set Light colors switch (leftLightPreset) { case 0: ColorLeftLight = new Color(1, 4 / 255f, 4 / 255f); break; case 1: ColorLeftLight = ColorLeft; if (leftColorPreset != 1 && leftColorPreset != 2) { ColorLeftLight *= .8f; } break; case 2: ColorLeftLight = ColorRight; if (rightColorPreset != 1 && rightColorPreset != 2) { ColorLeftLight *= .8f; } break; case 3: ColorLeftLight = LeftUserColor; ColorLeftLight *= .8f; break; case 4: ColorLeftLight = RightUserColor; ColorLeftLight *= .8f; break; default: ColorLeftLight = ColorsUI.OtherPresets[leftLightPreset].Item1; ColorLeftLight *= .8f; break; } switch (rightLightPreset) { case 0: ColorRightLight = new Color(0, 192 / 255f, 1); break; case 1: ColorRightLight = ColorLeft; if (leftColorPreset != 1 && leftColorPreset != 2) { ColorRightLight *= .8f; } break; case 2: ColorRightLight = ColorRight; if (rightColorPreset != 1 && rightColorPreset != 2) { ColorRightLight *= .8f; } break; case 3: ColorRightLight = LeftUserColor; ColorRightLight *= .8f; break; case 4: ColorRightLight = RightUserColor; ColorRightLight *= .8f; break; default: ColorRightLight = ColorsUI.OtherPresets[rightLightPreset].Item1; ColorRightLight *= .8f; break; } switch (bombColorPreset) { case 0: bombColor = new Color(0, 0, 0); break; case 1: bombColor = ColorLeft; break; case 2: bombColor = ColorRight; break; case 3: bombColor = LeftUserColor; break; case 4: bombColor = RightUserColor; break; default: bombColor = ColorsUI.OtherPresets[bombColorPreset].Item1; break; } SetArrowColors(); ColorLeftLight *= brightness; ColorRightLight *= brightness; } CCSettingsChanged?.Invoke(); }
void ReadPreferences() { _overrideCustomSabers = ModPrefs.GetBool(Name, "OverrideCustomSabers", true, true); allowEnvironmentColors = ModPrefs.GetBool(Plugin.Name, "allowEnvironmentColors", true, true); if (disablePlugin == false) { disablePlugin = ModPrefs.GetBool(Name, "disablePlugin", false, true); if (disablePlugin) { queuedDisable = true; } } if (queuedDisable) { ColorLeft = new Color( ModPrefs.GetInt(Name, "LeftRed", 255, true) / 255f, ModPrefs.GetInt(Name, "LeftGreen", 4, true) / 255f, ModPrefs.GetInt(Name, "LeftBlue", 4, true) / 255f ); ColorRight = new Color( ModPrefs.GetInt(Name, "RightRed", 0, true) / 255f, ModPrefs.GetInt(Name, "RightGreen", 192, true) / 255f, ModPrefs.GetInt(Name, "RightBlue", 255, true) / 255f ); ColorLeftLight = new Color(1, 4 / 255f, 4 / 255f); ColorRightLight = new Color(0, 192 / 255f, 1); wallColorPreset = 0; } if (disablePlugin == false) { userIncrement = ModPrefs.GetInt(Name, "userIncrement", 10, true); leftColorPreset = ModPrefs.GetInt(Name, "leftColorPreset", 0, true); rightColorPreset = ModPrefs.GetInt(Name, "rightColorPreset", 0, true); wallColorPreset = ModPrefs.GetInt(Name, "wallColorPreset", 0, true); leftLightPreset = ModPrefs.GetInt(Name, "leftLightPreset", 1, true); rightLightPreset = ModPrefs.GetInt(Name, "rightLightPreset", 2, true); brightness = ModPrefs.GetFloat(Name, "Brightness", 1, true); rainbowWall = ModPrefs.GetBool(Name, "rainbowWalls", false, true); //Make sure preset exists, else default to user if (leftColorPreset > ColorsUI.ColorPresets.Count) { leftColorPreset = 0; } if (rightColorPreset > ColorsUI.ColorPresets.Count) { rightColorPreset = 0; } if (leftLightPreset > ColorsUI.OtherPresets.Count) { leftLightPreset = 0; } if (rightLightPreset > ColorsUI.OtherPresets.Count) { rightLightPreset = 0; } if (wallColorPreset > ColorsUI.OtherPresets.Count) { wallColorPreset = 0; } //If preset is user get modprefs for colors, otherwise use preset if (leftColorPreset == 0) { ColorLeft = new Color( ModPrefs.GetInt(Name, "LeftRed", 255, true) / 255f, ModPrefs.GetInt(Name, "LeftGreen", 4, true) / 255f, ModPrefs.GetInt(Name, "LeftBlue", 4, true) / 255f ); } else { ColorLeft = ColorsUI.ColorPresets[leftColorPreset].Item1; } if (rightColorPreset == 0) { ColorRight = new Color( ModPrefs.GetInt(Name, "RightRed", 0, true) / 255f, ModPrefs.GetInt(Name, "RightGreen", 192, true) / 255f, ModPrefs.GetInt(Name, "RightBlue", 255, true) / 255f ); } else { ColorRight = ColorsUI.ColorPresets[rightColorPreset].Item1; } //Set Light colors switch (leftLightPreset) { case 0: ColorLeftLight = new Color(1, 4 / 255f, 4 / 255f); break; case 1: ColorLeftLight = ColorLeft; if (leftColorPreset != 1 && leftColorPreset != 2) { ColorLeftLight *= .8f; } break; case 2: ColorLeftLight = ColorRight; if (rightColorPreset != 1 && rightColorPreset != 2) { ColorLeftLight *= .8f; } break; case 3: ColorLeftLight = new Color( ModPrefs.GetInt(Name, "LeftRed", 255, true) / 255f, ModPrefs.GetInt(Name, "LeftGreen", 4, true) / 255f, ModPrefs.GetInt(Name, "LeftBlue", 4, true) / 255f ); ColorLeftLight *= .8f; break; case 4: ColorLeftLight = new Color( ModPrefs.GetInt(Name, "RightRed", 0, true) / 255f, ModPrefs.GetInt(Name, "RightGreen", 192, true) / 255f, ModPrefs.GetInt(Name, "RightBlue", 255, true) / 255f ); ColorLeftLight *= .8f; break; default: ColorLeftLight = ColorsUI.OtherPresets[leftLightPreset].Item1; ColorLeftLight *= .8f; break; } switch (rightLightPreset) { case 0: ColorRightLight = new Color(0, 192 / 255f, 1); break; case 1: ColorRightLight = ColorLeft; if (leftColorPreset != 1 && leftColorPreset != 2) { ColorRightLight *= .8f; } break; case 2: ColorRightLight = ColorRight; if (rightColorPreset != 1 && rightColorPreset != 2) { ColorRightLight *= .8f; } break; case 3: ColorRightLight = new Color( ModPrefs.GetInt(Name, "LeftRed", 255, true) / 255f, ModPrefs.GetInt(Name, "LeftGreen", 4, true) / 255f, ModPrefs.GetInt(Name, "LeftBlue", 4, true) / 255f ); ColorRightLight *= .8f; break; case 4: ColorRightLight = new Color( ModPrefs.GetInt(Name, "RightRed", 0, true) / 255f, ModPrefs.GetInt(Name, "RightGreen", 192, true) / 255f, ModPrefs.GetInt(Name, "RightBlue", 255, true) / 255f ); ColorRightLight *= .8f; break; default: ColorRightLight = ColorsUI.OtherPresets[rightLightPreset].Item1; ColorRightLight *= .8f; break; } ColorLeftLight *= brightness; ColorRightLight *= brightness; GetWallColor(); } CCSettingsChanged?.Invoke(); }