【quick-cocos2d-lua】 调度器

本文介绍了Quick-Cocos2d-Lua中的调度器使用,包括全局调度器和节点调度器。全局调度器适用于周期性处理不受节点影响的事务,如刷新全局变量,通过scheduleScriptFunc设置定时器。节点调度器则与Node相关,当Node移除时,关联的定时器也会被取消,可以使用schedule和performWithDelay进行定时任务设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

①全局调度器:

在游戏里,需要周期性的处理事务,并且这些事务不会因为某个节点的销毁而取消。例如:刷新全局变量。

 

--加入定时器

callbackEntry = cc.Director:getInstance():getScheduler():scheduleScriptFunc(callback, 3, false)  

 其中scheduleScriptFunc的三个参数分别是:

callback: 回调函数,Scheduler会传递给回调函数一个参数dt,表示距离上次回调所经过的时间

delay:每次调用回调函数的时间间隔

pause: 是否停住,一般设为false就行,否则定时器停住不执行

例:

callbackEntry=cc.Director:getInstance():getScheduler():scheduleScriptFunc(handler(self,self.update), 0.1, false)

function MainScene:update(dt)

    if self.state == state.playing then

        self:checkCollision()

        self:removeInactiveUnit(dt)

        self:checkReBorn()

        self:updateUI()

        self:moveBackground(dt)

    end

end

 

--删除定时器

cc.Director:getInstance():getScheduler():unscheduleScriptEntry(callbackEntry)

例:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值