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

Platform.rotation_owner.GetPlayerOwnerClassObservation

pública

Chame como

addon.Platform:GetPlayerOwnerClassObservation()

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

O que faz

Lê uma observação nova e protegida de UnitClass do jogador para a propriedade de rotações. Consome apenas o nome de arquivo de classe legível e não vazio do segundo retorno. Nenhuma leitura de existência, nível, veículo, família ou política de combate é adicionada, e nenhum resultado persiste entre chamadas. A propriedade do núcleo ainda valida separadamente o token de classe e a chave do personagem; provedores de contexto substituídos mantêm o caminho original completo.

Argumentos

NomeTipoO que faz
selfRMPlatformAdaptador de plataforma do Rotation Master (implícito nas chamadas com dois-pontos).

Retornos

1string | nilNome de arquivo de classe novo e legível, ou nil quando indisponível.
2string | nilMotivo de disponibilidade da capacidade ou da observação para uma classe nil.

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.

  • Indisponível nessa edição (o motivo está na dica)
  • Só enquanto as alternativas da Blizzard para APIs obsoletas estiverem ativas
API do jogoClassic EraTBC AnniversaryClassic ProgressionForeverRetail
UnitClassClassic EraTBC AnniversaryClassic ProgressionForeverRetail
canaccessvalueClassic EraTBC AnniversaryClassic ProgressionForeverRetail

Valores secretos (Retail e Forever)

No Retail e no Forever, o jogo entrega valores secretos aos addons. Esta função auxiliar verifica o que lê (addon.Platform:CanReadValue) e retorna nil com um motivo como restricted-value em vez de um valor secreto que não consegue comparar. Trate nil como indisponível, não como false.

Exemplo

local class = addon.Platform:GetPlayerOwnerClassObservation()
if class == nil then return nil end
return class == "DRUID"

Código-fonte

Platform/rotation_owner.lua, linha 18. Somente leitura no jogo; Duplicar cria uma cópia editável.

Platform.rotation_owner.GetPlayerOwnerClassObservation(self)
    if type(UnitClass)~='function' then return nil,'missing-api' end
    local ok,_,class=pcall(UnitClass,'player')
    if not ok then return nil,'api-error' end
    if not self:CanReadValue(class) then return nil,'restricted-value' end
    if canaccessvalue and not canaccessvalue(class) then return nil,'restricted-value' end
    if class==nil then return nil,'class-data-unavailable' end
    if type(class)~='string' or class=='' then return nil,'invalid-api-result' end
    return class

Voltar para Referência de funções