如何检查精灵是否位于Monogame XNA C#上的特定位置



我正在制作一款游戏,对这种语言很陌生,我需要检测精灵是否到达了某个位置,以便游戏做出某种响应。

类似的东西;

if ( /* position of sprite1 == (100,400) */ )
{
// Do stuff; 
}

首先,您需要有一个Vector2变量来存储它们的位置。

然后,您可以使用Vector2将一个位置与另一个位置进行比较。

一个可能的想法是这样使用它:

Vector2 position = new Vector2(0,0);
if (position == new Vector2(100, 400))
{
//Do stuff
}

然后在绘制精灵的位置,用position变量替换精灵的位置。

不过请记住,位置检查是非常精确的,如果你错过了一个像素,你就不会触发if语句。通常,您更希望使用Rectangle进行碰撞检查,因此您有一个完整的"hitbox"来检查位置。尽管这取决于你的游戏环境。

最新更新