本帖最后由 xjz497901194 于 2023-3-27 18:37 编辑
工坊搜索 LuaEnv(可能还在审核中) ,也可以自己从 github 下载编译 https://github.com/xiejiangzhi/LuaEnvForGGBH
本框架加入了 NLua,支持以 lua 访问 C# 环境,也就是说,基本上 c# mod 能做的事,这里都能做了,更多使用我也不清楚了,因为自己 C# 不了解,都是抄的代码。
对于 mod 新手来说,lua 代码更简单。
对于高手来说, lua 相对来说更方便,你更新代码后,不需要重启游戏,只要重新导出就可以运行了。
为了简单使用,我加入了几个接口可以书摘定义自己的剧情 function 与 condition
订阅 LuaEnv 框架后,你就可以在你自己的 mod 里面写 lua 了。
使用说明
增加 main.lua首先在你自己的 mod 项目的 ModAssets 中创建一个 Scripts 目录,然后加入一个 main.lua 到 Scripts 文件中。 LuaEnv 会自动查找所有已加载的 mod,并检查是否有 main.lua, 如果有就会自动加载。 每个 main.lua 执行 require 时都会优先从自己的 Scripts 目录下查找。 然后我们就可以在 main.lua 文件中创建自己的 function 与 condition 了。 由于是导出的 NLua,如果你对这个以及 C# 熟悉的话,你可以直接做 C# 可以做的事了。 ### AddFunc
增加剧情函数
<
通过 json 中的 function 调用 `addFeature_lua_MyMod.MyFunc_arg1_arg2`
### AddCond
增加条件函数
< 通过 json 中的 condition 调用 `lua_MyMod.MyFunc_arg1_arg2`
另外工坊还上传了一个示例项目 LuaEnv Example ,示例走到步后,就会触发一个奇遇对话,然后里面的增加 HP,比较 HP与MP 的条件与功能都是通过 lua 实现的。 可以参考下(也不知道审核过了没)
会 C# 的高手可以来点 PR ,因为我基本不会 C#,所有代码写的可能有点烂了。
|