WoWInterface SVN SliceCommander

Compare Revisions

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

Rev 240 → Rev 241

Settings.lua
15,21 → 15,21
local selected = {}
local cd
for k, v in pairs(SC.SET.Pos) do
if string.sub(string.upper(k), -2) == 'CD' then
cd = ' CD'
if _G['SC'].BARS[string.upper(k)] == nil or _G['SC'].BARS[string.upper(k)]['name'] == nil then
_G['SC'].SET.Pos[string.upper(k)] = nil--Remove spell
_G['SC'].BARS[string.upper(k)] = nil
else
cd = ''
end
if not selected[v] then
if _G['SC'].BARS[string.upper(k)] == nil or _G['SC'].BARS[string.upper(k)]['name'] == nil then
_G['SC'].SET.Pos[string.upper(k)] = nil--Remove removed spell
_G['SC'].BARS[string.upper(k)] = nil
if string.sub(string.upper(k), -2) == 'CD' then
cd = ' CD'
else
selected[v] = _G['SC'].BARS[string.upper(k)]['name'] .. cd
cd = ''
end
 
else
selected[v] = selected[v] .. ', ' .. _G['SC'].BARS[string.upper(k)]['name'] .. cd
if not selected[v] then
selected[v] = _G['SC'].BARS[string.upper(k)]['name'] .. cd
 
else
selected[v] = selected[v] .. ', ' .. _G['SC'].BARS[string.upper(k)]['name'] .. cd
end
end
end
for key = -30, 30, 1 do
133,6 → 133,19
}
end
 
function SliceCommander:getFlashSetting(spell)
return {
order = SliceCommander:getOrder(),
name = L["Flash when ready"],
desc = L["The bar will keep flashing when it should be use."],
type = "toggle",
set = function(info,val)
SC.SET.flash[spell] = val
end,
get = function(info) return SC.SET.flash[spell] end
}
end
 
function SliceCommander:getHeaderSetting(spell)
return {
order = SliceCommander:getOrder(),
152,9 → 165,15
 
function SliceCommander:getSpellSettings(spell)
local args = {
header = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Spell'],
},
Show = SliceCommander:getShowSetting(spell),
Color = SliceCommander:getColorSetting(spell),
Pos = SliceCommander:getPosSetting(spell),
Flash = SliceCommander:getFlashSetting(spell)
}
if SC.SET.SpellSound ~= nil and SC.SET.SpellSound then
args.SpellSound = SliceCommander:getSpellSound(spell)
169,9 → 188,15
 
function SliceCommander:getCDSettings(spell)
local args = {
headerCD = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Cooldown'],
},
Show = SliceCommander:getShowSetting(spell),
Color = SliceCommander:getColorSetting(spell),
Pos = SliceCommander:getPosSetting(spell),
CDFlash = SliceCommander:getFlashSetting(spell)
}
if SC.SET.SpellSound ~= nil and SC.SET.SpellSound then
args.CDSpellSound = SliceCommander:getCDSpellSound(spell)
198,12 → 223,24
 
function SliceCommander:getSpellCDSettings(spell)
local args = {
header = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Spell'],
},
Show = SliceCommander:getShowSetting(spell),
Color = SliceCommander:getColorSetting(spell),
Pos = SliceCommander:getPosSetting(spell),
Flash = SliceCommander:getFlashSetting(spell),
headerCD = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Cooldown'],
},
CDShow = SliceCommander:getShowSetting(spell..'CD'),
CDColor = SliceCommander:getColorSetting(spell..'CD'),
CDPos = SliceCommander:getPosSetting(spell..'CD'),
CDFlash = SliceCommander:getFlashSetting(spell..'CD')
}
if SC.SET.SpellSound ~= nil and SC.SET.SpellSound then
args.SpellSound = SliceCommander:getSpellSound(spell)
644,9 → 681,15
type = "group",
order = SliceCommander:getOrder(),
args = {
headerCD = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Cooldown'],
},
TOTShow = SliceCommander:getShowSetting('TOTCD'),
TOTColor = SliceCommander:getColorSetting('TOTCD'),
TOTPos = SliceCommander:getPosSetting('TOTCD'),
TOTColor = SliceCommander:getColorSetting('TOTCD'),
Flash = SliceCommander:getFlashSetting('TOTCD'),
TOTTarget = {
order = SliceCommander:getOrder(),
name = L["Taget name"],
669,6 → 712,7
ShowKI = SliceCommander:getShowSetting('KICD'),
ColorKI = SliceCommander:getColorSetting('KICD'),
PosKI = SliceCommander:getPosSetting('KICD'),
Flash = SliceCommander:getFlashSetting('KICD'),
HeaderKINotification = {
order = SliceCommander:getOrder(),
name = L["Warning settings"],
972,6 → 1016,11
args = SliceCommander_TableMerge(
SliceCommander:getSpellCDSettings('RB').args,
{
headerSpecial = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Special settings'],
},
replaceName = {
order = SliceCommander:getOrder(),
name = L["Replace spell name with each following spell text"],
996,23 → 1045,34
name = SC_SPELL['BF'],
type = "group",
args = {
header = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Spell'],
},
BFShow = SliceCommander:getShowSetting('BF'),
BFColor = SliceCommander:getColorSetting('BF'),
BFPos = SliceCommander:getPosSetting('BF'),
BFColor = SliceCommander:getColorSetting('BF'),
BFCDShow = SliceCommander:getShowSetting('BFCD'),
BFCDPos = SliceCommander:getPosSetting('BFCD'),
BFCDColor = SliceCommander:getColorSetting('BFCD'),
Flash = SliceCommander:getFlashSetting('BF'),
BFIcon = {
order = SliceCommander:getOrder(),
name = string.format(L["Show %s icon"], SC_SPELL['BF']),
desc = string.format(L["Display the %s icon when enbale"], SC_SPELL['BF']),
width = "full",
type = "toggle",
set = function(info,val)
SC.SET.display.BFICON = val
end,
get = function(info) return SC.SET.display.BFICON end
}
},
headerCD = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Cooldown'],
},
BFCDShow = SliceCommander:getShowSetting('BFCD'),
BFCDColor = SliceCommander:getColorSetting('BFCD'),
BFCDPos = SliceCommander:getPosSetting('BFCD'),
FlashCD = SliceCommander:getFlashSetting('BFCD')
}
},
AR = {
1020,12 → 1080,15
name = SC_SPELL['AR'],
type = "group",
args = {
header = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Spell'],
},
ARShow = SliceCommander:getShowSetting('AR'),
ARColor = SliceCommander:getColorSetting('AR'),
ARPos = SliceCommander:getPosSetting('AR'),
ARColor = SliceCommander:getColorSetting('AR'),
ARCDShow = SliceCommander:getShowSetting('ARCD'),
ARCDPos = SliceCommander:getPosSetting('ARCD'),
ARCDColor = SliceCommander:getColorSetting('ARCD'),
Flash = SliceCommander:getFlashSetting('AR'),
ARMarioMod = {
order = SliceCommander:getOrder(),
name = L["Enable Mario mod"],
1045,7 → 1108,16
SC.SET.ARMarioMod = val
end,
get = function(info) return SC.SET.ARMarioMod end
}
},
headerCD = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Cooldown'],
},
ARCDShow = SliceCommander:getShowSetting('ARCD'),
ARCDColor = SliceCommander:getColorSetting('ARCD'),
ARCDPos = SliceCommander:getPosSetting('ARCD'),
FlashCD = SliceCommander:getFlashSetting('ARCD')
}
},
BE = SliceCommander:getSpellCDSettings('BE'),
1219,9 → 1291,15
name = SC_SPELL['FOTD'],
type = "group",
args = {
header = {
type = "header",
order = SliceCommander:getOrder(),
name = L['Spell'],
},
Show = SliceCommander:getShowSetting('FOTD'),
Pos = SliceCommander:getPosSetting('FOTD'),
Color = SliceCommander:getColorSetting('FOTD'),
Flash = SliceCommander:getFlashSetting('FOTD'),
Icon = {--Shadow of the destroyer icon
order = SliceCommander:getOrder(),
name = string.format(L["%s icon"], SC_SPELL['SOTD']),
Config.lua
136,7 → 136,7
 
for i,v in pairs(SC.BARS) do
if i ~= "CP" then
SC.BARS[i].obj = SliceCommander:NewFrame(v.color)
SC.BARS[i].obj = SliceCommander:NewFrame(v.color, i)
end
end
 
516,6 → 516,22
end
end
 
function SliceCommander:FlashSpells(Spells)
for i, v in ipairs(Spells) do
if SC.SET.flash[v] == nil then
SC.SET.flash[v] = true
end
end
end
 
function SliceCommander:NotFlashSpells(Spells)
for i, v in ipairs(Spells) do
if SC.SET.flash[v] == nil then
SC.SET.flash[v] = false
end
end
end
 
function SliceCommander:OrderSpells(Spells)
for i, v in pairs(Spells) do
_G['SC'].orderBar = _G['SC'].orderBar+1
542,8 → 558,11
end
 
function SliceCommander:Global()
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:DisplaySpells({'CP', 'THREAT', 'SND', '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'})
 
SliceCommander:FlashSpells({'SND'})
SliceCommander:NotFlashSpells({'KSCD', 'CVCD', 'TOTCD', 'SSCD', 'CDCD', 'MDCD', 'DFACD', 'FECD', 'ESSECD', 'VANCD', 'KICD', 'COSCD', 'EVACD', 'SPRCD'})
 
_G['SC'].orderBar = _G['SC'].maxPos
_G['SC'].orderCDBar = _G['SC'].maxCDPos
552,13 → 571,16
SC.SET.Pos.CP = -1
end
 
SliceCommander:OrderSpells({'FOTD', 'CV', 'FE', 'SUB', 'AC', 'MAI', 'COS', 'EVA', 'SPR', 'SS'})
SliceCommander:OrderSpells({'SND', 'FOTD', 'CV', 'FE', 'SUB', 'AC', 'MAI', 'COS', 'EVA', 'SPR', 'SS'})
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', 'DPBUT', 'EXCD', 'KB', 'KBCD', 'BA', 'ST', 'TXB', 'TXBCD', 'BLS', 'MA', 'CT'})
SliceCommander:NotDisplaySpells({'DP'})
 
SliceCommander:FlashSpells({'VENCD', 'EXCD'})
SliceCommander:NotFlashSpells({'GARCD', 'EXCD', 'KBCD', 'TXBCD'})
 
_G['SC'].orderBar = 0
_G['SC'].orderCDBar = -1
568,19 → 590,25
end
 
function SliceCommander:Outlaw()
SliceCommander:DisplaySpells({'SND', 'RB', 'AR', 'ARCD', 'CDB', 'CDBCD', 'KSPCD', 'GS', 'GHCD', 'BE', 'BECD', 'BF', 'BFCD', 'OP', 'GSWW', 'BB', 'LD', 'GSCD', 'BRCD', 'RBCD'})
SliceCommander:DisplaySpells({'RB', 'AR', 'ARCD', 'CDB', 'CDBCD', 'KSPCD', 'GS', 'GHCD', 'BE', 'BECD', 'BF', 'BFCD', 'OP', 'GSWW', 'BB', 'LD', 'GSCD', 'BRCD', 'RBCD'})
SliceCommander:NotDisplaySpells({'BFICON', 'GG', 'GGCD'})
 
SliceCommander:FlashSpells({'ARCD', 'CDBCD', 'KSPCD', 'BECD', 'BRCD', 'RBCD'})
SliceCommander:NotFlashSpells({'GHCD', 'BFCD', 'GSCD'})
 
_G['SC'].orderBar = 0
_G['SC'].orderCDBar = -1
 
SliceCommander:OrderSpells({'SND', 'RB', 'AR', 'GS', 'OP', 'CDB', 'GSWW', 'BF', 'LD'})
SliceCommander:OrderSpells({'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', 'STHCD'})
SliceCommander:NotDisplaySpells({'FW'})
 
SliceCommander:FlashSpells({'SDCD', 'SBCD', 'SODCD'})
SliceCommander:NotFlashSpells({'GBCD', 'SHTCD', 'STHCD'})
 
_G['SC'].orderBar = 0
_G['SC'].orderCDBar = -1
666,6 → 694,9
if SC.SET == nil or SC.SET.display == nil or SC.SET.Pos == nil then
SC.SET = { display = {}, Pos = {} }
end
if SC.SET.flash == nil then
SC.SET.flash = {}
end
if _G['SC'].SET.PixelPerfect == nil then
_G['SC'].SET.PixelPerfect = true
end
Object.lua
1,6 → 1,11
function SliceCommander:NewFrame(color)
local f = CreateFrame("StatusBar", nil, UIParent, BackdropTemplateMixin and "BackdropTemplate")
local Smoother = LibStub("LibSmoothStatusBar-1.0")
local Glower = LibStub("LibCustomGlow-1.0")
 
function SliceCommander:NewFrame(color, name)
local f = CreateFrame("StatusBar", 'SliceCommander_bar_' .. name, UIParent, BackdropTemplateMixin and "BackdropTemplate")
--Mixin(f, "Region")
Smoother:SmoothBar(f)
 
f:SetStatusBarTexture(SliceCommander:BarTexture())
f:SetValue(0)
f:SetDefaultBackdrop()
28,7 → 33,39
f:SetStatusBarColor(unpack(color))
f.border = SliceCommander:tukSkin(f, false)
f.iconBorder = SliceCommander:tukSkin(f, f.icon)
 
local animPlaying = false
 
--Animation (Blink)
f.animFade = f:CreateAnimationGroup()
f.animFade:SetLooping('BOUNCE')
 
local animOut = f.animFade:CreateAnimation("Alpha")
animOut:SetFromAlpha(1)
animOut:SetToAlpha(.3)
animOut:SetDuration(.4)
animOut:SetSmoothing("OUT")
animOut:SetOrder(1)
 
--Animation (Glow)
--local animFrame = CreateFrame("Frame", nil, UIParent, BackdropTemplateMixin and "BackdropTemplate")
--animFrame:SetAllPoints(f)
f.anim = {
Play = function()
animPlaying = true
Glower.PixelGlow_Start(f)
f.animFade:Play()
end,
Stop = function()
animPlaying = false
Glower.PixelGlow_Stop(f)
f.animFade:Stop()
end,
IsPlaying = function()
return animPlaying
end
}
 
return f
 
end
72,6 → 109,9
 
function SliceCommander:ThinBar(point, relativePoint, x, y)
local f = CreateFrame("StatusBar", nil, UIParent, BackdropTemplateMixin and "BackdropTemplate")
 
Smoother:SmoothBar(f)
 
f:SCHeight(2)
f:SetFrameLevel(2)
f:SetStatusBarTexture(SliceCommander:BarTexture())
108,31 → 148,32
end
 
function SliceCommander:CreateEnergyFrame()
CreateFrame('StatusBar', 'VTimerEnergy', UIParent, BackdropTemplateMixin and "BackdropTemplate")
VTimerEnergy:SCSize(200, 20)
VTimerEnergy:SetMinMaxValues(0,100)
VTimerEnergy:SCPoint('CENTER', SliceCommanderFrame, 'CENTER', 0, 0)
VTimerEnergy:SetFrameLevel(1)
VTimerEnergy:SetMinMaxValues(0,UnitPowerMax("player", Enum.PowerType.Energy))
VTimerEnergy:SetDefaultBackdrop()
VTimerEnergy:SetBackdropBorderColor(unpack(SC.V.wColor))
VTimerEnergy:SetBackdropColor(unpack({.1,.1,.1,.7}))
VTimerEnergy:SetStatusBarTexture(SliceCommander:BarTexture())
VTimerEnergy:SetFrameStrata("MEDIUM")
VTimerEnergy:SetFrameLevel(1)
VTimerEnergy:SetStatusBarColor(unpack(SC.SET.energyColor))
VTimerEnergy.border = SliceCommander:tukSkin(VTimerEnergy, false)
local f = CreateFrame('StatusBar', 'VTimerEnergy', UIParent, BackdropTemplateMixin and "BackdropTemplate")
Smoother:SmoothBar(f)
f:SCSize(200, 20)
f:SetMinMaxValues(0,100)
f:SCPoint('CENTER', SliceCommanderFrame, 'CENTER', 0, 0)
f:SetFrameLevel(1)
f:SetMinMaxValues(0,UnitPowerMax("player", Enum.PowerType.Energy))
f:SetDefaultBackdrop()
f:SetBackdropBorderColor(unpack(SC.V.wColor))
f:SetBackdropColor(unpack({.1,.1,.1,.7}))
f:SetStatusBarTexture(SliceCommander:BarTexture())
f:SetFrameStrata("MEDIUM")
f:SetFrameLevel(1)
f:SetStatusBarColor(unpack(SC.SET.energyColor))
f.border = SliceCommander:tukSkin(f, false)
if SC.SET.HideEnergy then
VTimerEnergy:Hide()
f:Hide()
else
VTimerEnergy:Show()
f:Show()
end
 
VTimerEnergy:CreateFontString('VTimerEnergyTxt', 'OVERLAY', GameFontWhite)
VTimerEnergyTxt:SetJustifyH("RIGHT")
VTimerEnergyTxt:SCSize(49, 20)
VTimerEnergyTxt:SCPoint('RIGHT', VTimerEnergy, 'RIGHT', -5, 0)
VTimerEnergyTxt:SetFontObject(SliceCommander:NewFont("VTimerFont", 17, 0.7, 1, 1, 1))
f.txt = f:CreateFontString('VTimerEnergyTxt', 'OVERLAY', GameFontWhite)
f.txt:SetJustifyH("RIGHT")
f.txt:SCSize(49, 20)
f.txt:SCPoint('RIGHT', VTimerEnergy, 'RIGHT', -5, 0)
f.txt:SetFontObject(SliceCommander:NewFont("VTimerFont", 17, 0.7, 1, 1, 1))
end
 
function SliceCommander:CreateComboText()