參考資料 › 函式參考 › Functions

Functions.presentation.playerize

公用

呼叫方式

Functions.presentation.playerize(unit, player, nonplayer)

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

作用

僅當單位代碼為字面上的 player 時才選擇所提供的玩家值;其他所有單位都會選擇非玩家值。選中的 false 與 nil 值會被保留。

參數

名稱類型作用
unitstring | nil要與字面 player 代碼進行比較的單位代碼。
playerany單位為 player 時傳回的值。
nonplayerany對其他所有單位傳回的值。

傳回值

1any所選的值,包括 false 或 nil。

版本

內建輔助函式在每個版本上都會註冊。不同的是它們讀取的遊戲 API;某個 API 不存在時,輔助函式會改用備用方式,或傳回 nil 並附上原因。

它不會直接讀取任何遊戲 API。

插件如何呼叫它

  • 可攻擊 (print)
    return string.format(Functions.presentation.playerize(value.unit, L["%s {{!are|are not}} attackable"], L["%s {{!is|is not}} attackable"]), Functions.presentation.nullable(addon.units[value.unit], L["<unit>"]))
  • 存在增益效果 (print)
    return AuraLiteral.phrase(Functions.presentation.playerize(value.unit, L["{unit} {{!have|do not have}} {aura}"], L["{unit} {{!has|does not have}} {aura}"]), {
  • 增益效果剩餘時間 (print)
    return AuraSummary.phrase(Functions.presentation.playerize(value.unit, L["{unit} {{!have|do not have}} {aura} where {remaining} {comparison} {duration}"], L["{unit} {{!has|does not have}} {aura} where {remaining} {comparison} {duration}"]), {
  • 施法中 (print)
    return string.format(Functions.presentation.playerize(value.unit, L["%s {{!are|are not}} currently casting"], L["%s {{!is|is not}} currently casting"]),
  • 施放特定法術 (print)
    return LiteralSummary.phrase(Functions.presentation.playerize(value.unit, L["{unit} {{!are|are not}} currently casting {spell}"], L["{unit} {{!is|is not}} currently casting {spell}"]), {
  • 引導中 (print)
    return string.format(Functions.presentation.playerize(value.unit, L["%s {{!are|are not}} currently channeling"], L["%s {{!is|is not}} currently channeling"]),
  • 引導特定法術 (print)
    return LiteralSummary.phrase(Functions.presentation.playerize(value.unit, L["{unit} {{!are|are not}} currently channeling {spell}"], L["{unit} {{!is|is not}} currently channeling {spell}"]), {
  • 戰鬥中 (print)
    return string.format(Functions.presentation.playerize(value.unit, L["%s {{!are|are not}} in combat"], L["%s {{!is|is not}} in combat"]),

以及另外 13 處: 戰鬥動作歷史 (print), 戰鬥動作歷史時間 (print), 存在減益效果 (print), 減益效果剩餘時間 (print), 存在某類減益效果 (print), 距離 (print), 敵對 (print), 免疫 (print), 是同一單位 (print), 等級 (print), 團隊標記 (print), PvP 標記 (print), 擁有可竊取的增益效果 (print)

原始碼

Functions/presentation.lua,第 56 行。在遊戲中為唯讀;「複製」會產生一份可編輯的複本。

Functions.presentation.playerize(unit, player, nonplayer)
    if (unit == "player") then
        return player
    else
        return nonplayer
    end

返回函式參考