从LibGdx中的tmx贴图(TiledMap)创建一个Sprite列表

时间:2016-03-09 00:45:04

标签: java libgdx sprite tiled tmx

在互联网上搜索多次后,我找不到答案..

情况如何? 我是大学(比利时)的计算机科学专业的学生,​​我必须使用图形库LibGdx在Java中进行塔防。

有什么问题? 在LibGdx中,有一个名为" TiledMap"的地图对象。它允许加载tmx地图(例如用瓷砖制作..) 所以我用这段代码加载这张地图:

TiledMap tiledMap = new TmxMapLoader().load(name);

我用这段代码渲染它:

TiledMapRenderer tiledMapRenderer = new OrthogonalTiledMapRenderer(tiledMap);
OrthographicCamera camera = new OrthographicCamera(960, 900); // Size of map
camera.position.set(posX, posY, 0);
camera.update();
tiledMapRenderer.setView(camera);
tiledMapRenderer.render();

但我没有找到允许我在精灵列表中分离tmx地图的方法或类似内容。

"私人精灵[] []瓷砖" ..此属性将允许通过塔的精灵更改位置(0,0)处的瓦片(如果玩家想要将塔建造到此位置)

以及用于制作tmx地图的属性我还可以执行其他属性,例如

" private boolean [] [] isWay" ..知道瓷砖(0,0)是否合适(怪物只有在瓷砖通行时才能行走)..

所以我不知道如何将TiledMap更改为Sprite [] []

对不起,如果我犯了一些英语错误,但我每天都会努力提高英语水平......

感谢您的帮助;)

1 个答案:

答案 0 :(得分:1)

TiledMap没有任何Sprite实例。您可以通过Sum( [Store].[Store].[Store].Members, IIF( IsEmpty([Measures].[Sales]), Null, ( ROOT([Product]) ,ROOT([Supplier]) ,ROOT([Promotion]) ,ROOT([Misc]) ,[Measures].[Sales] ) ) ) 获取TiledMapTileLayer的参考资料,这将获得第一层。

有了这个,你可以通过TiledMapTileLayer layer = (TiledMapTileLayer) map.getLayers().get(0)layer.getCell(x, y)来获取和设置单元格(以及它们包含的图块)。