Получить описание правил игрового эвента.
-- библиотека: rules -- объявление: function GetEventInfo( eventRuleId ) -- параметры: eventRuleId: ObjectId - идентификатор описания правил эвента -- возвращаемое значение: table or nil - таблица с описанием, если информация получена: id: ObjectId - идентификатор описания правил эвента resourceId: RuleId - уникальный идентификатор ресурса евента name: WString - название эвента description: WString - текстовое описание эвента sysName: string - нелокализуемый строковый идентификатор для опознания избранных эвентов скриптами UI sysDebugName: string or nil - уникальный строковый идентификатор события для дебага (путь к файлу ресурса) isActive: boolean - активно ли событие rating: number (integer) - рейтинг эвента level: number (integer) - рекомендуемый уровень игроков zonesMapId: ObjectId or nil - если указано, то идентификатор интерфейсной карты, на которой произходит эвент factionId: FactionId or nil - если указано, то FactionId игроков, участвующих в эвенте. reward: table - если указано, то таблица с описанием награды, получаемой игроками, участвующими в эвенте. Формат полей таблицы, как в avatar.GetQuestReward( questId ) types: table - таблица принадлежности эвента какому либо специальному типу. Элементы таблицы с индексами типа события (RULE_TYPE_...) содержат true, остальные не заполнены location: QuestLocation or nil - если задана, то точка начала эвента
Пример:
local eventRuleInfo = rules.GetEventInfo( eventRuleId ) if eventRuleInfo then LogInfo( "Info: ", eventRuleInfo.name ) if eventRuleInfo.types[ RULE_TYPE_RECOMMENDED ] then local rewardMoney = eventRuleInfo.reward.money end end
См. также: unit.GetFactionId( unitId ), avatar.GetQuestReward( questId ), RULE_TYPE_..., QuestLocation.