tolua调用C#中的静态类
一、创建unity中引用lua虚拟机接口的库
using UnityEngine; using System.Collections; using LuaInterface; using WCALibs; public class LUA_Test : MonoBehaviour { //声明lua对象,以及lua函数对象 private LuaState lua = null; private LuaFunction luaFunc = null; void Start() { lua = new LuaState(); lua.Start(); string fullPath = Application.dataPath + "\\Lua"; lua.AddSearchPath(fullPath); LuaBinder.Bind(lua); } void Update() { if (Input.GetKeyDown(KeyCode.Alpha1)) { lua.DoFile("Funclua.lua"); luaFunc = lua.GetFunction("testFunc"); if (luaFunc != null) { luaFunc.Call(); } } } void OnApplicationQuit() { lua.Dispose(); lua = null; } }
2//创建静态函数
using System; using UnityEngine; using System.Collections.Generic; public class LuaSDK { public static void Test() { Debug.Log("测试静态方法"); } public static void Test1() { Debug.Log("测试静态方法1"); } public static void Test2() { Debug.Log("测试静态方法2"); } }
3、写lua脚本
--创建lua脚本Funclua.lua function testFunc() print("Hello World") LuaSDK.test() end
切记每次写完新的代码,tolua都需要生成代码,在编辑器模式下
Unity3d师兄