以下示例代码来自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();
}
}
运行测试