vanilla-wow-addons – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | --<< ====================================================================== >>-- |
2 | -- Setup Module -- |
||
3 | --<< ====================================================================== >>-- |
||
4 | AceTimerHunter = AceTimer:AddModule() |
||
5 | |||
6 | function AceTimerHunter:Initialize() |
||
7 | local _, eclass = UnitClass("player") |
||
8 | if eclass ~= "HUNTER" then |
||
9 | self:DelModule(self) |
||
10 | AceTimerHunter = nil |
||
11 | ACETIMER.HUNTER = nil |
||
12 | end |
||
13 | end |
||
14 | |||
15 | function AceTimerHunter:Enable() |
||
16 | self:Setup() |
||
17 | self:RegisterEvent("CHAT_MSG_SPELL_PET_DAMAGE", "SPELL_PET_DAMAGE"); |
||
18 | end |
||
19 | |||
20 | function AceTimerHunter:Disable() |
||
21 | self:UnregisterAllEvents(self) |
||
22 | end |
||
23 | |||
24 | --<< ====================================================================== >>-- |
||
25 | -- Setup Timers -- |
||
26 | --<< ====================================================================== >>-- |
||
27 | function AceTimerHunter:Setup() |
||
28 | local A = ACETIMER |
||
29 | local C = A.HUNTER |
||
30 | |||
31 | self:AddGroup(1, TRUE, "FUCHSIA") |
||
32 | self:AddGroup(2, FALSE, "MAROON") |
||
33 | |||
34 | self:AddTimer(A.SPELL, C.BESTIAL_WRATH, 15, 0,1,1) |
||
35 | self:AddTimer(A.SPELL, C.CONCUSSIVE_SHOT, 4, 1,0,0, { ea={[C.IMPROVED_CONCUSSIVE_SHOT]=4} }) |
||
36 | self:AddTimer(A.SPELL, C.COUNTERATTACK, 5, 1,0,0) |
||
37 | self:AddTimer(A.SPELL, C.DETERRENCE, 10, 0,1,1) |
||
38 | self:AddTimer(A.SPELL, C.EXPLOSIVE_TRAP, 60, 0,0,0, { gr=1, rc=TRUE, ea={[C.EXPLOSIVE_TRAP_EFFECT]=60} }) |
||
39 | self:AddTimer(A.SPELL, C.FREEZING_TRAP, 60, 0,0,0, { gr=1, rc=TRUE, ea={[C.FREEZING_TRAP_EFFECT]=60} }) |
||
40 | self:AddTimer(A.SPELL, C.FROST_TRAP, 60, 0,0,0, { gr=1, rc=TRUE, ea={[C.FROST_TRAP_EFFECT]=60} }) |
||
41 | self:AddTimer(A.SPELL, C.FLARE, 30, 0,0,0, { rc=TRUE }) |
||
42 | self:AddTimer(A.SPELL, C.HUNTER_S_MARK, 120, 1,0,0, { rc=TRUE }) |
||
43 | self:AddTimer(A.SPELL, C.IMMOLATION_TRAP, 60, 0,0,0, { gr=1, ea={[C.IMMOLATION_TRAP_EFFECT]=60} }) |
||
44 | self:AddTimer(A.SPELL, C.RAPID_FIRE, 10, 0,1,1) |
||
45 | self:AddTimer(A.SPELL, C.SCARE_BEAST, 10, 1,0,0, { rc=TRUE, d={rs=5} }) |
||
46 | self:AddTimer(A.SPELL, C.SCATTER_SHOT, 4, 1,0,0) |
||
47 | self:AddTimer(A.SPELL, C.SCORPID_STING, 20, 1,0,0, { gr=2, rc=TRUE }) |
||
48 | self:AddTimer(A.SPELL, C.SERPENT_STING, 15, 1,0,0, { gr=2, rc=TRUE }) |
||
49 | self:AddTimer(A.SPELL, C.VIPER_STING, 8, 1,0,0, { gr=2, rc=TRUE }) |
||
50 | self:AddTimer(A.SPELL, C.WING_CLIP, 10, 1,0,0, { rc=TRUE, ea={[C.IMPROVED_WING_CLIP]=10} }) |
||
51 | self:AddTimer(A.SPELL, C.WYVERN_STING, 12, 1,0,0, { gr=2, rc=TRUE }) |
||
52 | |||
53 | self:AddTimer(A.EVENT, C.EXPLOSIVE_TRAP_EFFECT, 20, 1,0,1, { gr=1, xn=C.EXPLOSIVE_TRAP }) |
||
54 | self:AddTimer(A.EVENT, C.FREEZING_TRAP_EFFECT, 10, 1,0,1, { gr=1, d={rs=5, tn=C.CLEVER_TRAPS, tb=0.15, tp=1}, xn=C.FREEZING_TRAP }) |
||
55 | self:AddTimer(A.EVENT, C.FROST_TRAP_EFFECT, 30, 0,0,0, { gr=1, d={tn=C.CLEVER_TRAPS, tb=0.15, tp=1}, xn=C.FROST_TRAP }) |
||
56 | self:AddTimer(A.EVENT, C.IMMOLATION_TRAP_EFFECT, 20, 1,0,1, { gr=1, xn=C.IMMOLATION_TRAP }) |
||
57 | self:AddTimer(A.EVENT, C.IMPROVED_CONCUSSIVE_SHOT, 3, 1,0,0, { cr="LIME", xn=C.CONCUSSIVE_SHOT }) |
||
58 | self:AddTimer(A.EVENT, C.IMPROVED_WING_CLIP, 5, 1,0,0, { cr="LIME", xn=C.WING_CLIP } ) |
||
59 | self:AddTimer(A.EVENT, C.QUICK_SHOTS, 12, 0,1,1, { a=1, cr="LIME", tx="Interface\\Icons\\Ability_Warrior_InnerRage" }) |
||
60 | |||
61 | self:AddTimer(A.SKILL, C.COUNTERATTACK, 5, 0,1,0, { cr="YELLOW", rc=TRUE }) |
||
62 | self:AddTimer(A.SKILL, C.MONGOOSE_BITE, 5, 0,1,0, { cr="YELLOW", rc=TRUE }) |
||
63 | end |
||
64 | |||
65 | --<< ====================================================================== >>-- |
||
66 | -- Trap Specific -- |
||
67 | --<< ====================================================================== >>-- |
||
68 | function AceTimerHunter:SPELL_PET_DAMAGE() |
||
69 | if self:FindGlobal(arg1, SPELLRESISTOTHEROTHER) -- "%s's %s was resisted by %s."; |
||
70 | then |
||
71 | local event = self.timers[ACETIMER.EVENT][self.gs_captured[2]] |
||
72 | if event and event.x.gr and event.x.gr == 1 and event.v and event.v > GetTime() then |
||
73 | if self.gs_captured[2] == ACETIMER.HUNTER.FROST_TRAP_EFFECT then |
||
74 | self:StartTimer(ACETIMER.EVENT, self.gs_captured[2], "none") |
||
75 | else |
||
76 | self:CleanGroup(event.x.gr, self.gs_captured[3]) |
||
77 | end |
||
78 | event.v = nil |
||
79 | end |
||
80 | end |
||
81 | end |