LunaLua

来自SMBX 中文百科
跳转到导航 跳转到搜索

LunaLuaSMBX2 的核心脚本系统。(一开始仅仅作为SMBX1.3 的一个插件出现)

目前 TheXTech 虽然使用与 X2 一样的文件扩展名(.lvlx),但 TheXTech 不支持任何Lua脚本系统。

对 Lua 语言不熟悉的新手,建议前往搜索网站搜索相关教程,或前往:https://www.runoob.com/lua/lua-tutorial.html学习。

更多有关 LunaLua 的使用方法,请参见:SMBX2 英文文档

作用

TeaScript API 一样,通过编写脚本可以使得关卡玩法发生质的变化。

月尘编辑器(X2)里的菜单栏里打开“脚本”-"打开脚本"或全局脚本等,即可打开自己电脑的文本编辑器(VSCode等等)为该关卡编写脚本。

使用方法

LunaLua 包含若干函数,以及上百种可调节的变量,通过一定的逻辑编译顺序,可以让你的NPC,Block,甚至是整个场景,角色的玩法,发生很大的改变!

一个例子。

local a = Misc.dialog("Hello World!")
-- 开始关卡时弹出一个对话框。

任何有关 LunaLua 的条目,都会收录到 LunaDLL 分类条目当中。

或者查看下方导航栏点击对应的条目进行查看。

部分函数列表

函数 返回值 解释
mem(内存地址,字段类型,值) nil 设置一个内存地址的值。
mem(内存地址,字段类型) 对象 读取一个内存地址的值。
SaveData.field 对象 地图中保存的用户变量数据。