我做了一个游戏,玩家控制一个正方形,每当它碰到一堵墙就应该死掉。广场是一个图片框,墙壁也是图片框。你可以使用W,A,S和D移动。我正在考虑做类似的事情:
if(Square.Top == Square.Top + Square.Height)
然后重新开始游戏。有没有更好的方法呢?不是有很多IF吗?每当一个控件接触另一个人做某事?
非常感谢!
答案 0 :(得分:1)
是的,您可以通过Control.Bounds
获取包含矩形的控件,然后将IntersectsWith
与另一个矩形一起使用。
if(Square.Bounds.IntersectsWith(Wall.Bounds))
{
// ...
}
请记住,当你的方块接触到墙壁时它不会触发,只有当它开始在它上面时才会触发,但我认为这就是你想要的。