-2
if(drawRectangle.Right > drawRectangle0.Left)
{
   drawRectangle0.Y = 100;    
}

这只是一个测试,看看我的代码是否会检测到它,它会检测到它,但不是我想要的方式。看,当我什至没有靠近它时,它无论如何都会移动,我希望它移动,当它检测到与drawRectangle(player Rectangle) 发生碰撞时移动,这样玩家就可以再次去收集它。

另一方面,如何让我Texture2D的 's 出现而周围没有白色矩形?我如何使它不可见?

提前致谢。

4

2 回答 2

0

您可以测试Rectangles 之间的重叠与Rectangle.Intersects(drawRectangle, drawRectangle0);

但是,我认为您将需要显示更多代码,因为很难从该代码段中看出问题所在。

纹理周围的白色矩形是什么意思?在窗口中查看时,它们是否有一个白色矩形(不透明?)?

于 2013-10-05T12:22:30.970 回答
0

如果你的精灵周围的“白色矩形”是你原始纹理的一部分,你可能需要告诉 XNA 不要绘制那种颜色并使其透明。您必须在内容处理器属性中将颜色键颜色从洋红色 (255, 0, 255) 更改为白色 (255, 255, 255) ,请参见此处

通常最好在你的精灵中使用洋红色作为透明颜色,因为它是 XNA 中的默认颜色。或者更好的是,使用 Photoshop 或 Paint.net 之类的程序并使用 Alpha 通道使其透明。

于 2013-10-05T21:36:37.857 回答