我需要遍历一个类似于下面示例的地图,并获取它的宽度和高度以及文件每个点的数字。然后我在该位置添加一个平铺(乘以大小)宽度参数(x, y, width, height, id)
。" id
" 是文本文件中的当前编号。以下是该文件的示例:
2 0 0 0 0 0 0 0 0 2
2 0 0 0 0 0 0 0 0 2
2 0 0 0 0 0 0 0 0 2
1 1 1 1 1 1 1 1 1 1
我试图在地图上的相应位置添加一个新的 Tile,但 mapWidth 和 mapHeight 正在文件的第一个位置返回实际数据(在本例中为 2)。如何返回此文本文件数据的宽度和高度,以便向数组添加图块?这是我尝试过的代码:
try {
Tile[][] tiles;
int mapWidth, mapHeight;
int size = 64;
//variables in same scop to save you time :)
FileHandle file = Gdx.files.internal(s);
BufferedReader br = new BufferedReader(file.reader());
mapWidth = Integer.parseInt(br.readLine());
mapHeight = Integer.parseInt(br.readLine());
System.out.println(mapWidth);
int[][] map = new int[mapWidth][mapHeight];
tiles = new Tile[mapWidth][mapHeight];
for(int i = 0; i < tiles.length; i++) {
for(int j = 0; j < tiles[i].length; j++) {
tiles[i][j] = new Tile(i * size, j * size, size, map[j][i]);
}
}
br.close();
} catch(Exception e) { e.printStackTrace(); }