XLua學習筆記_lua檔案的載入方式
阿新 • • 發佈:2021-02-06
技術標籤:Xlua
一、使用Unity動態載入的方式獲取lua檔案
1.可以使用Unity的動態載入方式進行lua檔案的加(比如:Resources.load、Io載入方式、UnityWebRequest等方法進行載入)
using System.Collections; using System.Collections.Generic; using UnityEngine; using XLua; /// <summary>測試第一種載入Lua指令碼的方式</summary> public class LoadLuaFile : MonoBehaviour { private LuaEnv m_LuaEnv; //示例中是通過Resources的載入方式進行載入lua,切記在相應的路徑下有對應的檔案 private string m_LuaScriptPath = "TestLoadLuaScript.lua"; private void Start() { m_LuaEnv = new LuaEnv(); TextAsset luaText = Resources.Load<TextAsset>(m_LuaScriptPath); m_LuaEnv.DoString(luaText.ToString()); } private void OnDestroy() { m_LuaEnv.Dispose(); } }
2.在“Resources” 目錄下,新建一個名為 “TestLoadLuaScript.lua.txt” 的lua指令碼(程式碼如下)
print("我是Lua指令碼,測試第一種載入Lua指令碼的方式")
3.執行結果如下圖
二、通過require函式來獲取lua檔案
1.Require優點是簡單,缺點是不能自定義載入路徑。只能載入固定路徑下的lua檔案(程式碼如下)
using System.Collections; using System.Collections.Generic; using UnityEngine; using XLua; /// <summary>測試通過Require的方式載入Lua檔案</summary> public class RequireLoadLuaFile : MonoBehaviour { private LuaEnv m_LuaEnv; private void Start() { m_LuaEnv = new LuaEnv(); m_LuaEnv.DoString("require 'TestRequireLoadLuaScript'"); } private void OnDestroy() { m_LuaEnv.Dispose(); } }
2.在“Resources” 目錄下,新建一個名為 “TestRequireLoadLuaScript.lua.txt” 的lua指令碼(程式碼如下)
print("我是Lua指令碼,測試第二種通過Require載入Lua指令碼的方式")
3.執行結果如下圖