Appel
Functions.collections.keys(array)
Enregistrez-la comme dépendance nommée Functions.collections.keys (accepter la complétion le fait pour vous), puis appelez-la sous ce nom.
Ce qu'elle fait
Collecte les clés d'une table et les trie selon leurs valeurs associées, par comparaison Lua « inférieur à ». Ce sont les valeurs qui sont triées, pas les noms de clés ; l'ordre des clés à valeurs égales n'est pas garanti.
Arguments
| Nom | Type | Ce qu'elle fait |
|---|---|---|
array | table | Table dont les valeurs doivent être comparables entre elles. |
Retours
| 1 | table | Tableau dense de clés triées selon leur valeur associée. |
|---|
É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.
Elle ne lit directement aucune API du jeu.
Comment l'addon l'appelle
- Classification de l'unité (widget)
class:SetList(addon.classifications, Functions.collections.keys(addon.classifications)) - Historique des actions de combat (widget)
action:SetList(addon.actions, Functions.collections.keys(addon.actions)) - Historique des actions de combat (temps) (widget)
action:SetList(addon.actions, Functions.collections.keys(addon.actions)) - Type de créature (widget)
class:SetList(addon.creatures, Functions.collections.keys(addon.creatures)) - Type d'affaiblissement présent (widget)
debufftype:SetList(addon.debufftypes, Functions.collections.keys(addon.debufftypes)) - Caractéristique étendue du personnage (widget)
stat:SetList(ecs_state.stats, Functions.collections.keys(ecs_state.stats)) - Pourcentage de caractéristique étendue du personnage (widget)
stat:SetList(ecs_state.percentages, Functions.collections.keys(ecs_state.percentages)) - En groupe (widget)
unit.configure=function() unit:SetList(units,Functions.collections.keys(units));unit:SetValue(value.unit or "player") end
et 9 autres: Instance (widget), Vie à portée (widget), Pourcentage de vie à portée (widget), Mana à portée (widget), Pourcentage de mana à portée (widget), Rôle (widget), Totem présent (widget), Temps restant du totem (widget), Zone JcJ (widget)
Source
Functions/collections.lua, ligne 21. En lecture seule dans le jeu ; Dupliquer crée une copie modifiable.
Functions.collections.keys(array)
local rv = {}
for k,_ in pairs(array) do
table.insert(rv, k)
end
-- Sort the keys
table.sort(rv, function (lhs, rhs) return array[lhs] < array[rhs] end)
return rv