Подопытного взял с
https://github.com/bkader/PlateBuffs_WoTLK
Данная версия в чистом её виде с гитхаба отличается от других более рабочей анимацией кд (времени аур), доп настройками, и действительно пытается работать, но этого мало.
Не знаю, может уже кто делал подобное, но на всякий случай решил поделиться экспериментом.
Добавляем API AwesomeWotlk в сей аддон, предварительно пропатчившись (
https://github.com/FrostAtom/awesome_wotlk):
PHP код:
local OnUpdateTimer = 0
local function nameplatesOnUpdate(self, elapsed)
OnUpdateTimer = OnUpdateTimer + elapsed
if (OnUpdateTimer > P.scanNameplatesInterval and C_NamePlate) then -- P.scanNameplatesInterval - в настройках интервал скана нейплейтов
OnUpdateTimer = 0
for i=1,500 do
local unit = "nameplate"..i..""
if UnitExists(unit) then
core:CollectUnitInfo(unit)
end
end
end
end
CreateFrame("frame"):SetScript("OnUpdate", nameplatesOnUpdate)
Теперь, когда на цель наложена аура, не нужно маячить мышкой над её нейпмлейтом или брать в таргет и ждать того чтобы иконы отобразились, к примеру после того как неймплейт пропал с экрана. По производительности не скажу как будет себя вести поскольку я пианист а не програмист, мимо луа кабанчиком пробегал, однако здесь будет нонстоп чек кучи аур на куче юнитов, куча текстур которые цепляются к куче неймплейтов, предполагается что всё должно нормально работать, если без фанатизма оставлять только самые важные ауры, но..
Далее, попутно также добавил немного опций в настройки, которых, на мой взгляд, не хватало:
- Decimal numbers are displayed when less than X seconds: если оставшееся время ауры (по умолчанию 10 секунд) меньше указанного значения то отображаются десятичные числа (1.15, 1.1 вместо 1)
- Show aura time left text: отображение текста оставшегося времени ауры времени, вкл/выкл
- Show aura time left text only when time less than X seconds: текст отображается только когда до конца остается менее X секунд, по умолчанию 10 секунд
- Scan nameplates interval: интервал сканирования всех неймплейтов
- Возможность отключить текстуру кд (анимацию) и оставить только текст для возможного прироста производительности
- Text coloring: вкл/выкл цветной текст
- Show stacks text count: стаки аур показ вкл/выкл
- немного левых текстур для подсветки краев
Результат и тесты с кастомными неймплейтами и дефолтом ниже, при включении абсолютно всех аур, как и ожидалось, нехилая просадка фпс в рейде (1:50 время на втором видео), либо это нормально либо говнокод сделал/зря потратил время, если есть желание, кто-нибудь из местных гуру помогите разобраться, а если нет ладно, для отслеживания нескольких аур может быть вполне сойдет
Ссылки на мод оставлю, может кому зайдет