文档描述适用于引擎版本3.7.x最新和4.x最新。
Tiled 从0.8开始,进入飞速发展期间,版本号大跃进,功能也越来越多。Cocos2d-x 官方的解析和运行代码只支持到0.8的数据格式,后续新的功能不能适用。故本人对社区版的Tiled数据解析和渲染模块进行了大量重写,以便支持新功能。
目前社区版已支持Tiled tmx格式1.2大部分功能,而Tiled tmx已更新到1.4格式,后续新功能视情况来添加支持,在不使用新功能的情况下,引擎是兼容高版本的tmx数据格式的。
加载地图,添加到父节点。
local map = cc.TMXTiledMap:create("tiled/desert.tmx")
map:addTo(self)
获取对象层
local layerObjects = map:getObjectGroup("Objects")
获取对象层中的对象数据
for _, obj in ipairs(layerObjects:getObjects()) do
-- ObjectGroup's object's pos had convert to cocos coordinate
-- obj包含了默认属性和自定义属性
dump(obj)
end
获取tile图层,以及某一块的gid对应的自定义数据
注意 Cocos2d-x中的Tile gid值 = Tiled编辑器值 + 1
local layer = map:getLayer("Ground")
local gid = layer:getTileGIDAt(cc.p(6, 12))
local prop = map:getPropertiesForGID(gid)