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.
101 lines
3.1 KiB
101 lines
3.1 KiB
local mod = DBM:NewMod(738, "DBM-Party-MoP", 6, 324)
|
|
local L = mod:GetLocalizedStrings()
|
|
|
|
mod.statTypes = "normal,heroic,challenge,timewalker"
|
|
|
|
mod:SetRevision("20240622200108")
|
|
mod:SetCreatureID(61634)
|
|
mod:SetEncounterID(1502)
|
|
mod:SetZone(1011)
|
|
|
|
mod:RegisterCombat("combat")
|
|
|
|
mod:RegisterEvents(
|
|
"SPELL_AURA_REMOVED 120402 120759",
|
|
-- "CHAT_MSG_MONSTER_YELL",
|
|
"RAID_BOSS_EMOTE"
|
|
)
|
|
|
|
mod:RegisterEventsInCombat(
|
|
"SPELL_AURA_APPLIED 120759",
|
|
"SPELL_CAST_START 120789"
|
|
)
|
|
|
|
mod:RegisterEvents(
|
|
"GOSSIP_SHOW"
|
|
)
|
|
|
|
local warnCausticTar = mod:NewSpellAnnounce(-6278, 2)--Announce a tar is ready to be used. (may be spammy and turned off by default if it is)
|
|
local warnBombard = mod:NewSpellAnnounce(120200, 3)
|
|
local warnDashingStrike = mod:NewSpellAnnounce(120789, 3)
|
|
local warnThousandBlades = mod:NewSpellAnnounce(120759, 4)
|
|
|
|
local specWarnThousandBlades = mod:NewSpecialWarningRun(120759, "Melee", nil, 2, 4, 2)
|
|
|
|
--local timerWaveCD = mod:NewTimer(12, "TimerWave", 69076)--Not wave timers in traditional sense. They are non stop, this is for when he activates certain mob types.
|
|
local timerBombard = mod:NewBuffActiveTimer(15, 120200, nil, nil, 6)
|
|
local timerBombardCD = mod:NewCDTimer(42, 120200, nil, nil, nil, 3)
|
|
local timerDashingStrikeCD = mod:NewCDTimer(13.5, 120789, nil, nil, nil, 3)--14-16 second variation
|
|
--local timerThousandBladesCD = mod:NewCDTimer(15, 120759, nil, nil, nil, 2)
|
|
local timerThousandBlades = mod:NewBuffActiveTimer(4, 120759, nil, nil, nil, 2)
|
|
|
|
mod:AddGossipOption(true, "Encounter")
|
|
|
|
--local Swarmers = DBM:EJ_GetSectionInfo(6280)
|
|
--local Demolishers = DBM:EJ_GetSectionInfo(6282)
|
|
--local Warriors = DBM:EJ_GetSectionInfo(6283)
|
|
|
|
function mod:SPELL_AURA_APPLIED(args)
|
|
if args.spellId == 120759 then
|
|
warnThousandBlades:Show()
|
|
if self.Options.SpecWarn120759run then
|
|
specWarnThousandBlades:Show()
|
|
specWarnThousandBlades:Play("justrun")
|
|
else
|
|
warnThousandBlades:Show()
|
|
end
|
|
timerThousandBlades:Start()
|
|
end
|
|
end
|
|
|
|
function mod:SPELL_CAST_START(args)
|
|
if args.spellId == 120789 then
|
|
warnDashingStrike:Show()
|
|
timerDashingStrikeCD:Start()
|
|
end
|
|
end
|
|
|
|
function mod:SPELL_AURA_REMOVED(args)
|
|
if args.spellId == 120402 then-- NPC only buff, player's buff is 123032
|
|
warnCausticTar:Show()
|
|
elseif args.spellId == 120759 then
|
|
--timerThousandBladesCD:Start()
|
|
end
|
|
end
|
|
|
|
--[[
|
|
function mod:CHAT_MSG_MONSTER_YELL(msg)
|
|
if msg == L.WaveStart or msg:find(L.WaveStart) then -- all timer and mob not confirmed, maybe useless.
|
|
timerWaveCD:Start(8, Swarmers)
|
|
timerWaveCD:Start(65, Demolishers)
|
|
timerWaveCD:Start(102, Swarmers..", "..Warriors)
|
|
timerWaveCD:Start(160, Demolishers..", "..Warriors)
|
|
end
|
|
end--]]
|
|
|
|
function mod:RAID_BOSS_EMOTE(msg)
|
|
if msg:find("spell:120559") then -- Bombard seems to be not related with wave status.
|
|
warnBombard:Show()
|
|
timerBombard:Start()
|
|
timerBombardCD:Start()
|
|
end
|
|
end
|
|
|
|
function mod:GOSSIP_SHOW()
|
|
local gossipOptionID = self:GetGossipID()
|
|
if gossipOptionID then
|
|
if self.Options.AutoGossipEncounter and gossipOptionID == 61620 then
|
|
self:SelectGossip(gossipOptionID, true)
|
|
end
|
|
end
|
|
end
|
|
|