Как вызывать
Conditions.engraving.runeLabel(value)
Запишите зависимость Conditions.engraving.runeLabel и вызывайте её по этому имени. Вызов через пространство имён не передаёт self: используйте вызов через двоеточие или передайте объект сами.
Что делает
Names the rune selected in a RUNE_ENGRAVED condition: the known rune's name when the platform finds it, else the rune spell's name, else "rune spell N" or "rune N". Returns nil when neither value.rune nor value.spell is set.
Аргументы
| Имя | Тип | Что делает |
|---|---|---|
value | table | Condition settings with a rune and/or spell field. |
Возвращает
| 1 | string | nil | Display name for the rune, or nil when nothing is selected. |
|---|
Издания
Встроенные помощники регистрируются во всех изданиях. Различается игровой API, который они читают; если нужного API нет, помощник использует запасной вариант или возвращает nil с причиной.
Не читает игровой API напрямую.
Как его вызывает аддон
- Выгравированная руна (print)
Functions.presentation.nullable(runeLabel(value), L["<rune>"]))
Зависимости
platform(builtin:Conditions/engraving.lua:platform)
Исходный код
Conditions/engraving.lua, строка 53. В игре только для чтения; «Дублировать» создаёт редактируемую копию.
Conditions.engraving.runeLabel(value)
local known = platform.FindKnownRune and platform:FindKnownRune(value.rune, value.spell)
if known and known.name then return known.name end
if value.spell ~= nil then
local info = platform.GetSpellInfo and platform:GetSpellInfo(value.spell)
if info and info.name then return info.name end
return string.format(L["rune spell %s"], tostring(value.spell))
end
if value.rune ~= nil then return string.format(L["rune %s"], tostring(value.rune)) end