Lua热更新(xlua)

发现错误时检查是否:冒号调用

只需要导入asset文件夹下的Plugins和Xlua这两个文件即可,别的不用导入

生成代码 和清空代码

C#调用lua

using Xlua; 需要引入命名空间    解析器里面执行lua'语法

lua解析器 LuaEnv

单引号是为了避免引号冲突

第二个参数是报错时显示什么提示信息,第三个是解析器本身。可填可不填

我们发现,每次dostring其实比较麻烦,每次都传字符串。那么是否可以直接读取Lua脚本呢?

利用require知识读取lua脚本。 但因为格式问题需要注意。且热更新其实不能在resources中加载

lua文件加载重定向
filepath只代表文件名,路径需要我们自己拼接

addloader即可自定义文件路径。因为默认是resources。在自定义路径中找不到时才会去找默认路径

如果你把尾缀改成了txt,那么就应该是filepath+".lua.txt"   不要相信窗口中的名字

lua解析器管理器

外面调用lua脚本就不需要自己新建解析器。直接调用这个公共类来操作

↑记得加一下判断

外部调用前。先调用一下初始化方法。判空是为了避免外部销毁后又再次调用报错

给lua脚本打包。注意也需要再加txt后缀,不能识别纯lua格式

因为是file.lua.txt   文件后缀实际是txt,前面的.lua变成了文件的一部分

注意区分ab包加载中,文件名和资源名的区别。loadfile实际是资源的组名

大g表之后会频繁用到

全局变量获取

在main中执行test↑就这样用C#得到了lua中的全局变量

获取函数

获取函数和获取变量一样,需要指定类型,接收,使用    可以自己写也可以用官方自带的

1.没有返回值就填void

2.

加了[CSharpCallLua]特性之后,要生成代码。会自动检测加了该特性的委托生成对应代码,很麻烦

3.

注意第一个是代表参数,不加out

记住ref需要初始化,out则不需要。而且官方建议用委托,xlua方法会产生一些垃圾

相关推荐

  1. 游戏更新进修——Lua编程

    2024-03-31 16:34:13       52 阅读
  2. Xlua分析:Lua调用C#

    2024-03-31 16:34:13       32 阅读
  3. Xlua分析:C#调用Lua

    2024-03-31 16:34:13       24 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-31 16:34:13       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-31 16:34:13       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-31 16:34:13       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-31 16:34:13       20 阅读

热门阅读

  1. sed语句应用

    2024-03-31 16:34:13       18 阅读
  2. python编程练习

    2024-03-31 16:34:13       13 阅读
  3. 卷积神经网络(Pytorch 08)

    2024-03-31 16:34:13       16 阅读
  4. 为什么索引的底层结构是B+树

    2024-03-31 16:34:13       21 阅读
  5. 【C++】std::set_new_handler使用场景

    2024-03-31 16:34:13       17 阅读
  6. springboot3.2.4+Mybatis-plus在graalvm21环境下打包exe

    2024-03-31 16:34:13       17 阅读
  7. nginx 常用功能

    2024-03-31 16:34:13       15 阅读
  8. 蓝桥杯2014年第十三届省赛真题-武功秘籍

    2024-03-31 16:34:13       22 阅读
  9. Nginx配置文件解释

    2024-03-31 16:34:13       14 阅读
  10. 数据结构 第6章 图(一轮习题总结)

    2024-03-31 16:34:13       11 阅读
  11. 嵌入式开发中观察者模式实现

    2024-03-31 16:34:13       18 阅读