在 Cocos2d-x Lua 中,可以通过两种方式注册定时器。第一种是让调度器每帧调用一次指定函数。

    local i=0
                
                    local function update()
                        i=i+1
                        if i>10 then
                            layer:unscheduleUpdate()
                        end
                        print("update")
                    end
                
                    layer:scheduleUpdateWithPriorityLua(update,0) --0为优先级

第二种方式是通过全局的 Scheduler 注册一个脚本回调,可以自行指定调用间隔。

local function tick()
                
                       end
                
                       cc.Director:getInstance():getScheduler():scheduleScriptFunc(tick, 0, false)