Riferimento › Riferimento delle funzioni › Core

Core.point_conditions.editionPointResource

dipendenza

Chiamala come

Core.point_conditions.editionPointResource(platform, info, unit, class, cache)

Registra la dipendenza Core.point_conditions.editionPointResource, poi chiamala con quel nome. Una chiamata con spazio dei nomi non passa self: usa una chiamata con i due punti o passa tu l'oggetto.

Cosa fa

Selects the point resource for era and progression clients from the addon's per-edition map (combo points, Holy Power, Soul Shards, Chi, Shadow Orbs and similar). When the resource depends on specialization, only the player can be resolved.

Argomenti

NomeTipoCosa fa
platformRMPlatformPlatform used for readability checks and the player's specialization.
infotableClient info with family and, on progression clients, expansion.
unitstringUnit token the resource is for.
classstringThe unit's class file token.
cachetable | nilEvaluation-pass cache passed to getCached, or nil to read directly.

Valori restituiti

1number | nilEnum.PowerType value of the selected resource, or nil when unavailable.
2string | nilNil on success; otherwise the reason, such as unsupported-point-expansion, point-specialization-unavailable, point-resource-unavailable or invalid-point-resource.
3string | nil"power" on success, marking the selector as a power type; absent on failure.

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 disponibile su quell'edizione (il motivo è nel suggerimento)
  • Solo mentre sono attivi i ripieghi di Blizzard per le API deprecate
API di giocoClassic EraTBC AnniversaryClassic progressionForeverRetail
EnumClassic EraTBC AnniversaryClassic progressionForeverRetail

Valori segreti (Retail e Forever)

Su Retail e Forever il gioco fornisce agli addon valori segreti. Questa funzione di supporto controlla ciò che legge (addon.Platform:CanReadValue) e restituisce nil con un motivo come restricted-value invece di un valore segreto che non può confrontare. Considera nil come non disponibile, non come false.

Come la chiama l'addon

Dipendenze

Sorgente

Core/point_conditions.lua, riga 163. Nel gioco è in sola lettura; Duplica crea una copia modificabile.

Core.point_conditions.editionPointResource(platform, info, unit, class, cache)
    local family=info.family
    local map=editionPointPowers[family]
    if family=='progression' then
        local expansion=info.expansion
        if not platform:CanReadValue(expansion) then return nil,'restricted-value' end
        if type(expansion)~='number' then return nil,'unsupported-point-expansion' end
        map=map[expansion]
        if map==nil then return nil,'unsupported-point-expansion' end
    end
    local name=map[class]
    if type(name)=='table' then
        -- Only the player's own specialization is readable.
        if unit~='player' then return nil,'point-specialization-unavailable' end
        local spec,why=addon.Functions.cache.getCached(cache,platform.GetPlayerSpecializationIndex,platform)
        if spec==nil then return nil,why end
        name=name[spec]
    end
    if name==nil then return nil,'point-resource-unavailable' end
    local enum=Enum
    if not platform:CanReadValue(enum) then return nil,'restricted-value' end
    if type(enum)~='table' then return nil,'point-resource-unavailable' end
    local types=rawget(enum,'PowerType')
    if not platform:CanReadValue(types) then return nil,'restricted-value' end
    if type(types)~='table' then return nil,'point-resource-unavailable' end
    local selected=rawget(types,name)
    if not platform:CanReadValue(selected) then return nil,'restricted-value' end
    if selected==nil then return nil,'point-resource-unavailable' end
    if type(selected)~='number' or selected~=selected or selected<0 or selected==math.huge or selected%1~=0 then return nil,'invalid-point-resource' end
    return selected,nil,'power'

Torna a Riferimento delle funzioni