1.官方案例介绍
导入unity的XLua文件夹下有官方案例(需要注意如果是自己项目则需要把这些官方案例删掉,否则打包会出错):
08_Hotfix 就是热更新的案例
其代码很简单,点击hotfix按钮就会将输出语句转换成代码里写的lua语句
2.具体介绍下官方案例的代码
首先如果有需要编写lua,则再类前面
引用using XLua;
标记[Hotfix]
其次是建立LuaEnv 这个lua的虚拟环境
之后便可以使用 .DoString(@" lua的语句 ");
1.其中xlua.hotfix可能会经常用到,这个是用于重写—>类的函数
2.代码xlua.hotfix(CS.HotfixTest, 'Update', function(self) 表示重写HotfixTest的Update方法,
3.function(self)表示你自己要重写方法,一定要传self,self是将这个代码unity自身对象传进去。
4.再在function下面写自己的方法
5.最后别忘记end
3.如何引用unity里面的方法
在官方案例上修改
很简单-比如Debug.Log就是unity里面自己独有的方法
1.CS.UnityEngine就是引用了DeBug方法所属的库,其中由于Log是static静态方法所以直接.Log()就行,
2.如果是该类里面的成员变量则直接在前面加个self就行,self.gameObject其实就是unity里面的this.gameObject
(注意:引用非静态方法,应该使用:function(参数),或者.function(self,参数))
4.如何调用自己写的函数
其实同样道理,xx()为自己写的非静态函数,则:function(参数),或者.function(self,参数)
同时是自身这个类的函数,所以直接使用self