3

我正在加载一个固定长度的一维数组,它将平铺类型保存为 int。但是,我的可见地图是以块而不是 2D [x][y] 数组的形式构建的。我有引擎和瓦片类/对象,以便使用 Javascript 构建地图。

我已经尝试了许多示例,但似乎没有什么适合,包括 AB 到 MN 的转换,它只占用了第一个图块并重复了几次。

var chunks = [];

for (var y0 = 0; y0 < B; y0 += N) {
    for (var x0 = 0; x0 < A; x0 += M) {
        var chunk = [];
        for (var yd = 0; yd < N; yd++) {
            var y = y0 + yd;
            chunk[yd] = [];
            for (var xd = 0; xd < M; xd++) {
                var x = x0 + xd;
                chunk[yd][xd] = mapdata[y * A + x];
            }
        }
        chunks.push(chunk);
    }
}

有没有更好的方法来转换数组输出?

这张地图快照显示了它是如何从转换为 JSON 数组的 TILED 地图数据中进行布局的,并且比我之前发布的文本示例更好地解释了它。

示例地图

4

0 回答 0