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.
88 lines
3.3 KiB
88 lines
3.3 KiB
local mod = DBM:NewMod(335, "DBM-Party-MoP", 1, 313)
|
|
local L = mod:GetLocalizedStrings()
|
|
|
|
mod.statTypes = "normal,heroic,challenge,timewalker"
|
|
|
|
mod:SetRevision("20230504231118")
|
|
mod:SetCreatureID(56439)
|
|
mod:SetEncounterID(1439)
|
|
mod:SetHotfixNoticeRev(20230103000000)
|
|
mod.sendMainBossGUID = true
|
|
|
|
mod:RegisterCombat("combat")
|
|
|
|
mod:RegisterEventsInCombat(
|
|
"SPELL_CAST_SUCCESS 106113",--106736
|
|
"SPELL_AURA_APPLIED 117665 106113 110099",
|
|
"SPELL_AURA_REMOVED 117665 106113"
|
|
)
|
|
|
|
--[[
|
|
(ability.id = 106736 or ability.id = 106113) and type = "cast"
|
|
or ability.id = 117665 and (type = "begincast" or type = "removebuff")
|
|
or type = "dungeonencounterstart" or type = "dungeonencounterend"
|
|
--]]
|
|
--NOTE, 106736 no longer in combat log
|
|
--TODO, verify bounds of reality on more logs, including non mythic+
|
|
--local warnWitherWill = mod:NewSpellAnnounce(106736, 3, nil, false, 2)
|
|
local warnBoundsOfReality = mod:NewSpellAnnounce(117665, 3)
|
|
local warnTouchofNothingness = mod:NewTargetAnnounce(106113, 3)
|
|
|
|
local specWarnTouchOfNothingness = mod:NewSpecialWarningMoveAway(106113, nil, nil, nil, 2, 2)
|
|
local yellTouchOfNothingness = mod:NewYell(106113)
|
|
local specWarnTouchOfNothingnessDispel = mod:NewSpecialWarningDispel(106113, "RemoveMagic", nil, nil, 1, 2)
|
|
local specWarnShadowsOfDoubt = mod:NewSpecialWarningGTFO(110099, nil, nil, nil, 1, 8)--Actually used by his trash, but in a speed run, you tend to pull it all together
|
|
|
|
local timerTouchofNothingnessCD = mod:NewCDTimer(20.2, 106113, nil, nil, 3, 3, nil, DBM_COMMON_L.MAGIC_ICON)--15.5~20 second variations.
|
|
local timerTouchofNothingness = mod:NewTargetTimer(30, 106113, nil, false, 2, 5, nil, DBM_COMMON_L.MAGIC_ICON)
|
|
local timerBoundsOfRealityCD = mod:NewCDTimer(58.2, 117665, nil, nil, nil, 6)
|
|
local timerBoundsOfReality = mod:NewBuffFadesTimer(30, 117665, nil, nil, nil, 6)
|
|
|
|
function mod:OnCombatStart(delay)
|
|
timerTouchofNothingnessCD:Start(10.9-delay)
|
|
timerBoundsOfRealityCD:Start(20.3-delay)
|
|
end
|
|
|
|
|
|
function mod:SPELL_CAST_SUCCESS(args)
|
|
if args.spellId == 106113 then
|
|
timerTouchofNothingnessCD:Start()
|
|
-- elseif args.spellId == 106736 then
|
|
-- warnWitherWill:Show()
|
|
end
|
|
end
|
|
|
|
|
|
function mod:SPELL_AURA_APPLIED(args)
|
|
if args.spellId == 117665 then
|
|
warnBoundsOfReality:Show()
|
|
timerTouchofNothingnessCD:Cancel()
|
|
timerBoundsOfReality:Start()
|
|
timerBoundsOfRealityCD:Start(self:IsMythicPlus() and 68.2 or 58.2)--TODO, confirm if non mythic plus still 58
|
|
elseif args.spellId == 106113 then
|
|
-- if self:AntiSpam() then
|
|
-- timerTouchofNothingnessCD:Start()
|
|
-- end
|
|
if args:IsPlayer() then
|
|
specWarnTouchOfNothingness:Show()
|
|
specWarnTouchOfNothingness:Play("scatter")
|
|
yellTouchOfNothingness:Yell()
|
|
elseif self:CheckDispelFilter("magic") then
|
|
specWarnTouchOfNothingnessDispel:CombinedShow(1, args.destName)
|
|
specWarnTouchOfNothingnessDispel:ScheduleVoice(1, "helpdispel")
|
|
end
|
|
warnTouchofNothingness:CombinedShow(0.8, args.destName)
|
|
timerTouchofNothingness:Start(args.destName)
|
|
elseif args.spellId == 110099 and args:IsPlayer() then
|
|
specWarnShadowsOfDoubt:Show(args.spellName)
|
|
specWarnShadowsOfDoubt:Play("watchfeet")
|
|
end
|
|
end
|
|
|
|
function mod:SPELL_AURA_REMOVED(args)
|
|
if args.spellId == 117665 then
|
|
timerBoundsOfReality:Cancel()
|
|
elseif args.spellId == 106113 then
|
|
timerTouchofNothingness:Cancel(args.destName)
|
|
end
|
|
end
|
|
|