WoWInterface SVN RaidWatch2

[/] [trunk/] [RaidWatch_Ulduar/] [Auriaya.lua] - Rev 22

Compare with Previous | Blame | View Log

local mod = RW:Boss("Auriaya", "Ulduar", "The Antechamber of Ulduar")
local L

mod.BossIcon = [[Interface\Icons\achievement_boss_auriaya_01]]

---------------------------
-- Variables
local tBerserk
local tSonicCD, tSonicCast
local tSwarmCD, mSwarm
local tEssenceCD, mEssence, EssenceCount
local mSeeping
local tTerrifyingCD, tTerrifyingCast

---------------------------
-- Init

function mod:OnRegister()
        L = mod:RegisterLocale(self:GetName(), "enUS", true)
        if L then
                L.YellPull = "Some things are better left alone!"
                L.essence = "Feral Essence up - %d Lives left"
                L.essence_opt = "Essence count"
        end
        L = mod:GetLocale()
        self.L = L
        
        self:SetTrigger(33515, L.YellPull)
        self:SetWin(33515)
        
--      tSwarmCD = self:CDtimer()
--  Does swarm have a set CD?

--      tEssenceCD = self:CDtimer()
--  Surely essence has a CD but noone bothered to time it.

        tSonicCD, tSonicCast = self:CDTimer(25, 64688), self:CastTimer(64688)
        tTerrifyingCD, tTerrifyingCast = self:CDTimer(37, 64386), self:CastTimer(64386)
        mSwarm = self:TargetMessage(64396)
        mEssence = self:CustomMessage(L.essence, L.essence_opt, 64449, nil, false)
        mSeeping = self:TargetMessage(64459)
        
        tBerserk = self:BerserkTimer(600)
end

---------------------------
-- Locals

---------------------------
-- Start

function mod:OnEngage(trigger)
        self:Track("GuardianSwarm", 64396)
        self:Track("FeralEssence", 64455)
        self:Track("SeepingFeralEssence", 64459, 64675)
        self:Track("SonicScreech", 64688, 64422)
        self:Track("TerrifyingScreech", 64386)
        
        EssenceCount = 9
        tBerserk:Start()

        tSonicCD:Start()
        tTerrifyingCD:Start()
--  Assuming the casts start with a normal cd and not delayed or random.
end

function mod:GuardianSwarm(event, args)
        if event == "SPELL_AURA_APPLIED" then
                mSwarm:Show(args.dName)
        end
end

function mod:FeralEssence(event, args)
        if event == "SPELL_AURA_APPLIED" then
                mEssence:Show(EssenceCount)
        end
        if event == "SPELL_AURA_REMOVED" then
                EssenceCount = EssenceCount - 1
        end
end

function mod:SeepingFeralEssence(event, args)
        if event == "SPELL_AURA_APPLIED" then
                if args:IsPlayer() then
                        mSeeping:Show()
                end
        end
end
                

function mod:SonicScreech(event, args)
        if event == "SPELL_CAST_START" then
                tSonicCast:Start()
                tSonicCD:Schedule(2.5)
        end
end

function mod:TerrifyingScreech(event, args)
        if event == "SPELL_CAST_START" then
                tTerrifyingCast:Start()
                tTerrifyingCD:Schedule(2)
        end
end

Compare with Previous | Blame