參考資料 › 函式參考 › Functions

Functions.values.compare

公用

呼叫方式

Functions.values.compare(operator, left, right)

將它記錄為名為 Functions.values.compare 的相依項目(接受自動完成即可完成此步驟),然後以該名稱呼叫。

也接受舊命名空間 utils 下的名稱。

作用

使用 RM 運算子識別碼比較兩個值:LESSTHAN、LESSTHANOREQUALS、GREATERTHAN、GREATERTHANOREQUALS、EQUALS、NOTEQUALS 或 DIVISIBLE。無效的運算子會發出警告並傳回 nil;運算元必須支援所選的 Lua 運算。

參數

名稱類型作用
operatorstringRM 運算子識別碼。
leftany左運算元;排序與整除請使用數字。
rightany右運算元;DIVISIBLE 要求除數不為零。

傳回值

1boolean | 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

返回函式參考