Возвращает предсказание по улучшению мета-предмета.
См. 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: int (enum META_UPGRADE_...) - что улучшается при срабатывании шанса моментального/двойного улучшения: качество или уровень improvement: nil or number (float) - какая степень улучшения будет у результата после операции в промежутке [0, 99]; если возможности улучшить нет, то nil maxImprovement: nil or number (float) - наибольшая возможная степень улучшения (при бесконечном значении agentCount) в промежутке [0, 100], предполагается что если improvement равен maxImprovement, то увеличивать agentCount бессмысленно (см. также поле isSingleUpgradeAgent у avatar.GetItemMetaInfo( itemId )); если возможности улучшить нет, то nil resultId: ObjectId (ItemId) - Id предмета, который получится, если мета-апгрейд предполагает замену предмета при склейке (sysUpgradeVector == "META_UPGRADE_ITEM") -- пример: local tryResult = avatar.GetMetaUpgradeResults( sourceId, enhancerId, agentId, 1 ) if tryResult and tryResult.canUpgrade then LogInfo( "Шанс улучшить: ", tryResult.upgradeChance * 100 ) end
См. также:
поле isSingleUpgradeAgent у itemLib.GetMetaInfo( itemId ).