From e8fb913aa162d98626c40e5145f1b77d1a947eb3 Mon Sep 17 00:00:00 2001 From: Steven Jackson Date: Sun, 11 Jan 2015 14:56:19 -0600 Subject: [PATCH] 5.4.178 --- .../artwork/Unitframe/Class/ROGUE-ANTICIPATION.blp | Bin 23060 -> 23060 bytes Interface/AddOns/SVUI/data/filterdefaults.lua | 16 ++--- .../Plugins/oUF_HunterTraps/oUF_HunterTraps.lua | 10 ++- .../Plugins/oUF_HyperCombo/oUF_HyperCombo.lua | 6 +- .../oUF_WarlockShards/oUF_WarlockShards.lua | 1 + Interface/AddOns/SVUI/packages/tip/SVTip.lua | 8 +-- .../AddOns/SVUI/packages/unit/elements/auras.lua | 32 +++++---- .../AddOns/SVUI/packages/unit/resources/mage.lua | 9 +-- .../AddOns/SVUI/packages/unit/resources/rogue.lua | 37 ++++------ .../SVUI/packages/unit/resources/warlock.lua | 6 ++ Interface/AddOns/SVUI/setup/installer.lua | 3 - .../SVUI_ConfigOMatic/components/filters/aura.lua | 44 ++++++------ .../SVUI_ConfigOMatic/components/filters/core.lua | 75 +++++++++----------- .../AddOns/SVUI_ConfigOMatic/components/tip.lua | 4 +- 14 files changed, 122 insertions(+), 129 deletions(-) diff --git a/Interface/AddOns/SVUI/assets/artwork/Unitframe/Class/ROGUE-ANTICIPATION.blp b/Interface/AddOns/SVUI/assets/artwork/Unitframe/Class/ROGUE-ANTICIPATION.blp index 8d6bdaca25ec4cd26f553de1cc0d94f971f18828..3c849a7b55642800dfa5ce66406d891b24a2d654 100644 GIT binary patch literal 23060 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 YObd%>+G;?LJZ+l;jYz1+y?XwC06x$ohX4Qo diff --git a/Interface/AddOns/SVUI/data/filterdefaults.lua b/Interface/AddOns/SVUI/data/filterdefaults.lua index f5d53e5..18df59d 100644 --- a/Interface/AddOns/SVUI/data/filterdefaults.lua +++ b/Interface/AddOns/SVUI/data/filterdefaults.lua @@ -24,12 +24,7 @@ local filterClass = playerClass or "NONE"; local function safename(id) local n = GetSpellInfo(id) if not n then - if type(id) == "string" then - n = id - else - --SV:Debugger('|cffFF9900SVUI:|r Spell not found: (#ID) '..id) - n = "Voodoo Doll"; - end + return false end return n end @@ -65,10 +60,11 @@ for k, x in pairs(FilterIDs) do local src = {}; for id in x:gmatch("([^,]+)") do if(id) then - local saved - local n = safename(id); - saved = {['enable'] = true, ['priority'] = 0, ['isDefault'] = true} - src[n] = saved + local spellID = tonumber(id); + local n = safename(spellID); + if(n) then + src[id] = {['enable'] = true, ['id'] = spellID, ['priority'] = 0, ['isDefault'] = true} + end end end SV.filterdefaults[k] = src diff --git a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_HunterTraps/oUF_HunterTraps.lua b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_HunterTraps/oUF_HunterTraps.lua index efda33a..8ed4287 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_HunterTraps/oUF_HunterTraps.lua +++ b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_HunterTraps/oUF_HunterTraps.lua @@ -16,6 +16,8 @@ local _, ns = ... local oUF = oUF or ns.oUF if not oUF then return end +local ENHANCED_TRAPS_ID = 157751; +local ENHANCED_TRAPS = IsSpellKnown(ENHANCED_TRAPS_ID); local FIRE_TRAP = GetSpellInfo(13813); local FROST_TRAP = GetSpellInfo(1499); local ICE_TRAP = GetSpellInfo(13809); @@ -81,6 +83,7 @@ end local Update = function(self, event, ...) local bar = self.HunterTraps if(event and event == "SPELLS_CHANGED") then + ENHANCED_TRAPS = IsSpellKnown(ENHANCED_TRAPS_ID); local ice_icon = select(3, GetSpellInfo(13809)); if(ice_icon == SNAKE_ICON) then TRAP_IDS[3] = SNAKE_TRAP @@ -96,15 +99,18 @@ local Update = function(self, event, ...) if(bar.PreUpdate) then bar:PreUpdate(event) end - local name, start, duration, isReady; + local name, start, duration, isReady, enable; local unit, _, _, _, spellID = ... if(unit and (self.unit ~= unit)) then return end if(spellID) then name = GetSpellInfo(spellID) - start, isReady = GetSpellCooldown(spellID) + start, isReady, enable = GetSpellCooldown(spellID) duration = GetSpellBaseCooldown(spellID) + if((duration and duration > 0) and ENHANCED_TRAPS) then + duration = duration * 0.5 + end end if bar:IsShown() then diff --git a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_HyperCombo/oUF_HyperCombo.lua b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_HyperCombo/oUF_HyperCombo.lua index cad70cc..9468c11 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_HyperCombo/oUF_HyperCombo.lua +++ b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_HyperCombo/oUF_HyperCombo.lua @@ -109,10 +109,10 @@ local Update = function(self, event, unit) if(guile) then local insight = UpdateGuile() if(insight and insight > 0) then - guile.Text:SetText(insight) - guile.Text:SetTextColor(unpack(TextColors[insight])) + guile:SetText(insight) + guile:SetTextColor(unpack(TextColors[insight])) else - guile.Text:SetText("") + guile:SetText("") end end diff --git a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_WarlockShards/oUF_WarlockShards.lua b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_WarlockShards/oUF_WarlockShards.lua index bd70c67..194871f 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_WarlockShards/oUF_WarlockShards.lua +++ b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_WarlockShards/oUF_WarlockShards.lua @@ -113,6 +113,7 @@ local Update = function(self, event, unit, powerType) fury.bar:SetStatusBarColor(unpack(colors)) fury.bar:SetMinMaxValues(0, maxPower) fury.bar:SetValue(power) + fury.bar.text:SetText(power) if(fury.bar.Update) then local filled = (percent > 80) and 1 or 0 diff --git a/Interface/AddOns/SVUI/packages/tip/SVTip.lua b/Interface/AddOns/SVUI/packages/tip/SVTip.lua index e371cc8..ef0587f 100644 --- a/Interface/AddOns/SVUI/packages/tip/SVTip.lua +++ b/Interface/AddOns/SVUI/packages/tip/SVTip.lua @@ -532,7 +532,7 @@ local _hook_GameTooltip_OnTooltipSetItem = function(self) self:AddLine(" ") local left = "|cFFCA3C3CSpell ID: |r" local itemID = ("|cFFCA3C3C%s|r %s"):format(left, itemLink):match(":(%w+)") - self:AddDoubleLine("|cFFCA3C3CSpell ID: |r", itemID) + self:AddLine(("|cFFCA3C3C%s# %d|r"):format(ID, itemID)) end if(self.InjectedDouble[8]) then @@ -579,10 +579,10 @@ local _hook_OnSetUnitAura = function(self, unit, index, filter) local color = RAID_CLASS_COLORS[class] if color then self.SuperBorder:SetMaskBorderColor(color.r, color.g, color.b) - self:AddDoubleLine(("|cFFCA3C3C%s|r %d"):format(ID, spellID), format("|c%s%s|r", color.colorStr, name)) + self:AddDoubleLine(("|cFFCA3C3C%s# %d|r"):format(ID, spellID), format("|c%s%s|r", color.colorStr, name)) end else - self:AddLine(("|cFFCA3C3C%s|r %d"):format(ID, spellID)) + self:AddLine(("|cFFCA3C3C%s# %d|r"):format(ID, spellID)) end self:Show() end @@ -611,7 +611,7 @@ end local _hook_GameTooltip_OnTooltipSetSpell = function(self) local ref = select(3, self:GetSpell()) if not ref then return end - local text = ("|cFFCA3C3C%s|r%d"):format(ID, ref) + local text = ("|cFFCA3C3C%s# %d|r"):format(ID, ref) local max = self:NumLines() local check; for i = 1, max do diff --git a/Interface/AddOns/SVUI/packages/unit/elements/auras.lua b/Interface/AddOns/SVUI/packages/unit/elements/auras.lua index 8038216..01267fb 100644 --- a/Interface/AddOns/SVUI/packages/unit/elements/auras.lua +++ b/Interface/AddOns/SVUI/packages/unit/elements/auras.lua @@ -397,9 +397,11 @@ local CommonAuraFilter = function(self, unit, icon, auraName, _, _, _, debuffTyp icon.owner = caster; icon.name = auraName; - if(auraDB.filterWhiteList and (not SV.filters.WhiteList[auraName])) then + local filterKey = tostring(spellID) + + if(auraDB.filterWhiteList and (not SV.filters.WhiteList[filterKey])) then return false; - elseif(SV.filters.BlackList[auraName] and SV.filters.BlackList[auraName].enable) then + elseif(SV.filters.BlackList[filterKey] and SV.filters.BlackList[filterKey].enable) then return false; else if(auraDB.filterPlayer and (not isPlayer)) then @@ -421,7 +423,7 @@ local CommonAuraFilter = function(self, unit, icon, auraName, _, _, _, debuffTyp local active = auraDB.useFilter if(active and SV.filters[active]) then local spellDB = SV.filters[active]; - if(spellDB[auraName] and spellDB[auraName].enable) then + if(spellDB[filterKey] and spellDB[filterKey].enable) then return false end end @@ -438,9 +440,11 @@ local CommonBarFilter = function(self, unit, auraName, _, _, _, debuffType, dura local isPlayer = caster == "player" or caster == "vehicle"; local isEnemy = UnitIsEnemy("player", unit); - if(auraDB.filterWhiteList and (not SV.filters.WhiteList[auraName])) then + local filterKey = tostring(spellID) + + if(auraDB.filterWhiteList and (not SV.filters.WhiteList[filterKey])) then return false; - elseif(SV.filters.BlackList[auraName] and SV.filters.BlackList[auraName].enable) then + elseif(SV.filters.BlackList[filterKey] and SV.filters.BlackList[filterKey].enable) then return false else if(auraDB.filterPlayer and (not isPlayer)) then @@ -462,7 +466,7 @@ local CommonBarFilter = function(self, unit, auraName, _, _, _, debuffType, dura local active = auraDB.useFilter if(active and SV.filters[active]) then local spellDB = SV.filters[active]; - if(spellDB[auraName] and spellDB[auraName].enable) then + if(spellDB[filterKey] and spellDB[filterKey].enable) then return false end end @@ -498,11 +502,13 @@ local DetailedAuraFilter = function(self, unit, icon, auraName, _, _, _, debuffT icon.owner = caster; icon.name = auraName; + local filterKey = tostring(spellID) + if(filter_test(auraDB.filterAll, isEnemy)) then return false - elseif(filter_test(auraDB.filterWhiteList, isEnemy) and (not SV.filters.WhiteList[auraName])) then + elseif(filter_test(auraDB.filterWhiteList, isEnemy) and (not SV.filters.WhiteList[filterKey])) then return false; - elseif(SV.filters.BlackList[auraName] and SV.filters.BlackList[auraName].enable) then + elseif(SV.filters.BlackList[filterKey] and SV.filters.BlackList[filterKey].enable) then return false else if(filter_test(auraDB.filterPlayer, isEnemy) and (not isPlayer)) then @@ -522,7 +528,7 @@ local DetailedAuraFilter = function(self, unit, icon, auraName, _, _, _, debuffT local active = auraDB.useFilter if(active and SV.filters[active]) then local spellDB = SV.filters[active]; - if(spellDB[auraName] and spellDB[auraName].enable) then + if(spellDB[filterKey] and spellDB[filterKey].enable) then return false end end @@ -539,11 +545,13 @@ local DetailedBarFilter = function(self, unit, auraName, _, _, _, debuffType, du local isPlayer = caster == "player" or caster == "vehicle"; local isEnemy = UnitIsEnemy("player", unit); + local filterKey = tostring(spellID) + if(filter_test(auraDB.filterAll, isEnemy)) then return false - elseif(filter_test(auraDB.filterWhiteList, isEnemy) and (not SV.filters.WhiteList[auraName])) then + elseif(filter_test(auraDB.filterWhiteList, isEnemy) and (not SV.filters.WhiteList[filterKey])) then return false; - elseif(SV.filters.BlackList[auraName] and SV.filters.BlackList[auraName].enable) then + elseif(SV.filters.BlackList[filterKey] and SV.filters.BlackList[filterKey].enable) then return false else if(filter_test(auraDB.filterPlayer, isEnemy) and (not isPlayer)) then @@ -561,7 +569,7 @@ local DetailedBarFilter = function(self, unit, auraName, _, _, _, debuffType, du local active = auraDB.useFilter if(active and SV.filters[active]) then local spellDB = SV.filters[active]; - if(spellDB[auraName] and spellDB[auraName].enable) then + if(spellDB[filterKey] and spellDB[filterKey].enable) then return false end end diff --git a/Interface/AddOns/SVUI/packages/unit/resources/mage.lua b/Interface/AddOns/SVUI/packages/unit/resources/mage.lua index ee89507..eb79627 100644 --- a/Interface/AddOns/SVUI/packages/unit/resources/mage.lua +++ b/Interface/AddOns/SVUI/packages/unit/resources/mage.lua @@ -122,9 +122,6 @@ end function MOD:CreateClassBar(playerFrame) local max = 5 - local spec = GetSpecialization() - local color = specColors[spec] - local effectName = specEffects[spec] local bar = CreateFrame("Frame",nil,playerFrame) bar:SetFrameLevel(playerFrame.TextGrip:GetFrameLevel() + 30) @@ -133,7 +130,7 @@ function MOD:CreateClassBar(playerFrame) bar[i]:SetStatusBarTexture(CHARGE_ICON) bar[i]:GetStatusBarTexture():SetHorizTile(false) bar[i]:SetOrientation("VERTICAL") - bar[i]:SetStatusBarColor(unpack(color)) + bar[i]:SetStatusBarColor(0.95, 1, 1, 0.75) bar[i].noupdate = true; bar[i].bg = bar[i]:CreateTexture(nil, "BACKGROUND") @@ -141,14 +138,14 @@ function MOD:CreateClassBar(playerFrame) bar[i].bg:SetTexture(ORB_BG); bar[i].bg:SetVertexColor(0.25,0.5,0.5) - SV.SpecialFX:SetFXFrame(bar[i], effectName) + SV.SpecialFX:SetFXFrame(bar[i], "arcane") --bar[i].FX:SetFrameLevel(0) bar[i].FX:SetAlpha(0.5) end local bgFrame = CreateFrame("Frame", nil, bar) bgFrame:SetAllPointsIn(bar) - SV.SpecialFX:SetFXFrame(bgFrame, effectName) + SV.SpecialFX:SetFXFrame(bgFrame, "arcane") local bgTexture = bgFrame:CreateTexture(nil, "BACKGROUND") bgTexture:SetAllPoints(bgFrame) diff --git a/Interface/AddOns/SVUI/packages/unit/resources/rogue.lua b/Interface/AddOns/SVUI/packages/unit/resources/rogue.lua index 9a60c2c..a837dc2 100644 --- a/Interface/AddOns/SVUI/packages/unit/resources/rogue.lua +++ b/Interface/AddOns/SVUI/packages/unit/resources/rogue.lua @@ -89,18 +89,12 @@ local Reposition = function(self) if i==1 then points[i]:SetPoint("LEFT", points) else - points[i]:SetPointToScale("LEFT", points[i - 1], "RIGHT", -2, 0) + points[i]:SetPointToScale("LEFT", points[i - 1], "RIGHT", -8, 0) end end if(bar.Guile) then - bar.Guile:ClearAllPoints() - bar.Guile:SetHeight(size) - bar.Guile:SetWidth(textwidth) - bar.Guile:SetPoint("LEFT", points, "RIGHT", -2, 0) - bar.Guile.Text:ClearAllPoints() - bar.Guile.Text:SetAllPoints(bar.Guile) - bar.Guile.Text:SetFont(TRACKER_FONT, size, 'OUTLINE') + bar.Guile:SetFont(TRACKER_FONT, height, 'OUTLINE') end end --[[ @@ -114,7 +108,7 @@ function MOD:CreateClassBar(playerFrame) local coords local bar = CreateFrame("Frame", nil, playerFrame) - bar:SetFrameStrata("DIALOG") + bar:SetFrameLevel(playerFrame.TextGrip:GetFrameLevel() + 30) bar.Combo = CreateFrame("Frame",nil,bar) for i = 1, max do @@ -123,15 +117,16 @@ function MOD:CreateClassBar(playerFrame) SV.SpecialFX:SetFXFrame(cpoint, "default") - local icon = cpoint:CreateTexture(nil,"BACKGROUND",nil,-7) - icon:SetPoint("TOPLEFT", cpoint, "TOPLEFT", -10, 8) - icon:SetPoint("BOTTOMRIGHT", cpoint, "BOTTOMRIGHT", 4, -4) - icon:SetTexture(ICON_BG) - icon:SetBlendMode("BLEND") - cpoint.Icon = icon + -- local icon = cpoint:CreateTexture(nil,"BACKGROUND",nil,-7) + -- icon:SetPoint("TOPLEFT", cpoint, "TOPLEFT", -10, 8) + -- icon:SetPoint("BOTTOMRIGHT", cpoint, "BOTTOMRIGHT", 4, -4) + -- icon:SetTexture(ICON_BG) + -- icon:SetBlendMode("BLEND") + -- cpoint.Icon = icon local anti = CreateFrame('Frame',nil,bar.Combo) anti:SetAllPointsOut(cpoint, 8, 8) + anti:SetFrameLevel(bar.Combo:GetFrameLevel() - 2) local antiicon = anti:CreateTexture(nil,"BACKGROUND",nil,-1) antiicon:SetPoint("TOPLEFT", anti, "TOPLEFT", -8, 0) antiicon:SetPoint("BOTTOMRIGHT", anti, "BOTTOMRIGHT", 6, -2) @@ -142,14 +137,10 @@ function MOD:CreateClassBar(playerFrame) bar.Combo[i] = cpoint end - local guile = CreateFrame('Frame',nil,bar) - guile:SetFrameStrata("DIALOG") - guile:SetSizeToScale(30,30) - - guile.Text = guile:CreateFontString(nil,'OVERLAY') - guile.Text:SetAllPoints(guile) - guile.Text:SetFont(TRACKER_FONT,30,'OUTLINE') - guile.Text:SetTextColor(1,1,1) + local guile = bar:CreateFontString(nil, 'OVERLAY', nil, 7) + guile:SetPoint("RIGHT", bar, "LEFT", 0, -3) + guile:SetFont(TRACKER_FONT, 30, 'OUTLINE') + guile:SetTextColor(1,1,1) bar.Guile = guile; diff --git a/Interface/AddOns/SVUI/packages/unit/resources/warlock.lua b/Interface/AddOns/SVUI/packages/unit/resources/warlock.lua index dbc3705..3443215 100644 --- a/Interface/AddOns/SVUI/packages/unit/resources/warlock.lua +++ b/Interface/AddOns/SVUI/packages/unit/resources/warlock.lua @@ -249,6 +249,12 @@ function MOD:CreateClassBar(playerFrame) demonBar:SetAllPointsIn(bgFrame) demonBar:SetOrientation("HORIZONTAL") demonBar:SetStatusBarTexture(SV.Media.bar.glow) + demonBar.text = demonBar:CreateFontString(nil, "OVERLAY") + demonBar.text:SetPoint("LEFT") + demonBar.text:SetFontObject(SVUI_Font_Unit_Small) + demonBar.text:SetJustifyH('LEFT') + demonBar.text:SetTextColor(1,1,0) + demonBar.text:SetText("0") SV.SpecialFX:SetFXFrame(demonBar, "overlay_demonbar", true) demonBar.FX:SetScript("OnShow", EffectModel_OnShow) diff --git a/Interface/AddOns/SVUI/setup/installer.lua b/Interface/AddOns/SVUI/setup/installer.lua index 0444153..e910330 100644 --- a/Interface/AddOns/SVUI/setup/installer.lua +++ b/Interface/AddOns/SVUI/setup/installer.lua @@ -160,7 +160,6 @@ local function UFMoveBottomQuadrant(toggle) anchors.SVUI_PlayerCastbar_MOVE = "BOTTOMSVUIParentBOTTOM-278122" anchors.SVUI_Target_MOVE = "BOTTOMSVUIParentBOTTOM278182" anchors.SVUI_TargetCastbar_MOVE = "BOTTOMSVUIParentBOTTOM278122" - --anchors.SVUI_Pet_MOVE = "BOTTOMSVUIParentBOTTOM0181" anchors.SVUI_TargetTarget_MOVE = "BOTTOMSVUIParentBOTTOM0182" anchors.SVUI_Focus_MOVE = "BOTTOMSVUIParentBOTTOM310432" anchors.SVUI_ThreatBar_MOVE = "BOTTOMRIGHTSVUIParentBOTTOMRIGHT-495182" @@ -169,7 +168,6 @@ local function UFMoveBottomQuadrant(toggle) anchors.SVUI_PlayerCastbar_MOVE = "BOTTOMSVUIParentBOTTOM-278150" anchors.SVUI_Target_MOVE = "BOTTOMSVUIParentBOTTOM278210" anchors.SVUI_TargetCastbar_MOVE = "BOTTOMSVUIParentBOTTOM278150" - --anchors.SVUI_Pet_MOVE = "BOTTOMSVUIParentBOTTOM0209" anchors.SVUI_TargetTarget_MOVE = "BOTTOMSVUIParentBOTTOM0210" anchors.SVUI_Focus_MOVE = "BOTTOMSVUIParentBOTTOM310432" anchors.SVUI_ThreatBar_MOVE = "BOTTOMRIGHTSVUIParentBOTTOMRIGHT-495210" @@ -178,7 +176,6 @@ local function UFMoveBottomQuadrant(toggle) anchors.SVUI_PlayerCastbar_MOVE = "BOTTOMSVUIParentBOTTOM-278122" anchors.SVUI_Target_MOVE = "BOTTOMSVUIParentBOTTOM278182" anchors.SVUI_TargetCastbar_MOVE = "BOTTOMSVUIParentBOTTOM278122" - --anchors.SVUI_Pet_MOVE = "BOTTOMSVUIParentBOTTOM0181" anchors.SVUI_TargetTarget_MOVE = "BOTTOMSVUIParentBOTTOM0182" anchors.SVUI_Focus_MOVE = "BOTTOMSVUIParentBOTTOM310432" anchors.SVUI_ThreatBar_MOVE = "BOTTOMRIGHTSVUIParentBOTTOMRIGHT-495182" diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/filters/aura.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/filters/aura.lua index 2279c26..17b33df 100644 --- a/Interface/AddOns/SVUI_ConfigOMatic/components/filters/aura.lua +++ b/Interface/AddOns/SVUI_ConfigOMatic/components/filters/aura.lua @@ -55,7 +55,7 @@ local GetSpellInfo = _G.GetSpellInfo; local collectgarbage = _G.collectgarbage; ns.FilterOptionGroups['_NEW'] = function(filterType) - return function(selectedSpell) + return function() local RESULT, FILTER if(SV.filters.Custom[filterType]) then FILTER = SV.filters.Custom[filterType] @@ -82,11 +82,8 @@ ns.FilterOptionGroups['_NEW'] = function(filterType) SV:AddonMessage(L["Value must be a number"]) elseif(not GetSpellInfo(spellID)) then SV:AddonMessage(L["Not valid spell id"]) - elseif(not FILTER[spellID]) then - FILTER[spellID] = { - ["enable"] = true, - ["priority"] = 0 - } + elseif(not FILTER[value]) then + FILTER[value] = {['enable'] = true, ['id'] = spellID, ['priority'] = 0} end ns:SetFilterOptions(filterType) MOD:RefreshUnitFrames() @@ -106,8 +103,9 @@ ns.FilterOptionGroups['_NEW'] = function(filterType) end, values = function() wipe(tempFilterTable) - for g in pairs(FILTER) do - tempFilterTable[g] = g + for id, filterData in pairs(FILTER) do + local auraName = GetSpellInfo(filterData.id) + tempFilterTable[id] = auraName end return tempFilterTable end, @@ -151,19 +149,23 @@ ns.FilterSpellGroups['_NEW'] = function(filterType) args = {} }; - for aura, filterData in pairs(FILTER) do - RESULT.args[aura] = { - name = aura, - type = "toggle", - get = function() - return FILTER[aura].enable - end, - set = function(key, value) - FILTER[aura].enable = value; - MOD:RefreshUnitFrames() - ns:SetFilterOptions() - end - }; + for id, filterData in pairs(FILTER) do + local auraName = GetSpellInfo(filterData.id) + --print(auraName) + if(auraName) then + RESULT.args[auraName] = { + name = auraName, + type = "toggle", + get = function() + return FILTER[id].enable + end, + set = function(key, value) + FILTER[id].enable = value; + MOD:RefreshUnitFrames() + ns:SetFilterOptions(filterType) + end + }; + end end end diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/filters/core.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/filters/core.lua index d402453..ce54d3f 100644 --- a/Interface/AddOns/SVUI_ConfigOMatic/components/filters/core.lua +++ b/Interface/AddOns/SVUI_ConfigOMatic/components/filters/core.lua @@ -36,6 +36,7 @@ local getmetatable = _G.getmetatable; local setmetatable = _G.setmetatable; local tinsert = _G.tinsert; local table = _G.table; +local wipe = _G.wipe; --[[ TABLE METHODS ]]-- local tsort = table.sort; --[[ @@ -53,33 +54,39 @@ local _, ns = ...; ns.FilterOptionGroups = {}; ns.FilterSpellGroups = {}; -local tempFilterTable = {}; +local allFilterTable, userFilterTable = {},{}; local CURRENT_FILTER_TYPE = NONE; -local publicFilters = { - ["BlackList"] = "Blacklisted Auras", - ["WhiteList"] = "Whitelisted Auras", - ["Raid"] = "Consolidated Auras", - ["AuraBars"] = "Aura Bars", - ["Player"] = "Player Auras", - ["BuffWatch"] = "(AuraWatch) Player Auras", - ["PetBuffWatch"] = "(AuraWatch) Pet Auras", -}; - -local templateFilters = { - [""] = NONE, - ["BlackList"] = "BlackList", - ["WhiteList"] = "WhiteList", - ["Raid"] = "Raid", - ["AuraBars"] = "AuraBars", - ["Player"] = "Player", - ["BuffWatch"] = "BuffWatch", - ["PetBuffWatch"] = "PetBuffWatch", -}; local NONE = _G.NONE; local GetSpellInfo = _G.GetSpellInfo; local collectgarbage = _G.collectgarbage; +local function GetUserFilterList() + wipe(userFilterTable); + + userFilterTable[""] = NONE; + for filter in pairs(SV.filters.Custom) do + userFilterTable[filter] = filter + end + return userFilterTable +end +local function GetAllFilterList() + wipe(allFilterTable); + + allFilterTable[""] = NONE; + allFilterTable["BlackList"] = "Blacklist"; + allFilterTable["WhiteList"] = "Whitelist"; + allFilterTable["Raid"] = "Consolidated"; + allFilterTable["AuraBars"] = "AuraBars"; + allFilterTable["Player"] = "Player"; + allFilterTable["BuffWatch"] = "AuraWatch"; + allFilterTable["PetBuffWatch"] = "PetAuraWatch"; + for filter in pairs(SV.filters.Custom) do + allFilterTable[filter] = filter + end + return allFilterTable +end + SV.Options.args.filters = { type = "group", name = L["Aura Filters"], @@ -97,7 +104,8 @@ SV.Options.args.filters = { elseif(SV.filters.Custom[value]) then SV:AddonMessage(L["Filter already exists"]) else - SV.filters.Custom[value] = {} + SV.filters.Custom[value] = {}; + ns:SetFilterOptions(value); end end }, @@ -111,14 +119,7 @@ SV.Options.args.filters = { SV.filters.Custom[value] = nil; SV.Options.args.filters.args.filterGroup = nil end, - values = function() - wipe(tempFilterTable) - tempFilterTable[""] = NONE; - for g in pairs(SV.filters.Custom) do - tempFilterTable[g] = g - end - return tempFilterTable - end + values = GetUserFilterList() }, selectFilter = { order = 3, @@ -126,19 +127,7 @@ SV.Options.args.filters = { name = L["Select Filter"], get = function(key) return CURRENT_FILTER_TYPE end, set = function(key, value) ns:SetFilterOptions(value) end, - values = function() - wipe(tempFilterTable) - tempFilterTable = templateFilters; - for g in pairs(SV.filters) do - if(publicFilters[g]) then - tempFilterTable[g] = publicFilters[g] - end - end - for g in pairs(SV.filters.Custom) do - tempFilterTable[g] = g - end - return tempFilterTable - end + values = GetAllFilterList() } } }; diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/tip.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/tip.lua index 31ef726..53780d4 100644 --- a/Interface/AddOns/SVUI_ConfigOMatic/components/tip.lua +++ b/Interface/AddOns/SVUI_ConfigOMatic/components/tip.lua @@ -43,7 +43,7 @@ SV.Options.args.SVTip = { name = MOD.TitleID, childGroups = "tab", get = function(a)return SV.db.SVTip[a[#a]] end, - set = function(a, b)SV.db.SVTip[a[#a]] = b end, + set = function(a, b) MOD:ChangeDBVar(b,a[#a]); end, args = { commonGroup = { order = 1, @@ -105,7 +105,7 @@ SV.Options.args.SVTip = { name = L["Spell/Item IDs"], desc = L["Display the spell or item ID when mousing over a spell or item tooltip."], get = function(a)return SV.db.SVTip.spellID end, - set = function(a, b)SV.db.SVTip.spellID = b;SV:StaticPopup_Show("RL_CLIENT") end, + set = function(a, b)SV.db.SVTip.spellID = b; SV:StaticPopup_Show("RL_CLIENT") end, } } -- 1.7.9.5