Chiamala come
addon:Widget_UnitWidget(value, units, update, field)
Disponibile direttamente tramite addon; non serve alcuna dipendenza.
Cosa fa
Crea un selettore di unità configurato, associato a un record del valore della condizione. Restituisce il widget, che il chiamante aggiunge al genitore della callback della condizione.
Argomenti
| Nome | Tipo | Cosa fa |
|---|---|---|
self | RMAddon | Istanza dell'addon Rotation Master (implicita nelle chiamate con due punti). |
value | table | Record del valore della condizione aggiornato quando viene scelta un'unità. |
units | table | Mappa da chiave dell'unità a nome visualizzato, mostrata nel selettore. |
update | function | Callback richiamata dopo la modifica dell'unità selezionata. |
field | string | nil | Campo del record del valore da modificare; predefinito unit. |
Valori restituiti
| 1 | RMConditionSelector | Selettore di unità configurato; aggiungilo con parent:AddChild(widget). |
|---|
Edizioni
Le funzioni di supporto integrate sono registrate su ogni edizione. Ciò che cambia è l'API di gioco che leggono; dove ne manca una, la funzione di supporto ripiega su un'alternativa o restituisce nil con un motivo.
Non legge direttamente alcuna API di gioco.
Come la chiama l'addon
- Attaccabile (widget)
local unit = addon:Widget_UnitWidget(value, Functions.collections.deepcopy(addon.units, { "player", "pet" }), - Oltre la portata in mischia (widget)
parent:AddChild(addon:Widget_UnitWidget(value,addon.units,function() - Effetto benefico presente (widget)
local unit = addon:Widget_UnitWidget(value, addon.units, - Tempo rimanente dell'effetto benefico (widget)
local unit = addon:Widget_UnitWidget(value, addon.units, - Accumuli dell'effetto benefico (widget)
local unit = addon:Widget_UnitWidget(value, addon.units, - Lancio (widget)
local unit = addon:Widget_UnitWidget(value, addon.units, - Avanzamento del lancio (widget)
local unit = addon:Widget_UnitWidget(value, addon.units, - Tempo di lancio rimanente (widget)
local unit = addon:Widget_UnitWidget(value, addon.units,
e altri 52: Lancio di un incantesimo specifico (widget), Lancio interrompibile (widget), Incanalamento (widget), Avanzamento del canale (widget), Tempo rimanente dell'incanalamento (widget), Incanalamento di un incantesimo specifico (widget), Incanalamento interrompibile (widget), Classe (widget), Classificazione dell'unità (widget), In combattimento (widget), Cronologia delle azioni di combattimento (widget), Tempo nella cronologia delle azioni di combattimento (widget), Tipo di creatura (widget), È morto o fantasma (widget), Penalità presente (widget), Tempo rimanente della penalità (widget), Accumuli della penalità (widget), Tipo di penalità presente (widget), Distanza (widget), Ostile (widget), È amico (widget), In gruppo (widget), Salute (widget), Percentuale di salute (widget), Immune (widget), È uguale a (widget), Livello (widget), Mana (widget), Percentuale di mana (widget), Marcatore del raid (widget), Punti (widget), Risorsa (widget), Percentuale di risorsa (widget), Alleati entro la distanza (widget), Salute entro la distanza (widget), Percentuale di salute entro la distanza (widget), Conteggio percentuale di salute entro la distanza (widget), Conteggio salute entro la distanza (widget), Mana entro la distanza (widget), Percentuale di mana entro la distanza (widget), Conteggio percentuale di mana entro la distanza (widget), Conteggio mana entro la distanza (widget), Contrassegnato per il PvP (widget), Resistente (widget), Ruolo (widget), In fuga (widget), Statistica del personaggio (widget), Ha un effetto benefico rubabile (widget), Minaccia (widget), Tempo prima della salute (widget), Tempo prima della percentuale di salute (widget), Unità esistente (widget)
Sorgente
UI/condition_unit.lua, riga 23. Nel gioco è in sola lettura; Duplica crea una copia modificabile.
Conditions.common.Widget_UnitWidget(self, value, units, update, field)
if field == nil then
field = "unit"
end
local unit = addon:CreateConditionDropdown()
unit:SetLabel(L["Unit"])
unit:SetCallback("OnValueChanged", function(_, _, v)
value[field] = v
update()
end)
unit:SetDisabled(value.disabled)
unit.configure = function()
local choices=units
local parent=unit.parent
local top
for _=1,128 do
if not parent then break end
top=parent:GetUserData('top')
if top then break end
parent=parent.parent
end
if field=='unit' and (value[field]=='announcementtarget' or top and top:GetUserData('announcementTarget')==true) then
choices={};for key,label in pairs(units) do choices[key]=label end
choices.announcementtarget=L['Announcement target']
end
unit:SetList(choices, addon.keys(choices))
unit:SetValue(value[field])
end
return unit