Java 打破砖头游戏:我如何打破砖头?

Java 打破砖头游戏:我如何打破砖头?,java,processing,Java,Processing,我正在尝试用java做一个砖块破坏游戏,我做了球和砖块之间的碰撞,但我不知道如何使砖块在球碰到砖块时消失。我想我应该用布尔值。 我还是个初学者,所以我不使用课堂等等 我试着用void来检查砖块是否被碰过,但仍然不起作用,我的问题是void draw_brick()函数 int-movementX,movementY; int x,y; int w,z; int b,v; int n,m; int g,h; 无效设置() { 大小(600600); 背景(0); x=200; y=300; mov

我正在尝试用java做一个砖块破坏游戏,我做了球和砖块之间的碰撞,但我不知道如何使砖块在球碰到砖块时消失。我想我应该用布尔值。 我还是个初学者,所以我不使用课堂等等

我试着用void来检查砖块是否被碰过,但仍然不起作用,我的问题是void draw_brick()函数

int-movementX,movementY;
int x,y;
int w,z;
int b,v;
int n,m;
int g,h;
无效设置()
{
大小(600600);
背景(0);
x=200;
y=300;
movementX=-3;
movementY=6;
w=280;
z=400;
}
作废提款()
{
清除();
运动();
敲打();
德西纳();
画一块砖();
}
无效清除()
{  
背景(0);
}
void dessiner()
{
光滑的();
填充(255);
rect(w,z,85,25);
填充(255,0,0);
椭圆(x,y,20,20);
填充(255);
文本(“movementX:+movementX,480570);
文本(“movementY:+movementY,480583);
}
空位移动()
{
x=x+movementX;
y=y+movementY;
w=(mouseX);
}
void draw_Brick()
{
对于(int n=0;n<3;n=n+1){
对于(int m=0;m<3;m=m+1){
int b=m*250;
int v=n*70;
int g=85;
int h=25;
填充(255,0,0);
rect(b,v,g,h);
println(“y:+y”);
println(“m:+m”);
if(yv&&xb){
movementY=-movementY;
//g=0;
//h=0;
填充(255、255、255);
rect(b,v,g,h);
}
}
}
}
空击()
{
//在水平方向和水平方向上
如果(x>width-10&&movementX>0)
{
movementX=-movementX;//反向器la valeur
}
//在垂直位置的垂直方向上
如果(y>width-10&&movementY>0)
{ 
movementY=-movementY;//rendre négative la valeur
}
//在垂直方向和垂直方向上的si
if(y<10&&movementY<10)
{
movementY=abs(movementY);//rendre正值
}
//控制台上的砰砰声
//如果(y>z-15&&xw)
//{
//movementY=-movementY;//逆拉瓦勒
//}
if(yz&&xw){
movementY=-movementY;//inverser la valeur
}
if(x<10&&movementX<10)
{
movementX=-movementX;
}
}

您基本上必须按照设置的方式“取消绘制”砖块。最好是创建砖块对象,这样当您知道有人联系它们时,就可以简单地删除它们

所以,按照您的设置方式,这将是非常困难的。你最好的办法是做一个砖块课。你将要面对的挑战不是砖块从屏幕上消失,而是砖块消失后球反弹的位置。它现在的设置方式,当球到达屏幕上的特定区域时,看起来你只是在反转球,这意味着它实际上并没有与砖块交互,因此如果你让砖块消失(可以在上面画一个矩形),球仍然会从原来的位置反弹。您可以为屏幕上每个有砖块的区域设置一个布尔值,但随后您的pounding()方法中的条件将开始失控,尤其是当游戏变得更大时(例如,多行砖块)。通过将这些东西作为对象(砖块、球和桨),您可以管理它们之间的直接交互,因此,您可以检查球是否位于砖块所在的特定位置,而不是检查球是否确实击中砖块,然后移除砖块。

但一旦我创建了一个砖块类,我如何检查球是否击中砖块?嗯,好的,但是如何检查球是否击中我的对象(如砖块或桨),你必须检查球的位置是否与砖块的一部分相同。这就是为什么这种方法会让人感到痛苦。您必须检查球的位置(在任何给定时间)以查看它是否接触。基本上,球的x或y和砖的x和y是一样的。