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 回答