Получить общую информацию об инстанс-ивенте, в котором участвует аватар. Не содержит информации, которая может меняться в ходе сражения, за ней обращаться к matchMaking.GetEventProgressInfo().
-- библиотека:
matchMaking
-- объявление:
function GetCurrentBattleInfo()
-- параметры:
нет
-- возвращаемое значение:
table or nil - если аватар не участвует в сражении, то nil; иначе таблица с полями:
id: ObjectId or nil - идентификатор инстанс-ивента; если ивенте нет в списке доступных сражений то nil
name: WString - имя инстанс-ивента
description: WString - описание инстанс-ивента
isCommonShard: Boolean - true если сражение межсерверное, иначе false
isPvE: Boolean - true если данный инстанс-ивент относится к сражениям против окружения, иначе false
mechanicsType: number (enum ENUM_MatchMakingMechanicsType...) - тип игровой механики
duration: number (integer) - длительность ивента в миллисекундах
ignoreFactions: boolean - ивент со смешанными фракциями(при формировании группы принадлежность к фракции игнорируется)
allowQuickExit: boolean - позволять быстро покидать активность(кнопка в углу экрана)
winCounter: number (integer) - суммарное количество очков за все достижения (см. поле achievements), необходимое для победы (также см. ниже описание поля finalWeight таблицы achievements); если 0, то победа за достижения не присуждается
achievements: table of tables - таблица со списком описаний достижений в битве (индексируется целыми числами, начиная от 0), каждый элемент - таблица с полями:
sysName: string или nil - если есть, то нелокализуемое системное имя достижения
name: WString - имя
description: WString - описание
weight: number (integer) - вес очков за данное достижение в общей сумме очков за достижения (также см. выше поле winCounter) (не используется в механике)
finalWeight: number (integer) - используется для указания счетообразующего достижения (вес полученных очков за достижение, чаще всего 1, если ачивка счетообразующая)
value: int - величина, по достижении которой сражение считается выигранным даже если общая сумма очков за все достижения не достигла winCounter (не играет роли, если winCounter равен 0)
showInTable: boolean - если true, то показывать достижение в таблице с результатами
Пример:
local info = matchMaking.GetCurrentBattleInfo() if info then LogInfo( "Group instanced event, name: ", info.name ) end
См. также "ENUM_MatchMakingMechanicsType...", EVENT_MATCH_MAKING_CURRENT_BATTLE_CHANGED, matchMaking.GetEventProgressInfo()