私は達成する必要があることを説明しようとします。libGDX - 特定の位置でのプレーヤーの動きを止めるには?
プレイヤーは0、0の位置から開始します。 画面に触れると、プレイヤーが上がり始めます。 そして、プレーヤーがY軸の特定の位置にいるとき(私は200と言う)、私は彼が移動を停止したい。
私は、画面をタッチすると、このメソッドが呼び出されます。
public void move() {
if (player.getPosition().y < 200) {
player.velocity.set(0, 100);
}
そして、私が持っている私のプレイヤーの更新方法で:
if (player.getPosition().y > 200) {
player.position.set(0, 200);
player.velocity.set(0, 0);
}
これで問題があれば、私は中に速度を設定することですメソッドを1000のようなものに移動すると、200以上のプレイヤーの位置でレンダリングされた1つのフレームがあります。それから、それを200に変更してそこにとどまります。
私は更新方法でこれを試してみました:
if (player.getPosition().y == 200) {
player.velocity.set(0, 0);
}
しかし、プレイヤーの位置は常に200で、200.1257または200.54578
のようないくつかの乱数ため、この文は真なることはありません私はすべてのあなたの答えを感謝します!