我正在编写一个程序,它有一个围绕PictureBox移动的球,我在PictureBox的顶部有一组砖块。
我使用了一个数组来定位我将要使用的砖块:
int[,] brickLocation = { { 0, 0 }, { 30, 0 } }
我使用DrawRectangle来构建图片框中的每个砖块。这存在于timer1_Tick事件中。在绘制球时,图像框将被清除,x和y坐标会发生变化。
当球与砖“碰撞”时,我想要一些方法,砖块会消失,因为它后面会有另一块砖。
[brick0]
[brick1]
目前,我和ball1之间碰撞的代码是:
if ((yBall > brickY) && (yBall < brickY + 25) && (xBall > brickX) && (xBall < brickX + 80))
{
yBallChange = -yBallChange;
}
其中xBall,yBall是球的x和y坐标,brickX和brickY是砖块的坐标。
因此,当球坐标在brick1的范围内时,y方向将发生变化。
我是否有某种方法可以将[brick1]重新绘制到一个没有大小的新位置以消除它,这样球和[brick0]之间就会发生碰撞? 或者我还能做些什么吗?