xLua——自定义加载器

作者:追风剑情 发布于:2017-7-17 16:17 分类:Lua

以下示例代码来自xLua demo

using UnityEngine;
using System.Collections;
using XLua;

public class CustomLoader : MonoBehaviour {
    LuaEnv luaenv = null;
    // Use this for initialization
    void Start()
    {
        luaenv = new LuaEnv();
        //添加自定义加载器
        luaenv.AddLoader((ref string filename) => {
             if (filename == "InMemory")
             {
                 //返回一个xLua对象{ccc = 9999}
                 string script = "return {ccc = 9999}";
                 return System.Text.Encoding.UTF8.GetBytes(script);
             }
             return null;
         });
        //require('InMemory') 加载文件InMemory,调用这句后会执行自定义加载器。
        luaenv.DoString("print('InMemory.ccc=', require('InMemory').ccc)");
    }

    // Update is called once per frame
    void Update()
    {
        if (luaenv != null)
        {
            luaenv.Tick();
        }
    }

    void OnDestroy()
    {
        luaenv.Dispose();
    }
}

运行测试

11111.png

标签: xLua

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号