Unity熱更新06-XLua熱補丁-01 - 熱補丁重要步驟
阿新 • • 發佈:2020-10-29
Lua程式碼
print("*********第一個熱補丁***********") --直接寫好程式碼 執行 是會報錯的 --我們必須做4個非常重要的操作 --1.加特性 --2.加巨集 第一次開發熱補丁需要加 --3.生成程式碼 --4.hotfix 注入 --注入時可能報錯 提示你要引入Tools --熱補丁的缺點:只要我們修改了熱補丁類的程式碼,我們就需要重新執行第4步!!! --需要重新點選 注入 --lua當中 熱補丁程式碼固定寫法 --xlua.hotfix(類, "函式名", lua函式) --成員函式 第一個引數 self xlua.hotfix(CS.HotfixMain, "Add", function(self, a, b) return a + b end) --靜態函式 不用傳第一個引數 xlua.hotfix(CS.HotfixMain, "Speak", function(a) print(a) end)
C#程式碼
[Hotfix] public class HotfixMain : MonoBehaviour { private void Start() { DSLuaMgr.Instance.DoLuaFile("Main"); Debug.Log(Add(15, 25)); Speak("你好中國"); } public int Add(int a, int b) { return 0; } public static void Speak(string str) { Debug.Log("UnitySir"); } }
1.加特性
在需要熱補丁的C#程式碼上新增 [Hotfix] 特性即可
2. 加巨集(第一次需要新增)
第一次打熱補丁的操作:
File -> Build Setting -> Player Setting -> 在Player中找到 Scripting Define Symbols 新增 巨集:HOTFIX_ENABLE
等待編譯結束,即可看到如下:
3. 在XLua中生成程式碼
4. lua程式碼中hotfix注入
通過以下操作將熱補丁注入到編輯器
但出現如下錯誤:提示安裝 Tools
原因是我們只匯入了 XLua和Plugins 資料夾,我們只需要將 官方的XLua目錄下的Tools匯入即可(Tools目錄和Assets目錄在同一個層級)