私はゲームの開始を構築するために使用されるテスタープログラムを持っています。あなたのスプライトを画面上の画面の端にバウンスさせる方法を教えてください。
私は画面のスプライトからバウンス効果を作成するはずのif文の速度属性に問題がありますが、正しい組み合わせを得ることができません。これについては、良いやりとりのために取り組んできたことがありませんでした。どんな助けもありがとう。
もう一つの注意点として、else ifメソッドにはgetWidthとgetHeightという属性があり、これは画面の高さと幅を取得することになっています。しかし、もしそうであればわかりません。必要に応じてそのクラスを添付することができます。しかし、私は私の画面のエッジのこの "バウンス"効果を作成しようとしている方法を追加します。
public void checkScreenEdge(Sprite s){
if (s.getX() > getWidth()){
}
else if (s.getX() + s.getWidth() >= getWidth());
{
}
if (s.getY() > getHeight()) {
}
else if (s.getY() + s.getHeight() >= getHeight())
{
}
}
'x <0 || x + width> width'がより適切でしょうか?それで、あなたは 'xVelocity * = -1'と反対の方向に速度を変更できますか? – MadProgrammer
あなたは、毎秒いくつかの定義済みのレートでメソッドを呼び出すことを願っています。 –
@Abhijith:リアルタイムスライスを計算するのが常にベストです。 –