2016-04-14 3 views
0

Phaserでは、ボタンをクリックしたときにトゥイーンを使用してスプライトを移動します。私は別のボタンをクリックしたときにスプライトを元の位置に行くように、私はトゥイーンを元に戻すにはどうすればよいフェイザートゥイーンを逆にするにはどうすればいいですか?

var tween = this.game.add.tween(sprite) 
    .to({ y: destinationY) }, 400, Phaser.Easing.Bounce.InOut)); 
tween.start(); 

+0

なぜ質問が投票されましたか? –

答えて

1

ボタンをクリックしたときにトゥイーンを反転させるには、そのボタンをトゥイーンで実行するだけです。 :)

具体的には、今保存しているdestinationYに加えて、originalYを保存する必要があります。

次に、その値で新しいトゥイーンを実行します。既存のボタンについては、このような

何か:

// Save the sprites current position first to originalY. 
var tween = this.game.add.tween(sprite) 
    .to({ y: destinationY) }, 400, Phaser.Easing.Bounce.InOut)); 
tween.start(); 

次に、あなたの新しいボタンでそれを使用しています。

var tween = this.game.add.tween(sprite) 
    .to({ y: originalY) }, 400, Phaser.Easing.Bounce.InOut)); 
tween.start(); 
+0

私はこれをやろうと思っていました。実際に達成するのは非常に簡単です...私は、別のトゥイーンを追加したり、本質的にコードを書き換えたりせずにリバースする方法があることを期待していました。トゥイーンがより複雑な場合にこれを行うと便利です。また、私は逆にする必要がある多くのtweensを持っています... –

+1

'[reverse](http://phaser.io/docs/2.4.6/Phaser.Tween.html#reverse)'プロパティがありますTween Manager *のガイドは、トゥイーンが現在動作している場合にのみ動作するように見えます。この例では、トゥイーンが、設定された閉じたパスに沿ってループ内で実行されています。 –

+0

はい。それは現在再生中のトゥイーンを逆転するだけです... –

関連する問題