annotate SkeenCore3BeastMasteryHunter.lua @ 4:9f81a94993b7

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