Author: Omega
Date: Fri Mar 05 08:13:35 CET 2010
Revision: 3744
Log:

#ICC/Sindragosa: Changed instability to 5 seconds, down from 8 do to recent hotfixes.
#ICC/Rotface: Added Vile Gas warnings and CD timer for heroic rotface.
#ICC/Lich King: Now supports detecting necrotic plagues that jump from player to player (requires entire raid using 3744 or higher for syncing of targets)

Updated
trunk/DBM-Icecrown/FrostwingHalls/Sindragosa.lua
Updated
trunk/DBM-Icecrown/TheFrozenThrone/LichKing.lua
Updated
trunk/DBM-Icecrown/ThePlagueworks/Festergut.lua
Updated
trunk/DBM-Icecrown/ThePlagueworks/Rotface.lua
Updated
trunk/DBM-Icecrown/localization.en.lua

trunk/DBM-Icecrown/FrostwingHalls/Sindragosa.lua
Action: modified
Old revision: 3743
Old date: 2010-03-04 05:31:41 UTC

@@ -42,7 +42,7 @@
local timerNextFrostBreath = mod:NewNextTimer(22, 71056, nil, mod:IsTank() or mod:IsHealer())
local timerNextBlisteringCold = mod:NewCDTimer(69, 70123)
local timerBlisteringCold = mod:NewCastTimer(6, 70123)
-local timerInstability = mod:NewBuffActiveTimer(8, 69766)
+local timerInstability = mod:NewBuffActiveTimer(5, 69766)
local timerChilledtotheBone = mod:NewBuffActiveTimer(8, 70106)
local timerMysticBuffet = mod:NewBuffActiveTimer(8, 70128)
local timerNextMysticBuffet = mod:NewNextTimer(6, 70128)


trunk/DBM-Icecrown/TheFrozenThrone/LichKing.lua
Action: modified
Old revision: 3743
Old date: 2010-03-04 05:31:41 UTC

@@ -16,7 +16,8 @@
"SPELL_SUMMON",
"SPELL_DAMAGE",
"UNIT_HEALTH",
- "CHAT_MSG_MONSTER_YELL"
+ "CHAT_MSG_MONSTER_YELL",
+ "CHAT_MSG_RAID_BOSS_WHISPER"
)

local warnRemorselessWinter = mod:NewSpellAnnounce(74270, 3) --Phase Transition Start Ability
@@ -79,20 +80,8 @@
local phase = 0
local warned_preP2 = false
local warned_preP3 = false
+local lastPlagueCast = 0

---[[local function isunitdebuffed(spellID)
- local name = GetSpellInfo(spellID)
- if not name then return false end
-
- for i=1, 40, 1 do
- local debuffname = UnitDebuff("player", i, "HARMFUL")
- if debuffname == name then
- return true
- end
- end
- return false
-end--]]
-
function mod:OnCombatStart(delay)
berserkTimer:Start(-delay)
phase = 0
@@ -178,19 +167,17 @@
end

function mod:SPELL_CAST_SUCCESS(args)
- if args:IsSpellID(70337, 73912, 73913, 73914) then -- Necrotic Plague (SPELL_AURA_APPLIED is not fired for this spell, there is no way to detect jumps to other players.)
+ if args:IsSpellID(70337, 73912, 73913, 73914) then -- Necrotic Plague (SPELL_AURA_APPLIED is not fired for this spell)
warnNecroticPlague:Show(args.destName)
timerNecroticPlagueCD:Start()
timerNecroticPlagueCleanse:Start()
+ lastPlagueCast = time()
if self.Options.NecroticPlagueIcon then
self:SetIcon(args.destName, 7, 5)
end
if args:IsPlayer() then
specWarnNecroticPlague:Show()
end
---[[ if (isunitdebuffed(70338) or isunitdebuffed(73785) or isunitdebuffed(73786) or isunitdebuffed(73787) or isunitdebuffed(70337) or isunitdebuffed(73912) or isunitdebuffed(73913) or isunitdebuffed(73914)) then
- specWarnNecroticPlague:Show()
- end--]]
elseif args:IsSpellID(69409, 73797, 73798, 73799) then -- Soul reaper (MT debuff)
warnSoulreaper:Show(args.destName)
specwarnSoulreaper:Show(args.destName)
@@ -331,10 +318,27 @@
end
end

+function mod:CHAT_MSG_RAID_BOSS_WHISPER(msg)
+ if msg:find(L.PlagueWhisper) then
+ self:SendSync("PlagueOn", UnitName("player"))
+ end
+end
+
function mod:OnSync(msg, arg)
if msg == "LKPull" then
timerCombatStart:Start()
elseif msg == "LKRoleplay" then
timerRoleplay:Start()
+ elseif msg == "PlagueOn" then
+ if time() - lastPlagueCast > 2 then --Dirty hack to prevent function from doing anything for lich kings direct casts of necrotic plague.
+ warnNecroticPlague:Show(target) --We only want this function to work when it jumps from target to target.
+ timerNecroticPlagueCleanse:Start()
+ if target == UnitName("player") then
+ specWarnNecroticPlague:Show()
end
+ if self.Options.NecroticPlagueIcon then
+ self:SetIcon(target, 7, 5)
end
+ end
+ end
+end


trunk/DBM-Icecrown/ThePlagueworks/Festergut.lua
Action: modified
Old revision: 3743
Old date: 2010-03-04 05:31:41 UTC

@@ -95,6 +95,7 @@
timerInhaledBlight:Start(-delay)
timerGasSporeCD:Start(20-delay)--This may need tweaking
table.wipe(gasSporeTargets)
+ table.wipe(vileGasTargets)
gasSporeIcon = 8
gasSporeCast = 0
-- noCheck = true


trunk/DBM-Icecrown/ThePlagueworks/Rotface.lua
Action: modified
Old revision: 3743
Old date: 2010-03-04 05:31:41 UTC

@@ -25,6 +25,7 @@
local warnOozeSpawn = mod:NewAnnounce("WarnOozeSpawn", 1)
local warnStickyOoze = mod:NewSpellAnnounce(69774, 1)
local warnUnstableOoze = mod:NewAnnounce("WarnUnstableOoze", 2, 69558)
+local warnVileGas = mod:NewTargetAnnounce(72272, 3)

local specWarnMutatedInfection = mod:NewSpecialWarningYou(71224)
local specWarnStickyOoze = mod:NewSpecialWarningMove(69774)
@@ -32,22 +33,35 @@
local specWarnSlimeSpray = mod:NewSpecialWarningSpell(69508, false)--For people that need a bigger warning to move
local specWarnRadiatingOoze = mod:NewSpecialWarningSpell(69760, false)
local specWarnLittleOoze = mod:NewSpecialWarning("specWarnLittleOoze")
+local specWarnVileGas = mod:NewSpecialWarningYou(72272)

local timerStickyOoze = mod:NewNextTimer(16, 69774, nil, mod:IsTank())
local timerWallSlime = mod:NewTimer(20, "NextPoisonSlimePipes", 69789)
local timerSlimeSpray = mod:NewNextTimer(21, 69508)
local timerMutatedInfection = mod:NewTargetTimer(12, 71224)
local timerOozeExplosion = mod:NewCastTimer(4, 69839)
+local timerVileGasCD = mod:NewNextTimer(30, 72272)

local soundMutatedInfection = mod:NewSound(71224)
mod:AddBoolOption("InfectionIcon", true)
mod:AddBoolOption("ExplosionIcon", false)

+local RFVileGasTargets = {}
+
+local function warnRFVileGasTargets()
+ warnVileGas:Show(table.concat(RFVileGasTargets, "<, >"))
+ table.wipe(RFVileGasTargets)
+ timerVileGas:Start()
+end
+
function mod:OnCombatStart(delay)
timerWallSlime:Start(25-delay)
self:ScheduleMethod(25-delay, "WallSlime")
InfectionIcon = 7
+ if mod:IsDifficulty("heroic10") or mod:IsDifficulty("heroic25") then
+ timerVileGasCD:Start(25-delay)
end
+end

function mod:WallSlime()
if self:IsInCombat() then
@@ -99,8 +113,16 @@
InfectionIcon = 7
end
end
+ elseif args:IsSpellID(72272) then -- Vile Gas(Heroic Rotface only, 25 man spellid the same as 10?)
+ RFVileGasTargets[#RFVileGasTargets + 1] = args.destName
+ timerVileGasCD:Start()
+ if args:IsPlayer() then
+ specWarnVileGas:Show()
end
+ self:Unschedule(warnRFVileGasTargets)
+ self:Schedule(0.8, warnRFVileGasTargets)
end
+end

function mod:SPELL_AURA_REMOVED(args)
if args:IsSpellID(69674, 71224, 73022, 73023) then


trunk/DBM-Icecrown/localization.en.lua
Action: modified
Old revision: 3743
Old date: 2010-03-04 05:31:41 UTC

@@ -472,5 +472,6 @@
YellDefile = "Defile on me!",
YellTrap = "Shadow Trap on me!",
YellKill = "No questions remain unanswered. No doubts linger. You ARE Azeroth's greatest champions. You overcame every challenge I laid before you. My mightiest servants have fallen before your relentless onslaught... your unbridled fury...",
- LKRoleplay = "Is it truly righteousness that drives you? I wonder..."
+ LKRoleplay = "Is it truly righteousness that drives you? I wonder...",
+ PlagueWhisper = "You have been infected by"
}