动态加载TiledMap问题

动态加载TiledMap问题 在cocos creator中只能在显示面板中制定tmx吗? 可以在js中制定tmx文件吗??

可以尝试使用initwithTMX

谢谢,哪里有initWithTMX,API里没找到。。。还有,动态加图片等文件时,貌似用ccc.url.raw只能在模拟器中加载资源,到了真机或构建后运行都无法正确加载。。

@jsenyear @linhaiwei123

首先,请参考文档来实现资源的动态加载:http://www.cocos.com/docs/creator/scripting/load-assets.html

在 1.1 版本中,TiledMap 组件的资源加载方式进行了调整,从原来的 RawAsset 改为了 Asset。这个改动前后 TiledMap 资源动态加载的实现方式分别说明如下:

  1. 在改动之前,可以使用 TiledMap 组件的 initWithTMX 接口来动态初始化地图。参数为 tmx 文件的相对路径。地图初始化完成后会调用组件的 mapLoaded 属性所指定的回调函数。

  2. 在改动之后,initWithTMX 这个接口被丢弃了。如果需要动态加载地图资源,请参考这样的代码:

    // 获取 TiledMap 组件
    var theMap = this.node.getComponent(cc.TiledMap);

    // 加载 TiledMap 资源(iso-test 表示要加载 assets/resources/iso-test.tmx 文件)
    cc.loader.loadRes('iso-test', function(err, map) {
        // 资源加载完成,为地图组件设置地图资源
        theMap.tmxAsset = map;
    });
4赞

get it 感谢解答