Re: [問題]怎麼從as2轉成as3?

看板Flash作者 (betty)時間10年前 (2014/06/27 14:32), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串6/6 (看更多)
後來解決了~~ 像下面這樣寫: import fl.transitions.Tween; import fl.transitions.easing.Elastic; import fl.transitions.TweenEvent; var xTween1:Tween = new Tween(mmm,"x",Elastic.easeOut,245.6,-1445,2,true); } ※ 引述《bettyHo (betty)》之銘言: : 謝謝大大們的回答 : 現在把工作檔丟上來 : 有因此改良許多 : 但是~~頭髮快被抓光了! : 因為~~~ : 到~底~是~為~什~麼~要~彈~回~原~點~啊! : https://www.sendspace.com/file/rt894c : 求解惑啊! : coding: : var xd = mmm.x; : mmm.addEventListener(Event.ENTER_FRAME, doEnterFrame); : function doEnterFrame(e:Event):void : { : var obj = e.currentTarget; : obj.x = obj.x + (xd - obj.x) * 2.000000E-001; : btn1.addEventListener(MouseEvent.CLICK, doClickB1); : btn2.addEventListener(MouseEvent.CLICK, doClickB2); : btn3.addEventListener(MouseEvent.CLICK, doClickB3); : function doClickB1(e:MouseEvent):void : { : mmm.x = -1445; : } : function doClickB2(e:MouseEvent):void : { : mmm.x = -11520; : } : function doClickB3(e:MouseEvent):void : { : mmm.x = -12800; : } : } : ※ 引述《KawasumiMai (ご注文はうさぎですか)》之銘言: : : AS3沒有loadMovie,那是AS2特有的方法 : : 要load東西 : : 要使用Loader : : var loader:Loader=new Loader() : : loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoaded) : : loader.load(new URLRequese("xx.aa")) : : 原本onClipEvent : : 在AS2是掛在mc上的 : : 所以那時候的this會是mc本身 : : 但是AS3的EventListener是寫在上一層的時間軸上的 : : 所以在那個時間軸的this,就不會是mc,可能是stage或TimeLine : : addEventListener要掛在物件上才有效果 : : 不知道你的mmm是否就是mc本身 : : mmm.addEventListener(Event.ENTER_FRAME,doClick1) : : (為什麼EnterFrame的function會叫doClick?) : : function doClick1(e:Event){ : : //這裡面的e是事件本身 : : //e.currentTarget則是呼叫的事件主,以這個例子來說等於mmm : : //如果多個物件呼叫同一個function,可以利用e.currentTarget判斷來源 : : var obj=e.currentTarget //方便取用 : : obj.x = obj.x + (xd - obj.x) * 2.000000E-001; : : //obj.x相當於原本掛在上面的this.x : : } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 119.14.48.233 ※ 文章網址: http://www.ptt.cc/bbs/Flash/M.1403850731.A.9D3.html

06/27 17:53, , 1F
用Tween如果要做到影格同步要注意一下單位問題
06/27 17:53, 1F
文章代碼(AID): #1JhG_hdJ (Flash)
文章代碼(AID): #1JhG_hdJ (Flash)