【问题标题】:How to getTileProperty while using multi-layer map?使用多层地图时如何获取TileProperty?
【发布时间】:2014-07-06 07:46:44
【问题描述】:

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

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

非常感谢。

【问题讨论】:

    标签: java lwjgl slick2d tiled


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-03
      • 1970-01-01
      • 2011-09-13
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多