3

私は宿題をしようとしています、そして私はブレイクアウトゲームを書きます. さて、このゲームフィニッシュの基本的な機能を書きますが、ボーナスを増やしたいのですが、ボールがボーナスブリックに衝突したとき、それらをチェックし、ボールが衝突したカラーフォームオブジェクトを取得する方法を書きます。

} else if(color == Color.BLACK){ 
        double xBonus = ball.getX() +20;
        double yBonus = ball.getY() +20;
        remove(ball);
        ball = new GOval(xBonus, yBonus, BALL_RADIUS+20, BALL_RADIUS+20);
        ball.setFilled(true);
        ball.setFillColor(Color.RED);
        add(ball);

GObject collider = getCollidingObject(); ボールが衝突するオブジェクトを検出するためにコライダを使用しますが、ボールが衝突するとボーナス ブロックが検出されます。ボールは大きくなりましたが、コライダーはブロックである新しいボール オブジェクトを検出し、ゲーム エッジを介してボールを跳ね返します。私を助けてください..申し訳ありませんが、文法的に間違っています。

4

1 に答える 1

0

ball.getXとball.getYの割り当てに*20を使用したいと思います。

新しいボールオブジェクトは、元のゲームパネルと同じインスタンスではないようです。ゲームがプレイされているパネルの同じインスタンスで新しいボールオブジェクトを受け入れていることを確認する必要があります。

あなたがあなたのコードのいくつかをもっと見せれば、私はもっと具体的にすることができるかもしれません。

于 2012-08-09T21:56:26.923 に答える