Files
coa-dbm/DBM-Sunwell/Trash.lua
T
Szyler 82a9ac0937 Update to 5.21 Sunwell (#6)
* 5.20

* Update to 5.21

---------

Co-authored-by: Szyler <Szyler@Szyler.com>
2024-09-30 20:09:41 -07:00

72 lines
2.3 KiB
Lua

local mod = DBM:NewMod("Trash", "DBM-Sunwell")
local L = mod:GetLocalizedStrings()
mod:SetRevision(("$Revision: 5021 $"):sub(12, -3))
mod:SetCreatureID(25507)
mod:RegisterCombat("combat", 25507)
mod:RegisterEventsInCombat(
"SPELL_CAST_START"
)
-- Fel Chain Lightning (2145224)
-- Chain Lightning (2145227)
-- Electro-Magnetic Pulse (2145228)
local castChainLightning = mod:NewCastTimer(4, 2145227)
local warnChainLightning = mod:NewTargetAnnounce(4, 2145227)
local specWarnChainLightning = mod:NewSpecialWarningYou(2145227)
local timerChainLightning = mod:NewCDTimer(10, 2145227)
local castFelLightning = mod:NewCastTimer(4, 2145224)
local warnFelLightning = mod:NewTargetAnnounce(4, 2145224)
local specWarnFelLightning = mod:NewSpecialWarningYou(2145224)
local timerFelLightning = mod:NewCDTimer(10, 2145224)
local castEMP = mod:NewCastTimer(6, 2145228)
local warnEMP = mod:NewSpellAnnounce(2145228)
local timerEMP = mod:NewNextTimer(45, 2145228)
function mod:ChainLightning()
local targetCL = mod:GetBossTarget(25507)
if targetCL == UnitName("player") then
specWarnChainLightning:Show()
SendChatMessage("Chain Lightning on "..UnitName("PLAYER").."!", "Say")
else
warnChainLightning:Show(targetCL)
end
castChainLightning:Start()
self:SetIcon(targetCL, 6, 4)
end
function mod:FelLightning()
local targetFL = mod:GetBossTarget(25507)
if targetFL == UnitName("player") then
specWarnFelLightning:Show()
SendChatMessage("Chain Lightning on "..UnitName("PLAYER").."!", "Say")
else
warnFelLightning:Show(targetFL)
end
castFelLightning:Start()
self:SetIcon(targetFL, 6, 4)
end
function mod:SPELL_CAST_START(args)
if args:IsSpellID(2145224) and args.sourceName == "Sunwell Protector" then
self:ScheduleMethod(0.2, "FelLightning")
timerFelLightning:Start()
elseif args:IsSpellID(2145227) and args.sourceName == "Sunwell Protector" then
self:ScheduleMethod(0.2, "ChainLightning")
timerChainLightning:Start()
elseif args:IsSpellID(2145228) and args.sourceName == "Sunwell Protector" then
castEMP:Start()
warnEMP:Show()
timerEMP:Start()
end
end
function mod:onCombatEnd()
timerEMP:Cancel()
timerChainLightning:Cancel()
timerFelLightning:Cancel()
end