调用方式
Functions.values.compare(operator, left, right)
将其记录为名为 Functions.values.compare 的依赖项(接受自动补全即可完成),然后按该名称调用。
也接受以前的命名空间 utils 下的名称。
作用
使用 RM 运算符标识符比较两个值:LESSTHAN、LESSTHANOREQUALS、GREATERTHAN、GREATERTHANOREQUALS、EQUALS、NOTEQUALS 或 DIVISIBLE。无效的运算符会发出警告并返回 nil;操作数必须支持所选的 Lua 运算。
参数
| 名称 | 类型 | 作用 |
|---|---|---|
operator | string | RM 运算符标识符。 |
left | any | 左操作数;排序和整除请使用数字。 |
right | any | 右操作数;DIVISIBLE 要求除数不为零。 |
返回值
| 1 | boolean | nil | 比较结果;运算符未知时为 nil。 |
|---|
版本
内置辅助函数在每个版本上都会注册。不同的是它们读取的游戏 API;某个 API 缺失时,辅助函数会改用后备方案,或返回 nil 并附上原因。
它不直接读取任何游戏 API。
插件如何调用它
- 任意法术充能 (evaluate)
return Functions.values.compare(value.operator, charges.currentCharges, value.value) - 任意法术冷却 (evaluate)
return Functions.values.compare(value.operator, remain, value.value) - 任意法术充能时间 (evaluate)
return Functions.values.compare(value.operator, remain, value.value) - 首领模块首领战阶段 (evaluate)
return Functions.values.compare(value.operator, stage, value.value) - 首领模块计时条 (evaluate)
return Functions.values.compare(value.operator, remaining, value.value) - 施法进度 (evaluate)
return Functions.values.compare(value.operator,done,value.value) - 施法剩余时间 (evaluate)
return Functions.values.compare(value.operator,record.remainingSeconds,value.value) - 引导进度 (evaluate)
return Functions.values.compare(value.operator,done,value.value)
以及另外 56 处: 引导剩余时间 (evaluate), 队伍中的职业 (evaluate), 战斗动作历史 (evaluate), 距离内计数 (evaluate), 日月蚀 (evaluate), 扩展角色属性 (evaluate), 扩展角色属性百分比 (evaluate), 队伍计数 (evaluate), 生命值 (evaluate), 生命值百分比 (evaluate), 史诗钥石等级 (evaluate), 等级 (evaluate), 失控封锁 (evaluate), 失控类型 (evaluate), 法力值 (evaluate), 法力值百分比 (evaluate), 团队标记数量 (evaluate), 宠物法术充能 (evaluate), 宠物法术冷却 (evaluate), 宠物法术施放历史 (evaluate), 宠物法术充能时间 (evaluate), 点数 (evaluate), 能量 (evaluate), 能量百分比 (evaluate), 范围内的盟友 (evaluate), 范围内的生命值 (evaluate), 范围内的生命值百分比 (evaluate), 范围内的生命值百分比计数 (evaluate), 范围内的生命值计数 (evaluate), 范围内的法力值 (evaluate), 范围内的法力值百分比 (evaluate), 范围内的法力值百分比计数 (evaluate), 范围内的法力值计数 (evaluate), 有抗性 (evaluate), 符文 (evaluate), 符文冷却 (evaluate), 等级 (evaluate), 已装备的套装件数 (evaluate), 法术充能 (evaluate), 法术冷却 (evaluate), 法术施放历史 (evaluate), 法术充能时间 (evaluate), Stagger (evaluate), 角色属性 (evaluate), 武器攻击间隔 (evaluate), 武器攻击间隔剩余时间 (evaluate), 天赋 (evaluate), 天赋树点数 (evaluate), 仇恨计数 (evaluate), 战斗开始后的时间 (evaluate), 图腾剩余时间 (evaluate), 距离生命值达到所需时间 (evaluate), 距离生命值百分比达到所需时间 (evaluate), 武器附魔剩余时间 (evaluate), 武器附魔层数 (evaluate), Conditions.spatial.nameplateDistanceCount
源码
Functions/values.lua,第 22 行。在游戏中为只读;“复制”会生成一份可编辑的副本。
Functions.values.compare(operator, left, right)
if operator == "LESSTHAN" then
return left < right
elseif operator == "LESSTHANOREQUALS" then
return left <= right
elseif operator == "GREATERTHAN" then
return left > right
elseif operator == "GREATERTHANOREQUALS" then
return left >= right
elseif operator == "EQUALS" then
return left == right
elseif operator == "NOTEQUALS" then
return left ~= right
elseif operator == "DIVISIBLE" then
return (left % right) == 0
else
addon:warn("Invalid Operator %s", operator)
end