From cb9cdad62d4f457ab3081854e5aa363d03630bb8 Mon Sep 17 00:00:00 2001 From: Zoryn Aaron Date: Sun, 20 Mar 2016 17:45:45 -0400 Subject: adds support for old-style mods that don't use manifest. It will be removed in future version --- TrainerMod/TrainerMod.csproj | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'TrainerMod/TrainerMod.csproj') diff --git a/TrainerMod/TrainerMod.csproj b/TrainerMod/TrainerMod.csproj index 6424ecdb..8f1a494f 100644 --- a/TrainerMod/TrainerMod.csproj +++ b/TrainerMod/TrainerMod.csproj @@ -54,7 +54,7 @@ ..\packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll - True + False $(SteamPath)\steamapps\common\Stardew Valley\Stardew Valley.exe @@ -85,7 +85,9 @@ - + + PreserveNewest + -- cgit From 17021ae35162cfa4a6dad2c0457d4981f38878bc Mon Sep 17 00:00:00 2001 From: Zoryn Aaron Date: Sun, 20 Mar 2016 18:50:31 -0400 Subject: commit things --- StardewModdingAPI/Constants.cs | 2 +- StardewModdingAPI/FodyWeavers.xml | 5 +++ StardewModdingAPI/Program.cs | 66 +++++++++++++++--------------- StardewModdingAPI/StardewModdingAPI.csproj | 14 ++++++- StardewModdingAPI/packages.config | 2 + TrainerMod/FodyWeavers.xml | 4 ++ TrainerMod/TrainerMod.csproj | 11 ++--- 7 files changed, 63 insertions(+), 41 deletions(-) create mode 100644 StardewModdingAPI/FodyWeavers.xml create mode 100644 TrainerMod/FodyWeavers.xml (limited to 'TrainerMod/TrainerMod.csproj') diff --git a/StardewModdingAPI/Constants.cs b/StardewModdingAPI/Constants.cs index 6812fbee..071f0435 100644 --- a/StardewModdingAPI/Constants.cs +++ b/StardewModdingAPI/Constants.cs @@ -35,7 +35,7 @@ namespace StardewModdingAPI public const int MinorVersion = 38; - public const int PatchVersion = 0; + public const int PatchVersion = 1; public const string Build = "Alpha"; diff --git a/StardewModdingAPI/FodyWeavers.xml b/StardewModdingAPI/FodyWeavers.xml new file mode 100644 index 00000000..2e6d4a7a --- /dev/null +++ b/StardewModdingAPI/FodyWeavers.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/StardewModdingAPI/Program.cs b/StardewModdingAPI/Program.cs index bb863ca4..cde2dfbc 100644 --- a/StardewModdingAPI/Program.cs +++ b/StardewModdingAPI/Program.cs @@ -342,41 +342,41 @@ namespace StardewModdingAPI /// public static void LoadMods_OldWay() { - StardewModdingAPI.Log.Verbose("LOADING MODS (OLD WAY - DEPRECATED. ANY MODS LOADED THIS WAY NEED TO UPDATE)"); - int loadedMods = 0; - foreach (string ModPath in _modPaths) - { - foreach (String s in Directory.GetFiles(ModPath, "*.dll")) - { - if (s.Contains("StardewInjector")) - continue; - StardewModdingAPI.Log.Success("Found DLL: " + s); - try - { - Assembly mod = Assembly.UnsafeLoadFrom(s); //to combat internet-downloaded DLLs - - if (mod.DefinedTypes.Count(x => x.BaseType == typeof(Mod)) > 0) - { - StardewModdingAPI.Log.Verbose("Loading Mod DLL..."); - TypeInfo tar = mod.DefinedTypes.First(x => x.BaseType == typeof(Mod)); + StardewModdingAPI.Log.Verbose("LOADING MODS (OLD WAY - DEPRECATED. ANY MODS LOADED THIS WAY NEED TO UPDATE)"); + int loadedMods = 0; + foreach (string ModPath in _modPaths) + { + foreach (String s in Directory.GetFiles(ModPath, "*.dll")) + { + if (s.Contains("StardewInjector")) + continue; + StardewModdingAPI.Log.Success("Found DLL: " + s); + try + { + Assembly mod = Assembly.UnsafeLoadFrom(s); //to combat internet-downloaded DLLs + + if (mod.DefinedTypes.Count(x => x.BaseType == typeof(Mod)) > 0) + { + StardewModdingAPI.Log.Verbose("Loading Mod DLL..."); + TypeInfo tar = mod.DefinedTypes.First(x => x.BaseType == typeof(Mod)); Mod m = (Mod)mod.CreateInstance(tar.ToString()); m.Manifest = null; - m.PathOnDisk = Path.GetDirectoryName(s); - Console.WriteLine("LOADED MOD: {0} by {1} - Version {2} | Description: {3}", m.Name, m.Authour, m.Version, m.Description); - loadedMods += 1; - m.Entry(); - } - else - { - StardewModdingAPI.Log.Error("Invalid Mod DLL"); - } - } - catch (Exception ex) - { - StardewModdingAPI.Log.Error("Failed to load mod '{0}'. Exception details:\n" + ex, s); - } - } - } + m.PathOnDisk = Path.GetDirectoryName(s); + Console.WriteLine("LOADED MOD: {0} by {1} - Version {2} | Description: {3}", m.Name, m.Authour, m.Version, m.Description); + loadedMods += 1; + m.Entry(); + } + else + { + StardewModdingAPI.Log.Error("Invalid Mod DLL"); + } + } + catch (Exception ex) + { + StardewModdingAPI.Log.Error("Failed to load mod '{0}'. Exception details:\n" + ex, s); + } + } + } StardewModdingAPI.Log.Success("LOADED {0} MODS THAT NEED TO UPDATE", loadedMods); } diff --git a/StardewModdingAPI/StardewModdingAPI.csproj b/StardewModdingAPI/StardewModdingAPI.csproj index c2f286ce..2f217795 100644 --- a/StardewModdingAPI/StardewModdingAPI.csproj +++ b/StardewModdingAPI/StardewModdingAPI.csproj @@ -19,6 +19,8 @@ + false + publish\ true Disk @@ -31,10 +33,10 @@ true 0 1.0.0.%2a - false false true - + + @@ -162,6 +164,7 @@ + @@ -182,6 +185,13 @@ + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + +