Muf*_*fin 1 c# testing if-statement xna-4.0 operand
我有一个错误的IF声明.我试图检查触摸是否在某个区域内.然而,它似乎正在为精灵创建一个隐形触摸盒,它是一个永无止境的触摸盒,它正好在屏幕外.左侧和顶部区域工作正常,但右侧的X轴是错误的.这是我的IF声明.
if (tl.State == TouchLocationState.Pressed
&& tl.Position.X >= harePlayer.Position.X
&& tl.Position.Y >= harePlayer.Position.Y
&& harePlayer.Position.X <= (harePlayer.Position.X + 52)
&& tl.Position.Y <= (harePlayer.Position.Y + 50))
Run Code Online (Sandbox Code Playgroud)
我冒昧地重新格式化你的代码,以避免在问题中有一个滚动条,并立即发现问题:
&& harePlayer.Position.X <= (harePlayer.Position.X + 52)
Run Code Online (Sandbox Code Playgroud)
这部分永远是真实的.(总是=除非你在读取这些属性中的任何一个时得到一个新的(随机?)值)
把它改成这个:
&& tl.Position.X <= (harePlayer.Position.X + 52)
Run Code Online (Sandbox Code Playgroud)