SpringRTS/Widgets 中的 Lua
外觀
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 將在每次開始遊戲時預設載入。