/trunk
KHT_NUM_TIMERS = { |
[1] = 12, -- Beast |
[2] = 8, -- Marks |
[3] = 14, -- Surv |
[3] = 15, -- Surv |
[4] = 11, -- Pets |
[5] = 23, -- Misc |
[6] = 44 -- Trinkets |
}, |
[3] = { -- Surv |
[1] = KHT_SURV, |
[2] = KHT_BLACK_ARROW, |
[3] = KHT_CAMO, |
[4] = KHT_DETERRENCE, |
[5] = KHT_ENTRAPMENT, |
[6] = KHT_EXPL_SHOT, |
[7] = KHT_EXPL_TRAP, |
[8] = KHT_FREEZING_TRAP, |
[9] = KHT_FROST_TRAP, |
[10] = KHT_LOCK_LOAD, |
[11] = KHT_MISDIRECTION, |
[12] = KHT_SERPENT, |
[13] = KHT_SNAKE_TRAP, |
[14] = KHT_WYVERN |
[2] = KHT_BINDING, |
[3] = KHT_BLACK_ARROW, |
[4] = KHT_CAMO, |
[5] = KHT_DETERRENCE, |
[6] = KHT_ENTRAPMENT, |
[7] = KHT_EXPL_SHOT, |
[8] = KHT_EXPL_TRAP, |
[9] = KHT_FREEZING_TRAP, |
[10] = KHT_FROST_TRAP, |
[11] = KHT_LOCK_LOAD, |
[12] = KHT_MISDIRECTION, |
[13] = KHT_SERPENT, |
[14] = KHT_SNAKE_TRAP, |
[15] = KHT_WYVERN |
}, |
[4] = { -- Pets |
[1] = KHT_PETS, |
for line=1,13 do |
lineplusoffset = line + FauxScrollFrame_GetOffset(KHunterTimers1ScrollBar); |
if lineplusoffset <= KHT_NUM_TIMERS[1] then |
if( _G["KHunterTimersOptionsTimers1CheckButton"..line]:GetChecked() == 1 ) then |
if( _G["KHunterTimersOptionsTimers1CheckButton"..line]:GetChecked() == true ) then |
KHTvars["skills"][KHT_OPTIONS_TIMERS[1][lineplusoffset]] = true; |
else |
KHTvars["skills"][KHT_OPTIONS_TIMERS[1][lineplusoffset]] = false; |
if lineplusoffset <= KHT_NUM_TIMERS[1] then |
_G["KHunterTimersOptionsTimers1CheckButton"..line.."Text"]:SetText(KHT_OPTIONS_TIMERS[1][lineplusoffset]); |
if( KHTvars["skills"][KHT_OPTIONS_TIMERS[1][lineplusoffset]] ) then |
_G["KHunterTimersOptionsTimers1CheckButton"..line]:SetChecked(1); |
_G["KHunterTimersOptionsTimers1CheckButton"..line]:SetChecked(true); |
else |
_G["KHunterTimersOptionsTimers1CheckButton"..line]:SetChecked(0); |
_G["KHunterTimersOptionsTimers1CheckButton"..line]:SetChecked(false); |
end |
_G["KHunterTimersOptionsTimers1CheckButton"..line]:Show(); |
else |
for line=1,13 do |
lineplusoffset = line + FauxScrollFrame_GetOffset(KHunterTimers2ScrollBar); |
if lineplusoffset <= KHT_NUM_TIMERS[2] then |
if( _G["KHunterTimersOptionsTimers2CheckButton"..line]:GetChecked() == 1 ) then |
if( _G["KHunterTimersOptionsTimers2CheckButton"..line]:GetChecked() == true ) then |
KHTvars["skills"][KHT_OPTIONS_TIMERS[2][lineplusoffset]] = true; |
else |
KHTvars["skills"][KHT_OPTIONS_TIMERS[2][lineplusoffset]] = false; |
if lineplusoffset <= KHT_NUM_TIMERS[2] then |
_G["KHunterTimersOptionsTimers2CheckButton"..line.."Text"]:SetText(KHT_OPTIONS_TIMERS[2][lineplusoffset]); |
if( KHTvars["skills"][KHT_OPTIONS_TIMERS[2][lineplusoffset]] ) then |
_G["KHunterTimersOptionsTimers2CheckButton"..line]:SetChecked(1); |
_G["KHunterTimersOptionsTimers2CheckButton"..line]:SetChecked(true); |
else |
_G["KHunterTimersOptionsTimers2CheckButton"..line]:SetChecked(0); |
_G["KHunterTimersOptionsTimers2CheckButton"..line]:SetChecked(false); |
end |
_G["KHunterTimersOptionsTimers2CheckButton"..line]:Show(); |
else |
for line=1,13 do |
lineplusoffset = line + FauxScrollFrame_GetOffset(KHunterTimers3ScrollBar); |
if lineplusoffset <= KHT_NUM_TIMERS[3] then |
if( _G["KHunterTimersOptionsTimers3CheckButton"..line]:GetChecked() == 1 ) then |
if( _G["KHunterTimersOptionsTimers3CheckButton"..line]:GetChecked() == true ) then |
KHTvars["skills"][KHT_OPTIONS_TIMERS[3][lineplusoffset]] = true; |
else |
KHTvars["skills"][KHT_OPTIONS_TIMERS[3][lineplusoffset]] = false; |
if lineplusoffset <= KHT_NUM_TIMERS[3] then |
_G["KHunterTimersOptionsTimers3CheckButton"..line.."Text"]:SetText(KHT_OPTIONS_TIMERS[3][lineplusoffset]); |
if( KHTvars["skills"][KHT_OPTIONS_TIMERS[3][lineplusoffset]] ) then |
_G["KHunterTimersOptionsTimers3CheckButton"..line]:SetChecked(1); |
_G["KHunterTimersOptionsTimers3CheckButton"..line]:SetChecked(true); |
else |
_G["KHunterTimersOptionsTimers3CheckButton"..line]:SetChecked(0); |
_G["KHunterTimersOptionsTimers3CheckButton"..line]:SetChecked(false); |
end |
_G["KHunterTimersOptionsTimers3CheckButton"..line]:Show(); |
else |
for line=1,13 do |
lineplusoffset = line + FauxScrollFrame_GetOffset(KHunterTimers4ScrollBar); |
if lineplusoffset <= KHT_NUM_TIMERS[4] then |
if( _G["KHunterTimersOptionsTimers4CheckButton"..line]:GetChecked() == 1 ) then |
if( _G["KHunterTimersOptionsTimers4CheckButton"..line]:GetChecked() == true ) then |
KHTvars["skills"][KHT_OPTIONS_TIMERS[4][lineplusoffset]] = true; |
else |
KHTvars["skills"][KHT_OPTIONS_TIMERS[4][lineplusoffset]] = false; |
if lineplusoffset <= KHT_NUM_TIMERS[4] then |
_G["KHunterTimersOptionsTimers4CheckButton"..line.."Text"]:SetText(KHT_OPTIONS_TIMERS[4][lineplusoffset]); |
if( KHTvars["skills"][KHT_OPTIONS_TIMERS[4][lineplusoffset]] ) then |
_G["KHunterTimersOptionsTimers4CheckButton"..line]:SetChecked(1); |
_G["KHunterTimersOptionsTimers4CheckButton"..line]:SetChecked(true); |
else |
_G["KHunterTimersOptionsTimers4CheckButton"..line]:SetChecked(0); |
_G["KHunterTimersOptionsTimers4CheckButton"..line]:SetChecked(false); |
end |
_G["KHunterTimersOptionsTimers4CheckButton"..line]:Show(); |
else |
for line=1,13 do |
lineplusoffset = line + FauxScrollFrame_GetOffset(KHunterTimers5ScrollBar); |
if lineplusoffset <= KHT_NUM_TIMERS[5] then |
if( _G["KHunterTimersOptionsTimers5CheckButton"..line]:GetChecked() == 1 ) then |
if( _G["KHunterTimersOptionsTimers5CheckButton"..line]:GetChecked() == true ) then |
KHTvars["skills"][KHT_OPTIONS_TIMERS[5][lineplusoffset]] = true; |
else |
KHTvars["skills"][KHT_OPTIONS_TIMERS[5][lineplusoffset]] = false; |
if lineplusoffset <= KHT_NUM_TIMERS[5] then |
_G["KHunterTimersOptionsTimers5CheckButton"..line.."Text"]:SetText(KHT_OPTIONS_TIMERS[5][lineplusoffset]); |
if( KHTvars["skills"][KHT_OPTIONS_TIMERS[5][lineplusoffset]] ) then |
_G["KHunterTimersOptionsTimers5CheckButton"..line]:SetChecked(1); |
_G["KHunterTimersOptionsTimers5CheckButton"..line]:SetChecked(true); |
else |
_G["KHunterTimersOptionsTimers5CheckButton"..line]:SetChecked(0); |
_G["KHunterTimersOptionsTimers5CheckButton"..line]:SetChecked(false); |
end |
_G["KHunterTimersOptionsTimers5CheckButton"..line]:Show(); |
else |
for line=1,13 do |
lineplusoffset = line + FauxScrollFrame_GetOffset(KHunterTimers6ScrollBar); |
if lineplusoffset <= KHT_NUM_TIMERS[6] then |
if( _G["KHunterTimersOptionsTimers6CheckButton"..line]:GetChecked() == 1 ) then |
if( _G["KHunterTimersOptionsTimers6CheckButton"..line]:GetChecked() == true ) then |
KHTvars["skills"][KHT_OPTIONS_TIMERS[6][lineplusoffset]] = true; |
else |
KHTvars["skills"][KHT_OPTIONS_TIMERS[6][lineplusoffset]] = false; |
if lineplusoffset <= KHT_NUM_TIMERS[6] then |
_G["KHunterTimersOptionsTimers6CheckButton"..line.."Text"]:SetText(KHT_OPTIONS_TIMERS[6][lineplusoffset]); |
if( KHTvars["skills"][KHT_OPTIONS_TIMERS[6][lineplusoffset]] ) then |
_G["KHunterTimersOptionsTimers6CheckButton"..line]:SetChecked(1); |
_G["KHunterTimersOptionsTimers6CheckButton"..line]:SetChecked(true); |
else |
_G["KHunterTimersOptionsTimers6CheckButton"..line]:SetChecked(0); |
_G["KHunterTimersOptionsTimers6CheckButton"..line]:SetChecked(false); |
end |
_G["KHunterTimersOptionsTimers6CheckButton"..line]:Show(); |
else |
KHunterTimersFrame_add( KHTvars["entrapmentmult"], spellName, spellId, destName, destGUID ); |
elseif( KHTvars["skills"][KHT_BLACK_ARROW] and spellName == KHT_BLACK_ARROW ) then |
KHunterTimersFrame_add( 20000, spellName, spellId, destName, destGUID ); |
elseif( KHTvars["skills"][KHT_BINDING] and spellName == KHT_BINDING ) then |
KHunterTimersFrame_add( 10000, spellName, spellId, destName, destGUID ); |
elseif( string.find( spellName, KHT_FROST_TRAP ) or string.find( spellName, KHT_FREEZING_TRAP ) ) then |
if( frostTrapTimer ) then |
for num = 1, KHTvars["numBars"] do |
function KHunterTimers_ShowOptions() |
if( KHTvars[KHT_ON] ) then |
KHunterTimersOptionsBarsCheckButtonOn:SetChecked(1); |
KHunterTimersOptionsBarsCheckButtonOn:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButtonOn:SetChecked(0); |
KHunterTimersOptionsBarsCheckButtonOn:SetChecked(false); |
end |
if( KHTvars["locked"] ) then |
KHunterTimersOptionsBarsCheckButton1:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton1:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButton1:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton1:SetChecked(false); |
end |
if( KHTvars["colorchange"] ) then |
KHunterTimersOptionsBarsCheckButton2:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton2:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButton2:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton2:SetChecked(false); |
end |
if( KHTvars["showtex"] ) then |
KHunterTimersOptionsBarsCheckButton3:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton3:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButton3:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton3:SetChecked(false); |
end |
if( KHTvars["largetex"] ) then |
KHunterTimersOptionsBarsCheckButton4:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton4:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButton4:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton4:SetChecked(false); |
end |
if( KHTvars["gap"] ) then |
KHunterTimersOptionsBarsCheckButton5:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton5:SetChecked(false); |
else |
KHunterTimersOptionsBarsCheckButton5:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton5:SetChecked(true); |
end |
if( KHTvars["append"] ) then |
KHunterTimersOptionsBarsCheckButton6:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton6:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButton6:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton6:SetChecked(false); |
end |
if( KHTvars["padding"] ) then |
KHunterTimersOptionsBarsCheckButton7:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton7:SetChecked(false); |
else |
KHunterTimersOptionsBarsCheckButton7:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton7:SetChecked(true); |
end |
if( KHTvars["hidetext"] ) then |
KHunterTimersOptionsBarsCheckButton8:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton8:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButton8:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton8:SetChecked(false); |
end |
if( KHTvars["hidetime"] ) then |
KHunterTimersOptionsBarsCheckButton9:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton9:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButton9:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton9:SetChecked(false); |
end |
if( KHTvars["sticky"] ) then |
KHunterTimersOptionsBarsCheckButton10:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton10:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButton10:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton10:SetChecked(false); |
end |
if( KHTvars["down"] ) then |
KHunterTimersOptionsBarsCheckButton11:SetChecked(1); |
KHunterTimersOptionsBarsCheckButton11:SetChecked(true); |
else |
KHunterTimersOptionsBarsCheckButton11:SetChecked(0); |
KHunterTimersOptionsBarsCheckButton11:SetChecked(false); |
end |
KHunterTimersOptionsBarsEditBox1:SetText(KHTvars["shotdelay"]); |
function KHunterTimers_SaveOptions() |
if( KHunterTimersOptionsBarsCheckButtonOn:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButtonOn:GetChecked() == true ) then |
KHTvars[KHT_ON] = true; |
else |
KHTvars[KHT_ON] = false; |
end |
if( KHunterTimersOptionsBarsCheckButton1:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton1:GetChecked() == true ) then |
KHTvars["locked"] = true; |
KHunterTimersAnchor:Hide(); |
else |
KHunterTimersAnchor:Show(); |
end |
if( KHunterTimersOptionsBarsCheckButton2:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton2:GetChecked() == true ) then |
KHTvars["colorchange"] = true; |
else |
KHTvars["colorchange"] = false; |
end |
if( KHunterTimersOptionsBarsCheckButton3:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton3:GetChecked() == true ) then |
KHTvars["showtex"] = true; |
else |
KHTvars["showtex"] = false; |
end |
if( KHunterTimersOptionsBarsCheckButton4:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton4:GetChecked() == true ) then |
KHTvars["largetex"] = true; |
else |
KHTvars["largetex"] = false; |
end |
if( KHunterTimersOptionsBarsCheckButton5:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton5:GetChecked() == true ) then |
KHTvars["gap"] = false; |
else |
KHTvars["gap"] = true; |
end |
if( KHunterTimersOptionsBarsCheckButton6:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton6:GetChecked() == true ) then |
KHTvars["append"] = true; |
else |
KHTvars["append"] = false; |
end |
if( KHunterTimersOptionsBarsCheckButton7:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton7:GetChecked() == true ) then |
KHTvars["padding"] = false; |
else |
KHTvars["padding"] = true; |
end |
if( KHunterTimersOptionsBarsCheckButton8:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton8:GetChecked() == true ) then |
KHTvars["hidetext"] = true; |
else |
KHTvars["hidetext"] = false; |
end |
if( KHunterTimersOptionsBarsCheckButton9:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton9:GetChecked() == true ) then |
KHTvars["hidetime"] = true; |
else |
KHTvars["hidetime"] = false; |
end |
if( KHunterTimersOptionsBarsCheckButton10:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton10:GetChecked() == true ) then |
KHTvars["sticky"] = true; |
else |
KHTvars["sticky"] = false; |
end |
if( KHunterTimersOptionsBarsCheckButton11:GetChecked() == 1 ) then |
if( KHunterTimersOptionsBarsCheckButton11:GetChecked() == true ) then |
KHTvars["down"] = true; |
else |
KHTvars["down"] = false; |
KHTvars["textures"][KHT_PET_FRENZY] = KHT_PET_FRENZY_ICON; |
KHTvars["textures"][KHT_LOCK_LOAD] = KHT_LOCK_LOAD_ICON; |
KHTvars["textures"][KHT_SNIPER] = KHT_SNIPER_ICON; |
KHTvars["textures"][KHT_BINDING] = KHT_BINDING_ICON; |
KHTvars["textures"][KHT_GLAIVE] = KHT_GLAIVE_ICON; |
-- Trinkets |
KHTvars["textures"][KHT_ABACUS] = KHT_ABACUS_ICON; |
Version History |
v3.7.0 |
v3.7.0b2 |
- Updates for 6.0.2 patch |
- Added Binding Shot |
v3.6.10 |
- TOC update for 5.4 patch |
v3.6.9 |
## Interface: 60000 |
## Title: Kharthus's Hunter Timers |
## Notes: Times hunter buffs/debuffs |
## Version: 3.7.0b1 |
## Version: 3.7.0b2 |
## DefaultState: Enabled |
## LoadOnDemand: 0 |
## SavedVariables: KHTvars |
KHT_FOCUS_FIRE = GetSpellInfo(82692); -- Focus Fire |
KHT_SNIPER, _, KHT_SNIPER_ICON = GetSpellInfo(76659); -- Sniper Training |
KHT_THRILL = GetSpellInfo(34720); -- Thrill of the Hunt |
KHT_GLAIVE = GetSpellInfo(117050); -- Glaive Toss |
KHT_GLAIVE, _, KHT_GLAIVE_ICON = GetSpellInfo(117050); -- Glaive Toss |
KHT_STAMPEDE = GetSpellInfo(121818); -- Stampede |
KHT_DIRE = GetSpellInfo(120679); -- Dire Beast |
KHT_CROWS = GetSpellInfo(131894); -- A Murder of Crows |
KHT_WYVERN = GetSpellInfo(19386); -- Wyvern Sting |
KHT_WYVERN_TEXT = GetSpellInfo(19386).." (Sleep)"; -- Wyvern Sting (Sleep) |
KHT_SERPENT = GetSpellInfo(87935); -- Serpent Sting |
KHT_BINDING, _, KHT_BINDING_ICON = GetSpellInfo(109248); -- Binding Shot |
--Other |
KHT_FLARE = GetSpellInfo(1543); -- Flare |