JavaScript / jQuery - 数组列表不适用于整板

时间:2012-05-04 08:46:28

标签: javascript jquery html5

所以,我正在使用A* Pathfinding。我得到了它,但它不能一直工作。它一直有效,直到右边的最后4列。奇怪的。

它一直有效,直到X为10或更小。这很奇怪,因为Y的最大值是10。也许它在一起?我不知道。但是我的地图是15 columns 10 rows。以下是一个在线示例:http://mystikrpg.com/html5/

尝试点击地图右侧,看看它不起作用?现在尝试点击某处,X为10或更低。它的工作原理应该如此。

我得到的一个有趣错误是Uncaught TypeError: Cannot read property '8' of undefined

8是您点击的Y。如果单击右侧的第一个灰色块(因为第0行被关闭)。然后,8会说1

这是它放置节点的部分。

// Creates a Graph class used in the astar search algorithm.
function Graph(grid) {
    var nodes = [];

    var row, rowLength, len = grid.length;

            for (x = 0; x <= 10; x++) {
             row = grid[x];
             nodes[x] = new Array(15);
                for (y = 0; y <= 15; y++) {
                   nodes[x][y] = new GraphNode(x, y, row[y]); 
                }
            }

    this.input = grid;
    this.nodes = nodes;
}

1 个答案:

答案 0 :(得分:2)

您的loadmap函数返回一个包含11个元素的数组。

例如,当x_block为13时,graph.nodes[x_block][y_block]将返回undefined。