diff --git a/IPA.Injector/IPA.Injector.csproj b/IPA.Injector/IPA.Injector.csproj index 34d63e86..f8a462b9 100644 --- a/IPA.Injector/IPA.Injector.csproj +++ b/IPA.Injector/IPA.Injector.csproj @@ -55,6 +55,10 @@ Libraries\Mono\System.Runtime.Serialization.dll Always + + Libraries\Mono\netstandard.dll + Always + @@ -84,9 +88,6 @@ - - $(MSBuildThisFileDirectory)..\Libs\thirdparty\Hive.Versioning.dll - diff --git a/IPA.Loader/Loader/LibLoader.cs b/IPA.Loader/Loader/LibLoader.cs index 4960b6c6..337eb5e6 100644 --- a/IPA.Loader/Loader/LibLoader.cs +++ b/IPA.Loader/Loader/LibLoader.cs @@ -90,6 +90,9 @@ namespace IPA.Loader //var unityData = Directory.EnumerateDirectories(Environment.CurrentDirectory, "*_Data").First(); //AddDir(Path.Combine(unityData, "Plugins")); + + // TODO: find a way to either safely remove Newtonsoft, or switch to a different JSON lib + _ = LoadLibrary(new AssemblyName("Newtonsoft.Json, Version=12.0.0.0, Culture=neutral")); } } @@ -151,21 +154,29 @@ namespace IPA.Loader return Assembly.LoadFrom(path); } - internal static void Log(Logger.Level lvl, string message) + internal static void Log(Logger.Level lvl, string message) { // multiple proxy methods to delay loading of assemblies until it's done if (Logger.LogCreated) + { AssemblyLibLoaderCallLogger(lvl, message); + } else + { if (((byte)lvl & (byte)StandardLogger.PrintFilter) != 0) Console.WriteLine($"[{lvl}] {message}"); + } } internal static void Log(Logger.Level lvl, Exception message) { // multiple proxy methods to delay loading of assemblies until it's done if (Logger.LogCreated) + { AssemblyLibLoaderCallLogger(lvl, message); + } else + { if (((byte)lvl & (byte)StandardLogger.PrintFilter) != 0) - Console.WriteLine($"[{lvl}] {message}"); + Console.WriteLine($"[{lvl}] {message}"); + } } private static void AssemblyLibLoaderCallLogger(Logger.Level lvl, string message) => Logger.LibLoader.Log(lvl, message); diff --git a/Libs/netstandard.dll b/Libs/netstandard.dll new file mode 100644 index 00000000..9350e84c Binary files /dev/null and b/Libs/netstandard.dll differ diff --git a/Refs/UnityEngine.CoreModule.Net4.dll b/Refs/UnityEngine.CoreModule.Net4.dll index a971cd1a..acb52874 100644 Binary files a/Refs/UnityEngine.CoreModule.Net4.dll and b/Refs/UnityEngine.CoreModule.Net4.dll differ diff --git a/Refs/UnityEngine.CoreModule.net3.dll b/Refs/UnityEngine.CoreModule.net3.dll deleted file mode 100644 index 7e4b2a8e..00000000 Binary files a/Refs/UnityEngine.CoreModule.net3.dll and /dev/null differ diff --git a/Refs/UnityEngine.UnityWebRequestModule.net3.dll b/Refs/UnityEngine.UnityWebRequestModule.net3.dll deleted file mode 100644 index 12c5d32b..00000000 Binary files a/Refs/UnityEngine.UnityWebRequestModule.net3.dll and /dev/null differ diff --git a/Refs/UnityEngine.net3.dll b/Refs/UnityEngine.net3.dll deleted file mode 100644 index 446cd53e..00000000 Binary files a/Refs/UnityEngine.net3.dll and /dev/null differ