跳转至内容

SpringRTS/Widgets 中的 Lua

来自 Wikibooks,开放世界中的开放书籍

Widgets 是由每个用户单独执行的脚本文件。这意味着并非所有用户都必须拥有相同的脚本文件。Widgets 通常位于安装目录下的 LUAUI 文件夹中。您可以添加自己的 Widgets 文件,但必须遵循 Widgets 必须遵守的一些约定。

所有 Widgets 文件在文件开头都有 GetInfo() 的调用。

function widget:GetInfo()
  return {
    name      = "Auto reclaim",
    desc      = "Sets builders to auto reclaim in BA",
    author    = "Pithikos",
    date      = "Jan 1, 1900",
    license   = "GPL",
    layer     = 0,
    enabled   = true
  }


在 name 字段中是 Widgets 的名称。在游戏内,当您按下 F11 查看所有可用的 Widgets 时,此字段中的值将在那里显示。desc 字段是一个简短的描述,说明 Widgets 的作用。实际上,此字段的内容在游戏内显示为工具提示。author 字段是 Widgets 创建者的姓名。date 字段包含 Widgets 创建的日期。License 只是指定 Widgets 所属的许可证类型。如果您希望 Widgets 保持开源,最常见的 value 是 GPL。layer 字段告诉引擎这是什么类型的脚本。以下是可能的 value 列表:

用途
0
1
2
3
4
5

最后,enabled 字段决定 Widgets 是否默认加载。在本例中,Widgets 将在每次开始游戏时默认加载。

华夏公益教科书