From 2a7fd54224e53d73ae303bed480bdac10bacd838 Mon Sep 17 00:00:00 2001 From: NathanSweet Date: Thu, 31 May 2018 09:39:03 +0200 Subject: [PATCH] [libgdx] Fix events firing during mix out. #1120 closes #1119 --- .../src/com/esotericsoftware/spine/AnimationState.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java index 8503a7a2e..ebf790680 100644 --- a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java +++ b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java @@ -166,6 +166,9 @@ public class AnimationState { boolean finished = updateMixingFrom(from, delta); + from.animationLast = from.nextAnimationLast; + from.trackLast = from.nextTrackLast; + // Require mixTime > 0 to ensure the mixing from entry was applied at least once. if (to.mixTime > 0 && (to.mixTime >= to.mixDuration || to.timeScale == 0)) { // Require totalAlpha == 0 to ensure mixing is complete, unless mixDuration == 0 (the transition is a single frame). @@ -177,8 +180,6 @@ public class AnimationState { return finished; } - from.animationLast = from.nextAnimationLast; - from.trackLast = from.nextTrackLast; from.trackTime += delta * from.timeScale; to.mixTime += delta * to.timeScale; return false;