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

Functions.forecast.readField

dependência

Chame como

Functions.forecast.readField(platform, object, key)

Registre a dependência Functions.forecast.readField e depois chame-a por esse nome. Uma chamada com namespace não passa self: use uma chamada com dois-pontos ou passe o objeto você mesmo.

O que faz

Reads object[key] for Functions.forecast.calculate without letting a restricted value, a non-table object or an index error escape.

Argumentos

NomeTipoO que faz
platformRMPlatformPlatform whose CanReadValue decides readability.
objectanyTable to read, such as the history record or one of its rows.
keyanyKey to read, such as "damage" or "time".

Retornos

1anyThe field's value (possibly nil), or nil on failure.
2string | nilReason on failure: restricted-value, invalid-forecast-history or forecast-history-error.

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.

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.

Como o addon a chama

Código-fonte

Functions/forecast.lua, linha 38. Somente leitura no jogo; Duplicar cria uma cópia editável.

Functions.forecast.readField(platform, object, key)
    if not platform:CanReadValue(object) then return nil,'restricted-value' end
    if type(object)~='table' then return nil,'invalid-forecast-history' end
    local ok,value=pcall(function() return object[key] end)
    if not ok then return nil,'forecast-history-error' end
    if not platform:CanReadValue(value) then return nil,'restricted-value' end
    return value

Voltar para Referência de funções