我正在加载一个设置长度的1D数组,它将tile类型保存为int。但是,我的可见地图是以块[而不是2D [x] [y]数组)构建的。我有引擎和tile类/对象,以便使用Javascript构建地图。
我已经尝试了很多例子,似乎没有什么比较合适的,包括A-B到M-N的转换,刚刚拍摄了第一个图块并重复了几次。
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);
}
}
有没有更好的方法来转换数组输出?
这张地图快照显示了如何将TILED地图数据转换为JSON数组,并解释它比我之前发布的文本示例更好。