diff --git a/SVUI_!Core/SVUI_!Core.toc b/SVUI_!Core/SVUI_!Core.toc index 2cf2f2a..7c5022c 100644 --- a/SVUI_!Core/SVUI_!Core.toc +++ b/SVUI_!Core/SVUI_!Core.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cff00FF00!Core|r ## Notes: SVUI [|cff9911FFCore Framework|r]. ## SavedVariables: SVUI_Global, SVUI_Errors, SVUI_Filters, SVUI_Media diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG1.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG1.blp index e359aac..6a546e3 100644 Binary files a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG1.blp and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG1.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG10.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG10.blp new file mode 100644 index 0000000..fe88cce Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG10.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG11.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG11.blp new file mode 100644 index 0000000..fdd2e81 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG11.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG12.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG12.blp new file mode 100644 index 0000000..369aba6 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG12.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG13.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG13.blp new file mode 100644 index 0000000..c23041a Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG13.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG3.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG3.blp index b6ac788..4279ace 100644 Binary files a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG3.blp and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG3.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG5.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG5.blp new file mode 100644 index 0000000..47ace70 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG5.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG6.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG6.blp new file mode 100644 index 0000000..6120a5d Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG6.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG7.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG7.blp new file mode 100644 index 0000000..ab43ff2 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG7.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG8.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG8.blp new file mode 100644 index 0000000..c9d98b4 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG8.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-BG9.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG9.blp new file mode 100644 index 0000000..5289c03 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-BG9.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG1.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG1.blp index 8721c03..434b72a 100644 Binary files a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG1.blp and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG1.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG10.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG10.blp new file mode 100644 index 0000000..da8369c Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG10.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG11.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG11.blp new file mode 100644 index 0000000..573d0a1 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG11.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG12.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG12.blp new file mode 100644 index 0000000..021606f Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG12.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG13.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG13.blp new file mode 100644 index 0000000..28dd443 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG13.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG3.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG3.blp index 9e7a730..6ed3593 100644 Binary files a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG3.blp and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG3.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG4.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG4.blp index 44f3ce7..cbee162 100644 Binary files a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG4.blp and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG4.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG5.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG5.blp new file mode 100644 index 0000000..40fd794 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG5.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG6.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG6.blp new file mode 100644 index 0000000..e2cb0ff Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG6.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG7.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG7.blp new file mode 100644 index 0000000..53eb349 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG7.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG8.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG8.blp new file mode 100644 index 0000000..3ae7d87 Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG8.blp differ diff --git a/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG9.blp b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG9.blp new file mode 100644 index 0000000..191bc5c Binary files /dev/null and b/SVUI_!Core/assets/backgrounds/unit/UNIT-SMALL-BG9.blp differ diff --git a/SVUI_!Core/setup/installer.lua b/SVUI_!Core/setup/installer.lua index 254bedb..02aae62 100644 --- a/SVUI_!Core/setup/installer.lua +++ b/SVUI_!Core/setup/installer.lua @@ -407,6 +407,12 @@ function SV.Setup:ChatConfigs(mungs) end end +function SV.Setup:RandomBackdrops() + self:GenerateBackdrops() + SV:UpdateSharedMedia() + if(SV.UnitFrames) then SVUILib:RefreshModule('UnitFrames') end +end + function SV.Setup:ColorTheme(style, preserve) preset_mediastyle = style or "default"; @@ -454,7 +460,7 @@ function SV.Setup:UnitframeLayout(style, preserve) if(preset_mediastyle == "default") then SV.db.UnitFrames.healthclass = true; end - + if(not mungs) then if(not preserve) then if preset_barstyle and (preset_barstyle == "twosmall" or preset_barstyle == "twobig") then diff --git a/SVUI_!Core/setup/presets.lua b/SVUI_!Core/setup/presets.lua index 4307bc0..33c2d5c 100644 --- a/SVUI_!Core/setup/presets.lua +++ b/SVUI_!Core/setup/presets.lua @@ -1,7 +1,7 @@ --[[ ########################################################## S V U I By: Munglunch -########################################################## +########################################################## LOCALIZED LUA FUNCTIONS ########################################################## ]]-- @@ -25,16 +25,16 @@ local string = _G.string; local table = _G.table; local format = string.format; local tcopy = table.copy; ---[[ -########################################################## +--[[ +########################################################## GET ADDON DATA ########################################################## ]]-- local SV = select(2, ...) local SVUILib = Librarian("Registry") local L = SV.L; ---[[ -########################################################## +--[[ +########################################################## LOCAL VARS ########################################################## ]]-- @@ -50,8 +50,8 @@ local rcc = RAID_CLASS_COLORS[SV.class]; local r2 = .1 + (rcc.r * .1) local g2 = .1 + (rcc.g * .1) local b2 = .1 + (rcc.b * .1) ---[[ -########################################################## +--[[ +########################################################## LAYOUT PRESETS ########################################################## ]]-- @@ -60,16 +60,16 @@ local hasOldConfigs = function() end local isLowRez = function() - if SV.LowRez then + if SV.LowRez then return L["This resolution requires that you change some settings to get everything to fit on your screen."].." "..L["Click the button below to resize your chat frames, unitframes, and reposition your actionbars."].." "..L["You may need to further alter these settings depending how low your resolution is."] - else + else return L["This resolution doesn't require that you change settings for the UI to fit on your screen."].." "..L["Click the button below to resize your chat frames, unitframes, and reposition your actionbars."].." "..L["This is completely optional."] end end local PRESET_DATA, CLICK_DIALOG, PAGE_DIALOG; -SV.Setup.ColorThemes = { +local ColorThemes = { ["data"] = { ["link"] = "media", ["default"] = { @@ -79,10 +79,10 @@ SV.Setup.ColorThemes = { }, ["shared"] = { ["background"] = { - ["pattern"] = {file = "SVUI Backdrop 1", size = 0, tiled = false}, - ["premium"] = {file = "SVUI Artwork 1", size = 0, tiled = false}, - ["unitlarge"] = {file = "SVUI UnitBG 1", size = 0, tiled = false}, - ["unitsmall"] = {file = "SVUI SmallUnitBG 1", size = 0, tiled = false}, + ["pattern"] = {file = "SVUI Backdrop 2", size = 0, tiled = false}, + ["premium"] = {file = "SVUI Artwork 2", size = 0, tiled = false}, + ["unitlarge"] = {file = "SVUI UnitBG 2", size = 0, tiled = false}, + ["unitsmall"] = {file = "SVUI SmallUnitBG 2", size = 0, tiled = false}, } }, ["unitframes"] = { @@ -99,10 +99,10 @@ SV.Setup.ColorThemes = { }, ["shared"] = { ["background"] = { - ["pattern"] = {file = "SVUI Backdrop 2", size = 0, tiled = false}, - ["premium"] = {file = "SVUI Artwork 2", size = 0, tiled = false}, - ["unitlarge"] = {file = "SVUI UnitBG 2", size = 0, tiled = false}, - ["unitsmall"] = {file = "SVUI SmallUnitBG 2", size = 0, tiled = false}, + ["pattern"] = {file = "SVUI Backdrop 13", size = 0, tiled = false}, + ["premium"] = {file = "SVUI Artwork 13", size = 0, tiled = false}, + ["unitlarge"] = {file = "SVUI UnitBG 13", size = 0, tiled = false}, + ["unitsmall"] = {file = "SVUI SmallUnitBG 13", size = 0, tiled = false}, } }, ["unitframes"] = { @@ -119,10 +119,10 @@ SV.Setup.ColorThemes = { }, ["shared"] = { ["background"] = { - ["pattern"] = {file = "SVUI Backdrop 3", size = 0, tiled = false}, - ["premium"] = {file = "SVUI Artwork 3", size = 0, tiled = false}, - ["unitlarge"] = {file = "SVUI UnitBG 3", size = 0, tiled = false}, - ["unitsmall"] = {file = "SVUI SmallUnitBG 3", size = 0, tiled = false}, + ["pattern"] = {file = "SVUI Backdrop 9", size = 0, tiled = false}, + ["premium"] = {file = "SVUI Artwork 9", size = 0, tiled = false}, + ["unitlarge"] = {file = "SVUI UnitBG 9", size = 0, tiled = false}, + ["unitsmall"] = {file = "SVUI SmallUnitBG 9", size = 0, tiled = false}, } }, ["unitframes"] = { @@ -139,10 +139,10 @@ SV.Setup.ColorThemes = { }, ["shared"] = { ["background"] = { - ["pattern"] = {file = "SVUI Backdrop 4", size = 0, tiled = false}, - ["premium"] = {file = "SVUI Artwork 4", size = 0, tiled = false}, - ["unitlarge"] = {file = "SVUI UnitBG 4", size = 0, tiled = false}, - ["unitsmall"] = {file = "SVUI SmallUnitBG 4", size = 0, tiled = false}, + ["pattern"] = {file = "SVUI Backdrop 3", size = 0, tiled = false}, + ["premium"] = {file = "SVUI Artwork 3", size = 0, tiled = false}, + ["unitlarge"] = {file = "SVUI UnitBG 3", size = 0, tiled = false}, + ["unitsmall"] = {file = "SVUI SmallUnitBG 3", size = 0, tiled = false}, } }, ["unitframes"] = { @@ -185,11 +185,11 @@ SV.Setup.ColorThemes = { ["Desc3"] = CONTINUED..L["you don't need fancyness to kick some ass!"], }, } -} +}; local function LoadPresetData() PRESET_DATA = { - ["media"] = SV.Setup.ColorThemes.data, + ["media"] = ColorThemes.data, ["auras"] = { ["link"] = "UnitFrames", ["default"] = { @@ -664,9 +664,9 @@ local function LoadPresetData() }, ["icons"] = { ["roleIcon"] = { - ["attachTo"] = "INNERBOTTOMLEFT", - ["xOffset"] = 8, - ["yOffset"] = 1, + ["attachTo"] = "INNERBOTTOMLEFT", + ["xOffset"] = 8, + ["yOffset"] = 1, }, }, ["name"] = { @@ -724,9 +724,9 @@ local function LoadPresetData() }, ["icons"] = { ["roleIcon"] = { - ["attachTo"] = "INNERBOTTOMLEFT", - ["xOffset"] = 8, - ["yOffset"] = 0, + ["attachTo"] = "INNERBOTTOMLEFT", + ["xOffset"] = 8, + ["yOffset"] = 0, }, }, ["name"] = { @@ -891,7 +891,7 @@ local function LoadPageData() }, --PAGE 4 { - + }, --PAGE 5 { @@ -957,7 +957,7 @@ local function LoadPageData() }, }; - PAGE_DIALOG[4] = SV.Setup.ColorThemes.dialog; + PAGE_DIALOG[4] = ColorThemes.dialog; end local function LoadOnClickData() @@ -1029,13 +1029,13 @@ local function LoadOnClickData() }, }; - for key, data in pairs(SV.Setup.ColorThemes.clicktext) do + for key, data in pairs(ColorThemes.clicktext) do local optionKey = "Page4_" .. key; CLICK_DIALOG[optionKey] = data; end end ---[[ -########################################################## +--[[ +########################################################## LOCAL FUNCTIONS ########################################################## ]]-- @@ -1059,6 +1059,16 @@ function SV.Setup:SetAllDefaults() _copyPresets(SV.db, SV.defaults) end +function SV.Setup:GenerateBackdrops() + local IMAGE_INDEX = math.random(1, (SV.MaxUnitBackdrops - 3)); + local STYLE1, STYLE2 = "SVUI UnitBG "..IMAGE_INDEX, "SVUI SmallUnitBG "..IMAGE_INDEX; + local preset = { + ["unitlarge"] = {file = STYLE1, size = 0, tiled = false}, + ["unitsmall"] = {file = STYLE2, size = 0, tiled = false} + } + _copyPresets(SV.media.shared.background, preset) +end + function SV.Setup:CopyPreset(category, theme) if(not PRESET_DATA) then LoadPresetData() end if(PRESET_DATA and PRESET_DATA[category] and PRESET_DATA[category]["link"]) then @@ -1071,10 +1081,10 @@ function SV.Setup:CopyPreset(category, theme) else data = SV.db[saved] end - + if(data) then - _copyPresets(data, preset) - end + _copyPresets(data, preset) + end end end @@ -1095,4 +1105,4 @@ function SV.Setup:CopyOnClick(index) if(CLICK_DIALOG and CLICK_DIALOG[index]) then return CLICK_DIALOG[index] end -end \ No newline at end of file +end diff --git a/SVUI_!Core/system/core.lua b/SVUI_!Core/system/core.lua index 64817c6..7998de5 100644 --- a/SVUI_!Core/system/core.lua +++ b/SVUI_!Core/system/core.lua @@ -310,6 +310,10 @@ SV.defaults = { }, ["Extras"] = { ["autoRoll"] = false, + ["autoRollDisenchant"] = false, + ["autoRollMaxLevel"] = false, + ["autoRollSoulbound"] = true, + ["autoRollQuality"] = '2', ["vendorGrays"] = true, ["autoAcceptInvite"] = false, ["autorepchange"] = false, @@ -776,11 +780,12 @@ end function SV:PET_BATTLE_CLOSE() self:AuditVisibility() SVUILib:LiveUpdate() + -- self.Events:Trigger("FONT_GROUP_UPDATED", "chatdialog", "chattab"); end function SV:PET_BATTLE_OPENING_START() self:AuditVisibility(true); - self.Events:Trigger("ALL_FONTS_UPDATED"); + -- self.Events:Trigger("FONT_GROUP_UPDATED", "chatdialog", "chattab"); end function SV:PLAYER_REGEN_DISABLED() diff --git a/SVUI_!Core/system/henchmen.lua b/SVUI_!Core/system/henchmen.lua index ea16f84..aefd7a6 100644 --- a/SVUI_!Core/system/henchmen.lua +++ b/SVUI_!Core/system/henchmen.lua @@ -47,8 +47,8 @@ local GameTooltip = _G.GameTooltip; local SV = select(2, ...) local L = SV.L ---[[ -########################################################## +--[[ +########################################################## LOCAL VARS ########################################################## ]]-- @@ -62,11 +62,11 @@ local BUBBLE = [[Interface\Addons\SVUI_!Core\assets\textures\Doodads\HENCHMEN-SP local SUBOPTIONS = {}; local HENCHMEN_DATA = { { - {0,"Adjust My Colors!","Color Themes","Click here to change your current color theme to one of the default sets."}, - {20,"Adjust My Frames!","Frame Styles","Click here to change your current frame styles to one of the default sets."}, - {40,"Adjust My Bars!","Bar Layouts","Click here to change your current actionbar layout to one of the default sets."}, + {40,"Adjust My Colors!","Color Themes","Click here to change your current color theme to one of the default sets."}, + {40,"Adjust My Frames!","Frame Styles","Click here to change your current frame styles to one of the default sets."}, + {0,"Adjust My Bars!","Bar Layouts","Click here to change your current actionbar layout to one of the default sets."}, {-40,"Adjust My Auras!","Aura Layouts","Click here to change your buff/debuff layout to one of the default sets."}, - {-20,"Show Me All Options!","Config Screen","Click here to access the entire SVUI configuration."} + {-40,"Show Me All Options!","Config Screen","Click here to access the entire SVUI configuration."} }, { {0,"Accept Quests","Your minions will automatically accept quests for you", "autoquestaccept"}, @@ -95,16 +95,16 @@ SV.YOUR_HENCHMEN = { {37339,60,60,60,60,60,60}, --Augh {2323,67,113,69,70,73,75}, --Defias Henchman } ---[[ -########################################################## +--[[ +########################################################## SCRIPT HANDLERS ########################################################## ]]-- -local ColorFunc = function(self) SV.Setup:ColorTheme(self.value, true); SV:ToggleHenchman() end -local UnitFunc = function(self) SV.Setup:UnitframeLayout(self.value, true); SV:ToggleHenchman() end -local BarFunc = function(self) SV.Setup:BarLayout(self.value, true); SV:ToggleHenchman() end -local AuraFunc = function(self) SV.Setup:Auralayout(self.value, true); SV:ToggleHenchman() end -local ConfigFunc = function() SV:ToggleConfig(); SV:ToggleHenchman() end +local ColorFunc = function(self) SV.Setup:ColorTheme(self.value, true); SV:ToggleHenchman() end +local UnitFunc = function(self) SV.Setup:UnitframeLayout(self.value, true); SV:ToggleHenchman() end +local BarFunc = function(self) SV.Setup:BarLayout(self.value, true); SV:ToggleHenchman() end +local AuraFunc = function(self) SV.Setup:Auralayout(self.value, true); SV:ToggleHenchman() end +local ConfigFunc = function() SV:ToggleConfig(); SV:ToggleHenchman() end local speechTimer; local Tooltip_Show = function(self) @@ -112,13 +112,13 @@ local Tooltip_Show = function(self) GameTooltip:ClearLines() GameTooltip:AddLine(self.ttText) GameTooltip:Show() -end +end local Tooltip_Hide = function(self) GameTooltip:Hide() -end +end -local Minion_OnMouseUp = function(self) +local Minion_OnMouseUp = function(self) if(not self.setting()) then self.indicator:SetTexCoord(0,1,0.5,1) self.setting(true) @@ -126,7 +126,7 @@ local Minion_OnMouseUp = function(self) self.indicator:SetTexCoord(0,1,0,0.5) self.setting(false) end -end +end local Option_OnMouseUp = function(self) --print('Option_OnMouseUp Fired') @@ -135,26 +135,26 @@ local Option_OnMouseUp = function(self) --else --print('Option_OnMouseUp No Callbacks') end -end +end local SubOption_OnMouseUp = function(self) - if not InCombatLockdown()then + if not InCombatLockdown()then local name=self:GetName() - for _,frame in pairs(SUBOPTIONS) do + for _,frame in pairs(SUBOPTIONS) do frame.anim:Finish() frame:Hide() - end - if not self.isopen then - for i=1, self.suboptions do + end + if not self.isopen then + for i=1, self.suboptions do _G[name.."Sub"..i]:Show() _G[name.."Sub"..i].anim:Play() _G[name.."Sub"..i].anim:Finish() - end - self.isopen=true + end + self.isopen=true else - self.isopen=false - end - end + self.isopen=false + end + end end local function UpdateHenchmanModel(hide) @@ -171,10 +171,10 @@ local function UpdateHenchmanModel(hide) HenchmenFrameModel:Show() else HenchmenFrameModel:Hide() - end + end end ---[[ -########################################################## +--[[ +########################################################## CORE FUNCTIONS ########################################################## ]]-- @@ -185,11 +185,11 @@ local function CreateMinionOptions(i) local option = CreateFrame("Frame", "MinionOptionButton"..i, HenchmenFrame) option:SetSize(148,50) - if i==1 then + if i==1 then option:SetPoint("TOPRIGHT",HenchmenFrame,"TOPLEFT",-32,-32) - else + else option:SetPoint("TOP",_G["MinionOptionButton"..lastIndex],"BOTTOM",offsetX,-32) - end + end local setting = options[4]; local dbSet = SV.db.Extras[setting]; @@ -233,11 +233,11 @@ local function CreateMinionOptions(i) else option.indicator:SetTexCoord(0,1,0.5,1) end - + option:SetScript("OnEnter", Tooltip_Show) option:SetScript("OnLeave", Tooltip_Hide) option:SetScript("OnMouseUp", Minion_OnMouseUp) -end +end local function CreateHenchmenOptions(i) local lastIndex = i - 1; @@ -245,11 +245,11 @@ local function CreateHenchmenOptions(i) local offsetX = options[1] local option = CreateFrame("Frame", "HenchmenOptionButton"..i, HenchmenFrame) option:SetSize(148,50) - if i==1 then - option:SetPoint("TOPLEFT",HenchmenFrame,"TOPRIGHT",32,-32) - else + if i==1 then + option:SetPoint("TOP",_G["HenchmenOptionButton0"],"BOTTOM",offsetX,-32) + else option:SetPoint("TOP",_G["HenchmenOptionButton"..lastIndex],"BOTTOM",offsetX,-32) - end + end SV.Animate:Slide(option,500,-500) option:SetFrameStrata("DIALOG") option:SetFrameLevel(24) @@ -276,7 +276,7 @@ local function CreateHenchmenOptions(i) option.ttText = options[3] option:SetScript("OnEnter", Tooltip_Show) option:SetScript("OnLeave", Tooltip_Hide) -end +end local function CreateHenchmenSubOptions(buttonIndex,optionIndex) local parent = _G["HenchmenOptionButton"..buttonIndex] @@ -305,7 +305,7 @@ local function CreateHenchmenSubOptions(buttonIndex,optionIndex) SV.Animate:Slide(frame,500,0) tinsert(SUBOPTIONS,frame) -end +end local function CreateHenchmenFrame() HenchmenFrame:SetParent(UIParent) @@ -346,7 +346,38 @@ local function CreateHenchmenFrame() HenchmenFrameBG:Hide() HenchmenFrameBG:SetScript("OnMouseUp", SV.ToggleHenchman) - for i=1, 5 do + local option = CreateFrame("Frame", "HenchmenOptionButton0", HenchmenFrame) + option:SetSize(148,50) + option:SetPoint("TOPLEFT",HenchmenFrame,"TOPRIGHT",32,0) + SV.Animate:Slide(option,500,-500) + option:SetFrameStrata("DIALOG") + option:SetFrameLevel(24) + option:EnableMouse(true) + option.bg = option:CreateTexture(nil,"BORDER") + option.bg:SetPoint("TOPLEFT",option,"TOPLEFT",-4,4) + option.bg:SetPoint("BOTTOMRIGHT",option,"BOTTOMRIGHT",4,-24) + option.bg:SetTexture(OPTION_RIGHT) + option.bg:SetVertexColor(1,1,1,0.6) + option.txt = option:CreateFontString(nil,"DIALOG") + option.txt:InsetPoints(option) + option.txt:SetFont(SV.media.font.narrator,12,"NONE") + option.txt:SetJustifyH("CENTER") + option.txt:SetJustifyV("MIDDLE") + option.txt:SetText("Random Backdrops!") + option.txt:SetTextColor(0,0,0) + option.txthigh = option:CreateFontString(nil,"HIGHLIGHT") + option.txthigh:InsetPoints(option) + option.txthigh:SetFont(SV.media.font.narrator,12,"OUTLINE") + option.txthigh:SetJustifyH("CENTER") + option.txthigh:SetJustifyV("MIDDLE") + option.txthigh:SetText("Random Backdrops!") + option.txthigh:SetTextColor(0,1,1) + option.ttText = "Set a random texture for all unit frame backdrops!" + option:SetScript("OnEnter", Tooltip_Show) + option:SetScript("OnLeave", Tooltip_Hide) + option:SetScript("OnMouseUp", function() SV.Setup:RandomBackdrops() end) + + for i=1, 5 do CreateHenchmenOptions(i) CreateMinionOptions(i) end @@ -460,7 +491,7 @@ local function CreateHenchmenFrame() ------------------------------------------------------------------------ HenchmenOptionButton5:SetScript("OnMouseUp", ConfigFunc) ------------------------------------------------------------------------ - for _,frame in pairs(SUBOPTIONS) do + for _,frame in pairs(SUBOPTIONS) do frame.anim:Finish() frame:Hide() end @@ -470,11 +501,11 @@ end function SV:ToggleHenchman() - if(InCombatLockdown() or (not SV.HenchmenButton)) then return end + if(InCombatLockdown() or (not SV.HenchmenButton)) then return end if(not SV.PostLoaded) then CreateHenchmenFrame() end - if not HenchmenFrame:IsShown()then + if not HenchmenFrame:IsShown()then HenchmenFrameBG:Show() UpdateHenchmanModel() @@ -487,7 +518,7 @@ function SV:ToggleHenchman() HenchmenCalloutFrame:SetAlpha(1) HenchmenCalloutFrame.anim:Play() UIFrameFadeOut(HenchmenCalloutFrame,5) - for i=1,5 do + for i=1,5 do local option=_G["HenchmenOptionButton"..i] option.anim:Finish() option:Show() @@ -497,14 +528,14 @@ function SV:ToggleHenchman() minion.anim:Finish() minion:Show() minion.anim:Play() - end + end SV.HenchmenButton.Icon:SetGradient(unpack(SV.media.gradient.green)) - else + else UpdateHenchmanModel(true) for _,frame in pairs(SUBOPTIONS)do frame.anim:Finish() frame:Hide() - end + end HenchmenOptionButton1.isopen=false; HenchmenOptionButton2.isopen=false; HenchmenOptionButton3.isopen=false; @@ -513,7 +544,7 @@ function SV:ToggleHenchman() HenchmenFrame.anim:Finish() HenchmenFrame:Hide() HenchmenFrameBG:Hide() - for i=1,5 do + for i=1,5 do local option=_G["HenchmenOptionButton"..i] option.anim:Finish() option:Hide() @@ -521,17 +552,17 @@ function SV:ToggleHenchman() local minion=_G["MinionOptionButton"..i] minion.anim:Finish() minion:Hide() - end + end SV.HenchmenButton.Icon:SetGradient("VERTICAL", 0.5, 0.53, 0.55, 0.8, 0.8, 1) - end + end end ---[[ -########################################################## +--[[ +########################################################## BUILD FUNCTION / UPDATE ########################################################## ]]-- local function LockdownCallback() - if(HenchmenFrameModel and HenchmenFrame and HenchmenFrame:IsShown()) then + if(HenchmenFrameModel and HenchmenFrame and HenchmenFrame:IsShown()) then HenchmenFrame:Hide() HenchmenFrameBG:Hide() end @@ -542,4 +573,4 @@ local function InitializeHenchmen() SV.Events:OnLock(LockdownCallback); end -SV:NewScript(InitializeHenchmen) \ No newline at end of file +SV:NewScript(InitializeHenchmen) diff --git a/SVUI_!Core/system/media.lua b/SVUI_!Core/system/media.lua index 4bd9347..ee7ecc2 100644 --- a/SVUI_!Core/system/media.lua +++ b/SVUI_!Core/system/media.lua @@ -44,6 +44,7 @@ local SV = select(2, ...) local SVUILib = Librarian("Registry") local L = SV.L local classToken = select(2,UnitClass("player")) +SV.MaxUnitBackdrops = 13; --[[ ########################################################## DEFINE SOUND EFFECTS @@ -98,14 +99,11 @@ LSM:Register("background", "SVUI Artwork 2", [[Interface\AddOns\SVUI_!Core\asset LSM:Register("background", "SVUI Artwork 3", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\art\ART3]]) LSM:Register("background", "SVUI Artwork 4", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\art\ART4]]) LSM:Register("background", "SVUI Artwork 5", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\art\ART5]]) -LSM:Register("background", "SVUI UnitBG 1", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-BG1]]) -LSM:Register("background", "SVUI UnitBG 2", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-BG2]]) -LSM:Register("background", "SVUI UnitBG 3", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-BG3]]) -LSM:Register("background", "SVUI UnitBG 4", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-BG4]]) -LSM:Register("background", "SVUI SmallUnitBG 1", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-SMALL-BG1]]) -LSM:Register("background", "SVUI SmallUnitBG 2", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-SMALL-BG2]]) -LSM:Register("background", "SVUI SmallUnitBG 3", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-SMALL-BG3]]) -LSM:Register("background", "SVUI SmallUnitBG 4", [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-SMALL-BG4]]) + +for i = 1, SV.MaxUnitBackdrops do + LSM:Register("background", "SVUI UnitBG "..i, [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-BG]]..i) + LSM:Register("background", "SVUI SmallUnitBG "..i, [[Interface\AddOns\SVUI_!Core\assets\backgrounds\unit\UNIT-SMALL-BG]]..i) +end LSM:Register("border", "SVUI Border", [[Interface\AddOns\SVUI_!Core\assets\borders\DEFAULT]]) LSM:Register("border", "SVUI Border 2", [[Interface\BUTTONS\WHITE8X8]]) @@ -796,6 +794,7 @@ end local function UpdateFontTemplate(template) template = template or "default"; local info = SV.media.shared.font[template]; + if(not info) then return end local file = LSM:Fetch("font", info.file); local size = info.size; local line = info.outline; diff --git a/SVUI_!Core/system/overrides.lua b/SVUI_!Core/system/overrides.lua index 17c32ca..eee8bbc 100644 --- a/SVUI_!Core/system/overrides.lua +++ b/SVUI_!Core/system/overrides.lua @@ -961,7 +961,8 @@ local function UpdateLootingUpvalues() AUTOROLL_ENABLED = SV.db.Extras.autoRoll; AUTOROLL_SOULBOUND = SV.db.Extras.autoRollSoulbound; AUTOROLL_LEVEL = SV.db.Extras.autoRollMaxLevel; - AUTOROLL_QUALITY = SV.db.Extras.autoRollQuality; + local dbQuality = SV.db.Extras.autoRollQuality; + AUTOROLL_QUALITY = tonumber(dbQuality); AUTOROLL_DE = SV.db.Extras.autoRollDisenchant; end diff --git a/SVUI_!Options/SVUI_!Options.lua b/SVUI_!Options/SVUI_!Options.lua index 37dbc8e..b4916a7 100644 --- a/SVUI_!Options/SVUI_!Options.lua +++ b/SVUI_!Options/SVUI_!Options.lua @@ -451,16 +451,24 @@ SV.Options.args.primary = { desc = L["Select an available theme."], func = function() SV.Setup:SelectTheme() SV:ToggleConfig() end }, - ToggleAnchors = { + Backdrops = { order = 3, width = "full", type = "execute", + name = L["Backdrops"], + desc = L["Change unit backdrops to a random texture."], + func = function() SV.Setup:RandomBackdrops() end + }, + ToggleAnchors = { + order = 4, + width = "full", + type = "execute", name = L["Move Frames"], desc = L["Unlock various elements of the UI to be repositioned."], func = function() SV:MoveAnchors() end }, ResetMoveables = { - order = 4, + order = 5, width = "full", type = "execute", name = L["Reset SVUI Anchors"], @@ -468,7 +476,7 @@ SV.Options.args.primary = { func = function() SV:StaticPopup_Show("RESETLAYOUT_CHECK") end }, ResetDraggables = { - order = 5, + order = 6, width = "full", type = "execute", name = L["Reset Blizzard Anchors"], @@ -807,8 +815,8 @@ SV.Options.args.Core = { guiInline = true, name = L["Looting Minions"], desc = L['Minions that can make looting easier by rolling automatically.'], - get = function(j) return SV.db.Extras[key[#key]] end, - set = function(j,value) SV.db.Extras[key[#key]] = value; SV.Events:Trigger("LOOTING_UPVALUES_UPDATED"); end, + get = function(key) return SV.db.Extras[key[#key]] end, + set = function(key,value) SV.db.Extras[key[#key]] = value; SV.Events:Trigger("LOOTING_UPVALUES_UPDATED"); end, disabled = function() return not SV.db.general.lootRoll end, args = { autoRoll = { diff --git a/SVUI_!Options/SVUI_!Options.toc b/SVUI_!Options/SVUI_!Options.toc index d2d109c..7b72f36 100644 --- a/SVUI_!Options/SVUI_!Options.toc +++ b/SVUI_!Options/SVUI_!Options.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cff00FF00!Options|r ## Notes: SVUI [|cff9911FFConfig Options|r] ## RequiredDeps: SVUI_!Core diff --git a/SVUI_ActionBars/SVUI_ActionBars.toc b/SVUI_ActionBars/SVUI_ActionBars.toc index c7af107..5931b8c 100644 --- a/SVUI_ActionBars/SVUI_ActionBars.toc +++ b/SVUI_ActionBars/SVUI_ActionBars.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Action Bars|r ## Notes: Action Bar Plugin for [|cff9911FFSVUI|r]. ## OptionalDeps: LibSharedMedia-3.0, LibActionButton-1.0 diff --git a/SVUI_Auras/SVUI_Auras.toc b/SVUI_Auras/SVUI_Auras.toc index e2e1343..322e7cb 100644 --- a/SVUI_Auras/SVUI_Auras.toc +++ b/SVUI_Auras/SVUI_Auras.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Auras|r ## Notes: Aura Plugin for [|cff9911FFSVUI|r]. ## OptionalDeps: LibSharedMedia-3.0 diff --git a/SVUI_Chat/SVUI_Chat.lua b/SVUI_Chat/SVUI_Chat.lua index aed1ede..a048c62 100644 --- a/SVUI_Chat/SVUI_Chat.lua +++ b/SVUI_Chat/SVUI_Chat.lua @@ -740,8 +740,10 @@ do if(not chat.Panel) then chat:SetStyle("Frame", "Transparent", true, 1, 3, 6) chat.Panel:Hide() + SV:FontManager(chat, "chatdialog", "LEFT") + SV:FontManager(tabText, "chattab") end - if(SV.media.shared.font.chatdialog.outline ~= 'NONE' )then + if(SV.media.shared.font.chatdialog.outline ~= 'NONE' ) then chat:SetShadowColor(0, 0, 0, 0) chat:SetShadowOffset(0, 0) else @@ -753,9 +755,6 @@ do local editBoxName = chatName.."EditBox"; local editBox = _G[editBoxName] ------------------------------------------- - SV:FontManager(chat, "chatdialog", "LEFT") - SV:FontManager(tabText, "chattab") - ------------------------------------------- chat:SetFrameLevel(4) chat:SetClampRectInsets(0, 0, 0, 0) chat:SetClampedToScreen(false) @@ -1138,6 +1137,7 @@ do end local _hook_ChatFontUpdate = function(self, chat, size) + if(C_PetBattles.IsInBattle()) then return end if ( not chat ) then chat = FCF_GetCurrentChatFrame(); end diff --git a/SVUI_Chat/SVUI_Chat.toc b/SVUI_Chat/SVUI_Chat.toc index e5f2b4a..22f89d6 100644 --- a/SVUI_Chat/SVUI_Chat.toc +++ b/SVUI_Chat/SVUI_Chat.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Chat|r ## Notes: Chat Plugin for [|cff9911FFSVUI|r]. ## SavedVariablesPerCharacter: SVUI_Private_ChatCache diff --git a/SVUI_Inventory/SVUI_Inventory.lua b/SVUI_Inventory/SVUI_Inventory.lua index 17b46db..b55a187 100644 --- a/SVUI_Inventory/SVUI_Inventory.lua +++ b/SVUI_Inventory/SVUI_Inventory.lua @@ -1116,12 +1116,7 @@ do local Tooltip_Show = function(self) GameTooltip:SetOwner(self:GetParent(),"ANCHOR_TOP",0,4) GameTooltip:ClearLines() - - if(self.altText and IsShiftKeyDown()) then - GameTooltip:AddLine(self.altText) - else - GameTooltip:AddLine(self.ttText) - end + GameTooltip:AddLine(self.ttText) if self.ttText2 then GameTooltip:AddLine(' ') @@ -1270,9 +1265,8 @@ do frame.sortButton:SetSize(25, 25) StyleBagToolButton(frame.sortButton, MOD.media.cleanupIcon) frame.sortButton.ttText = L["Sort Bags"] - frame.sortButton.altText = L["Filtered Cleanup (Default Sorting)"] - frame.sortButton.ttText2 = L["Hold Alt:"] - frame.sortButton.ttText2desc = L["Default Sorting"] + frame.sortButton.ttText2 = L["[SHIFT + CLICK]"] + frame.sortButton.ttText2desc = L["Filtered Cleanup (Default Sorting)"] frame.sortButton:SetScript("OnEnter", Tooltip_Show) frame.sortButton:SetScript("OnLeave", Tooltip_Hide) local Sort_OnClick = MOD:RunSortingProcess(MOD.Sort, "bags", SortBags) @@ -1420,9 +1414,8 @@ do frame.sortButton:SetSize(25, 25) StyleBagToolButton(frame.sortButton, MOD.media.cleanupIcon) frame.sortButton.ttText = L["Sort Bank"] - frame.sortButton.altText = L["Filtered Cleanup (Default Sorting)"] - frame.sortButton.ttText2 = L["Hold Alt:"] - frame.sortButton.ttText2desc = L["Default Sorting"] + frame.sortButton.ttText2 = L["[SHIFT + CLICK]"] + frame.sortButton.ttText2desc = L["Filtered Cleanup (Default Sorting)"] frame.sortButton:SetScript("OnEnter", Tooltip_Show) frame.sortButton:SetScript("OnLeave", Tooltip_Hide) diff --git a/SVUI_Inventory/SVUI_Inventory.toc b/SVUI_Inventory/SVUI_Inventory.toc index c680413..4f55640 100644 --- a/SVUI_Inventory/SVUI_Inventory.toc +++ b/SVUI_Inventory/SVUI_Inventory.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Inventory|r ## Notes: Inventory Plugin for [|cff9911FFSVUI|r]. ## SavedVariables: SVUI_LootCache diff --git a/SVUI_Inventory/components/sorting.lua b/SVUI_Inventory/components/sorting.lua index f40c1fd..760a735 100644 --- a/SVUI_Inventory/components/sorting.lua +++ b/SVUI_Inventory/components/sorting.lua @@ -868,6 +868,7 @@ function MOD:RunSortingProcess(func, groupsDefaults, altFunc) local bagGroups = {} return function(groups) if(altFunc and IsShiftKeyDown()) then + PlaySound("UI_BagSorting_01"); altFunc() else if SortUpdateTimer:IsShown() then diff --git a/SVUI_Maps/SVUI_Maps.toc b/SVUI_Maps/SVUI_Maps.toc index 8c56832..121caf2 100644 --- a/SVUI_Maps/SVUI_Maps.toc +++ b/SVUI_Maps/SVUI_Maps.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Maps|r ## Notes: Maps Plugin for [|cff9911FFSVUI|r]. ## OptionalDeps: LibSharedMedia-3.0 diff --git a/SVUI_NamePlates/SVUI_NamePlates.toc b/SVUI_NamePlates/SVUI_NamePlates.toc index 79bee12..c7509ab 100644 --- a/SVUI_NamePlates/SVUI_NamePlates.toc +++ b/SVUI_NamePlates/SVUI_NamePlates.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00NamePlates|r ## Notes: NamePlates Plugin for [|cff9911FFSVUI|r]. ## OptionalDeps: LibSharedMedia-3.0 diff --git a/SVUI_QuestTracker/SVUI_QuestTracker.toc b/SVUI_QuestTracker/SVUI_QuestTracker.toc index e4bdfa1..38817e7 100644 --- a/SVUI_QuestTracker/SVUI_QuestTracker.toc +++ b/SVUI_QuestTracker/SVUI_QuestTracker.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00QuestTracker|r ## Notes: QuestTracker Plugin for [|cff9911FFSVUI|r]. ## OptionalDeps: LibSharedMedia-3.0 diff --git a/SVUI_QuestTracker/components/active.lua b/SVUI_QuestTracker/components/active.lua index 921273f..22bbd42 100644 --- a/SVUI_QuestTracker/components/active.lua +++ b/SVUI_QuestTracker/components/active.lua @@ -1,7 +1,7 @@ --[[ ########################################################## S V U I By: Munglunch -########################################################## +########################################################## LOCALIZED LUA FUNCTIONS ########################################################## ]]-- @@ -65,8 +65,8 @@ local GetQuestLogSpecialItemInfo = _G.GetQuestLogSpecialItemInfo; local GetQuestWorldMapAreaID = _G.GetQuestWorldMapAreaID; local GetTimeStringFromSeconds = _G.GetTimeStringFromSeconds; local GetQuestProgressBarPercent = _G.GetQuestProgressBarPercent; ---[[ -########################################################## +--[[ +########################################################## GET ADDON DATA ########################################################## ]]-- @@ -74,8 +74,8 @@ local SV = _G['SVUI'] local L = SV.L local LSM = _G.LibStub("LibSharedMedia-3.0") local MOD = SV.QuestTracker; ---[[ -########################################################## +--[[ +########################################################## LOCALS ########################################################## ]]-- @@ -88,8 +88,8 @@ local OBJ_ICON_ACTIVE = [[Interface\COMMON\Indicator-Yellow]]; local OBJ_ICON_COMPLETE = [[Interface\COMMON\Indicator-Green]]; local OBJ_ICON_INCOMPLETE = [[Interface\COMMON\Indicator-Gray]]; local DEFAULT_COLOR = {r = 1, g = 0.68, b = 0.1} ---[[ -########################################################## +--[[ +########################################################## SCRIPT HANDLERS ########################################################## ]]-- @@ -176,8 +176,8 @@ end local CloseButton_OnLeave = function(self) self:SetBackdropBorderColor(0,0,0,1) end ---[[ -########################################################## +--[[ +########################################################## TRACKER FUNCTIONS ########################################################## ]]-- @@ -200,6 +200,9 @@ local UnsetActiveData = function(self, bypass) -- MOD.QuestItem.Artwork:SetTexture(""); -- MOD.QuestItem:ClearUsage(); -- end + if(block.Badge.StopTracking) then + block.Badge:StopTracking() + end if(not bypass and MOD.Headers["Quests"]) then MOD:UpdateObjectives('FORCED_UPDATE') end @@ -256,8 +259,8 @@ local SetActiveData = function(self, title, level, icon, questID, questLogIndex, end block.Badge.Icon:SetTexture(icon); - if(block.Badge.PostUpdate) then - block.Badge:PostUpdate(questID) + if(block.Badge.StartTracking) then + block.Badge:StartTracking(questID) end self:RefreshHeight() @@ -277,7 +280,7 @@ local RefreshActiveObjective = function(self, event, ...) -- print('<-----ACTIVE') -- print(event) -- print(...) - if(event) then + if(event) then if(event == 'ACTIVE_QUEST_LOADED') then self.ActiveQuestID = 0; self:Set(...) @@ -310,8 +313,8 @@ local RefreshActiveObjective = function(self, event, ...) end end end ---[[ -########################################################## +--[[ +########################################################## CORE FUNCTIONS ########################################################## ]]-- @@ -444,4 +447,4 @@ function MOD:InitializeActive() self:RegisterEvent("SUPER_TRACKED_QUEST_CHANGED", self.UpdateActiveObjective); SV.Events:On("QUEST_UPVALUES_UPDATED", UpdateActiveLocals, true); -end \ No newline at end of file +end diff --git a/SVUI_Skins/SVUI_Skins.toc b/SVUI_Skins/SVUI_Skins.toc index 4713673..6e2d701 100644 --- a/SVUI_Skins/SVUI_Skins.toc +++ b/SVUI_Skins/SVUI_Skins.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch, Azilroka, Sortokk -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Skins|r ## Notes: SVUI [|cff9911FFSkins System and AddOn Frames|r]. ## SavedVariables: SVUIUI_STYLE_GLOBAL diff --git a/SVUI_Tooltip/SVUI_Tooltip.toc b/SVUI_Tooltip/SVUI_Tooltip.toc index 42c93c4..60b3847 100644 --- a/SVUI_Tooltip/SVUI_Tooltip.toc +++ b/SVUI_Tooltip/SVUI_Tooltip.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00Tooltip|r ## Notes: Tooltip Plugin for [|cff9911FFSVUI|r]. ## OptionalDeps: LibSharedMedia-3.0 diff --git a/SVUI_TrackOMatic/SVUI_TrackOMatic.lua b/SVUI_TrackOMatic/SVUI_TrackOMatic.lua index 4536381..69e96ff 100644 --- a/SVUI_TrackOMatic/SVUI_TrackOMatic.lua +++ b/SVUI_TrackOMatic/SVUI_TrackOMatic.lua @@ -1,7 +1,7 @@ --[[ ########################################################## S V U I By: S.Jackson -########################################################## +########################################################## LOCALIZED LUA FUNCTIONS ########################################################## ]]-- @@ -61,8 +61,8 @@ local CUSTOM_CLASS_COLORS = _G.CUSTOM_CLASS_COLORS; _G.BINDING_HEADER_SVUITRACK = "Supervillain UI: Track-O-Matic"; _G.BINDING_NAME_SVUITRACK_DOODAD = "Toggle Tracking Device"; ---[[ -########################################################## +--[[ +########################################################## GET ADDON DATA ########################################################## ]]-- @@ -70,16 +70,16 @@ local SV = _G["SVUI"]; local L = SV.L; local PLUGIN = select(2, ...) local CONFIGS = SV.defaults[PLUGIN.Schema]; ---[[ -########################################################## +--[[ +########################################################## LOCALS ########################################################## ]]-- local NewHook = hooksecurefunc; local playerGUID = UnitGUID('player') local classColor = RAID_CLASS_COLORS ---[[ -########################################################## +--[[ +########################################################## BUILD ########################################################## ]]-- @@ -95,9 +95,9 @@ function SVUIToggleTrackingDoodad() SVUI_UnitTrackingCompass:Hide() SV:AddonMessage("Tracking Device |cffFF0000Disabled|r") end -end ---[[ -########################################################## +end +--[[ +########################################################## MAIN MOVABLE TRACKER ########################################################## ]]-- @@ -131,12 +131,12 @@ local Rotate_Arrow = function(self, angle) ULx = 0.5 + cos(radius) / sqrt2 ULy = 0.5 + sin(radius) / sqrt2 -- 5 - + self.Arrow:SetTexCoord(ULx, ULy, LLx, LLy, URx, URy, LRx, LRy); end local UnitTracker_OnUpdate = function(self, elapsed) - if self.elapsed and self.elapsed > (self.throttle or 0.02) then + if self.elapsed and self.elapsed > (self.throttle or 0.08) then if(self.Trackable) then local distance, angle = TriangulateUnit("target", true) if not angle then @@ -146,7 +146,7 @@ local UnitTracker_OnUpdate = function(self, elapsed) -- self.Border:SetVertexColor(1,0,0,0.15) self.BG:SetVertexColor(1,0,0,0.15) else - self.throttle = 0.02 + self.throttle = 0.08 local range = floor(distance) self:Spin(angle) if(range > 0) then @@ -182,7 +182,7 @@ local UnitTracker_OnUpdate = function(self, elapsed) self.BG:SetAlpha(0) self.Range:SetText("") end - end + end else self:Hide() end @@ -193,9 +193,10 @@ local UnitTracker_OnUpdate = function(self, elapsed) end local QuestTracker_OnUpdate = function(self, elapsed) - if self.elapsed and self.elapsed > (self.throttle or 0.02) then + if self.elapsed and self.elapsed > (self.throttle or 0.08) then if(self.questID) then local distance, angle = TriangulateQuest(self.questID) + --print(angle) if not angle then self.questID = nil self.throttle = 4 @@ -203,7 +204,7 @@ local QuestTracker_OnUpdate = function(self, elapsed) self.BG:SetVertexColor(0.1,0.1,0.1,0) self.Range:SetTextColor(1,1,1,1) else - self.throttle = 0.02 + self.throttle = 0.08 local range = floor(distance) self:Spin(angle) if(range > 25) then @@ -227,9 +228,10 @@ local QuestTracker_OnUpdate = function(self, elapsed) self.BG:SetAlpha(0) self.Range:SetText("") end - end + end else self:Hide() + self:SetScript("OnUpdate", nil) end self.elapsed = 0 else @@ -244,9 +246,11 @@ local StartTrackingQuest = function(self, questID) end self.Compass.questID = questID self.Compass:Show() + self.Compass:SetScript("OnUpdate", QuestTracker_OnUpdate) else self.Compass.questID = nil self.Compass:Hide() + self.Compass:SetScript("OnUpdate", nil) end end @@ -267,15 +271,14 @@ function SV:AddQuestCompass(parent, anchor) compass.Range:SetFontObject(SVUI_Font_Tracking); compass.Range:SetTextColor(1, 1, 1, 0.75) compass.Spin = Rotate_Arrow - - compass:SetScript("OnUpdate", QuestTracker_OnUpdate) compass:Hide() anchor.Compass = compass - anchor.PostUpdate = StartTrackingQuest + anchor.StartTracking = StartTrackingQuest + anchor.StopTracking = function(self) self.Compass:SetScript("OnUpdate", nil) end end ---[[ -########################################################## +--[[ +########################################################## CORE ########################################################## ]]-- @@ -315,4 +318,4 @@ function PLUGIN:Load() end self:EnableGPS() -end \ No newline at end of file +end diff --git a/SVUI_TrackOMatic/components/triangulate.lua b/SVUI_TrackOMatic/components/triangulate.lua index a6d14a8..87d8c0e 100644 --- a/SVUI_TrackOMatic/components/triangulate.lua +++ b/SVUI_TrackOMatic/components/triangulate.lua @@ -360,7 +360,7 @@ local function GetDistance(map1, floor1, x1, y1, map2, floor2, x2, y2) else local mapX = GEOGRAPHICAL_DATA[map1]; local mapY = GEOGRAPHICAL_DATA[map2]; - + if(mapX.system == mapY.system) then x1, y1 = GetCoordinates(mapX, floor1, x1, y1); x2, y2 = GetCoordinates(mapY, floor2, x2, y2); @@ -459,9 +459,10 @@ end --QuestPOIGetIconInfo(questID) _G.TriangulateQuest = function(questID) + --print(questID) if(WorldMapFrame and WorldMapFrame:IsShown()) then return end - local _, plot1, plot2, plot3, plot4, plot5, plot6, plot7, plot8; + local _, debug, plot1, plot2, plot3, plot4, plot5, plot6, plot7, plot8; plot3, plot4 = GetPlayerMapPosition("player"); @@ -485,6 +486,11 @@ _G.TriangulateQuest = function(questID) plot1 = GetCurrentMapAreaID() plot2 = GetCurrentMapDungeonLevel() _, plot7, plot8, _ = QuestPOIGetIconInfo(questID); - if((not plot7) or (not plot8)) then return 0,0 end + if((not plot7) or (not plot8)) then + local mapID, floorNumber = GetQuestWorldMapAreaID(questID) + SetMapByID(mapID) + _, plot7, plot8, _ = QuestPOIGetIconInfo(questID); + if((not plot7) or (not plot8)) then return end + end return GetDistance(plot1, plot2, plot3, plot4, plot1, plot2, plot7, plot8) end diff --git a/SVUI_UnitFrames/SVUI_UnitFrames.toc b/SVUI_UnitFrames/SVUI_UnitFrames.toc index 162f822..7060895 100644 --- a/SVUI_UnitFrames/SVUI_UnitFrames.toc +++ b/SVUI_UnitFrames/SVUI_UnitFrames.toc @@ -1,6 +1,6 @@ ## Interface: 60100 ## Author: Munglunch -## Version: 1.1.8 +## Version: 1.1.9 ## Title: |cffFF9900SuperVillain UI: |r|cffFFEF00UnitFrames|r ## Notes: UnitFrames Plugin for [|cff9911FFSVUI|r]. ## OptionalDeps: LibSharedMedia-3.0 diff --git a/SVUI_UnitFrames/assets/Class/VORTEX.blp b/SVUI_UnitFrames/assets/Class/VORTEX.blp index 88e582e..8c3b469 100644 Binary files a/SVUI_UnitFrames/assets/Class/VORTEX.blp and b/SVUI_UnitFrames/assets/Class/VORTEX.blp differ diff --git a/SVUI_UnitFrames/class_resources/druid.lua b/SVUI_UnitFrames/class_resources/druid.lua index 2877ddc..18553aa 100644 --- a/SVUI_UnitFrames/class_resources/druid.lua +++ b/SVUI_UnitFrames/class_resources/druid.lua @@ -159,25 +159,6 @@ end DRUID ECLIPSE BAR ########################################################## ]]-- -local SFXUpdate = function(sfx) - if (value and value == 1) then - if(self.overlay) then - self.overlay:Show() - SV.Animate:Flash(self.overlay,1,true) - end - if(not self.FX:IsShown()) then - self.FX:Show() - end - self.FX:UpdateEffect() - else - if(self.overlay) then - SV.Animate:StopFlash(self.overlay) - self.overlay:Hide() - end - self.FX:Hide() - end -end - local EclipseDirection = function(self) local status = GetEclipseDirection() diff --git a/SVUI_UnitFrames/class_resources/shaman.lua b/SVUI_UnitFrames/class_resources/shaman.lua index 6a7a17c..1808b6d 100644 --- a/SVUI_UnitFrames/class_resources/shaman.lua +++ b/SVUI_UnitFrames/class_resources/shaman.lua @@ -49,10 +49,16 @@ local totemTextures = { [AIR_TOTEM_SLOT] = [[Interface\Addons\SVUI_UnitFrames\assets\Class\SHAMAN-AIR]], }; -SV.SpecialFX:Register("shaman_fire", [[Spells\Bloodlust_state_hand.m2]], -8, 8, 8, -8, 0.23, 0.05, -0.1) -SV.SpecialFX:Register("shaman_earth", [[Spells\Sand_precast_hand.m2]], -8, 8, 8, -8, 0.23, 0, -0.12) -SV.SpecialFX:Register("shaman_air", [[Spells\Holylight_impact_head.m2]], -8, 8, 8, -8, 0.8, 0, -0.4) -SV.SpecialFX:Register("shaman_water", [[Spells\Monk_drunkenhaze_impact.m2]], 0, 0, 0, 0, 0.00001, 0.02, 0) +-- [[Spells\Flowingwater_high.m2]] +-- [[Spells\Cyclonewater_state.m2]] +-- [[Spells\Shaman_water_precast.m2]] +-- [[Spells\Monk_rushingjadewind_grey.m2]] +-- [[Spells\Missile_bomb.m2]] + +SV.SpecialFX:Register("shaman_fire", [[Spells\Bloodlust_state_hand.m2]], -8, 16, 8, -16, 0.23, 0.05, -0.1) +SV.SpecialFX:Register("shaman_earth", [[Spells\Sand_precast_hand.m2]], -8, 16, 8, -16, 0.20, -0.04, -0.08) +SV.SpecialFX:Register("shaman_air", [[Spells\Monk_rushingjadewind_grey.m2]], -8, 16, 8, -16, 1.8, 0, 2) +SV.SpecialFX:Register("shaman_water", [[Spells\Flowingwater_high.m2]], -8, 16, 8, -16, 0.008, -0.02, -0.22) local specEffects = { [EARTH_TOTEM_SLOT] = "shaman_earth", [FIRE_TOTEM_SLOT] = "shaman_fire", @@ -85,14 +91,14 @@ local Reposition = function(self) bar:ClearAllPoints() bar:SetAllPoints(bar.Holder) for i = 1, totemMax do - bar[i]:ClearAllPoints() - bar[i]:SetHeight(size) - bar[i]:SetWidth(size) + bar[i].holder:ClearAllPoints() + bar[i].holder:SetHeight(size) + bar[i].holder:SetWidth(size) bar[i]:GetStatusBarTexture():SetHorizTile(false) if i==1 then - bar[i]:SetPoint("TOPLEFT", bar, "TOPLEFT", 0, 0) + bar[i].holder:SetPoint("TOPLEFT", bar, "TOPLEFT", 0, 0) else - bar[i]:SetPoint("LEFT", bar[i - 1], "RIGHT", -1, 0) + bar[i].holder:SetPoint("LEFT", bar[i - 1].holder, "RIGHT", -1, 0) end end end @@ -101,25 +107,47 @@ end SHAMAN ########################################################## ]]-- +local SFXUpdate = function(self, value) + if(not value) then return end + if(not self.FX:IsShown()) then + if(value > 0.02) then + self.FX:Show() + self.FX:UpdateEffect() + end + elseif(value <= 0.02) then + self.FX:Hide() + end +end + function MOD:CreateClassBar(playerFrame) local bar = CreateFrame("Frame",nil,playerFrame) bar:SetFrameLevel(playerFrame.TextGrip:GetFrameLevel() + 30) for i=1, totemMax do local iconfile = totemTextures[totemPriorities[i]] - bar[i] = CreateFrame("StatusBar",nil,bar) + local holder = CreateFrame("Frame", nil, bar) + holder:SetFrameLevel(bar:GetFrameLevel() - 1) + + bar[i] = CreateFrame("StatusBar",nil,holder) + bar[i]:SetAllPoints(holder) bar[i]:SetStatusBarTexture(iconfile) bar[i]:GetStatusBarTexture():SetHorizTile(false) bar[i]:SetOrientation("VERTICAL") + bar[i]:SetFrameLevel(bar:GetFrameLevel() + 1) + hooksecurefunc(bar[i], "SetValue", SFXUpdate) bar[i].noupdate=true; - bar[i].backdrop = bar[i]:CreateTexture(nil,"BACKGROUND") - bar[i].backdrop:SetAllPoints(bar[i]) + + bar[i].backdrop = holder:CreateTexture(nil,"BACKGROUND") + bar[i].backdrop:SetAllPoints(holder) bar[i].backdrop:SetTexture(iconfile) bar[i].backdrop:SetDesaturated(true) bar[i].backdrop:SetVertexColor(0.2,0.2,0.2,0.7) + bar[i]:EnableMouse(true) - --SV.SpecialFX:SetFXFrame(bar[i], specEffects[totemPriorities[i]], true) - --bar[i].FX:SetFrameLevel(bar:GetFrameLevel() - 2) + bar[i].holder = holder + + SV.SpecialFX:SetFXFrame(bar[i], specEffects[totemPriorities[i]], true) + bar[i].FX:SetFrameLevel(bar:GetFrameLevel()) end local classBarHolder = CreateFrame("Frame", "Player_ClassBar", bar)