关于作用域,参见定义。
在全局作用域下,按一定顺序加入这些脚本。
打开 src/ 文件夹可以看到 MiniExtend 源代码。
以下是一个合法的顺序(注意脚本名忽略了 .lua 后缀),你可以按照该顺序来创建脚本:
直接将源代码复制到脚本中即可,也可以使用打开 src/ 文件夹选择源代码文件加载。
完成后界面应如图所示,这里使用 MiniExtend 脚本组管理 MiniExtend 脚本, main 脚本组管理自己的脚本。
图中的脚本和脚本组都是有命名的,这些命名不会影响 MiniExtend 正常运行,但良好的命名习惯有利于你在错误发生时及时发现错误的脚本。
如果你暂时不打算使用 UI ,这一步可以先跳过,以后再回来搭建自定义 UI 环境。
对于所有 UI 作用域,创建 ui_main 脚本,对应源文件为 ui_main.lua ,然后将 uiid
替换为所属 UI 界面 id 。
UI 界面创建时,对应作用域下可能会自动创建一个触发器,创建条件不明,你应该将其删除。
做完以上操作,你已经成功搭建了 MiniExtend 环境,现在可以新建脚本使用 MiniExtend 功能了。
使用 MiniExtend 的脚本必须位于全局作用域下(因为你的环境搭建在全局作用域下),且位置必须在 MiniExtend 脚本之后,否则无法正常使用 MiniExtend 。
在每一个自定义代码开头必须使用 Env.__init__()
初始化脚本环境。
注: 再次提醒,命名对 MiniExtend 本身无关紧要,可根据脚本功能自行命名。
你可以在自己代码中插入 ide.lua 中的内容,里面包含了 MiniExtend 关键字,这允许你的编辑器自动补全代码。
该步骤完全是可选的。
注: 你可以将开头对 ide.lua 的描述移除,但不能移除其它 MiniExtend 脚本的作者信息。
接下来我们使用 MiniExtend 监听玩家动作改变这一事件,事件发生时在日志以玩家 id 为标签输出 "Hello, world!"
。
代码:
Env.__init__()
registerEvent([[Player.PlayAction]], function(param)
Log.logtag(tostring(param["eventobjid"]), "Hello, world!");
end)