diff --git a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Animation.java b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Animation.java index 444fbdad1..f23bc1109 100644 --- a/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Animation.java +++ b/spine-libgdx/spine-libgdx/src/com/esotericsoftware/spine/Animation.java @@ -2494,16 +2494,22 @@ public class Animation { case loop: index %= count; break; - case pingpong: + case pingpong: { int n = (count << 1) - 2; index %= n; if (index >= count) index = n - index; break; + } case onceReverse: index = Math.max(count - 1 - index, 0); break; case loopReverse: index = count - 1 - (index % count); + break; + case pingpongReverse: + int n = (count << 1) - 2; + index = (index + count - 1) % n; + if (index >= count) index = n - index; } } slot.setSequenceIndex(index);