zoukankan      html  css  js  c++  java
  • Xlua文件在热更新中调用方法

    Xlua文件在热更新中调用方法

     public class news : MonoBehaviour

    {

         LuaEnv luaEnv;//定义Lua初始变量

        void Awake()

        {

            luaEnv = new LuaEnv();//new开辟空间

            luaEnv.AddLoader(myload);//调用方法地址、返回字节

            luaEnv.DoString("require'fish'");//更新文件

        }

    void  OnDisable ()

          {

              //调用xlua.hotfix执行完数据归空

               luaEnv.DoString (xlua.hotfix(CS.Treasour,'CreatePrize',nil);

          }

         void OnDestroy()

         {

             luaEnv.Dispose();

         }

             //方法myload加载、返回类型字节、参数路径

        private byte[] myload(ref string filepath)

    {

             //文件地址,加载地址的切换

            string abspath = @"F:5.6.1FishingJoyAssetBundles" + filepath + ".lua.txt";

              //换回数据流

            return System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(abspath));

        }

    }

    注:在C#通过LuaTable.Get获取并保存到对象成员,赋值该成员为null,通过xlua.hotfix(class, method, func)注入到C#,则通过xlua.hotfix(class, method, nil)删除,操作在Dispose之前完成

    支持个人观看使用,如商用或转载,请告知! -----萧朗(QQ:453929789 Email:xiaolang_xl@sina.com)
  • 相关阅读:
    递归
    简单装饰器
    带函数参数的装饰器(复杂装饰器)的例子
    (转)MySQL 线程池内幕
    (转)http://blog.csdn.net/renfufei/article/details/38474435
    (转)RabbitMQ 中文文档
    (转) rabbitmq应用场景
    (转) Rabbitmq学习笔记
    (转)更换镜像rootvg卷组中的硬盘
    (转)AIX下镜像制作与取消,更换硬盘问题
  • 原文地址:https://www.cnblogs.com/XiaoLang0/p/9651465.html
Copyright © 2011-2022 走看看