目前,我有两种不同的加载tilemap的方法,一种是通过使用本机libGDX类TmxMapLoader
读取从Tiled导出的.tmx文件,如下所示:
tiledMap = new TmxMapLoader().load("tilemap/moontilemap.tmx");
另一种方法是创建一个2D数组并在其中放置图块ID,然后将其保存到JSON文件中,如下所示:
public static void saveMap(String id, String name, int[][][] map) {
CustomMapData mapData = new CustomMapData();
mapData.id = id;
mapData.name = name;
mapData.map = map;
Gdx.files.local("maps/").file().mkdirs();
FileHandle file = Gdx.files.local("maps/" + id + ".map");
file.writeString(json.prettyPrint(mapData), false);
}
理想情况下,我想将这些结合起来,但是我不确定该如何结合。我想继续使用Tiled创建我的初始tilemap,并将其保存在.tmx文件中,但是我希望播放器编辑地图,然后更改.tmx文件中的数据以保存这些更改。我该怎么办?