-1

我是 Slick2D 的新手,我正在使用 Tiled 制作 .tmx 地图。

for (int xAxis = 0; xAxis < map.getWidth(); xAxis++) {
    for (int yAxis = 0; yAxis < map.getHeight(); yAxis++) {
        int tileID = map.getTileId(xAxis, yAxis, 0);
        String value = map.getTileProperty(tileID, "blocked", "0");
        int valueInInt = Integer.parseInt(value);
        if (valueInInt == 1) {
            blocked[xAxis][yAxis] = true;
        }
    }
}

当块与其他块位于同一层时,这可以正常工作,但是,如果我将块放在不同的 Tile 层上,我将无法再获得正确的 TileProperty。

为什么会这样?我能用那个或任何理想做什么?

非常感谢。

4

1 回答 1

0

TiledMap.getTileId()的第三个参数是layerIndex. 您必须使用它来选择要搜索“blocked”属性设置为“1”的图块的图层。

于 2014-07-16T21:26:16.613 回答