
Сообщение от
NoGoodLife
если вражеские, то SPELL_CAST_SUCCESS SPELL_AURA_APPLIED SPELL_MISSED SPELL_SUMMON обычно запускают функцию которая проверяет, есть ли нужный спел в таблице с кулдаунами аддона, и если есть - создаются текстуры иконки и таймер иконки и заносятся в таблицу текущих кд.
А аргументы какие?
просто стоят arg1-9 и они проверяют только у меня, но никак не у врага

Сообщение от
NoGoodLife
SPELL_CAST_SUCCESS
Это спел применен

Сообщение от
NoGoodLife
SPELL_AURA_APPLIED
А это аура применена

Сообщение от
NoGoodLife
SPELL_MISSED
промах
Но как именно кулдаун проверить? Там таймер стоит в таких типо

Сообщение от
NoGoodLife
типо doom cooldown pulse
Только я никак не могу понять на чём он основывается
Вот приводится простой пример:
PHP код:
local start, duration, enabled = GetSpellCooldown("Presence of Mind");
if enabled == 0 then
DEFAULT_CHAT_FRAME:AddMessage("Presence of Mind is currently active, use it and wait " .. duration .. " seconds for the next one.");
elseif ( start > 0 and duration > 0) then
DEFAULT_CHAT_FRAME:AddMessage("Presence of Mind is cooling down, wait " .. (start + duration - GetTime()) .. " seconds for the next one.");
else
DEFAULT_CHAT_FRAME:AddMessage("Presence of Mind is ready.");
end
И вроде бы всё должно работать, только у нас на циркле enabled всегда = 1, даже когда кулдауна нет.
Хотя написано черным по белому :
startTime
Number - The time when the cooldown started (as returned by GetTime()); zero if no cooldown; current time if (enabled == 0).
duration
Number - Cooldown duration in seconds, 0 if spell is ready to be cast.
enabled
Number - 0 if the spell is active (Stealth, Shadowmeld, Presence of Mind, etc) and the cooldown will begin as soon as the spell is used/cancelled; 1 otherwise.
И если ставишь GetSpellCooldown с аргументами, он орёт каждые 3 секунды что спелл готов, когда надо 1 раз.
Из-за этого невозможно ставить с ним аргументы.