46 lines
1.2 KiB
JavaScript
46 lines
1.2 KiB
JavaScript
var customMapFormat = {
|
|
name: "Custom map format",
|
|
extension: "custom",
|
|
|
|
write: function(map, fileName)
|
|
{
|
|
var file = new TextFile(fileName, TextFile.WriteOnly);
|
|
|
|
file.writeLine("{");
|
|
file.writeLine(" \"MapWidth\": " + map.width + ",");
|
|
file.writeLine(" \"MapHeight\": " + map.height + ",");
|
|
file.writeLine("");
|
|
|
|
for(var i = 0; i < map.layerCount; i++)
|
|
{
|
|
var layer = map.layerAt(i);
|
|
|
|
if(layer.isTileLayer)
|
|
{
|
|
file.writeLine(" \"" + layer.name + "\": [");
|
|
|
|
for(var cell_y = 0; cell_y < layer.height; ++cell_y)
|
|
{
|
|
file.write(" ");
|
|
|
|
for (var cell_x = 0; cell_x < layer.width; ++cell_x)
|
|
{
|
|
file.write(" " + layer.cellAt(cell_x, cell_y).tileId)
|
|
if(cell_x < layer.width - 1 || cell_y < layer.height - 1)
|
|
file.write(",");
|
|
}
|
|
|
|
file.writeLine("");
|
|
}
|
|
|
|
file.writeLine(" ],");
|
|
}
|
|
}
|
|
|
|
file.write("}");
|
|
file.commit();
|
|
},
|
|
}
|
|
|
|
tiled.registerMapFormat("custom", customMapFormat)
|