小小菜之Cocos2dx游戏开发旅程——Lua动画队列播放
来源:互联网 发布:萧然网络问政 编辑:程序博客网 时间:2024/05/16 06:54
首先需要声明一个全局的table——gFlashTable = {}
还需要声明一个全局的标记——gFlashIsPlay = false 用于判断当前是否有动画正在播放。
在需要播放动画的地方,将创建的动画加入到teble中,如:
local animation = ccs.Armature:create("xxx")table.insert(gFlashTable , animation)
我们再来看如何进行队列播放
首先需要判断gFlashTable长度是否为0 , 其次再判断当前是否有动画正在播。有了这个思路,就很好实现了。
function xx:playFlashWithSequence()if #gFlashTable ~= 0 then if gFlashIsPlay then return else local function animationEvent(armatureBack,movementType,movementID) if movementType == ccs. MovementEventType.complete then table.remove(gFlashTable , 1) gFlashIsPlay = false self:playFlashWithSequence() end end gFlashTable[1]:getAnimation():playWithIndex(0) gFlashTable[1]:getAnimation():setMovementEventCallFunc(animationEvent) gFlashIsPlay = true end endend
我们永远就只播table中的第一个动画,播放完就移除掉,并将标记设为false。
通过animationEvent这个回调函数来执行播放完后的操作,递归调用这个函数。
我们在向table中增加内容时就可调用这个函数,为了避免重复调用,我们可以做一个判断
if gFlashIsPlay then xx:playFlashWithSequence()end
这样第一个动画创建完成的时候就会立即播放,然而在该动画没播放完之后增加的会在它播放完之后进行播放。这样就不会造成屏幕上同时出现多个动画叠加的情况了。
有便于在debug模式下进行效果的调试。
1 0
- 小小菜之Cocos2dx游戏开发旅程——Lua动画队列播放
- 小小菜之Cocos2d-x游戏开发旅程——Lua之场景的创建
- 小小菜之Cocos2d-x游戏开发旅程——Lua之场景跳转
- 小小菜之Cocos2d-x游戏开发旅程——Lua之摇杆实现
- 小小菜之Cocos2d-x游戏开发旅程——Lua之抛物线运动
- 小小菜之Cocos2d-x游戏开发旅程——Lua打包apk
- 小小菜之Cocos2d-x游戏开发旅程——Lua语法总结
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:贪吃蛇(1)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:贪吃蛇(2)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:贪吃蛇(3)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:贪吃蛇(4)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:贪吃蛇(5)
- 小小菜之Cocos2d-x游戏开发旅程——常用Action(1)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:飞机大战(1)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:飞机大战(2)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:2048(1)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:2048(2)
- 小小菜之Cocos2d-x游戏开发旅程——项目实例:2048(3)
- mongodb的备份、恢复、迁移、回滚
- http://blog.csdn.net/fhx007/article/details/7902040
- linux下java、Eclipse的安装和配置
- 根据SOCKET套接字获得此套接字绑定的端口号
- 对指针间接赋值的理解(1)
- 小小菜之Cocos2dx游戏开发旅程——Lua动画队列播放
- 导弹系统
- 第10、11周项目1:点-圆-圆柱类族的设计(1)
- Samba服务器搭建
- SVN绝配,版本库先考你服务器端版本与客户端的版本如何匹配!巧合吗
- instance method '' not found (return type defaults to 'id')
- Jsonkit报错修改
- Tomcat下搭建同IP不同端口的多站点
- oracle 数据库搭建库详解