summaryrefslogtreecommitdiff
path: root/src/StardewModdingAPI
diff options
context:
space:
mode:
Diffstat (limited to 'src/StardewModdingAPI')
-rw-r--r--src/StardewModdingAPI/Framework/Manifest.cs6
-rw-r--r--src/StardewModdingAPI/IManifest.cs7
2 files changed, 12 insertions, 1 deletions
diff --git a/src/StardewModdingAPI/Framework/Manifest.cs b/src/StardewModdingAPI/Framework/Manifest.cs
index 189da9a8..62c711e2 100644
--- a/src/StardewModdingAPI/Framework/Manifest.cs
+++ b/src/StardewModdingAPI/Framework/Manifest.cs
@@ -1,5 +1,7 @@
using System;
+using System.Collections.Generic;
using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
using StardewModdingAPI.Framework.Serialisation;
namespace StardewModdingAPI.Framework
@@ -35,5 +37,9 @@ namespace StardewModdingAPI.Framework
/// <summary>Whether the mod uses per-save config files.</summary>
[Obsolete("Use " + nameof(Mod) + "." + nameof(Mod.Helper) + "." + nameof(IModHelper.ReadConfig) + " instead")]
public bool PerSaveConfigs { get; set; }
+
+ /// <summary>Any manifest fields which didn't match a valid field.</summary>
+ [JsonExtensionData]
+ public IDictionary<string, object> ExtraFields { get; set; }
}
}
diff --git a/src/StardewModdingAPI/IManifest.cs b/src/StardewModdingAPI/IManifest.cs
index 3e4b7513..d7c503a4 100644
--- a/src/StardewModdingAPI/IManifest.cs
+++ b/src/StardewModdingAPI/IManifest.cs
@@ -1,4 +1,6 @@
-namespace StardewModdingAPI
+using System.Collections.Generic;
+
+namespace StardewModdingAPI
{
/// <summary>A manifest which describes a mod for SMAPI.</summary>
public interface IManifest
@@ -23,5 +25,8 @@
/// <summary>The name of the DLL in the directory that has the <see cref="Mod.Entry"/> method.</summary>
string EntryDll { get; set; }
+
+ /// <summary>Any manifest fields which didn't match a valid field.</summary>
+ IDictionary<string, object> ExtraFields { get; set; }
}
} \ No newline at end of file