本文介绍cocos-lua(非Quick-cocos)的定时器用法
定时器按是否会随节点销毁,可分为节点调度器和全局调度器
一.节点调度器
frameworks\cocos2d-x\cocos\scripting\lua-bindings\script\cocos2d\deprecated.lua中实现了了schedule和 performWithDelay
1.1.schedule(node, callback, delay) (本质为RepeatForever动作)
1.2.function performWithDelay(node, callback, delay) (本质为Sequence动作)
1.3 node:scheduleUpdateWithPriorityLua(update, priority)
update:刷新函数
priority:刷新优先级
此方法默认为每帧都刷新一次,无法自定义刷新时间间隔
节点调度器随node的销毁停止即可,若node销毁之前需要停止调度,可以用stopAllActions()
二.全局调度器()
2.1 local schedul_hander = cc.Director:getInstance():getScheduler():scheduleScriptFunc(update, inteval, false)
参数三:是否只执行一次。false为无限次。
取消绑定:cc.Director:getInstance():getScheduler():unscheduleScriptEntry(schedul_hander)
不用的时候需要调用取消绑定