You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

72 lines
1.8 KiB

local mod = DBM:NewMod(560, "DBM-Party-BC", 14, 257)
local L = mod:GetLocalizedStrings()
if mod:IsRetail() then
mod.statTypes = "normal,heroic,timewalker"
end
mod:SetRevision("20231014053250")
mod:SetCreatureID(17978)
mod:SetEncounterID(1928)
if not mod:IsRetail() then
mod:SetModelID(14416)
end
mod:RegisterCombat("combat")
mod:RegisterEventsInCombat(
"SPELL_AURA_APPLIED 34661 34670",
"SPELL_AURA_REMOVED 34661 34670"
)
local warnSacrifice = mod:NewTargetNoFilterAnnounce(34661, 2)
local warnEnrage = mod:NewSpellAnnounce(34670, 2, nil, "Healer|Tank")
local specWarnGTFO = mod:NewSpecialWarningGTFO(34660, nil, nil, nil, 1, 8)
local timerSacrifice = mod:NewTargetTimer(8, 34661, nil, nil, nil, 3)
local timerFrenzy = mod:NewBuffActiveTimer(10, 34670, nil, "Healer|Tank")
function mod:OnCombatStart(delay)
if not self:IsTrivial() then
self:RegisterShortTermEvents(
"SPELL_DAMAGE 34660",
"SPELL_MISSED 34660"
)
end
end
function mod:OnCombatEnd()
self:UnregisterShortTermEvents()
end
function mod:SPELL_AURA_APPLIED(args)
if args.spellId == 34661 then
warnSacrifice:Show(args.destName)
timerSacrifice:Start(args.destName)
elseif args.spellId == 34670 then
warnEnrage:Show(args.destName)
timerFrenzy:Start(args.destName)
end
end
function mod:SPELL_AURA_REMOVED(args)
if args.spellId == 34661 then
timerSacrifice:Stop(args.destName)
elseif args.spellId == 34670 then
timerFrenzy:Stop(args.destName)
end
end
do
local player = UnitGUID("player")
function mod:SPELL_DAMAGE(_, _, _, _, destGUID, _, _, _, spellId, spellName)
if spellId == 34660 and destGUID == player and self:AntiSpam(4, 1) then--Hellfire
specWarnGTFO:Show(spellName)
specWarnGTFO:Play("watchfeet")
end
end
mod.SPELL_MISSED = mod.SPELL_DAMAGE
end