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
2.3 KiB
72 lines
2.3 KiB
local mod = DBM:NewMod(188, "DBM-Party-Cataclysm", 10, 77)
|
|
local L = mod:GetLocalizedStrings()
|
|
|
|
mod.statTypes = "heroic,timewalker"
|
|
|
|
mod:SetRevision("20220116042005")
|
|
mod:SetCreatureID(23578)
|
|
mod:SetEncounterID(1191)
|
|
|
|
mod:RegisterCombat("combat")
|
|
|
|
mod:RegisterEventsInCombat(
|
|
"SPELL_AURA_APPLIED 97497",
|
|
"SPELL_CAST_START 43140",
|
|
"CHAT_MSG_MONSTER_YELL"
|
|
)
|
|
|
|
local warnFlameCast = mod:NewSpellAnnounce(43140, 2)
|
|
local warnAddsSoon = mod:NewSoonAnnounce(43962, 3)
|
|
local warnHatchAll = mod:NewSpellAnnounce(43144, 4)
|
|
|
|
local specWarnFlameBreath = mod:NewSpecialWarningMove(97497, nil, nil, nil, 1, 2)
|
|
local specWarnAdds = mod:NewSpecialWarningSpell(43962, nil, nil, nil, 1, 2)
|
|
local specWarnBomb = mod:NewSpecialWarningDodge(42630, nil, nil, nil, 2)
|
|
local specWarnHatchAll = mod:NewSpecialWarningSpell(43144, "Tank", nil, nil, 1, 2)
|
|
|
|
local timerBomb = mod:NewCastTimer(12, 42630, nil, nil, nil, 3)
|
|
local timerBombCD = mod:NewNextTimer(30, 42630, nil, nil, nil, 3)
|
|
local timerAdds = mod:NewNextTimer(60, 43962, nil, nil, nil, 1, nil, DBM_COMMON_L.TANK_ICON..DBM_COMMON_L.DAMAGE_ICON) -- this timer only works accurately when one of the hatchers has been killed. Otherwise it's getting delayed by 30 seconds each cycle.
|
|
|
|
local berserkTimer = mod:NewBerserkTimer(600)
|
|
|
|
function mod:OnCombatStart(delay)
|
|
timerAdds:Start(12-delay)
|
|
timerBombCD:Start(55-delay)
|
|
berserkTimer:Start(-delay)
|
|
end
|
|
|
|
function mod:SPELL_AURA_APPLIED(args)
|
|
if args.spellId == 97497 and args:IsPlayer() and self:AntiSpam() then
|
|
specWarnFlameBreath:Show()
|
|
specWarnFlameBreath:Play("runaway")
|
|
end
|
|
end
|
|
|
|
function mod:SPELL_CAST_START(args)
|
|
if args.spellId == 43140 then
|
|
warnFlameCast:Show() -- Seems he doesn't target the person :(
|
|
end
|
|
end
|
|
|
|
function mod:CHAT_MSG_MONSTER_YELL(msg)
|
|
if msg == L.YellAdds or msg:find(L.YellAdds) then
|
|
specWarnAdds:Show()
|
|
specWarnAdds:Play("mobsoon")
|
|
warnAddsSoon:Schedule(60)
|
|
timerAdds:Start()
|
|
elseif msg == L.YellBomb or msg:find(L.YellBomb) then
|
|
specWarnBomb:Show()
|
|
specWarnBomb:Play("watchstep")
|
|
timerBomb:Start()
|
|
timerBombCD:Start()
|
|
elseif msg == L.YellHatchAll or msg:find(L.YellHatchAll) then
|
|
warnHatchAll:Show()
|
|
if self.Options.SpecWarn43144spell then
|
|
specWarnHatchAll:Show()
|
|
specWarnHatchAll:Play("mobsoon")
|
|
else
|
|
warnHatchAll:Show()
|
|
end
|
|
end
|
|
end
|
|
|