[as3] Fix for clearTracks, see #805

This commit is contained in:
badlogic 2016-12-15 13:45:12 +01:00
parent 05ba66efe0
commit a596aa49e7
4 changed files with 4 additions and 2 deletions

View File

@ -323,11 +323,12 @@ public class AnimationState {
} }
public function clearTracks ():void { public function clearTracks ():void {
var oldTrainDisabled:Boolean = queue.drainDisabled;
queue.drainDisabled = true; queue.drainDisabled = true;
for (var i:int = 0, n:int = tracks.length; i < n; i++) for (var i:int = 0, n:int = tracks.length; i < n; i++)
clearTrack(i); clearTrack(i);
tracks.length = 0; tracks.length = 0;
queue.drainDisabled = false; queue.drainDisabled = oldTrainDisabled;
queue.drain(); queue.drain();
} }
@ -452,12 +453,13 @@ public class AnimationState {
} }
public function setEmptyAnimations (mixDuration:Number):void { public function setEmptyAnimations (mixDuration:Number):void {
var oldDrainDisabled:Boolean = queue.drainDisabled;
queue.drainDisabled = true; queue.drainDisabled = true;
for (var i:int = 0, n:int = tracks.length; i < n; i++) { for (var i:int = 0, n:int = tracks.length; i < n; i++) {
var current:TrackEntry = tracks[i]; var current:TrackEntry = tracks[i];
if (current != null) setEmptyAnimation(current.trackIndex, mixDuration); if (current != null) setEmptyAnimation(current.trackIndex, mixDuration);
} }
queue.drainDisabled = false; queue.drainDisabled = oldDrainDisabled;
queue.drain(); queue.drain();
} }