2010-01-27 16 views
0

使用Tween類也許?我嘗試了easeOut。但是如果寫2 Tween,第二個將覆蓋第一個,所以我只能看到第二個Tween方向的物體,而不是第一個Tween方向。ActionScript - 你如何讓某個地方移動並返回?

我知道下面第二個補間的座標是不正確的(cos所有的座標都遵循定義的參考點),所以我需要找出標識的寬度和高度。但現在好了,它是用於測試目的。

import fl.transitions.Tween; 
import fl.transitions.easing.*; 
logo.visible = false; 
addChild(logo); 

circle.addEventListener(MouseEvent.CLICK, moveObj); 

function moveObj(e:MouseEvent):void{ 
    logo.visible = true; 
    var tweenRight:Tween = new Tween(logo,"x",None.easeOut, 100, 300, 2, true); 
    var tweenLeft:Tween = new Tween(logo,"x",None.easeOut, 300, 100, 2, true); 

} 

回答

0

您同時發射兩個充斥着這樣你就可以例如聽motion finish事件,在這個時刻推出其他吐溫:這裏

import fl.transitions.Tween; 
import fl.transitions.easing.*; 
import fl.transitions.TweenEvent; 

logo.visible = false; 
addChild(logo); 

circle.addEventListener(MouseEvent.CLICK, moveObj); 

function moveObj(e:MouseEvent):void{ 
    logo.visible = true; 
    var tweenRight:Tween = new Tween(logo,"x",None.easeOut, 100, 300, 2, true); 
    tweenRight.addEventListener(TweenEvent.MOTION_FINISH, onTweenRightFinished); 
} 
function onTweenRightFinished(e:TweenEvent):void { 
    e.currentTarget.removeEventListener(TweenEvent.MOTION_FINISH, onTweenRightFinished); 
    var tweenLeft:Tween = new Tween(logo,"x",None.easeOut, 300, 100, 2, true); 
} 
+0

我知道爲什麼錯誤,它是因爲它是「導入fl.transitions.TweenEvent;」不是「import fl.transitions.TweenEvent。*;」。謝謝。 – yeeen 2010-01-29 05:52:50

+0

在這裏查看我的其他相關的qn:http://stackoverflow.com/questions/2161123/move-objects-in-an-array-producing-a-stadium-wave-effect – yeeen 2010-01-29 10:01:40

0

你有兩個這些發生在同一時間,你需要延遲第二個,直到第一個結束後。

+0

看看我的其他相關QN:HTTP:// stackoverflow.com/questions/2161123/move-objects-in-an-array-producing-a-stadium-wave-effect – yeeen 2010-01-29 10:02:43

相關問題