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 2b57ae887..426635702 100644 --- a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java +++ b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/AnimationState.java @@ -528,9 +528,13 @@ public class AnimationState { last.next = entry; if (delay <= 0) { float duration = last.animationEnd - last.animationStart; - if (duration != 0) - delay += duration * (1 + (int)(last.trackTime / duration)) - data.getMix(last.animation, animation); - else + if (duration != 0) { + if (last.loop) + delay += duration * (1 + (int)(last.trackTime / duration)); + else + delay += duration; + delay -= data.getMix(last.animation, animation); + } else delay = 0; } }