java - 为什么我不能删除并绘制相同的 java 对象?

标签 java breakout

我尝试做作业,并编写突破游戏。现在,我编写了这个游戏的基本功能完成。但我想增加奖金当球碰撞奖金砖时,我编写方法来检查它们并获取球碰撞的颜色形式对象。

} 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(); 我使用碰撞器来检测球碰撞的物体 但当球撞击奖金砖时。球的尺寸增加了,但碰撞器检测到新的球对象是砖 block ,并通过游戏边缘弹跳球。 请帮助我..抱歉,我的语法错误。

最佳答案

我相信您想在 ball.getX 和 ball.getY 赋值中使用 * 20。

听起来新的球对象与原始游戏面板不在同一实例中。您应该确保在玩游戏的面板上的同一实例中接受新的球对象。

如果您展示更多代码,我也许可以更具体。

关于java - 为什么我不能删除并绘制相同的 java 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11542169/

相关文章:

java - Android - 有没有 super 舒适的方式来存储持久数据?

java - 序列化:java.io.StreamCorruptedException:无效的流 header :0AACED00

Java正则表达式和模式

c# - 碰撞功能无法正常工作

javascript - 使用 jquery 创建了一个简单的 BREAKOUT 游戏,尝试转换回纯 JavaScript

java - 斯坦福大学 cs106a - 突破练习

java - 在Java中创建多个砖 block

java.lang.NoClassDefFoundError : org/omg/CORBA/COMM_FAILURE on client while creating simple spring boor rmi app

java - 如何将 ArrayList 添加到 GWT ListBox

css - gridview 跳出容器 div