Lua__读取指定路径下的.Lua文件

using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
using XLua;
 
public class Hotfix : MonoBehaviour {
 
    private LuaEnv luaEnv;
 
    void Awake()
    {
        luaEnv = new LuaEnv();
        luaEnv.AddLoader(xLuaLoader); //使用这个可以自定义.lua文件的路径
        //require 这个本质就是Lua会按照已定义好的路径去查找相应的文件,具体的路径可以把搜索的.Lua设为空,Xlua报错时就会弹出它之前所找的文件夹的路径了
        luaEnv.DoString("require'Test'"); //当没有AddLoader()方法时,Lua只会执行Resources文件夹以及固定文件夹下的.lua文件
    }
    private byte[] xLuaLoader(ref string filePath) //**如果不加这个监听
    {
        Debug.Log(filePath.ToString()); //输出: Test
        string path = @"D:\WorkSpaceUnity\Xlua__PuYuDaRen\FishingJoy\XLuaScript\"+filePath+@".lua";
        return System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path));
    }
 
    private void OnDisable() {
 
        luaEnv.DoString("require'Close'");
    }
}

 

你可能感兴趣的:(unity)