【问题标题】:Buggy IF statement [closed]越野车 IF 声明 [关闭]
【发布时间】:2014-01-18 20:56:44
【问题描述】:

我有一个错误的 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))

【问题讨论】:

  • 我重新格式化代码后,你看到你的错误了吗?
  • 嘿,我刚刚登录,它可以工作了!非常感谢朋友。真的很感激。

标签: c# testing if-statement xna-4.0 operand


【解决方案1】:

我冒昧地重新格式化了您的代码,以避免问题中出现滚动条,并立即发现了问题:

&& harePlayer.Position.X <= (harePlayer.Position.X + 52)

这部分永远是正确的。 (总是 = 除非你在读取这些属性时得到一个新的(随机?)值)

改成这样:

&& tl.Position.X <= (harePlayer.Position.X + 52)

【讨论】:

  • 非常感谢!问题解决了,真正的救星。祝你有个美好的一天。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-08
相关资源
最近更新 更多