# Пользовательские дополнения

На главную

## avatar.GetMetaUpgradeResults( sourceId, enhancerId, agentId, agentCount )

Возвращает предсказание по улучшению мета-предмета.

См. ENUM_UpgradeChanceBehavior_...

    -- библиотека:
    avatar

    -- объявление:
    function GetMetaUpgradeResults( sourceId, enhancerId, agentId, agentCount )

    -- параметры:
    sourceId: ObjectId - идентификатор улучшаемого предмета
    enhancerId: ObjectId - идентификатор предмета-улучшителя
    agentId: ObjectId - идентификатор предмета-агента, требуемого для улучшения
    agentCount: number (integer) - количество используемых агентов

    -- возвращаемые значения:
    table or nil - если нет ошибок, то таблица с полями:
      canUpgrade: boolean - true, если есть возможность улучшить при таком сочетании параметров; false если возможности улучшить предмет нет
      upgradeChance: nil or number - шанс моментального/двойного улучшения в промежутке [0, 1]; если возможности улучшить нет, то nil
      upgradeChanceBehavior: nil or number (enum ENUM_UpgradeChanceBehavior_...) - поведение при срабатывании шанса моментального/двойного улучшения
      sysUpgradeChanceBehavior: nil or string (enum "ENUM_UpgradeChanceBehavior_...") - поведение при срабатывании шанса моментального/двойного улучшения
      sysUpgradeVector: nil or string (enum "ENUM_UpgradeVector_...") - что улучшается при срабатывании шанса моментального/двойного улучшения: качество или уровень
      improvement: nil or number (float) - какая степень улучшения будет у результата после операции в промежутке [0, 99]; если возможности улучшить нет, то nil
      maxImprovement: nil or number (float) - наибольшая возможная степень улучшения (при бесконечном значении agentCount) в промежутке [0, 100], предполагается что если improvement равен maxImprovement, то увеличивать agentCount бессмысленно (см. также поле isSingleUpgradeAgent у avatar.GetItemMetaInfo( itemId )); если возможности улучшить нет, то nil

    -- пример:
    local tryResult = avatar.GetMetaUpgradeResults( sourceId, enhancerId, agentId, 1 )
    if tryResult and tryResult.canUpgrade then
      LogInfo( "Шанс улучшить: ", tryResult.upgradeChance * 100 )
    end

См. также:

- avatar.UpgradeMetaItem.

- ENUM_UpgradeChanceBehavior_....

- "ENUM_UpgradeVector_...".

- EVENT_META_UPGRADE_RESULT.

- поле isSingleUpgradeAgent у avatar.GetItemMetaInfo( itemId ).

#### Связанные страницы: "CategoryLuaApi" "CategoryMeta"

CategoryMeta
EnumUpgradeChanceBehavior
EnumUpgradeVector
EventMetaDialog
EventMetaUpgradeBreak
EventMetaUpgradeResult
FunctionAvatarConvertMetaEnhancer
FunctionAvatarDuplicateMetaEnhancerItem
FunctionAvatarGetItemMallMetaUpgradeEnhancer
FunctionAvatarGetItemMetaInfo
FunctionAvatarGetItemRelatedQuestObjectives
FunctionAvatarGetMetaUpgradeCost
FunctionAvatarGetMetaUpgradeResults
FunctionAvatarIsMetaEnhancerDuplicator
FunctionAvatarShowMetaUpgradeDialog
FunctionAvatarUpgradeMetaItem
FunctionCanPlaceMetaUpgradeAgent
FunctionCanPlaceMetaUpgradeEnhancer
FunctionCanPlaceMetaUpgradeSource
FunctionItemLibGetUniversalMetaEnchancerItems

CategoryLuaApi CategoryFunction CategoryAvatar CategoryMeta

На главную