cocos-lua定时器用法

时间:2024-03-08 11:13:30

本文介绍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)

不用的时候需要调用取消绑定