|
|
|
|
local mod = DBM:NewMod(2097, "DBM-Party-BfA", 9, 1002)
|
|
|
|
|
local L = mod:GetLocalizedStrings()
|
|
|
|
|
|
|
|
|
|
mod:SetRevision("20240417180519")
|
|
|
|
|
mod:SetCreatureID(127479)
|
|
|
|
|
mod:SetEncounterID(2101)
|
|
|
|
|
|
|
|
|
|
mod:RegisterCombat("combat")
|
|
|
|
|
|
|
|
|
|
mod:RegisterEventsInCombat(
|
|
|
|
|
"SPELL_CAST_START 257092 257608 257495",
|
|
|
|
|
"CHAT_MSG_RAID_BOSS_EMOTE"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
--TODO, figure out why cast time for upheavel isn't honoring 5 second pre coded
|
|
|
|
|
local warnUpheavel = mod:NewTargetNoFilterAnnounce(257617, 2)
|
|
|
|
|
local warnUpheavelCast = mod:NewCastAnnounce(257617, 2, 5)--Cast time until we have a target
|
|
|
|
|
|
|
|
|
|
local specWarnSandTrap = mod:NewSpecialWarningDodge(257092, nil, nil, nil, 2, 2)
|
|
|
|
|
local specWarnUpheavel = mod:NewSpecialWarningYou(257617, nil, nil, nil, 2, 2)
|
|
|
|
|
local yellUpheavel = mod:NewYell(257617)
|
|
|
|
|
local specWarnSandstorm = mod:NewSpecialWarningSpell(257495, nil, nil, nil, 2, 2)
|
|
|
|
|
|
|
|
|
|
--local timerReapSoulCD = mod:NewNextTimer(13, 194956, nil, nil, nil, 5, nil, DBM_COMMON_L.TANK_ICON..DBM_COMMON_L.DEADLY_ICON)
|
|
|
|
|
local timerSandTrapCD = mod:NewCDTimer(13.2, 257092, nil, nil, nil, 3)--14.2-18.6
|
|
|
|
|
local timerUpheavelCD = mod:NewCDTimer(38.5, 257617, nil, nil, nil, 3)
|
|
|
|
|
local timerSandstormCD = mod:NewCDTimer(34, 257495, nil, nil, nil, 2)--Health based?
|
|
|
|
|
|
|
|
|
|
function mod:OnCombatStart(delay)
|
|
|
|
|
timerSandTrapCD:Start(8.1-delay)
|
|
|
|
|
timerUpheavelCD:Start(20.2-delay)
|
|
|
|
|
timerSandstormCD:Start(30.3-delay)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function mod:SPELL_CAST_START(args)
|
|
|
|
|
local spellId = args.spellId
|
|
|
|
|
if spellId == 257092 then
|
|
|
|
|
specWarnSandTrap:Show()
|
|
|
|
|
specWarnSandTrap:Play("watchstep")
|
|
|
|
|
timerSandTrapCD:Start()
|
|
|
|
|
elseif spellId == 257608 then
|
|
|
|
|
warnUpheavelCast:Show()
|
|
|
|
|
timerUpheavelCD:Start()
|
|
|
|
|
elseif spellId == 257495 then
|
|
|
|
|
specWarnSandstorm:Show()
|
|
|
|
|
specWarnSandstorm:Play("aesoon")
|
|
|
|
|
timerSandstormCD:Start()
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
function mod:CHAT_MSG_RAID_BOSS_EMOTE(msg, _, _, _, targetname)
|
|
|
|
|
if msg:find("spell:257617") then
|
|
|
|
|
if targetname then--Normal, only one person affected, name in emote
|
|
|
|
|
if targetname == UnitName("player") then
|
|
|
|
|
specWarnUpheavel:Show()
|
|
|
|
|
specWarnUpheavel:Play("targetyou")
|
|
|
|
|
yellUpheavel:Yell()
|
|
|
|
|
else
|
|
|
|
|
warnUpheavel:Show(targetname)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end
|