diff --git a/Interface/AddOns/SVUI/SVUI.toc b/Interface/AddOns/SVUI/SVUI.toc index c6a7b15..371f165 100644 --- a/Interface/AddOns/SVUI/SVUI.toc +++ b/Interface/AddOns/SVUI/SVUI.toc @@ -1,6 +1,6 @@ ## Interface: 50400 ## Author: Munglunch -## Version: 4.08 +## Version: 4.081 ## Title: |cffFF9900SVUI|r ## Notes: Supervillain UI [|cff9911FFCore Framework|r]. ## SavedVariables: SVUI_Global diff --git a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ActionPanel/oUF_ActionPanel.toc b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ActionPanel/oUF_ActionPanel.toc index f58eee1..789651c 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ActionPanel/oUF_ActionPanel.toc +++ b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ActionPanel/oUF_ActionPanel.toc @@ -2,7 +2,7 @@ ## Title: oUF ActionPanel ## Notes: Adds a backing to all unit frames that provides many utilities. ## Author: Munglunch -## Version: 1.00 +## Version: 1.081 ## X-Category: oUF ## Dependencies: oUF diff --git a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_Afflicted/oUF_Afflicted.toc b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_Afflicted/oUF_Afflicted.toc index 16f281c..8d88588 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_Afflicted/oUF_Afflicted.toc +++ b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_Afflicted/oUF_Afflicted.toc @@ -2,7 +2,7 @@ ## Title: oUF Afflicted ## Notes: Adds Custom Debuff Highlighting to oUF. ## Author: Munglunch -## Version: 1.00 +## Version: 1.081 ## X-Category: oUF ## Dependencies: oUF diff --git a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.lua b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.lua index 661687e..55456bd 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.lua +++ b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.lua @@ -1,9 +1,9 @@ +if select(2, UnitClass('player')) ~= "MAGE" then return end + local _, ns = ... local oUF = oUF or ns.oUF if not oUF then return end -if select(2, UnitClass('player')) ~= "MAGE" then return end - local function UpdateBar(self, elapsed) if not self.expirationTime then return end self.elapsed = (self.elapsed or 0) + elapsed diff --git a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.toc b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.toc index 5c17b0f..b859c16 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.toc +++ b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.toc @@ -2,7 +2,7 @@ ## Title: oUF Arcane Charge ## Notes: Adds support for arcane charge indicators to oUF. ## Author: Munglunch -## Version: 1.0.0 +## Version: 1.081 ## Dependencies: oUF oUF_ArcaneCharge.lua \ No newline at end of file diff --git a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_Combatant/oUF_Combatant.toc b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_Combatant/oUF_Combatant.toc index a14926f..98aa9fc 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_Combatant/oUF_Combatant.toc +++ b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_Combatant/oUF_Combatant.toc @@ -2,7 +2,7 @@ ## Title: oUF Combatant ## Notes: Adds PvP trinket status and spec icons to oUF frames. ## Author: Munglunch -## Version: 1.00 +## Version: 1.0810 ## X-Category: oUF ## Dependencies: oUF diff --git a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_GPS/oUF_GPS.toc b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_GPS/oUF_GPS.toc index d8d5171..cdca787 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_GPS/oUF_GPS.toc +++ b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_GPS/oUF_GPS.toc @@ -1,7 +1,7 @@ ## Interface: 50001 ## Title: oUF GPS ## Notes: Adds GPS arrow to frames. -## Author: Omega1970 +## Author: Omega1970, Munglunch ## Version: 1.00 ## X-Category: oUF ## Dependencies: oUF diff --git a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_HyperCombo/oUF_HyperCombo.lua b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_HyperCombo/oUF_HyperCombo.lua index 1411b50..f7a0bb8 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_HyperCombo/oUF_HyperCombo.lua +++ b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_HyperCombo/oUF_HyperCombo.lua @@ -1,9 +1,11 @@ +local class = select(2, UnitClass("player")); +if(class ~= "ROGUE" and class ~= "DRUID") then return end + local parent, ns = ... local oUF = ns.oUF local GetComboPoints = GetComboPoints local MAX_COMBO_POINTS = MAX_COMBO_POINTS -local class = select(2, UnitClass("player")); local GUILE1 = GetSpellInfo(84745) local GUILE2 = GetSpellInfo(84746) local GUILE3 = GetSpellInfo(84747) @@ -63,20 +65,20 @@ local Update = function(self, event, unit) end end - if(tracker) then - if(current > 0) then - tracker.Text:SetText(current) - tracker.Text:SetTextColor(unpack(TextColors[current])) - elseif(bar.LAST_COMBO_POINTS > 0) then - tracker.Text:SetText(bar.LAST_COMBO_POINTS) - tracker.Text:SetTextColor(0.5,0.5,1) - else - tracker.Text:SetText("0") - tracker.Text:SetTextColor(0.3,0.3,0.3) + if(class == "ROGUE") then + if(tracker) then + if(current > 0) then + tracker.Text:SetText(current) + tracker.Text:SetTextColor(unpack(TextColors[current])) + elseif(bar.LAST_COMBO_POINTS > 0) then + tracker.Text:SetText(bar.LAST_COMBO_POINTS) + tracker.Text:SetTextColor(0.5,0.5,1) + else + tracker.Text:SetText("0") + tracker.Text:SetTextColor(0.3,0.3,0.3) + end end - end - if(class == "ROGUE") then local anticipation = bar.Anticipation; if(anticipation) then local anti = select(4, UnitBuff("player", ANTICIPATION)) -- Anticipation stacks @@ -97,6 +99,23 @@ local Update = function(self, event, unit) guile.Text:SetText("") end end + else + if(tracker) then + if(GetShapeshiftForm() == 3) then + if(current > 0) then + tracker.Text:SetText(current) + tracker.Text:SetTextColor(unpack(TextColors[current])) + elseif(bar.LAST_COMBO_POINTS > 0) then + tracker.Text:SetText(bar.LAST_COMBO_POINTS) + tracker.Text:SetTextColor(0.5,0.5,1) + else + tracker.Text:SetText("0") + tracker.Text:SetTextColor(0.3,0.3,0.3) + end + else + tracker.Text:SetText("") + end + end end if(bar.PostUpdate) then @@ -108,7 +127,7 @@ local Path = function(self, ...) return (self.HyperCombo.Override or Update) (self, ...) end -local RogueTracker = function(self, ...) +local Tracker = function(self, ...) local bar = self.HyperCombo if(UnitHasVehicleUI'player') then bar.LAST_COMBO_POINTS = GetComboPoints('vehicle', 'target') @@ -118,33 +137,6 @@ local RogueTracker = function(self, ...) return Path(self, ...) end ---index = GetShapeshiftForm() - -local DruidPath = function(self, ...) - local bar = self.HyperCombo - if(GetShapeshiftForm() == 3) then - bar:Show() - return (bar.Override or Update) (self, ...) - else - bar:Hide() - end -end - -local DruidTracker = function(self, ...) - local bar = self.HyperCombo - if(GetShapeshiftForm() == 3) then - bar:Show() - if(UnitHasVehicleUI'player') then - bar.LAST_COMBO_POINTS = GetComboPoints('vehicle', 'target') - else - bar.LAST_COMBO_POINTS = GetComboPoints('player', 'target') - end - return DruidPath(self, ...) - else - bar:Hide() - end -end - local ForceUpdate = function(element) return Path(element.__owner, 'ForceUpdate', element.__owner.unit) end @@ -157,15 +149,9 @@ local Enable = function(self) bar.EXISTING_COMBO_POINTS = 0 bar.LAST_COMBO_POINTS = 0 - if(class == "DRUID") then - self:RegisterEvent('UNIT_COMBO_POINTS', DruidTracker, true) - self:RegisterEvent('PLAYER_TARGET_CHANGED', DruidPath, true) - self:RegisterEvent('UNIT_AURA', DruidPath, true) - else - self:RegisterEvent('UNIT_COMBO_POINTS', RogueTracker, true) - self:RegisterEvent('PLAYER_TARGET_CHANGED', Path, true) - self:RegisterEvent('UNIT_AURA', Path, true) - end + self:RegisterEvent('UNIT_COMBO_POINTS', Tracker, true) + self:RegisterEvent('PLAYER_TARGET_CHANGED', Path, true) + self:RegisterEvent('UNIT_AURA', Path, true) local cpoints = bar.CPoints; if(cpoints) then @@ -190,20 +176,10 @@ local Disable = function(self) cpoints[index]:Hide() end end - if(class == "DRUID") then - self:UnregisterEvent('UNIT_COMBO_POINTS', DruidTracker) - self:UnregisterEvent('PLAYER_TARGET_CHANGED', DruidPath) - self:UnregisterEvent('UNIT_AURA', DruidPath) - else - self:UnregisterEvent('UNIT_COMBO_POINTS', RogueTracker) - self:UnregisterEvent('PLAYER_TARGET_CHANGED', Path) - self:UnregisterEvent('UNIT_AURA', Path) - end + self:UnregisterEvent('UNIT_COMBO_POINTS', Tracker) + self:UnregisterEvent('PLAYER_TARGET_CHANGED', Path) + self:UnregisterEvent('UNIT_AURA', Path) end end -if(class == "DRUID") then - oUF:AddElement('HyperCombo', DruidPath, Enable, Disable) -else - oUF:AddElement('HyperCombo', Path, Enable, Disable) -end +oUF:AddElement('HyperCombo', Path, Enable, Disable) diff --git a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_TotemBars/oUF_TotemBars.lua b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_TotemBars/oUF_TotemBars.lua index 03e186e..948541b 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_TotemBars/oUF_TotemBars.lua +++ b/Interface/AddOns/SVUI/libs/oUF_Plugins/oUF_TotemBars/oUF_TotemBars.lua @@ -1,3 +1,6 @@ +local class = select(2, UnitClass('player')) +if(class ~= 'SHAMAN') then return end + local parent, ns = ... local oUF = ns.oUF @@ -8,69 +11,55 @@ oUF.colors.totems = { [AIR_TOTEM_SLOT] = { 132/255, 056/255, 231/255 } } -local priorities = STANDARD_TOTEM_PRIORITIES -if(select(2, UnitClass'player') == 'SHAMAN') then - priorities = SHAMAN_TOTEM_PRIORITIES -end - -local OnClick = function(self) - DestroyTotem(self:GetID()) -end - -local UpdateTooltip = function(self) - GameTooltip:SetTotem(self:GetID()) -end - -local OnEnter = function(self) - if(not self:IsVisible()) then return end - GameTooltip:SetOwner(self, 'ANCHOR_BOTTOMRIGHT') - self:UpdateTooltip() -end - -local OnLeave = function() - GameTooltip:Hide() -end - -local function UpdateBar(self, elapsed) - if not self.expirationTime then return end - self.elapsed = (self.elapsed or 0) + elapsed - if self.elapsed >= 0.5 then - local timeLeft = self.expirationTime - GetTime() - if timeLeft > 0 then - self:SetValue(timeLeft) +local total = 0 +local delay = 0.01 +local GetTotemInfo, SetValue, GetTime = GetTotemInfo, SetValue, GetTime +local haveTotem, name, startTime, duration, totemIcon +local priorities = SHAMAN_TOTEM_PRIORITIES or STANDARD_TOTEM_PRIORITIES + +local Totem_OnUpdate = function(self, elapsed) + total = total + elapsed + if total >= delay then + total = 0 + haveTotem, name, startTime, duration, totemIcon = GetTotemInfo(self.ID) + if ((GetTime() - startTime) == 0) or (duration == 0) then + self:SetValue(0) else - self:SetScript("OnUpdate", nil) + self:SetValue(1 - ((GetTime() - startTime) / duration)) end - end + end end -local UpdateTotem = function(self, event, slot) - if(slot > MAX_TOTEMS) then return end +local UpdateTotem = function(self, slot) local totems = self.TotemBars - + if(slot > MAX_TOTEMS or not priorities[slot]) then return end local totem = totems[priorities[slot]] - if(totem) then - local haveTotem, name, start, duration, icon = GetTotemInfo(slot) - local timeLeft = (start + duration) - GetTime() - totem:SetMinMaxValues(0,duration) - - if(timeLeft > 0) then - totem.expirationTime = (start + duration) - totem:SetValue(timeLeft) - totem:SetScript('OnUpdate', UpdateBar) + if not totem then return end + + haveTotem, name, startTime, duration, totemIcon = GetTotemInfo(slot) + totem:SetValue(0) + totem.ID = slot + + if(haveTotem) then + if(duration > 0) then + totem:SetValue(1 - ((GetTime() - startTime) / duration)) + totem:SetScript("OnUpdate", Totem_OnUpdate) else + totem:SetScript("OnUpdate",nil) totem:SetValue(0) - totem:SetScript('OnUpdate', nil) - end + end + else + totem:SetValue(0) end end local Update = function(self, event) local totems = self.TotemBars + if(totems.PreUpdate) then totems:PreUpdate() end for i = 1, MAX_TOTEMS do - UpdateTotem(self, event, i) + UpdateTotem(self, i) end if(totems.PostUpdate) then @@ -90,6 +79,8 @@ local Enable = function(self) local totems = self.TotemBars if(totems) then + self:RegisterEvent('PLAYER_TOTEM_UPDATE', Path, true) + totems.__owner = self totems.__map = { unpack(priorities) } totems.ForceUpdate = ForceUpdate @@ -97,30 +88,15 @@ local Enable = function(self) for i = 1, MAX_TOTEMS do local totem = totems[i] totem:SetID(priorities[i]) - - if(totem:HasScript'OnClick') then - totem:SetScript('OnClick', OnClick) - end - - if(totem:IsMouseEnabled()) then - totem:SetScript('OnEnter', OnEnter) - totem:SetScript('OnLeave', OnLeave) - - if(not totem.UpdateTooltip) then - totem.UpdateTooltip = UpdateTooltip - end - end end - self:RegisterEvent('PLAYER_TOTEM_UPDATE', Path, true) - TotemFrame.Show = TotemFrame.Hide TotemFrame:Hide() - TotemFrame:UnregisterEvent"PLAYER_TOTEM_UPDATE" - TotemFrame:UnregisterEvent"PLAYER_ENTERING_WORLD" - TotemFrame:UnregisterEvent"UPDATE_SHAPESHIFT_FORM" - TotemFrame:UnregisterEvent"PLAYER_TALENT_UPDATE" + TotemFrame:UnregisterEvent("PLAYER_TOTEM_UPDATE") + TotemFrame:UnregisterEvent("PLAYER_ENTERING_WORLD") + TotemFrame:UnregisterEvent("UPDATE_SHAPESHIFT_FORM") + TotemFrame:UnregisterEvent("PLAYER_TALENT_UPDATE") return true end @@ -134,13 +110,13 @@ local Disable = function(self) TotemFrame.Show = nil TotemFrame:Show() - TotemFrame:RegisterEvent"PLAYER_TOTEM_UPDATE" - TotemFrame:RegisterEvent"PLAYER_ENTERING_WORLD" - TotemFrame:RegisterEvent"UPDATE_SHAPESHIFT_FORM" - TotemFrame:RegisterEvent"PLAYER_TALENT_UPDATE" + TotemFrame:RegisterEvent("PLAYER_TOTEM_UPDATE") + TotemFrame:RegisterEvent("PLAYER_ENTERING_WORLD") + TotemFrame:RegisterEvent("UPDATE_SHAPESHIFT_FORM") + TotemFrame:RegisterEvent("PLAYER_TALENT_UPDATE") self:UnregisterEvent('PLAYER_TOTEM_UPDATE', Path) end end - + oUF:AddElement("TotemBars", Path, Enable, Disable) diff --git a/Interface/AddOns/SVUI/packages/stats/SVStats.lua b/Interface/AddOns/SVUI/packages/stats/SVStats.lua index 0901c80..320fd19 100644 --- a/Interface/AddOns/SVUI/packages/stats/SVStats.lua +++ b/Interface/AddOns/SVUI/packages/stats/SVStats.lua @@ -53,7 +53,7 @@ LOCAL VARIABLES ]]-- local playerName = UnitName("player"); local playerRealm = GetRealmName(); -local hexString = "|cffFFFFFF"; +local hexString = "FFFFFF"; local myName = UnitName("player"); local myClass = select(2,UnitClass("player")); local classColor = RAID_CLASS_COLORS[myClass]; @@ -541,7 +541,7 @@ do end local BGStatColorUpdate = function() - BGStatString = join("", "%s: ", hexString, "%s|r") + BGStatString = join("", "%s: |cff", hexString, "%s|r") if BGStatPrev ~= nil then BG_OnUpdate(BGStatPrev) end @@ -559,7 +559,7 @@ function MOD:ReLoad() end function MOD:Load() - hexString = SuperVillain:HexColor("highlight") or "|cffFFFFFF" + hexString = SuperVillain:HexColor("highlight") or "FFFFFF" SVUI_Global["Accountant"] = SVUI_Global["Accountant"] or {}; SVUI_Global["Accountant"][playerRealm] = SVUI_Global["Accountant"][playerRealm] or {}; SVUI_Global["Accountant"][playerRealm]["gold"] = SVUI_Global["Accountant"][playerRealm]["gold"] or {}; diff --git a/Interface/AddOns/SVUI/packages/stats/stats/bags.lua b/Interface/AddOns/SVUI/packages/stats/stats/bags.lua index 979272f..9156da3 100644 --- a/Interface/AddOns/SVUI/packages/stats/stats/bags.lua +++ b/Interface/AddOns/SVUI/packages/stats/stats/bags.lua @@ -57,8 +57,8 @@ BAG STATS ########################################################## ]]-- local StatEvents = {"PLAYER_ENTERING_WORLD", "BAG_UPDATE"}; - -local bags_text = ""; +local hexColor = "FFFFFF" +local bags_text = "%s|cff%s%d / %d|r"; local currentObject; local function bags_events(this, e, ...) @@ -69,7 +69,7 @@ local function bags_events(this, e, ...) g + GetContainerNumSlots(i) end; h = g - f; - this.text:SetFormattedText(bags_text, L["Bags"]..": ", h, g) + this.text:SetFormattedText(bags_text, L["Bags"]..": ", hexColor, h, g) end; local function bags_click() @@ -92,10 +92,8 @@ local function bags_focus(this) end; local BagsColorUpdate = function() - local r = SuperVillain:HexColor("highlight"); - local s, t, u = unpack(SuperVillain.Media.color.highlight) - bags_text = join("", "%s", r, "%d / %d|r") - if currentObject ~= nil then + hexColor = SuperVillain:HexColor("highlight") + if currentObject ~= nil then bags_events(currentObject) end end; diff --git a/Interface/AddOns/SVUI/packages/stats/stats/cta.lua b/Interface/AddOns/SVUI/packages/stats/stats/cta.lua index 3d3a6a9..e4f46c2 100644 --- a/Interface/AddOns/SVUI/packages/stats/stats/cta.lua +++ b/Interface/AddOns/SVUI/packages/stats/stats/cta.lua @@ -58,7 +58,7 @@ CALL TO ARMS STATS ]]-- local StatEvents = {"PLAYER_ENTERING_WORLD", "LFG_UPDATE_RANDOM_INFO"}; -local tooltipString = BATTLEGROUND_HOLIDAY..": N/A" +local tooltipString = ("%s: N/A"):format(BATTLEGROUND_HOLIDAY) local currentObject; local function formatCTAtext(tanks, heals, dps) @@ -149,7 +149,7 @@ end; local CTAColorUpdate = function() local hexColor = SuperVillain:HexColor("highlight"); - tooltipString = BATTLEGROUND_HOLIDAY..": "..hexColor.."N/A|r" + tooltipString = ("%s: |cff%sN/A|r"):format(BATTLEGROUND_HOLIDAY, hexColor) if currentObject ~= nil then CTA_OnEvent(currentObject) end diff --git a/Interface/AddOns/SVUI/packages/stats/stats/dps.lua b/Interface/AddOns/SVUI/packages/stats/stats/dps.lua index 5087b02..4a2c430 100644 --- a/Interface/AddOns/SVUI/packages/stats/stats/dps.lua +++ b/Interface/AddOns/SVUI/packages/stats/stats/dps.lua @@ -47,7 +47,8 @@ local combatTime = 0 local timeStamp = 0 local lastSegment = 0 local lastPanel -local displayString = ''; +local hexColor = "FFFFFF" +local displayString = "%s: |cff%s%.1f|r"; local function Reset() timeStamp = 0 @@ -63,7 +64,7 @@ local function GetDPS(self) else DPS = (DMGTotal) / (combatTime) end - self.text:SetFormattedText(displayString, L["DPS"]..': ', DPS) + self.text:SetFormattedText(displayString, L["DPS"], hexColor, DPS) end local function DPS_OnClick(self) @@ -110,9 +111,7 @@ local function DPS_OnEvent(self, event, ...) end local DPSColorUpdate = function() - local hexColor = SuperVillain:HexColor("highlight"); - displayString = join("", "%s", hexColor, "%.1f|r") - + hexColor = SuperVillain:HexColor("highlight") if lastPanel ~= nil then DPS_OnEvent(lastPanel) end diff --git a/Interface/AddOns/SVUI/packages/stats/stats/durability.lua b/Interface/AddOns/SVUI/packages/stats/stats/durability.lua index 43eafb7..f410471 100644 --- a/Interface/AddOns/SVUI/packages/stats/stats/durability.lua +++ b/Interface/AddOns/SVUI/packages/stats/stats/durability.lua @@ -58,7 +58,8 @@ DURABILITY STATS ]]-- local StatEvents = {"PLAYER_ENTERING_WORLD", "UPDATE_INVENTORY_DURABILITY", "MERCHANT_SHOW"}; -local durabilityText = ""; +local hexColor = "FFFFFF" +local displayString = "%s: |cff%s%d%%|r"; local overall = 0; local min, max, currentObject; local equipment = {} @@ -94,7 +95,7 @@ local function Durability_OnEvent(self, ...) end end end; - self.text:SetFormattedText(durabilityText, overall) + self.text:SetFormattedText(displayString, DURABILITY, hexColor, overall) end; local function DurabilityBar_OnEvent(self, ...) @@ -136,8 +137,7 @@ local function Durability_OnEnter(self) end; local DurColorUpdate = function() - local hexColor = SuperVillain:HexColor("highlight"); - durabilityText = join("", DURABILITY, ": ", hexColor, "%d%%|r") + hexColor = SuperVillain:HexColor("highlight") if currentObject ~= nil then Durability_OnEvent(currentObject) end diff --git a/Interface/AddOns/SVUI/packages/stats/stats/friends.lua b/Interface/AddOns/SVUI/packages/stats/stats/friends.lua index 4f818b5..8b364e4 100644 --- a/Interface/AddOns/SVUI/packages/stats/stats/friends.lua +++ b/Interface/AddOns/SVUI/packages/stats/stats/friends.lua @@ -136,7 +136,8 @@ local wowString, scString, d3String, wtcgString = BNET_CLIENT_WOW, BNET_CLIENT_ local totalOnlineString = join("", FRIENDS_LIST_ONLINE, ": %s/%s") local tthead, ttsubh, ttoff = {r=0.4, g=0.78, b=1}, {r=0.75, g=0.9, b=1}, {r=.3,g=1,b=.3} local activezone, inactivezone = {r=0.3, g=1.0, b=0.3}, {r=0.65, g=0.65, b=0.65} -local displayString = '' +local hexColor = "FFFFFF" +local displayString = "%s: |cff%s%d|r"; local statusTable = { "|cffFFFFFF[|r|cffFF0000"..L['AFK'].."|r|cffFFFFFF]|r", "|cffFFFFFF[|r|cffFF0000"..L['DND'].."|r|cffFFFFFF]|r", "" } local groupedTable = { "|cffaaaaaa*|r", "" } local friendTable, BNTable, BNTableWoW, BNTableD3, BNTableSC, BNTableWTCG = {}, {}, {}, {}, {}, {} @@ -229,8 +230,8 @@ local function OnEvent(self, event, ...) -- force update when showing tooltip dataValid = false - - self.text:SetFormattedText(displayString, L['Friends'], onlineFriends + numBNetOnline) + local amt = onlineFriends + numBNetOnline + self.text:SetFormattedText(displayString, L['Friends'], hexColor, amt) lastPanel = self end @@ -372,8 +373,7 @@ local function OnEnter(self) end local FriendsColorUpdate = function() - local updateColor = SuperVillain:HexColor("highlight"); - displayString = join("","%s: ", updateColor, "%d|r") + hexColor = SuperVillain:HexColor("highlight") if lastPanel ~= nil then OnEvent(lastPanel,'SVUI_COLOR_UPDATE') end diff --git a/Interface/AddOns/SVUI/packages/stats/stats/guild.lua b/Interface/AddOns/SVUI/packages/stats/stats/guild.lua index cf139f2..2ee7e46 100644 --- a/Interface/AddOns/SVUI/packages/stats/stats/guild.lua +++ b/Interface/AddOns/SVUI/packages/stats/stats/guild.lua @@ -50,20 +50,23 @@ local StatEvents = {"PLAYER_ENTERING_WORLD","GUILD_ROSTER_UPDATE","GUILD_XP_UPDA local updatedString = ""; local updatedString2 = ""; -local guildFormattedName = join("", GUILD, ": %d/%d"); -local guildFormattedXP = gsub(join("",SuperVillain:HexColor(0.75,0.9,1),GUILD_EXPERIENCE_CURRENT),": ",":|r |cffffffff",1); -local guildFormattedDailyXP = gsub(join("",SuperVillain:HexColor(0.75,0.9,1),GUILD_EXPERIENCE_DAILY),": ",":|r |cffffffff",1); -local guildFormattedFaction = join("",SuperVillain:HexColor(0.75,0.9,1),"%s:|r |cFFFFFFFF%s/%s (%s%%)"); -local guildFormattedOnline = join("","+ %d ",FRIENDS_LIST_ONLINE,"..."); -local guildFormattedNote = join("","|cff999999 ",LABEL_NOTE,":|r %s"); -local guildFormattedRank = join("","|cff999999 ",GUILD_RANK1_DESC,":|r %s"); -local GuildStatMembers,GuildStatXP,GuildStatMOTD={},{},""; +local patternColor = SuperVillain:HexColor(0.75,0.9,1); +local pattern1 = ("|cff%s%s"):format(patternColor, GUILD_EXPERIENCE_CURRENT); +local pattern2 = ("|cff%s%s"):format(patternColor, GUILD_EXPERIENCE_DAILY); +local guildFormattedName = "%s: %d/%d"; +local guildFormattedXP = gsub(pattern1, ": ", ":|r |cffFFFFFF", 1); +local guildFormattedDailyXP = gsub(pattern2, ": ", ":|r |cffFFFFFF", 1); +local guildFormattedFaction = join("|cff", patternColor, "%s:|r |cFFFFFFFF%s/%s (%s%%)"); +local guildFormattedOnline = join("", "+ %d ", FRIENDS_LIST_ONLINE, "..."); +local guildFormattedNote = join("", "|cff999999 ", LABEL_NOTE, ":|r %s"); +local guildFormattedRank = join("", "|cff999999 ", GUILD_RANK1_DESC, ":|r %s"); +local GuildStatMembers,GuildStatXP,GuildStatMOTD = {},{},""; local currentObject; local UnitFlagFormat = { [0] = function()return "" end, - [1] = function()return format("|cffFFFFFF[|r|cffFF0000%s|r|cffFFFFFF]|r", L["AFK"])end, - [2] = function()return format("|cffFFFFFF[|r|cffFF0000%s|r|cffFFFFFF]|r", L["DND"])end + [1] = function()return ("|cffFFFFFF[|r|cffFF0000%s|r|cffFFFFFF]|r"):format(L["AFK"]) end, + [2] = function()return ("|cffFFFFFF[|r|cffFF0000%s|r|cffFFFFFF]|r"):format(L["DND"]) end }; local MobileFlagFormat = { @@ -169,7 +172,7 @@ end; local function MenuRightClick(self, unit) GuildDatatTextRightClickMenu:Hide() - SetItemRef("player:"..unit, ("|Hplayer:%1$s|h[%1$s]|h"):format(unit), "LeftButton") + SetItemRef(("player:%s"):format(unit), ("|Hplayer:%1$s|h[%1$s]|h"):format(unit), "LeftButton") end; local function MenuLeftClick() @@ -221,7 +224,7 @@ local function Guild_OnClick(self, button) menuCountInvites = menuCountInvites + 1; grouped = ""; MenuMap[2].menuList[menuCountInvites] = { - text = format("|cff%02x%02x%02x%d|r |cff%02x%02x%02x%s|r %s", levelc.r*255, levelc.g*255, levelc.b*255, info[3], classc.r*255, classc.g*255, classc.b*255, info[1], ""), + text = ("|cff%02x%02x%02x%d|r |cff%02x%02x%02x%s|r %s"):format(levelc.r*255, levelc.g*255, levelc.b*255, info[3], classc.r*255, classc.g*255, classc.b*255, info[1], ""), arg1 = info[1], notCheckable = true, func = MenuInvite @@ -232,7 +235,7 @@ local function Guild_OnClick(self, button) grouped = "" end; MenuMap[3].menuList[menuCountWhispers] = { - text = format("|cff%02x%02x%02x%d|r |cff%02x%02x%02x%s|r %s", levelc.r*255, levelc.g*255, levelc.b*255, info[3], classc.r*255, classc.g*255, classc.b*255, info[1], grouped), + text = ("|cff%02x%02x%02x%d|r |cff%02x%02x%02x%s|r %s"):format(levelc.r*255, levelc.g*255, levelc.b*255, info[3], classc.r*255, classc.g*255, classc.b*255, info[1], grouped), arg1 = info[1], notCheckable = true, func = MenuRightClick @@ -256,19 +259,19 @@ local function Guild_OnEnter(self, _, ap) local as, at = GetGuildInfo('player') local au = GetGuildLevel() if as and at and au then - MOD.tooltip:AddDoubleLine(format("%s [%d]", as, au), format(guildFormattedName, ar, aq), 0.4, 0.78, 1, 0.4, 0.78, 1) + MOD.tooltip:AddDoubleLine(("%s [%d]"):format(as, au), guildFormattedName:format(GUILD, ar, aq), 0.4, 0.78, 1, 0.4, 0.78, 1) MOD.tooltip:AddLine(at, 0.4, 0.78, 1) end; if GuildStatMOTD ~= "" then MOD.tooltip:AddLine(' ') - MOD.tooltip:AddLine(format("%s |cffaaaaaa- |cffffffff%s", GUILD_MOTD, GuildStatMOTD), 0.75, 0.9, 1, 1) + MOD.tooltip:AddLine(("%s |cffaaaaaa- |cffffffff%s"):format(GUILD_MOTD, GuildStatMOTD), 0.75, 0.9, 1, 1) end; local av = SuperVillain:HexColor(0.75,0.9,1) if GetGuildLevel() ~= 25 then if GuildStatXP[0] then local Z, a0, a1 = unpack(GuildStatXP[0]) MOD.tooltip:AddLine(' ') - MOD.tooltip:AddLine(format(guildFormattedXP, TruncateString(Z), TruncateString(a0), a1)) + MOD.tooltip:AddLine(guildFormattedXP:format(TruncateString(Z), TruncateString(a0), a1)) end end; local _, _, standingID, barMin, barMax, barValue = GetGuildFactionInfo() @@ -276,7 +279,7 @@ local function Guild_OnEnter(self, _, ap) barMax = barMax - barMin; barValue = barValue - barMin; barMin = 0; - MOD.tooltip:AddLine(format(guildFormattedFaction, COMBAT_FACTION_CHANGE, TruncateString(barValue), TruncateString(barMax), ceil(barValue / barMax * 100))) + MOD.tooltip:AddLine(guildFormattedFaction:format(COMBAT_FACTION_CHANGE, TruncateString(barValue), TruncateString(barMax), ceil(barValue / barMax * 100))) end; local zoneColor, classColor, questColor, member, groupFormat; local counter = 0; @@ -284,7 +287,7 @@ local function Guild_OnEnter(self, _, ap) for X = 1, #GuildStatMembers do if((30 - counter) <= 1) then if((ar - 30) > 1) then - MOD.tooltip:AddLine(format(guildFormattedOnline, ar - 30), 0.75, 0.9, 1) + MOD.tooltip:AddLine(guildFormattedOnline:format(ar - 30), 0.75, 0.9, 1) end; break end; @@ -301,15 +304,15 @@ local function Guild_OnEnter(self, _, ap) groupFormat = "" end; if IsShiftKeyDown() then - MOD.tooltip:AddDoubleLine(format("%s |cff999999-|cffffffff %s", member[1], member[2]), member[4], classColor.r, classColor.g, classColor.b, zoneColor.r, zoneColor.g, zoneColor.b) + MOD.tooltip:AddDoubleLine(("%s |cff999999-|cffffffff %s"):format(member[1], member[2]), member[4], classColor.r, classColor.g, classColor.b, zoneColor.r, zoneColor.g, zoneColor.b) if member[5] ~= ""then - MOD.tooltip:AddLine(format(guildFormattedNote, member[5]), 0.75, 0.9, 1, 1) + MOD.tooltip:AddLine(guildFormattedNote:format(member[5]), 0.75, 0.9, 1, 1) end; if member[6] ~= ""then - MOD.tooltip:AddLine(format(guildFormattedRank, member[6]), 0.3, 1, 0.3, 1) + MOD.tooltip:AddLine(guildFormattedRank:format(member[6]), 0.3, 1, 0.3, 1) end else - MOD.tooltip:AddDoubleLine(format("|cff%02x%02x%02x%d|r %s%s %s", questColor.r*255, questColor.g*255, questColor.b*255, member[3], member[1], groupFormat, member[8]), member[4], classColor.r, classColor.g, classColor.b, zoneColor.r, zoneColor.g, zoneColor.b) + MOD.tooltip:AddDoubleLine(("|cff%02x%02x%02x%d|r %s%s %s"):format(questColor.r*255, questColor.g*255, questColor.b*255, member[3], member[1], groupFormat, member[8]), member[4], classColor.r, classColor.g, classColor.b, zoneColor.r, zoneColor.g, zoneColor.b) end; counter = counter + 1 end; @@ -321,8 +324,8 @@ end; local GuildColorUpdate = function() local hexColor = SuperVillain:HexColor("highlight"); - updatedString = join("", GUILD, ": ", hexColor, "%d|r") - updatedString2 = join("", hexColor, L['No Guild']) + updatedString = join("", GUILD, ": |cff", hexColor, "%d|r") + updatedString2 = join("|cff", hexColor, L['No Guild']) if currentObject ~= nil then Guild_OnEvent(currentObject, 'SVUI_COLOR_UPDATE') end diff --git a/Interface/AddOns/SVUI/packages/stats/stats/hps.lua b/Interface/AddOns/SVUI/packages/stats/stats/hps.lua index 3e57ea4..b119cc5 100644 --- a/Interface/AddOns/SVUI/packages/stats/stats/hps.lua +++ b/Interface/AddOns/SVUI/packages/stats/stats/hps.lua @@ -65,7 +65,8 @@ local combatTime = 0 local timeStamp = 0 local lastSegment = 0 local lastPanel -local displayString = ''; +local hexColor = "FFFFFF"; +local displayString = "%s: |cff%s%.1f|r"; local join = string.join local max = math.max @@ -84,7 +85,7 @@ local function GetHPS(self) else HPS = (healTotal) / (combatTime) end - self.text:SetFormattedText(displayString, L["HPS"]..': ', HPS) + self.text:SetFormattedText(displayString, L["HPS"], hexColor, HPS) end local function HPS_OnClick(self) @@ -128,9 +129,7 @@ local function HPS_OnEvent(self, event, ...) end local HPSColorUpdate = function() - local hexColor = SuperVillain:HexColor("highlight"); - displayString = join("", "%s", hexColor, "%.1f|r") - + hexColor = SuperVillain:HexColor("highlight"); if lastPanel ~= nil then HPS_OnEvent(lastPanel) end diff --git a/Interface/AddOns/SVUI/packages/stats/stats/time.lua b/Interface/AddOns/SVUI/packages/stats/stats/time.lua index 66105d4..3bec845 100644 --- a/Interface/AddOns/SVUI/packages/stats/stats/time.lua +++ b/Interface/AddOns/SVUI/packages/stats/stats/time.lua @@ -223,9 +223,9 @@ function Update(self, t) end local ColorUpdate = function() - local hexString = SuperVillain:HexColor("highlight") - europeDisplayFormat = join("", "%02d", hexString, ":|r%02d") - ukDisplayFormat = join("", "", "%d", hexString, ":|r%02d", hexString, " %s|r") + local hexColor = SuperVillain:HexColor("highlight") + europeDisplayFormat = join("", "%02d|cff", hexColor, ":|r%02d") + ukDisplayFormat = join("", "", "%d|cff", hexColor, ":|r%02d|cff", hexColor, " %s|r") if lastPanel ~= nil then Update(lastPanel, 20000) end diff --git a/Interface/AddOns/SVUI/packages/unit/resources/druid.lua b/Interface/AddOns/SVUI/packages/unit/resources/druid.lua index a441acd..8afe358 100644 --- a/Interface/AddOns/SVUI/packages/unit/resources/druid.lua +++ b/Interface/AddOns/SVUI/packages/unit/resources/druid.lua @@ -29,7 +29,7 @@ local tostring = _G.tostring; local tonumber = _G.tonumber; local math = _G.math; --[[ MATH METHODS ]]-- -local random = math.random; +local random,floor = math.random, math.floor; --[[ ########################################################## GET ADDON DATA @@ -52,17 +52,20 @@ DRUID ALT MANA local UpdateAltPower = function(self, unit, arg1, arg2) local value = self:GetParent().InfoPanel.Power; if(arg1 ~= arg2) then - local color = oUF_SuperVillain['colors'].power['MANA'] + local color = oUF_SuperVillain.colors.power.MANA color = SuperVillain:HexColor(color[1],color[2],color[3]) - if value:GetText()then - if select(4,value:GetPoint()) < 0 then - self.Text:SetFormattedText(color.."%d%%|r |cffD7BEA5- |r",floor(arg1/arg2*100)) + local altValue = floor(arg1 / arg2 * 100) + local altStr + if(value:GetText()) then + if(select(4, value:GetPoint()) < 0) then + altStr = ("|cff%s%d%%|r |cffD7BEA5- |r"):format(color, altValue) else - self.Text:SetFormattedText("|cffD7BEA5-|r"..color.." %d%%|r",floor(arg1/arg2*100)) + altStr = ("|cffD7BEA5-|r|cff%s%d%%|r"):format(color, altValue) end else - self.Text:SetFormattedText(color.."%d%%|r",floor(arg1/arg2*100)) - end + altStr = ("|cff%s%d%%|r"):format(color, altValue) + end + self.Text:SetFormattedText(altStr) else self.Text:SetText() end diff --git a/Interface/AddOns/SVUI/scripts/misc.lua b/Interface/AddOns/SVUI/scripts/misc.lua index ad70cde..eacb8af 100644 --- a/Interface/AddOns/SVUI/scripts/misc.lua +++ b/Interface/AddOns/SVUI/scripts/misc.lua @@ -478,10 +478,30 @@ local function CreateTotemBar() totem.CD:FillInner() SuperVillain:AddCD(totem.CD) totem:EnableMouse(true) - -- totem:RegisterForClicks("RightButtonUp") - -- totem:SetScript("OnClick", Totem_OnClick) + + local t = _G['TotemFrameTotem'..i] + t:ClearAllPoints() + t:SetParent(totem) + t:SetAllPoints(totem) + t:SetFrameLevel(totem:GetFrameLevel() + 1) + t:SetFrameStrata(totem:GetFrameStrata()) + t:SetAlpha(0) + TotemBar[i] = totem end + + hooksecurefunc("TotemFrame_Update", function() + for i=1, MAX_TOTEMS do + local t = _G['TotemFrameTotem'..i] + local slot = t.slot + + if slot and slot > 0 then + t:ClearAllPoints() + t:SetAllPoints(_G['TotemBarTotem'..i]) + end + end + end) + TotemBar:Show() Totems:RegisterEvent("PLAYER_TOTEM_UPDATE") Totems:RegisterEvent("PLAYER_ENTERING_WORLD") diff --git a/Interface/AddOns/SVUI/system/database.lua b/Interface/AddOns/SVUI/system/database.lua index a9c2124..4c22795 100644 --- a/Interface/AddOns/SVUI/system/database.lua +++ b/Interface/AddOns/SVUI/system/database.lua @@ -1108,7 +1108,7 @@ function SuperVillain:HexColor(arg1,arg2,arg3) r = (r < 0 or r > 1) and 0 or (r * 255) g = (g < 0 or g > 1) and 0 or (g * 255) b = (b < 0 or b > 1) and 0 or (b * 255) - local hexString = ("|cff%02x%02x%02x"):format(r,g,b) + local hexString = ("%02x%02x%02x"):format(r,g,b) return hexString end diff --git a/Interface/AddOns/SVUI/system/slash.lua b/Interface/AddOns/SVUI/system/slash.lua index 122a57c..a2c8a99 100644 --- a/Interface/AddOns/SVUI/system/slash.lua +++ b/Interface/AddOns/SVUI/system/slash.lua @@ -35,6 +35,7 @@ local MsgTest = function(warning) end return "SAY" end + --[[ ########################################################## LOCAL SLASH FUNCTIONS @@ -113,7 +114,7 @@ do target = "" end if not firstdone then - SendChatMessage(string.format(L["Pulling %s in %s.."], target, tostring(delay)), MsgTest(true)) + SendChatMessage((L["Pulling %s in %s.."]):format(target, tostring(delay)), MsgTest(true)) firstdone = true delay = delay - 1 end @@ -142,7 +143,7 @@ do SLASH_PULLCOUNTDOWN1 = "/jenkins" SlashCmdList["PULLCOUNTDOWN"] = function(msg) - if tonumber(msg) ~= nil then + if(tonumber(msg) ~= nil) then PullCountdown.Pull(msg) else PullCountdown.Pull() diff --git a/Interface/AddOns/SVUI_AnsweringService/SVUI_AnsweringService.toc b/Interface/AddOns/SVUI_AnsweringService/SVUI_AnsweringService.toc index 00f0be4..6f20a66 100644 --- a/Interface/AddOns/SVUI_AnsweringService/SVUI_AnsweringService.toc +++ b/Interface/AddOns/SVUI_AnsweringService/SVUI_AnsweringService.toc @@ -1,6 +1,6 @@ ## Interface: 50400 ## Author: Munglunch -## Version: 1.0 +## Version: 1.081 ## Title: |cffFF9900SVUI |r|cffFFEF00Answering Service|r ## Notes: Supervillain UI [|cff9911FFAutomatic Whispers|r]. ## RequiredDeps: SVUI diff --git a/Interface/AddOns/SVUI_ArtOfWar/SVUI_ArtOfWar.toc b/Interface/AddOns/SVUI_ArtOfWar/SVUI_ArtOfWar.toc index 134f974..2f2e7c8 100644 --- a/Interface/AddOns/SVUI_ArtOfWar/SVUI_ArtOfWar.toc +++ b/Interface/AddOns/SVUI_ArtOfWar/SVUI_ArtOfWar.toc @@ -1,6 +1,6 @@ ## Interface: 50400 ## Author: Munglunch -## Version: 1.0 +## Version: 1.081 ## Title: |cffFF9900SVUI |r|cffFFEF00Art of War|r ## Notes: Supervillain UI [|cff9911FFPvP Tools|r]. ## SavedVariables: SVAOW_Data diff --git a/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.toc b/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.toc index bb96cbb..5f6afa2 100644 --- a/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.toc +++ b/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 50400 ## Author: Munglunch, Elv -## Version: 4.08 +## Version: 4.081 ## Title: |cffFF9900SVUI |r|cffFFEF00Config O Matic|r ## Notes: Supervillain UI [|cff9911FFConfig Options|r] ## RequiredDeps: SVUI diff --git a/Interface/AddOns/SVUI_Laborer/SVUI_Laborer.toc b/Interface/AddOns/SVUI_Laborer/SVUI_Laborer.toc index aea9232..15c2a3b 100644 --- a/Interface/AddOns/SVUI_Laborer/SVUI_Laborer.toc +++ b/Interface/AddOns/SVUI_Laborer/SVUI_Laborer.toc @@ -1,6 +1,6 @@ ## Interface: 50400 ## Author: Munglunch -## Version: 1.0 +## Version: 1.081 ## Title: |cffFF9900SVUI |r|cffFFEF00Laborer|r ## Notes: Supervillain UI [|cff9911FFProfession Tools|r]. ## SavedVariables: LABOR_Data diff --git a/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.toc b/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.toc index 69029fe..a0a9371 100644 --- a/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.toc +++ b/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 50400 ## Author: Munglunch -## Version: 1.0 +## Version: 1.081 ## Title: |cffFF9900SVUI |r|cffFFEF00Log O Matic|r ## Notes: Supervillain UI [|cff9911FFData Logging|r]. ## SavedVariables: SVLOG_Data diff --git a/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.toc b/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.toc index dff28a0..74bab39 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.toc +++ b/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 50400 ## Author: Munglunch, Azilroka, Sortokk -## Version: 4.08 +## Version: 4.081 ## Title: |cffFF9900SVUI |r|cffFFEF00Style O Matic|r ## Notes: Supervillain UI [|cff9911FFAddon Skins|r]. ## RequiredDeps: SVUI