LibGDXのTouchpad
クラスのtouchpad
を使ってプレイヤーを移動しています。しかし、今私は、touchpad
のの位置に応じて、8方向にしか移動できず、それぞれの方向に移動できないようにしたいと考えています。プレイヤーをLibGDXのタッチパッドで45度だけ動かす
上、右、右、右下、下、下左、左、左。したがって、これらの方向の間の角度は45°です。
運動のための現在のコードは次のとおりです。
player.setX(player.getX() + touchpad.getKnobPercentX() * Constants.SPEED);
player.setY(player.getY() + touchpad.getKnobPercentY() * Constants.SPEED);
私はプレイヤーが唯一のこれらの8つの方向のいずれかに移動するように変更する必要がありますか?私はノブの位置を丸めなければならないと思いますが、正確にそれを行う方法はわかりません。
touchpad
のknob
は、もはや「スムーズ」に移動してはならず、これらの8つの位置のうちの1つに「ジャンプ」するだけで、どの方向が現在アクティブであるかを直接見ることができます。
誰でもこの問題を手伝うことができますか、それを処理する別の方法がありますか?
は
ノブのパーセントは、0〜100または0〜1から戻っていますか? –
-1と1の間の値です(ノブが中央にある場合は0です)。 – erik4thewinners