5.17 + Hyjal from Szyler's Discord

This commit is contained in:
andrew6180
2023-11-25 17:31:26 -07:00
parent 5b3b160e21
commit 00255736e5
33 changed files with 4031 additions and 1185 deletions
+196
View File
@@ -0,0 +1,196 @@
local mod = DBM:NewMod("Anetheron", "DBM-Hyjal")
local L = mod:GetLocalizedStrings()
mod:SetRevision(("$Revision: 183 $"):sub(12, -3))
mod:SetCreatureID(17808)
mod:SetUsedIcons(1,2,3,4,5,6,7,8)
mod:RegisterCombat("combat", 17808)
mod:RegisterEvents(
"SPELL_AURA_APPLIED",
"SPELL_AURA_REFRESH",
"SPELL_AURA_REMOVED",
"SPELL_CAST_START",
"SPELL_CAST_SUCCESS",
"CHAT_MSG_RAID_BOSS_EMOTE",
"CHAT_MSG_MONSTER_YELL",
"UNIT_DIED"
)
-- Unknown Entity spawn
-- Unknown Effigy warning (2 stacks++)
-- Teleport active (plus body notification?)
--Carrion Swarm
local warnSwarm = mod:NewSpellAnnounce(2140800, 3)
local timerSwarm = mod:NewNextTimer(30, 2140800)
--Nightmare
local timerNextNightmare = mod:NewNextTimer(45, 2140830)
local warnNightmareSoon = mod:NewAnnounce("Nightmare soon!", 2140830)
local warnNightmare = mod:NewAnnounce("%s is sent into the Nightmare!", 2140830)
-- Ring of Frost
local timerNextRingofFrost = mod:NewNextTimer(45, 2140153)
local timerRingofFrost = mod:NewTimer(15, "Ring of Frost duration", 2140153)
-- Infernal Rain
local timerNextInfernal = mod:NewNextTimer(45, 2140810)
local timerInfernal = mod:NewTimer(10, "Infernal spawning", 2140810)
local timerInfernalRain = mod:NewTimer(19, "Infernal Rain duration", 2140818)
-- Fight
local target1
local target2
local target3
function mod:OnCombatStart(delay)
timerSwarm:Start(10-delay)
timerNextNightmare:Start(35-delay)
timerNextInfernal:Start(20-delay)
self:ScheduleMethod(35-delay,"Nightmare")
target1 = nil
target2 = nil
target3 = nil
DBM.BossHealth:AddBoss(17772, L.Jaina)
end
function mod:Nightmare()
self:UnscheduleMethod("Nightmare")
timerNextNightmare:Start()
warnNightmareSoon:Schedule(40)
self:ScheduleMethod(45,"Nightmare")
end
function mod:InfernalRain()
self:UnscheduleMethod("InfernalRain")
timerInfernal:Stop()
timerInfernalRain:Stop()
timerNextInfernal:Stop()
timerInfernal:Start()
timerInfernalRain:Start()
timerNextInfernal:Start()
self:ScheduleMethod(45,"InfernalRain")
end
function mod:SPELL_AURA_APPLIED(args)
if args:IsSpellID(2140825) then
if target3 == nil and target2 ~= nil and target1 ~= nil then
target3 = args.DestName
self:setIcon(target3, 2)
DBM.BossHealth:AddBoss(92171,target3)
warnNightmare:Show(target3)
elseif target2 == nil and target1 ~= nil then
target2 = args.DestName
self:setIcon(target2, 2)
DBM.BossHealth:AddBoss(92171,target2)
warnNightmare:Show(target2)
elseif target1 == nil then
target1 = args.DestName
self:setIcon(target1, 1)
DBM.BossHealth:AddBoss(92171,target1)
warnNightmare:Show(target1)
end
end
if args:IsSpellID(2140825) and args.destName == target1 then
DBM.BossHealth:RemoveBoss(92171,target1)
self:setIcon(target1, 0)
target1 = nil
elseif args:IsSpellID(2140825) and args.destName == target2 then
DBM.BossHealth:RemoveBoss(92171,target2)
self:setIcon(target2, 0)
target2 = nil
elseif args:IsSpellID(2140825) and args.destName == target3 then
DBM.BossHealth:RemoveBoss(92171,target3)
self:setIcon(target3, 0)
target3 = nil
end
end
function mod:SPELL_AURA_REFRESH(args)
if args:IsSpellID(2140825) and args.destName == target1 then
DBM.BossHealth:RemoveBoss(92171,target1)
self:setIcon(target1, 0)
target1 = nil
elseif args:IsSpellID(2140825) and args.destName == target2 then
DBM.BossHealth:RemoveBoss(92171,target2)
self:setIcon(target2, 0)
target2 = nil
elseif args:IsSpellID(2140825) and args.destName == target3 then
DBM.BossHealth:RemoveBoss(92171,target3)
self:setIcon(target3, 0)
target3 = nil
end
end
function mod:SPELL_AURA_REMOVED(args)
end
function mod:SPELL_CAST_START(args)
if args:IsSpellID(2140800) then
warnSwarm:Show()
timerSwarm:Start()
end
end
function mod:SPELL_CAST_SUCCESS(args)
end
function mod:CHAT_MSG_MONSTER_YELL(msg)
if msg == L.Infernal1 or msg == L.Infernal2 or msg:find(L.Infernal1) or msg:find(L.Infernal2) then
self:UnscheduleMethod("InfernalRain")
timerInfernal:Stop()
timerNextInfernal:Stop()
timerInfernalRain:Stop()
timerNextInfernal:Start(45)
timerInfernal:Start(10)
timerInfernalRain:Start(19)
self:ScheduleMethod(45,"InfernalRain")
end
if msg == L.RingofFrost or msg:find(L.RingofFrost) then
timerNextRingofFrost:Start()
timerRingofFrost:Schedule(2)
end
end
function mod:UNIT_DIED(args)
if args.destName == target1 then
DBM.BossHealth:RemoveBoss(92171,target1)
target1 = nil
elseif args.destName == target2 then
DBM.BossHealth:RemoveBoss(92171,target2)
target2 = nil
elseif args.destName ==target3 then
DBM.BossHealth:RemoveBoss(92171,target3)
target3 = nil
end
end
function mod:OnCombatEnd()
DBM.BossHealth:RemoveBoss(92171,target1)
DBM.BossHealth:RemoveBoss(92171,target2)
DBM.BossHealth:RemoveBoss(92171,target3)
DBM.BossHealth:RemoveBoss(17772)
target1 = nil
target2 = nil
target3 = nil
end
function mod:CHAT_MSG_RAID_BOSS_EMOTE(msg)
if msg == " Anetheron sends %s into a nightmare!" or msg:find(L.Nightmare) then
if target3 == nil and target2 ~= nil and target1 ~= nil then
target3 = msg:find(L.Nightmare)
self:SetIcon(target3, 3)
DBM.BossHealth:AddBoss(92171,target3)
elseif target2 == nil and target1 ~= nil then
target2 = msg:find(L.Nightmare)
self:SetIcon(target2, 2)
DBM.BossHealth:AddBoss(92171,target2)
elseif target1 == nil then
target1 = msg:find(L.Nightmare)
self:SetIcon(target1, 1)
DBM.BossHealth:AddBoss(92171,target1)
end
end
end
+345
View File
@@ -0,0 +1,345 @@
local mod = DBM:NewMod("Archimonde", "DBM-Hyjal")
local L = mod:GetLocalizedStrings()
mod:SetRevision(("$Revision: 183 $"):sub(12, -3))
mod:SetCreatureID(17968,26648,26647)
mod:SetUsedIcons(8)
mod:RegisterCombat("combat")
mod:SetBossHealthInfo(
17968, "Archimonde",
26648, "Narmak",
26647, "Haaroon"
)
mod:RegisterEvents(
"SPELL_AURA_APPLIED",
"SPELL_AURA_APPLIED_DOSE",
"SPELL_CAST_START",
"SPELL_CAST_SUCCESS",
"SPELL_DAMAGE",
"CHAT_MSG_MONSTER_YELL",
"UNIT_DIED",
"UNIT_HEALTH"
)
-- -------------- RP -------------------
local timerCombatStart = mod:NewTimer(23, "Combat starting in ", 800462)
--Haaroon & Narmak
local timerShockwave = mod:NewTimer(25, "Haaroon casting 3 Shockwaves", 2141567)
local timerCastsShockwave = mod:NewCastTimer(3, 2141567)
local warnShockwave = mod:NewSpellAnnounce(2141567, 3)
local timerFelBombs = mod:NewTimer(25, "Narmak throwing 4 Fel Bombs", 2141553)
local timerFelExplosionSoon = mod:NewTimer(10, "Fel Bombs exploding soon", 2141553)
local timerFelExplosion = mod:NewTimer(4, "Fel Bombs exploding", 2141553)
local warnFelBombs = mod:NewSpellAnnounce(2141553, 3)
------------ Archimonde ----------------
-- Transitions
local warnAddPhase = mod:NewAnnounce("Kill Narmak and Haaroon to engage Archimonde", 3, 10066)
local warnFirePhase = mod:NewAnnounce("Fire Phase incoming!", 3, 76325)
local warnLightningPhaseSoon = mod:NewAnnounce("Lightning Phase at 70 percent health!", 3, 2141471)
local warnLightningPhase = mod:NewAnnounce("Lightning Phase incoming!", 3, 2141471)
local timerCallLightning = mod:NewCastTimer(4, 2141471)
local warnVoidPhaseSoon = mod:NewAnnounce("Void Phase at 40 percent health!", 3, 2141480)
local warnVoidPhase = mod:NewAnnounce("Void Phase incoming!", 3, 2141480)
-- All fight
local timerNextForceofWill = mod:NewNextTimer(45, 2141400)
local warnSpecialForceofWill = mod:NewSpecialWarning("Force of Will", 2141400)
local warnForceofWillSoon = mod:NewAnnounce("Force of Will in 5 seconds", 2141400)
local timerForceofWill = mod:NewCastTimer(2, 2141400)
local warnCurseoftheDefiler = mod:NewSpellAnnounce(2141422)
local timerCurseoftheDefiler = mod:NewNextTimer(30, 2141422)
local specWarnWeakCurse = mod:NewSpecialWarning("Curse of the Defiler is weakened. Decurse now!", 2141428)
local warnDecurseJaina = mod:NewAnnounce("Decurse Jaina now!", 2141428)
local warnDecurseTyrande = mod:NewAnnounce("Decurse Tyrande now!",2141428)
local warnDecurseThrall = mod:NewAnnounce("Decurse Thrall now!", 2141428)
--Fire Phase
local timerNextDoomMeteor = mod:NewNextTimer(45, 2141405)
local timerCastDoomMeteor = mod:NewCastTimer(6, 2141405)
local warnDoomMeteor = mod:NewSpellAnnounce(2141405)
local timerDrawFlames = mod:NewNextTimer(55, 2141442)
local warnDrawFlames = mod:NewSpellAnnounce(2141442)
--Lightning Phase
local timerLightningStrikes = mod:NewTimer(10, "Lightning Strikes", 2141456)
local warnLightningStrikes = mod:NewSpecialWarning("Lightning Strikes Soon!", 2141456)
local timerLivingLightning = mod:NewNextTimer(45,2141462)
local warnLivingLightning = mod:NewAnnounce("Archimonde is summoning Living Lightning!", 2141462, 2)
-- Void Phase
local warnGoT = mod:NewSpellAnnounce(2141604, 3)
local timerNextGoT = mod:NewNextTimer(60, 2141604)
local timerCastGoT = mod:NewCastTimer(3, 2141604)
local timerVoidHerald = mod:NewTimer(20, "Void Herald incoming", 5108)
local timerVoidTendril = mod:NewTimer(20, "Void Tendrils spawning", 2117107)
-- Jaina
local warnWardWinter = mod:NewAnnounce("Ward of Winter on %s!", 2140155)
local warnSpecWardsofWinter = mod:NewSpecialWarning("Ward of Winter on you!", 2140155)
local timerWardWinter = mod:NewTargetTimer(15, 2140155)
local timerNextWardWinter = mod:NewNextTimer(45, 2140155)
-- Thrall
local warnTotemofLightning = mod:NewAnnounce("A Lightning Capture Totem is up for 15 seconds!", 2140264)
local timerTotemofLightning = mod:NewTimer(30, "Lightning Capture Totem duration", 2140264)
local timerNextTotemofLightning = mod:NewNextTimer(45, 2140264)
--Tyrande
local warnLightofElune = mod:NewAnnounce("Light of Elune on %s!",2140073)
local timerLightofElune = mod:NewNextTimer(50, 2140073)
local warnSpecLightofElune = mod:NewSpecialWarning("Light of Elune on you!", 2140073)
-- fight
local berserkTimer = mod:NewBerserkTimer(900)
local prewarn
local phase
local terror
local lastDoomfire
local remainingDoomfire
local lastForce
local remainingForce
local drawFlames
function mod:OnCombatStart(delay)
prewarn = 0
phase = 0
terror = 0
lastDoomfire = nil
lastForce = nil
drawFlames = 0
end
function mod:AddPhase()
warnAddPhase:Show()
timerFelBombs:Start(8)
timerShockwave:Start(12)
end
function mod:FirePhase()
phase = 1
berserkTimer:Start()
warnFirePhase:Show()
timerNextDoomMeteor:Start(10)
warnForceofWillSoon:Schedule(25)
timerNextForceofWill:Start(30)
if mod:IsDifficulty("heroic10", "heroic25") then
timerNextWardWinter:Start(180)
else
timerNextWardWinter:Start(50)
end
end
function mod:LightningPhase()
phase = 2
warnLightningPhase:Show()
timerCallLightning:Start()
warnForceofWillSoon:Schedule(33)
timerNextForceofWill:Start(38)
timerTotemofLightning:Start(28)
timerLightningStrikes:Start(16)
warnLightningStrikes:Schedule(14)
self:ScheduleMethod(15,"LightningStrikes")
end
function mod:VoidPhase()
phase = 3
warnVoidPhase:Show()
warnForceofWillSoon:Schedule(33)
timerForceofWill:Start(38)
timerNextGoT:Start(3)
timerVoidTendril:Start(23)
warnLightningStrikes:Schedule(10)
timerLightningStrikes:Start(12)
self:ScheduleMethod(12,"LightningStrikes")
end
function mod:CancelP0Timers()
timerFelBombs:Stop()
timerShockwave:Stop()
end
function mod:CancelP1Timers()
timerNextDoomMeteor:Stop()
timerNextForceofWill:Stop()
warnForceofWillSoon:Cancel()
end
function mod:CancelP2Timers()
self:UnscheduleMethod("LightningStrikes")
timerLightningStrikes:Stop()
warnLightningStrikes:Cancel()
timerNextForceofWill:Stop()
warnForceofWillSoon:Cancel()
timerLivingLightning:Stop()
end
function mod:LightningStrikes()
self:UnscheduleMethod("LightningStrikes")
timerLightningStrikes:Start()
warnLightningStrikes:Schedule(8)
self:ScheduleMethod(10,"LightningStrikes")
end
function mod:SPELL_AURA_APPLIED(args)
if args:IsSpellID(2141428) and args:IsPlayer() then -- Grasp of the Defiler is Weakened
specWarnWeakCurse:Show()
end
if args:IsSpellID(2141428) and args.destName == "Lady Jaina Proudmoore" then
warnDecurseJaina:Show()
elseif args:IsSpellID(2141428) and args.destName == "Tyrande Whisperwind" then
warnDecurseTyrande:Show()
elseif args:IsSpellID(2141428) and args.destName == "Thrall" then
warnDecurseThrall:Show()
end
if args:IsSpellID(2141422,2141423,2141424,2141425) and args:IsPlayer() then -- Curse of the Defiler
warnCurseoftheDefiler:Show()
end
if args:IsSpellID(2140155) then
if args:IsPlayer() then
warnSpecWardsofWinter:Show()
else
warnWardWinter:Show(args.destName)
end
self:SetIcon(args.destName, 4, 15)
timerWardWinter:Start(args.destName)
timerNextWardWinter:Start()
end
end
function mod:SPELL_AURA_APPLIED_DOSE(args)
if args:IsSpellID(2141422,2141423,2141424,2141425) and args:IsPlayer() then -- Curse of the Defiler
warnCurseoftheDefiler:Show(args.amount)
end
end
function mod:SPELL_DAMAGE(args)
if args:IsSpellID(2141455,2141456,2141457,2141458) and DBM:AntiSpam(6,5) then
self:UnscheduleMethod("LightningStrikes")
warnLightningStrikes:Cancel()
self:ScheduleMethod(0,"LightningStrikes")
end
end
function mod:SPELL_CAST_START(args)
if args:IsSpellID(2141553) and DBM:AntiSpam(5,3) then -- Fel Iron Bombs
warnFelBombs:Show()
timerFelBombs:Start()
timerFelExplosionSoon:Start(11)
timerFelExplosion:Schedule(11)
elseif args:IsSpellID(2141567) and DBM:AntiSpam(5,4) then -- Shockwave
warnShockwave:Show()
timerShockwave:Start()
timerCastsShockwave:Start()
elseif args:IsSpellID(2141405) then -- Doomfire Meteor
warnDoomMeteor:Show()
timerCastDoomMeteor:Start()
timerNextDoomMeteor:Start()
lastDoomfire = GetTime()
elseif args:IsSpellID(2141400) then -- Force of Will
warnSpecialForceofWill:Show()
warnForceofWillSoon:Schedule(40)
timerForceofWill:Start()
timerNextForceofWill:Start()
lastForce = GetTime()
elseif args:IsSpellID(2141519) then -- Call Lightning
self:ScheduleMethod(0, "CancelP1Timers")
self:ScheduleMethod(0, "LightningPhase")
elseif args:IsSpellID(2141604) then -- Glimpse of Tomorrow
warnGoT:Show()
timerCastGoT:Start()
if terror == 1 then
timerNextGoT:Start(60)
elseif terror == 0 then
terror = 1
timerNextGoT:Start(15)
end
end
end
function mod:SPELL_CAST_SUCCESS(args)
if args:IsSpellID(2141442) then -- Draw Flames
warnDrawFlames:Show()
if drawFlames == 1 then
timerNextDoomMeteor:Start()
elseif drawFlames == 2 then
timerNextForceofWill:Start()
end
elseif args:IsSpellID(2141473) then -- Summon Living Lightning
warnLivingLightning:Show()
timerLivingLightning:Start()
end
end
function mod:CHAT_MSG_MONSTER_YELL(msg)
if msg == L.FightStartYell or msg:find(L.FightStartYell) then -- Archimonde
timerCombatStart:Start()
self:ScheduleMethod(23,"AddPhase")
end
if msg == L.FirePhase or msg:find(L.FirePhase) then --Archimonde
self:ScheduleMethod(0,"CancelP0Timers")
self:ScheduleMethod(0,"FirePhase")
end
if msg == L.LightningCapTotem or msg:find(L.LightningCapTotem) then --Thrall
warnTotemofLightning:Show()
timerTotemofLightning:Start()
timerNextTotemofLightning:Start()
end
if msg == L.LightofElune or msg:find(L.LightofElune) then -- Tyrande
local lightofElune = msg:find(L.LightofElune)
if lightofElune == UnitName("Player") then
warnSpecLightofElune:Show()
else
warnLightofElune:Show(lightofElune)
end
self:SetIcon(lightofElune, 3, 50)
timerLightofElune:Start()
end
if msg == L.CalloftheVoid or msg:find(L.CalloftheVoid) then --Archimonde Void Phase
self:ScheduleMethod(0, "CancelP2Timers")
self:ScheduleMethod(0,"VoidPhase")
end
-- if msg == L.VoidSpawn or msg:find(L.VoidSpawn) then -- Archimonde Void Spawn
--end
end
function mod:UNIT_HEALTH(uId)
if self:GetUnitCreatureId(uId) == 17968 and (UnitHealth(uId) / UnitHealthMax(uId)) <= 0.85 and prewarn == 0 and DBM:AntiSpam(5,2) then
prewarn = 1
remainingDoomfire = 45 - (GetTime() - lastDoomfire)
remainingForce = 45 - (GetTime() - lastForce)
if remainingDoomfire < remainingForce then
timerNextDoomMeteor:Cancel()
timerDrawFlames:Start(remainingDoomfire)
drawFlames = 1
else
timerNextForceofWill:Cancel()
timerDrawFlames:Start(remainingForce)
drawFlames = 2
end
end
if self:GetUnitCreatureId(uId) == 17968 and (UnitHealth(uId) / UnitHealthMax(uId)) <= 0.75 and prewarn == 1 and DBM:AntiSpam(5,2) then
prewarn = 2
warnLightningPhaseSoon:Show()
elseif self:GetUnitCreatureId(uId) == 17968 and (UnitHealth(uId) / UnitHealthMax(uId)) <= 0.45 and prewarn == 2 and DBM:AntiSpam(5,3) then
prewarn = 3
warnVoidPhaseSoon:Show()
end
end
function mod:UNIT_DIED(args)
local cid = self:GetCIDFromGUID(args.destGUID)
if cid == 26647 then
timerShockwave:Stop()
elseif cid == 26648 then
timerFelBombs:Stop()
end
end
function mod:CombatEnd()
self:ScheduleMethod("CancelP0Timers")
self:ScheduleMethod("CancelP1Timers")
self:ScheduleMethod("CancelP2Timers")
end
+134
View File
@@ -0,0 +1,134 @@
local mod = DBM:NewMod("Azgalor", "DBM-Hyjal")
local L = mod:GetLocalizedStrings()
mod:SetRevision(("$Revision: 183 $"):sub(12, -3))
mod:SetCreatureID(17842)
mod:SetUsedIcons(8)
mod:RegisterCombat("combat", 17842)
mod:RegisterEvents(
"SPELL_AURA_APPLIED",
"SPELL_AURA_APPLIED_DOSE",
"SPELL_AURA_REMOVED",
"SPELL_CAST_SUCCESS",
"SPELL_CAST_START",
"SPELL_DAMAGE",
"UNIT_DIED"
)
-- mark of Azgalor
local warnMark = mod:NewSpellAnnounce(2141211, 2)
local timerNextMark = mod:NewNextTimer(60, 2141211)
-- Rain of Fire
local specWarnFire = mod:NewSpecialWarning("Rain of Fire on you!", 2141200, 2)
local warnRoF = mod:NewSpellAnnounce(2141200, 2)
local timerRoF = mod:NewCastTimer(3, 2141200)
local timerNextRoF = mod:NewNextTimer(25, 2141200)
--Howl of Terror
local warnHowl = mod:NewSpellAnnounce(2141209, 2)
local timerHowl = mod:NewCastTimer(2, 2141209)
local timerNextHowl = mod:NewNextTimer(30, 2141209)
-- Legion Portal
local warnPortal = mod:NewAnnounce("Legion Portal spawning!", 2, 254274)
local timerNextPortal = mod:NewTimer(45, "Next Legion Portal", 2, 254274)
--Add abilities
local warnDoom = mod:NewAnnounce("Curse of Doom on %s!", 2141250)
local specWarnDoom = mod:NewSpecialWarning("Curse of Doom on you!", 2141250)
local warnShadowStorm = mod:NewAnnounce("Shade is casting Shadow Bolt Storm!", 2140494)
local warnAntiMagic = mod:NewAnnounce("Anti-Magic Shield on %s!", 2140322)
--Impending Doom
local warnImpending = mod:NewAnnounce("Impending Doom on %s!", 2141216)
local specWarnImpending = mod:NewSpecialWarning("Impending Doom on you!", 2141216)
local timerImpending = mod:NewTimer(8, "Impending Doom on %s", 2141216)
--fight
local berserkTimer = mod:NewBerserkTimer(600)
--combat start
function mod:OnCombatStart(delay)
berserkTimer:Start(-delay)
timerNextRoF:Start(20-delay)
timerNextPortal:Start(31-delay)
timerNextMark:Start(15-delay)
timerNextHowl:Start(35-delay)
self:ScheduleMethod(31-delay,"LegionPortal")
end
function mod:LegionPortal()
self:UnscheduleMethod("LegionPortal")
warnPortal:Show()
timerNextPortal:Start()
DBM.BossHealth:AddBoss(26665, L.LegionPortal)
self:ScheduleMethod(45,"LegionPortal")
end
function mod:SPELL_AURA_APPLIED(args)
if args:IsSpellID(2141200,2141201,2141202,2141203) and args:IsPlayer() and DBM:AntiSpam(5, 1) then
specWarnFire:Show()
end
if args:IsSpellID(2141212) and args:IsPlayer() then
warnMark:Show()
timerNextMark:Start()
end
if args:IsSpellID(2141250,2141251,2141252,2141253) then
if args:IsPlayer() then
specWarnDoom:Show()
else
warnDoom:Show(args.destName)
end
end
if args:IsSpellID(2140322) then
warnAntiMagic:Show(args.destName)
end
if args:IsSpellID(2141216) then
if args:IsPlayer() then
specWarnImpending:Show()
else
warnImpending:Show(args.destName)
end
timerImpending:Show(args.destName)
end
end
function mod:SPELL_AURA_APPLIED_DOSE(args)
if args:IsSpellID(2141200,2141201,2141202,2141203) and args:IsPlayer() and DBM:AntiSpam(5, 1) then
specWarnFire:Show()
end
if args:IsSpellID(2141212) and args:IsPlayer() then
warnMark:Show(args.amount)
timerNextMark:Start()
end
end
function mod:SPELL_DAMAGE(args)
if args:IsSpellID(2141226) and DBM:AntiSpam(40,2) then
self:SetIcon(args.sourceGUID, 8)
end
end
function mod:SPELL_CAST_START(args)
if args:IsSpellID(2141200,2141201,2141202,2141203) then
warnRoF:Show()
timerRoF:Start()
timerNextRoF:Start()
end
if args:IsSpellID(2141209) then
warnHowl:Show()
timerHowl:Start()
timerNextHowl:Start()
end
if args:IsSpellID(2140494) then
warnShadowStorm:Show()
end
end
function mod:UNIT_DIED(args)
local cid = self:GetCIDFromGUID(args.destGUID)
if cid == 26665 then
DBM.BossHealth:Clear()
end
end
+290
View File
@@ -0,0 +1,290 @@
local mod = DBM:NewMod("Chromius", "DBM-Hyjal")
local L = mod:GetLocalizedStrings()
mod:SetRevision(("$Revision: 183 $"):sub(12, -3))
mod:SetCreatureID(26643)
mod:RegisterCombat("combat", 26643)
mod:RegisterEvents(
"SPELL_CAST_START",
"SPELL_CAST_SUCCESS",
"SPELL_AURA_APPLIED",
"SPELL_DAMAGE",
"CHAT_MSG_MONSTER_YELL",
"CHAT_MSG_RAID_BOSS_EMOTE",
"UNIT_HEALTH",
"UNIT_DIED"
)
-- Final Countdown
local specWarnFinalCountdown = mod:NewSpecialWarning("Final Countdown! The Hourglass will vibrate %s times!", 2141735)
local warnCountdown = mod:NewAnnounce("There are %s vibrations left!", 2141735)
local timerNextFinalCountdown = mod:NewTimer(60,"Next Final Countdown: (%s)", 2141735)
local timerFinalDuration = mod:NewTimer(2,"Final Countdown (%s ticks)", 2141735)
local warnFinalCDSoon = mod:NewAnnounce("Final Countdown soon!", 2141735)
local timerFinalDelay = mod:NewTimer(3, "Vibration travel time", 2141735)
-- Events (Mannoroth)
local timerNextChaosBlast = mod:NewNextTimer(20,2141800)
local timerCastChaosBlast = mod:NewTargetTimer(3.85, 2141800)
local warnChaosBlast = mod:NewTargetAnnounce(2141800)
local specWarnChaosBlast = mod:NewSpecialWarning("Chaos Blast on you!", 2141800)
local timerMannorothsFury = mod:NewNextTimer(20, 2141809)
local warnMannorothsFury = mod:NewSpellAnnounce(2141809)
--Events (Tyrande)
local warnBlackArrow = mod:NewAnnounce("Black Arrow on %s!", 2141904)
local specWarnBlackArrow = mod:NewSpecialWarning("Black Arrow on you!", 2141904)
--Events (Jaina)
local warnHolyLight = mod:NewAnnounce("%s is casting Holy Light! Interrupt it!", 2141856)
local timerInsanity = mod:NewTimer(106, "Jaina is losing her mind...", 2141884)
-- Dragon abilities
local warnArcaneBreath = mod:NewSpellAnnounce(2141705)
local timerArcaneBreath = mod:NewNextTimer(30, 2141705)
local timerCastArcaneBreath = mod:NewCastTimer(2, 2141705)
local timerBreathDuration = mod:NewTimer(3, "Arcane Breath duration", 2141705)
-- adds
local warnArcaneExplosion = mod:NewAnnounce("Infinite Time Warder is casting Arcane Explosion!", 2141758)
local timerArcaneExplosion = mod:NewCastTimer(4, 2141758)
-- Phases
local warnTransSoon = mod:NewAnnounce("Portal Event incoming in 5 percent health!", 2141724)
local timerTeleport = mod:NewTimer(5, "Teleported in", 2100249)
local warnJainaPhase = mod:NewAnnounce("Enter the portal and kill Jaina!", 2141724)
local warnGromPhase = mod:NewAnnounce("Enter the portal and kill the Infinite Subjugators!", 2141724)
local warnTyrandePhase = mod:NewAnnounce("Enter the Portal and heal the Sentinels!", 2141724)
local SentinelAnnounce = mod:NewAnnounce("There are %s Sentinels remaining!", 2140018)
-- SPELL_DAMAGE special warnings
local specWarnConsecration = mod:NewSpecialWarningMove(2141858)
local specWarnSplitSecond = mod:NewSpecialWarningMove(2141725)
-- fight
local timerCombatStart = mod:NewTimer(20, "Combat starting in", 39255)
local count
local countdown
local duration
local prewarn
local SentinelsAlive
local insanity
local phase
local JainaHP
local TyrandeHP
local ThrallHP
-- INFO ---
-- SPELL_CAST_START Arcane Breath (2141705)
function mod:OnCombatStart(delay)
duration = 2
count = 1
countdown = 1
prewarn = 0
phase = 0
SentinelsAlive = 5
JainaHP = 0
TyrandeHP = 0
ThrallHP = 0
insanity = 0
timerArcaneBreath:Start(40-delay)
timerNextFinalCountdown:Start(65-delay, count)
warnFinalCDSoon:Schedule(60-delay)
self:ScheduleMethod(65-delay,"FinalCountdown")
end
function mod:FinalCountdown()
self:UnscheduleMethod("FinalCountdown")
countdown = count - 1
specWarnFinalCountdown:Show(count)
if phase == 0 then
timerFinalDuration:Start(duration, count)
count = count + 1
duration = duration + 2.5
timerNextFinalCountdown:Start(60,count)
warnFinalCDSoon:Schedule(55)
self:ScheduleMethod(60,"FinalCountdown")
elseif phase == 1 then
timerFinalDelay:Start(3)
self:ScheduleMethod(3,"FinalDuration")
elseif phase == 2 then
timerFinalDelay:Start(3)
self:ScheduleMethod(3,"FinalDuration")
elseif phase == 3 then
timerFinalDelay:Start(3)
self:ScheduleMethod(3,"FinalDuration")
end
end
function mod:FinalDuration()
timerFinalDuration:Start(duration, count)
count = count + 1
duration = duration + 2.5
self:ScheduleMethod(57,"FinalCountdown")
timerNextFinalCountdown:Start(57,count)
warnFinalCDSoon:Schedule(52)
end
function mod:ChaosBlast()
local targetCB = mod:GetBossTarget(26688)
if targetCB == UnitName("player") then
specWarnChaosBlast:Show()
SendChatMessage("Chaos Blast on "..UnitName("PLAYER").."!", "SAY")
else
warnChaosBlast:Show(targetCB)
end
timerCastChaosBlast:Start(targetCB)
self:SetIcon(targetCB, 8, 4)
end
function mod:MannorothsFury()
self:UnscheduleMethod("MannorothsFury")
timerMannorothsFury:Start()
warnMannorothsFury:Show()
self:ScheduleMethod(20,"MannorothsFury")
end
function mod:StopTimers()
timerArcaneBreath:Stop()
end
function mod:SPELL_AURA_APPLIED(args)
if args:IsSpellID(2141904) then
if args:IsPlayer() then
specWarnBlackArrow:Show()
else
warnBlackArrow:Show(args.destName)
end
end
end
function mod:SPELL_DAMAGE(args)
if args:IsSpellID(2141858,2141859,2141860,2141861) and args:IsPlayer() and DBM:AntiSpam(5,1) then
specWarnConsecration:Show()
end
if args:IsSpellID(2141725,2141726,2141727,2141728) and args:IsPlayer() and DBM:AntiSpam(5,2) then
specWarnSplitSecond:Show()
end
if args:IsSpellID(2141736,2141737,2141738,2141739) and DBM:AntiSpam(1.8,6) then
if countdown >= 1 then
warnCountdown:Show(countdown)
countdown = countdown - 1
end
end
end
function mod:SPELL_CAST_START(args)
if args:IsSpellID(2141705) then
warnArcaneBreath:Show()
timerArcaneBreath:Start()
timerCastArcaneBreath:Start()
timerBreathDuration:Schedule(2)
end
if args:IsSpellID(2141758) then
warnArcaneExplosion:Show()
timerArcaneExplosion:Start()
self:SetIcon(args.sourceGUID, 8)
end
if args:IsSpellID(2141800) then
self:ScheduleMethod(0.15, "ChaosBlast")
timerNextChaosBlast:Start()
end
if args:IsSpellID(2141856) then
warnHolyLight:Show(args.sourceName)
end
if args:IsSpellID(2141868,2141869,2140134,2140135) and phase == 1 and insanity == 1 and args.sourceName == "Lady Jaina Proudmoore" then
insanity = 0
timerInsanity:Stop()
end
end
function mod:SPELL_CAST_SUCCESS(args)
end
function mod:CHAT_MSG_MONSTER_YELL(msg)
if msg == L.ChromiusRP or msg:find(L.ChromiusRP) then
timerCombatStart:Start()
elseif msg == L.ChromiusRP2 or msg:find(L.ChromiusRP2) then
timerCombatStart:Start()
elseif msg == L.JainaPhaseYell or msg:find(L.JainaPhaseYell) then -- Jaina Phase start
warnJainaPhase:Show()
timerInsanity:Start()
insanity = 1
self:ScheduleMethod(0,"StopTimers")
DBM.BossHealth:Clear()
phase = 1
elseif msg == L.GromPhaseYell or msg:find(L.GromPhaseYell) then -- Grom Phase start
warnGromPhase:Show()
self:ScheduleMethod(0,"StopTimers")
timerNextChaosBlast:Start(20)
timerMannorothsFury:Start(25)
self:ScheduleMethod(25,"MannorothsFury")
DBM.BossHealth:Clear()
phase = 2
elseif msg == L.TyrandePhaseYell or msg:find(L.TyrandePhaseYell) then -- Tyrande Phase start
warnTyrandePhase:Show()
self:ScheduleMethod(0,"StopTimers")
DBM.BossHealth:Clear()
phase = 3
end
end
function mod:UNIT_DIED(args)
if args.destName =="Infinite Manipulator" then
timerTeleport:Start(5)
timerArcaneBreath:Start(13)
self:ScheduleMethod(7,"AddBoss")
JainaHP = 1
phase = 0
end
if args.destName =="Mannoroth" then
timerTeleport:Start(5)
timerArcaneBreath:Start(13)
self:UnscheduleMethod("MannorothsFury")
timerNextChaosBlast:Stop()
timerMannorothsFury:Stop()
self:ScheduleMethod(7,"AddBoss")
ThrallHP = 1
phase = 0
end
if args.destName =="Darnassus Sentinel" then
SentinelsAlive = SentinelsAlive - 1
if DBM:AntiSpam(1, 2) then
SentinelAnnounce:Show(SentinelsAlive)
end
if SentinelsAlive == 0 then
timerTeleport:Start(5)
timerArcaneBreath:Start(13)
self:ScheduleMethod(7,"AddBoss")
TyrandeHP = 1
phase = 0
end
end
end
function mod:UNIT_HEALTH(uId)
if self:GetUnitCreatureId(uId) == 26643 and (UnitHealth(uId) / UnitHealthMax(uId)) <= 0.80 and prewarn == 0 and DBM:AntiSpam(5,3) then
prewarn = 1
warnTransSoon:Show()
elseif self:GetUnitCreatureId(uId) == 26643 and (UnitHealth(uId) / UnitHealthMax(uId)) <= 0.55 and prewarn == 1 and DBM:AntiSpam(5,4) then
prewarn = 2
warnTransSoon:Show()
elseif self:GetUnitCreatureId(uId) == 26643 and (UnitHealth(uId) / UnitHealthMax(uId)) <= 0.30 and prewarn == 2 and DBM:AntiSpam(5,5) then
prewarn = 3
warnTransSoon:Show()
end
end
function mod:AddBoss()
if JainaHP == 1 then
DBM.BossHealth:AddBoss(17772,"Lady Jaina Proudmoore")
elseif TyrandeHP == 1 then
DBM.BossHealth:AddBoss(17948,"Tyrande Whisperwind")
elseif ThrallHP == 1 then
DBM.BossHealth:AddBoss(17852,"Thrall")
end
end
+23
View File
@@ -0,0 +1,23 @@
## Interface: 30300
## Title:|cffffe00a<|r|cffff7d0aDBM|r|cffffe00a>|r |cff69ccf0Mount Hyjal|r
## LoadOnDemand: 1
## RequiredDeps: DBM-Core, DBM-BurningCrusade
## SavedVariablesPerCharacter: DBMHyjal_SavedVars, DBMHyjal_SavedStats
## X-DBM-Mod: 1
## X-DBM-Mod-Category: BC
## X-DBM-Mod-Name: Mount Hyjal
## X-DBM-Tab-Sort: 306
## X-DBM-Mod-LoadZone: Hyjal Summit
localization.en.lua
localization.de.lua
localization.cn.lua
localization.tw.lua
localization.ru.lua
localization.es.lua
localization.kr.lua
RageWinterchill.lua
Anetheron.lua
Kazrogal.lua
Azgalor.lua
Chromius.lua
Archimonde.lua
+121
View File
@@ -0,0 +1,121 @@
local mod = DBM:NewMod("Kazrogal", "DBM-Hyjal")
local L = mod:GetLocalizedStrings()
mod:SetRevision(("$Revision: 183 $"):sub(12, -3))
mod:SetCreatureID(17888)
mod:RegisterCombat("combat", 17888)
mod:RegisterEvents(
"SPELL_CAST_START",
"SPELL_CAST_SUCCESS",
"SPELL_AURA_APPLIED",
"SPELL_AURA_APPLIED_DOSE",
"SPELL_AURA_REMOVED",
"CHAT_MSG_RAID_BOSS_EMOTE",
"CHAT_MSG_MONSTER_YELL",
"SPELL_MISSED"
)
-- Pillar of Suffering (2141019) 200% increased Swing timer + can't dodge
-- Pillar of Cataclysm (2141018) Fire splash damage
-- 1st Pillar (10 seconds)
-- Mark of Kaz
local warnMark = mod:NewSpellAnnounce(2141001, 3)
local timerMark = mod:NewNextTimer(55, 2141000)
-- Warstomp
local warnStomp = mod:NewSpellAnnounce(2141009, 2)
local timerStomp = mod:NewNextTimer(55, 2141009)
-- Pillars
local timerPillar1 = mod:NewTimer(10, "First Pillar", 10408)
local timerPSuffering = mod:NewTimer(40, "Pillar of Suffering duration", 2141030)
local warnPSuffering = mod:NewAnnounce("The Pillar of Suffering has hit the ground", 2, 2141030)
local timerNextPSuffering = mod:NewNextTimer(10,2141030)
local timerPCataclysm = mod:NewTimer(40, "Pillar of Cataclysm duration", 2141026)
local warnPCataclysm = mod:NewAnnounce("The Pillar of Cataclysm has hit the ground", 2, 2141026)
local timerNextPCataclysm = mod:NewNextTimer(10, 2141026)
local pillar
-- Physical attacks
local timerNextMalevolent = mod:NewNextTimer(51, 2141008)
local timerMalevolentSwing = mod:NewCastTimer(4, 2141008)
local warnMalevolent = mod:NewSpellAnnounce(2141008)
-- Scars & Debuffs
local warnCataclysmic = mod:NewAnnounce("You have %s stacks of Cataclysmic Scar", 2141040)
local warnTormenting = mod:NewAnnounce("You have %s stacks of Tormenting Scar", 2141041)
-- fight
local warnChallenged = mod:NewAnnounce("Kaz'rogal fixates on %s!",2141039)
local warnManaTotem = mod:NewAnnounce("Thrall is summoning a Mana Stream Totem! Click it to replenish your mana!", 2140261)
function mod:OnCombatStart(delay)
pillar = 0
timerPillar1:Start(-delay)
timerStomp:Start(-delay)
timerMark:Start(14-delay)
end
function mod:SPELL_AURA_APPLIED(args)
if args:IsSpellID(2141001) and args:IsPlayer() and DBM:AntiSpam(5,1) then
timerMark:Start()
warnMark:Show(args.amount)
end
if args:IsSpellID(2141039) then
warnChallenged:Show(args.destName)
end
end
function mod:SPELL_AURA_APPLIED_DOSE(args)
if args:IsSpellID(2141040) and args:IsPlayer() and args.amount >= 4 and DBM:AntiSpam(3,2) then
warnCataclysmic:Show(args.amount)
end
if args:IsSpellID(2141041) and args:IsPlayer() and args.amount >= 4 and DBM:AntiSpam(3,3) then
warnTormenting:Show(args.amount)
end
end
function mod:SPELL_MISSED(args)
if args:IsSpellID(2141009) and DBM:AntiSpam(1,1) then
if pillar == 1 then
timerNextPCataclysm:Start()
pillar = 2
elseif pillar == 2 then
timerNextPSuffering:Start()
pillar = 1
end
timerStomp:Start()
end
end
function mod:SPELL_CAST_SUCCESS(args)
if args:IsSpellID(2141027,2141028,2141029,2141030) and DBM:AntiSpam(40,3) then
warnPSuffering:Show()
timerPSuffering:Start()
if pillar == 0 then
pillar = 1
end
elseif args:IsSpellID(2141023,2141024,2141025,2141026) and DBM:AntiSpam(40,4) then
warnPCataclysm:Show()
timerPCataclysm:Start()
if pillar == 0 then
pillar = 2
end
end
if args:IsSpellID(2141008) and DBM:AntiSpam(6, 5) then
timerNextMalevolent:Start()
timerMalevolentSwing:Start()
warnMalevolent:Show()
end
end
function mod:CHAT_MSG_MONSTER_YELL(msg)
if msg == "I am summoning a Mana Stream Totem near us. Use it to replenish!" then
warnManaTotem:Show()
end
end
+276
View File
@@ -0,0 +1,276 @@
local mod = DBM:NewMod("RageWinterchill", "DBM-Hyjal")
local L = mod:GetLocalizedStrings()
mod:SetRevision(("$Revision: 183 $"):sub(12, -3))
mod:SetCreatureID(17767)
mod:SetUsedIcons(8)
mod:RegisterCombat("combat", 17767)
mod:RegisterEvents(
"SPELL_AURA_APPLIED",
"SPELL_DAMAGE",
"SPELL_AURA_APPLIED_DOSE",
"SPELL_CAST_START",
"SPELL_CAST_SUCCESS",
"SPELL_MISSED",
"CHAT_MSG_RAID_BOSS_EMOTE",
"CHAT_MSG_MONSTER_YELL",
"UNIT_HEALTH",
"UNIT_DIED"
)
--DnD
local warnDnDSoon = mod:NewSoonAnnounce(2140600, 2)
local timerDnDCD = mod:NewNextTimer(30, 2140601)
local timerDnDextra = mod:NewNextTimer(10, 2140601)
local specWarnDnD = mod:NewSpecialWarningMove(2140600, 2)
-- Frozen Solid
local specWarnFrozen = mod:NewSpecialWarningYou(2140617, 2)
local timerFrozen = mod:NewTimer(10,"Frozen Solid", 2140617)
local sayFrozenFade = mod:NewFadesYell(2140617)
-- Lich Slap
local timerNextSlap = mod:NewNextTimer(30, 2140645)
local warnLichSlap = mod:NewTargetAnnounce(2140645)
-- Winter's Touch
local warnWT = mod:NewTargetAnnounce(2140605, 2)
local specWarnWT = mod:NewSpecialWarningYou(2140605, 2)
local timerNextWT = mod:NewCDTimer(15, 2140605)
local timerWT = mod:NewCastTimer(1.3, 2140605)
-- Transitions
local warnTransSoon = mod:NewSpecialWarning("Intermission Phase Soon", 1, 500933)
local warnTransmission = mod:NewAnnounce("Transmission: Kill the Phylacteries!", 2, 500933)
-- Ice Barrage
local warnIceBarrage = mod:NewSpellAnnounce(2140624, 2)
local timerIceBarrage = mod:NewCastTimer(8, 2140624)
local timerNextBarrage = mod:NewNextTimer(45, 2140624)
--Chilled to the Bone
local SpecWarnChilled = mod:NewSpecialWarning("You have %s stacks of Chilled to the Bone!", 2140612)
--Frost Nova
local timerNextNova = mod:NewNextTimer(30, 2140620)
-- Chains of Winterchill
local warnChains = mod:NewAnnounce("%s is chained with >%s<!", 2140654)
local timerChains = mod:NewNextTimer(15, 2140654)
--fight
local prewarn
local phylDeath
local phylRemaining
local phylAnnounce =mod:NewAnnounce("There are %s Phylacteries remaining", 2)
local phase
local lastDnD
local remainingDnD
local lastWintersTouch
local remaininTouch
local lastNova
local remainingNova
local lastSlap
local remainingSlap
local berserkTimer = mod:NewBerserkTimer(600)
function mod:OnCombatStart(delay)
prewarn = 1
phylDeath = 0
phase = 1
lastDnD = nil
remainingDnD = nil
lastWintersTouch = nil
remaininTouch = nil
lastNova = nil
remainingNova = nil
lastSlap = nil
remainingSlap = nil
berserkTimer:Start(-delay)
self:ScheduleMethod(0-delay,"DnD")
timerNextWT:Start(10-delay)
timerNextBarrage:Start(45-delay)
timerNextNova:Start(37-delay)
timerNextSlap:Start(10-delay)
timerChains:Start(15-delay)
DBM.BossHealth:AddBoss(17772, L.Jaina)
end
function mod:BossPhase()
self:ScheduleMethod(10,"DnD")
timerNextSlap:Start(10)
timerDnDextra:Start(10)
timerNextWT:Start(20)
timerNextBarrage:Start(25)
timerNextNova:Start(5)
phase = 1
end
function mod:Intermission()
warnTransmission:Show()
self:ScheduleMethod(0,"CancelTimers")
phase = 2
phylDeath = 0
end
function mod:CancelTimers()
timerDnDCD:Stop()
warnDnDSoon:Cancel()
self:UnscheduleMethod("DnD")
timerIceBarrage:Stop()
timerNextBarrage:Stop()
timerNextWT:Stop()
timerNextSlap:Stop()
timerNextNova:Stop()
end
function mod:WTouch()
local targetWT = mod:GetBossTarget(17767)
if targetWT == UnitName("player") then
specWarnWT:Show()
SendChatMessage("Winter's Touch on "..UnitName("PLAYER").."!", "SAY")
else
warnWT:Show(targetWT)
end
timerWT:Start(targetWT)
self:SetIcon(targetWT, 8, 2)
end
function mod:DnD()
self:UnscheduleMethod("DnD")
lastDnD = GetTime()
timerDnDCD:Start(30)
warnDnDSoon:Schedule(25)
self:ScheduleMethod(30,"DnD")
end
function mod:SPELL_DAMAGE(args)
if args:IsSpellID(2140600,2140601,2140602,2140603) then
if args:IsPlayer() and DBM:AntiSpam(8,1) then
specWarnDnD:Show()
end
end
if args:IsSpellID(2140620,2140621,2140622,2140623) and DBM:AntiSpam(5,6) then
lastNova = GetTime()
timerNextNova:Start(65)
end
end
function mod:SPELL_MISSED(args)
if args:IsSpellID(2140620,2140621,2140622,2140623) and DBM:AntiSpam(5,5) then
lastNova = GetTime()
timerNextNova:Start(65)
end
end
function mod:SPELL_AURA_APPLIED(args)
if args:IsSpellID(2140617) and args:IsPlayer() then
specWarnFrozen:Show()
SendChatMessage(L.SayFrozenFade, "SAY")
sayFrozenFade:Countdown(10,3)
timerFrozen:Start()
end
if args:IsSpellID(2140654) and args:IsPlayer() then
warnChains:show(args.sourceName, args.destName)
-- SendChatMessage("sourceName is "..args.sourceName.."", "SAY")
-- SendChatMessage("destName is "..args.destName.."", "SAY")
-- if args.destName == UnitName("Player") then
-- specWarnChains:Show(args.destName)
-- elseif args.sourceName == UnitName("Player") then
-- specWarnChains:show(args.sourceName)
-- end
end
end
-- SendChatMessage(""..UnitName("PLAYER").." is chained to "..args.destName.."!", "YELL")
-- SendChatMessage(""..args.destName.." is chained to "..UnitName("PLAYER").."!", "YELL")
function mod:SPELL_AURA_APPLIED_DOSE(args)
if args:IsSpellID(2140612) and args:IsPlayer() and args.amount > 14 and DBM:AntiSpam(5,4) then
SpecWarnChilled:Show(args.amount)
end
end
function mod:SPELL_CAST_START(args)
if args:IsSpellID(2140605) then
self:ScheduleMethod(0.2,"WTouch")
lastWintersTouch = GetTime()
timerNextWT:Start()
end
if args:IsSpellID(2140624) then
warnIceBarrage:Show()
timerIceBarrage:Start()
timerNextBarrage:Start(70)
remaininTouch = (15 - (GetTime() - lastWintersTouch))
remainingDnD = (30 - (GetTime() - lastDnD))
remainingNova = (30 - (GetTime() - lastNova))
remainingSlap = (30 - (GetTime() - lastSlap))
timerDnDCD:Stop()
warnDnDSoon:Cancel()
warnDnDSoon:Schedule(remainingDnD + 5)
timerDnDCD:Start(remainingDnD + 10)
self:UnscheduleMethod("DnD")
self:ScheduleMethod(remainingDnD + 10,"DnD")
timerNextWT:Stop()
timerNextWT:Start(remaininTouch + 10)
timerNextNova:Stop()
timerNextNova:Start(remainingNova + 10)
timerNextSlap:Stop()
timerNextSlap:Start(remainingSlap + 10)
end
end
function mod:SPELL_CAST_SUCCESS(args)
if args:IsSpellID(2140645) then
timerNextSlap:Start(30)
lastSlap = GetTime()
warnLichSlap:Show(args.destName)
end
end
function mod:CHAT_MSG_MONSTER_YELL(msg)
if msg == L.TransitionYell or msg:find(L.TransitionYell) then
self:ScheduleMethod(0,"Intermission")
end
end
function mod:UNIT_DIED(args)
local cid = self:GetCIDFromGUID(args.destGUID)
if cid == 26634 then
phylDeath = phylDeath + 1
phylRemaining = (6 - phylDeath)
phylAnnounce:Show(phylRemaining)
end
if cid == 26634 and phylRemaining == 0 then
self:ScheduleMethod(1,"BossPhase")
end
end
function mod:UNIT_HEALTH(uId)
if self:GetUnitCreatureId(uId) == 17767 and (UnitHealth(uId) / UnitHealthMax(uId)) <= 0.70 and prewarn == 1 and DBM:AntiSpam(5,2) then
prewarn = 2
warnTransSoon:Show()
elseif self:GetUnitCreatureId(uId) == 17767 and (UnitHealth(uId) / UnitHealthMax(uId)) <= 0.36 and prewarn == 2 and DBM:AntiSpam(5,3) then
prewarn = 3
warnTransSoon:Show()
end
end
function mod:OnCombatEnd()
DBM.BossHealth:RemoveBoss(17772)
self:UnscheduleMethod("BossPhase")
self:UnscheduleMethod("Intermission")
end
--function mod:CHAT_MSG_RAID_BOSS_EMOTE(msg)
-- if msg == L.Transition1 or msg:find(L.Transition1) and phase == 1 then
-- self:ScheduleMethod(0,"Intermission")
-- phase = 2
-- elseif msg == L.Transition2 or msg:find(L.Transition2) and phase == 2 then
-- self:ScheduleMethod(0,"BossPhase")
-- phase = 1
-- end
--end
--function mod:CHAT_MSG_MONSTER_EMOTE(msg)
-- if msg == L.Transition1 or msg:find(L.Transition1) and phase == 1 then
-- self:ScheduleMethod(0,"Intermission")
-- phase = 2
-- elseif msg == L.Transition2 or msg:find(L.Transition2) and phase == 2 then
-- self:ScheduleMethod(0,"BossPhase")
-- phase = 1
-- end
--end
+98
View File
@@ -0,0 +1,98 @@
if GetLocale() ~= "zhCN" then return end
local L
------------------------
-- Rage Winterchill --
------------------------
L = DBM:GetModLocalization("Rage")
L:SetGeneralLocalization{
name = "雷基·冬寒"
}
-----------------
-- Anetheron --
-----------------
L = DBM:GetModLocalization("Anetheron")
L:SetGeneralLocalization{
name = "安纳塞隆"
}
----------------
-- Kazrogal --
----------------
L = DBM:GetModLocalization("Kazrogal")
L:SetGeneralLocalization{
name = "卡兹洛加"
}
---------------
-- Azgalor --
---------------
L = DBM:GetModLocalization("Azgalor")
L:SetGeneralLocalization{
name = "阿兹加洛"
}
------------------
-- Archimonde --
------------------
L = DBM:GetModLocalization("Archimonde")
L:SetGeneralLocalization{
name = "阿克蒙德"
}
----------------
-- WaveTimers --
----------------
L = DBM:GetModLocalization("HyjalWaveTimers")
L:SetGeneralLocalization{
name = "普通怪物"
}
L:SetWarningLocalization{
WarnWave = "%s",
WarnWaveSoon= "下一波敌人即将到来"
}
L:SetTimerLocalization{
TimerWave = "Next wave"--Translate
}
L:SetOptionLocalization{
WarnWave = "Warn when a new wave is incoming",--Translate
WarnWaveSoon = "Warn when a new wave is incoming soon",--Translate
DetailedWave = "Detailed warning when a new wave is incoming (which mobs)",--Translate
TimerWave = "Show a timer for next wave"--Translate
}
L:SetMiscLocalization{
HyjalZoneName = "海加尔峰",
Thrall = "萨尔",
Jaina = "吉安娜·普罗德摩尔",
RageWinterchill = "雷基·冬寒",
Anetheron = "安纳塞隆",
Kazrogal = "卡兹洛加",
Azgalor = "阿兹加洛",
WarnWave_0 = "第%s/8波",
WarnWave_1 = "第%s/8波 - %s%s",
WarnWave_2 = "第%s/8波 - %s%s 和 %s%s",
WarnWave_3 = "第%s/8波 - %s%s, %s%s 和 %s%s",
WarnWave_4 = "第%s/8波 - %s%s, %s%s, %s%s 和 %s%s",
WarnWave_5 = "第%s/8波 - %s%s, %s%s, %s%s, %s%s 和 %s%s",
RageGossip = "我和我的伙伴们将与您并肩作战,普罗德摩尔女士。",
AnetheronGossip = "我们已经准备好对付阿克蒙德的任何爪牙了,普罗德摩尔女士。",
KazrogalGossip = "我与你并肩作战,萨尔。",
AzgalorGossip = "我们无所畏惧。",
Ghoul = "食尸鬼",
Abomination = "憎恶",
Necromancer = "亡灵巫师",
Banshee = "女妖",
Fiend = "地穴恶魔",
Gargoyle = "石像鬼",
Wyrm = "冰霜巨龙",
Stalker = "恶魔猎犬",
Infernal = "地狱火"
}
+96
View File
@@ -0,0 +1,96 @@
if GetLocale() ~= "deDE" then return end
local L
------------------------
-- Rage Winterchill --
------------------------
L = DBM:GetModLocalization("Rage")
L:SetGeneralLocalization{
name = "Furor Winterfrost"
}
-----------------
-- Anetheron --
-----------------
L = DBM:GetModLocalization("Anetheron")
L:SetGeneralLocalization{
name = "Anetheron"
}
----------------
-- Kazrogal --
----------------
L = DBM:GetModLocalization("Kazrogal")
L:SetGeneralLocalization{
name = "Kaz'rogal"
}
---------------
-- Azgalor --
---------------
L = DBM:GetModLocalization("Azgalor")
L:SetGeneralLocalization{
name = "Azgalor"
}
------------------
-- Archimonde --
------------------
L = DBM:GetModLocalization("Archimonde")
L:SetGeneralLocalization{
name = "Archimonde"
}
----------------
-- WaveTimers --
----------------
L = DBM:GetModLocalization("HyjalWaveTimers")
L:SetGeneralLocalization{
name = "Wellen (HdZ 3)"
}
L:SetWarningLocalization{
WarnWave = "%s",
}
L:SetTimerLocalization{
TimerWave = "Nächste Welle"
}
L:SetOptionLocalization{
WarnWave = "Warne, wenn eine neue Welle kommt",
DetailedWave = "Detaillierte Warnung, wenn eine neue Welle kommt (welche Mobs)",
TimerWave = "Zeige Zeit bis nächste Welle"
}
L:SetMiscLocalization{
HyjalZoneName = "Hyjalgipfel",
Thrall = "Thrall",
Jaina = "Lady Jaina Prachtmeer",
GeneralBoss = "Boss kommt",
RageWinterchill = "Furor Winterfrost kommt",
Anetheron = "Anetheron kommt",
Kazrogal = "Kaz'rogal kommt",
Azgalor = "Azgalor kommt",
WarnWave_0 = "Welle %s/8",
WarnWave_1 = "Welle %s/8 - %s %s",
WarnWave_2 = "Welle %s/8 - %s %s und %s %s",
WarnWave_3 = "Welle %s/8 - %s %s, %s %s und %s %s",
WarnWave_4 = "Welle %s/8 - %s %s, %s %s, %s %s und %s %s",
WarnWave_5 = "Welle %s/8 - %s %s, %s %s, %s %s, %s %s und %s %s",
RageGossip = "Meine Gefährten und ich werden Euch zur Seite stehen, Lady Prachtmeer.",
AnetheronGossip = "Was auch immer Archimonde gegen uns ins Feld schicken mag, wir sind bereit, Lady Prachtmeer.",
KazrogalGossip = "Ich werde Euch zur Seite stehen, Thrall!",
AzgalorGossip = "Wir haben nichts zu befürchten.",
Ghoul = "Ghule",
Abomination = "Monstrositäten",
Necromancer = "Nekromanten",
Banshee = "Banshees",
Fiend = "Gruftbestien",
Gargoyle = "Gargoyles",
Wyrm = "Frostwyrm",
Stalker = "Teufelspirscher",
Infernal = "Höllenbestien"
}
+153
View File
@@ -0,0 +1,153 @@
local L
------------------------
-- Rage Winterchill --
------------------------
L = DBM:GetModLocalization("RageWinterchill")
L:SetGeneralLocalization({
name = "Rage Winterchill"
})
L:SetWarningLocalization({
})
L:SetTimerLocalization({
})
L:SetOptionLocalization({
})
L:SetMiscLocalization({
Transition1 = "%s calls for assistance!",
Transition2 = "%s shatters his Ice Bullwark, continuing his assault!",
TransitionYell = "It will be much colder in your grave.",
SayFrozenFade = ""..UnitName("PLAYER").."is frozen solid for 10 seconds!",
Jaina = "Lady Jaina Proudmoore"
})
-----------------
-- Anetheron --
-----------------
L = DBM:GetModLocalization("Anetheron")
L:SetGeneralLocalization({
name = "Anetheron"
})
L:SetWarningLocalization({
})
L:SetTimerLocalization({
})
L:SetOptionLocalization({
})
L:SetMiscLocalization({
RingofFrost = "I am summoning a ring of frost heroes! Quickly, move our enemies into my trap!",
Nightmare = "Anetheron sends %s into a nightmare!",
Infernal1 = "Let fire rain from above!",
Infernal2 = "Earth and sky shall burn!",
Jaina = "Lady Jaina Proudmoore"
})
----------------
-- Kazrogal --
----------------
L = DBM:GetModLocalization("Kazrogal")
L:SetGeneralLocalization({
name = "Kaz'rogal"
})
L:SetWarningLocalization({
})
L:SetTimerLocalization({
})
L:SetOptionLocalization({
})
L:SetMiscLocalization({
})
---------------
-- Azgalor --
---------------
L = DBM:GetModLocalization("Azgalor")
L:SetGeneralLocalization({
name = "Azgalor"
})
L:SetWarningLocalization({
})
L:SetTimerLocalization({
})
L:SetOptionLocalization({
})
L:SetMiscLocalization({
LegionPortal = "Legion Portal"
})
------------------
-- Chromius --
------------------
L = DBM:GetModLocalization("Chromius")
L:SetGeneralLocalization({
name = "Chromius"
})
L:SetWarningLocalization({
})
L:SetTimerLocalization({
})
L:SetOptionLocalization({
})
L:SetMiscLocalization({
ChromiusRP ="You again? I should have known... ",
ChromiusRP2 ="You again? I should have known... ",
JainaPhaseYell ="All this fighting. All this talking. But my words only fall on deaf ears. Maybe a certain mage might be willing to listen...",
JainaPhaseEnd ="Oh Jaina, you would have been happier this way. For a time...",
GromPhaseYell ="Don't listen to her! You must ensure Thrall survives, and Grom must meet his fate",
MannorothYell ="His blood is mine! As is your whole miss misbegotten race!",
GromPhaseEnd ="You should have saved the other one...",
TyrandePhaseYell ="What? She can see the future? I'll take a guess and say save Tyrande, whatever it takes",
TyrandePhaseEnd ="That's sad. They didn't make it. Neither will you if you keep standing in my way! "
})
------------------
-- Archimonde --
------------------
L = DBM:GetModLocalization("Archimonde")
L:SetGeneralLocalization({
name = "Archimonde"
})
L:SetWarningLocalization({
})
L:SetTimerLocalization({
})
L:SetOptionLocalization({
})
L:SetMiscLocalization({
FightStartYell ="All of your efforts have been in vain, for the draining of the World Tree has already begun! Soon the heart of your world will beat no more!",
FirePhase ="Your resistance is insignificant.",
WardofWinter ="I going to place a ward on %s! Use it to quench the fire!",
LightningCapTotem ="I am summoning a Lightning Capture Totem near us! Lure the Ball Lightnings near it!",
LightofElune ="Great Mother, your daugther requires aid. Grant %s your blessed light and guide them through the darkness of the endless night!",
CalloftheVoid ="At last it is here! Mourn and lament the passing of all you have ever known, and all that would have been! Hach min corai!"
})
+96
View File
@@ -0,0 +1,96 @@
if GetLocale() ~= "esES" and GetLocale() ~= "esMX" then return end
local L
------------------------
-- Rage Winterchill --
------------------------
L = DBM:GetModLocalization("Rage")
L:SetGeneralLocalization{
name = "Ira Fríoinvierno"
}
-----------------
-- Anetheron --
-----------------
L = DBM:GetModLocalization("Anetheron")
L:SetGeneralLocalization{
name = "Anetheron"
}
----------------
-- Kazrogal --
----------------
L = DBM:GetModLocalization("Kazrogal")
L:SetGeneralLocalization{
name = "Kaz'rogal"
}
---------------
-- Azgalor --
---------------
L = DBM:GetModLocalization("Azgalor")
L:SetGeneralLocalization{
name = "Azgalor"
}
------------------
-- Archimonde --
------------------
L = DBM:GetModLocalization("Archimonde")
L:SetGeneralLocalization{
name = "Archimonde"
}
----------------
-- WaveTimers --
----------------
L = DBM:GetModLocalization("HyjalWaveTimers")
L:SetGeneralLocalization{
name = "Oleadas"
}
L:SetWarningLocalization{
WarnWave = "%s",
}
L:SetTimerLocalization{
TimerWave = "Siguiente oleada"
}
L:SetOptionLocalization{
WarnWave = "Mostrar aviso cuando se aproxime una oleada",
DetailedWave = "Mostrar aviso detallado con los tipos y número de enemigos cuando se aproxime una oleada",
TimerWave = "Mostrar temporizador para la siguiente oleada"
}
L:SetMiscLocalization{
HyjalZoneName = "La Cima Hyjal",
Thrall = "Thrall",
Jaina = "Lady Jaina Valiente",
GeneralBoss = "Se aproxima un jefe",
RageWinterchill = "Se aproxima Ira Fríoinvierno",
Anetheron = "Se aproxima Anetheron",
Kazrogal = "Se aproxima Kazrogal",
Azgalor = "Se aproxima Azgalor",
WarnWave_0 = "Oleada %s/8",
WarnWave_1 = "Oleada %s/8 - %s %s",
WarnWave_2 = "Oleada %s/8 - %s %s y %s %s",
WarnWave_3 = "Oleada %s/8 - %s %s, %s %s y %s %s",
WarnWave_4 = "Oleada %s/8 - %s %s, %s %s, %s %s y %s %s",
WarnWave_5 = "Oleada %s/8 - %s %s, %s %s, %s %s, %s %s y %s %s",
RageGossip = "Mis compañeros y yo estamos contigo, Lady Valiente.",
AnetheronGossip = "Estamos listos para cualquier cosa que Archimonde nos mande, Lady Valiente.",
KazrogalGossip = "Estoy contigo, Thrall.",
AzgalorGossip = "No tenemos nada que temer.",
Ghoul = "Necrófagos",
Abomination = "Abominaciones",
Necromancer = "Nigromantes",
Banshee = "Almas en pena",
Fiend = "Malignos de cripta",
Gargoyle = "Gárgolas",
Wyrm = "Vermis de escarcha",
Stalker = "Acechadores viles",
Infernal = "Infernales"
}
+100
View File
@@ -0,0 +1,100 @@
if GetLocale() ~= "koKR" then return end
local L
------------------------
-- Rage Winterchill --
------------------------
L = DBM:GetModLocalization("Rage")
L:SetGeneralLocalization{
name = "격노한 윈터칠"
}
-----------------
-- Anetheron --
-----------------
L = DBM:GetModLocalization("Anetheron")
L:SetGeneralLocalization{
name = "아네테론"
}
----------------
-- Kazrogal --
----------------
L = DBM:GetModLocalization("Kazrogal")
L:SetGeneralLocalization{
name = "카즈로갈"
}
---------------
-- Azgalor --
---------------
L = DBM:GetModLocalization("Azgalor")
L:SetGeneralLocalization{
name = "아즈갈로"
}
------------------
-- Archimonde --
------------------
L = DBM:GetModLocalization("Archimonde")
L:SetGeneralLocalization{
name = "아키몬드"
}
----------------
-- WaveTimers --
----------------
L = DBM:GetModLocalization("HyjalWaveTimers")
L:SetGeneralLocalization{
name = "하이잘: 일반구간"
}
L:SetWarningLocalization{
WarnWave = "%s",
}
L:SetTimerLocalization{
TimerWave = "다음 공격"
}
L:SetOptionLocalization{
WarnWave = "다음 공격 알림 보기",
DetailedWave = "다음 공격 알림시 적 조합까지 자세히 보기",
TimerWave = "다음 공격 바 보기"
}
L:SetMiscLocalization{
HyjalZoneName = "하이잘 정상",
Thrall = "스랄",
Jaina = "제이나 프라우드무어",
GeneralBoss = "곧 우두머리",
RageWinterchill = "곧 격노한 윈터칠",
Anetheron = "곧 아네테론",
Kazrogal = "곧 카즈로갈",
Azgalor = "곧 아즈갈로",
WarnWave_0 = "공격 %s/8",
WarnWave_1 = "공격 %s/8 - %s %s",
WarnWave_2 = "공격 %s/8 - %s %s, %s %s",
WarnWave_3 = "공격 %s/8 - %s %s, %s %s, %s %s",
WarnWave_4 = "공격 %s/8 - %s %s, %s %s, %s %s, %s %s",
WarnWave_5 = "공격 %s/8 - %s %s, %s %s, %s %s, %s %s, %s %s",
RageGossip = "제 동료와 저는 프라우드무어 님, 당신과 함께하겠습니다.",
AnetheronGossip = "아키몬드가 어떤 군대를 보내던 우리는 준비가 되어 있습니다, 프라우드무어 님.",
KazrogalGossip = "당신과 함께하겠습니다, 대족장님.",
AzgalorGossip = "두려워할 것은 아무것도 없습니다.",
Ghoul = "구울",
Abomination = "누더기골렘",
Necromancer = "강령술사",
Banshee = "밴시",
Fiend = "지하마귀",
Gargoyle = "가고일",
Wyrm = "서리고룡",
Stalker = "지옥사냥개",
Infernal = "지옥불정령"
}
+98
View File
@@ -0,0 +1,98 @@
if GetLocale() ~= "ruRU" then return end
local L
------------------------
-- Rage Winterchill --
------------------------
L = DBM:GetModLocalization("Rage")
L:SetGeneralLocalization{
name = "Лютый Хлад"
}
-----------------
-- Anetheron --
-----------------
L = DBM:GetModLocalization("Anetheron")
L:SetGeneralLocalization{
name = "Анетерон"
}
----------------
-- Kazrogal --
----------------
L = DBM:GetModLocalization("Kazrogal")
L:SetGeneralLocalization{
name = "Каз'рогал"
}
---------------
-- Azgalor --
---------------
L = DBM:GetModLocalization("Azgalor")
L:SetGeneralLocalization{
name = "Азгалор"
}
------------------
-- Archimonde --
------------------
L = DBM:GetModLocalization("Archimonde")
L:SetGeneralLocalization{
name = "Архимонд"
}
----------------
-- WaveTimers --
----------------
L = DBM:GetModLocalization("HyjalWaveTimers")
L:SetGeneralLocalization{
name = "Треш-мобы"
}
L:SetWarningLocalization{
WarnWave = "%s",
WarnWaveSoon= "Скоро следующая волна"
}
L:SetTimerLocalization{
TimerWave = "Следующая волна"
}
L:SetOptionLocalization{
WarnWave = "Warn when a new wave is incoming",--Translate
WarnWaveSoon = "Warn when a new wave is incoming soon",--Translate
DetailedWave = "Detailed warning when a new wave is incoming (which mobs)",--Translate
TimerWave = "Show a timer for next wave"--Translate
}
L:SetMiscLocalization{
HyjalZoneName = "Вершина Хиджала",
Thrall = "Тралл",
Jaina = "Леди Джайна Праудмур",
RageWinterchill = "Лютый Хлад",
Anetheron = "Анетерон",
Kazrogal = "Каз'рогал",
Azgalor = "Азгалор",
WarnWave_0 = "Волна %s/8",
WarnWave_1 = "Волна %s/8 - %s %s",
WarnWave_2 = "Волна %s/8 - %s %s и %s %s",
WarnWave_3 = "Волна %s/8 - %s %s, %s %s и %s %s",
WarnWave_4 = "Волна %s/8 - %s %s, %s %s, %s %s и %s %s",
WarnWave_5 = "Волна %s/8 - %s %s, %s %s, %s %s, %s %s и %s %s",
RageGossip = "Мои спутники и я – с вами, леди Праудмур.",
AnetheronGossip = "Мы готовы встретить любого, кого пошлет Архимонд.",
KazrogalGossip = "Я с тобой, Тралл.",
AzgalorGossip = "Нам нечего бояться.",
Ghoul = "Вурдалака",
Abomination = "Поганища",
Necromancer = "Некроманта",
Banshee = "Банши",
Fiend = "Некрорахнида",
Gargoyle = "Горгульи",
Wyrm = "Ледяной змей",
Stalker = "Ловчих Скверны",
Infernal = "Инфернала"
}
+97
View File
@@ -0,0 +1,97 @@
if GetLocale() ~= "zhTW" then return end
local L
------------------------
-- Rage Winterchill --
------------------------
L = DBM:GetModLocalization("Rage")
L:SetGeneralLocalization{
name = "瑞齊·凜冬"
}
-----------------
-- Anetheron --
-----------------
L = DBM:GetModLocalization("Anetheron")
L:SetGeneralLocalization{
name = "安納塞隆"
}
----------------
-- Kazrogal --
----------------
L = DBM:GetModLocalization("Kazrogal")
L:SetGeneralLocalization{
name = "卡茲洛加"
}
---------------
-- Azgalor --
---------------
L = DBM:GetModLocalization("Azgalor")
L:SetGeneralLocalization{
name = "亞茲加洛"
}
------------------
-- Archimonde --
------------------
L = DBM:GetModLocalization("Archimonde")
L:SetGeneralLocalization{
name = "阿克蒙德"
}
----------------
-- WaveTimers --
----------------
L = DBM:GetModLocalization("HyjalWaveTimers")
L:SetGeneralLocalization{
name = "小怪模組"
}
L:SetWarningLocalization{
WarnWave = "%s"
}
L:SetTimerLocalization{
TimerWave = "下一波"
}
L:SetOptionLocalization{
WarnWave = "當新一波進攻到來時顯示警告",
DetailedWave = "當新一波進攻到來時顯示詳細警告(何種怪)",
TimerWave = "為下一波進攻顯示計時器"
}
L:SetMiscLocalization{
HyjalZoneName = "海加爾山",
Thrall = "索爾",
Jaina = "珍娜·普勞德摩爾女士",
GeneralBoss = "首領到來",
RageWinterchill = "瑞齊·凜冬到來",
Anetheron = "安納塞隆到來",
Kazrogal = "卡茲洛加到來",
Azgalor = "亞茲加洛到來",
WarnWave_0 = "第%s/8波",
WarnWave_1 = "第%s/8波 - %s %s",
WarnWave_2 = "第%s/8波 - %s %s 和 %s %s",
WarnWave_3 = "第%s/8波 - %s %s, %s %s 和 %s %s",
WarnWave_4 = "第%s/8波 - %s %s, %s %s, %s %s 和 %s %s",
WarnWave_5 = "第%s/8波 - %s %s, %s %s, %s %s, %s %s 和 %s %s",
RageGossip = "我和我的同伴都與你同在,普勞德摩爾女士。",
AnetheronGossip = "不管阿克蒙德要派誰來對付我們,我們都已經準備好了,普勞德摩爾女士。",
KazrogalGossip = "我與你同在,索爾。",
AzgalorGossip = "我們無所畏懼。",
Ghoul = "食屍鬼",
Abomination = "憎惡",
Necromancer = "死靈法師",
Banshee = "女妖",
Fiend = "地穴惡魔",
Gargoyle = "石像鬼",
Wyrm = "冰龍",
Stalker = "惡魔捕獵者",
Infernal = "巨型地獄火"
}