5.17 + Hyjal from Szyler's Discord
This commit is contained in:
@@ -8,52 +8,40 @@ mod:RegisterEvents(
|
||||
"SPELL_AURA_APPLIED", --This should allow the addon to process this Event using the scripting from Kel'Thuzad for Harvest Soul.
|
||||
"SPELL_AURA_APPLIED_DOSE", --This should allow the addon to process this Event using the scripting from Kel'Thuzad for Harvest Soul.
|
||||
"UNIT_DIED",
|
||||
"PLAYER_ALIVE"
|
||||
"PLAYER_ALIVE",
|
||||
"UNIT_HEALTH",
|
||||
"UNIT_DIED",
|
||||
"CHAT_MSG_MONSTER_YELL"
|
||||
)
|
||||
|
||||
-----ADD DEATHS-----
|
||||
local warnRiderDown = mod:NewAnnounce("Unrelenting Rider Killed", 2, 36461, nil, "Show a warning when an Unrelenting Rider is killed")
|
||||
local warnKnightDown = mod:NewAnnounce("Unrelenting Death Knight Killed", 2, 36461, nil, "Show a warning when an Unrelenting Rider is killed")
|
||||
-----HARVEST SOUL-----
|
||||
local warnHarvestSoon = mod:NewSoonAnnounce(28679, 3)
|
||||
local warnHarvestSoon = mod:NewSoonAnnounce(28679, 2)
|
||||
local warnHarvest = mod:NewSpellAnnounce(28679, 2)
|
||||
local timerHarvest = mod:NewNextTimer(15, 28679)
|
||||
-----COMBAT START----
|
||||
local timerCombatStart = mod:NewTimer(25, "Combat Starts", 2457, nil, "Show timer for the start of combat")
|
||||
local warnCombatStartSoon = mod:NewAnnounce("Combat Starts Soon", 2, 2457, nil, "Show pre-warning for the end of the Safety Dance")
|
||||
local warnCombatStart = mod:NewAnnounce("Combat Starts Now", 3, 2457, nil, "Show warning for the end of the Safety Dance")
|
||||
local warnCombatStart = mod:NewAnnounce("Combat Starts Now", 2, 2457, nil, "Show warning for the end of the Safety Dance")
|
||||
-----GOTHIK ARRIVES----
|
||||
local timerGothik = mod:NewTimer(100, "Gothik Arrives", 46573, nil, "Show timer for the arrival of Gothik")
|
||||
local warnGothikSoon = mod:NewAnnounce("Gothik Arrives Soon", 2, 46573, nil, "Show pre-warning for the arrival of Gothik")
|
||||
local warnGothik = mod:NewAnnounce("Gothik Arrives Now", 3, 46573, nil, "Show warning for the arrival of Gothik")
|
||||
local warnGothik = mod:NewAnnounce("Gothik Arrives Now", 2, 46573, nil, "Show warning for the arrival of Gothik")
|
||||
|
||||
--------MISC--------
|
||||
local phase = nil
|
||||
|
||||
-----BOSS FUNCTIONS-----
|
||||
function mod:OnCombatStart(delay)
|
||||
self:ScheduleMethod(115, "HarvestSoul")
|
||||
-----HARVEST SOUL-----
|
||||
harvestSoulIntiialTimer = 115
|
||||
warnHarvestSoon:Schedule(harvestSoulIntiialTimer-5)
|
||||
warnHarvest:Schedule(harvestSoulIntiialTimer)
|
||||
timerHarvest:Start(harvestSoulIntiialTimer)
|
||||
-----COMBAT START----
|
||||
combatStartTimer = 25
|
||||
timerCombatStart:Start(combatStartTimer)
|
||||
warnCombatStartSoon:Schedule(combatStartTimer-5)
|
||||
warnCombatStart:Schedule(combatStartTimer)
|
||||
-----GOTHIK ARRIVES----
|
||||
gothikTimer = 100
|
||||
timerGothik:Start(gothikTimer)
|
||||
warnGothikSoon:Schedule(gothikTimer-5)
|
||||
warnGothik:Schedule(gothikTimer)
|
||||
|
||||
end
|
||||
|
||||
function mod:HarvestSoul()
|
||||
timer = 15
|
||||
timerHarvest:Start(timer)
|
||||
warnHarvestSoon:Schedule(timer-3, 15)
|
||||
warnHarvest:Schedule(timer)
|
||||
self:ScheduleMethod(timer, "HarvestSoul")
|
||||
timerHarvest:Start(20)
|
||||
warnHarvestSoon:Schedule(17)
|
||||
warnHarvest:Schedule(20)
|
||||
self:ScheduleMethod(20, "HarvestSoul")
|
||||
end
|
||||
|
||||
function mod:UNIT_DIED(args)
|
||||
@@ -65,4 +53,35 @@ function mod:UNIT_DIED(args)
|
||||
warnKnightDown:Show()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function mod:CHAT_MSG_MONSTER_YELL(msg)
|
||||
if (msg == L.yell or msg:find(L.yell)) and phase == nil then
|
||||
self:ScheduleMethod(100, "HarvestSoul")
|
||||
phase = 1
|
||||
-----HARVEST SOUL-----
|
||||
warnHarvestSoon:Schedule(115)
|
||||
warnHarvest:Schedule(120)
|
||||
timerHarvest:Start(120)
|
||||
-----COMBAT START----
|
||||
timerCombatStart:Start(25)
|
||||
warnCombatStartSoon:Schedule(20)
|
||||
warnCombatStart:Schedule(25)
|
||||
-----GOTHIK ARRIVES----
|
||||
timerGothik:Start(100)
|
||||
warnGothikSoon:Schedule(95)
|
||||
warnGothik:Schedule(100)
|
||||
end
|
||||
end
|
||||
|
||||
function mod:UNIT_HEALTH(uId)
|
||||
if self:GetUnitCreatureId(uId) == 16060 and UnitHealth(uId) / UnitHealthMax(uId) <= 0.11 and phase ==1 then
|
||||
self:UnscheduleMethod("HarvestSoul")
|
||||
timerHarvest:Stop()
|
||||
phase = 2
|
||||
end
|
||||
end
|
||||
|
||||
function mod:OnCombatEnd()
|
||||
self:UnscheduleMethod("HarvestSoul")
|
||||
end
|
||||
@@ -7,16 +7,39 @@ mod:RegisterCombat("combat", 16063, 16064, 16065, 30549)
|
||||
mod:EnableModel()
|
||||
mod:RegisterEvents(
|
||||
"SPELL_CAST_SUCCESS",
|
||||
"SPELL_CAST_START",
|
||||
"SPELL_AURA_APPLIED",
|
||||
"SPELL_AURA_APPLIED_DOSE",
|
||||
"PLAYER_ALIVE"
|
||||
"PLAYER_ALIVE",
|
||||
"UNIT_DIED"
|
||||
)
|
||||
|
||||
-----MARKS-----
|
||||
local warnMarkSoon = mod:NewAnnounce("WarningMarkSoon", 1, 28835, false)
|
||||
local warnMarkNow = mod:NewAnnounce("WarningMarkNow", 2, 28835)
|
||||
local specWarnMarkOnPlayer = mod:NewSpecialWarning("SpecialWarningMarkOnPlayer", nil, false, true)
|
||||
local specWarnHolyWrathYou = mod:NewSpecialWarningYou(2124141,2)
|
||||
local warnHolyWrath = mod:NewTargetAnnounce(2124141,2)
|
||||
local specWarnDeepChillYou = mod:NewSpecialWarningYou(2124167,2)
|
||||
local warnDeepChill = mod:NewTargetAnnounce(2124167,2)
|
||||
local specWarnMeteorYou = mod:NewSpecialWarningYou(2124128,2)
|
||||
local warnMeteor = mod:NewTargetAnnounce(2124128,2)
|
||||
local specWarnFamineYou = mod:NewSpecialWarningYou(2124166,2)
|
||||
local warnFamine = mod:NewTargetAnnounce(2124166,2)
|
||||
|
||||
----timers----
|
||||
local timerMark = mod:NewTimer(12, "Mark of the Apocalypse", 2124107)
|
||||
local timerHolyWrath = mod:NewTargetTimer(3.8, 2124141)
|
||||
local timerNextHolyWrath = mod:NewNextTimer(20, 2124141)
|
||||
local timerDeepChill = mod:NewTargetTimer(3.8, 2124167)
|
||||
local timerNextDeepChill = mod:NewNextTimer(20, 2124167)
|
||||
local timerMeteor = mod:NewTargetTimer(7.8, 2124128)
|
||||
local timerNextMeteor = mod:NewNextTimer(20, 2124128)
|
||||
local timerFamine = mod:NewTargetTimer(3.8, 2124166)
|
||||
local timerNextFamine = mod:NewNextTimer(20, 2124166)
|
||||
-----MISC-----
|
||||
local berserkTimer = mod:NewBerserkTimer(600)
|
||||
local berserkTimer = mod:NewBerserkTimer(606)
|
||||
local meteorTarget = nil
|
||||
mod:AddBoolOption("HealthFrame", true)
|
||||
mod:SetBossHealthInfo(
|
||||
16064, L.Korthazz,
|
||||
@@ -29,21 +52,120 @@ local markCounter = 0
|
||||
-----BOSS FUNCTIONS-----
|
||||
function mod:OnCombatStart(delay)
|
||||
berserkTimer:Start()
|
||||
timerMark:Start(18-delay)
|
||||
timerNextMeteor:Start(21-delay)
|
||||
timerNextDeepChill:Start(11-delay)
|
||||
timerNextHolyWrath:Start(25-delay)
|
||||
timerNextFamine:Start(16-delay)
|
||||
markCounter = 0
|
||||
end
|
||||
|
||||
function mod:Meteor()
|
||||
local myName = UnitName("player")
|
||||
if meteorTarget == myName then
|
||||
specWarnMeteorYou:Show()
|
||||
SendChatMessage("Meteor on "..UnitName("PLAYER").."!", "Say")
|
||||
else
|
||||
warnMeteor:Show(meteorTarget)
|
||||
end
|
||||
timerMeteor:Start(meteorTarget)
|
||||
timerNextMeteor:Start()
|
||||
self:SetIcon(meteorTarget, 7, 8)
|
||||
end
|
||||
|
||||
function mod:DeepChill()
|
||||
local targetDC = mod:GetBossTarget(30549) or mod:GetBossTarget(26622)
|
||||
if targetDC == UnitName("player") then
|
||||
specWarnDeepChillYou:Show()
|
||||
SendChatMessage("Deep Chill on "..UnitName("PLAYER").."!", "Say")
|
||||
else
|
||||
warnDeepChill:Show(targetDC)
|
||||
end
|
||||
timerDeepChill:Start(targetDC)
|
||||
timerNextDeepChill:Start()
|
||||
self:SetIcon(targetDC, 6, 4)
|
||||
end
|
||||
|
||||
function mod:HolyWrath()
|
||||
local targetHW = mod:GetBossTarget(16063) or mod:GetBossTarget(26624)
|
||||
if targetHW == UnitName("player") then
|
||||
specWarnHolyWrathYou:Show()
|
||||
SendChatMessage("Holy Wrath on "..UnitName("PLAYER").."!", "Say")
|
||||
else
|
||||
warnHolyWrath:Show(targetHW)
|
||||
end
|
||||
timerHolyWrath:Start(targetHW)
|
||||
timerNextHolyWrath:Start()
|
||||
self:SetIcon(targetHW, 1, 4)
|
||||
end
|
||||
|
||||
function mod:Famine()
|
||||
local famineTarget = mod:GetBossTarget(16065) or mod:GetBossTarget(26625) --Finds target of boss (if exsists) otherwise, find target of shade (if exists)
|
||||
if famineTarget == UnitName("player") then --if target == player
|
||||
specWarnFamineYou:Show()
|
||||
SendChatMessage("Field of Famine on "..UnitName("PLAYER").."!", "Say")
|
||||
else
|
||||
warnFamine:Show(famineTarget)
|
||||
end
|
||||
timerFamine:Start(famineTarget) --we want timers to start even if player is the target, you had the timers only in the "if not player".
|
||||
timerNextFamine:Start()
|
||||
self:SetIcon(famineTarget, 3, 4)
|
||||
end
|
||||
|
||||
local markSpam = 0
|
||||
function mod:SPELL_CAST_SUCCESS(args)
|
||||
if args:IsSpellID(28832, 28833, 28834, 28835) and (GetTime() - markSpam) > 5 then
|
||||
if args:IsSpellID(2124103,2124107,2124111,2124115) and (GetTime() - markSpam) > 5 then
|
||||
markSpam = GetTime()
|
||||
markCounter = markCounter + 1
|
||||
end
|
||||
end
|
||||
|
||||
function mod:SPELL_CAST_START(args)
|
||||
if args:IsSpellID(2124141) then
|
||||
self:ScheduleMethod(0.25, "HolyWrath")
|
||||
end
|
||||
if args:IsSpellID(2124167) then
|
||||
self:ScheduleMethod(0.25, "DeepChill")
|
||||
end
|
||||
if args:IsSpellID(2124166) then
|
||||
self:ScheduleMethod(0.25, "Famine")
|
||||
end
|
||||
end
|
||||
|
||||
function mod:SPELL_AURA_APPLIED(args)
|
||||
if args:IsSpellID(2124128) then
|
||||
self:ScheduleMethod(0.25, "Meteor")
|
||||
meteorTarget = args.destName
|
||||
elseif args:IsSpellID(2124103, 2124104, 2124105, 2124106) or args:IsSpellID(2124107, 2124108, 2124109, 2124110) or args:IsSpellID(2124111, 2124112, 2124113, 2124114) or args:IsSpellID(2124115, 2124116, 2124117, 2124118) then
|
||||
timerMark:Start()
|
||||
end
|
||||
end
|
||||
|
||||
function mod:SPELL_AURA_APPLIED_DOSE(args)
|
||||
if args:IsSpellID(28832, 28833, 28834, 28835) and args:IsPlayer() then
|
||||
if args.amount >= 4 then
|
||||
if args:IsSpellID(2124103,2124107,2124111,2124115) and args:IsPlayer() then
|
||||
if args.amount >= 3 then
|
||||
specWarnMarkOnPlayer:Show(args.spellName, args.amount)
|
||||
end
|
||||
elseif args:IsSpellID(2124103, 2124104, 2124105, 2124106) or args:IsSpellID(2124107, 2124108, 2124109, 2124110) or args:IsSpellID(2124111, 2124112, 2124113, 2124114) or args:IsSpellID(2124115, 2124116, 2124117, 2124118) then
|
||||
timerMark:Start()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function mod:UNIT_DIED(args)
|
||||
local cid = self:GetCIDFromGUID(args.destGUID)
|
||||
if cid == 16063 or 26624 then
|
||||
timerNextHolyWrath:Stop()
|
||||
end
|
||||
if cid == 16064 or 26623 then
|
||||
timerNextMeteor:Stop()
|
||||
end
|
||||
if cid == 16065 or 26625 then
|
||||
timerNextFamine:Stop()
|
||||
end
|
||||
if cid == 30549 or 26622 then
|
||||
timerNextDeepChill:Stop()
|
||||
end
|
||||
if cid >= 26622 and cid <= 26625 then
|
||||
timerMark:Stop()
|
||||
end
|
||||
end
|
||||
|
||||
@@ -10,122 +10,156 @@ mod:SetBossHealthInfo(
|
||||
)
|
||||
mod:RegisterEvents(
|
||||
"SPELL_AURA_APPLIED",
|
||||
"SPELL_AURA_APPLIED_DOSE",
|
||||
"SPELL_CAST_SUCCESS",
|
||||
"SPELL_CAST_START",
|
||||
"UNIT_HEALTH",
|
||||
"PLAYER_ALIVE"
|
||||
"UNIT_DIED",
|
||||
"PLAYER_ALIVE",
|
||||
"SPELL_MISSED"
|
||||
)
|
||||
|
||||
-----DISRUPTING SHOUT-----
|
||||
local warnShoutNow = mod:NewSpellAnnounce(29107, 2)
|
||||
local warnShoutSoon = mod:NewSoonAnnounce(29107, 3)
|
||||
local timerShout = mod:NewCDTimer(10, 29107)
|
||||
local warnShoutNowBackup = mod:NewSpellAnnounce(29107, 2)
|
||||
local warnShoutSoonBackup = mod:NewSoonAnnounce(29107, 3)
|
||||
local timerShoutBackup = mod:NewCDTimer(10, 29107)
|
||||
-----SHADOW BURST-----
|
||||
local warnShadowBurstNow = mod:NewSpellAnnounce(1003108, 2)
|
||||
local warnShadowBurstSoon = mod:NewSoonAnnounce(1003108, 3)
|
||||
local timerShadowBurst = mod:NewNextTimer(25, 1003108)
|
||||
local timerShout = mod:NewCDTimer(8, 2123920)
|
||||
-----Break Unholy Blade-----
|
||||
local warnUnholyBladeNow = mod:NewSpellAnnounce(2123928, 2)
|
||||
local warnUnholyBladeSoon = mod:NewSoonAnnounce(2123928, 2)
|
||||
local timerUnholyBlade = mod:NewNextTimer(30, 2123928)
|
||||
local timerCastUnholyBlade = mod:NewCastTimer(3, 2123928)
|
||||
-----JAGGED KNIFE-----
|
||||
local warnKnifeNow = mod:NewTargetAnnounce(55550, 2)
|
||||
local specWarnKnife = mod:NewSpecialWarningSpell(55550, nil, nil, nil, 10)
|
||||
-----BRUISING BLOW-----
|
||||
local warnBlowNow = mod:NewSpellAnnounce(26613, 2)
|
||||
local warnBlowSoon = mod:NewSoonAnnounce(26613, 3)
|
||||
local timerBlow = mod:NewNextTimer(15, 26613)
|
||||
-----CURSE OF FEEBLENESS-----
|
||||
local warnCurseNow = mod:NewSpellAnnounce(1003253, 2)
|
||||
local warnCurseEndSoon = mod:NewSoonAnnounce(1003253, 3)
|
||||
local timerCurse = mod:NewBuffActiveTimer(120, 1003253)
|
||||
local warnKnifeNow = mod:NewTargetAnnounce(2123924, 2)
|
||||
local timerKnife = mod:NewNextTimer(15, 2123924)
|
||||
-----Death Strike-----
|
||||
local timerDeathStrike = mod:NewNextTimer(15,2123919)
|
||||
local warnDeathStrike = mod:NewCastAnnounce(2123919)
|
||||
local specwarnDeathStrike = mod:NewSpecialWarningStack(2123919, 2)
|
||||
--------Strikes--------------
|
||||
local timerPlagueStrike = mod:NewTimer(12, "Plague Strike active", 2123905)
|
||||
local timerFrostStrike = mod:NewTimer(12, "Frost Strike active", 2123904)
|
||||
-----MISC-----
|
||||
local razHealth
|
||||
local prewarn
|
||||
local phase
|
||||
local notKT = 0
|
||||
local warnPhase2 = mod:NewPhaseAnnounce(2)
|
||||
local warnPhase2Soon = mod:NewAnnounce("Prepare to stack for Anti-Magic Zone!", 1, 2123928, nil, "Show pre-warning for Phase 2")
|
||||
local timerenrage = mod:NewTimer(180, "Enrage", 2123914)
|
||||
|
||||
-----PROG NOTES-------
|
||||
--"Brake Unholy Blade" (2123928) - vet ikke timer
|
||||
-- 2123905,"Plague Strike" || SPELL_CAST_SUCCESS
|
||||
--2123919,"Death Strike" || SPELL_CAST_START - vet ikke timer
|
||||
-- 2123920 - Disrupting Shout || vet ikke timer
|
||||
-- Frost Strike - (finn Spell ID). 12 sec, 20sec CD
|
||||
-- finn timer Death Strike
|
||||
-- finn timer Jagged Knife
|
||||
-- finn timer Break Unholy Blade
|
||||
-- fix trigger for p2
|
||||
--
|
||||
|
||||
|
||||
|
||||
-----BOSS FUNCTIONS-----
|
||||
function mod:OnCombatStart(delay)
|
||||
phase = 1
|
||||
prewarn = 1
|
||||
self.vb.phase = 1
|
||||
RealRazuv = 1
|
||||
-----Shout-----
|
||||
warnShoutNow:Schedule(16 - delay)
|
||||
warnShoutSoon:Schedule(11 - delay)
|
||||
timerShout:Start(16 - delay)
|
||||
-----Shadow Burst-----
|
||||
warnShadowBurstNow:Schedule(25-delay)
|
||||
warnShadowBurstSoon:Schedule(20-delay)
|
||||
timerShadowBurst:Start(25-delay)
|
||||
-----Bruising Blow-----
|
||||
warnBlowNow:Schedule(15-delay)
|
||||
warnBlowSoon:Schedule(10-delay)
|
||||
timerBlow:Start(15-delay)
|
||||
-----Break Unholy Blade-----
|
||||
timerUnholyBlade:Start(-delay)
|
||||
if mod:GetBossTarget(16061) ~= nil then
|
||||
timerKnife:Start(-delay)
|
||||
timerDeathStrike:Start(20-delay)
|
||||
end
|
||||
end
|
||||
|
||||
function mod:BreakUnholyBlade()
|
||||
warnUnholyBladeNow:Show()
|
||||
timerUnholyBlade:Start()
|
||||
timerCastUnholyBlade:Start()
|
||||
warnUnholyBladeSoon:Show(25)
|
||||
end
|
||||
|
||||
function mod:DeathStrike()
|
||||
warnDeathStrike:Show()
|
||||
timerDeathStrike:Start()
|
||||
end
|
||||
|
||||
function mod:PhaseTwo()
|
||||
timerDeathStrike:Stop()
|
||||
timerUnholyBlade:Stop()
|
||||
warnPhase2:Show();
|
||||
timerenrage:Start()
|
||||
timerShout:Start(8)
|
||||
timerKnife:Start()
|
||||
end
|
||||
|
||||
function mod:SPELL_AURA_APPLIED(args)
|
||||
if args:IsSpellID(55550) then
|
||||
if args:IsSpellID(2123924,2123925,2123926,2123927) then
|
||||
warnKnifeNow:Show(args.destName)
|
||||
if args:IsPlayer() then
|
||||
specWarnKnife:Show(10);
|
||||
SendChatMessage(L.YellKnife, "YELL")
|
||||
notKT = 1
|
||||
SendChatMessage("Jagged Cold Steel Knife on "..UnitName("PLAYER").."!", "Say")
|
||||
end
|
||||
elseif args:IsSpellID(1003253) then
|
||||
timer = 120
|
||||
warnCurseNow:Schedule(timer)
|
||||
warnCurseEndSoon:Schedule(timer-10)
|
||||
timerCurse:Start(timer)
|
||||
notKT = 1
|
||||
end
|
||||
timerKnife:Start()
|
||||
end
|
||||
if args:IsSpellID(2123914) then
|
||||
self:ScheduleMethod(0,"PhaseTwo")
|
||||
end
|
||||
end
|
||||
|
||||
function mod:SPELL_AURA_APPLIED_DOSE(args)
|
||||
if args:IsSpellID(2123919) and args.amount >=1 then
|
||||
if args:IsPlayer() then
|
||||
specwarnDeathStrike:Show(args.amount)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function mod:SPELL_CAST_SUCCESS(args)
|
||||
if RealRazuv then
|
||||
if args:IsSpellID(26613) then
|
||||
timer = 15
|
||||
warnBlowNow:Schedule(timer)
|
||||
warnBlowSoon:Schedule(timer-5)
|
||||
timerBlow:Start(timer)
|
||||
|
||||
elseif args:IsSpellID(29107) then
|
||||
if notKT == 1 then
|
||||
timer = 10
|
||||
|
||||
self:Unschedule("warnShoutNowBackup")
|
||||
self:Unschedule("warnShoutSoonBackup")
|
||||
timerShoutBackup:Stop()
|
||||
|
||||
warnShoutNow:Schedule(timer)
|
||||
warnShoutSoon:Schedule(timer-3)
|
||||
timerShout:Start(timer)
|
||||
|
||||
warnShoutNowBackup:Schedule(timer*2)
|
||||
warnShoutSoonBackup:Schedule(timer*2-3)
|
||||
timerShoutBackup:Start(timer*2)
|
||||
end
|
||||
if args:IsSpellID(2123905) then
|
||||
timerPlagueStrike:Start()
|
||||
end
|
||||
if args:IsSpellID(2123904) then
|
||||
timerFrostStrike:Start()
|
||||
end
|
||||
end
|
||||
|
||||
function mod:SPELL_DAMAGE(args)
|
||||
if args:IsSpellID(2123928,2123929,2123930,2123931) then
|
||||
phase = 2
|
||||
self.vb.phase = 2
|
||||
self:ScheduleMethod(0,"PhaseTwo")
|
||||
end
|
||||
end
|
||||
|
||||
function mod:SPELL_MISSED(args)
|
||||
if args:IsSpellID(2123920) and (args.destName == "Instructor Razuvious" or args.destName == "Shade of Instructor Razuvious") then
|
||||
timerShout:Start()
|
||||
end
|
||||
end
|
||||
|
||||
function mod:SPELL_CAST_START(args)
|
||||
if args:IsSpellID(1003108) then
|
||||
timer = 25
|
||||
warnShadowBurstNow:Schedule(timer)
|
||||
warnShadowBurstSoon:Schedule(timer-5)
|
||||
timerShadowBurst:Start(timer)
|
||||
if args:IsSpellID(2123928,2123929,2123930,2123931) then
|
||||
self:ScheduleMethod(0,"BreakUnholyBlade")
|
||||
end
|
||||
if args:IsSpellID(2123919) then
|
||||
self:ScheduleMethod(0, "DeathStrike")
|
||||
end
|
||||
end
|
||||
|
||||
function mod:UNIT_HEALTH(args)
|
||||
razHealth = math.max(0, UnitHealth("boss1")) / math.max(1, UnitHealthMax("boss1")) * 100;
|
||||
if razHealth < 40 and phase == 1 then
|
||||
phase = 2
|
||||
self.vb.phase = 2
|
||||
warnPhase2:Show();
|
||||
-----Shadow Burst-----
|
||||
warnShadowBurstNow:Cancel();
|
||||
warnShadowBurstSoon:Cancel();
|
||||
timerShadowBurst:Cancel();
|
||||
function mod:UNIT_HEALTH(uId)
|
||||
if self:GetUnitCreatureId(uId) == 16061 and UnitHealth(uId) / UnitHealthMax(uId) <= 0.55 and phase == 1 and prewarn == 1 then
|
||||
warnPhase2Soon:Show()
|
||||
prewarn = 2
|
||||
end
|
||||
end
|
||||
|
||||
function mod:UNIT_DIED(args)
|
||||
local cid = self:GetCIDFromGUID(args.destGUID)
|
||||
if cid == 16061 or cid == 26620 then
|
||||
timerenrage:Stop()
|
||||
timerKnife:Stop()
|
||||
end
|
||||
end
|
||||
|
||||
function mod:OnCombatEnd()
|
||||
timerenrage:Stop()
|
||||
timerKnife:Stop()
|
||||
end
|
||||
Reference in New Issue
Block a user