Java 为突破游戏而制作硬砖

Java 为突破游戏而制作硬砖,java,Java,我刚刚进入面向对象编程领域,并创建了游戏突破,但现在我正在尝试获得专业砖块,即TeleportBrick、SpeedupBrick和HardBrick 硬砖在骗我。我试图在每次命中硬砖块时插入一个计数+,一旦计数++等于3,则在该砖块在数组中的特定位置返回null。出于某种原因,当其他砖块(不仅仅是硬砖块)被击中时,计数++就会发生 我的假设是数组中的其他砖块不会触发此命中(Ball b)函数,因为此命中方法位于HardBrick类内部,而不是ColorBrick或Brick类,并且只会影响指定

我刚刚进入面向对象编程领域,并创建了游戏突破,但现在我正在尝试获得专业砖块,即TeleportBrick、SpeedupBrick和HardBrick

硬砖在骗我。我试图在每次命中硬砖块时插入一个计数+,一旦计数++等于3,则在该砖块在数组中的特定位置返回null。出于某种原因,当其他砖块(不仅仅是硬砖块)被击中时,计数++就会发生

我的假设是数组中的其他砖块不会触发此命中(Ball b)函数,因为此命中方法位于HardBrick类内部,而不是ColorBrick或Brick类,并且只会影响指定的HardBrick类

我正在处理的代码:

@Override
    public void hit(Ball b) {
        // Figure out which way to bounce the ball and remove the brick from the game
        if (b.lasty > b.y || b.y <= y + Main.bheight || b.lastx <= x || b.lastx >= x + Main.bwidth) {
            b.yv = -b.yv;
            b.xv = -b.xv;
            HBhitcount++; 
            if (HBhitcount++ == 3) {
                bricks[i][j] = null;
            }
        }
    }
@覆盖
公开无效击球(b球){
//找出反弹球的方法,并从游戏中移除砖块

如果(b.lasty>b.y | | b.y什么是
HBhitcount
?硬块类的非静态成员变量,或静态变量(注意:它可能是非静态的)?您可能需要提供更多的HardBrick类,我们也需要提供超级类Brick来帮助您-了解
bricks
是什么也会很有用。在Java中,变量名使用camelCase,类名使用PascalCase:)还要注意在
HBhitcount++;如果(HBhitcount++==3)
您将增加
HBhitcount
两次。@LorisSecuro这就是它的全部了哈哈。能有另一双眼睛看代码总是很好。谢谢。