vanilla-wow-addons – Blame information for rev 1

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 office 1 --<< ====================================================================== >>--
2 -- Setup Module --
3 --<< ====================================================================== >>--
4 AceTimerWarlock = AceTimer:AddModule()
5  
6 function AceTimerWarlock:Initialize()
7 local _, eclass = UnitClass("player")
8 if eclass ~= "WARLOCK" then
9 self:DelModule(self)
10 AceTimerWarlock = nil
11 ACETIMER.WARLOCK = nil
12 end
13 end
14  
15 function AceTimerWarlock:Enable()
16 self:Setup()
17 self:RegisterEvent("CHAT_MSG_SPELL_PET_DAMAGE", "SPELL_PET_DAMAGE");
18 end
19  
20 function AceTimerWarlock:Disable()
21 self:UnregisterAllEvents(self)
22 end
23  
24 --<< ====================================================================== >>--
25 -- Setup Timers --
26 --<< ====================================================================== >>--
27 function AceTimerWarlock:Setup()
28 local A = ACETIMER
29 local C = A.WARLOCK
30 self:AddGroup(1, TRUE, "FUCHSIA")
31 self:AddGroup(2, FALSE, "MAROON")
32 self:AddGroup(3, TRUE, "RED")
33  
34 self:AddTimer(A.SPELL, C.AMPLIFY_CURSE, 30, 0,1,1)
35 self:AddTimer(A.SPELL, C.BANISH, 20, 1,0,0, { gr=1, rc=TRUE, d={rs=10} })
36 self:AddTimer(A.SPELL, C.CORRUPTION, 18, 1,0,0, { rc=TRUE, d={rt={12,15}} })
37 self:AddTimer(A.SPELL, C.CURSE_OF_AGONY, 24, 1,0,0, { gr=2, rc=TRUE })
38 self:AddTimer(A.SPELL, C.CURSE_OF_DOOM, 60, 1,0,0, { gr=2, rc=TRUE })
39 self:AddTimer(A.SPELL, C.CURSE_OF_EXHAUSTION, 12, 1,0,0, { gr=2, rc=TRUE })
40 self:AddTimer(A.SPELL, C.CURSE_OF_RECKLESSNESS, 120, 1,0,0, { gr=2, rc=TRUE })
41 self:AddTimer(A.SPELL, C.CURSE_OF_SHADOW, 300, 1,0,0, { gr=2, rc=TRUE })
42 self:AddTimer(A.SPELL, C.CURSE_OF_TONGUES, 30, 1,0,0, { gr=2, rc=TRUE })
43 self:AddTimer(A.SPELL, C.CURSE_OF_WEAKNESS, 120, 1,0,0, { gr=2, rc=TRUE })
44 self:AddTimer(A.SPELL, C.CURSE_OF_THE_ELEMENTS, 300, 1,0,0, { gr=2, rc=TRUE })
45 self:AddTimer(A.SPELL, C.DEATH_COIL, 3, 1,0,0)
46 self:AddTimer(A.SPELL, C.FEAR, 10, 1,0,0, { gr=3, rc=TRUE, d={rs=5} })
47 self:AddTimer(A.SPELL, C.FEL_DOMINATION, 15, 0,1,1)
48 self:AddTimer(A.SPELL, C.HOWL_OF_TERROR, 10, 0,0,0, { d={rs=5} })
49 self:AddTimer(A.SPELL, C.IMMOLATE, 15, 1,0,0, { rc=TRUE })
50 self:AddTimer(A.SPELL, C.SHADOW_BOLT, 0, 1,0,0, { ea={[C.SHADOW_VULNERABILITY]=2} })
51 self:AddTimer(A.SPELL, C.SHADOW_WARD, 30, 0,1,1)
52 self:AddTimer(A.SPELL, C.SHADOWBURN, 5, 1,0,0)
53 self:AddTimer(A.SPELL, C.SIPHON_LIFE, 30, 1,0,0, { rc=TRUE })
54  
55 self:AddTimer(A.EVENT, C.AFTERMATH, 5, 0,1,1, { cr="LIME", a=1 })
56 self:AddTimer(A.EVENT, C.ENSLAVE_DEMON, 300, 1,0,0, { cr="BLUE", a=1 })
57 self:AddTimer(A.EVENT, C.PYROCLASM, 3, 0,1,1, { cr="LIME", a=1 })
58 self:AddTimer(A.EVENT, C.SACRIFICE, 30, 0,1,1, { cr="LIME", a=1 })
59 self:AddTimer(A.EVENT, C.SEDUCTION, 15, 1,0,1, { cr="RED" })
60 self:AddTimer(A.EVENT, C.SHADOW_VULNERABILITY, 12, 1,0,0, { cr="LIME", xn=C.SHADOW_BOLT })
61 self:AddTimer(A.EVENT, C.SHADOW_TRANCE, 10, 0,1,1, { cr="LIME", a=1, xn=C.NIGHTFALL })
62 self:AddTimer(A.EVENT, C.SOUL_SIPHON, 10, 0,1,1, { cr="LIME", a=1, xn=C.DRAIN_SOUL })
63 end
64  
65 --<< ====================================================================== >>--
66 -- Pet Spell Spicific --
67 --<< ====================================================================== >>--
68 function AceTimerWarlock:SPELL_PET_DAMAGE()
69 if self:FindGlobal(arg1, SPELLCASTGOOTHERTARGETTED) -- "%s casts %s on %s.";
70 or self:FindGlobal(arg1, SPELLCASTGOOTHER) -- "%s casts %s.";
71 then
72 local timer = self.timers[ACETIMER.EVENT][self.gs_captured[2]]
73 if timer then
74 timer.t = self.gs_captured[3] or UnitName("pettarget")
75 timer.v = GetTime() + 3
76 end
77 end
78 end