/// <summary> /// Load Configuration /// </summary> internal static void Load() { BS_Utils.Utilities.Config oldConfig = new BS_Utils.Utilities.Config("modprefs"); if (oldConfig.HasKey(Plugin.PluginName, "GripLeftPosition") && !oldConfig.GetBool(Plugin.PluginName, "IsExportedToNewConfig", false)) { // Import SaberTailor's settings from the old configuration (ModPrefs) try { PluginConfig importedConfig = ConfigurationImporter.ImportSettingsFromModPrefs(oldConfig); PluginConfig.Instance = importedConfig; // Store configuration in the new format immediately PluginConfig.Instance.Changed(); Logger.log.Info("Configuration loaded from ModPrefs."); } catch (Exception ex) { Logger.log.Warn("Failed to import ModPrefs configuration. Loading default BSIPA configuration instead."); Logger.log.Warn(ex); } } LoadConfig(); UpdateConfig(); Logger.log.Debug("Configuration has been set"); // Update variables used by mod logic UpdateModVariables(); }
/// <summary> /// Load Configuration /// </summary> internal static void Load() { // Yeet this once ModPrefs support is dropped by BSIPA. #pragma warning disable CS0618 // ModPrefs is obsolete if (ModPrefs.HasKey(Plugin.PluginName, "GripLeftPosition") && !ModPrefs.GetBool(Plugin.PluginName, "IsExportedToNewConfig", false)) #pragma warning restore CS0618 // ModPrefs is obsolete { // Import SaberTailor's settings from the old configuration (ModPrefs) try { PluginConfig importedConfig = ConfigurationImporter.ImportSettingsFromModPrefs(); PluginConfig.Instance = importedConfig; // Store configuration in the new format immediately PluginConfig.Instance.Changed(); Logger.log.Info("Configuration loaded from ModPrefs."); } catch (Exception ex) { Logger.log.Warn("Failed to import ModPrefs configuration. Loading default BSIPA configuration instead."); Logger.log.Warn(ex); } } try { LoadConfig(); } catch (Exception ex) { Logger.log.Warn("Failed to load config file. Generating new default configuration..."); PluginConfig.Instance = new PluginConfig(); LoadConfig(); } UpdateConfig(); Logger.log.Debug("Configuration has been set"); // Update variables used by mod logic UpdateModVariables(); }