BetweenAS3 のバグ?

by bkzen
何かよくわからない挙動があったのでメモ。

1. tweenA の play() stop() を連続で2回繰り返す。
2. 同時に tweenB を play() する。
3. tweenB が終了した後に tweenC を play() すると実行されない。
♥0 | Line 40 | Modified 2015-07-15 16:25:45 | MIT License
play

ActionScript3 source code

/**
 * Copyright bkzen ( http://wonderfl.net/user/bkzen )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/i4QX
 */

package {
    import com.bit101.components.PushButton;
    import flash.display.Sprite;
    import flash.display.Shape;
    import org.libspark.betweenas3.BetweenAS3;
    import org.libspark.betweenas3.tweens.ITween;
    public class FlashTest extends Sprite {
        public function FlashTest() {
            // write as3 code here..
            
            var ballA: Shape = createBall(0xFF0000, 100, 100);
            var tweenA: ITween = BetweenAS3.tween(ballA, { alpha: 1 }, { alpha: 0 }, 2);
            var ballB: Shape = createBall(0x0000FF, 200, 100);
            var tweenB: ITween = BetweenAS3.tween(ballB, { alpha: 1 }, { alpha: 0 }, 2);
            
            addChild(ballA);
            addChild(ballB);
            
            var btn: PushButton = new PushButton(this, 100, 200, "btnTween", function(): void {
                var tweenC: ITween = BetweenAS3.tween(btn, { alpha: 0 }, { alpha: 1 }, 2);
                tweenC.play();
                btn.enabled = false;
            });
            btn.enabled = false;
            
            tweenA.play();
            tweenA.stop();
            tweenA.play();
            tweenA.stop();
            
            tweenB.onComplete = function(): void { 
                btn.enabled = true;
            };
            tweenB.play();
        }
        
        private function createBall(color: uint, x: int, y: int): Shape
        {
            var ball: Shape = new Shape();
            ball.graphics.beginFill(color);
            ball.graphics.drawCircle(0, 0, 20);
            ball.x = x;
            ball.y = y;
            return ball;
        }
    }
}