矩形列表使用intersect来检查碰撞的语法是什么

时间:2015-04-22 17:05:15

标签: c# collision-detection xna-4.0

我现在想知道如何检测与矩形列表的碰撞。

<div ng-repeat='item in items'>{{item}}</div>

我不知道正确的语法。

    Rectanlge Player;
    List<Rectangle> BlockHitBox =  new List<Rectangle>();

代码应该检测矩形命中框是否与玩家命中框冲突。

我的目标是通过玩家无法通过它们的小矩形建造一个房间,所以我需要一次检测到多个碰撞(对于角落)

1 个答案:

答案 0 :(得分:2)

您可以使用IntersectsWith对象的Rectangle方法,如下所示:

var commonSize = new Size(100, 100);
var player = new Rectangle(new Point(0,0), commonSize);
var blockHitBox = new List<Rectangle>
{
    new Rectangle(new Point(0, 100), commonSize), // This one will not collide
    new Rectangle(new Point(100, 0), commonSize), // This one will not collide
    new Rectangle(new Point(0, 99), commonSize) // This one will collide
};

bool collision = blockHitBox.Any(item => item.IntersectsWith(player));