オブジェクトを移動して、移動中に物理的に見ることができるようにするにはどうすればよいですか?次のコードを使用する場合のように、消えて別の場所に表示されるだけではありません。
buttonL2_btn.addEventListener(MouseEvent.CLICK、左);
関数left(event:Event):void {
box_mc.x =241.5; }
これにより、myObjectが指定された任意の場所に移動しますが、移動時に表示できるようにしたいと思います。
オブジェクトを移動して、移動中に物理的に見ることができるようにするにはどうすればよいですか?次のコードを使用する場合のように、消えて別の場所に表示されるだけではありません。
buttonL2_btn.addEventListener(MouseEvent.CLICK、左);
関数left(event:Event):void {
box_mc.x =241.5; }
これにより、myObjectが指定された任意の場所に移動しますが、移動時に表示できるようにしたいと思います。
この例では、次のように、XをEnterFrameイベントに変更する必要がある場合に、ボタンが押されたときにX位置を設定しているだけです。
this.addEventListener(Event.ENTER_FRAME, move);
function move(event:Event):void{
box_mc.x -= 5
}
box_mcは、フレームレートに応じて左に5ピクセル移動する必要があります。
そのためのイージングライブラリを簡単に使用できます。TweenMaxを強くお勧めします。
さて、私は常にいくつかのトゥイーンエンジンを提案している人々に少しうんざりしています。確かに彼らは揺れ動きますが、それはOPが彼が何をしているのかを理解するのに役立ちません。
非常に簡単なトゥイーンでオブジェクトを移動するKirchoオブジェクトを移動するには、onEnterFrameイベントで次のコードをお勧めします。
addEventListener(Event.ENTER_FRAME, onEnterFrame);
var xGoal:Number = 100; //:: The target X destination for your object
var yGoal:Number = 100; //:: The target Y destination for your object
var smothness:Number = 10; //:: Smoothness factor for movement. The lower the value the faster the movement.
function onEnterFrame(e:Event):void
{
box_mc.x += (xGoal - box_mc.x) / smothness;
box_mc.y += (yGoal - box_mc.y) / smothness;
}
設定された滑らかさでボックスオブジェクトを目的の場所に移動/緩和します。
437の利用可能なトゥイーンエンジンのいずれかをインストールするか、
数行のコードを追加できます
宛先値を保持する変数を設定します
var dest:Number = 241.5; // this is what gets updated on mouse click
ボックスのエンターフレームイベント:
function onBoxEnterFrame(e:MouseEvent):void{
if (dest != box_mc.x){
var easeNum:Number = 0.4 // between 0 and 1, the higher the number, the slower the transition
box_mc.x = box_mc.x * easeNum + dest * (1-easeNum);
}
}
さらに数本の線を追加して、近くにあるとき(0.1の差未満)に位置をスナップするか、より直線的な変更を使用してbox_mc.x += 5;
、宛先番号と一致するまで段階的に調整することができます。