Appel
Conditions.misc.difficultyName(id)
Enregistrez la dépendance Conditions.misc.difficultyName, puis appelez-la sous ce nom. Un appel par espace de noms ne transmet pas self : utilisez un appel avec deux-points ou passez l'objet vous-même.
Ce qu'elle fait
The display name of an instance difficulty ID: the game's name for it (GetDifficultyInfo) with the kind of group in parentheses when the game gives one. 0 is "Not in an instance".
Arguments
| Nom | Type | Ce qu'elle fait |
|---|---|---|
id | number | Difficulty ID. |
Retours
| 1 | string | nil | The name, or nil when the client does not know the ID or hides its name, so callers fall back to the number. |
|---|
Éditions
Les fonctions utilitaires intégrées sont enregistrées sur toutes les éditions. Ce qui diffère, c'est l'API du jeu qu'elles lisent ; quand l'une manque, la fonction utilitaire se rabat sur une alternative ou renvoie nil avec une raison.
- Indisponible sur cette édition (la raison figure dans l'infobulle)
- Uniquement tant que les solutions de repli de Blizzard pour les fonctions obsolètes sont actives
| API du jeu | |||||
|---|---|---|---|---|---|
GetDifficultyInfo |
Valeurs secrètes (Retail et Forever)
Sur Retail et Forever, le jeu transmet aux addons des valeurs secrètes. Cette fonction utilitaire vérifie ce qu'elle lit (addon.Platform:CanReadValue) et renvoie nil avec une raison telle que restricted-value au lieu d'une valeur secrète qu'elle ne peut pas comparer. Traitez nil comme indisponible, pas comme false.
Comment l'addon l'appelle
- Instance (print)
parts[#parts + 1] = string.format(L["difficulty %s"], difficultyName(value.difficulty) or tostring(value.difficulty))
Dépendances
difficultyKind→Conditions.misc.difficultyKind
Source
Conditions/misc.lua, ligne 296. En lecture seule dans le jeu ; Dupliquer crée une copie modifiable.
Conditions.misc.difficultyName(id)
if id == 0 then return L["Not in an instance"] end
if type(id) ~= "number" then return nil end
local ok, name, group = pcall(GetDifficultyInfo, id)
if ok and addon.Platform:CanReadValue(name) and type(name) == "string" and name ~= "" then
local kind = addon.Platform:CanReadValue(group) and difficultyKind(group)
if kind then return string.format(L["%s (%s)"], name, kind) end
return name
end
return nil




