我正在尝试制作一个简单的游戏,我需要知道图片框1(我的角色)是否与其他图片框(墙壁)发生碰撞。
我已经弄清楚了如何做到这一点,但它只适用于我的角色和其他 1 个图片框,例如:
If picturebox1.bounds.intersectWith(picturebox2.bounds) then
collision = true
end if
我试图做这样的事情:
For Each PictureBox In Me.Controls
If PictureBox1.Bounds.IntersectsWith(PictureBox.Bounds) Then
collision = True
Else : collision = False
End If
Next
但是布尔碰撞总是正确的,因为picturebox1(角色)总是与自己相交。
所以我将图片框更改为面板,代码如下所示:
For Each PictureBox In Me.Controls
If Panel1.Bounds.IntersectsWith(PictureBox.Bounds) Then
collision = True
Else : collision = False
End If
Next
但它仅适用于 1 个单个图片框,不适用于表单中的所有图片框。我不明白为什么......如果有人可能知道如何在每个函数中添加一个异常,这样我就可以保留我的图片框1
像这样的东西
For each picturebox(except(picturebox1)) in me.controls
因为我已经搜索过但没有找到任何东西......
非常感谢任何帮助:) 谢谢!