summaryrefslogtreecommitdiff
path: root/src/StardewModdingAPI/Framework/Serialisation
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <github@jplamondonw.com>2017-09-23 22:50:35 -0400
committerJesse Plamondon-Willard <github@jplamondonw.com>2017-09-23 22:50:35 -0400
commit33af789e2eb4da101cead531b77c29ecf4933549 (patch)
tree6c7801b548345514fcc47853ac4d79a402a178a9 /src/StardewModdingAPI/Framework/Serialisation
parent9495cc0f493a11960aa23551e164018681d08f79 (diff)
downloadSMAPI-33af789e2eb4da101cead531b77c29ecf4933549.tar.gz
SMAPI-33af789e2eb4da101cead531b77c29ecf4933549.tar.bz2
SMAPI-33af789e2eb4da101cead531b77c29ecf4933549.zip
abstract mod IDs with multiple variants (#361)
Diffstat (limited to 'src/StardewModdingAPI/Framework/Serialisation')
-rw-r--r--src/StardewModdingAPI/Framework/Serialisation/SFieldConverter.cs15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/StardewModdingAPI/Framework/Serialisation/SFieldConverter.cs b/src/StardewModdingAPI/Framework/Serialisation/SFieldConverter.cs
index 59cc1582..d71e138b 100644
--- a/src/StardewModdingAPI/Framework/Serialisation/SFieldConverter.cs
+++ b/src/StardewModdingAPI/Framework/Serialisation/SFieldConverter.cs
@@ -27,7 +27,7 @@ namespace StardewModdingAPI.Framework.Serialisation
return
objectType == typeof(ISemanticVersion)
|| objectType == typeof(IManifestDependency[])
- || objectType == typeof(ModDataID[]);
+ || objectType == typeof(ModDataID);
}
/// <summary>Reads the JSON representation of the object.</summary>
@@ -83,17 +83,10 @@ namespace StardewModdingAPI.Framework.Serialisation
}
// mod compatibility ID
- if (objectType == typeof(ModDataID[]))
+ if (objectType == typeof(ModDataID))
{
- List<ModDataID> result = new List<ModDataID>();
- foreach (JToken child in JArray.Load(reader).Children())
- {
- result.Add(child is JValue value
- ? new ModDataID(value.Value<string>())
- : child.ToObject<ModDataID>()
- );
- }
- return result.ToArray();
+ JToken token = JToken.Load(reader);
+ return new ModDataID(token.Value<string>());
}
// unknown