prefab中切换动画问题

cocoscreator 1.6.0正式版


1:prefab中做了4个动画,要实现的效果是使用cc.loader动态加载prefab,然后根据需求播放不同的动画,这里遇到个问题,先看代码:
let self = this;
cc.loader.loadRes(“prefab/monster”,cc.Prefab,function(err,prefab)
{
let monster = cc.instantiate(prefab);
monster.parent = self.node;
let animation = monster.getComponent(cc.Animation);
animation.play(animation.getClips()[3].name);
});
问题是:以这样的方式切换动画始终播放的是默认的defaultClip,这里的animation.play(…)没有效果,这样写有问题吗?(没有报错,animation和animation.getClips()[3].name都是正确的):
2:然而将prefab直接拖拽到场景中以同样的方式切换动画就没问题,直接就切换了,代码如下:
let monster = this.node.getChildByName(“monster”);
let animation = monster.getComponent(cc.Animation);
animation.play(animation.getClips()[3].name);

应该是因为 animation 组件的 start 覆盖了动画导致的…… 麻烦 @jjyinkailejj 看看…
你的话建议先去掉 play on load,应该就没事了

去掉play on load就没问题了:blush:

youyou 老师已经修复了,等待 1.6.2 ~

1赞