diff --git a/Interface/AddOns/SVUI/framework/docks/dock_stats.lua b/Interface/AddOns/SVUI/framework/docks/dock_stats.lua index cf615f4..6f04228 100644 --- a/Interface/AddOns/SVUI/framework/docks/dock_stats.lua +++ b/Interface/AddOns/SVUI/framework/docks/dock_stats.lua @@ -254,7 +254,7 @@ local function GetDataSlot(parent, index) slot.text = slot.textframe:CreateFontString(nil, "OVERLAY", nil, 7) slot.text:SetAllPoints() - slot.text:SetFontObject(SVUI_Font_Data) + SV:FontManager(slot.text, "data") if(SV.db.Dock.dataBackdrop) then slot.text:SetShadowColor(0, 0, 0, 0.5) slot.text:SetShadowOffset(2, -4) diff --git a/Interface/AddOns/SVUI/libs/LibActionButton-1.0/LibActionButton-1.0.lua b/Interface/AddOns/SVUI/libs/LibActionButton-1.0/LibActionButton-1.0.lua index 9fd011f..da6fd9f 100644 --- a/Interface/AddOns/SVUI/libs/LibActionButton-1.0/LibActionButton-1.0.lua +++ b/Interface/AddOns/SVUI/libs/LibActionButton-1.0/LibActionButton-1.0.lua @@ -1268,6 +1268,10 @@ function UpdateHotkeys(self) self.HotKey:SetPoint("TOPLEFT", self, "TOPLEFT", - 2, - 2) self.HotKey:Show() end + + if self.postKeybind then + self.postKeybind(nil, self) + end end local function OverlayGlow_OnHide(self) diff --git a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Druidness/oUF_Druidness.lua b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Druidness/oUF_Druidness.lua index 97f9064..9b2d509 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Druidness/oUF_Druidness.lua +++ b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Druidness/oUF_Druidness.lua @@ -49,6 +49,14 @@ local TextColors = { [5]={0.1,1,0.1} }; +local function ManaBarState(mana) + if mana.ManaBar:GetValue() < UnitPowerMax('player', SPELL_POWER_MANA) then + mana:Show() + else + mana:Hide() + end +end + local UPDATE_VISIBILITY = function(self, event) local bar = self.Druidness local chicken = bar.Chicken @@ -57,12 +65,6 @@ local UPDATE_VISIBILITY = function(self, event) -- check form/mastery local form = GetShapeshiftFormID() - - if mana.ManaBar:GetValue() < UnitPowerMax('player', SPELL_POWER_MANA) then - mana:Show() - else - mana:Hide() - end if(not form) then local ptt = GetSpecialization() @@ -70,6 +72,7 @@ local UPDATE_VISIBILITY = function(self, event) chicken:Show() else chicken:Hide() + ManaBarState(mana) end cat:Hide() elseif(form == MOONKIN_FORM) then @@ -83,9 +86,11 @@ local UPDATE_VISIBILITY = function(self, event) else cat:Hide() end + ManaBarState(mana) else chicken:Hide() cat:Hide() + mana:Hide() end if(bar.PostUpdateVisibility) then 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 8ed4287..479019f 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 TRAP_MASTERY_ID = 63458; +local TRAP_MASTERY = IsSpellKnown(TRAP_MASTERY_ID); local ENHANCED_TRAPS_ID = 157751; local ENHANCED_TRAPS = IsSpellKnown(ENHANCED_TRAPS_ID); local FIRE_TRAP = GetSpellInfo(13813); @@ -84,6 +86,7 @@ local Update = function(self, event, ...) local bar = self.HunterTraps if(event and event == "SPELLS_CHANGED") then ENHANCED_TRAPS = IsSpellKnown(ENHANCED_TRAPS_ID); + TRAP_MASTERY = IsSpellKnown(TRAP_MASTERY_ID); local ice_icon = select(3, GetSpellInfo(13809)); if(ice_icon == SNAKE_ICON) then TRAP_IDS[3] = SNAKE_TRAP @@ -108,8 +111,13 @@ local Update = function(self, event, ...) name = GetSpellInfo(spellID) start, isReady, enable = GetSpellCooldown(spellID) duration = GetSpellBaseCooldown(spellID) - if((duration and duration > 0) and ENHANCED_TRAPS) then - duration = duration * 0.5 + if(duration and duration > 0) then + if(TRAP_MASTERY) then + duration = duration - 6; + end + if(ENHANCED_TRAPS) then + duration = duration * 0.5 + end end end diff --git a/Interface/AddOns/SVUI/packages/map/SVMap.lua b/Interface/AddOns/SVUI/packages/map/SVMap.lua index d3085fe..ed31047 100644 --- a/Interface/AddOns/SVUI/packages/map/SVMap.lua +++ b/Interface/AddOns/SVUI/packages/map/SVMap.lua @@ -80,6 +80,9 @@ local WM_ALPHA = false; local SVUI_MinimapFrame = CreateFrame("Frame", "SVUI_MinimapFrame", UIParent) local WMCoords = CreateFrame('Frame', 'SVUI_WorldMapCoords', WorldMapFrame) SVUI_MinimapFrame:SetSize(MM_WIDTH, MM_HEIGHT) + +local CUSTOM_BLIPS = [[Interface\AddOns\SVUI\assets\artwork\Minimap\MINIMAP-OBJECTICONS]] +local DEFAULT_BLIPS = [[Interface\AddOns\SVUI\assets\artwork\Minimap\DEFAULT-OBJECTICONS]] --[[ ########################################################## GENERAL HELPERS @@ -703,6 +706,16 @@ function MOD:ReLoad() self:UpdateMinimapButtonSettings() end +local _hook_BlipTextures = function(self, texture) + if(SV.db.SVMap.customIcons and (texture ~= CUSTOM_BLIPS)) then + self:SetBlipTexture(CUSTOM_BLIPS) + else + if((not SV.db.SVMap.customIcons) and texture ~= DEFAULT_BLIPS) then + self:SetBlipTexture(DEFAULT_BLIPS) + end + end +end + function MOD:Load() if(not SV.db.SVMap.enable) then Minimap:SetMaskTexture('Textures\\MinimapMask') @@ -715,10 +728,11 @@ function MOD:Load() Minimap:SetCorpsePOIArrowTexture("Interface\\AddOns\\SVUI\\assets\\artwork\\Minimap\\MINIMAP_CORPSE_ARROW") Minimap:SetPOIArrowTexture("Interface\\AddOns\\SVUI\\assets\\artwork\\Minimap\\MINIMAP_GUIDE_ARROW") if(SV.db.SVMap.customIcons) then - Minimap:SetBlipTexture("Interface\\AddOns\\SVUI\\assets\\artwork\\Minimap\\MINIMAP-OBJECTICONS") + Minimap:SetBlipTexture(CUSTOM_BLIPS) else - Minimap:SetBlipTexture("Interface\\AddOns\\SVUI\\assets\\artwork\\Minimap\\DEFAULT-OBJECTICONS") + Minimap:SetBlipTexture(DEFAULT_BLIPS) end + Minimap:SetClampedToScreen(false) local mapHolder = SVUI_MinimapFrame @@ -946,4 +960,5 @@ function MOD:Load() self:RegisterEvent("ZONE_CHANGED_NEW_AREA") NewHook("Minimap_UpdateRotationSetting", RotationHook) + --NewHook(Minimap, "SetBlipTexture", _hook_BlipTextures) end \ No newline at end of file diff --git a/Interface/AddOns/SVUI/packages/quest/components/bonus.lua b/Interface/AddOns/SVUI/packages/quest/components/bonus.lua index eef9c7c..561bdb0 100644 --- a/Interface/AddOns/SVUI/packages/quest/components/bonus.lua +++ b/Interface/AddOns/SVUI/packages/quest/components/bonus.lua @@ -79,11 +79,14 @@ local function CacheBonusData(questID, xp, money) data.objectives = {}; local isInArea, isOnMap, numObjectives = GetTaskInfo(questID); local iscomplete = true; - for objectiveIndex = 1, numObjectives do - local text, objectiveType, finished = GetQuestObjectiveInfo(questID, objectiveIndex); - if not finished then iscomplete = false end - tinsert(data.objectives, text); - data.objectiveType = objectiveType; + + if(numObjectives and (type(numObjectives) == "number") and numObjectives > 0) then + for objectiveIndex = 1, numObjectives do + local text, objectiveType, finished = GetQuestObjectiveInfo(questID, objectiveIndex); + if not finished then iscomplete = false end + tinsert(data.objectives, text); + data.objectiveType = objectiveType; + end end data.rewards = {}; diff --git a/Interface/AddOns/SVUI/packages/unit/elements/misc.lua b/Interface/AddOns/SVUI/packages/unit/elements/misc.lua index 20677f9..eced29a 100644 --- a/Interface/AddOns/SVUI/packages/unit/elements/misc.lua +++ b/Interface/AddOns/SVUI/packages/unit/elements/misc.lua @@ -592,7 +592,7 @@ RESOLVE ########################################################## ]]-- local cached_resolve; -local resolveId = GetSpellInfo(158300) +local RESOLVE_ID = 158300; local function Short(value) local fmt @@ -644,12 +644,16 @@ end local ResolveBar_OnEvent = function(self, event, unit) if(SV.db.SVUnit.resolveBar) then if(event == 'UNIT_AURA') then - local _, _, _, _, _, _, _, _, _, _, _, _, _, _, value, amount = UnitBuff(unit, resolveId) - if(value and amount and (cached_resolve ~= amount)) then - cached_resolve = amount - self.bar:SetValue(value) - self.bar.text:SetText(Short(amount)) - self:FadeIn() + for index = 1, 30 do + local _, _, _, _, _, _, _, _, _, _, spellID, _, _, _, value, amount = UnitBuff('player', index) + if((spellID == RESOLVE_ID) and (amount and (cached_resolve ~= amount))) then + if(value) then + self.bar:SetValue(value) + end + self.bar.text:SetText(Short(amount)) + self:FadeIn() + cached_resolve = amount + end end else if IsTank() then diff --git a/Interface/AddOns/SVUI_StyleOMatic/Loader.lua b/Interface/AddOns/SVUI_StyleOMatic/Loader.lua index 81b3891..96cf35d 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/Loader.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/Loader.lua @@ -117,6 +117,7 @@ AddonObject.defaults = { ['TomTom'] = true, ['TradeSkillDW'] = true, ['VEM'] = true, + ['ZygorGuidesViewer'] = true, }, }; diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/Zygor.lua b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Zygor.lua new file mode 100644 index 0000000..2663033 --- /dev/null +++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/Zygor.lua @@ -0,0 +1,87 @@ +--[[ +############################################################################## +_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_ # + ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__ # + __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____ # + ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____ # + ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____ # + _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____ # + __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ # + _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_# + ___\///////////___________\///___________\/////////_____\///////////_# +############################################################################## +S U P E R - V I L L A I N - U I By: Munglunch # +############################################################################## +########################################################## +LOCALIZED LUA FUNCTIONS +########################################################## +]]-- +--[[ GLOBALS ]]-- +local _G = _G; +local unpack = _G.unpack; +local select = _G.select; +local pairs = _G.pairs; +local string = _G.string; +--[[ STRING METHODS ]]-- +local format = string.format; +--[[ +########################################################## +GET ADDON DATA +########################################################## +]]-- +local SV = _G.SVUI; +local L = SV.L; +local PLUGIN = select(2, ...); +local Schema = PLUGIN.Schema; +--[[ +########################################################## +ZYGOR +########################################################## +]]-- +local function StyleZygorTabs() + if(not ZGVCharacterGearFinderButton) then return end + ZGVCharacterGearFinderButton.Highlight:SetTexture(1, 1, 1, 0.3) + ZGVCharacterGearFinderButton.Highlight:SetPointToScale("TOPLEFT", 3, -4) + ZGVCharacterGearFinderButton.Highlight:SetPointToScale("BOTTOMRIGHT", -1, 0) + ZGVCharacterGearFinderButton.Hider:SetTexture(0.4, 0.4, 0.4, 0.4) + ZGVCharacterGearFinderButton.Hider:SetPointToScale("TOPLEFT", 3, -4) + ZGVCharacterGearFinderButton.Hider:SetPointToScale("BOTTOMRIGHT", -1, 0) + ZGVCharacterGearFinderButton.TabBg:Die() + if i == 1 then + for x = 1, ZGVCharacterGearFinderButton:GetNumRegions()do + local texture = select(x, ZGVCharacterGearFinderButton:GetRegions()) + texture:SetTexCoord(0.16, 0.86, 0.16, 0.86) + end + end + ZGVCharacterGearFinderButton:SetStylePanel("Default", "Default", true, 2) + ZGVCharacterGearFinderButton.Panel:SetPointToScale("TOPLEFT", 2, -3) + ZGVCharacterGearFinderButton.Panel:SetPointToScale("BOTTOMRIGHT", 0, -2) +end + +local function StyleZygor() + --PLUGIN.Debugging = true; + local ZygorGuidesViewer = LibStub('AceAddon-3.0'):GetAddon('ZygorGuidesViewer') + assert(ZygorGuidesViewer, "AddOn Not Loaded") + + PLUGIN:ApplyWindowStyle(ZygorGuidesViewerFrame) + ZygorGuidesViewerFrame_Border:RemoveTextures(true) + PLUGIN:ApplyFrameStyle(ZygorGuidesViewer_CreatureViewer, 'ModelBorder') + + for i = 1, 6 do + PLUGIN:ApplyFrameStyle(_G['ZygorGuidesViewerFrame_Step'..i], 'Default') + end + + CharacterFrame:HookScript("OnShow", StyleZygorTabs) + + ZygorGuidesViewerFrame_Border:HookScript('OnHide', function(self) self:RemoveTextures(true) end) + ZygorGuidesViewerFrame_Border:HookScript('OnShow', function(self) self:RemoveTextures(true) end) + if(SV.db.SVMap.customIcons) then + Minimap:SetBlipTexture("Interface\\AddOns\\SVUI\\assets\\artwork\\Minimap\\MINIMAP-OBJECTICONS") + Minimap.SetBlipTexture = function() return end + else + Minimap:SetBlipTexture("Interface\\AddOns\\SVUI\\assets\\artwork\\Minimap\\DEFAULT-OBJECTICONS") + Minimap.SetBlipTexture = function() return end + end +end + +PLUGIN:SaveAddonStyle("ZygorGuidesViewer", StyleZygor) \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/addons/_load.xml b/Interface/AddOns/SVUI_StyleOMatic/components/addons/_load.xml index 55ecc88..875de69 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/addons/_load.xml +++ b/Interface/AddOns/SVUI_StyleOMatic/components/addons/_load.xml @@ -27,4 +27,5 @@ <Script file='TomTom.lua'/> <Script file='TradeSkillDW.lua'/> <Script file='VEM.lua'/> + <Script file='Zygor.lua'/> </Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/character.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/character.lua index 5eb2164..b30806a 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/character.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/character.lua @@ -135,26 +135,28 @@ local function StyleCharacterSlots() for i = 1, #PAPERDOLL_SIDEBARS do local tab = _G["PaperDollSidebarTab"..i] - if(tab and not tab.Panel) then - tab.Highlight:SetTexture(1, 1, 1, 0.3) - tab.Highlight:SetPointToScale("TOPLEFT", 3, -4) - tab.Highlight:SetPointToScale("BOTTOMRIGHT", -1, 0) - tab.Hider:SetTexture(0.4, 0.4, 0.4, 0.4) - tab.Hider:SetPointToScale("TOPLEFT", 3, -4) - tab.Hider:SetPointToScale("BOTTOMRIGHT", -1, 0) - tab.TabBg:Die() - if i == 1 then - for x = 1, tab:GetNumRegions()do - local texture = select(x, tab:GetRegions()) - texture:SetTexCoord(0.16, 0.86, 0.16, 0.86) + if(tab) then + if(not tab.Panel) then + tab.Highlight:SetTexture(1, 1, 1, 0.3) + tab.Highlight:SetPointToScale("TOPLEFT", 3, -4) + tab.Highlight:SetPointToScale("BOTTOMRIGHT", -1, 0) + tab.Hider:SetTexture(0.4, 0.4, 0.4, 0.4) + tab.Hider:SetPointToScale("TOPLEFT", 3, -4) + tab.Hider:SetPointToScale("BOTTOMRIGHT", -1, 0) + tab.TabBg:Die() + if i == 1 then + for x = 1, tab:GetNumRegions()do + local texture = select(x, tab:GetRegions()) + texture:SetTexCoord(0.16, 0.86, 0.16, 0.86) + end end - end - tab:SetStylePanel("Default", "Default", true, 2) - tab.Panel:SetPointToScale("TOPLEFT", 2, -3) - tab.Panel:SetPointToScale("BOTTOMRIGHT", 0, -2) + tab:SetStylePanel("Default", "Default", true, 2) + tab.Panel:SetPointToScale("TOPLEFT", 2, -3) + tab.Panel:SetPointToScale("BOTTOMRIGHT", 0, -2) + end if(i == 1) then tab:ClearAllPoints() - tab:SetPoint("BOTTOM", CharacterFrameInsetRight, "TOP", 0, 4) + tab:SetPoint("BOTTOM", CharacterFrameInsetRight, "TOP", -30, 4) else tab:ClearAllPoints() tab:SetPoint("LEFT", _G["PaperDollSidebarTab"..i-1], "RIGHT", 4, 0)