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.
75 lines
1.9 KiB
75 lines
1.9 KiB
local mod = DBM:NewMod(186, "DBM-Party-Cataclysm", 10, 77)
|
|
local L = mod:GetLocalizedStrings()
|
|
|
|
mod.statTypes = "heroic,timewalker"
|
|
|
|
mod:SetRevision("20240428124541")
|
|
mod:SetCreatureID(23574)
|
|
mod:SetEncounterID(1189)
|
|
mod:SetUsedIcons(1, 8)
|
|
|
|
mod:RegisterCombat("combat")
|
|
|
|
mod:RegisterEventsInCombat(
|
|
"SPELL_AURA_APPLIED 97318",
|
|
"SPELL_CAST_SUCCESS 43648"
|
|
)
|
|
|
|
local warnStormSoon = mod:NewSoonAnnounce(43648, 5, 3)
|
|
local warnPlucked = mod:NewTargetNoFilterAnnounce(97318, 3)
|
|
|
|
local specWarnStorm = mod:NewSpecialWarningMoveTo(43648, nil, nil, nil, 2, 1)
|
|
|
|
local timerStorm = mod:NewCastTimer(8, 43648, nil, nil, nil, 2)
|
|
local timerStormCD = mod:NewCDTimer(55, 43648, nil, nil, nil, 3)
|
|
|
|
local berserkTimer = mod:NewBerserkTimer(600)
|
|
|
|
mod:AddBoolOption("RangeFrame", true)
|
|
mod:AddSetIconOption("StormIcon", 43648, true, 0, {1})
|
|
mod:AddSetIconOption("SetIconOnEagle", 97318, true, 5, {8})
|
|
|
|
function mod:OnCombatStart(delay)
|
|
warnStormSoon:Schedule(43)
|
|
timerStormCD:Start(48)
|
|
berserkTimer:Start(-delay)
|
|
if self.Options.RangeFrame then
|
|
DBM.RangeCheck:Show(6)
|
|
end
|
|
end
|
|
|
|
function mod:OnCombatEnd()
|
|
if self.Options.RangeFrame then
|
|
DBM.RangeCheck:Hide()
|
|
end
|
|
end
|
|
|
|
function mod:SPELL_AURA_APPLIED(args)
|
|
if args.spellId == 97318 then
|
|
if args:IsDestTypePlayer() then
|
|
warnPlucked:Show(args.destName)
|
|
else
|
|
self:ScanForMobs(args.destGUID, 2, 8, 1, nil, 10, "SetIconOnEagle")
|
|
end
|
|
end
|
|
end
|
|
|
|
function mod:SPELL_CAST_SUCCESS(args)
|
|
if args.spellId == 43648 then
|
|
specWarnStorm:Show(args.destName)
|
|
specWarnStorm:Play("gather")
|
|
timerStorm:Start()
|
|
warnStormSoon:Schedule(50)
|
|
timerStormCD:Start()
|
|
if self.Options.RangeFrame then
|
|
DBM.RangeCheck:Hide()
|
|
self:Schedule(10, function()
|
|
DBM.RangeCheck:Show(6)
|
|
end)
|
|
end
|
|
if self.Options.StormIcon then
|
|
self:SetIcon(args.destName, 1, 8)
|
|
end
|
|
end
|
|
end
|
|
|
|
|