После хотфикса 8.0.1.21 от 19 апреля в аддонах перестала отображаться информация о баффах, дебаффах, уроне, здоровье, входящем отхиле и изменении маны.
Связано это с изменениями, внесенными разработчиками в API аддонов в данном хотфиксе.
Восстановление работоспособности тех аддонов, которых затронуло это изменение, требует некоторого времени, поскольку не является легко поправимым.
Авторам платных аддонов необходимо как можно быстрее, в срок до конца апреля, исправить проблемы. В случае невозможности исправить проблему в срок и фактической бесполезности и неработоспособности аддона в отсутствие этих исправлений такой аддон будет снят с продажи.
В случае снятия аддона с продажи покупателям будут проведены возвраты. По аддонам, работоспособность которых будет возобновлена, будут продлены сроки подписки.
В случае, если окажется, что ситуация сложнее, чем представляется, в приведенные выше условия могут быть внесены изменения, о чем я обязательно сообщу.
Список аддонов, по которым известно о наличии проблемы:
-
AcAddon - AoPacsZeon (открыт исходный код, снят с продажи)
-
BattlePack -
BuffAnnounce -
CoolBuffs -
MyBuffTracker -
ShowDD
Подробности об изменении авторам аддонов:
common.RegisterEventHandler(eventFunction, sysEventName, params)
Для следующих событий params является обязательным параметром, в котором должен быть указан идентификатор интересующего объекта ObjectId:
- EVENT_HEALING_RECEIVED
- EVENT_UNIT_HEALTH_CHANGED
- EVENT_UNIT_MANA_PERCENTAGE_CHANGED
- EVENT_UNIT_DAMAGE_RECEIVED
- EVENT_DEVICE_DAMAGE_RECEIVED
- EVENT_OBJECT_BUFFS_CHANGED
- EVENT_OBJECT_BUFF_ADDED
- EVENT_OBJECT_BUFF_REMOVED
Пример:
local onEventObjectBuffsChanged = function(p) -- событие придет для аватара end local params = {objectId = avatar.GetId()} -- Подписываем обработчик: common.RegisterEventHandler(onEventObjectBuffsChanged, 'EVENT_OBJECT_BUFFS_CHANGED', params) -- Отписываем обработчик: common.UnRegisterEventHandler(onEventObjectBuffsChanged, 'EVENT_OBJECT_BUFFS_CHANGED', params)
Обращаем внимание на одну маленькую деталь в этом примере:
-- Подписываем обработчик: common.RegisterEventHandler(onEventObjectBuffsChanged, 'EVENT_OBJECT_BUFFS_CHANGED', {objectId = avatar.GetId()}) -- Отписываем обработчик: common.UnRegisterEventHandler(onEventObjectBuffsChanged, 'EVENT_OBJECT_BUFFS_CHANGED', {objectId = avatar.GetId()}) -- здесь будет ошибка, поскольку params не равен тому, который использовали при регистрации.
Лимит на количество обработчиков событий
Есть ограничение на максимальное количество подписанных обработчиков событий с параметрами в пределах всего аддона. Сейчас задан лимит в 500. Т.е. от неинтересующих объектов надо отписываться, иначе новые обработчики не будут регистрироваться.
Изменено пользователем Fye D. Flowright
Рекомендуемые комментарии