很久沒有機會開FLASH了
應老闆要求做了這個拉霸BANNER
當然 還是把握機會練習AS3囉
用了tween,BlurFilter, setInterval, setTimeout
不過不曉得是哪一個的問題
會讓拉霸有時當掉停住
目前比較覺得是tween的問題
還需要在研究一下
setInterval+setTimeout可以實現定時分批開始的效果
再改一下atArr 的取得和加一些判斷按鈕就可以當真的拉霸玩了
細部的動態跟設計需要再做調整
調個太快就沒FLASH可以玩了 呵呵~
import fl.transitions.*; import fl.transitions.easing.*; stage.frameRate =30; var blurMax:Number = 64; var loopMax:Number = 3; var stopArr :Array = new Array("",-142,-99,-51,0); var atArr :Array = new Array("","44444","33333","22222","11111"); var newgoAt:Number; function init():void { for (var i=1; i<=5; i++) { var tmc:MovieClip = this["mov"+i+"_mc"]; tmc.gotoAndStop(i); } movebar(); newgoAt = 1; var playbar = setInterval(movebar , 6000); } function movebar():void { newgoAt ++; newgoAt = newgoAt >4? 1:newgoAt; for (var i=1; i<=5; i++) { var tmc:MovieClip = this["mov"+i+"_mc"]; tmc.looptime = 0; tmc.inblur = 0; setTimeout(next1,300*i,tmc); } } function next1(m:MovieClip):void { var myTween1:Tween = new Tween(m, "y", Regular.easeIn, m.y,100, 1, true); myTween1.looping = false; myTween1.addEventListener(TweenEvent.MOTION_FINISH,next2); } function next2(e:TweenEvent) { //trace("next2 run"); e.target.removeEventListener(TweenEvent.MOTION_FINISH,next2); var myTween2:Tween = new Tween(e.target.obj, "y", null, -150, 150, 0.5, true); myTween2.addEventListener(TweenEvent.MOTION_LOOP,loopcheck); myTween2.addEventListener(TweenEvent.MOTION_CHANGE,blurit); myTween2.looping = true; } function loopcheck(e:TweenEvent):void { e.target.removeEventListener(TweenEvent.MOTION_CHANGE,blurit); e.target.obj.looptime < loopMax ?e.target.obj.looptime++:next3(e); } function next3(e:TweenEvent) { e.target.stop(); //e.currentTarget.parent.removeChild(e.currentTarget); e.target.removeEventListener(TweenEvent.MOTION_LOOP,loopcheck); var num:Number = int(e.target.obj.name.substr(3,1))-1; var stopAt:Number = stopArr[atArr[newgoAt].substr(num,1)]; var myTween3:Tween = new Tween(e.target.obj, "y", Regular.easeOut, stopAt-150,stopAt, 0.5, true); myTween3.looping = false; myTween3.addEventListener(TweenEvent.MOTION_CHANGE,blurit); } function blurit(e:TweenEvent):void { var _t = e.target; var _tt = Math.round(_t.time/_t.duration*100)/100; _t.obj.inblur += _tt; _tt = _t.finish == 150? _t.obj.inblur/7:1-_tt; var tblurY:Number = _tt *blurMax; //_t.obj.name == "mov1_mc"?trace(e.target.obj.looptime,"---",_t.obj.inblur,"---",tblurY):null; var blur:BlurFilter = new BlurFilter(0, tblurY, BitmapFilterQuality.LOW); _t.obj.filters = [blur]; } init(); |
不好意思,最近剛好在看這種轉動方式,可以麻煩你寄一份讓我參考嗎?謝謝
我寄給你囉~
請問可以將檔案mail給我參考嗎?
我寄給你嚕!
可以教教我嗎大大??正想學習這個拉爸呢!
我其實也不知道要從何「教」起,妳可以留email給我,我把這個檔案寄給你參考ㄉ沒倒是問題。
你好,這個真棒!!
可以教我如何做這類的Flash嗎?
我一直在尋找類似的效果,
謝謝!!
我寄到你的mail囉!
收到了,謝謝你!!
大大 可以教我怎麼做這個Flash嗎? 因為我覺得這個轉動的方式很酷 拜託!!
你可以留email,我寄我的程式給你參考看看
結果原本只是要做好玩的東西
老闆的發想卻越來越大了@@
還蠻有意思的!