美文网首页
LuaFramework 学习记录(二)

LuaFramework 学习记录(二)

作者: 食不知味_夜不能寐 | 来源:发表于2018-01-09 17:18 被阅读345次

    这一篇主要关注lua部分。

    Game.lua

    上一篇中提到各部分初始化完毕后会执行OnInitOK()。

    Game.lua
    首先设置IP和端口号,然后建立连接。注意区分,这里是真正跟服务器建立连接,随后可以执行登录等操作,而在之前更新lua和资源时,是读取的固定地址AppConst.WebUrl。
    框架的lua部分似乎是VC模式,将View和Ctrl分离,没有体现出Model部分,CtrlManager.Init()只是将默认的几个Ctrl实例化,InitViewPanels()也只是require一下相应的View脚本,这时还没加载相应的Panel。
        local ctrl = CtrlManager.GetCtrl(CtrlNames.Prompt);
        if ctrl ~= nil and AppConst.ExampleMode == 1 then
            ctrl:Awake();
        end
    

    ctrl:Awake()通过跟C#部分交互,才真正加载了相应的Panel,并执行Ctrl.OnCreate(),这里感觉框架做的有点绕,个人认为Ctrl中不应该包含与MonoBehaviour生命周期中类似的函数(Awake, Start, Update等),将Awake()改为Init()更容易理解?
    总的来讲,View中先获取各个子物体,Ctrl完成物体的事件绑定和其他逻辑。

    lua部分跟我平时的代码习惯差很多,实际用的时候最好还是自己实现这一部分。

    相关文章

      网友评论

          本文标题:LuaFramework 学习记录(二)

          本文链接:https://www.haomeiwen.com/subject/jkkgnxtx.html