首先老样子:
创建Lua解析器,执行Dotring("require('lua脚本')")
之前获取全局变量使,我们都创建了相应变量的对象去存储。 那么lua中相应函数类型的变量我们怎么存储呢?
C#的委托!刚好满足了需求。
lua中的函数
//无参无返回的获取
我们首先先定义一个无参无返回的委托:
public delegate void CustomCall();
然后和引用Lua全局变量一样,使用函数就是调用创建的委托对象。
//无参无返回的获取
//委托
CustomCall call = LuaManager.GetInstance().Global.Get<CustomCall>("testFun");
call();
以上是我们自己创建的无参无返回委托。还有三种:
//unity自带委托
UnityAction ua = LuaManager.GetInstance().Global.Get<UnityAction>("testFun");
ua();
//c#自带委托
Action ac = LuaManager.GetInstance().Globa