インターネットで見つけた古いコードを基に、Pong のようなゲームを作ろうとしています。画面のサイズは元々手動で設定されており、他のサイズの画面は考慮されていませんでした。サイズに関係なく、バーが画面の端から 10% になるように更新したいと考えています。私はさまざまなことを試しましたが、いくつかのエラーなしでは機能しませんでした。私が思いついた最高のものはこれです。
@SuppressWarnings({ "unused", "deprecation" })
private static Point getDisplaySize(final Display display) {
final Point point = new Point();
try {
display.getSize(point);
} catch (java.lang.NoSuchMethodError ignore) { // Older device
point.x = display.getWidth();
point.y = display.getHeight();
}
return point;
}
この最初のビットは、古い API と新しい API で正しく動作するはずですか? 幅と高さの情報を後で使用する _screenHeight と _screenWidth に適用するにはどうすればよいですか? はい、_screenWidth/2 では、探しているエッジから 10% が得られないことを認識しています。一度に 1 ステップずつお願いします。
//The ball
final int _ballSize = 10;
//Original
//int _ballX = 100; int _ballY = 100;
int _ballX = 500; int _ballY = 500;
int _ballVelocityX = 3; int _ballVelocityY = 3;
//The bats
final int _batLength = 75; final int _batHeight = 10;
int _topBatX = (_screenWidth/2) - (_batLength / 2);
final int _topBatY = 20;
int _bottomBatX = (_screenWidth/2) - (_batLength / 2);
//Original code
//final int _bottomBatY = 400;
final int _bottomBatY = 750;
final int _batSpeed = 3;