diff --git a/1.6/Assemblies/WulaFallenEmpire.dll b/1.6/Assemblies/WulaFallenEmpire.dll index 7fc01cef..153790a6 100644 Binary files a/1.6/Assemblies/WulaFallenEmpire.dll and b/1.6/Assemblies/WulaFallenEmpire.dll differ diff --git a/Source/WulaFallenEmpire/HarmonyPatches/Projectile_Launch_Patch.cs b/Source/WulaFallenEmpire/HarmonyPatches/Projectile_Launch_Patch.cs index 8b094b13..aed6001e 100644 --- a/Source/WulaFallenEmpire/HarmonyPatches/Projectile_Launch_Patch.cs +++ b/Source/WulaFallenEmpire/HarmonyPatches/Projectile_Launch_Patch.cs @@ -26,10 +26,12 @@ namespace WulaFallenEmpire.HarmonyPatches { if (interceptor.TryIntercept(__instance, lastExactPos, newExactPos)) { + // Directly destroy the projectile instead of calling Impact via reflection. + // This is cleaner and avoids the NRE that happens when the game engine + // continues to process a projectile that was destroyed mid-tick. + __instance.Destroy(DestroyMode.Vanish); - ImpactMethod.Invoke(__instance, new object[] { null, true }); - - return false; + return false; // Prevent original method from running. } } }