skeen@0: -- skeen@0: -- SkeenCore3BeastMasteryHunter skeen@0: -- skeen@0: skeen@0: local function Rotation() skeen@0: skeen@0: local guid = UnitGUID("target") skeen@0: local puid = UnitGUID("player") skeen@0: skeen@0: if UnitName("target") == nil or UnitIsFriend("player","target") ~= nil or UnitHealth("target") == 0 then skeen@0: return nil-- ignore the dead and friendly skeen@0: end skeen@0: skeen@0: local spell = {} skeen@0: spell.current = nil skeen@0: spell.next = nil skeen@0: spell.cd1 = nil skeen@0: spell.cd2 = nil skeen@0: spell.cd3 = nil skeen@0: spell.cd4 = nil skeen@0: skeen@0: local focus = UnitPower("player") skeen@0: skeen@0: --Cooldowns skeen@3: local kill_command_cooldown = GetCooldown(34026) --"Kill Command" skeen@3: local kill_shot_cooldown = GetCooldown(53351) --"Kill Shot" skeen@3: local rapid_fire_cooldown = GetCooldown(3045) --"Rapid Fire" skeen@3: local focus_fire_cooldown = GetCooldown(82692) --"Focus Fire" skeen@3: local fervor_cooldown = GetCooldown(82726) --"Fervor" skeen@3: local bestial_wrath_cooldown = GetCooldown(19574) --"Bestial Wrath" skeen@0: skeen@0: --Debuff skeen@3: local serpent_sting_duration = GetDebuffDuration(1978) --"Serpent Sting" skeen@0: skeen@0: -- Get the target's health percentage skeen@0: local TargetsPercentOfHealth = (UnitHealth("target") / UnitHealthMax("target") * 100); skeen@0: skeen@0: if (kill_command_cooldown < 1) then skeen@0: if (focus >= 40) then skeen@0: spell.current = 34026 --KC skeen@0: else skeen@0: spell.next = 34026 --KC skeen@0: end skeen@0: elseif (serpent_sting_duration < 1) then skeen@0: if (focus >= 25) then skeen@0: spell.current = 1978 --SS; skeen@0: else skeen@0: spell.next = 1978 --SS; skeen@0: end skeen@0: elseif ((TargetsPercentOfHealth < 20) and (kill_shot_cooldown<1)) then skeen@0: spell.current = 53351 --Kill Shot skeen@0: elseif (focus >= 25) then skeen@0: spell.current = 3044 --Arcane Shot skeen@0: else skeen@0: spell.current = 77767 --Cobra Shot skeen@0: end skeen@0: skeen@0: if (rapid_fire_cooldown < 1) then skeen@0: spell.cd1 = 3045 --Rapid fire skeen@0: end skeen@0: skeen@0: if (focus_fire_cooldown < 1) then skeen@0: spell.cd2 = 82692 --Focus fire skeen@0: end skeen@0: skeen@0: if (fervor_cooldown < 1) then skeen@0: spell.cd3 = 82726 --Fervor skeen@0: end skeen@0: skeen@0: if (bestial_wrath_cooldown < 1) then skeen@0: spell.cd4 = 19574 --Bestial Wrath skeen@0: end skeen@0: skeen@0: return spell skeen@0: end skeen@0: skeen@0: local SkeenCore3 = _G["SkeenCore3"] skeen@0: skeen@0: local SkeenPlugin = {} skeen@0: SkeenPlugin.Name = "SkeenCore3BeastMasteryHunter" skeen@0: SkeenPlugin.Class = "HUNTER" skeen@0: SkeenPlugin.Spec = 1 skeen@0: SkeenPlugin.Version = 1.00 skeen@0: SkeenPlugin.Rotation = Rotation skeen@0: --SkeenPlugin.Plugin_Active = Plugin_Active skeen@0: skeen@0: SkeenCore3:RegisterPlugin(SkeenPlugin) skeen@0: