diff --git a/BSIPA.sln b/BSIPA.sln
index ee198fd9..d11acd5f 100644
--- a/BSIPA.sln
+++ b/BSIPA.sln
@@ -6,7 +6,6 @@ MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IPA", "IPA\IPA.csproj", "{14092533-98BB-40A4-9AFC-27BB75672A70}"
ProjectSection(ProjectDependencies) = postProject
{5F33B310-DC8D-4C0D-877E-BAC3908DE10F} = {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A} = {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}
{2A1AF16B-27F1-46E0-9A95-181516BC1CB7} = {2A1AF16B-27F1-46E0-9A95-181516BC1CB7}
EndProjectSection
EndProject
@@ -35,8 +34,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CollectDependencies", "BuildTools\CollectDependencies\CollectDependencies.csproj", "{5F33B310-DC8D-4C0D-877E-BAC3908DE10F}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AssemblyRenameStep", "BuildTools\AssemblyRenameStep\AssemblyRenameStep.csproj", "{E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}"
-EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BSIPA-ModList", "BSIPA-ModList\BSIPA-ModList.csproj", "{23AB2621-A05C-4377-8418-85E6012C0BBE}"
ProjectSection(ProjectDependencies) = postProject
{5F33B310-DC8D-4C0D-877E-BAC3908DE10F} = {5F33B310-DC8D-4C0D-877E-BAC3908DE10F}
@@ -223,38 +220,6 @@ Global
{5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose|x86-Net3.Build.0 = Debug|Any CPU
{5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose|x86-Net4.ActiveCfg = Debug|Any CPU
{5F33B310-DC8D-4C0D-877E-BAC3908DE10F}.Verbose|x86-Net4.Build.0 = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x64-Net3.ActiveCfg = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x64-Net3.Build.0 = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x64-Net4.ActiveCfg = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x64-Net4.Build.0 = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x86-Net3.ActiveCfg = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x86-Net3.Build.0 = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x86-Net4.ActiveCfg = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Debug|x86-Net4.Build.0 = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x64-Net3.ActiveCfg = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x64-Net3.Build.0 = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x64-Net4.ActiveCfg = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x64-Net4.Build.0 = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x86-Net3.ActiveCfg = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x86-Net3.Build.0 = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x86-Net4.ActiveCfg = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Release|x86-Net4.Build.0 = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x64-Net3.ActiveCfg = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x64-Net3.Build.0 = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x64-Net4.ActiveCfg = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x64-Net4.Build.0 = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x86-Net3.ActiveCfg = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x86-Net3.Build.0 = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x86-Net4.ActiveCfg = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose_Release|x86-Net4.Build.0 = Release|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x64-Net3.ActiveCfg = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x64-Net3.Build.0 = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x64-Net4.ActiveCfg = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x64-Net4.Build.0 = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x86-Net3.ActiveCfg = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x86-Net3.Build.0 = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x86-Net4.ActiveCfg = Debug|Any CPU
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A}.Verbose|x86-Net4.Build.0 = Debug|Any CPU
{23AB2621-A05C-4377-8418-85E6012C0BBE}.Debug|x64-Net3.ActiveCfg = Debug|Any CPU
{23AB2621-A05C-4377-8418-85E6012C0BBE}.Debug|x64-Net4.ActiveCfg = Debug|Any CPU
{23AB2621-A05C-4377-8418-85E6012C0BBE}.Debug|x64-Net4.Build.0 = Debug|Any CPU
@@ -336,7 +301,6 @@ Global
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{5F33B310-DC8D-4C0D-877E-BAC3908DE10F} = {C79C2C3A-A7FC-40D6-A5CC-9752A661AFA9}
- {E2CCDD2F-1D4F-4B06-9CD4-E0D2B9AE543A} = {C79C2C3A-A7FC-40D6-A5CC-9752A661AFA9}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {C7380FAB-02D6-4A2A-B428-B4BFCFE3A054}
diff --git a/BuildTools b/BuildTools
index 07379607..41c3a12d 160000
--- a/BuildTools
+++ b/BuildTools
@@ -1 +1 @@
-Subproject commit 07379607d40ac4acf5932819a935a333548f214e
+Subproject commit 41c3a12d56de96a3495893d1fea4a485a98c67af
diff --git a/IPA.Injector/IPA.Injector.csproj b/IPA.Injector/IPA.Injector.csproj
index 163a40a5..d44d4cd5 100644
--- a/IPA.Injector/IPA.Injector.csproj
+++ b/IPA.Injector/IPA.Injector.csproj
@@ -125,6 +125,27 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/IPA.Injector/PostBuild.msbuild b/IPA.Injector/PostBuild.msbuild
deleted file mode 100644
index ee4aef2d..00000000
--- a/IPA.Injector/PostBuild.msbuild
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/IPA.Loader/IPA.Loader.csproj b/IPA.Loader/IPA.Loader.csproj
index eeae4da3..81dd44ab 100644
--- a/IPA.Loader/IPA.Loader.csproj
+++ b/IPA.Loader/IPA.Loader.csproj
@@ -170,7 +170,7 @@
1.9.1.8
- 1.2.0.1
+ 2.0.0.7
0.10.4
diff --git a/IPA.Loader/Loader/HarmonyProtector.cs b/IPA.Loader/Loader/HarmonyProtector.cs
index 35b84b3d..f87da4bc 100644
--- a/IPA.Loader/Loader/HarmonyProtector.cs
+++ b/IPA.Loader/Loader/HarmonyProtector.cs
@@ -1,4 +1,4 @@
-using Harmony;
+using HarmonyLib;
using System.Collections.Generic;
using System.Reflection;
@@ -11,19 +11,19 @@ namespace IPA.Loader
internal static class HarmonyProtector
{
- private static HarmonyInstance instance;
+ private static Harmony instance;
private static Assembly selfAssem;
private static Assembly harmonyAssem;
- public static void Protect(HarmonyInstance inst = null)
+ public static void Protect(Harmony inst = null)
{
selfAssem = Assembly.GetExecutingAssembly();
- harmonyAssem = typeof(HarmonyInstance).Assembly;
+ harmonyAssem = typeof(Harmony).Assembly;
if (inst == null)
{
if (instance == null)
- instance = HarmonyInstance.Create("BSIPA Safeguard");
+ instance = new Harmony("BSIPA Safeguard");
inst = instance;
}
@@ -34,16 +34,12 @@ namespace IPA.Loader
inst.Patch(target, new HarmonyMethod(patch));
}
- private static void PatchProcessor_Patch_Prefix(ref List ___originals)
+ private static bool PatchProcessor_Patch_Prefix(MethodBase ___original, out MethodInfo __result)
{
- for (int i = 0; i < ___originals.Count; i++)
- {
- var mi = ___originals[i];
- var asm = mi.DeclaringType.Assembly;
+ var asm = ___original.DeclaringType.Assembly;
- if (asm.Equals(selfAssem) || asm.Equals(harmonyAssem))
- ___originals.RemoveAt(i--);
- }
+ __result = ___original as MethodInfo;
+ return !(asm.Equals(selfAssem) || asm.Equals(harmonyAssem));
}
}
}
diff --git a/IPA.Loader/Logging/StdoutInterceptor.cs b/IPA.Loader/Logging/StdoutInterceptor.cs
index 38136751..aeac0be7 100644
--- a/IPA.Loader/Logging/StdoutInterceptor.cs
+++ b/IPA.Loader/Logging/StdoutInterceptor.cs
@@ -1,201 +1,201 @@
-using Harmony;
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Reflection.Emit;
-using System.Text;
-
-namespace IPA.Logging
-{
- internal class StdoutInterceptor : TextWriter
- {
- public override Encoding Encoding => Encoding.Default;
-
- private bool isStdErr;
-
- public override void Write(char value)
- {
- Write(value.ToString());
- }
-
- private string lineBuffer = "";
- private object bufferLock = new object();
-
- public override void Write(string value)
- {
- lock (bufferLock)
- { // avoid threading issues
- lineBuffer += value;
-
- var parts = lineBuffer.Split(new[] { Environment.NewLine, "\n", "\r" }, StringSplitOptions.None);
- for (int i = 0; i < parts.Length; i++)
- {
- if (i + 1 == parts.Length) // last element
- lineBuffer = parts[i];
- else
- {
- var str = parts[i];
- if (string.IsNullOrEmpty(str)) continue;
- if (!isStdErr && WinConsole.IsInitialized)
- str = ConsoleColorToForegroundSet(currentColor) + str;
-
- if (isStdErr)
- Logger.stdout.Error(str);
- else
- Logger.stdout.Info(str);
- }
- }
- }
- }
-
- private const ConsoleColor defaultColor = ConsoleColor.Gray;
- private ConsoleColor currentColor = defaultColor;
-
- private static string ConsoleColorToForegroundSet(ConsoleColor col)
- {
- if (!WinConsole.UseVTEscapes) return "";
- string code = "0"; // reset
-
- switch (col)
- {
- case ConsoleColor.Black:
- code = "30";
- break;
- case ConsoleColor.DarkBlue:
- code = "34";
- break;
- case ConsoleColor.DarkGreen:
- code = "32";
- break;
- case ConsoleColor.DarkCyan:
- code = "36";
- break;
- case ConsoleColor.DarkRed:
- code = "31";
- break;
- case ConsoleColor.DarkMagenta:
- code = "35";
- break;
- case ConsoleColor.DarkYellow:
- code = "33";
- break;
- case ConsoleColor.Gray:
- code = "37";
- break;
- case ConsoleColor.DarkGray:
- code = "90"; // literally bright black
- break;
- case ConsoleColor.Blue:
- code = "94";
- break;
- case ConsoleColor.Green:
- code = "92";
- break;
- case ConsoleColor.Cyan:
- code = "96";
- break;
- case ConsoleColor.Red:
- code = "91";
- break;
- case ConsoleColor.Magenta:
- code = "95";
- break;
- case ConsoleColor.Yellow:
- code = "93";
- break;
- case ConsoleColor.White:
- code = "97";
- break;
- }
-
- return "\x1b[" + code + "m";
- }
-
- private static StdoutInterceptor stdoutInterceptor;
- private static StdoutInterceptor stderrInterceptor;
-
- private static class ConsoleHarmonyPatches
- {
- public static void Patch(HarmonyInstance harmony)
- {
- var console = typeof(Console);
- var resetColor = console.GetMethod("ResetColor");
- var foregroundProperty = console.GetProperty("ForegroundColor");
- var setFg = foregroundProperty?.GetSetMethod();
- var getFg = foregroundProperty?.GetGetMethod();
-
- if (resetColor != null)
- harmony.Patch(resetColor, transpiler: new HarmonyMethod(typeof(ConsoleHarmonyPatches), nameof(PatchResetColor)));
- if (foregroundProperty != null)
- {
- harmony.Patch(setFg, transpiler: new HarmonyMethod(typeof(ConsoleHarmonyPatches), nameof(PatchSetForegroundColor)));
- harmony.Patch(getFg, transpiler: new HarmonyMethod(typeof(ConsoleHarmonyPatches), nameof(PatchGetForegroundColor)));
- }
- }
-
- public static ConsoleColor GetColor() => stdoutInterceptor.currentColor;
- public static void SetColor(ConsoleColor col) => stdoutInterceptor.currentColor = col;
- public static void ResetColor() => stdoutInterceptor.currentColor = defaultColor;
-
- public static IEnumerable PatchGetForegroundColor(IEnumerable _)
- {
- var getColorM = typeof(ConsoleHarmonyPatches).GetMethod("GetColor");
- return new[] {
- new CodeInstruction(OpCodes.Tailcall),
- new CodeInstruction(OpCodes.Call, getColorM),
- new CodeInstruction(OpCodes.Ret)
- };
- }
-
- public static IEnumerable PatchSetForegroundColor(IEnumerable _)
- {
- var setColorM = typeof(ConsoleHarmonyPatches).GetMethod("SetColor");
- return new[] {
- new CodeInstruction(OpCodes.Ldarg_0),
- new CodeInstruction(OpCodes.Tailcall),
- new CodeInstruction(OpCodes.Call, setColorM),
- new CodeInstruction(OpCodes.Ret)
- };
- }
-
- public static IEnumerable PatchResetColor(IEnumerable _)
- {
- var resetColor = typeof(ConsoleHarmonyPatches).GetMethod("ResetColor");
- return new[] {
- new CodeInstruction(OpCodes.Tailcall),
- new CodeInstruction(OpCodes.Call, resetColor),
- new CodeInstruction(OpCodes.Ret)
- };
- }
- }
-
- private static HarmonyInstance harmony;
- private static bool usingInterceptor = false;
-
- public static void Intercept()
- {
- if (!usingInterceptor)
- {
- usingInterceptor = true;
- if (harmony == null)
- harmony = HarmonyInstance.Create("BSIPA Console Redirector Patcher");
- if (stdoutInterceptor == null)
- stdoutInterceptor = new StdoutInterceptor();
- if (stderrInterceptor == null)
- stderrInterceptor = new StdoutInterceptor() { isStdErr = true };
-
- RedirectConsole();
- ConsoleHarmonyPatches.Patch(harmony);
- }
- }
-
- public static void RedirectConsole()
- {
- if (usingInterceptor)
- {
- Console.SetOut(stdoutInterceptor);
- Console.SetError(stderrInterceptor);
- }
- }
- }
-}
+using HarmonyLib;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Reflection.Emit;
+using System.Text;
+
+namespace IPA.Logging
+{
+ internal class StdoutInterceptor : TextWriter
+ {
+ public override Encoding Encoding => Encoding.Default;
+
+ private bool isStdErr;
+
+ public override void Write(char value)
+ {
+ Write(value.ToString());
+ }
+
+ private string lineBuffer = "";
+ private object bufferLock = new object();
+
+ public override void Write(string value)
+ {
+ lock (bufferLock)
+ { // avoid threading issues
+ lineBuffer += value;
+
+ var parts = lineBuffer.Split(new[] { Environment.NewLine, "\n", "\r" }, StringSplitOptions.None);
+ for (int i = 0; i < parts.Length; i++)
+ {
+ if (i + 1 == parts.Length) // last element
+ lineBuffer = parts[i];
+ else
+ {
+ var str = parts[i];
+ if (string.IsNullOrEmpty(str)) continue;
+ if (!isStdErr && WinConsole.IsInitialized)
+ str = ConsoleColorToForegroundSet(currentColor) + str;
+
+ if (isStdErr)
+ Logger.stdout.Error(str);
+ else
+ Logger.stdout.Info(str);
+ }
+ }
+ }
+ }
+
+ private const ConsoleColor defaultColor = ConsoleColor.Gray;
+ private ConsoleColor currentColor = defaultColor;
+
+ private static string ConsoleColorToForegroundSet(ConsoleColor col)
+ {
+ if (!WinConsole.UseVTEscapes) return "";
+ string code = "0"; // reset
+
+ switch (col)
+ {
+ case ConsoleColor.Black:
+ code = "30";
+ break;
+ case ConsoleColor.DarkBlue:
+ code = "34";
+ break;
+ case ConsoleColor.DarkGreen:
+ code = "32";
+ break;
+ case ConsoleColor.DarkCyan:
+ code = "36";
+ break;
+ case ConsoleColor.DarkRed:
+ code = "31";
+ break;
+ case ConsoleColor.DarkMagenta:
+ code = "35";
+ break;
+ case ConsoleColor.DarkYellow:
+ code = "33";
+ break;
+ case ConsoleColor.Gray:
+ code = "37";
+ break;
+ case ConsoleColor.DarkGray:
+ code = "90"; // literally bright black
+ break;
+ case ConsoleColor.Blue:
+ code = "94";
+ break;
+ case ConsoleColor.Green:
+ code = "92";
+ break;
+ case ConsoleColor.Cyan:
+ code = "96";
+ break;
+ case ConsoleColor.Red:
+ code = "91";
+ break;
+ case ConsoleColor.Magenta:
+ code = "95";
+ break;
+ case ConsoleColor.Yellow:
+ code = "93";
+ break;
+ case ConsoleColor.White:
+ code = "97";
+ break;
+ }
+
+ return "\x1b[" + code + "m";
+ }
+
+ private static StdoutInterceptor stdoutInterceptor;
+ private static StdoutInterceptor stderrInterceptor;
+
+ private static class ConsoleHarmonyPatches
+ {
+ public static void Patch(Harmony harmony)
+ {
+ var console = typeof(Console);
+ var resetColor = console.GetMethod("ResetColor");
+ var foregroundProperty = console.GetProperty("ForegroundColor");
+ var setFg = foregroundProperty?.GetSetMethod();
+ var getFg = foregroundProperty?.GetGetMethod();
+
+ if (resetColor != null)
+ harmony.Patch(resetColor, transpiler: new HarmonyMethod(typeof(ConsoleHarmonyPatches), nameof(PatchResetColor)));
+ if (foregroundProperty != null)
+ {
+ harmony.Patch(setFg, transpiler: new HarmonyMethod(typeof(ConsoleHarmonyPatches), nameof(PatchSetForegroundColor)));
+ harmony.Patch(getFg, transpiler: new HarmonyMethod(typeof(ConsoleHarmonyPatches), nameof(PatchGetForegroundColor)));
+ }
+ }
+
+ public static ConsoleColor GetColor() => stdoutInterceptor.currentColor;
+ public static void SetColor(ConsoleColor col) => stdoutInterceptor.currentColor = col;
+ public static void ResetColor() => stdoutInterceptor.currentColor = defaultColor;
+
+ public static IEnumerable PatchGetForegroundColor(IEnumerable _)
+ {
+ var getColorM = typeof(ConsoleHarmonyPatches).GetMethod("GetColor");
+ return new[] {
+ new CodeInstruction(OpCodes.Tailcall),
+ new CodeInstruction(OpCodes.Call, getColorM),
+ new CodeInstruction(OpCodes.Ret)
+ };
+ }
+
+ public static IEnumerable PatchSetForegroundColor(IEnumerable _)
+ {
+ var setColorM = typeof(ConsoleHarmonyPatches).GetMethod("SetColor");
+ return new[] {
+ new CodeInstruction(OpCodes.Ldarg_0),
+ new CodeInstruction(OpCodes.Tailcall),
+ new CodeInstruction(OpCodes.Call, setColorM),
+ new CodeInstruction(OpCodes.Ret)
+ };
+ }
+
+ public static IEnumerable PatchResetColor(IEnumerable _)
+ {
+ var resetColor = typeof(ConsoleHarmonyPatches).GetMethod("ResetColor");
+ return new[] {
+ new CodeInstruction(OpCodes.Tailcall),
+ new CodeInstruction(OpCodes.Call, resetColor),
+ new CodeInstruction(OpCodes.Ret)
+ };
+ }
+ }
+
+ private static Harmony harmony;
+ private static bool usingInterceptor = false;
+
+ public static void Intercept()
+ {
+ if (!usingInterceptor)
+ {
+ usingInterceptor = true;
+ if (harmony == null)
+ harmony = new Harmony("BSIPA Console Redirector Patcher");
+ if (stdoutInterceptor == null)
+ stdoutInterceptor = new StdoutInterceptor();
+ if (stderrInterceptor == null)
+ stderrInterceptor = new StdoutInterceptor() { isStdErr = true };
+
+ RedirectConsole();
+ ConsoleHarmonyPatches.Patch(harmony);
+ }
+ }
+
+ public static void RedirectConsole()
+ {
+ if (usingInterceptor)
+ {
+ Console.SetOut(stdoutInterceptor);
+ Console.SetError(stderrInterceptor);
+ }
+ }
+ }
+}
diff --git a/Refs/MainAssembly.dll b/Refs/MainAssembly.dll
deleted file mode 100644
index 7076c4d6..00000000
Binary files a/Refs/MainAssembly.dll and /dev/null differ
diff --git a/Refs/Unity.TextMeshPro.dll b/Refs/Unity.TextMeshPro.dll
index fa85604c..957aba6e 100644
Binary files a/Refs/Unity.TextMeshPro.dll and b/Refs/Unity.TextMeshPro.dll differ
diff --git a/Refs/UnityEngine.AssetBundleModule.dll b/Refs/UnityEngine.AssetBundleModule.dll
index 433c7c35..1318f405 100644
Binary files a/Refs/UnityEngine.AssetBundleModule.dll and b/Refs/UnityEngine.AssetBundleModule.dll differ
diff --git a/Refs/UnityEngine.CoreModule.Net4.dll b/Refs/UnityEngine.CoreModule.Net4.dll
index 97bb7e38..872881e5 100644
Binary files a/Refs/UnityEngine.CoreModule.Net4.dll and b/Refs/UnityEngine.CoreModule.Net4.dll differ
diff --git a/Refs/UnityEngine.Net4.dll b/Refs/UnityEngine.Net4.dll
index d2622396..173e0eef 100644
Binary files a/Refs/UnityEngine.Net4.dll and b/Refs/UnityEngine.Net4.dll differ
diff --git a/Refs/UnityEngine.TextRenderingModule.dll b/Refs/UnityEngine.TextRenderingModule.dll
index 367b516b..a76572d8 100644
Binary files a/Refs/UnityEngine.TextRenderingModule.dll and b/Refs/UnityEngine.TextRenderingModule.dll differ
diff --git a/Refs/UnityEngine.UI.dll b/Refs/UnityEngine.UI.dll
index 91b647cb..57ac8e0b 100644
Binary files a/Refs/UnityEngine.UI.dll and b/Refs/UnityEngine.UI.dll differ
diff --git a/Refs/UnityEngine.UIModule.dll b/Refs/UnityEngine.UIModule.dll
index 5dd5d149..b77948cb 100644
Binary files a/Refs/UnityEngine.UIModule.dll and b/Refs/UnityEngine.UIModule.dll differ
diff --git a/Refs/UnityEngine.UnityWebRequestModule.Net4.dll b/Refs/UnityEngine.UnityWebRequestModule.Net4.dll
index 89707e7c..8b1919c3 100644
Binary files a/Refs/UnityEngine.UnityWebRequestModule.Net4.dll and b/Refs/UnityEngine.UnityWebRequestModule.Net4.dll differ
diff --git a/Refs/refs.txt b/Refs/refs.txt
index dec64374..b8818656 100644
--- a/Refs/refs.txt
+++ b/Refs/refs.txt
@@ -15,8 +15,7 @@
::from ./bsinstalldir.txt
"Beat Saber_Data/
""Managed/
-"""Assembly-CSharp.dll?virt
-"""MainAssembly.dll?virt
+"""Main.dll?virt
"""Unity.TextMeshPro.dll
"""UnityEngine.
""""TextRenderingModule.