From c258e45f2b7946cf5966f09888a33286306aaac2 Mon Sep 17 00:00:00 2001 From: Nick Towle Date: Sun, 3 Nov 2024 18:15:37 -0500 Subject: [PATCH 1/3] Classic/ZulFarrak/NekrumAndSezzziz: Add boss module --- Classic/ZulFarrak/NekrumAndSezzziz.lua | 110 +++++++++++++++++++++++-- Classic/ZulFarrak/Options/Colors.lua | 4 + Classic/ZulFarrak/Options/Sounds.lua | 4 + 3 files changed, 113 insertions(+), 5 deletions(-) diff --git a/Classic/ZulFarrak/NekrumAndSezzziz.lua b/Classic/ZulFarrak/NekrumAndSezzziz.lua index 1c3553e7f..1f7caea70 100644 --- a/Classic/ZulFarrak/NekrumAndSezzziz.lua +++ b/Classic/ZulFarrak/NekrumAndSezzziz.lua @@ -8,30 +8,130 @@ mod:RegisterEnableMob(7796, 7275) -- Nekrum Gutchewer, Shadowpriest Sezz'ziz mod:SetEncounterID(598) --mod:SetRespawnTime(0) -- resets, doesn't respawn +-------------------------------------------------------------------------------- +-- Locals +-- + +local deaths = 0 + -------------------------------------------------------------------------------- -- Initialization -- function mod:GetOptions() return { + -- Nekrum Gutchewer + {8600, "DISPEL"}, -- Fevered Plague + -- Shadow Priest Sezz'ziz + 13704, -- Psychic Scream + {8362, "DISPEL"}, -- Renew + 12039, -- Heal + }, { + [8600] = -5019, -- Nekrum Gutchewer + [13704] = -5020, -- Shadow Priest Sezz'ziz } end function mod:OnBossEnable() - if self:Retail() then - self:RegisterEvent("ENCOUNTER_START") -- XXX no boss frames + -- Nekrum Gutchewer + self:Log("SPELL_CAST_START", "FeveredPlague", 8600) + self:Log("SPELL_AURA_APPLIED", "FeveredPlagueApplied", 8600) + + -- Shadow Priest Sezz'ziz + self:Log("SPELL_CAST_START", "PsychicScream", 13704) + self:Log("SPELL_CAST_START", "Renew", 8362) + self:Log("SPELL_INTERRUPT", "RenewInterrupt", 8362) + self:Log("SPELL_CAST_SUCCESS", "RenewSuccess", 8362) + self:Log("SPELL_AURA_APPLIED", "RenewApplied", 8362) + self:Log("SPELL_CAST_START", "Heal", 12039) + self:Log("SPELL_INTERRUPT", "HealInterrupt", 12039) + self:Log("SPELL_CAST_SUCCESS", "HealSuccess", 12039) + + if self:Heroic() then -- no encounter events in Timewalking + self:RegisterEvent("INSTANCE_ENCOUNTER_ENGAGE_UNIT", "CheckBossStatus") end + self:Death("BossDeath", 7796, 7275) end function mod:OnEngage() + deaths = 0 + self:CDBar(8600, 6.1) -- Fevered Plague + self:CDBar(13704, 17.0) -- Psychic Scream end -------------------------------------------------------------------------------- -- Event Handlers -- -function mod:ENCOUNTER_START(_, id) -- XXX no boss frames - if id == self.engageId then - self:Engage() +-- Nekrum Gutchewer + +function mod:FeveredPlague(args) + if self:MobId(args.sourceGUID) == 7796 then -- Nekrum Gutchewer + self:Message(args.spellId, "yellow", CL.casting:format(args.spellName)) + self:CDBar(args.spellId, 13.4) + self:PlaySound(args.spellId, "alert") + end +end + +function mod:FeveredPlagueApplied(args) + if self:Me(args.destGUID) or self:Dispeller("disease", nil, args.spellId) + and self:MobId(args.sourceGUID) == 7796 then -- Nekrum Gutchewer + self:TargetMessage(args.spellId, "orange", args.destName) + self:PlaySound(args.spellId, "alarm", nil, args.destName) + end +end + +-- Shadow Priest Sezz'ziz + +function mod:PsychicScream(args) + self:Message(args.spellId, "yellow") + self:CDBar(args.spellId, 27.9) + self:PlaySound(args.spellId, "info") +end + +function mod:Renew(args) + self:Message(args.spellId, "orange", CL.casting:format(args.spellName)) + self:PlaySound(args.spellId, "alert") +end + +function mod:RenewInterrupt() + self:CDBar(8362, 19.9) +end + +function mod:RenewSuccess(args) + self:CDBar(args.spellId, 19.9) +end + +function mod:RenewApplied(args) + if self:Dispeller("magic", true, args.spellId) and self:Hostile(args.destFlags) then + self:Message(args.spellId, "yellow", CL.on:format(args.spellName, args.destName)) + self:PlaySound(args.spellId, "alarm", nil, args.destName) + end +end + +function mod:Heal(args) + self:Message(args.spellId, "red", CL.casting:format(args.spellName)) + self:PlaySound(args.spellId, "alert") +end + +function mod:HealInterrupt() + self:CDBar(12039, 10.3) +end + +function mod:HealSuccess(args) + self:CDBar(args.spellId, 10.3) +end + +function mod:BossDeath(args) + deaths = deaths + 1 + if self:Heroic() and deaths == 2 then -- no encounter events in Timewalking + deaths = 0 + self:Win() + elseif self:MobId(args.destGUID) == 7796 then -- Nekrum Gutchewer + self:StopBar(8600) -- Fevered Plague + else -- 7275, Shadowpriest Sezz'ziz + self:StopBar(13704) -- Psychic Scream + self:StopBar(8362) -- Renew + self:StopBar(12039) -- Heal end end diff --git a/Classic/ZulFarrak/Options/Colors.lua b/Classic/ZulFarrak/Options/Colors.lua index b7fac6563..a1f7e96b7 100644 --- a/Classic/ZulFarrak/Options/Colors.lua +++ b/Classic/ZulFarrak/Options/Colors.lua @@ -15,6 +15,10 @@ BigWigs:AddColors("Gahz'rilla", { }) BigWigs:AddColors("Nekrum & Sezz'ziz", { + [8362] = {"orange","yellow"}, + [8600] = {"blue","orange","yellow"}, + [12039] = "red", + [13704] = "yellow", }) BigWigs:AddColors("Chief Ukorz Sandscalp", { diff --git a/Classic/ZulFarrak/Options/Sounds.lua b/Classic/ZulFarrak/Options/Sounds.lua index e3f956078..fd183108d 100644 --- a/Classic/ZulFarrak/Options/Sounds.lua +++ b/Classic/ZulFarrak/Options/Sounds.lua @@ -15,6 +15,10 @@ BigWigs:AddSounds("Gahz'rilla", { }) BigWigs:AddSounds("Nekrum & Sezz'ziz", { + [8362] = {"alarm","alert"}, + [8600] = {"alarm","alert"}, + [12039] = "alert", + [13704] = "info", }) BigWigs:AddSounds("Chief Ukorz Sandscalp", { From 33b05e54fdf5bf58e18a147d2ef4cc438d78382d Mon Sep 17 00:00:00 2001 From: Nick Towle Date: Sun, 3 Nov 2024 19:28:45 -0500 Subject: [PATCH 2/3] tweak --- Classic/ZulFarrak/NekrumAndSezzziz.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Classic/ZulFarrak/NekrumAndSezzziz.lua b/Classic/ZulFarrak/NekrumAndSezzziz.lua index 1f7caea70..a95985c72 100644 --- a/Classic/ZulFarrak/NekrumAndSezzziz.lua +++ b/Classic/ZulFarrak/NekrumAndSezzziz.lua @@ -127,7 +127,7 @@ function mod:BossDeath(args) if self:Heroic() and deaths == 2 then -- no encounter events in Timewalking deaths = 0 self:Win() - elseif self:MobId(args.destGUID) == 7796 then -- Nekrum Gutchewer + elseif args.mobId == 7796 then -- Nekrum Gutchewer self:StopBar(8600) -- Fevered Plague else -- 7275, Shadowpriest Sezz'ziz self:StopBar(13704) -- Psychic Scream From 549bc98c5e9ecffacb54cf045628f677f8c6dfe3 Mon Sep 17 00:00:00 2001 From: Nick Towle Date: Sun, 3 Nov 2024 19:39:19 -0500 Subject: [PATCH 3/3] tweak --- Classic/ZulFarrak/NekrumAndSezzziz.lua | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Classic/ZulFarrak/NekrumAndSezzziz.lua b/Classic/ZulFarrak/NekrumAndSezzziz.lua index a95985c72..921baccbd 100644 --- a/Classic/ZulFarrak/NekrumAndSezzziz.lua +++ b/Classic/ZulFarrak/NekrumAndSezzziz.lua @@ -74,8 +74,7 @@ function mod:FeveredPlague(args) end function mod:FeveredPlagueApplied(args) - if self:Me(args.destGUID) or self:Dispeller("disease", nil, args.spellId) - and self:MobId(args.sourceGUID) == 7796 then -- Nekrum Gutchewer + if (self:Me(args.destGUID) or self:Dispeller("disease", nil, args.spellId)) and self:MobId(args.sourceGUID) == 7796 then -- Nekrum Gutchewer self:TargetMessage(args.spellId, "orange", args.destName) self:PlaySound(args.spellId, "alarm", nil, args.destName) end