WoWInterface SVN FuryCommander

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /
    from Rev 11 to Rev 12
    Reverse comparison

Rev 11 → Rev 12

trunk/Config.lua
102,104 → 102,25
get = function(info) return FuryCommander_Save.Rage3 end,
isPercent = false
},
headerDPSetting = {--Poison bar Settings
order = 7,
name = "Poison bar Settings",
type = "header"
},
DPBarShow = {--Show Poison
order = 8,
name = "Show Poison bar",
desc = "Display the Poison timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.DP = val
end,
get = function(info) return FuryCommander_Save.display.DP end
},
PosDP = {--Poison position
order = 9,
name = "Poison bar position",
desc = "The place where to display the Poison bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.DP = val
end,
get = function(info) return FuryCommander_Save.Pos.DP end
},
EnvenomShow = {--Show Envenom
order = 10,
name = "Show envenom buff",
desc = "The timer bar in default will display the timer of deadly poison on the target.",
type = "toggle",
set = function(info,val)
FuryCommander_Save.EnvenomShow = val
end,
get = function(info) return FuryCommander_Save.EnvenomShow end
},
PosENV = {--Poison position
order = 9,
name = "Envenom bar position",
desc = "The place where to display the Envenom bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.ENV = val
end,
get = function(info) return FuryCommander_Save.Pos.ENV end
},
PoisonShow = {--Show Poison weapon enchant
order = 11,
name = "Show poison weapon enchant",
desc = "Display two thin poison bar timer on the energy bar corresponding of each temporary enchant on each weapon.",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.Poison = val
end,
get = function(info) return FuryCommander_Save.display.Poison end
},
PoisonTransparencyShow = {--Show Poison weapon enchant
order = 12,
name = "Disable energy bar fade out",
desc = "Disable energy bar and poison bar fade out when poison on weapon(s) is up",
type = "toggle",
set = function(info,val)
FuryCommander_Save.PoisonTransparencyShow = val
end,
get = function(info) return FuryCommander_Save.PoisonTransparencyShow end
},
headerVendettaSetting = {--Vendetta Settings
headerEnrageSetting = {--Enrage Settings
order = 101,
name = "Vendetta Settings",
name = "Enrage Settings",
type = "header"
},
VenBarShow = {--Show vendetta
ENRBarShow = {--Show Enrage
order = 102,
name = "Show vendetta bar",
desc = "Display the vendetta timer bar",
name = "Show Enrage bar",
desc = "Display your longer Enrage timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.VEN = val
FuryCommander_Save.display.ENR = val
end,
get = function(info) return FuryCommander_Save.display.VEN end
get = function(info) return FuryCommander_Save.display.ENR end
},
PosVEN = {--Vendetta position
PosENR = {--Enrage position
order = 103,
name = "Vendetta bar position",
desc = "The place where to display the vendetta bar",
name = "Enrage bar position",
desc = "The place where to display the Enrage bar",
type = "select",
values = function()
returnArray = {}
209,267 → 130,10
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.VEN = val
FuryCommander_Save.Pos.VENCD = val
FuryCommander_Save.Pos.ENR = val
end,
get = function(info) return FuryCommander_Save.Pos.VEN end
get = function(info) return FuryCommander_Save.Pos.ENR end
},
headerToTSetting = {--Tricks of the Trade Settings
order = 104,
name = "Tricks of the Trade Settings",
type = "header"
},
TotTBarShow = {--Show ToT
order = 105,
name = "Show Tricks of the Trade bar",
desc = "Display the Tricks of the Trade timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.ToT = val
end,
get = function(info) return FuryCommander_Save.display.ToT end
},
PosToT = {--ToT position
order = 106,
name = "Tricks of the Trade bar position",
desc = "The place where to display the Tricks of the Trade bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.ToT = val
end,
get = function(info) return FuryCommander_Save.Pos.ToT end
},
headerRecSetting = {--Recuperate Settings
order = 110,
name = "Recuperate Settings",
type = "header"
},
RECBarShow = {--Show Recuperate
order = 111,
name = "Show Recuperate bar",
desc = "Display the Recuperate timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.REC = val
end,
get = function(info) return FuryCommander_Save.display.REC end
},
PosREC = {--Recuperate position
order = 112,
name = "Recuperate bar position",
desc = "The place where to display the Recuperate bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.REC = val
end,
get = function(info) return FuryCommander_Save.Pos.REC end
},
headerKSSetting = {--Stun bar Settings
order = 113,
name = "Kidney shot bar Settings",
type = "header"
},
KSBarShow = {--Show Stun
order = 114,
name = "Kidney shot bar",
desc = "Display the Kidney shot timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.KS = val
end,
get = function(info) return FuryCommander_Save.display.KS end
},
PosKS = {--Stun position
order = 115,
name = "Kidney shot bar position",
desc = "The place where to display the Kidney shot bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.KS = val
end,
get = function(info) return FuryCommander_Save.Pos.KS end
},
headerCSSetting = {--Stun bar Settings
order = 116,
name = "Cheap shot bar Settings",
type = "header"
},
CSBarShow = {--Show Stun
order = 117,
name = "Show Cheap shot bar",
desc = "Display the Cheap shot timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.CS = val
end,
get = function(info) return FuryCommander_Save.display.CS end
},
PosCS = {--Stun position
order = 118,
name = "Cheap shot bar position",
desc = "The place where to display the Cheap shot bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.CS = val
end,
get = function(info) return FuryCommander_Save.Pos.CS end
},
headerRupSetting = {--Blood Settings
order = 121,
name = "Rupture bar Settings",
type = "header"
},
RupBarShow = {--Show Blood
order = 122,
name = "Show Rupture bar",
desc = "Display the Blood timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.RUP = val
end,
get = function(info) return FuryCommander_Save.display.RUP end
},
PosRUP = {--Blood position
order = 123,
name = "Rupture bar position",
desc = "The place where to display the Rupture bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.RUP = val
end,
get = function(info) return FuryCommander_Save.Pos.RUP end
},
headerGarSetting = {--Blood Settings
order = 124,
name = "Garrote bar Settings",
type = "header"
},
GarBarShow = {--Show Blood
order = 125,
name = "Show Garrote bar",
desc = "Display the Garrote timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.GAR = val
end,
get = function(info) return FuryCommander_Save.display.GAR end
},
PosGAR = {--Blood position
order = 126,
name = "Garrote bar position",
desc = "The place where to display the Garrote bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.GAR = val
end,
get = function(info) return FuryCommander_Save.Pos.GAR end
},
headerSndSetting = {--Slice and Dice Settings
order = 127,
name = "Slice and Dice Settings",
type = "header"
},
SnDBarShow = {--Show Slice and Dice
order = 128,
name = "Show Slice and Dice bar",
desc = "Display the Slice and Dice timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.SnD = val
end,
get = function(info) return FuryCommander_Save.display.SnD end
},
PosSnD = {--Slice and Dice position
order = 129,
name = "Slice and Dice bar position",
desc = "The place where to display the Slice and Dice bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.SnD = val
end,
get = function(info) return FuryCommander_Save.Pos.SnD end
},
headerCPSetting = {--Combo Point Settings
order = 130,
name = "Combo Point bar Settings",
type = "header"
},
CPBarShow = {--Show Combo Point
order = 131,
name = "Show Combo Point bar",
desc = "Display the Combo Point timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.CP = val
end,
get = function(info) return FuryCommander_Save.display.CP end
},
PosCP = {--Combo Point position
order = 132,
name = "Combo Point bar position",
desc = "The place where to display the Combo Point bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.CP = val
end,
get = function(info) return FuryCommander_Save.Pos.CP end
},
headerThreatSetting = {--Threat Settings
order = 133,
name = "Threat bar Settings",
512,114 → 176,6
end,
get = function(info) return FuryCommander_Save.ThreatGroupOnly end
},
headerARSetting = {--Adrenaline rush Settings
order = 137,
name = "Adrenaline Rush Settings",
type = "header"
},
ARBarShow = {--Show Adrenaline rush
order = 138,
name = "Show Adrenaline Rush bar",
desc = "Display the Adrenaline rush timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.AR = val
end,
get = function(info) return FuryCommander_Save.display.AR end
},
PosAR = {--Adrenaline rush position
order = 139,
name = "Adrenaline rush bar position",
desc = "The place where to display the Adrenaline rush bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.AR = val
FuryCommander_Save.Pos.ARCD = val
end,
get = function(info) return FuryCommander_Save.Pos.AR end
},
ARCDBarShow = {--Show Adrenaline rush CD
order = 140,
name = "Show Adrenaline Rush bar CD",
desc = "Display the Adrenaline rush cooldown bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.ARCD = val
end,
get = function(info) return FuryCommander_Save.display.ARCD end
},
headerEASetting = {--Expose Armor Settings
order = 151,
name = "Expose Armor Settings",
type = "header"
},
EABarShow = {--Show EA
order = 152,
name = "Show Expose Armor bar",
desc = "Display the Expose Armor timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.EA = val
end,
get = function(info) return FuryCommander_Save.display.EA end
},
PosEA = {--EA position
order = 153,
name = "Expose Armor bar position",
desc = "The place where to display the Expose Armor bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.EA = val
end,
get = function(info) return FuryCommander_Save.Pos.EA end
},
headerFESetting = {--Feint Settings
order = 161,
name = "Feint Settings",
type = "header"
},
FEBarShow = {--Show Feint
order = 162,
name = "Show Feint bar",
desc = "Display the Feint timer bar",
type = "toggle",
set = function(info,val)
FuryCommander_Save.display.FE = val
end,
get = function(info) return FuryCommander_Save.display.FE end
},
PosFE = {--Feint position
order = 163,
name = "Feint bar position",
desc = "The place where to display the Feint bar",
type = "select",
values = function()
returnArray = {}
for key = -15, 15, 1 do
returnArray[key] = key
end
return returnArray
end,
set = function(info,val)
FuryCommander_Save.Pos.FE = val
FuryCommander_Save.Pos.FECD = val
end,
get = function(info) return FuryCommander_Save.Pos.FE end
},
}
}
 
662,14 → 218,6
set = function(info,val) FuryCommander_Save.SpellText = val end,
get = function(info) return FuryCommander_Save.SpellText end
},
SoundCombat = {--Disable sound out of combat
order = 5,
name = "Sound Combat",
desc = "Disable sounds out of combat",
type = "toggle",
set = function(info,val) FuryCommander_Save.SoundCombat = val end,
get = function(info) return FuryCommander_Save.SoundCombat end
},
headerDisplaySetting = {--CDisplay Setting
order = 6,
name = "Display Setting",
780,7 → 328,7
},
headerCheckHealth = {--Check health header
order = 14,
name = "Enable 35% backstab warning",
name = "Enable 20% Exec warning",
type = "header"
},
checkHealthSpec1 = {--Check health spec1
799,26 → 347,6
set = function(info,val) FuryCommander_Save.checkHealthSpec2 = val end,
get = function(info) return FuryCommander_Save.checkHealthSpec2 end
},
HealthUnder = {--Texture
order = 17,
name = "Sound under 35% health",
desc = "The sound play when the health reach 35% health",
type = "select",
values = function()
returnArray = {}
for ignore, SoundName in pairs(FuryCommander_SoundMenu['All']) do
returnArray[SoundName] = SoundName
end
return returnArray
end,
set = function(info,val)
FuryCommander:SoundTest(val)
FuryCommander_Save.HealthUnder = val
end,
get = function(info)
return FuryCommander_Save.HealthUnder
end
},
headerKick = {
order = 20,
name = "Kick Feature",
843,7 → 371,7
},
headerSkin = {
order = 30,
name = "Kick Feature",
name = "Skin Feature",
type = "header"
},
skinEnable = {
889,13 → 417,14
 
FC.BarFont1 = FuryCommander:NewFont("VTimerFont", 17, 0.7, 1, 1, 1)
FC.BarFont2 = FuryCommander:NewFont("VTimerFont2", 8, 0.7, 213/255, 200/255, 184/255)
FC.BarFont3 = FuryCommander:NewFont("VTimerFont1O", 17, 0.2, 0, 0, 0)
FC.BarFont3 = FuryCommander:NewFont("VTimerFont1O", 16, 0.2, 225/255, 0, 0)
FC.BarFont4 = FuryCommander:NewFont("VTimerFont4", 8, 1, 213/255, 200/255, 184/255)
FC.BarFontIcon = FuryCommander:NewFont("IconFont", 40, 0.5, 1, .1, .1)
 
FuryCommander:CreateCore()
 
FC.BARS['THREAT']['obj'] = FuryCommander:NewFrame(0, 0, 0)
FC.BARS['ENR']['obj'] = FuryCommander:NewFrame(110/255, 34/255, 45/255)
 
FC.ICON['BLT']['obj'], FC.ICON['BLT']['frame'] = FuryCommander:NewIcon("Interface\\Icons\\spell_nature_bloodlust", FC.ICON['BLT']['name'], FuryCommander_Save.bloodthirst.point, FuryCommander_Save.bloodthirst.relativeTo, FuryCommander_Save.bloodthirst.relativePoint, FuryCommander_Save.bloodthirst.xOfs, FuryCommander_Save.bloodthirst.yOfs)--Create Bloodthirst icon
FC.ICON['CSM']['obj'], FC.ICON['CSM']['frame'] = FuryCommander:NewIcon("Interface\\Icons\\ability_warrior_colossussmash", FC.ICON['CSM']['name'], FuryCommander_Save.ColossusSmash.point, FuryCommander_Save.ColossusSmash.relativeTo, FuryCommander_Save.ColossusSmash.relativePoint, FuryCommander_Save.ColossusSmash.xOfs, FuryCommander_Save.ColossusSmash.yOfs)--Create ColossusSmash icon
1067,6 → 596,18
if FuryCommander_Save.eyefinity == nil then
FuryCommander_Save.eyefinity = 1
end
if FuryCommander_Save.display.ENR == nil then
FuryCommander_Save.display.ENR = true
end
if FuryCommander_Save.Pos.ENR == nil then
FuryCommander_Save.Pos.ENR = 1
end
if FuryCommander_Save.display.THREAT == nil then
FuryCommander_Save.display.THREAT = true
end
if FuryCommander_Save.Pos.THREAT == nil then
FuryCommander_Save.Pos.THREAT = -2
end
end
 
function FuryCommander:ResetOptions()
trunk/Localization.lua
15,7 → 15,7
FC_SPELL_ENR = GetSpellInfo(14202)
FC_SPELL_RBE = GetSpellInfo(18499)
FC_SPELL_DW = GetSpellInfo(12292)
FC_SPELL_EXE = GetSpellInfo(5308)
FC_SPELL_EXE = GetSpellInfo(20503)
--/script start, duration, enabled = GetSpellCooldown(GetSpellInfo(23881)); print(start..' = '.. duration ..' = ' .. enabled)
 
SC_SPELL_SND = GetSpellInfo(5171);
trunk/FuryCommander.lua
7,7 → 7,7
function FuryCommander:InitBarArray()
height = tonumber(string.match(GetCVar("gxResolution"), "%d+x(%d+)"))
width = tonumber(string.match(GetCVar("gxResolution"), "(%d+)x+%d"))
width = width*3--eyefinity is wird
width = width*FuryCommander_Save.eyefinity--eyefinity is wird
FC.V = {
['bColor'] = {.1,.1,.1},
['wColor'] = {.6,.6,.6},
35,6 → 35,7
['EXEC'] = {
['obj'] = 0,
['frame'] = 0,
['expire'] = 0,
['name'] = FC_SPELL_EXE
},
['HEALTH'] = {
46,6 → 47,16
['obj'] = 0,
['expire'] = 0
},
['ENR'] = {
['obj'] = 0,
['expire'] = 0,
['name'] = {
FC_SPELL_DW,
FC_SPELL_ENR,
FC_SPELL_RBE
},
['type'] = 1
},
}
end
 
102,188 → 113,28
AnchorToPos = "BOTTOMRIGHT"
for i = 1, 15 do
--under
if FuryCommander_Save.Pos.KS == i and FC.BARS['KS']['expire'] ~= 0 then
FC.BARS['KS']['obj']:ClearAllPoints()
FC.BARS['KS']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['KS']['obj']
end
if FuryCommander_Save.Pos.CS == i and FC.BARS['CS']['expire'] ~= 0 then
FC.BARS['CS']['obj']:ClearAllPoints()
FC.BARS['CS']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['CS']['obj']
end
if FuryCommander_Save.Pos.CP == i and FC.BARS['CP']['expire'] ~= 0 then
FC.BARS['CP']['obj']:ClearAllPoints()
FC.BARS['CP']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['CP']['obj']
end
if FuryCommander_Save.Pos.REC == i and FC.BARS['REC']['expire'] ~= 0 then
FC.BARS['REC']['obj']:ClearAllPoints()
FC.BARS['REC']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['REC']['obj']
end
if FuryCommander_Save.Pos.SnD == i and FC.BARS['SnD']['expire'] ~= 0 then
FC.BARS['SnD']['obj']:ClearAllPoints()
FC.BARS['SnD']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['SnD']['obj']
end
if FuryCommander_Save.Pos.RUP == i and FC.BARS['RUP']['expire'] ~= 0 then
FC.BARS['RUP']['obj']:ClearAllPoints()
FC.BARS['RUP']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['RUP']['obj']
end
if FuryCommander_Save.Pos.GAR == i and FC.BARS['GAR']['expire'] ~= 0 then
FC.BARS['GAR']['obj']:ClearAllPoints()
FC.BARS['GAR']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['GAR']['obj']
end
if FuryCommander_Save.Pos.ToT == i and FC.BARS['ToT']['expire'] ~= 0 then
FC.BARS['ToT']['obj']:ClearAllPoints()
FC.BARS['ToT']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['ToT']['obj']
end
if FuryCommander_Save.Pos.VEN == i and FC.BARS['VEN']['expire'] ~= 0 then
FC.BARS['VEN']['obj']:ClearAllPoints()
FC.BARS['VEN']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['VEN']['obj']
end
if FuryCommander_Save.Pos.VENCD == i and FC.BARS['VENCD']['expire'] ~= 0 then
FC.BARS['VENCD']['obj']:ClearAllPoints()
FC.BARS['VENCD']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['VENCD']['obj']
end
if FuryCommander_Save.Pos.DP == i and FC.BARS['DP']['expire'] ~= 0 then
FC.BARS['DP']['obj']:ClearAllPoints()
FC.BARS['DP']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['DP']['obj']
end
if FuryCommander_Save.Pos.ENV == i and FC.BARS['ENV']['expire'] ~= 0 then
FC.BARS['ENV']['obj']:ClearAllPoints()
FC.BARS['ENV']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['ENV']['obj']
end
if FuryCommander_Save.Pos.THREAT == i and FC.BARS['THREAT']['expire'] ~= 0 then
FC.BARS['THREAT']['obj']:ClearAllPoints()
FC.BARS['THREAT']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['THREAT']['obj']
end
if FuryCommander_Save.Pos.AR == i and FC.BARS['AR']['expire'] ~= 0 then
FC.BARS['AR']['obj']:ClearAllPoints()
FC.BARS['AR']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['AR']['obj']
if FuryCommander_Save.Pos.ENR == i and FC.BARS['ENR']['expire'] ~= 0 then
FC.BARS['ENR']['obj']:ClearAllPoints()
FC.BARS['ENR']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['ENR']['obj']
end
if FuryCommander_Save.Pos.ARCD == i and FC.BARS['ARCD']['expire'] ~= 0 then
FC.BARS['ARCD']['obj']:ClearAllPoints()
FC.BARS['ARCD']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['ARCD']['obj']
end
if FuryCommander_Save.Pos.EA == i and FC.BARS['EA']['expire'] ~= 0 then
FC.BARS['EA']['obj']:ClearAllPoints()
FC.BARS['EA']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['EA']['obj']
end
if FuryCommander_Save.Pos.FE == i and FC.BARS['FE']['expire'] ~= 0 then
FC.BARS['FE']['obj']:ClearAllPoints()
FC.BARS['FE']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['FE']['obj']
end
if FuryCommander_Save.Pos.FECD == i and FC.BARS['FECD']['expire'] ~= 0 then
FC.BARS['FECD']['obj']:ClearAllPoints()
FC.BARS['FECD']['obj']:SetPoint(AnchorFromPos, LastAnchorPos, AnchorToPos, 0, offSetSize*-1)
LastAnchorPos = FC.BARS['FECD']['obj']
end
 
--on top
if FuryCommander_Save.Pos.KS == i*-1 and FC.BARS['KS']['expire'] ~= 0 then
FC.BARS['KS']['obj']:ClearAllPoints()
FC.BARS['KS']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['KS']['obj']
end
if FuryCommander_Save.Pos.CS == i*-1 and FC.BARS['CS']['expire'] ~= 0 then
FC.BARS['CS']['obj']:ClearAllPoints()
FC.BARS['CS']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['CS']['obj']
end
if FuryCommander_Save.Pos.CP == i*-1 and FC.BARS['CP']['expire'] ~= 0 then
FC.BARS['CP']['obj']:ClearAllPoints()
FC.BARS['CP']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['CP']['obj']
end
if FuryCommander_Save.Pos.REC == i*-1 and FC.BARS['REC']['expire'] ~= 0 then
FC.BARS['REC']['obj']:ClearAllPoints()
FC.BARS['REC']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['REC']['obj']
end
if FuryCommander_Save.Pos.SnD == i*-1 and FC.BARS['SnD']['expire'] ~= 0 then
FC.BARS['SnD']['obj']:ClearAllPoints()
FC.BARS['SnD']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['SnD']['obj']
end
if FuryCommander_Save.Pos.RUP == i*-1 and FC.BARS['RUP']['expire'] ~= 0 then
FC.BARS['RUP']['obj']:ClearAllPoints()
FC.BARS['RUP']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['RUP']['obj']
end
if FuryCommander_Save.Pos.GAR == i*-1 and FC.BARS['GAR']['expire'] ~= 0 then
FC.BARS['GAR']['obj']:ClearAllPoints()
FC.BARS['GAR']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['GAR']['obj']
end
if FuryCommander_Save.Pos.ToT == i*-1 and FC.BARS['ToT']['expire'] ~= 0 then
FC.BARS['ToT']['obj']:ClearAllPoints()
FC.BARS['ToT']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['ToT']['obj']
end
if FuryCommander_Save.Pos.VEN == i*-1 and FC.BARS['VEN']['expire'] ~= 0 then
FC.BARS['VEN']['obj']:ClearAllPoints()
FC.BARS['VEN']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['VEN']['obj']
end
if FuryCommander_Save.Pos.VENCD == i*-1 and FC.BARS['VENCD']['expire'] ~= 0 then
FC.BARS['VENCD']['obj']:ClearAllPoints()
FC.BARS['VENCD']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['VENCD']['obj']
end
if FuryCommander_Save.Pos.DP == i*-1 and FC.BARS['DP']['expire'] ~= 0 then
FC.BARS['DP']['obj']:ClearAllPoints()
FC.BARS['DP']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['DP']['obj']
end
if FuryCommander_Save.Pos.ENV == i*-1 and FC.BARS['ENV']['expire'] ~= 0 then
FC.BARS['ENV']['obj']:ClearAllPoints()
FC.BARS['ENV']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['ENV']['obj']
end
if FuryCommander_Save.Pos.THREAT == i*-1 and FC.BARS['THREAT']['expire'] ~= 0 then
FC.BARS['THREAT']['obj']:ClearAllPoints()
FC.BARS['THREAT']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['THREAT']['obj']
end
if FuryCommander_Save.Pos.AR == i*-1 and FC.BARS['AR']['expire'] ~= 0 then
FC.BARS['AR']['obj']:ClearAllPoints()
FC.BARS['AR']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['AR']['obj']
if FuryCommander_Save.Pos.ENR == i*-1 and FC.BARS['ENR']['expire'] ~= 0 then
FC.BARS['ENR']['obj']:ClearAllPoints()
FC.BARS['ENR']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['ENR']['obj']
end
if FuryCommander_Save.Pos.ARCD == i*-1 and FC.BARS['ARCD']['expire'] ~= 0 then
FC.BARS['ARCD']['obj']:ClearAllPoints()
FC.BARS['ARCD']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['ARCD']['obj']
end
if FuryCommander_Save.Pos.EA == i*-1 and FC.BARS['EA']['expire'] ~= 0 then
FC.BARS['EA']['obj']:ClearAllPoints()
FC.BARS['EA']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['EA']['obj']
end
if FuryCommander_Save.Pos.FE == i*-1 and FC.BARS['FE']['expire'] ~= 0 then
FC.BARS['FE']['obj']:ClearAllPoints()
FC.BARS['FE']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['FE']['obj']
end
if FuryCommander_Save.Pos.FECD == i*-1 and FC.BARS['FECD']['expire'] ~= 0 then
FC.BARS['FECD']['obj']:ClearAllPoints()
FC.BARS['FECD']['obj']:SetPoint(AnchorFromNeg, LastAnchorNeg, AnchorToNeg, 0, offSetSize)
LastAnchorNeg = FC.BARS['FECD']['obj']
end
end
end
 
452,8 → 303,8
 
FuryCommander_Combo = VTimerRage:CreateFontString('FuryCommander_Combo', 'OVERLAY', GameFontWhite)
FuryCommander_Combo:SetJustifyH("LEFT")
FuryCommander_Combo:SetSize(20*FC.V.pxW,20*FC.V.pxH)
FuryCommander_Combo:SetPoint('TOPLEFT', VTimerRage, 'TOPLEFT', 5*FC.V.pxW, 0)
FuryCommander_Combo:SetSize(40*FC.V.pxW,20*FC.V.pxH)
FuryCommander_Combo:SetPoint('LEFT', VTimerRage, 'LEFT', 5*FC.V.pxW, 0)
FuryCommander_Combo:SetFontObject(FC.BarFont3)
 
FuryCommander_Spark = {}
533,6 → 384,15
f.iconTxt:SetFontObject(FC.BarFontIcon)
f.iconTxt:SetShadowColor(0,0,0,1)
f.iconTxt:SetShadowOffset(2*FC.V.pxW, -2*FC.V.pxH)
 
f.iconIndice = f.overlay:CreateFontString(nil, 'OVERLAY', GameFontWhite)
f.iconIndice:SetJustifyH("RIGHT")
f.iconIndice:SetJustifyV("BOTTOM")
f.iconIndice:SetSize(20*FC.V.pxW,20*FC.V.pxH)
f.iconIndice:SetPoint('BOTTOMRIGHT', f, "BOTTOMRIGHT", -1*FC.V.pxW, FC.V.pxH)
f.iconIndice:SetFontObject(FC.BarFont3)
f.iconIndice:SetShadowColor(0,0,0,1)
f.iconIndice:SetShadowOffset(1*FC.V.pxW, -1*FC.V.pxH)
 
return f, MoveFrame
end
665,19 → 525,38
BAR['obj']:Hide()
end
 
function FuryCommander:UpdateBar(BAR, display, soundTable, AlertPending, tick, soundTest)
function FuryCommander:GetSpellInfo(spells, spellType)
local name1, rank1, icon1, duration1, expire1, unitCaster1
local name2, rank2, icon2, duration2, expire2, unitCaster2
expire1 = -1
 
for i,spell in pairs(spells) do
if spellType == 1 then
name2, rank2, icon2, _, _, duration2, expire2, unitCaster2 = UnitAura("player", spell, nil, "PLAYER")
if FuryCommander:notnil(expire1) < FuryCommander:notnil(expire2) then
name1, rank1, icon1, duration1, expire1, unitCaster1 = name2, rank2, icon2, duration2, expire2, unitCaster2
end
else
name2, rank2, icon2, _, _, duration2, expire2, unitCaster2 = UnitDebuff("target", spell, nil, "PLAYER")
if FuryCommander:notnil(expire1) < FuryCommander:notnil(expire2) then
name1, rank1, icon1, duration1, expire1, unitCaster1 = name2, rank2, icon2, duration2, expire2, unitCaster2
end
end
end
 
return name1, rank1, icon1, duration1, expire1, unitCaster1
end
 
function FuryCommander:UpdateBar(BAR, display, tick)
if display ~= true then
FuryCommander:HideBar(BAR)
return
end
 
last = BAR['expire']
if BAR['type'] == 1 then
_, rank, icon, _, _, duration, BAR['expire'], unitCaster = UnitAura("player", BAR['name'], nil, "PLAYER")
else
_, rank, icon, _, _, duration, BAR['expire'], unitCaster = UnitDebuff("target", BAR['name'], nil, "PLAYER")
end
 
name, rank, icon, duration, BAR['expire'], unitCaster = FuryCommander:GetSpellInfo(BAR['name'], BAR['type'])
 
if unitCaster ~= "player" and unitCaster ~= nil then
BAR['expire'] = last
end
696,7 → 575,7
if x > 0 then
if BAR['obj']:IsVisible() ~= 1 then
BAR['obj'].icon:SetTexture(icon)
FuryCommander:EnableBar(BAR, duration, BAR['name'], BAR['expire'])
FuryCommander:EnableBar(BAR, duration, name, BAR['expire'])
end
BAR['obj']:SetValue(x)
BAR['obj'].text:SetText(string.format("%0.1f", x))
718,54 → 597,8
end
end
end
 
if soundTest == 1 and BAR['expire'] > last then
if last == 0 and BAR['expire'] > 0 then
FuryCommander:Sound("Applied")
else
timeLeftOnLast = last - GetTime()
if timeLeftOnLast <= 1 then
FuryCommander:Sound("Apply1")
else
if timeLeftOnLast <= 2 then
FuryCommander:Sound("Apply2")
else
FuryCommander:Sound("Apply3")
end
end
end
elseif soundTest == 2 and BAR['expire'] > last then
if last == 0 and BAR['expire'] > 0 then
FuryCommander:Sound("RUP_Applied")
else
timeLeftOnLast = last - GetTime()
if timeLeftOnLast <= 1 then
FuryCommander:Sound("RUP_Refresh1")
else
if timeLeftOnLast <= 2 then
FuryCommander:Sound("RUP_Refresh2")
else
FuryCommander:Sound("RUP_Refresh3")
end
end
end
end
else
if BAR['obj']:IsVisible() then
if soundTest == 1 then
if UnitAffectingCombat("player") then
FuryCommander:Sound("Fail")
else
FuryCommander:Sound("Expire")
end
elseif soundTest == 2 then
if UnitAffectingCombat("player") then
FuryCommander:Sound("RUP_Fail")
else
FuryCommander:Sound("RUP_Expire")
end
end
 
if tick ~= false then
for i = 1,3 do
BAR['tick']['expire'][i] = 0
774,48 → 607,21
FuryCommander:HideBar(BAR)
end
end
if AlertPending ~= nil then
if x > 0 then
if x <= 3 then
if AlertPending == 3 then
FuryCommander:Sound(soundTable[3])
AlertPending = 2
else
if x <= 2 then
if AlertPending == 2 then
FuryCommander:Sound(soundTable[2])
AlertPending = 1
else
if x <= 1 then
if AlertPending == 1 then
FuryCommander:Sound(soundTable[1])
AlertPending = 0
end
end
end
end
end
else
AlertPending = 3
end
end
return AlertPending
end
end
 
function FuryCommander:PLAYER_TARGET_CHANGED(eventName, arg1)
FC.ICON['EXEC']['obj']:Hide()
end
 
function FuryCommander:UNIT_HEALTH()
--[[if (GetActiveTalentGroup(false,false) == 1 and FuryCommander_Save.checkHealthSpec1)
or (GetActiveTalentGroup(false,false) == 2 and FuryCommander_Save.checkHealthSpec2) then]]
if (GetActiveTalentGroup(false,false) == 1 and FuryCommander_Save.checkHealthSpec1)
or (GetActiveTalentGroup(false,false) == 2 and FuryCommander_Save.checkHealthSpec2) then
HP = UnitHealth("target")
maxHP = UnitHealthMax("target")
if HP ~= 0 and maxHP ~= 0 and not UnitIsFriend("player","target")then
pourcentHP = (HP / maxHP) * 100
if pourcentHP <= 20 then
if not FC.ICON['EXEC']['obj']:IsVisible() then
--FuryCommander:Sound("HealthUnder")
FC.ICON['EXEC']['obj']:Show()
end
else
828,7 → 634,7
FC.ICON['EXEC']['obj']:Hide()
end
end
--end]]
end
end
 
function FuryCommander:TargetThreat()
910,6 → 716,12
FC.ICON['CSM']['obj'].overlay:SetBackdropColor(0,0,0,.7)
FC.ICON['RGB']['obj'].overlay:SetBackdropColor(0,0,0,.7)
end
if currentRage < 10 then
FC.ICON['EXEC']['obj'].overlay:SetBackdropColor(.1,.1,.8,.5)
FC.ICON['EXEC']['obj'].overlay:Show()
else
FC.ICON['EXEC']['obj'].overlay:SetBackdropColor(0,0,0,.7)
end
end
 
function FuryCommander:IconWithCD(ICON)
917,7 → 729,7
if start ~= nil and duration >= 3 then
cd = start + duration - FC.tNow
if cd <= 0 then
--ICON['obj'].iconTxt:SetText('')
ICON['obj'].iconTxt:SetText('')
if ICON['obj'].overlay:IsVisible() then
ICON['obj'].overlay:Hide()
end
926,16 → 738,16
ICON['obj'].overlay:Show()
end
if cd >= 10 then
--ICON['obj'].iconTxt:SetText(string.format("%i", cd))
ICON['obj'].iconTxt:SetText(string.format("%i", cd))
else
--ICON['obj'].iconTxt:SetText(string.format("%0.1f", cd))
ICON['obj'].iconTxt:SetText(string.format("%0.1f", cd))
end
end
if not ICON['obj']:IsVisible() then
ICON['obj']:Show()
end
else
--ICON['obj'].iconTxt:SetText('')
ICON['obj'].iconTxt:SetText('')
if ICON['obj'].overlay:IsVisible() then
r, g, b, a = ICON['obj'].overlay:GetBackdropColor()
if r == 0 and g == 0 and b == 0 and string.format("%0.1f", a) == "0.7" then
945,36 → 757,61
end
end
 
function FuryCommander:notnil(expirationTimeEnr)
function FuryCommander:IconWithCount(ICON)
_, _, _, count, _, _, expirationTime = UnitAura("player", ICON['name'], nil, "PLAYER")
if expirationTime ~= nil and expirationTime > 0 then
timeLeft = expirationTime - FC.tNow
if timeLeft <= 0 then
timeLeft = 0
end
ICON['obj'].iconIndice:SetText(count)
if not ICON['obj'].overlay:IsVisible() then
ICON['obj'].overlay:Show()
end
ICON['obj'].iconTxt:SetText(string.format("%0.1f", timeLeft))
else
ICON['obj'].iconIndice:SetText('')
ICON['obj'].iconTxt:SetText('')
if ICON['obj'].overlay:IsVisible() then
r, g, b, a = ICON['obj'].overlay:GetBackdropColor()
if r == 0 and g == 0 and b == 0 and string.format("%0.1f", a) == "0.7" then
ICON['obj'].overlay:Hide()
end
end
end
end
 
function FuryCommander:notnil(expirationTimeEnr)
if expirationTimeEnr == nil or expirationTimeEnr < 0 then
return 0
end
return expirationTimeEnr
end
 
function FuryCommander:GetMaxEnrage()
local expirationTimeEnr, expirationTimeRbe, expirationTimeDwn, expirationTimeMAX
 
_, _, _, _, _, _, expirationTimeEnr = UnitAura("player", FC_SPELL_ENR, nil, "PLAYER")
_, _, _, _, _, _, expirationTimeRbe = UnitAura("player", FC_SPELL_RBE, nil, "PLAYER")
_, _, _, _, _, _, expirationTimeDw = UnitAura("player", FC_SPELL_DW, nil, "PLAYER")
expirationTimeMAX = math.max(FuryCommander:notnil(expirationTimeEnr), FuryCommander:notnil(expirationTimeRbe), FuryCommander:notnil(expirationTimeDw))
if expirationTimeMAX then
expirationTimeMAX = expirationTimeMAX-FC.tNow
else
expirationTimeMAX = ""
end
return expirationTimeMAX
 
return FuryCommander:notnil(expirationTimeMAX-FC.tNow)
end
 
function FuryCommander:ColorEnrageBorder(b)
local enrageTime = FuryCommander:GetMaxEnrage()
if enrageTime then
if enrageTime ~= 0 then
b.border[1]:SetBackdropColor(unpack(FC.V.brColor))
b.border[2]:SetBackdropColor(unpack(FC.V.yeColor))
b.border[3]:SetBackdropColor(unpack(FC.V.brColor))
b.iconIndice:SetText()
--FuryCommander_Combo:SetText(string.format("%0.1f", enrageTime))
b:Show()
else
b.border[1]:SetBackdropColor(unpack(FC.V.bColor))
b.border[2]:SetBackdropColor(unpack(FC.V.wColor))
b.border[3]:SetBackdropColor(unpack(FC.V.bColor))
FuryCommander_Combo:SetText("")
if b.iconTxt:GetText() == nil then
b:Hide()
end
990,8 → 827,11
FuryCommander:IconWithCD(FC.ICON['CSM'])
FuryCommander:IconWithCD(FC.ICON['RGB'])
 
FuryCommander:IconWithCount(FC.ICON['EXEC'])
 
FuryCommander:ColorEnrageBorder(FC.ICON['RGB']['obj'])
FC.ICON['BLT'].iconTxt:SetText(FuryCommander:GetMaxEnrage())
 
FuryCommander:UpdateBar(FC.BARS['ENR'], FuryCommander_Save.display.ENR, false)--Update Enrage Bar
end
 
do