WoWInterface SVN SliceCommander

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /trunk/Core
    from Rev 236 to Rev 239
    Reverse comparison

Rev 236 → Rev 239

Event.lua
87,12 → 87,10
SliceCommander:SetSparks()--MOVE SPARK for the current spec
 
local aSpec = GetSpecialization()
if aSpec == 1 then--POISONS
SC.OTHER['POISON']['obj'].button:SetAttribute("spell1", SC_SPELL[SC.SET.poison.mh])
SC.OTHER['POISON']['obj'].button:SetAttribute("spell2", SC_SPELL[SC.SET.poison.oh])
if SC.SET.poison.oh == 'none' then
SC.OTHER['POISON']['obj'].button:SetAttribute("spell2", nil)
end
SC.OTHER['POISON']['obj'].button:SetAttribute("spell1", SC_SPELL[SC.SET.poison.mh[aSpec]])
SC.OTHER['POISON']['obj'].button:SetAttribute("spell2", SC_SPELL[SC.SET.poison.oh[aSpec]])
if SC.SET.poison.oh == 'none' then
SC.OTHER['POISON']['obj'].button:SetAttribute("spell2", nil)
end
end
end
Tukui.lua
1,5 → 1,18
-- Come frome Tukui API, thanks to him
-- See tukui at www.tukui.org
 
 
-- split("a,b,c", ",") => {"a", "b", "c"}
local function SC_split(s, sep)
local fields = {}
 
local sep = sep or " "
local pattern = string.format("([^%s]+)", sep)
string.gsub(s, pattern, function(c) fields[#fields + 1] = c end)
 
return fields
end
 
function SliceCommander_LoadTukuiApi()
local noop = function() return end
local floor = math.floor
14,7 → 27,8
 
-- pixel perfect script of custom ui Scale.
local resolution = ({GetScreenResolutions()})[GetCurrentResolution()] or GetCVar("gxWindowedResolution")
local width, height = DecodeResolution(resolution)
local tableResolution = SC_split(resolution, 'x')
local width, height = tableResolution[1],tableResolution[2]
local uiscale = min(2, max(.64, 768/width))
local mult = 768/height/uiscale
 
212,7 → 226,7
if f.backdrop then return end
if not t then t = "Default" end
 
local b = CreateFrame("Frame", nil, f)
local b = CreateFrame("Frame", nil, f, BackdropTemplateMixin and "BackdropTemplate")
b:Point("TOPLEFT", -2 + inset, 2 - inset)
b:Point("BOTTOMRIGHT", 2 - inset, -2 + inset)
b:SetTemplate(t, tex)
238,7 → 252,7
local function CreateShadow(f, t)
if f.shadow then return end
 
local shadow = CreateFrame("Frame", nil, f)
local shadow = CreateFrame("Frame", nil, f, BackdropTemplateMixin and "BackdropTemplate")
shadow:SetFrameLevel(1)
shadow:SetFrameStrata(f:GetFrameStrata())
shadow:Point("TOPLEFT", -3, 3)
326,7 → 340,7
local function HighlightUnit(f, r, g, b)
if f.HighlightTarget then return end
local glowBorder = {edgeFile = "Interface\\AddOns\\SliceCommander\\Images\\solid.tga", edgeSize = 1}
f.HighlightTarget = CreateFrame("Frame", nil, f)
f.HighlightTarget = CreateFrame("Frame", nil, f, BackdropTemplateMixin and "BackdropTemplate")
f.HighlightTarget:Point("TOPLEFT", f, "TOPLEFT", -2, 2)
f.HighlightTarget:Point("BOTTOMRIGHT", f, "BOTTOMRIGHT", 2, -2)
f.HighlightTarget:SetBackdrop(glowBorder)
381,7 → 395,7
end
 
local handled = {["Frame"] = true}
local object = CreateFrame("Frame")
local object = CreateFrame("Frame", nil, UIParent, BackdropTemplateMixin and "BackdropTemplate")
addapi(object)
addapi(object:CreateTexture())
addapi(object:CreateFontString())
Config.lua
142,13 → 142,12
 
--GLOBAL
SC.BARS['KSCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_kidneyshot")
SC.BARS['TOT']['obj'].icon:SetTexture("Interface\\Icons\\Ability_Rogue_TricksOftheTrade")
SC.BARS['VAN']['obj'].icon:SetTexture("Interface\\Icons\\Ability_Vanish")
SC.BARS['SS']['obj'].icon:SetTexture("Interface\\Icons\\Ability_Rogue_Shadowstep")
SC.BARS['MD']['obj'].icon:SetTexture("Interface\\Icons\\achievement_bg_killingblow_berserker")
SC.BARS['DFA']['obj'].icon:SetTexture("Interface\\Icons\\spell_rogue_deathfromabove")
SC.BARS['TOTCD']['obj'].icon:SetTexture("Interface\\Icons\\Ability_Rogue_TricksOftheTrade")
SC.BARS['VANCD']['obj'].icon:SetTexture("Interface\\Icons\\Ability_Vanish")
SC.BARS['MDCD']['obj'].icon:SetTexture("Interface\\Icons\\achievement_bg_killingblow_berserker")
SC.BARS['DFACD']['obj'].icon:SetTexture("Interface\\Icons\\spell_rogue_deathfromabove")
SC.BARS['CVCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_crimsonvial")
SC.BARS['KI']['obj'].icon:SetTexture("Interface\\Icons\\ability_kick")
SC.BARS['KICD']['obj'].icon:SetTexture("Interface\\Icons\\ability_kick")
SC.BARS['COSCD']['obj'].icon:SetTexture("Interface\\Icons\\spell_shadow_nethercloak")
SC.BARS['EVACD']['obj'].icon:SetTexture("Interface\\Icons\\spell_shadow_shadowward")
SC.BARS['SPRCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_sprint")
157,22 → 156,22
 
--ASSASSINATION
SC.BARS['VENCD']['obj'].icon:SetTexture("Interface\\Icons\\Ability_Rogue_Deadliness")
SC.BARS['EX']['obj'].icon:SetTexture("Interface\\Icons\\ability_deathwing_bloodcorruption_earth")
SC.BARS['EXCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_deathwing_bloodcorruption_earth")
SC.BARS['GARCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_garrote")
SC.BARS['KBCD']['obj'].icon:SetTexture("Interface\\Icons\\inv_knife_1h_artifactgarona_d_01")
SC.BARS['TXBCD']['obj'].icon:SetTexture("Interface\\Icons\\inv_weapon_shortblade_62")
 
--OUTLAW
SC.BARS['ARCD']['obj'].icon:SetTexture("Interface\\Icons\\Spell_Shadow_ShadowWordDominate")
SC.BARS['KSP']['obj'].icon:SetTexture("Interface\\Icons\\Ability_Rogue_Murderspree")
SC.BARS['GH']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_grapplinghook")
SC.BARS['KSPCD']['obj'].icon:SetTexture("Interface\\Icons\\Ability_Rogue_Murderspree")
SC.BARS['GHCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_grapplinghook")
SC.BARS['BECD']['obj'].icon:SetTexture("Interface\\Icons\\inv_weapon_rifle_01")
SC.BARS['RB']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_rollthebones")
SC.BARS['RBCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_rollthebones")
SC.BARS['CDBCD']['obj'].icon:SetTexture("Interface\\Icons\\inv_sword_1h_artifactskywall_d_01dual")
SC.BARS['BFCD']['obj'].icon:SetTexture("Interface\\Icons\\Ability_Warrior_PunishingBlow")
SC.BARS['GSCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_creature_cursed_02")
SC.BARS['BRCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_arakkoa_spinning_blade")
SC.BARS['RIPCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_parry")
SC.BARS['GGCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_gouge")
 
--SUBTLETY
181,7 → 180,7
SC.BARS['GBCD']['obj'].icon:SetTexture("Interface\\Icons\\inv_knife_1h_artifactfangs_d_01")
SC.BARS['SODCD']['obj'].icon:SetTexture("Interface\\Icons\\spell_shadow_rune")
SC.BARS['SHTCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_throwingspecialization")
SC.BARS['STH']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_sinistercalling")
SC.BARS['STHCD']['obj'].icon:SetTexture("Interface\\Icons\\ability_rogue_sinistercalling")
 
SliceCommander:DisableIcon(SC.BARS['THREAT']['obj'], 110)
SliceCommander:DisableIcon(SC.BARS['HEALTH']['obj'], 100)
469,45 → 468,34
if _G['SC'].version == nil or _G['SC'].version < '7.00' then
_G['SC'] = {version = GetAddOnMetadata("SliceCommander", "Version")}
else
if _G['SC'].version < '7.18' then
_G['SC'].SET.Pos['ES'] = nil--REMOVE ENVELOPPING SHADOW
_G['SC'].BARS['ES'] = nil
_G['SC'].SET.Pos['AP'] = nil
_G['SC'].BARS['AP'] = nil
_G['SC'].BARS['SOD']['pandemic'] = nil--SYMBOL OF DEATH NOW HAS LONGER CD
_G['SC'].BARS['SOD']['pandemictimer'] = nil
_G['SC'].BARS['SOD']['pandemicobj'] = nil
if _G['SC'].version < '9.01' then
_G['SC'].SET.Pos['RIP'] = nil--Remove ripost
_G['SC'].BARS['RIP'] = nil
_G['SC'].SET.Pos['RIPCD'] = nil
_G['SC'].BARS['RIPCD'] = nil
_G['SC'].SET.Pos['VAN'] = nil--ADD CD TO the NAME OF SOME CD
_G['SC'].BARS['VAN'] = nil
_G['SC'].SET.Pos['CD'] = nil
_G['SC'].BARS['CD'] = nil
_G['SC'].SET.Pos['MD'] = nil
_G['SC'].BARS['MD'] = nil
_G['SC'].SET.Pos['TOT'] = nil
_G['SC'].BARS['TOT'] = nil
_G['SC'].SET.Pos['KI'] = nil
_G['SC'].BARS['KI'] = nil
_G['SC'].SET.Pos['DFA'] = nil
_G['SC'].BARS['DFA'] = nil
_G['SC'].SET.Pos['EX'] = nil
_G['SC'].BARS['EX'] = nil
_G['SC'].SET.Pos['KSP'] = nil
_G['SC'].BARS['KSP'] = nil
_G['SC'].SET.Pos['BR'] = nil
_G['SC'].BARS['BR'] = nil
_G['SC'].SET.Pos['GH'] = nil
_G['SC'].BARS['GH'] = nil
_G['SC'].SET.Pos['STH'] = nil
_G['SC'].BARS['STH'] = nil
end
if _G['SC'].version < '8.00' then
_G['SC'].SET.Pos['CB'] = nil--REMOVE CANONBALL BARAGE
_G['SC'].BARS['CB'] = nil
_G['SC'].SET.Pos['HEM'] = nil--REMOVE Hemorrhage
_G['SC'].BARS['HEM'] = nil
_G['SC'].SET.Pos['PA'] = nil--REMOVE Parley
_G['SC'].BARS['PA'] = nil
_G['SC'].SET.poison.mh = 'DPB'
_G['SC'].SET.poison.oh = 'CRP'
_G['SC'].SET.CP[10] = nil--RMOVED Anticipation
_G['SC'].SET.RB['SC'] = 'SS'
_G['SC'].SET.RB['RP'] = 'Crit'
_G['SC'].SET.Pos['STHCD'] = nil--REMOVE CANONBALL BARAGE
_G['SC'].BARS['STHCD'] = nil
end
if _G['SC'].version < '8.02' then
_G['SC'].SET.Pos['RI'] = nil--REMOVE OLD REPOST ARRAY
_G['SC'].BARS['RI'] = nil
_G['SC'].SET.Pos['RICD'] = nil
_G['SC'].BARS['RICD'] = nil
_G['SC'].SET.Pos['EV'] = nil--REMOVE OLD REPOST ARRAY
_G['SC'].BARS['EV'] = nil
_G['SC'].SET.Pos['EVCD'] = nil
_G['SC'].BARS['EVCD'] = nil
end
if _G['SC'].version < '8.03' then
if _G['SC'].SET.poison.mh == 'DP' then
_G['SC'].SET.poison.mh = 'DPB'
end
end
_G['SC'].version = GetAddOnMetadata("SliceCommander", "Version")
end
end
554,8 → 542,8
end
 
function SliceCommander:Global()
SliceCommander:DisplaySpells({'CP', 'THREAT', 'CS', 'KS', 'KSCD', 'FOTD', 'CV', 'CVCD', 'TOT', 'FE', 'SSCD', 'SUB', 'CD', 'AC', 'MD', 'DFA', 'Poison', 'SOTD', 'MAI', 'FECD', 'ESSECD'})
SliceCommander:NotDisplaySpells({'HEALTH', 'THEALTH', 'VAN', 'KI', 'COS', 'COSCD', 'EVA', 'EVACD', 'SPR', 'SPRCD', 'SS'})
SliceCommander:DisplaySpells({'CP', 'THREAT', 'CS', 'KS', 'KSCD', 'FOTD', 'CV', 'CVCD', 'TOTCD', 'FE', 'SSCD', 'SUB', 'CDCD', 'AC', 'MDCD', 'DFACD', 'Poison', 'SOTD', 'MAI', 'FECD', 'ESSECD', 'DPICON'})
SliceCommander:NotDisplaySpells({'HEALTH', 'THEALTH', 'VANCD', 'KICD', 'COS', 'COSCD', 'EVA', 'EVACD', 'SPR', 'SPRCD', 'SS'})
 
_G['SC'].orderBar = _G['SC'].maxPos
_G['SC'].orderCDBar = _G['SC'].maxCDPos
565,45 → 553,48
end
 
SliceCommander:OrderSpells({'FOTD', 'CV', 'FE', 'SUB', 'AC', 'MAI', 'COS', 'EVA', 'SPR', 'SS'})
SliceCommander:OrderCDs({'CVCD', 'TOT', 'VAN', 'SSCD', 'CD', 'MD', 'DFA', 'THREAT', 'HEALTH', 'THEALTH', 'CS', 'KS', 'KSCD', 'KI', 'COSCD', 'EVACD', 'SPRCD', 'FECD', 'ESSECD'})
SliceCommander:OrderCDs({'CVCD', 'TOTCD', 'VANCD', 'SSCD', 'CDCD', 'MDCD', 'DFACD', 'THREAT', 'HEALTH', 'THEALTH', 'CS', 'KS', 'KSCD', 'KICD', 'COSCD', 'EVACD', 'SPRCD', 'FECD', 'ESSECD'})
end
 
function SliceCommander:Assassination()
SliceCommander:DisplaySpells({'RUP', 'GAR', 'GARCD', 'VEN', 'VENCD', 'ENV', 'EP', 'DPICON', 'DPBUT', 'EX', 'KB', 'KBCD', 'BA', 'ST', 'TXB', 'TXBCD', 'BLS', 'MA', 'CT'})
SliceCommander:DisplaySpells({'RUP', 'GAR', 'GARCD', 'VEN', 'VENCD', 'ENV', 'EP', 'DPBUT', 'EXCD', 'KB', 'KBCD', 'BA', 'ST', 'TXB', 'TXBCD', 'BLS', 'MA', 'CT'})
SliceCommander:NotDisplaySpells({'DP'})
 
_G['SC'].orderBar = 0
_G['SC'].orderCDBar = -1
 
SliceCommander:OrderSpells({'GAR', 'RUP', 'ENV', 'KB', 'BA', 'ST', 'VEN', 'DP', 'EP', 'TXB', 'BLS', 'MA', 'CT'})
SliceCommander:OrderCDs({'VENCD', 'KBCD', 'EX', 'GARCD', 'TXBCD'})
SliceCommander:OrderCDs({'VENCD', 'KBCD', 'EXCD', 'GARCD', 'TXBCD'})
end
 
function SliceCommander:Outlaw()
SliceCommander:DisplaySpells({'SND', 'RB', 'AR', 'ARCD', 'CDB', 'CDBCD', 'KSP', 'GS', 'GH', 'BE', 'BECD', 'BF', 'BFCD', 'OP', 'GSWW', 'BB', 'LD', 'GSCD', 'BRCD'})
SliceCommander:NotDisplaySpells({'BFICON', 'BR', 'RIP', 'RIPCD', 'GG', 'GGCD'})
SliceCommander:DisplaySpells({'SND', 'RB', 'AR', 'ARCD', 'CDB', 'CDBCD', 'KSPCD', 'GS', 'GHCD', 'BE', 'BECD', 'BF', 'BFCD', 'OP', 'GSWW', 'BB', 'LD', 'GSCD', 'BRCD', 'RBCD'})
SliceCommander:NotDisplaySpells({'BFICON', 'GG', 'GGCD'})
 
_G['SC'].orderBar = 0
_G['SC'].orderCDBar = -1
 
SliceCommander:OrderSpells({'SND', 'RB', 'AR', 'GS', 'OP', 'CDB', 'GSWW', 'BF', 'BR', 'RIP'})
SliceCommander:OrderCDs({'BECD', 'BE', 'ARCD', 'BFCD', 'KSP', 'GH', 'CDBCD', 'LD', 'GSCD', 'BRCD', 'RIPCD', 'GG', 'GGCD'})
SliceCommander:OrderSpells({'SND', 'RB', 'AR', 'GS', 'OP', 'CDB', 'GSWW', 'BF', 'LD'})
SliceCommander:OrderCDs({'BECD', 'BE', 'ARCD', 'BFCD', 'KSPCD', 'GHCD', 'CDBCD', 'GSCD', 'BRCD', 'GG', 'GGCD', 'RBCD'})
end
 
function SliceCommander:Subtlety()
SliceCommander:DisplaySpells({'SD', 'SDCD', 'SB', 'SBCD', 'NB', 'SOD', 'GB', 'GBCD', 'SODCD', 'SHT', 'SHTCD', 'STH'})
SliceCommander:DisplaySpells({'SD', 'SDCD', 'SB', 'SBCD', 'NB', 'SOD', 'GB', 'GBCD', 'SODCD', 'SHT', 'SHTCD', 'STHCD'})
SliceCommander:NotDisplaySpells({'FW'})
 
_G['SC'].orderBar = 0
_G['SC'].orderCDBar = -1
 
SliceCommander:OrderSpells({'GB', 'NB', 'SOD', 'SD', 'SB', 'SHT', 'FW'})
SliceCommander:OrderCDs({'GBCD', 'SDCD', 'SBCD', 'SODCD', 'SHTCD', 'STH'})
SliceCommander:OrderCDs({'GBCD', 'SDCD', 'SBCD', 'SODCD', 'SHTCD', 'STHCD'})
 
end
 
function SliceCommander:SetEssence()
local essenceId = C_AzeriteEssence.GetMilestoneEssence(115)
if not essenceId then
return nil
end
local essenceRank = C_AzeriteEssence.GetEssenceInfo(essenceId)['rank']
 
if SC_SPELLID['ALLESSE'][essenceId] ~= nil then
805,9 → 796,17
if SC.SET.energyColor == nil then
SC.SET.energyColor = {.92, .92, .92}
end
if SC.SET.poison.mh == nil or SC.SET.poison.oh == nil then
SC.SET.poison.mh = 'DPB'--DPB
SC.SET.poison.oh = 'CRP'--CRP
if SC.SET.poison.mh == nil or SC.SET.poison.oh == nil or type(SC.SET.poison.mh) ~= "table" or type(SC.SET.poison.oh) ~= "table" then
SC.SET.poison.mh = {
[1] = 'DPB',
[2] = 'IP',
[3] = 'IP'
}
SC.SET.poison.oh = {
[1] = 'CRP',
[2] = 'CRP',
[3] = 'CRP'
}
end
if SC.SET.font == nil then
SC.SET.font = "Friz Quadrata TT"
921,8 → 920,8
if SC.BARS['CS'] == nil then--Cheap Shot
SC.BARS['CS'] = {['color'] = {.89, .73, .2}}
end
if SC.BARS['VAN'] == nil then--Vanish
SC.BARS['VAN'] = {['color'] = {.42, .46, .51}}
if SC.BARS['VANCD'] == nil then--Vanish
SC.BARS['VANCD'] = {['color'] = {.42, .46, .51}}
end
if SC.BARS['FOTD'] == nil then--Fury of the Destroyer
SC.BARS['FOTD'] = {['color'] = {.7, .13, .75}}
939,17 → 938,17
if SC.BARS['FECD'] == nil then--Feint CD
SC.BARS['FECD'] = {['color'] = {.15, .42, .68}}
end
if SC.BARS['KI'] == nil then--Kick
SC.BARS['KI'] = {['color'] = {.42, .46, .51}}
if SC.BARS['KICD'] == nil then--Kick
SC.BARS['KICD'] = {['color'] = {.42, .46, .51}}
end
if SC.BARS['MAI'] == nil then--Master Assassin's Initiative
SC.BARS['MAI'] = {['color'] = {.42, .46, .51}}
end
if SC.BARS['MD'] == nil then--Marked for Death
SC.BARS['MD'] = {['color'] = {.92, .33, .33}}
if SC.BARS['MDCD'] == nil then--Marked for Death
SC.BARS['MDCD'] = {['color'] = {.92, .33, .33}}
end
if SC.BARS['DFA'] == nil then--Death from Above
SC.BARS['DFA'] = {['color'] = {.75, .65, .53}}
if SC.BARS['DFACD'] == nil then--Death from Above
SC.BARS['DFACD'] = {['color'] = {.75, .65, .53}}
end
if SC.BARS['AC'] == nil then--Alacrity
SC.BARS['AC'] = {['color'] = {.6, .55, .17}}
964,14 → 963,14
if SC.BARS['CVCD'] == nil then--Crimson Vial
SC.BARS['CVCD'] = {['color'] = {.33, .57, .54}}
end
if SC.BARS['CD'] == nil then--Cheated Death
SC.BARS['CD'] = {['color'] = {.2, .47, .19}}
if SC.BARS['CDCD'] == nil then--Cheated Death
SC.BARS['CDCD'] = {['color'] = {.2, .47, .19}}
end
if SC.BARS['SUB'] == nil then--Subterfuge
SC.BARS['SUB'] = {['color'] = {.04, .81, .82}}
end
if SC.BARS['TOT'] == nil then--Tricks of the Trade
SC.BARS['TOT'] = {['color'] = {.3, .3, 1}}
if SC.BARS['TOTCD'] == nil then--Tricks of the Trade
SC.BARS['TOTCD'] = {['color'] = {.3, .3, 1}}
end
if SC.BARS['COS'] == nil then--Cloak of Shadows
SC.BARS['COS'] = {['color'] = {.2, .4, .53}}
1017,8 → 1016,8
if SC.BARS['BA'] == nil then--Blood of the Assassinated
SC.BARS['BA'] = {['color'] = {.83, .27, .27}}
end
if SC.BARS['EX'] == nil then--Exsanguinate
SC.BARS['EX'] = {['color'] = {.83, .27, .27}}
if SC.BARS['EXCD'] == nil then--Exsanguinate
SC.BARS['EXCD'] = {['color'] = {.83, .27, .27}}
end
if SC.BARS['DP'] == nil then--Deadly Poison
SC.BARS['DP'] = {['color'] = {.27, .68, .23}}
1072,6 → 1071,9
if SC.BARS['RB'] == nil then--Roll the Bones
SC.BARS['RB'] = {['color'] = {.83, .51, .27}}
end
if SC.BARS['RBCD'] == nil then--Roll the Bones CD
SC.BARS['RBCD'] = {['color'] = {.83, .51, .27}}
end
if SC.BARS['AR'] == nil then--Adrenaline Rush
SC.BARS['AR'] = {['color'] = {.83, .64, .27}}
end
1096,8 → 1098,8
if SC.BARS['GSWW'] == nil then--Greenskin's Waterlogged Wristcuffs
SC.BARS['GSWW'] = {['color'] = {.81, .27, .3}}
end
if SC.BARS['GH'] == nil then--Grappling Hook
SC.BARS['GH'] = {['color'] = {.83, .82, .27}}
if SC.BARS['GHCD'] == nil then--Grappling Hook
SC.BARS['GHCD'] = {['color'] = {.83, .82, .27}}
end
if SC.BARS['BE'] == nil then--Between the Eyes
SC.BARS['BE'] = {['color'] = {.62, .78, .26}}
1105,8 → 1107,8
if SC.BARS['BECD'] == nil then--Between the Eyes CD
SC.BARS['BECD'] = {['color'] = {.62, .78, .26}}
end
if SC.BARS['KSP'] == nil then--Killing Spree
SC.BARS['KSP'] = {['color'] = {.27, .68, .23}}
if SC.BARS['KSPCD'] == nil then--Killing Spree
SC.BARS['KSPCD'] = {['color'] = {.27, .68, .23}}
end
if SC.BARS['LD'] == nil then--Loaded Dice
SC.BARS['LD'] = {['color'] = {.63, .52, .38}}
1117,18 → 1119,9
if SC.BARS['BFCD'] == nil then--Blade Flury CD
SC.BARS['BFCD'] = {['color'] = {.66, .22, .47}}
end
if SC.BARS['BR'] == nil then--Blade Rush
SC.BARS['BR'] = {['color'] = {.99, .99, .56}}
end
if SC.BARS['BRCD'] == nil then--Blade Rush CD
if SC.BARS['BRCD'] == nil then--Blade Rush
SC.BARS['BRCD'] = {['color'] = {.99, .99, .56}}
end
if SC.BARS['RIP'] == nil then--Riposte
SC.BARS['RIP'] = {['color'] = {.42, .46, .51}}
end
if SC.BARS['RIPCD'] == nil then--Riposte CD
SC.BARS['RIPCD'] = {['color'] = {.42, .46, .51}}
end
if SC.BARS['GG'] == nil then--Gouge
SC.BARS['GG'] = {['color'] = {.81, .27, .3}}
end
1179,8 → 1172,8
if SC.BARS['SHTCD'] == nil then--Shuriken Tornado CD
SC.BARS['SHTCD'] = {['color'] = {.6, .55, .17}}
end
if SC.BARS['STH'] == nil then--Secret Technique
SC.BARS['STH'] = {['color'] = {.52, .18, .54}}
if SC.BARS['STHCD'] == nil then--Secret Technique
SC.BARS['STHCD'] = {['color'] = {.52, .18, .54}}
end
if SC.BARS['FW'] == nil then--Find Weakness
SC.BARS['FW'] = {['color'] = {.28, .86, .47}}
1205,7 → 1198,7
SC.BARS[k]['id'] = SC_SPELLID[k]
end
 
local buff = {'FOTD', 'AR', 'SUB', 'EP', 'CV', 'AC', 'FE', 'SND', 'SD', 'SOD', 'SB', 'OP', 'ENV', 'GB', 'GSWW', 'MAI', 'LD', 'BF', 'SHT', 'COS', 'EVA', 'SPR', 'BLS', 'MA', 'BR', 'RIP', 'SS'}
local buff = {'FOTD', 'AR', 'SUB', 'EP', 'CV', 'AC', 'FE', 'SND', 'SD', 'SOD', 'SB', 'OP', 'ENV', 'GB', 'GSWW', 'MAI', 'LD', 'BF', 'SHT', 'COS', 'EVA', 'SPR', 'BLS', 'MA', 'SS'}
for i, v in ipairs(buff) do
SC.BARS[v]['type'] = 1
end
1215,18 → 1208,17
SC.BARS[v]['type'] = 2
end
 
local selfdebuff = {'CD', 'CDB'}
local selfdebuff = {'CDCD', 'CDB'}
for i, v in ipairs(selfdebuff) do
SC.BARS[v]['type'] = 3
end
 
local cd = {'VAN', 'KSP', 'ARCD', 'CDBCD', 'CVCD', 'MD', 'GH', 'BECD', 'TOT', 'SDCD', 'SBCD', 'VENCD', 'GBCD', 'EX', 'GARCD', 'KBCD', 'KSCD', 'DFA', 'KI', 'TXBCD', 'SODCD', 'SHTCD', 'STH', 'COSCD', 'EVACD', 'SPRCD', 'FECD', 'GSCD', 'BRCD', 'RIPCD', 'GGCD', 'ESSECD'}
local cd = {'VANCD', 'KSPCD', 'ARCD', 'CDBCD', 'CVCD', 'MDCD', 'GHCD', 'BECD', 'TOTCD', 'SDCD', 'SBCD', 'VENCD', 'GBCD', 'EXCD', 'GARCD', 'KBCD', 'KSCD', 'DFACD', 'KICD', 'TXBCD', 'SODCD', 'SHTCD', 'STHCD', 'COSCD', 'EVACD', 'SPRCD', 'FECD', 'GSCD', 'BRCD', 'GGCD', 'ESSECD', 'BFCD', 'RBCD'}
for i, v in ipairs(cd) do
SC.BARS[v]['type'] = 4
end
 
SC.BARS['SDCD']['type'] = 5
SC.BARS['BFCD']['type'] = 5
SC.BARS['SSCD']['type'] = 5
SC.BARS['RB']['type'] = 6
--[[local chargecd = {'SDCD'}
Object.lua
1,5 → 1,5
function SliceCommander:NewFrame(color)
local f = CreateFrame("StatusBar", nil, UIParent)
local f = CreateFrame("StatusBar", nil, UIParent, BackdropTemplateMixin and "BackdropTemplate")
 
f:SetStatusBarTexture(SliceCommander:BarTexture())
f:SetValue(0)
34,7 → 34,7
end
 
function SliceCommander:CPFrame()
local f = CreateFrame("StatusBar", nil, UIParent)
local f = CreateFrame("StatusBar", nil, UIParent, BackdropTemplateMixin and "BackdropTemplate")
 
f.bg = f:CreateTexture(nil, "BACKGROUND")
f.bg:SCPoint("TOPLEFT", f, "TOPLEFT", 0, 0)
44,7 → 44,7
f.combos = {}
 
for i = 1, 10 do--Maximum CP is 10 with anticipation
local combo = CreateFrame("Frame", nil, f)
local combo = CreateFrame("Frame", nil, f, BackdropTemplateMixin and "BackdropTemplate")
combo.bg = combo:CreateTexture(nil, "BACKGROUND")
combo.bg:SetAllPoints(combo)
combo.bg:SetTexture("Interface\\AddOns\\SliceCommander\\Images\\solid.tga")
53,7 → 53,7
f.combos[i] = combo
end
 
f.overlay = CreateFrame("Frame", nil, f)
f.overlay = CreateFrame("Frame", nil, f, BackdropTemplateMixin and "BackdropTemplate")
f.overlay:SetAllPoints(f)
 
f.comboText = f.overlay:CreateFontString(nil, 'OVERLAY')
71,7 → 71,7
end
 
function SliceCommander:ThinBar(point, relativePoint, x, y)
local f = CreateFrame("StatusBar", nil, UIParent)
local f = CreateFrame("StatusBar", nil, UIParent, BackdropTemplateMixin and "BackdropTemplate")
f:SCHeight(2)
f:SetFrameLevel(2)
f:SetStatusBarTexture(SliceCommander:BarTexture())
88,7 → 88,7
end
 
function SliceCommander:CreateMoveFrame()
CreateFrame('Frame', 'SliceCommanderFrame', UIParent)
CreateFrame('Frame', 'SliceCommanderFrame', UIParent, BackdropTemplateMixin and "BackdropTemplate")
SliceCommanderFrame:SetToplevel(true)
SliceCommanderFrame:EnableMouse(false)
SliceCommanderFrame:SetMovable(true)
108,7 → 108,7
end
 
function SliceCommander:CreateEnergyFrame()
CreateFrame('StatusBar', 'VTimerEnergy', UIParent)
CreateFrame('StatusBar', 'VTimerEnergy', UIParent, BackdropTemplateMixin and "BackdropTemplate")
VTimerEnergy:SCSize(200, 20)
VTimerEnergy:SetMinMaxValues(0,100)
VTimerEnergy:SCPoint('CENTER', SliceCommanderFrame, 'CENTER', 0, 0)
166,7 → 166,7
end
 
function SliceCommander:NewMoveFrameIcon(name)
local MoveFrame = CreateFrame('Button', name, UIParent)
local MoveFrame = CreateFrame('Button', name, UIParent, BackdropTemplateMixin and "BackdropTemplate")
MoveFrame:SetToplevel(true)
MoveFrame:EnableMouse(false)
MoveFrame:SetMovable(true)
189,7 → 189,7
function SliceCommander:NewIcon(icon, name)
local MoveFrame = SliceCommander:NewMoveFrameIcon(name)
 
local f = CreateFrame("Frame", name..'button', UIParent)
local f = CreateFrame("Frame", name..'button', UIParent, BackdropTemplateMixin and "BackdropTemplate")
f:SCPoint('CENTER', name, 'CENTER', 0, 0)
f:SetFrameStrata("MEDIUM")
f:SetFrameLevel(1)
203,7 → 203,7
f.icon = fIcon
f.border = SliceCommander:tukSkin(f, fIcon)
 
f.overlay = CreateFrame('Frame', nil, f)
f.overlay = CreateFrame('Frame', nil, f, BackdropTemplateMixin and "BackdropTemplate")
f.overlay:SetFrameStrata("HIGH")
f.overlay:SetFrameLevel(2)
f.overlay:SCPoint('CENTER', f:GetName(), 'CENTER', 0, 0)
233,7 → 233,7
end
 
function SliceCommander:CreateTextureSkin(frame, color, level, texture)
local t = CreateFrame('Frame', nil, frame)
local t = CreateFrame('Frame', nil, frame, BackdropTemplateMixin and "BackdropTemplate")
t:SetDefaultBackdrop()
t:SetFrameLevel(level)
t:SetFrameStrata("LOW")
PixelPerfect.lua
15,6 → 15,17
local scale
 
 
-- split("a,b,c", ",") => {"a", "b", "c"}
local function SC_split(s, sep)
local fields = {}
 
local sep = sep or " "
local pattern = string.format("([^%s]+)", sep)
string.gsub(s, pattern, function(c) fields[#fields + 1] = c end)
 
return fields
end
 
--Return rounded number
function SliceCommander:Round(num, idp)
if(idp and idp > 0) then
26,7 → 37,7
 
function SliceCommander:UIScale(event)
if not _G['SC'].SET or _G['SC'].SET.PixelPerfect then
local resolution = ({GetScreenResolutions()})[GetCurrentResolution()]
local resolution = ({GetScreenResolutions()})[GetCurrentResolution()] or GetCVar("gxWindowedResolution")
if resolution == nil then
if not _G['SC'].SET then
return false
37,7 → 48,8
end
return false
end
local screenwidth, screenheight = DecodeResolution(resolution)
local tableResolution = SC_split(resolution, 'x')
local screenwidth, screenheight = tableResolution[1],tableResolution[2]
 
if IsMacClient() and _G['SC'].screenheight and _G['SC'].screenwidth and (screenwidth ~= _G['SC'].screenheight or screenheight ~= _G['SC'].screenwidth) then
screenheight = _G['SC'].screenheight
Settings.lua
171,7 → 171,7
args.CDSpellSound = SliceCommander:getCDSpellSound(spell)
end
return {
name = SC_SPELL[spell],
name = SC_SPELL[spell] .. ' CD',
type = "group",
order = SliceCommander:getOrder(),
args = args
413,6 → 413,12
Shortcut_HEALTH = SliceCommander:getShortcutSetting("SliceCommander_General", "General", "HEALTH"),
Shortcut_THEALTH = SliceCommander:getShortcutSetting("SliceCommander_General", "General", "THEALTH"),
Shortcut_THREAT = SliceCommander:getShortcutSetting("SliceCommander_General", "General", "THREAT"),
Shortcut_POISON = {
order = SliceCommander:getOrder(),
type = "execute",
name = string.format(L["%s Settings"], L["Poisons"]),
func = function() AceConfigDialog:SelectGroup("SliceCommander_General", "General", "POISON") end,
},
CP = {
order = SliceCommander:getOrder(),
name = SC_SPELL['CP'],
549,6 → 555,63
},
}
},
POISON = {
name = string.format(L["%s Settings"], L["Poisons"]),
type = "group",
order = SliceCommander:getOrder(),
args = {
DPIconShow = {
order = SliceCommander:getOrder(),
name = L["Show poison icon"],
desc = string.format(L["Display the %s icon when the timer left on your poison go under specified time. If you are in combat it only display the icon when it fade out."], SC_SPELL['DP']),
type = "toggle",
set = function(info,val)
SC.SET.display.DPICON = val
end,
get = function(info) return SC.SET.display.DPICON end
},
DPTimeCheck = {
order = SliceCommander:getOrder(),
name = L["Minimal time"],
desc = L["In minutes"],
type = "range",
min = 0,
max = 59,
step = 1,
bigStep = 5,
set = function(info,val)
if strmatch(val,"%d") then
SC.SET.display.DPTIME = val
else
SC.SET.display.DPTIME = 10
end
end,
get = function(info) return SC.SET.display.DPTIME end
},
DPButtonEnable = {
order = SliceCommander:getOrder(),
name = L["Enable poison button"],
desc = L["Enable poison button has no effect if poison icon is not shown. If it is enable there is two restrinction: You can't click through the area where the icon was when the icon is hide in combat and the button does not work when the icon is shown in combat."],
type = "toggle",
set = function(info,val)
SC.SET.display.DPBUT = val
end,
get = function(info) return SC.SET.display.DPBUT end
},
DPSound = {
order = SliceCommander:getOrder(),
name = string.format(L["%s Sound"], SC_SPELL['DP']),
desc = string.format(L["%s Sound. It has no effect if %s is not display."], SC_SPELL['DP'], SC_SPELL['DP']),
type = "select",
dialogControl = 'LSM30_Sound',
values = LSM:HashTable("sound"),
set = function(info,val)
SC.SET.DPSound = val
end,
get = function(info) return SC.SET.DPSound end
},
}
},
}
},
Skills = {
558,23 → 621,26
childGroups = "tree",
args = {
Shortcut = SliceCommander:getShortcutHeader(),
Shortcut_SND = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "SND"),
Shortcut_CV = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "CV"),
Shortcut_TOT = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "TOT"),
Shortcut_TOTCD = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "TOTCD"),
Shortcut_FE = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "FE"),
Shortcut_KI = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "KI"),
Shortcut_VAN = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "VAN"),
Shortcut_KICD = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "KICD"),
Shortcut_VANCD = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "VANCD"),
Shortcut_KS = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "KS"),
Shortcut_CS = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "CS"),
Shortcut_EVA = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "EVA"),
Shortcut_COS = SliceCommander:getShortcutSetting("SliceCommander_General", "Skills", "COS"),
SND = SliceCommander:getSpellSettings('SND'),
CV = SliceCommander:getSpellCDSettings('CV'),
TOT = {
name = SC_SPELL['TOT'],
TOTCD = {
name = SC_SPELL['TOTCD'] .. ' CD',
type = "group",
order = SliceCommander:getOrder(),
args = {
TOTShow = SliceCommander:getShowSetting('TOT'),
TOTPos = SliceCommander:getPosSetting('TOT'),
TOTColor = SliceCommander:getColorSetting('TOT'),
TOTShow = SliceCommander:getShowSetting('TOTCD'),
TOTPos = SliceCommander:getPosSetting('TOTCD'),
TOTColor = SliceCommander:getColorSetting('TOTCD'),
TOTTarget = {
order = SliceCommander:getOrder(),
name = L["Taget name"],
589,14 → 655,14
}
},
FE = SliceCommander:getSpellCDSettings('FE'),
KI = {
KICD = {
order = SliceCommander:getOrder(),
name = SC_SPELL['KI'],
name = SC_SPELL['KICD'],
type = "group",
args = {
ShowKI = SliceCommander:getShowSetting('KI'),
ColorKI = SliceCommander:getColorSetting('KI'),
PosKI = SliceCommander:getPosSetting('KI'),
ShowKI = SliceCommander:getShowSetting('KICD'),
ColorKI = SliceCommander:getColorSetting('KICD'),
PosKI = SliceCommander:getPosSetting('KICD'),
HeaderKINotification = {
order = SliceCommander:getOrder(),
name = L["Warning settings"],
643,9 → 709,10
},
}
},
VAN = SliceCommander:getCDSettings('VAN'),
VANCD = SliceCommander:getCDSettings('VANCD'),
KS = SliceCommander:getSpellCDSettings('KS'),
CS = SliceCommander:getSpellSettings('CS'),
EVA = SliceCommander:getSpellCDSettings('EVA'),
COS = SliceCommander:getSpellCDSettings('COS'),
SPR = SliceCommander:getSpellCDSettings('SPR'),
}
657,10 → 724,10
childGroups = "tree",
args = {
Shortcut = SliceCommander:getShortcutHeader(),
Shortcut_CD = SliceCommander:getShortcutSetting("SliceCommander_General", "Talents", "CD"),
Shortcut_MD = SliceCommander:getShortcutSetting("SliceCommander_General", "Talents", "MD"),
CD = SliceCommander:getCDSettings('CD'),
MD = SliceCommander:getCDSettings('MD'),
Shortcut_CD = SliceCommander:getShortcutSetting("SliceCommander_General", "Talents", "CDCD"),
Shortcut_MD = SliceCommander:getShortcutSetting("SliceCommander_General", "Talents", "MDCD"),
CD = SliceCommander:getCDSettings('CDCD'),
MD = SliceCommander:getCDSettings('MDCD'),
}
},
TalentsPVP = {
670,20 → 737,9
childGroups = "tree",
args = {
Shortcut = SliceCommander:getShortcutHeader(),
Shortcut_DFA = SliceCommander:getShortcutSetting("SliceCommander_General", "TalentsPVP", "DFA"),
DFA = SliceCommander:getCDSettings('DFA')
Shortcut_DFA = SliceCommander:getShortcutSetting("SliceCommander_General", "TalentsPVP", "DFACD"),
DFA = SliceCommander:getCDSettings('DFACD')
}
},
AzeriteEssence = {
order = SliceCommander:getOrder(),
name = L["Azerite Essence"],
type = "group",
childGroups = "tree",
args = {
Shortcut = SliceCommander:getShortcutHeader(),
Shortcut_ESSECD = SliceCommander:getShortcutSetting("SliceCommander_General", "AzeriteEssence", "ESSECD"),
ESSECD = SliceCommander:getCDSettings('ESSECD')
}
}
}
}
719,56 → 775,6
type = "group",
order = SliceCommander:getOrder(),
args = {
DPIconShow = {
order = SliceCommander:getOrder(),
name = L["Show poison icon"],
desc = string.format(L["Display the %s icon when the timer left on your poison go under specified time. If you are in combat it only display the icon when it fade out."], SC_SPELL['DP']),
type = "toggle",
set = function(info,val)
SC.SET.display.DPICON = val
end,
get = function(info) return SC.SET.display.DPICON end
},
DPTimeCheck = {
order = SliceCommander:getOrder(),
name = L["Minimal time"],
desc = L["In minutes"],
type = "range",
min = 0,
max = 59,
step = 1,
bigStep = 5,
set = function(info,val)
if strmatch(val,"%d") then
SC.SET.display.DPTIME = val
else
SC.SET.display.DPTIME = 10
end
end,
get = function(info) return SC.SET.display.DPTIME end
},
DPButtonEnable = {
order = SliceCommander:getOrder(),
name = L["Enable poison button"],
desc = L["Enable poison button has no effect if poison icon is not shown. If it is enable there is two restrinction: You can't click through the area where the icon was when the icon is hide in combat and the button does not work when the icon is shown in combat."],
type = "toggle",
set = function(info,val)
SC.SET.display.DPBUT = val
end,
get = function(info) return SC.SET.display.DPBUT end
},
DPSound = {
order = SliceCommander:getOrder(),
name = string.format(L["%s Sound"], SC_SPELL['DP']),
desc = string.format(L["%s Sound. It has no effect if %s is not display."], SC_SPELL['DP'], SC_SPELL['DP']),
type = "select",
dialogControl = 'LSM30_Sound',
values = LSM:HashTable("sound"),
set = function(info,val)
SC.SET.DPSound = val
end,
get = function(info) return SC.SET.DPSound end
},
displayDescriptionChekcedSpec = {
order = SliceCommander:getOrder(),
name = L["displayDescriptionChekcedSpec"],
783,11 → 789,14
return { ['DPB'] = SC_SPELL['DPB'], ['WP'] = SC_SPELL['WP'] }
end,
set = function(info,val)
SC.OTHER['POISON']['obj'].button:SetAttribute("spell1", SC_SPELL[val])
SC.SET.poison.mh = val
local aSpec = GetSpecialization()
if aSpec == 1 then
SC.OTHER['POISON']['obj'].button:SetAttribute("spell1", SC_SPELL[val])
end
SC.SET.poison.mh[1] = val
end,
get = function(info)
return SC.SET.poison.mh
return SC.SET.poison.mh[1]
end
},
Utility = {
795,13 → 804,17
name = L["Utility poison"],
type = "select",
values = function()
return { ['CRP'] = SC_SPELL['CRP'] }
return { ['CRP'] = SC_SPELL['CRP'], ['AKP'] = SC_SPELL['AKP'] }
end,
set = function(info,val)
SC.SET.poison.oh = val
local aSpec = GetSpecialization()
if aSpec == 1 then
SC.OTHER['POISON']['obj'].button:SetAttribute("spell2", SC_SPELL[val])
end
SC.SET.poison.oh[1] = val
end,
get = function(info)
return SC.SET.poison.oh
return SC.SET.poison.oh[1]
end
},
}
821,14 → 834,12
Shortcut_ENV = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Skills", "ENV"),
Shortcut_SS = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Skills", "SS"),
Shortcut_DP = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Skills", "DP"),
Shortcut_EVA = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Skills", "EVA"),
RUP = SliceCommander:getSpellSettings('RUP'),
GAR = SliceCommander:getSpellCDSettings('GAR'),
VEN = SliceCommander:getSpellCDSettings('VEN'),
ENV = SliceCommander:getSpellSettings('ENV'),
SS = SliceCommander:getSpellSettings('SS'),
SS = SliceCommander:getSpellCDSettings('SS'),
DP = SliceCommander:getSpellSettings('DP'),
EVA = SliceCommander:getSpellCDSettings('EVA'),
}
},
Talents = {
838,14 → 849,14
childGroups = "tree",
args = {
Shortcut = SliceCommander:getShortcutHeader(),
Shortcut_EX = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Talents", "EX"),
Shortcut_EXCD = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Talents", "EXCD"),
Shortcut_TXB = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Talents", "TXB"),
Shortcut_EP = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Talents", "EP"),
Shortcut_SUB = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Talents", "SUB"),
Shortcut_BLS = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Talents", "BLS"),
Shortcut_MA = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Talents", "MA"),
Shortcut_CT = SliceCommander:getShortcutSetting("SliceCommander_Assassination", "Talents", "CT"),
EX = SliceCommander:getCDSettings('EX'),
EXCD = SliceCommander:getCDSettings('EXCD'),
TXB = SliceCommander:getSpellCDSettings('TXB'),
EP = SliceCommander:getSpellSettings('EP'),
SUB = SliceCommander:getSpellSettings('SUB'),
876,7 → 887,63
name = L["Energy bar Settings"],
func = function() AceConfigDialog:SelectGroup("SliceCommander_Outlaw", "General", "EnergySetting") end,
},
Shortcut_POISON = {
order = SliceCommander:getOrder(),
type = "execute",
name = string.format(L["%s Settings"], L["Poisons"]),
func = function() AceConfigDialog:SelectGroup("SliceCommander_Outlaw", "General", "POISON") end,
},
EnergySetting = SliceCommander:getEnergyMarkerSettings(2),
POISON = {
name = string.format(L["%s Settings"], L["Poisons"]),
type = "group",
order = SliceCommander:getOrder(),
args = {
displayDescriptionChekcedSpec = {
order = SliceCommander:getOrder(),
name = L["displayDescriptionChekcedSpec"],
fontSize = "medium",
type = "description"
},
Lethal = {
order = SliceCommander:getOrder(),
name = L["Lethal poison"],
type = "select",
values = function()
return { ['IP'] = SC_SPELL['IP'], ['WP'] = SC_SPELL['WP'] }
end,
set = function(info,val)
local aSpec = GetSpecialization()
if aSpec == 2 then
SC.OTHER['POISON']['obj'].button:SetAttribute("spell1", SC_SPELL[val])
end
SC.OTHER['POISON']['obj'].button:SetAttribute("spell1", SC_SPELL[val])
SC.SET.poison.mh[2] = val
end,
get = function(info)
return SC.SET.poison.mh[2]
end
},
Utility = {
order = SliceCommander:getOrder(),
name = L["Utility poison"],
type = "select",
values = function()
return { ['CRP'] = SC_SPELL['CRP'], ['AKP'] = SC_SPELL['AKP'] }
end,
set = function(info,val)
local aSpec = GetSpecialization()
if aSpec == 2 then
SC.OTHER['POISON']['obj'].button:SetAttribute("spell2", SC_SPELL[val])
end
SC.SET.poison.oh[2] = val
end,
get = function(info)
return SC.SET.poison.oh[2]
end
},
}
},
}
},
Skills = {
890,15 → 957,14
Shortcut_BF = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Skills", "BF"),
Shortcut_AR = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Skills", "AR"),
Shortcut_BE = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Skills", "BE"),
Shortcut_GH = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Skills", "GH"),
Shortcut_GHCD = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Skills", "GHCD"),
Shortcut_OP = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Skills", "OP"),
Shortcut_RIP = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Skills", "RIP"),
RB = {
name = SC_SPELL['RB'],
type = "group",
order = SliceCommander:getOrder(),
args = SliceCommander_TableMerge(
SliceCommander:getSpellSettings('RB').args,
SliceCommander:getSpellCDSettings('RB').args,
{
replaceName = {
order = SliceCommander:getOrder(),
928,6 → 994,7
BFPos = SliceCommander:getPosSetting('BF'),
BFColor = SliceCommander:getColorSetting('BF'),
BFCDShow = SliceCommander:getShowSetting('BFCD'),
BFCDPos = SliceCommander:getPosSetting('BFCD'),
BFCDColor = SliceCommander:getColorSetting('BFCD'),
BFIcon = {
order = SliceCommander:getOrder(),
951,6 → 1018,7
ARPos = SliceCommander:getPosSetting('AR'),
ARColor = SliceCommander:getColorSetting('AR'),
ARCDShow = SliceCommander:getShowSetting('ARCD'),
ARCDPos = SliceCommander:getPosSetting('ARCD'),
ARCDColor = SliceCommander:getColorSetting('ARCD'),
ARMarioMod = {
order = SliceCommander:getOrder(),
975,9 → 1043,8
}
},
BE = SliceCommander:getSpellCDSettings('BE'),
GH = SliceCommander:getCDSettings('GH'),
GHCD = SliceCommander:getCDSettings('GHCD'),
OP = SliceCommander:getSpellSettings('OP'),
RIP = SliceCommander:getSpellCDSettings('RIP'),
GG = SliceCommander:getSpellCDSettings('GG'),
}
},
989,17 → 1056,17
args = {
Shortcut = SliceCommander:getShortcutHeader(),
Shortcut_AC = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Talents", "AC"),
Shortcut_SND = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Talents", "SND"),
Shortcut_GS = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Talents", "GS"),
Shortcut_KSP = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Talents", "KSP"),
Shortcut_KSPCD = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Talents", "KSPCD"),
Shortcut_LD = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Talents", "LD"),
Shortcut_BR = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Talents", "BR"),
Shortcut_BRCD = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Talents", "BRCD"),
Shortcut_CDB = SliceCommander:getShortcutSetting("SliceCommander_Outlaw", "Talents", "CDB"),
AC = SliceCommander:getSpellSettings('AC'),
SND = SliceCommander:getSpellSettings('SND'),
GS = SliceCommander:getSpellCDSettings('GS'),
KSP = SliceCommander:getCDSettings('KSP'),
KSPCD = SliceCommander:getCDSettings('KSPCD'),
LD = SliceCommander:getSpellSettings('LD'),
BR = SliceCommander:getSpellCDSettings('BR'),
BRCD = SliceCommander:getCDSettings('BRCD'),
CDB = SliceCommander:getSpellCDSettings('CDB'),
}
}
}
1027,7 → 1094,62
name = L["Energy bar Settings"],
func = function() AceConfigDialog:SelectGroup("SliceCommander_Sublety", "General", "EnergySetting") end,
},
Shortcut_POISON = {
order = SliceCommander:getOrder(),
type = "execute",
name = string.format(L["%s Settings"], L["Poisons"]),
func = function() AceConfigDialog:SelectGroup("SliceCommander_Sublety", "General", "POISON") end,
},
EnergySetting = SliceCommander:getEnergyMarkerSettings(3),
POISON = {
name = string.format(L["%s Settings"], L["Poisons"]),
type = "group",
order = SliceCommander:getOrder(),
args = {
displayDescriptionChekcedSpec = {
order = SliceCommander:getOrder(),
name = L["displayDescriptionChekcedSpec"],
fontSize = "medium",
type = "description"
},
Lethal = {
order = SliceCommander:getOrder(),
name = L["Lethal poison"],
type = "select",
values = function()
return { ['IP'] = SC_SPELL['IP'], ['WP'] = SC_SPELL['WP'] }
end,
set = function(info,val)
local aSpec = GetSpecialization()
if aSpec == 3 then
SC.OTHER['POISON']['obj'].button:SetAttribute("spell1", SC_SPELL[val])
end
SC.SET.poison.mh[3] = val
end,
get = function(info)
return SC.SET.poison.mh[3]
end
},
Utility = {
order = SliceCommander:getOrder(),
name = L["Utility poison"],
type = "select",
values = function()
return { ['CRP'] = SC_SPELL['CRP'], ['AKP'] = SC_SPELL['AKP'] }
end,
set = function(info,val)
local aSpec = GetSpecialization()
if aSpec == 3 then
SC.OTHER['POISON']['obj'].button:SetAttribute("spell2", SC_SPELL[val])
end
SC.SET.poison.oh[3] = val
end,
get = function(info)
return SC.SET.poison.oh[3]
end
},
}
},
}
},
Skills = {
1042,13 → 1164,11
Shortcut_NB = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Skills", "NB"),
Shortcut_SOD = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Skills", "SOD"),
Shortcut_SS = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Skills", "SS"),
Shortcut_EVA = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Skills", "EVA"),
SD = SliceCommander:getSpellCDSettings('SD'),
SB = SliceCommander:getSpellCDSettings('SB'),
NB = SliceCommander:getSpellSettings('NB'),
SOD = SliceCommander:getSpellCDSettings('SOD'),
SS = SliceCommander:getSpellCDSettings('SS'),
EVA = SliceCommander:getSpellCDSettings('EVA'),
}
},
Talents = {
1061,12 → 1181,12
Shortcut_AC = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Talents", "AC"),
Shortcut_SUB = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Talents", "SUB"),
Shortcut_SHT = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Talents", "SHT"),
Shortcut_STH = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Talents", "STH"),
Shortcut_STH = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Talents", "FW"),
Shortcut_STHCD = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Talents", "STHCD"),
Shortcut_FW = SliceCommander:getShortcutSetting("SliceCommander_Sublety", "Talents", "FW"),
AC = SliceCommander:getSpellSettings('AC'),
SUB = SliceCommander:getSpellSettings('SUB'),
SHT = SliceCommander:getSpellCDSettings('SHT'),
STH = SliceCommander:getCDSettings('STH'),
STHCD = SliceCommander:getCDSettings('STHCD'),
FW = SliceCommander:getSpellSettings('FW'),
}
}
1135,10 → 1255,8
childGroups = "tree",
args = {
Shortcut = SliceCommander:getShortcutHeader(),
Shortcut_CDB = SliceCommander:getShortcutSetting("SliceCommander_Complementary", "Outlaw", "CDB"),
Shortcut_BB = SliceCommander:getShortcutSetting("SliceCommander_Complementary", "Outlaw", "BB"),
Shortcut_GSWW = SliceCommander:getShortcutSetting("SliceCommander_Complementary", "Outlaw", "GSWW"),
CDB = SliceCommander:getSpellCDSettings('CDB'),
BB = {
order = SliceCommander:getOrder(),
name = SC_SPELL['BB'],
1170,6 → 1288,17
Shortcut_GB = SliceCommander:getShortcutSetting("SliceCommander_Complementary", "Subtlety", "GB"),
GB = SliceCommander:getSpellCDSettings('GB'),
}
},
AzeriteEssence = {
order = SliceCommander:getOrder(),
name = L["Azerite Essence"],
type = "group",
childGroups = "tree",
args = {
Shortcut = SliceCommander:getShortcutHeader(),
Shortcut_ESSECD = SliceCommander:getShortcutSetting("SliceCommander_Complementary", "AzeriteEssence", "ESSECD"),
ESSECD = SliceCommander:getCDSettings('ESSECD')
}
}
}
}