一:C#访问Lua的基本类型
Lua中的类型:nil,number,bool,string,table,function
其中基本类型有number,bool,string,nil
Lua的number对应C#的int,float,double等等
Lua的string对应C#的string
Lua的bool对应C#的bool
首先在Lua脚本中定义几个基本类型的变量:
在CS中:
注意要先用require加载Lua文件后才可以使用Get方法得到Lua文件中的值。
using UnityEngine;
using XLua;
public class CallLua: MonoBehaviour
{
private void Start()
{
LuaEnv luaenv = new LuaEnv();
luaenv.DoString("require 'CsCallLua'");
print(luaenv.Global.Get<int>("a")); //100
print(luaenv.Global.Get<string>("str")); //liu
print(luaenv.Global.Get<bool>("isDie")); //true
luaenv.Dispose();
}
}
注意C#访问Lua文件中的number类型时,与C#的类型要对应上,因为Lua中的数字类型统一为number,而C#有int,double,float等等,如果类型不匹配则会得到0
首先在Lua脚本中定义几个number类型的变量:
在CS中如果都使用int类型获取: