|
|
|
|
local mod = DBM:NewMod("CastleNathriaTrash", "DBM-CastleNathria", 1)
|
|
|
|
|
local L = mod:GetLocalizedStrings()
|
|
|
|
|
|
|
|
|
|
mod:SetRevision("20200816003541")
|
|
|
|
|
--mod:SetModelID(47785)
|
|
|
|
|
mod.isTrashMod = true
|
|
|
|
|
|
|
|
|
|
mod:RegisterEvents(
|
|
|
|
|
-- "SPELL_CAST_START",
|
|
|
|
|
"SPELL_AURA_APPLIED 339525 339607 339528",
|
|
|
|
|
"SPELL_AURA_APPLIED_DOSE 339528",
|
|
|
|
|
"SPELL_AURA_REMOVED 339525"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
--TODO, icon mark shared suffering? Maybe when they fix ENCOUNTER_START, for now I don't want to risk trash mod messing with a boss mods icon marking
|
|
|
|
|
--Lady's Trash, minus bottled anima, which will need a unit event to detect it looks like
|
|
|
|
|
local warnConcentrateAnima = mod:NewTargetNoFilterAnnounce(339525, 3)
|
|
|
|
|
local warnSharedSuffering = mod:NewTargetNoFilterAnnounce(339607, 3)
|
|
|
|
|
local warnWarpedDesires = mod:NewStackAnnounce(339528, 2, nil, "Tank|Healer")
|
|
|
|
|
|
|
|
|
|
local specWarnConcentrateAnima = mod:NewSpecialWarningMoveAway(310780, nil, nil, nil, 1, 2)
|
|
|
|
|
local yellConcentrateAnima = mod:NewYell(339525)
|
|
|
|
|
local yellConcentrateAnimaFades = mod:NewShortFadesYell(339525)
|
|
|
|
|
local specWarnSharedSuffering = mod:NewSpecialWarningYou(339607, nil, nil, nil, 1, 2)
|
|
|
|
|
--local specWarnDirgefromBelow = mod:NewSpecialWarningInterrupt(310839, "HasInterrupt", nil, nil, 1, 2)
|
|
|
|
|
|
|
|
|
|
--local playerName = UnitName("player")
|
|
|
|
|
|
|
|
|
|
--Antispam IDs for this mod: 1 run away, 2 dodge, 3 dispel, 4 incoming damage, 5 you/role, 6 misc
|
|
|
|
|
--[[
|
|
|
|
|
function mod:SPELL_CAST_START(args)
|
|
|
|
|
local spellId = args.spellId
|
|
|
|
|
if spellId == 310780 and self:AntiSpam(5, 2) then
|
|
|
|
|
|
|
|
|
|
elseif spellId == 310839 and self:CheckInterruptFilter(args.sourceGUID, false, true) then
|
|
|
|
|
specWarnDirgefromBelow:Show(args.sourceName)
|
|
|
|
|
specWarnDirgefromBelow:Play("kickcast")
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
--]]
|
|
|
|
|
|
|
|
|
|
function mod:SPELL_AURA_APPLIED(args)
|
|
|
|
|
if not self.Options.Enabled then return end
|
|
|
|
|
local spellId = args.spellId
|
|
|
|
|
if spellId == 339525 then
|
|
|
|
|
if args:IsPlayer() then
|
|
|
|
|
specWarnConcentrateAnima:Show()
|
|
|
|
|
specWarnConcentrateAnima:Play("runout")
|
|
|
|
|
yellConcentrateAnima:Yell()
|
|
|
|
|
yellConcentrateAnimaFades:Countdown(spellId)
|
|
|
|
|
else
|
|
|
|
|
warnConcentrateAnima:Show(args.destName)
|
|
|
|
|
end
|
|
|
|
|
elseif spellId == 339607 then
|
|
|
|
|
warnSharedSuffering:CombinedShow(0.5, args.destName)
|
|
|
|
|
if args:IsPlayer() then
|
|
|
|
|
specWarnSharedSuffering:Show()
|
|
|
|
|
specWarnSharedSuffering:Play("targetyou")
|
|
|
|
|
end
|
|
|
|
|
elseif spellId == 339528 then
|
|
|
|
|
local amount = args.amount or 1
|
|
|
|
|
warnWarpedDesires:Show(args.destName, amount)
|
|
|
|
|
--TODO, swaps?
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
mod.SPELL_AURA_APPLIED_DOSE = mod.SPELL_AURA_APPLIED
|
|
|
|
|
|
|
|
|
|
function mod:SPELL_AURA_REMOVED(args)
|
|
|
|
|
local spellId = args.spellId
|
|
|
|
|
if spellId == 339525 and args:IsPlayer() then
|
|
|
|
|
yellConcentrateAnimaFades:Cancel()
|
|
|
|
|
end
|
|
|
|
|
end
|