如何在使用多层地图时获取TileProperty?

时间:2014-07-06 07:46:44

标签: java lwjgl slick2d tiled

我是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了。

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

非常感谢。

1 个答案:

答案 0 :(得分:0)

TiledMap.getTileId()的第三个参数是layerIndex。您必须使用它来选择您要搜索瓷砖的图层,并使用&#34;阻止&#34;属性设置为&#34; 1&#34;。