目录
文件需要评论
文件位置
记住这几个的文件位置很重要
C#
using System;
using System.IO;
using UnityEngine;
using XLua;
public class LuaLine : MonoBehaviour
{
private LuaEnv _luaEnv = new LuaEnv();
private Action OnStartEvent;
private Action OnUpdateEvent;
void Start()
{
_luaEnv.AddLoader(GetLuaFromFile);
_luaEnv.DoString("require 'StartLua'");
OnStartEvent = _luaEnv.Global.Get<Action>("Start");
OnUpdateEvent = _luaEnv.Global.Get<Action>("UpDate");
OnStartEvent?.Invoke();
}
private byte[] GetLuaFromFile(ref string fileName)
{
fileName = fileName.Replace('.', '/');
var path = Application.dataPath + "/XluaScript/" + fileName + ".lua";
if (!File.Exists(path))
{
return null;
}
var datas = File.ReadAllBytes(path);
return datas;
}
void Update()
{
OnUpdateEvent?.Invoke();
}
private void OnDestroy()
{
OnUpdateEvent = null;
}
}
Xlua
require("Lipus/BaseClass")
require("Lipus/head")
function Start()
print("我是xlua的start")
end
function UpDate()
print("我是xlua的UpDate")
end