动态加载龙骨动画 动画无法播放

    var node= cc.instantiate(this.aPrefab);
    node.level = level;
    cc.loader.loadResDir("a/a"+level+"_ske",dragonBones.DragonBonesAsset, function (err, db) {
        cc.loader.loadResDir("a/a"+level+"_tex",dragonBones.DragonBonesAtlasAsset, function (err, as) {
            node.getComponent(dragonBones.ArmatureDisplay).dragonAsset = db[0];
            node.getComponent(dragonBones.ArmatureDisplay).armatureName = "Armature";
            node.getComponent(dragonBones.ArmatureDisplay).dragonAtlasAsset = as[0];
            node.getComponent(dragonBones.ArmatureDisplay).playAnimation("Animation1",0);
        });
    });

龙骨创建了 就是动画不动

//动态加载龙骨
static loadDragonBones(armatureDisplay:dragonBones.ArmatureDisplay, dir, armature, animation, playTimes = 1)
{
cc.loader.loadResDir(dir, function(err, assets){
if(err || assets.length <= 0)
return;

        assets.forEach(asset => {
            if(asset instanceof dragonBones.DragonBonesAsset){
                armatureDisplay.dragonAsset = asset;
            }
            if(asset instanceof dragonBones.DragonBonesAtlasAsset){
                armatureDisplay.dragonAtlasAsset  = asset;
            }
        });

        armatureDisplay.armatureName = armature;
        armatureDisplay.playAnimation(animation, playTimes);
    })
}
2赞

demo.zip (1.7 MB)

可以帮忙看看demo哪里有问题吗

破案了 先设置 dragonAsset dragonAtlasAsset 再设置 armatureName 顺序不可改变

4赞