summaryrefslogtreecommitdiff
path: root/src/StardewModdingAPI/ModHelper.cs
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <github@jplamondonw.com>2017-01-19 12:23:40 -0500
committerJesse Plamondon-Willard <github@jplamondonw.com>2017-01-19 12:23:40 -0500
commite9cb691251668af87f25549fdedaf382e820075f (patch)
tree4050e29fc79c54877de5d2ecf905a5befcd512e2 /src/StardewModdingAPI/ModHelper.cs
parent6adf199987a506f8a65f6c1ddfad5aa9fa2a6a9f (diff)
parentb90387668d5fee2ebf67d730dbb3aa8cec6a5b67 (diff)
downloadSMAPI-e9cb691251668af87f25549fdedaf382e820075f.tar.gz
SMAPI-e9cb691251668af87f25549fdedaf382e820075f.tar.bz2
SMAPI-e9cb691251668af87f25549fdedaf382e820075f.zip
Merge branch 'develop' into stable
Diffstat (limited to 'src/StardewModdingAPI/ModHelper.cs')
-rw-r--r--src/StardewModdingAPI/ModHelper.cs13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/StardewModdingAPI/ModHelper.cs b/src/StardewModdingAPI/ModHelper.cs
index 78b3eefa..c20130cf 100644
--- a/src/StardewModdingAPI/ModHelper.cs
+++ b/src/StardewModdingAPI/ModHelper.cs
@@ -30,22 +30,31 @@ namespace StardewModdingAPI
/// <summary>Simplifies access to private game code.</summary>
public IReflectionHelper Reflection { get; } = new ReflectionHelper();
+ /// <summary>Metadata about loaded mods.</summary>
+ public IModRegistry ModRegistry { get; }
+
/*********
** Public methods
*********/
/// <summary>Construct an instance.</summary>
/// <param name="modDirectory">The mod directory path.</param>
- public ModHelper(string modDirectory)
+ /// <param name="modRegistry">Metadata about loaded mods.</param>
+ /// <exception cref="ArgumentException">An argument is null or invalid.</exception>
+ /// <exception cref="InvalidOperationException">The <paramref name="modDirectory"/> path does not exist on disk.</exception>
+ public ModHelper(string modDirectory, IModRegistry modRegistry)
{
// validate
+ if (modRegistry == null)
+ throw new ArgumentException("The mod registry cannot be null.");
if (string.IsNullOrWhiteSpace(modDirectory))
- throw new InvalidOperationException("The mod directory cannot be empty.");
+ throw new ArgumentException("The mod directory cannot be empty.");
if (!Directory.Exists(modDirectory))
throw new InvalidOperationException("The specified mod directory does not exist.");
// initialise
this.DirectoryPath = modDirectory;
+ this.ModRegistry = modRegistry;
}
/****