參考資料 › 函式參考 › Functions

Functions.presentation.nullable

公用

呼叫方式

Functions.presentation.nullable(value, default)

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

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

作用

原樣傳回存在的值;為 nil 時傳回紅色的顯示預留位置。用於可讀的條件標籤,而不是作為布林值的備用。

參數

名稱類型作用
valueany要顯示的值;false 會被保留。
defaultstring | nil缺少值的顯示文字;省略時使用在地化的值預留位置。

傳回值

1any原始的非 nil 值,或一個帶顏色的預留位置字串。

版本

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

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

插件如何呼叫它

  • 動作情境 (print)
    Functions.presentation.nullable(addon.actionContexts[value.context], L["<action bar>"]))
  • 任意法術可用 (print)
    return string.format(L["%s {{!is|is not}} available"], Functions.presentation.nullable(link, L["<spell>"]))
  • 任意法術充能 (print)
    Functions.presentation.compareString(value.operator, string.format(L["number of charges on %s"], Functions.presentation.nullable(link, L["<spell>"])), Functions.presentation.nullable(value.value)))
  • 任意法術冷卻 (print)
    Functions.presentation.compareString(value.operator, string.format(L["cooldown on %s"],  Functions.presentation.nullable(link, L["<spell>"])),
  • 任意法術在射程內 (print)
    return string.format(L["%s {{!is|is not}} in range"], Functions.presentation.nullable(link, L["<spell>"]))
  • 任意法術充能時間 (print)
    Functions.presentation.compareString(value.operator, string.format(L["recharge time on %s"], Functions.presentation.nullable(link, L["<spell>"])),
  • 戰鬥助手循環法術 (print)
    return string.format(L["%s {{!is|is not}} in Blizzard's Assisted Combat rotation"], Functions.presentation.nullable(link, L["<spell>"]))
  • 戰鬥助手建議 (print)
    return string.format(L["Assisted Combat {{!suggests|does not suggest}} %s"], Functions.presentation.nullable(link, L["<spell>"]))

以及另外 120 處: 可攻擊 (print), 首領模組首領戰階段 (print), 首領模組計時條 (print), 存在增益效果 (print), 增益效果剩餘時間 (print), 增益效果層數 (print), 背包中有物品 (print), 施法中 (print), 施法進度 (print), 施法剩餘時間 (print), 施放特定法術 (print), 施法可中斷 (print), 引導中 (print), 引導進度 (print), 引導剩餘時間 (print), 引導特定法術 (print), 引導可中斷 (print), 職業 (print), 單位分類 (print), 隊伍中的職業 (print), 戰鬥中 (print), 戰鬥動作歷史 (print), 戰鬥動作歷史時間 (print), 生物類型 (print), 存在減益效果 (print), 減益效果剩餘時間 (print), 減益效果層數 (print), 存在某類減益效果 (print), 距離 (print), 距離內計數 (print), 日月蝕 (print), 擴充角色屬性 (print), 擴充角色屬性百分比 (print), 敵對 (print), 已裝備物品 (print), 變形形態 (print), 雕紋 (print), 在隊伍中 (print), 隊伍計數 (print), 生命力 (print), 生命力百分比 (print), 英雄天賦樹 (print), 免疫 (print), 副本 (print), 是同一單位 (print), 物品可用 (print), 物品冷卻 (print), 物品在射程內 (print), 傳奇+鑰石等級 (print), 等級 (print), 失去控制封鎖 (print), 失去控制類型 (print), 法力 (print), 法力百分比 (print), 團隊標記 (print), 團隊標記數量 (print), 寵物法術生效中或待生效 (print), 寵物法術可用 (print), 寵物法術充能 (print), 寵物法術冷卻 (print), 寵物法術施放歷史 (print), 寵物法術施放歷史時間 (print), 寵物法術在射程內 (print), 寵物法術充能時間 (print), 寵物快樂值 (print), 擁有指定名稱的寵物 (print), 點數 (print), 能量 (print), 能量百分比 (print), 範圍內的盟友 (print), 範圍內的生命力 (print), 範圍內的生命力百分比 (print), 範圍內的生命力百分比計數 (print), 範圍內的生命力計數 (print), 範圍內的法力 (print), 範圍內的法力百分比 (print), 範圍內的法力百分比計數 (print), 範圍內的法力計數 (print), PvP 標記 (print), 有抗性 (print), 職責 (print), 符文 (print), 符文冷卻 (print), 已紋刻的符文 (print), 逃跑者 (print), 等級 (print), 已裝備的套裝件數 (print), 專精 (print), 法術生效中或待生效 (print), 法術自動重複中 (print), 法術可用 (print), 法術充能 (print), 法術冷卻 (print), 法術觸發高亮 (print), 法術施放歷史 (print), 法術施放歷史時間 (print), 法術在射程內 (print), 法術充能時間 (print), Stagger (print), 角色屬性 (print), 擁有可竊取的增益效果 (print), 武器攻擊間隔 (print), 武器攻擊間隔剩餘時間 (print), 天賦 (print), 天賦樹點數 (print), 威脅值 (print), 威脅值計數 (print), 戰鬥開始後的時間 (print), 存在圖騰 (print), 圖騰剩餘時間 (print), 存在特定圖騰 (print), 特定圖騰剩餘時間 (print), 距離生命力達到所需時間 (print), 距離生命力百分比達到所需時間 (print), 武器附魔類型 (print), 武器附魔剩餘時間 (print), 武器附魔層數 (print), 武器類型 (print), 區域 (print), 區域 PvP (print)

相依項目

原始碼

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

Functions.presentation.nullable(value, default)
    if value == nil then
        if default ~= nil then
            return color.RED .. default .. color.RESET
        else
            return color.RED .. L["<value>"] .. color.RESET
        end
    end
    return value

返回函式參考