• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ulua/tolua中timer.lua和event.lua的使用(Luaframework)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Timer.lua

Timer计时器:


 local tim = nil
 local count = 0

function Game.FunTest()
    count = count + 1
    print(0,0,0,count)
    if count > 4 then
        tim:Stop() --中止当前的计时器
    end
end

--初始化完成,发送链接服务器信息--
function Game.OnInitOK()

    tim = Timer.New(Game.FunTest,1, -1, true) --参数1为调用的方法名,参数2为间隔时间,参数3为循环次数(当为-1时无限循环),参数4为是否忽略时间的Scale,scale false 采用deltaTime计时,true 采用 unscaledDeltaTime计时
    --tim:Start()
    tim:Start()
end

FrameTimer计时器:

 tim = FrameTimer.New(Game.FunTest,100, 5) --和上面使用的一样,但参数不一样,参数1为方法名,参数2和参数3组合起来的意思是在100帧内执行5次方法。
 tim:Start()

CoTimer计时器:

tim = CoTimer.New(Game.FunTest,1, 5) --和上面使用的一样,但参数不一样,参数1为方法名,参数2为两次执行的间隔时间,参数3为执行次数(参数3为-1时无限次数)
tim:Start()

 

event.lua

UpdateBeat = event("Update", true)  --逻辑的Update
LateUpdateBeat = event("LateUpdate", true)  --延迟的update
FixedUpdateBeat = event("FixedUpdate", true) --物理的update
CoUpdateBeat = event("CoUpdate")  --协程的每一帧更新

调用方式:

 local count = 0  

 function Game.FunTest(f1)
    count = count + 1
    print(f1,count)
  end


function Game.OnInitOK()

local parm = 0 local handle = UpdateBeat:CreateListener(Game.FunTest, parm) --好像只支持一个参数 UpdateBeat:AddListener(handle)

  local handle = LateUpdateBeat:CreateListener(Game.FunTest, parm) --好像只支持一个参数 
  LateUpdateBeat:AddListener(handle)  

  local handle = FixedUpdateBeat:CreateListener(Game.FunTest, parm) --好像只支持一个参数 
  FixedUpdateBeat:AddListener(handle)  

  local handle = CoUpdateBeat:CreateListener(Game.FunTest, parm) --好像只支持一个参数 
  CoUpdateBeat:AddListener(handle)  

end
 

 

 event.lua使用FixedUpdateBeat的过程中移除FixedUpdateBeat:

local count = 0
local handle = nil

function Game.FunTest(f1)
    count = count + 1
    print(f1,count)
    if count > 10 then
       FixedUpdateBeat:RemoveListener(handle)
    end
end

--初始化完成,发送链接服务器信息--
function Game.OnInitOK()
    local parm = 0
    handle = FixedUpdateBeat:CreateListener(Game.FunTest, parm) --好像只支持一个参数 
    FixedUpdateBeat:AddListener(handle) 
end

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
lua入门发布时间:2022-07-22
下一篇:
lua与C通过capi传递table发布时间:2022-07-22
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap