diff --git a/WarWithin/TheDawnbreaker/Options/Colors.lua b/WarWithin/TheDawnbreaker/Options/Colors.lua index c50510d5c..5c3d54312 100644 --- a/WarWithin/TheDawnbreaker/Options/Colors.lua +++ b/WarWithin/TheDawnbreaker/Options/Colors.lua @@ -48,4 +48,5 @@ BigWigs:AddColors("The Dawnbreaker Trash", { [451102] = "yellow", [451107] = {"blue","yellow"}, [451117] = "purple", + [451119] = {"blue","red"}, }) diff --git a/WarWithin/TheDawnbreaker/Options/Sounds.lua b/WarWithin/TheDawnbreaker/Options/Sounds.lua index 51a2fd9d4..1d635a6f9 100644 --- a/WarWithin/TheDawnbreaker/Options/Sounds.lua +++ b/WarWithin/TheDawnbreaker/Options/Sounds.lua @@ -48,4 +48,5 @@ BigWigs:AddSounds("The Dawnbreaker Trash", { [451102] = "alert", [451107] = "alarm", [451117] = "alarm", + [451119] = {"alarm","alert"}, }) diff --git a/WarWithin/TheDawnbreaker/Trash.lua b/WarWithin/TheDawnbreaker/Trash.lua index c59a20549..2dc5b0a94 100644 --- a/WarWithin/TheDawnbreaker/Trash.lua +++ b/WarWithin/TheDawnbreaker/Trash.lua @@ -69,6 +69,7 @@ function mod:GetOptions() 451091, -- Plant Arathi Bomb -- Ascendant Vis'coxria 451102, -- Shadowy Decay + {451119, "ME_ONLY"}, -- Abyssal Blast -- Deathscreamer Iken'tak 450854, -- Dark Orb -- Ixkreten the Unbreakable @@ -139,6 +140,9 @@ function mod:OnBossEnable() -- Arathi Bomb self:Log("SPELL_CAST_START", "PlantArathiBomb", 451091) + -- Ascendant Vis'coxria / Deathscreamer Iken'tak / Ixkreten the Unbreakable + self:Log("SPELL_CAST_START", "AbyssalBlast", 451119) + -- Ascendant Vis'coxria self:Log("SPELL_CAST_START", "ShadowyDecay", 451102) self:Death("AscendantViscoxriaDeath", 211261) @@ -314,6 +318,33 @@ function mod:PlantArathiBomb(args) self:Bar(args.spellId, 15, CL.explosion) end +-- Ascendant Vis'coxria / Deathscreamer Iken'tak / Ixkreten the Unbreakable + +do + local function printTarget(self, name, guid) + self:TargetMessage(451119, "red", name, CL.casting:format(self:SpellName(451119))) + if self:Me(guid) then + self:PlaySound(451119, "alarm", nil, name) + else + self:PlaySound(451119, "alert", nil, name) + end + end + + function mod:AbyssalBlast(args) + self:GetUnitTarget(printTarget, 0.2, args.sourceGUID) + self:CDBar(args.spellId, 10.9) + -- reschedule timer cancellations + local mobId = self:MobId(args.sourceGUID) + if mobId == 211261 then -- Ascendant Vis'coxria + self:AbyssalBlastAscendantViscoxria() + elseif mobId == 211263 then -- Deathscreamer Iken'tak + self:AbyssalBlastDeathscreamerIkentak() + else -- 211262, Ixkreten the Unbreakable + self:AbyssalBlastIxkretenTheUnbreakable() + end + end +end + -- Ascendant Vis'coxria do @@ -329,11 +360,19 @@ do timer = self:ScheduleTimer("AscendantViscoxriaDeath", 30) end + function mod:AbyssalBlastAscendantViscoxria() + if timer then + self:CancelTimer(timer) + end + timer = self:ScheduleTimer("AscendantViscoxriaDeath", 30) + end + function mod:AscendantViscoxriaDeath() if timer then self:CancelTimer(timer) timer = nil end + self:StopBar(451119) -- Abyssal Blast self:StopBar(451102) -- Shadowy Decay end end @@ -353,11 +392,19 @@ do timer = self:ScheduleTimer("DeathscreamerIkentakDeath", 30) end + function mod:AbyssalBlastDeathscreamerIkentak() + if timer then + self:CancelTimer(timer) + end + timer = self:ScheduleTimer("DeathscreamerIkentakDeath", 30) + end + function mod:DeathscreamerIkentakDeath() if timer then self:CancelTimer(timer) timer = nil end + self:StopBar(451119) -- Abyssal Blast self:StopBar(450854) -- Dark Orb end end @@ -377,11 +424,19 @@ do timer = self:ScheduleTimer("IxkretenTheUnbreakableDeath", 30) end + function mod:AbyssalBlastIxkretenTheUnbreakable() + if timer then + self:CancelTimer(timer) + end + timer = self:ScheduleTimer("IxkretenTheUnbreakableDeath", 30) + end + function mod:IxkretenTheUnbreakableDeath() if timer then self:CancelTimer(timer) timer = nil end + self:StopBar(451119) -- Abyssal Blast self:StopBar(451117) -- Terrifying Slam end end