开始研究xlua
Unity版本:2019.2beta
假设有一个类需要hotfix
原先的写法:
using XLua;
public class FixTest
{
[Hotfix]
public void FixFunction()
{
Debug.Log("Fix");
}
}
按照文档,配置好xlua,配置好Scripting Define Symbols: HOTFIX_ENABLE
点击XLua菜单下的Generate Code,再Hotfix Inject In Editor
在编辑状态下运行是可以的
然后就Build项目,勾选上Development Build选项(为了有错能看log)
运行build的项目,报错:no field 什么什么的
找了半天问题
最后发现[Hotfix]标签在这个版本的unity不能这样用
得用另一种方式,就是在Editor下建一个静态类,在里面建静态列表,列表里是可以hotfix的类的Type,给这个列表加上[Hotfix]标签
using XLua;
public static class LuaList
{
[Hotfix]
public static List<Type> typeList=new List<Type>()
{
typeof(FixText) //上面那段代码建的类,并把那个的[Hotfix]去掉
};
}
再Build,发布出来的程序就没问题了
备忘