diff options
author | Jesse Plamondon-Willard <Pathoschild@users.noreply.github.com> | 2023-04-09 13:14:52 -0400 |
---|---|---|
committer | Jesse Plamondon-Willard <Pathoschild@users.noreply.github.com> | 2023-04-09 13:14:52 -0400 |
commit | 212634ab551b84182ac09614047fbf5a4f3723ff (patch) | |
tree | 878b1c1cdbdc5dc659b69ed17557f7aff07f8be9 | |
parent | c10f4c2506342a00eabeaea8e4ad08d9e0eca9a2 (diff) | |
parent | 0ef55c4b1e2aea60bc7281c31b9ca0dac70f272a (diff) | |
download | SMAPI-212634ab551b84182ac09614047fbf5a4f3723ff.tar.gz SMAPI-212634ab551b84182ac09614047fbf5a4f3723ff.tar.bz2 SMAPI-212634ab551b84182ac09614047fbf5a4f3723ff.zip |
Merge pull request #892 from Shockah/modgroup-config
Mod-group specific config.json overriding
-rw-r--r-- | src/SMAPI/Constants.cs | 3 | ||||
-rw-r--r-- | src/SMAPI/Framework/SCore.cs | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/SMAPI/Constants.cs b/src/SMAPI/Constants.cs index 77a19964..e5601747 100644 --- a/src/SMAPI/Constants.cs +++ b/src/SMAPI/Constants.cs @@ -142,6 +142,9 @@ namespace StardewModdingAPI /// <summary>The file path for the overrides file for <see cref="ApiConfigPath"/>, which is applied over it.</summary> internal static string ApiUserConfigPath => Path.Combine(Constants.InternalFilesPath, "config.user.json"); + /// <summary>The mod-group-specific file path for the overrides file for <see cref="ApiConfigPath"/>, which is applied over it.</summary> + internal static string ApiModGroupConfigPath => Path.Combine(ModsPath, "config.json"); + /// <summary>The file path for the SMAPI metadata file.</summary> internal static string ApiMetadataPath => Path.Combine(Constants.InternalFilesPath, "metadata.json"); diff --git a/src/SMAPI/Framework/SCore.cs b/src/SMAPI/Framework/SCore.cs index abba7f3b..3e179ef7 100644 --- a/src/SMAPI/Framework/SCore.cs +++ b/src/SMAPI/Framework/SCore.cs @@ -197,6 +197,8 @@ namespace StardewModdingAPI.Framework this.Settings = JsonConvert.DeserializeObject<SConfig>(File.ReadAllText(Constants.ApiConfigPath)) ?? throw new InvalidOperationException("The 'smapi-internal/config.json' file is missing or invalid. You can reinstall SMAPI to fix this."); if (File.Exists(Constants.ApiUserConfigPath)) JsonConvert.PopulateObject(File.ReadAllText(Constants.ApiUserConfigPath), this.Settings); + if (File.Exists(Constants.ApiModGroupConfigPath)) + JsonConvert.PopulateObject(File.ReadAllText(Constants.ApiModGroupConfigPath), this.Settings); if (developerMode.HasValue) this.Settings.OverrideDeveloperMode(developerMode.Value); |