Unity Xlua教程 之 C#调用获取Lua脚本的变量

2025-10-22 19:46:03

1、打开Unity,新建一个空工程,具体如下图

Unity Xlua教程 之 C#调用获取Lua脚本的变量

2、在百度上搜索下载XLua,导入Unity工程中,具体如下图

Unity Xlua教程 之 C#调用获取Lua脚本的变量

3、新建一个Lua脚本,内容大概为打印一个消息,设置几个变量,然后保存为“CSCallLua.lua.txt”,接着拖入工程中的“Resoureces”文件夹(没有的话,新建一个即可),具体如下图

Unity Xlua教程 之 C#调用获取Lua脚本的变量

4、“CSCallLua.lua.txt”脚本具体内容如下:

print("Lua Code")

a = 1

str = "Lua Test"

isLua = true

5、在工程中,新建一个脚本,可以命名为“MyCSCallLua”,双击脚本或者右键“Open C# Project”打开脚本,具体如下图

Unity Xlua教程 之 C#调用获取Lua脚本的变量

6、在打开的脚本“MyCSCallLua”编写代码,首先引入XLua命名空间,然后设置Lua环境变量,接着获取“CSCallLua.lua.txt”Lua脚本内容,随后获取内容里面的变量,最后用完释放Lua环境,具体代码和代码说明如下图

Unity Xlua教程 之 C#调用获取Lua脚本的变量

7、“MyCSCallLua”脚本的具体内容如下:

using UnityEngine;

using XLua;

public class MyCSCallLua : MonoBehaviour {

    private LuaEnv luaEnv;

    // Use this for initialization

    void Start () {

        luaEnv = new LuaEnv ();

        luaEnv.DoString ("require'CSCallLua'");

        int a = luaEnv.Global.Get<int> ("a");

        print ("int a = "+ a);

        string str = luaEnv.Global.Get<string> ("str");

        print ("string str = "+ str);

        bool isLua = luaEnv.Global.Get<bool> ("isLua");

        print ("bool isLua = "+ isLua);

    }

        private void OnDestroy() {

        luaEnv.Dispose ();

    }

}

8、脚本编译正确,回到Unity界面,在场景中新建一个“GameObject”,把“MyCSCallLua”挂载上去,具体如下图

Unity Xlua教程 之 C#调用获取Lua脚本的变量

9、运行场景,即可在控制台上看到,获取Lua脚本变量成功的打印,具体如下图

Unity Xlua教程 之 C#调用获取Lua脚本的变量

10、到此,《Unity Xlua教程 之 C#调用获取Lua脚本的变量》讲解结束,谢谢

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢