【问题标题】:int[][] array not working - java appletint[][] 数组不工作 - java 小程序
【发布时间】:2010-05-28 20:45:07
【问题描述】:

好的,所以阵列不工作。

我的代码:http://www.javadan.pastebin.com/C9QiVySe

我正在尝试检查blocked(lastX,lastY) 他是否在下面的图块上。我在玩家上、下、左或右时通过加减 X 和 Y 来计算玩家站立的图块。因此,如果玩家从 0,0 开始,他们按下两次和一次右击。他们将在 (2,1)。然后代码检查 board[2][1] 是否被阻塞(不是)。该代码特别指出 board[1][1] 被阻止,但控制台说它适用于随机瓷砖...... :(

帮助?谢谢。

【问题讨论】:

    标签: java arrays applet


    【解决方案1】:

    嗯,(1,1) 没有被阻塞(BLOCKED == 1,board[1][1] == 2)。另一方面,(2,1) 被阻塞。说到这里,你可能会对索引感到有些困惑:给定阻塞数组的布局,你应该使用 [lastY][lastX] 来索引它,而不是相反。

    另外,我没有在 keyPressed 中看到任何对阻塞() 的调用,因此您实际上并没有在移动播放器之前检查阻塞。

    【讨论】:

      【解决方案2】:

      你到底在问什么?您提到移动到 (2, 1),但是 (2, 1) 在您加载的数组中被阻止。你知道BLOCKED == 1,对吧?

      你也永远不会检查玩家是否在keyPressed中被屏蔽。

      【讨论】:

      • 在哪里?我所看到的只是 board[1][1] 被阻止了。但我现在明白了。
      • 但是……我到底该怎么处理 1?我想我配置错了。 :(
      • 如果您专门将 BLOCKED 放在您想要在 loadBoard 中的位置,即 { 2,2,24,24,24,24,24,BLOCKED,3,0,0,0 }。不过,它等同于您所拥有的。
      • 是的,但是我怎么知道要在那里画什么瓷砖?
      猜你喜欢
      • 2011-08-15
      • 2014-02-21
      • 1970-01-01
      • 2013-04-25
      • 1970-01-01
      • 1970-01-01
      • 2012-11-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多