FreeKill/lua/ui-util.lua
notify 09dd59bebf
Extra interaction (#100)
为主动技/视为技提供了自定义额外交互的能力
可以在交互时候进行额外的UI操作
以及提供了一个UI组件,总之参考谋徐盛
2023-04-05 00:49:54 +08:00

34 lines
805 B
Lua
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 主动技/视为技用。
-- 能创造一个简单的组件供UI使用。
-- 前端的应答/修改最终会被保存到xxx.data中。
local UI = {}
--[[---------------------
ComboBox: 下拉对话框。
+-------------+
| choices V |
+-------------+
| choice1 |
+---------+
| choice2 |
+---------+
--]]---------------------
-- 可以赋值的属性有:
-- * choices: string[] 类型,保存着可选项,会被前端翻译
-- * default: string默认的选项默认为choices的第一个
UI.ComboBox = function(spec)
assert(type(spec.choices) == "table", "Choices is not a table")
assert(#spec.choices > 0, "Choices is empty")
spec.default = spec.default or spec.choices[1]
spec.type = "combo"
return spec
end
return UI