|
skeen@0
|
1 --
|
|
skeen@0
|
2 -- SkeenCore3BeastMasteryHunter
|
|
skeen@0
|
3 --
|
|
skeen@5
|
4 local LibSkeenCore = LibStub("LibSkeenCore");
|
|
skeen@0
|
5
|
|
skeen@0
|
6 local function Rotation()
|
|
skeen@0
|
7
|
|
skeen@0
|
8 local guid = UnitGUID("target")
|
|
skeen@0
|
9 local puid = UnitGUID("player")
|
|
skeen@0
|
10
|
|
skeen@0
|
11 if UnitName("target") == nil or UnitIsFriend("player","target") ~= nil or UnitHealth("target") == 0 then
|
|
skeen@0
|
12 return nil-- ignore the dead and friendly
|
|
skeen@0
|
13 end
|
|
skeen@0
|
14
|
|
skeen@0
|
15 local spell = {}
|
|
skeen@0
|
16 spell.current = nil
|
|
skeen@0
|
17 spell.next = nil
|
|
skeen@0
|
18 spell.cd1 = nil
|
|
skeen@0
|
19 spell.cd2 = nil
|
|
skeen@0
|
20 spell.cd3 = nil
|
|
skeen@0
|
21 spell.cd4 = nil
|
|
skeen@0
|
22
|
|
skeen@0
|
23 local focus = UnitPower("player")
|
|
skeen@0
|
24
|
|
skeen@0
|
25 --Cooldowns
|
|
skeen@5
|
26 local kill_command_cooldown = LibSkeenCore:GetCooldown(34026) --"Kill Command"
|
|
skeen@5
|
27 local kill_shot_cooldown = LibSkeenCore:GetCooldown(53351) --"Kill Shot"
|
|
skeen@5
|
28 local rapid_fire_cooldown = LibSkeenCore:GetCooldown(3045) --"Rapid Fire"
|
|
skeen@5
|
29 local focus_fire_cooldown = LibSkeenCore:GetCooldown(82692) --"Focus Fire"
|
|
skeen@5
|
30 local fervor_cooldown = LibSkeenCore:GetCooldown(82726) --"Fervor"
|
|
skeen@5
|
31 local bestial_wrath_cooldown = LibSkeenCore:GetCooldown(19574) --"Bestial Wrath"
|
|
skeen@0
|
32
|
|
skeen@0
|
33 --Debuff
|
|
skeen@5
|
34 local serpent_sting_duration = LibSkeenCore:GetDebuffDuration(1978) --"Serpent Sting"
|
|
skeen@0
|
35
|
|
skeen@0
|
36 -- Get the target's health percentage
|
|
skeen@0
|
37 local TargetsPercentOfHealth = (UnitHealth("target") / UnitHealthMax("target") * 100);
|
|
skeen@0
|
38
|
|
skeen@0
|
39 if (kill_command_cooldown < 1) then
|
|
skeen@0
|
40 if (focus >= 40) then
|
|
skeen@0
|
41 spell.current = 34026 --KC
|
|
skeen@0
|
42 else
|
|
skeen@0
|
43 spell.next = 34026 --KC
|
|
skeen@0
|
44 end
|
|
skeen@0
|
45 elseif (serpent_sting_duration < 1) then
|
|
skeen@0
|
46 if (focus >= 25) then
|
|
skeen@0
|
47 spell.current = 1978 --SS;
|
|
skeen@0
|
48 else
|
|
skeen@0
|
49 spell.next = 1978 --SS;
|
|
skeen@0
|
50 end
|
|
skeen@0
|
51 elseif ((TargetsPercentOfHealth < 20) and (kill_shot_cooldown<1)) then
|
|
skeen@0
|
52 spell.current = 53351 --Kill Shot
|
|
skeen@0
|
53 elseif (focus >= 25) then
|
|
skeen@0
|
54 spell.current = 3044 --Arcane Shot
|
|
skeen@0
|
55 else
|
|
skeen@0
|
56 spell.current = 77767 --Cobra Shot
|
|
skeen@0
|
57 end
|
|
skeen@0
|
58
|
|
skeen@0
|
59 if (rapid_fire_cooldown < 1) then
|
|
skeen@0
|
60 spell.cd1 = 3045 --Rapid fire
|
|
skeen@0
|
61 end
|
|
skeen@0
|
62
|
|
skeen@0
|
63 if (focus_fire_cooldown < 1) then
|
|
skeen@0
|
64 spell.cd2 = 82692 --Focus fire
|
|
skeen@0
|
65 end
|
|
skeen@0
|
66
|
|
skeen@0
|
67 if (fervor_cooldown < 1) then
|
|
skeen@0
|
68 spell.cd3 = 82726 --Fervor
|
|
skeen@0
|
69 end
|
|
skeen@0
|
70
|
|
skeen@0
|
71 if (bestial_wrath_cooldown < 1) then
|
|
skeen@0
|
72 spell.cd4 = 19574 --Bestial Wrath
|
|
skeen@0
|
73 end
|
|
skeen@0
|
74
|
|
skeen@0
|
75 return spell
|
|
skeen@0
|
76 end
|
|
skeen@0
|
77
|
|
skeen@0
|
78 local SkeenCore3 = _G["SkeenCore3"]
|
|
skeen@0
|
79
|
|
skeen@0
|
80 local SkeenPlugin = {}
|
|
skeen@0
|
81 SkeenPlugin.Name = "SkeenCore3BeastMasteryHunter"
|
|
skeen@0
|
82 SkeenPlugin.Class = "HUNTER"
|
|
skeen@0
|
83 SkeenPlugin.Spec = 1
|
|
skeen@0
|
84 SkeenPlugin.Version = 1.00
|
|
skeen@0
|
85 SkeenPlugin.Rotation = Rotation
|
|
skeen@0
|
86 --SkeenPlugin.Plugin_Active = Plugin_Active
|
|
skeen@0
|
87
|
|
skeen@0
|
88 SkeenCore3:RegisterPlugin(SkeenPlugin)
|
|
skeen@0
|
89
|