チェンジセット 3080

差分発生行の前後
無視リスト:
コミット日時:
2009/09/09 03:29:10 (2 年前)
コミッタ:
yossy
ログメッセージ:

BetweenAS3: Fix: gotoAndPlay will not affected while playing. (fixed #107)

ファイル:

凡例:

変更無し
追加
削除
更新
コピー
移動
  • as3/BetweenAS3/trunk/CHANGES

    r3079 r3080  
    55-------------------- 
    66 
     7 * [r3080] Fix: gotoAndPlay will not affected while playing. (#107) 
     8  
    79 * [r3079] Fix: RangeError has occurred when using bezier tween with Elastic or Back easing. (#106) 
    810  
  • as3/BetweenAS3/trunk/CHANGES.ja

    r3079 r3080  
    55-------------------- 
    66 
     7 * [r3080] 修正: play 中の gotoAndPlay が効かない (#107) 
     8  
    79 * [r3079] 修正: Elastic もしくは Back イージングでベジェトゥイーンをすると RangeError が発生する (#106) 
    810  
  • as3/BetweenAS3/trunk/src/fp10/org/libspark/betweenas3/core/tweens/AbstractTween.as

    r3019 r3080  
    283283                        } 
    284284                        _position = position; 
    285                         play(); 
     285                        if (_isPlaying) { 
     286                                if (_position >= _duration) { 
     287                                        _position = 0; 
     288                                } 
     289                                var t:Number = _ticker.time; 
     290                                _startTime = t - _position; 
     291                                tick(t); 
     292                        } 
     293                        else { 
     294                                play(); 
     295                        } 
    286296                } 
    287297                 
  • as3/BetweenAS3/trunk/src/fp9/org/libspark/betweenas3/core/tweens/AbstractTween.as

    r3020 r3080  
    283283                        } 
    284284                        _position = position; 
    285                         play(); 
     285                        if (_isPlaying) { 
     286                                if (_position >= _duration) { 
     287                                        _position = 0; 
     288                                } 
     289                                var t:Number = _ticker.time; 
     290                                _startTime = t - _position; 
     291                                tick(t); 
     292                        } 
     293                        else { 
     294                                play(); 
     295                        } 
    286296                } 
    287297                 
  • as3/BetweenAS3/trunk/tests/fp10/org/libspark/betweenas3/core/tweens/AbstractTweenTest.as

    r3019 r3080  
    153153                        assertEquals(2500, _tween.t); 
    154154                        assertEquals('play update update ', Static.log); 
     155                } 
     156                 
     157                // http://www.libspark.org/ticket/107 
     158                test function playGotoAndPlay():void 
     159                { 
     160                        assertFalse(_tween.isPlaying); 
     161                        assertEquals(9999, _tween.t); 
     162                         
     163                        _tween.play(); 
     164                        _ticker.t = 2500; 
     165                        _ticker.listener.tick(2500); 
     166                         
     167                        assertTrue(_tween.isPlaying); 
     168                        assertEquals('play update update ', Static.log); 
     169                        assertEquals(1500, _tween.t); 
     170                         
     171                        _tween.gotoAndPlay(1000); 
     172                         
     173                        assertTrue(_tween.isPlaying); 
     174                        assertEquals('play update update update ', Static.log); 
     175                        assertEquals(1000, _tween.t); 
     176                         
     177                        _ticker.listener.tick(3500); 
     178                         
     179                        assertTrue(_tween.isPlaying); 
     180                        assertEquals('play update update update update ', Static.log); 
     181                        assertEquals(2000, _tween.t); 
    155182                } 
    156183                 
  • as3/BetweenAS3/trunk/tests/fp9/org/libspark/betweenas3/core/tweens/AbstractTweenTest.as

    r3020 r3080  
    153153                        assertEquals(2500, _tween.t); 
    154154                        assertEquals('play update update ', Static.log); 
     155                } 
     156                 
     157                // http://www.libspark.org/ticket/107 
     158                test function playGotoAndPlay():void 
     159                { 
     160                        assertFalse(_tween.isPlaying); 
     161                        assertEquals(9999, _tween.t); 
     162                         
     163                        _tween.play(); 
     164                        _ticker.t = 2500; 
     165                        _ticker.listener.tick(2500); 
     166                         
     167                        assertTrue(_tween.isPlaying); 
     168                        assertEquals('play update update ', Static.log); 
     169                        assertEquals(1500, _tween.t); 
     170                         
     171                        _tween.gotoAndPlay(1000); 
     172                         
     173                        assertTrue(_tween.isPlaying); 
     174                        assertEquals('play update update update ', Static.log); 
     175                        assertEquals(1000, _tween.t); 
     176                         
     177                        _ticker.listener.tick(3500); 
     178                         
     179                        assertTrue(_tween.isPlaying); 
     180                        assertEquals('play update update update update ', Static.log); 
     181                        assertEquals(2000, _tween.t); 
    155182                } 
    156183