From d41c19a17628b8eefabde5580944f76f02d1bd0a Mon Sep 17 00:00:00 2001 From: XtraCube <72575280+XtraCube@users.noreply.github.com> Date: Fri, 30 May 2025 15:45:59 -0400 Subject: [PATCH] Adjust kill anim patch for inlining --- MiraAPI/Patches/Events/KillAnimationPatches.cs | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/MiraAPI/Patches/Events/KillAnimationPatches.cs b/MiraAPI/Patches/Events/KillAnimationPatches.cs index 5e7b3ef..9c6e76e 100644 --- a/MiraAPI/Patches/Events/KillAnimationPatches.cs +++ b/MiraAPI/Patches/Events/KillAnimationPatches.cs @@ -14,13 +14,17 @@ public static class KillAnimationPatches /// /// Used to trigger the . /// - /// The killer. - /// The target. [HarmonyPostfix] - [HarmonyPatch(typeof(KillAnimation), nameof(KillAnimation.CoPerformKill))] - public static void KillAnimPostfix(PlayerControl source, PlayerControl target) + [HarmonyPatch(typeof(KillAnimation), nameof(KillAnimation._CoPerformKill_d__2.MoveNext))] + public static void KillAnimPostfix(KillAnimation._CoPerformKill_d__2 __instance) { - var afterMurderEvent = new AfterMurderEvent(source, target, Helpers.GetBodyById(target.PlayerId)); + // Checking if state is -1 to wait for the end of coroutine. + if (__instance.__1__state != -1) + { + return; + } + + var afterMurderEvent = new AfterMurderEvent(__instance.source, __instance.target, Helpers.GetBodyById(__instance.target.PlayerId)); MiraEventManager.InvokeEvent(afterMurderEvent); } }