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.

65 lines
2.1 KiB

local mod = DBM:NewMod(663, "DBM-Party-MoP", 7, 246)
local L = mod:GetLocalizedStrings()
mod.statTypes = "normal,heroic,challenge,timewalker"
mod:SetRevision("20231024034207")
mod:SetCreatureID(59184)--59220 seem to be her mirror images
mod:SetEncounterID(1427)
mod:SetZone(1007)
mod:RegisterCombat("combat")
mod:RegisterEventsInCombat(
"SPELL_AURA_REMOVED 114062",
"SPELL_CAST_START 114062",
"UNIT_SPELLCAST_SUCCEEDED boss1"
)
local warnWondrousRapidity = mod:NewSpellAnnounce(114062, 3)
local warnGravityFlux = mod:NewTargetAnnounce(114059, 2)
local warnWhirlofIllusion = mod:NewSpellAnnounce(113808, 4)
local specWarnWondrousRapdity = mod:NewSpecialWarningDodge(114062, "Tank", nil, nil, 1, 2)--Frontal cone fixate attack, easily dodged (in fact if you don't, i imagine it'll wreck you on heroic)
local timerWondrousRapidity = mod:NewBuffFadesTimer(7.5, 114062)
local timerWondrousRapidityCD = mod:NewCDTimer(14, 114062, nil, "Tank", 2, 5)
local timerGravityFlux = mod:NewCDTimer(12, 114059) -- needs more review.
function mod:GravityFluxTarget()
local targetname = self:GetBossTarget(59184)
if not targetname then return end
warnGravityFlux:Show(targetname)
end
function mod:OnCombatStart(delay)
timerWondrousRapidityCD:Start(6-delay)
end
function mod:SPELL_AURA_REMOVED(args)
if args.spellId == 114062 then
timerWondrousRapidityCD:Start()
end
end
function mod:SPELL_CAST_START(args)
if args.spellId == 114062 then
if self.Options.SpecWarn114062dodge then
specWarnWondrousRapdity:Show()
specWarnWondrousRapdity:Play("shockwave")
else
warnWondrousRapidity:Show()
end
timerWondrousRapidity:Start()
end
end
function mod:UNIT_SPELLCAST_SUCCEEDED(uId, _, spellId)
if (spellId == 114059 or spellId == 114047) and self:AntiSpam(2, 1) then -- found 2 spellids on first cast, 4 spellids total (114035, 114038, 114047, 114059). needs more logs to confirm whether spellid is correct.
self:ScheduleMethod(0.1, "GravityFluxTarget")
timerGravityFlux:Start()
elseif spellId == 113808 and self:AntiSpam(2, 2) then
warnWhirlofIllusion:Show()
timerGravityFlux:Cancel()
end
end