Browse Source

[as3] Fix for #1064, delay was calculated incorrectly for non-loop previous track entries.

badlogic 7 năm trước cách đây
mục cha
commit
f56937c042

BIN
spine-as3/spine-as3-example/lib/spine-as3.swc


+ 6 - 3
spine-as3/spine-as3/src/spine/animation/AnimationState.as

@@ -468,9 +468,12 @@ package spine.animation {
 				last.next = entry;
 				if (delay <= 0) {
 					var duration : Number = 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;						
+					} else
 						delay = 0;
 				}
 			}

BIN
spine-starling/spine-starling-example/lib/spine-as3.swc


BIN
spine-starling/spine-starling/lib/spine-as3.swc