[SWF]https://blog.cgfm.jp/garyu/wp-content/uploads/2008/09/sample.swf, 600, 250[/SWF]
巷で話題?のナストマくんを練習でHydroSequenceで動かしてみました。
アニメーションしてる途中に「りせっと」ボタンを押すと、そこから初期位置に戻ります。
↓Actionscriptのソースはこちら。
import fl.transitions.easing.*; //Easingの指定 import org.goasap.GoEngine; import org.goasap.managers.*; //LinearGoRepeater等 import com.hydrotik.go.*; var NasuDefX = nasu_mc.x; //とまとの初期位置のY座標 var NasuDefY = nasu_mc.y; //とまとの初期位置のY座標 var TomaDefX = tomato_mc.x; //とまとの初期位置のY座標 var TomaDefY = tomato_mc.y; //とまとの初期位置のY座標 //ボタン[なす]の定義 nasu_btn.addEventListener("click",seqNasu); function seqNasu(event:MouseEvent):void{ var seq:HydroSequence = new HydroSequence(); seq.addItem( {target:nasu_mc, alpha:100, scaleX:0.5,scaleY:0.5, x:500, Blur_blurX:5,Blur_blurY:5, easing:Regular.easeIn, repeater:new LinearGoRepeater(2,true), delay:1,duration:1 } ); seq.start(); } //ボタン[とまと]の定義 tomato_btn.addEventListener("click",seqTomato); function seqTomato(event:MouseEvent):void{ var seq:HydroSequence = new HydroSequence(); seq.addItem( {target:tomato_mc, x:500, easing:Elastic.easeOut, delay:0,duration:2 }, {target:tomato_mc, alpha:0, repeater:new LinearGoRepeater(2,true), delay:0,duration:1 }, [ {target:tomato_mc, x:TomaDefX, easing:None.easeIn, delay:0,duration:1.2 }, {target:tomato_mc, y:180, scaleX:2,scaleY:2, easing:Bounce.easeIn, repeater:new LinearGoRepeater(4,true), delay:0,duration:0.2 } ] ); seq.start(); } //ボタン[なすとま]の定義 nasutoma_btn.addEventListener("click",seqNasutoma); function seqNasutoma(event:MouseEvent):void{ var seq:HydroSequence = new HydroSequence(); seq.addItem( {target:nasu_mc, x:500, easing:None.easeOut, delay:0,duration:1 }, {target:tomato_mc, x:500, easing:Bounce.easeOut, delay:0,duration:1 }, [ {target:nasu_mc, x:NasuDefX, easing:None.easeIn, delay:0,duration:2 }, {target:tomato_mc, x:TomaDefX, easing:None.easeIn, delay:0,duration:2 }, {target:tomato_mc, y:NasuDefY, scaleX:2,scaleY:2, Blur_blurX:2,Blur_blurY:2, repeater:new LinearGoRepeater(4,true), delay:0,duration:0.5 }, {target:nasu_mc, y:TomaDefY, Blur_blurX:2,Blur_blurY:2, repeater:new LinearGoRepeater(4,true), delay:0,duration:0.5 } ] ); seq.start(); } //リセットボタン reset_btn.addEventListener("click",Reset); function Reset(event:MouseEvent):void{ var seqReset:HydroSequence = new HydroSequence(); seqReset.addItem( {target:nasu_mc, alpha:100,rotation:0, scaleX:1,scaleY:1, x:NasuDefX,y:NasuDefY, Blur_blurX:0,Blur_blurY:0, delay:0,duration:0.5, easing:Regular.easeIn }, {target:tomato_mc, alpha:100,rotation:0, scaleX:1,scaleY:1, x:TomaDefX,y:TomaDefY, Blur_blurX:0,Blur_blurY:0, easing:None.easeIn, delay:0,duration:0.5 } ); seqReset.start(); }
Actionscript3.0、ちゃんと勉強しなきゃな〜。
なんか、同時アニメ−ションすると、時間がずれるのは気のせい?
delay:0でもなんかボタン押した後、もっさりして動くような、タイムラグがあるような気がする。
(最初の処理が重いのか?)
参考サイトは大久保大先生のイナヅマtvログの全部(^^;
何をググっても全部ここの記事内容に辿り着くw、やっぱすげ〜〜
制作者にバグッてると伝えて、「そんな事は無い!」と言われて、
ちゃんと検証して、結果バグFixしてもらってるんだから、その熱意と姿勢に感嘆。
コメント