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.
96 lines
3.0 KiB
96 lines
3.0 KiB
|
|
--------------------------------------------------------------------------------
|
|
-- Module Declaration
|
|
--
|
|
|
|
local mod, CL = BigWigs:NewBoss("Wrath of Azshara", 1456, 1492)
|
|
if not mod then return end
|
|
mod:RegisterEnableMob(96028)
|
|
mod.engageId = 1814
|
|
|
|
--------------------------------------------------------------------------------
|
|
-- Locals
|
|
--
|
|
|
|
local p2 = false
|
|
|
|
--------------------------------------------------------------------------------
|
|
-- Initialization
|
|
--
|
|
|
|
function mod:GetOptions()
|
|
return {
|
|
192706, -- Arcane Bomb
|
|
192617, -- Massive Deluge
|
|
192675, -- Mystic Tornado
|
|
192985, -- Cry of Wrath
|
|
{197365, "SAY", "ICON"}, -- Crushing Depths
|
|
}, {
|
|
[197365] = "heroic",
|
|
}
|
|
end
|
|
|
|
function mod:OnBossEnable()
|
|
self:RegisterEvent("CHAT_MSG_RAID_BOSS_EMOTE")
|
|
|
|
self:Log("SPELL_CAST_START", "MassiveDeluge", 192617)
|
|
self:Log("SPELL_CAST_SUCCESS", "CryOfWrath", 192985)
|
|
self:Log("SPELL_CAST_START", "CrushingDepths", 197365) -- Heroic+
|
|
self:Log("SPELL_CAST_SUCCESS", "CrushingDepthsEnd", 197365)
|
|
|
|
self:RegisterUnitEvent("UNIT_SPELLCAST_SUCCEEDED", nil, "boss1")
|
|
end
|
|
|
|
function mod:OnEngage()
|
|
p2 = false
|
|
self:CDBar(192706, self:Normal() and 23 or 26) -- Arcane Bomb
|
|
self:CDBar(192617, 12) -- Massive Deluge
|
|
self:CDBar(197365, 20) -- Crushing Depths
|
|
self:CDBar(192675, 8) -- Mystic Tornado
|
|
end
|
|
|
|
--------------------------------------------------------------------------------
|
|
-- Event Handlers
|
|
--
|
|
|
|
function mod:CHAT_MSG_RAID_BOSS_EMOTE(_, msg, _, _, _, unit) -- Arcane Bomb
|
|
if msg:find("192708", nil, true) then -- Fires with _START, target scanning doesn't work.
|
|
self:TargetMessageOld(192706, unit, "red", "alarm")
|
|
self:CDBar(192706, p2 and 23 or 30) -- pull:23.1, 30.4, 23.1 / hc pull:39.7 / hc pull:26.7, 31.2, 23.1 / m pull:26.4, 30.4, 30.4, 36.5 XXX
|
|
end
|
|
end
|
|
|
|
function mod:MassiveDeluge(args)
|
|
self:MessageOld(args.spellId, "yellow", self:Tank() and "warning")
|
|
self:CDBar(args.spellId, self:Normal() and 51 or 56) -- pull:12.1, 51.0 / hc pull:12.1, 55.9 / m pull:12.2, 59.1, 35.3 XXX
|
|
end
|
|
|
|
function mod:CryOfWrath(args)
|
|
p2 = true
|
|
self:MessageOld(args.spellId, "green", "long", CL.percent:format(10, args.spellName))
|
|
end
|
|
|
|
do
|
|
local function printTarget(self, player, guid)
|
|
if self:Me(guid) then
|
|
self:Say(197365)
|
|
end
|
|
self:SecondaryIcon(197365, player)
|
|
self:TargetMessageOld(197365, player, "red", "alarm", nil, nil, true)
|
|
end
|
|
function mod:CrushingDepths(args) -- Heroic+
|
|
self:GetBossTarget(printTarget, 0.4, args.sourceGUID)
|
|
self:CDBar(args.spellId, 41) -- pull:20.8, 41.3 / m pull:20.3, 59.5, 36.5 XXX
|
|
end
|
|
function mod:CrushingDepthsEnd(args)
|
|
self:SecondaryIcon(args.spellId)
|
|
end
|
|
end
|
|
|
|
function mod:UNIT_SPELLCAST_SUCCEEDED(_, _, _, spellId)
|
|
if spellId == 192680 then -- Mystic Tornado
|
|
self:MessageOld(192675, "orange", "alert", CL.near:format(self:SpellName(192675)))
|
|
self:CDBar(192675, p2 and 15 or 25) -- hc pull:8.5, 26.3, 15.8 / m pull:8.6, 25.1, 34.0, 18.2, 15.8, 20.7, 15.8
|
|
end
|
|
end
|
|
|
|
|