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.
97 lines
2.8 KiB
97 lines
2.8 KiB
|
|
--------------------------------------------------------------------------------
|
|
-- Module Declaration
|
|
--
|
|
|
|
local mod, CL = BigWigs:NewBoss("Doctor Ickus", 2289, 2403)
|
|
if not mod then return end
|
|
mod:RegisterEnableMob(164967) -- Doctor Ickus
|
|
mod.engageId = 2384
|
|
--mod.respawnTime = 30
|
|
|
|
--------------------------------------------------------------------------------
|
|
-- Initialization
|
|
--
|
|
|
|
function mod:GetOptions()
|
|
return {
|
|
322358, -- Burning Strain
|
|
67382, -- Leap // Alternative to use for the boss changing platform
|
|
329217, -- Slime Lunge
|
|
329110, -- Slime Injection
|
|
332617, -- Pestilence Surge
|
|
321406, -- Virulent Explosion
|
|
}
|
|
end
|
|
|
|
function mod:OnBossEnable()
|
|
self:RegisterEvent("CHAT_MSG_RAID_BOSS_EMOTE")
|
|
|
|
self:Log("SPELL_CAST_START", "BurningStrain", 322358)
|
|
self:Log("SPELL_CAST_SUCCESS", "SlimeLunge", 329217)
|
|
self:Log("SPELL_CAST_SUCCESS", "SlimeInjection", 329110)
|
|
self:Log("SPELL_AURA_APPLIED", "SlimeInjectionApplied", 329110)
|
|
self:Log("SPELL_AURA_APPLIED_DOSE", "SlimeInjectionApplied", 329110)
|
|
self:Log("SPELL_AURA_REMOVED", "SlimeInjectionRemoved", 329110)
|
|
self:Log("SPELL_CAST_SUCCESS", "PestilenceSurge", 332617)
|
|
self:Log("SPELL_CAST_START", "VirulentExplosion", 321406)
|
|
self:Death("BombDeath", 169498) -- Plague Bomb
|
|
end
|
|
|
|
function mod:OnEngage()
|
|
self:CDBar(329110, 10) -- Slime Injection
|
|
self:CDBar(67382, 26) -- Leap
|
|
end
|
|
|
|
--------------------------------------------------------------------------------
|
|
-- Event Handlers
|
|
--
|
|
|
|
function mod:CHAT_MSG_RAID_BOSS_EMOTE(_, msg)
|
|
if msg:find("329200") then -- Virulent Explosion
|
|
self:Message(67382, "yellow") -- 'Leap'
|
|
self:PlaySound(67382, "long")
|
|
self:CDBar(67382, 57) -- Leap
|
|
self:CDBar(332617, 10.5) -- Pestilence Surge
|
|
end
|
|
end
|
|
|
|
function mod:BurningStrain(args)
|
|
self:Message(args.spellId, "red")
|
|
self:PlaySound(args.spellId, "alarm")
|
|
end
|
|
|
|
function mod:SlimeLunge(args)
|
|
self:Message(args.spellId, "yellow")
|
|
self:PlaySound(args.spellId, "alarm")
|
|
end
|
|
|
|
function mod:SlimeInjection(args)
|
|
self:CDBar(args.spellId, 20)
|
|
end
|
|
|
|
function mod:SlimeInjectionApplied(args)
|
|
local amount = args.amount or 0
|
|
self:StackMessage(args.spellId, args.destName, args.amount, "purple")
|
|
self:PlaySound(args.spellId, "info")
|
|
end
|
|
|
|
function mod:SlimeInjectionRemoved(args)
|
|
self:Message(args.spellId, "yellow", CL.spawning:format(self:SpellName(-21712))) -- Slithering Ooze
|
|
self:PlaySound(args.spellId, "alert")
|
|
end
|
|
|
|
function mod:PestilenceSurge(args)
|
|
self:Message(args.spellId, "cyan")
|
|
self:PlaySound(args.spellId, "info")
|
|
end
|
|
|
|
function mod:VirulentExplosion(args)
|
|
self:Message(args.spellId, "orange")
|
|
self:PlaySound(args.spellId, "warning")
|
|
self:CastBar(args.spellId, 30)
|
|
end
|
|
|
|
function mod:BombDeath(args)
|
|
self:StopBar(CL.casting:format(self:SpellName(321406))) -- Electric Shroud
|
|
end
|
|
|