fix harmony type by name
All checks were successful
Build / Compute Version (push) Successful in 5s
Build / Build Nuget package (CringeBootstrap.Abstractions) (push) Successful in 2m16s
Build / Build Nuget package (NuGet) (push) Successful in 1m59s
Build / Build Nuget package (CringePlugins) (push) Successful in 2m30s
Build / Build Nuget package (SharedCringe) (push) Successful in 2m20s
Build / Build Launcher (push) Successful in 3m40s

This commit is contained in:
zznty
2024-11-04 02:36:36 +07:00
parent e7ec87465d
commit f7c0d65cbc

View File

@@ -64,12 +64,25 @@ public static class IntrospectionPatches
{
if (AssemblyLoadContext.GetLoadContext(assembly) is ICoreLoadContext)
return true;
if (assembly.IsDynamic)
{
__result = [];
return false;
}
// static classes are abstract
__result = IntrospectionContext.Global.CollectAttributedTypes<HarmonyAttribute>(assembly.GetMainModule(), true)
.ToArray();
return false;
}
[HarmonyPrefix, HarmonyPatch(typeof(AccessTools), nameof(AccessTools.AllAssemblies))]
private static bool AllAssembliesHarmonyPrefix(ref IEnumerable<Assembly> __result)
{
__result = AssemblyLoadContext.GetLoadContext(typeof(IntrospectionPatches).Assembly)?.Assemblies ?? [];
return false;
}
[HarmonyPrefix, HarmonyPatch(typeof(MySession), "PrepareBaseSession", typeof(MyObjectBuilder_Checkpoint), typeof(MyObjectBuilder_Sector))]
private static void PrepareSessionPrefix()