From 6d2387d85845ecf5d97466c4c5a50a5f4c99b5fb Mon Sep 17 00:00:00 2001 From: Kaede Date: Mon, 27 Nov 2023 20:19:35 +0200 Subject: [PATCH] Fieldignore --- Marsey/PatchAssemblyManager.cs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/Marsey/PatchAssemblyManager.cs b/Marsey/PatchAssemblyManager.cs index 6e06d58..27a6ce9 100644 --- a/Marsey/PatchAssemblyManager.cs +++ b/Marsey/PatchAssemblyManager.cs @@ -42,14 +42,22 @@ public static void InitAssembly(Assembly assembly, bool subverter = false) if (MarseyType != null) { DataType = MarseyType; - + bool ignoreField = false; List? targets = GetPatchAssemblyFields(DataType); - if (targets == null) + FieldInfo? ignoreFieldInfo = DataType.GetField("ignoreFields"); + + if (ignoreFieldInfo != null) + ignoreField = ignoreFieldInfo.GetValue(null) is bool; + + if (ignoreField) + Utility.Log(Utility.LogType.DEBG, $"{assembly.GetName().Name} MarseyPatch is ignoring fields, not assigning"); + else if (targets != null && ignoreField != true) + SetAssemblyTargets(targets); + else { Utility.Log(Utility.LogType.FATL, $"Couldn't get assembly fields on {assembly.GetName().Name}."); return; } - SetAssemblyTargets(targets); } // MarseyPatch takes precedence over Subverter, for now