【cocos2d-js系列问题】cocos2d-js创建帧动画的两种方法
2015-12-08 12:56
597 查看
不过在这之前,一定要先把图片加载到内存当中去;其实你也可以不加,但是需要换另外一个函数就行;
第一种方法:
创建一个空的精灵
这个就当着是一个笔记,看到的人希望能帮助你,谢谢
//将plist问价加载到内存当中 cc.spriteFrameCache.addSpriteFrames(res.play_plist);
第一种方法:
创建一个空的精灵
var sp = new cc.Sprite(); sp.setTag(1000); sp.setPosition(500,400); this.addChild(sp,1);
//定义一个数组 后面加中括号 var allFrame = []; //for语句载入5个动画图片 for(var i = 1; i < 4; i++){ //加载针动画,rect四个参数,前两个X,Y的坐标,默认0就OK, //后面两个参数传图片的宽度和高度 var str = "enemyLeft1_"+i+".png"; var allf = cc.spriteFrameCache.getSpriteFrame(str);//new cc.SpriteFrame() if(!allf){ cc.log("@@@@@@@"); } allFrame.push(allf); } //每隔0.03秒切换一张图片 var animation = new cc.Animation(allFrame,0.1); //把所有的动画连接起来进行播放 var animate = new cc.Animate(animation); //重复的执行摸个动作 var action = animate.repeatForever();//new cc.RepeatForever(animate) //用精灵来执行针动画,让针动画跑起来 sp.runAction(action);
第二种方法:
同样要创建一个空的精灵
var sp = new cc.Sprite(); sp.setTag(1000); sp.setPosition(500,400); this.addChild(sp,1);
for(var i = 1;i<=4;i++){ var frameName = "enemyLeft1_"+i+".png"; animation.addSpriteFrame(frameName); }
animation.setDelayPerUnit(0.1); animation.setRestoreOriginalFrame(true); var action = cc.animate(animation).repeatForever(); sp.runAction(action);
这个就当着是一个笔记,看到的人希望能帮助你,谢谢
相关文章推荐
- cocos2dx-3.x事件分发机制
- cocos2dx - 环境配置,项目创建
- Cocos2D-X shader(一) 渲染机制
- Cocos2D-Android-1之源码详解:2.ActionManagerTest
- COCOS2D-3.9 Data分析
- cocos2d(3)CCLayer的三个子类CCLayerColorCCLayerGridentCCLayerMultiplex
- COCOS2D-3.9 Value接口分析
- cocos2d (ZORDER、setTag、单点触屏)
- Cocos2D-Android-1之源码详解:1.Cocos2D
- cocos2d对动画的各种操作
- cocos2d-x游戏开发之动画
- Cocos2d-x游戏开发之计时器
- quick-cocos2d-x游戏开发【6】——制作您自己的自定义效果button菜单
- COCOS-3.X事件分发机制-触摸事件
- COCOS2DX场景切换特效
- cocos2d-x的屏幕适配
- Cocos2D-Android- 基础
- Cocos2D-Android- 动作的处理
- Cocos2D-Android- 地图,粒子系统与声音引擎
- COCOS2D-3.9 Configuration 接口分析