Referência › Referência de funções › Conditions

Conditions.common.Widget_UnitWidget

pública

Chame como

addon:Widget_UnitWidget(value, units, update, field)

Disponível diretamente por meio de addon; nenhuma dependência é necessária.

O que faz

Cria um seletor de unidade configurado vinculado a um registro de valores de condição. Retorna o widget para quem chama adicioná-lo ao pai do callback da condição.

Argumentos

NomeTipoO que faz
selfRMAddonInstância do addon Rotation Master (implícita nas chamadas com dois-pontos).
valuetableRegistro de valores da condição atualizado quando uma unidade é escolhida.
unitstableMapa de chave de unidade para nome de exibição mostrado no seletor.
updatefunctionCallback invocado após alterar a unidade selecionada.
fieldstring | nilCampo do registro de valores a editar; unit por padrão.

Retornos

1RMConditionSelectorSeletor de unidade configurado; adicione-o com parent:AddChild(widget).

Edições

As funções auxiliares integradas são registradas em todas as edições. O que muda é a API do jogo que elas leem; quando uma está ausente, a função auxiliar recorre a uma alternativa ou retorna nil com um motivo.

Não lê nenhuma API do jogo diretamente.

Como o addon a chama

e mais 52: Lançando feitiço específico (widget), Lançamento interrompível (widget), Canalizando (widget), Progresso da canalização (widget), Tempo restante da canalização (widget), Canalizando feitiço específico (widget), Canalização interrompível (widget), Classe (widget), Classificação da unidade (widget), Em combate (widget), Histórico de ações de combate (widget), Tempo do histórico de ações de combate (widget), Tipo de criatura (widget), Está morto ou é um fantasma (widget), Penalidade presente (widget), Tempo restante da penalidade (widget), Acúmulos da penalidade (widget), Tipo de penalidade presente (widget), Distância (widget), Hostil (widget), É amigável (widget), Em grupo (widget), Vida (widget), Porcentagem de vida (widget), Imune (widget), É o mesmo que (widget), Nível (widget), Mana (widget), Porcentagem de mana (widget), Marca de raide (widget), Pontos (widget), Poder (widget), Porcentagem de poder (widget), Aliados ao alcance (widget), Vida ao alcance (widget), Porcentagem de vida ao alcance (widget), Contagem de porcentagem de vida ao alcance (widget), Contagem de vida ao alcance (widget), Mana ao alcance (widget), Porcentagem de mana ao alcance (widget), Contagem de porcentagem de mana ao alcance (widget), Contagem de mana ao alcance (widget), Marcado para JxJ (widget), Resistente (widget), Função (widget), Fugitivo (widget), Atributo do personagem (widget), Tem bônus roubável (widget), Ameaça (widget), Tempo até a vida (widget), Tempo até a porcentagem de vida (widget), Unidade existe (widget)

Código-fonte

UI/condition_unit.lua, linha 23. Somente leitura no jogo; Duplicar cria uma cópia editável.

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

Voltar para Referência de funções