私の目標は、ゲームの将来のバージョンでボール半径の値が変更されたとしても、ボールがパドルの中心に来るようにすることです。私の唯一の問題は、ゲームボールの x 座標の正しい数式を実装することです。y座標式が完全に機能するようになりました。
正解はいらない。答えを得るには、ガイダンスと提案が必要です。
以下は、Java プログラムの図です。
http://i33.photobucket.com/albums/d86/warnexus/ball.png
コメントの下のコードを見つけることができます。
/** Radius of the ball in pixels */
private static final int BALL_RADIUS = 500;
private void setup_Paddle()
{
// TODO Auto-generated method stub
// x coordinate of the upper left corner
// y coordinate of the upper left corner
paddle = new GRect(20,20,PADDLE_WIDTH,PADDLE_HEIGHT);
paddle.setFilled(true);
paddle.setColor(Color.PINK);
add(paddle,paddleInitialLocationX,paddleInitialLocationY);
}
private void setup_Ball()
{
// Trouble figuring the math here
int ballSetUpCoordX = (int) (paddle.getX());
// Good Code!
int ballSetUpCoordY = (int) (paddle.getY()-BALL_RADIUS);
gameBall = new GOval(BALL_RADIUS,BALL_RADIUS);
gameBall.setFilled(true);
gameBall.setColor(Color.BLUE);
add(gameBall,ballSetUpCoordX,ballSetUpCoordY);
}
private GOval gameBall;
private GRect paddle;
private int paddleInitialLocationX = 200;
private int paddleInitialLocationY = 500;