PictureBox の周りをボールが動き、PictureBox の上部にレンガのセットがあるプログラムを書いています。
使用するレンガの場所に配列を使用しました。
int[,] brickLocation = { { 0, 0 }, { 30, 0 } }
DrawRectangle を使用して、ピクチャ ボックス内の各ブリックを作成しました。これは timer1_Tick イベント内に存在します。ボールが描画されると、ピクチャ ボックスがクリアされ、x 座標と y 座標が変化します。
ボールがレンガと「衝突」すると、その背後に別のレンガがあるため、レンガが消える方法が必要です。
[レンガ0]
[レンガ1]
現時点では、ボールとレンガ 1 の間の衝突の私のコードは次のとおりです。
if ((yBall > brickY) && (yBall < brickY + 25) && (xBall > brickX) && (xBall < brickX + 80))
{
yBallChange = -yBallChange;
}
ここで、xBall、yBall はボールの x 座標と y 座標、brickX と brickY はレンガの座標です。
したがって、ボールの座標がbrick1の境界内にある場合、y方向が変わります。
[brick1] をサイズのない新しい位置に再描画して、ボールと [brick0] の間に衝突が発生するようにする方法はありますか? または、他にできることはありますか?