cocos2d-js创建帧动画的两种方法

前端之家收集整理的这篇文章主要介绍了cocos2d-js创建帧动画的两种方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

不过在这之前,一定要先把图片加载到内存当中去;其实你也可以不加,但是需要换另外一个函数就行;

//将plist问价加载到内存当中 cc.spriteFrameCache.addSpriteFrames(res.play_plist);

第一种方法:

创建一个空的精灵

var @H_403_36@sp = new cc.Sprite();
@H_403_36@sp.setTag(1000);
@H_403_36@sp.setPosition(500,400);
this.addChild(@H_403_36@sp,1);
 
//定义一个数组 后面加中括号
var @H_403_36@allFrame = [];
//for语句载入5个动画图片 for(var @H_403_36@i = 1; @H_403_36@i < 4; @H_403_36@i++){
    //加载针动画,rect四个参数,前两个X,Y的坐标,默认0就OK, //后面两个参数传图片的宽度和高度  var @H_403_36@str = "enemyLeft1_"+@H_403_36@i+".png";
    var @H_403_36@allf = cc.spriteFrameCache.getSpriteFrame(@H_403_36@str);//new cc.SpriteFrame()

    if(!@H_403_36@allf){
        cc.log("@@@@@@@");
    }

    @H_403_36@allFrame.push(@H_403_36@allf);
}

//每隔0.03秒切换一张图片 var @H_403_36@animation = new cc.Animation(@H_403_36@allFrame,0.1);
//把所有的动画连接起来进行播放 var @H_403_36@animate = new cc.Animate(@H_403_36@animation);
//重复的执行摸个动作 var @H_403_36@action = @H_403_36@animate.repeatForever();//new cc.RepeatForever(animate) //用精灵来执行针动画,让针动画跑起来 @H_403_36@sp.runAction(@H_403_36@action);

第二种方法
同样要创建一个空的精灵
1);

for(var @H_403_36@i = 1;@H_403_36@i<=4;@H_403_36@i++){
    var @H_403_36@frameName = "enemyLeft1_"+@H_403_36@i+".png";
    @H_403_36@animation.addSpriteFrame(@H_403_36@frameName);
}

animation.setDelayPerUnit(0.1);
animation.setRestoreOriginalFrame(true);
var @H_403_36@action = cc.animate(animation).repeatForever();
@H_403_36@sp.runAction(@H_403_36@action);
这个就当着是一个笔记,看到的人希望能帮助你,谢谢

猜你在找的Cocos2d-x相关文章