【xLua】C#访问Lua之访问Lua的变量

访问Lua的变量

在Resources文件夹中新建一个CSharpCallLua.lua.txt文件,定义几个变量

i = 10
str = "wwz"
isStu = false
void Start()
{
    LuaEnv luaEnv = new LuaEnv();

    luaEnv.DoString("require 'CSharpCallLua'");
 
    int i = luaEnv.Global.Get<int>("i");
    print(i);
    string str = luaEnv.Global.Get<string>("str");
    print(str);
    bool isStu = luaEnv.Global.Get<bool>("isStu");
    print(isStu);

    luaEnv.Dispose();
}

Lua的number类型对于C#的int,float,double的,如果类型不对,会返回0

比如在Lua中i = 10.1,C# 中int i = luaEnv.Global.Get(“i”);得到的i将是0

所以在C#中也可以用float,double来接收Lua的number类型

double i = luaEnv.Global.Get<double>("i");

这样就能正常输出了
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_38211198/article/details/89529488