动画就是一种特效,用几张图片添加成一个动画效果,使用于打飞机的时候打中敌机会有爆炸效果,也可以使用在点击事件,点击东西的时候实现这个动画效果。
首先我们要用到UI了,studio 导出使用大图 和 使用全部大图
导出使用大图 生成 png + plist和画布对应的json
代码里加载画布使用了同样的方式。
cc.spriteFrameCache.addSpriteFrames(res.calcPlist);
将大图切开存入缓冲池
逐帧动画
将多张图片存入数组 然后使用
var animation = new cc.Animation(array, 0.025);
创建空Sprite来运行动画
var sp = new cc.Sprite()
sp.setPosition(300,300)
this.addChild(sp)
sp.runAction(cc.animate(animation))
cc.spriteFrameCache.addSpriteFrames(res.animation_plist);
var animFrames = [];
var str = "";
for (var i = 1; i < 5; i++) { //图片的张数
str = "explosion_" + (i < 10 ? ("0" + i) : i) + ".png"; //添加图片的名称
animFrames.push(cc.spriteFrameCache.getSpriteFrame(str));
}
var animation = new cc.Animation(animFrames, 0.025);
cc.animationCache.addAnimation(animation, "Explosion");
var anim = cc.animationCache.getAnimation("Explosion")
ctro在类被new的时候调用 onExit是在被removeChild的时候被调用
所有的layer都要添加onExit 并且进行清除工作
onExit:function(){
this._super() //清除所有元件
// 清除所有的 schedule 和 action listen
//this.removeAllChildren(true) 需要加上
// Array Ob 进行重设
}
519

被折叠的 条评论
为什么被折叠?



