调用方式
addon:CreateConditionPositionPad()
可直接通过 addon 使用,无需依赖项。
作用
使用共享的方向控件创建一个原生位置面板。OnOffsetChanged 报告水平和垂直方向、是否按下了“居中”,以及增量(一,或按住 Shift 时为十)。SetDisabled 控制交互;将该面板使用 parent:AddChild(widget) 添加到回调的父级。
参数
| 名称 | 类型 | 作用 |
|---|---|---|
self | RMAddon | Rotation Master 插件实例(使用冒号调用时隐含传入)。 |
返回值
| 1 | RMConditionPositionPad | 带有居中重置和受租用保护回调的原生方向面板。 |
|---|
版本
内置辅助函数在每个版本上都会注册。不同的是它们读取的游戏 API;某个 API 缺失时,辅助函数会改用后备方案,或返回 nil 并附上原因。
它不直接读取任何游戏 API。
示例
local pad = addon:CreateConditionPositionPad()
pad:SetCallback("OnOffsetChanged", function(_, _, dx, dy, center, amount)
if center then value.x, value.y = 0, 0 else value.x, value.y = (value.x or 0) + dx * amount, (value.y or 0) + dy * amount end
end)
parent:AddChild(pad)依赖项
constructor→UI.condition_position.constructor
源码
UI/condition_position.lua,第 52 行。在游戏中为只读;“复制”会生成一份可编辑的副本。
UI.condition_position.CreateConditionPositionPad(self)
return self:AcquireConditionWidget('RM-ConditionPositionPad',constructor)