diff --git a/Interface/AddOns/SVUI/SVUI.lua b/Interface/AddOns/SVUI/SVUI.lua deleted file mode 100644 index f17e95e..0000000 --- a/Interface/AddOns/SVUI/SVUI.lua +++ /dev/null @@ -1,366 +0,0 @@ ---[[ -############################################################################## -_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_ # - ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__ # - __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____ # - ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____ # - ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____ # - _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____ # - __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ # - _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_# - ___\///////////___________\///___________\/////////_____\///////////_# -############################################################################## -S U P E R - V I L L A I N - U I By: Munglunch # -############################################################################## ]]-- - ---[[ GLOBALS ]]-- - -local _G = _G; ---LUA -local unpack = _G.unpack; -local select = _G.select; -local assert = _G.assert; -local type = _G.type; -local error = _G.error; -local pcall = _G.pcall; -local print = _G.print; -local ipairs = _G.ipairs; -local pairs = _G.pairs; -local next = _G.next; -local rawset = _G.rawset; -local rawget = _G.rawget; -local tostring = _G.tostring; -local tonumber = _G.tonumber; -local getmetatable = _G.getmetatable; -local setmetatable = _G.setmetatable; ---STRING -local string = _G.string; -local upper = string.upper; -local format = string.format; -local find = string.find; -local match = string.match; -local gsub = string.gsub; ---MATH -local math = _G.math; -local floor = math.floor ---TABLE -local table = _G.table; -local tsort = table.sort; -local tconcat = table.concat; -local tinsert = _G.tinsert; -local tremove = _G.tremove; -local twipe = _G.wipe; ---BLIZZARD API -local ReloadUI = _G.ReloadUI; -local GetLocale = _G.GetLocale; -local CreateFrame = _G.CreateFrame; -local IsAddOnLoaded = _G.IsAddOnLoaded; -local InCombatLockdown = _G.InCombatLockdown; -local GetAddOnInfo = _G.GetAddOnInfo; -local LoadAddOn = _G.LoadAddOn; -local SendAddonMessage = _G.SendAddonMessage; -local LibStub = _G.LibStub; -local GetAddOnMetadata = _G.GetAddOnMetadata; -local GetCVarBool = _G.GetCVarBool; -local GameTooltip = _G.GameTooltip; -local StaticPopup_Hide = _G.StaticPopup_Hide; -local ERR_NOT_IN_COMBAT = _G.ERR_NOT_IN_COMBAT; - ---[[ CONSTANTS ]]-- - -_G.BINDING_HEADER_SVUI = "Supervillain UI"; -_G.BINDING_NAME_SVUI_MARKERS = "Raid Markers"; -_G.BINDING_NAME_SVUI_DOCKS = "Toggle Docks"; -_G.BINDING_NAME_SVUI_RIDE = "Let's Ride"; - -_G.SlashCmdList.RELOADUI = ReloadUI -_G.SLASH_RELOADUI1 = "/rl" -_G.SLASH_RELOADUI2 = "/reloadui" - ---[[ GET THE REGISTRY LIB ]]-- - -local SVLib = _G.LibSuperVillain; - ---[[ LOCALS ]]-- - -local callbacks = {}; -local numCallbacks = 0; -local playerClass = select(2, UnitClass("player")); - -local actualWidth, actualHeight = UIParent:GetSize() - ---[[ CLASS COLOR LOCALS ]]-- - -local function RegisterCallback(self, m, h) - assert(type(m) == "string" or type(m) == "function", "Bad argument #1 to :RegisterCallback (string or function expected)") - if type(m) == "string" then - assert(type(h) == "table", "Bad argument #2 to :RegisterCallback (table expected)") - assert(type(h[m]) == "function", "Bad argument #1 to :RegisterCallback (m \"" .. m .. "\" not found)") - m = h[m] - end - callbacks[m] = h or true - numCallbacks = numCallbacks + 1 -end - -local function UnregisterCallback(self, m, h) - assert(type(m) == "string" or type(m) == "function", "Bad argument #1 to :UnregisterCallback (string or function expected)") - if type(m) == "string" then - assert(type(h) == "table", "Bad argument #2 to :UnregisterCallback (table expected)") - assert(type(h[m]) == "function", "Bad argument #1 to :UnregisterCallback (m \"" .. m .. "\" not found)") - m = h[m] - end - callbacks[m] = nil - numCallbacks = numCallbacks + 1 -end - -local function DispatchCallbacks() - if (numCallbacks < 1) then return end - for m, h in pairs(callbacks) do - local ok, err = pcall(m, h ~= true and h or nil) - if not ok then - print("ERROR:", err) - end - end -end - ---[[ BUILD CLASS COLOR GLOBAL ]]-- - -local SVUI_CLASS_COLORS; - -do - local env = getfenv(0) - env.SVUI_CLASS_COLORS = {} - SVUI_CLASS_COLORS = env.SVUI_CLASS_COLORS - - local classes = {}; - local supercolors = { - ["HUNTER"] = { r = 0.454, g = 0.698, b = 0 }, - ["WARLOCK"] = { r = 0.286, g = 0, b = 0.788 }, - ["PRIEST"] = { r = 0.976, g = 1, b = 0.839 }, - ["PALADIN"] = { r = 0.956, g = 0.207, b = 0.733 }, - ["MAGE"] = { r = 0, g = 0.796, b = 1 }, - ["ROGUE"] = { r = 1, g = 0.894, b = 0.117 }, - ["DRUID"] = { r = 1, g = 0.513, b = 0 }, - ["SHAMAN"] = { r = 0, g = 0.38, b = 1 }, - ["WARRIOR"] = { r = 0.698, g = 0.36, b = 0.152 }, - ["DEATHKNIGHT"] = { r = 0.847, g = 0.117, b = 0.074 }, - ["MONK"] = { r = 0.015, g = 0.886, b = 0.38 }, - }; - for class in pairs(RAID_CLASS_COLORS) do - tinsert(classes, class) - end - tsort(classes) - setmetatable(SVUI_CLASS_COLORS,{ - __index = function(t, k) - if k == "RegisterCallback" then return RegisterCallback end - if k == "UnregisterCallback" then return UnregisterCallback end - if k == "DispatchCallbacks" then return DispatchCallbacks end - end - }); - for i, class in ipairs(classes) do - local color = supercolors[class] - local r, g, b = color.r, color.g, color.b - local hex = ("ff%02x%02x%02x"):format(r * 255, g * 255, b * 255) - if not SVUI_CLASS_COLORS[class] or not SVUI_CLASS_COLORS[class].r or not SVUI_CLASS_COLORS[class].g or not SVUI_CLASS_COLORS[class].b then - SVUI_CLASS_COLORS[class] = { - r = r, - g = g, - b = b, - colorStr = hex, - } - end - end - classes = nil -end - ---[[ CORE ENGINE CONSTRUCT ]]-- - -local messagePattern = "|cffFF2F00%s:|r"; -local debugPattern = "|cffFF2F00%s|r [|cff992FFF%s|r]|cffFF2F00:|r"; -local errorPattern = "|cffff0000Error -- |r|cffff9900Required addon '|r|cffffff00%s|r|cffff9900' is %s.|r" - -local function _sendmessage(msg, prefix) - if(type(msg) == "table") then - msg = tostring(msg) - end - if(not msg) then return end - if(prefix) then - local outbound = ("%s %s"):format(prefix, msg); - print(outbound) - else - print(msg) - end -end - -local Core_DeadFunction = function() return end - -local Core_StaticPopup_Show = function(self, arg) - if arg == "ADDON_ACTION_FORBIDDEN" then - StaticPopup_Hide(arg) - end -end - -local Core_Debugger = function(self, msg) - if(not self.DebugMode) then return end - local outbound = (debugPattern):format(self.NameID, "DEBUG") - _sendmessage(msg, outbound) -end - -local Core_AddonMessage = function(self, msg) - local outbound = (messagePattern):format(self.NameID) - _sendmessage(msg, outbound) -end - -local Core_ResetAllUI = function(self, confirmed) - if InCombatLockdown()then - SendAddonMessage(ERR_NOT_IN_COMBAT) - return - end - if(not confirmed) then - self:StaticPopup_Show('RESET_UI_CHECK') - return - end - self.Setup:Reset() -end - -local Core_ResetUI = function(self, confirmed) - if InCombatLockdown()then - SendAddonMessage(ERR_NOT_IN_COMBAT) - return - end - if(not confirmed) then - self:StaticPopup_Show('RESETMOVERS_CHECK') - return - end - self.Mentalo:Reset() -end - -local Core_ImportProfile = function(self, key) - self.SystemAlert["COPY_PROFILE_PROMPT"].text = "Are you sure you want to copy the profile '" .. key .. "'?" - self.SystemAlert["COPY_PROFILE_PROMPT"].OnAccept = function() SVLib:ImportDatabase(key) end - self:StaticPopup_Show("COPY_PROFILE_PROMPT") -end - -local Core_ToggleConfig = function(self) - if InCombatLockdown() then - SendAddonMessage(ERR_NOT_IN_COMBAT) - self.UIParent:RegisterEvent('PLAYER_REGEN_ENABLED') - return - end - if not IsAddOnLoaded(self.ConfigID) then - local _,_,_,_,_,state = GetAddOnInfo(self.ConfigID) - if state ~= "MISSING" and state ~= "DISABLED" then - LoadAddOn(self.ConfigID) - local config_version = GetAddOnMetadata(self.ConfigID, "Version") - if(tonumber(config_version) < 4) then - self:StaticPopup_Show("CLIENT_UPDATE_REQUEST") - end - else - local errorMessage = (errorPattern):format(self.ConfigID, state) - self:AddonMessage(errorMessage) - return - end - end - local aceConfig = LibStub("AceConfigDialog-3.0") - local switch = not aceConfig.OpenFrames[self.NameID] and "Open" or "Close" - aceConfig[switch](aceConfig, self.NameID) - GameTooltip:Hide() -end - -local Core_TaintHandler = function(self, taint, sourceName, sourceFunc) - if GetCVarBool('scriptErrors') ~= 1 then return end - local errorString = ("Error Captured: %s->%s->{%s}"):format(taint, sourceName or "Unknown", sourceFunc or "Unknown") - self:AddonMessage(errorString) - self:StaticPopup_Show("TAINT_RL") -end ---[[ -##################################################################################### - /$$$$$$ /$$ /$$ /$$ /$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$$ /$$$$$$$$ - /$$__ $$| $$ | $$| $$ | $$|_ $$_/ /$$__ $$ /$$__ $$| $$__ $$| $$_____/ -| $$ \__/| $$ | $$| $$ | $$ | $$ | $$ \__/| $$ \ $$| $$ \ $$| $$ -| $$$$$$ | $$ / $$/| $$ | $$ | $$ | $$ | $$ | $$| $$$$$$$/| $$$$$ - \____ $$ \ $$ $$/ | $$ | $$ | $$ | $$ | $$ | $$| $$__ $$| $$__/ - /$$ \ $$ \ $$$/ | $$ | $$ | $$ | $$ $$| $$ | $$| $$ \ $$| $$ -| $$$$$$/ \ $/ | $$$$$$/ /$$$$$$ | $$$$$$/| $$$$$$/| $$ | $$| $$$$$$$$ - \______/ \_/ \______/ |______/ \______/ \______/ |__/ |__/|________/ -##################################################################################### -]]-- - ---[[ INITIALIZE THE CORE OBJECT ]]-- - --- We have to send the names of our three SavedVariables files since the WoW API --- has no method for parsing them in LUA. -local SVUI = SVLib:NewCore("SVUI_Global", "SVUI_Profile", "SVUI_Cache") - -SVUI.ConfigID = "SVUI_ConfigOMatic"; - -SVUI.Media = {} - -SVUI.class = playerClass -SVUI.ClassRole = "" -SVUI.UnitRole = "NONE" -SVUI.ConfigurationMode = false -SVUI.EffectiveScale = 1 -SVUI.ActualHeight = actualHeight -SVUI.ActualWidth = actualWidth -SVUI.yScreenArea = (actualHeight * 0.33) -SVUI.xScreenArea = (actualWidth * 0.33) - -SVUI.fubar = Core_DeadFunction -SVUI.ResetAllUI = Core_ResetAllUI -SVUI.ResetUI = Core_ResetUI -SVUI.ToggleConfig = Core_ToggleConfig -SVUI.TaintHandler = Core_TaintHandler -SVUI.ImportProfile = Core_ImportProfile -SVUI.AddonMessage = Core_AddonMessage -SVUI.Debugger = Core_Debugger -SVUI.StaticPopup_Show = Core_StaticPopup_Show - ---[[ UTILITY FRAMES ]]-- - -SVUI.UIParent = CreateFrame("Frame", "SVUIParent", UIParent); -SVUI.UIParent:SetFrameLevel(UIParent:GetFrameLevel()); -SVUI.UIParent:SetPoint("CENTER", UIParent, "CENTER"); -SVUI.UIParent:SetSize(UIParent:GetSize()); - -SVUI.Cloaked = CreateFrame("Frame", nil, UIParent); -SVUI.Cloaked:Hide(); - -SVUI.Options = { - type = "group", - name = "|cff339fffConfig-O-Matic|r", - args = { - plugins = { - order = -2, - type = "group", - name = "Plugins", - childGroups = "tab", - args = { - pluginheader = { - order = 1, - type = "header", - name = "Supervillain Plugins", - }, - pluginOptions = { - order = 2, - type = "group", - name = "", - args = { - pluginlist = { - order = 1, - type = "group", - name = "Summary", - args = { - active = { - order = 1, - type = "description", - name = function() return SVLib:GetPlugins() end - } - } - }, - } - } - } - } - } -} \ No newline at end of file diff --git a/Interface/AddOns/SVUI/SVUI.toc b/Interface/AddOns/SVUI/SVUI.toc index 572cf9a..88c0c52 100644 --- a/Interface/AddOns/SVUI/SVUI.toc +++ b/Interface/AddOns/SVUI/SVUI.toc @@ -1,6 +1,6 @@ ## Interface: 60000 ## Author: Munglunch -## Version: 4.9 +## Version: 5.0 ## Title: |cffFF9900SVUI|r ## Notes: Supervillain UI [|cff9911FFCore Framework|r]. ## SavedVariables: SVUI_Global diff --git a/Interface/AddOns/SVUI/SVUI.xml b/Interface/AddOns/SVUI/SVUI.xml index 4a6cce4..539bb14 100644 --- a/Interface/AddOns/SVUI/SVUI.xml +++ b/Interface/AddOns/SVUI/SVUI.xml @@ -1,60 +1,9 @@ <Ui xmlns="http://www.blizzard.com/wow/ui/"> - - <Include file="libs\libs.xml"/> - - <Script file="language\english_ui.lua"/> - <Script file="language\italian_ui.lua"/> - <Script file="language\french_ui.lua"/> - <Script file="language\russian_ui.lua"/> - <Script file="language\german_ui.lua"/> - <Script file="language\taiwanese_ui.lua"/> - <Script file="language\spanish_ui.lua"/> - <Script file="language\korean_ui.lua"/> - <Script file="language\chinese_ui.lua"/> - <Script file="language\portuguese_ui.lua"/> - - <Include file="xml\system.xml"/> - - <Script file="SVUI.lua"/> - - <Script file="setup\configs.lua"/> - <Script file="setup\installer.lua"/> - <Script file="setup\presets.lua"/> - - <Script file="system\media.lua"/> - <Script file="system\utilities.lua"/> - <Script file="system\animate.lua"/> - <Script file="system\common.lua"/> - <Script file="system\visibility.lua"/> - <Script file="system\timers.lua"/> - <Script file="system\slash.lua"/> - <Script file="system\alerts.lua"/> - <Script file="system\moveable.lua"/> - <Script file="system\mentalo.lua"/> - - <Include file="packages\stats\SVStats.xml"/> - <Script file="packages\dock\SVDock.lua"/> - <Include file="packages\aura\SVAura.xml"/> - <Script file="packages\map\SVMap.lua"/> - <Include file="packages\plates\SVPlate.xml"/> - <Script file="packages\tip\SVTip.lua"/> - <Script file="packages\actionbar\SVBar.lua"/> - <Script file="packages\actionbar\KeyBind.lua"/> - <Include file="packages\unit\SVUnit.xml"/> - <Script file="packages\chat\SVChat.lua"/> - <Include file="packages\bag\SVBag.xml"/> - <Script file="packages\override\SVOverride.lua"/> - <Script file="packages\gear\SVGear.lua"/> - <Script file="packages\henchmen\SVHenchmen.lua"/> - - <Script file="scripts\misc.lua"/> - <Script file="scripts\mounts.lua"/> - <Script file="scripts\comix.lua"/> - <Script file="scripts\questwatch.lua"/> - <Script file="scripts\raid.lua"/> - <Script file="scripts\reactions.lua"/> - <Script file="scripts\spellbind.lua"/> - <Script file="scripts\ego.lua"/> - - <Script file="system\load.lua"/> + <Include file="libs\_load.xml"/> + <Include file="language\_load.xml"/> + <Include file="xml\_load.xml"/> + <Include file="system\_load.xml"/> + <Include file="setup\_load.xml"/> + <Include file="packages\_load.xml"/> + <Include file="scripts\_load.xml"/> </Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE1.blp b/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE1.blp new file mode 100644 index 0000000..4708961 Binary files /dev/null and b/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE1.blp differ diff --git a/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE2.blp b/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE2.blp new file mode 100644 index 0000000..0c2d73c Binary files /dev/null and b/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE2.blp differ diff --git a/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE3.blp b/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE3.blp new file mode 100644 index 0000000..5a1faae Binary files /dev/null and b/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE3.blp differ diff --git a/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE4.blp b/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE4.blp new file mode 100644 index 0000000..6e48aac Binary files /dev/null and b/Interface/AddOns/SVUI/assets/artwork/Template/Panes/COMIC-PANE4.blp differ diff --git a/Interface/AddOns/SVUI/language/_load.xml b/Interface/AddOns/SVUI/language/_load.xml new file mode 100644 index 0000000..4e44749 --- /dev/null +++ b/Interface/AddOns/SVUI/language/_load.xml @@ -0,0 +1,12 @@ +<Ui xmlns="http://www.blizzard.com/wow/ui/"> + <Script file="english_ui.lua"/> + <Script file="italian_ui.lua"/> + <Script file="french_ui.lua"/> + <Script file="russian_ui.lua"/> + <Script file="german_ui.lua"/> + <Script file="taiwanese_ui.lua"/> + <Script file="spanish_ui.lua"/> + <Script file="korean_ui.lua"/> + <Script file="chinese_ui.lua"/> + <Script file="portuguese_ui.lua"/> +</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/language/chinese_ui.lua b/Interface/AddOns/SVUI/language/chinese_ui.lua index 53efbcc..77be406 100644 --- a/Interface/AddOns/SVUI/language/chinese_ui.lua +++ b/Interface/AddOns/SVUI/language/chinese_ui.lua @@ -1,5 +1,8 @@ local L = _G.LibSuperVillain:Lang("zhCN"); if not L then return end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "歡迎使用 |cffFFFF1ASupervillain UI|r! 让您的 %s 和你 %s." +L["LOGIN_MSG2"] = "|cffAA78FF%s|r 版, 請輸入/sv 進入設定介面." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -110,7 +113,6 @@ L["THE_BUTTON_BELOW"] = "THE\nBUTTON\nBELOW"; L["Meanwhile..."]=true; L["..at "]=true; L["INCOMPATIBLE_ADDON"]="插件 %s 不相容于 SVUI 的 %s 模组。请停用不相容的插件,或停用模组。" -L["LOGIN_MSG"]="欢迎使用 %sSVUI|r %s%s|r 版,请输入 /sv 进入设定介面。如需技术支援,请至 http://www.wowinterface.com" L["Binding"]="绑定" L["Key"]="键" L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/language/english_ui.lua b/Interface/AddOns/SVUI/language/english_ui.lua index 9211ac5..42b63ea 100644 --- a/Interface/AddOns/SVUI/language/english_ui.lua +++ b/Interface/AddOns/SVUI/language/english_ui.lua @@ -1,5 +1,8 @@ local L = _G.LibSuperVillain:Lang("enUS", true); if not L then return; end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "Welcome to |cffFFFF1ASupervillain UI|r! Keep your %s and your %s." +L["LOGIN_MSG2"] = "Version |cffAA78FF%s|r, type /sv to access the in-game configuration menu." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -110,7 +113,6 @@ L["THE_BUTTON_BELOW"] = "THE\nBUTTON\nBELOW"; L["Meanwhile..."]=true; L["..at "]=true; L["INCOMPATIBLE_ADDON"]="The addon %s is not compatible with SVUI's %s package. Please select either the addon or the SVUI package to disable."; -L["LOGIN_MSG"]="Welcome to %sSupervillain UI|r version %s%s|r, type /sv to access the in-game configuration menu." L["Binding"]=true; L["Key"]=true; L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/language/french_ui.lua b/Interface/AddOns/SVUI/language/french_ui.lua index 6dd382c..d5f51b8 100644 --- a/Interface/AddOns/SVUI/language/french_ui.lua +++ b/Interface/AddOns/SVUI/language/french_ui.lua @@ -1,5 +1,8 @@ local L = _G.LibSuperVillain:Lang("frFR"); if not L then return; end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "Bienvenue sur |cffFFFF1ASupervillain UI|r! Gardez votre %s et votre %s." +L["LOGIN_MSG2"] = "Version |cffAA78FF%s|r, tapez /sv afin d'accéder au menu de configuration en jeu." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -111,7 +114,6 @@ L["Meanwhile..."]=true; L["..at "]=true; L["A taint has occured that is preventing you from using the queue system. Please reload your user interface and try again."]="Une alteration s'est produite et vous empêche d'utiliser la file d'attente. Veuillez recharger votre interface utilisateur et essayer à nouveau." L["INCOMPATIBLE_ADDON"]="L'addon %s n'est pas compatible avec le package %s d'SVUI. S'il vous plait, selectionnez soit l'addon ou le package d'SVUI pour le désactiver." -L["LOGIN_MSG"]="Bienvenue sur %sSVUI|r version %s%s|r, tapez /sv afin d'accéder au menu de configuration en jeu. Si vous avez besoin d'un support technique, vous pouvez nous rejoindre sur http://www.wowinterface.com" L["Binding"]="Raccourcis" L["Key"]="Touche" L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/language/german_ui.lua b/Interface/AddOns/SVUI/language/german_ui.lua index 6cadd3a..fc3ac5c 100644 --- a/Interface/AddOns/SVUI/language/german_ui.lua +++ b/Interface/AddOns/SVUI/language/german_ui.lua @@ -1,5 +1,8 @@ local L = _G.LibSuperVillain:Lang("deDE"); if not L then return end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "Willkommen zu |cffFFFF1ASupervillain UI|r! halten Sie Ihre %s und Ihre %s." +L["LOGIN_MSG2"] = "Version |cffAA78FF%s|r, Tippe /sv um das Konfigurationsmenü aufzurufen." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -111,7 +114,6 @@ L["Meanwhile..."]=true; L["..at "]=true; L["A taint has occured that is preventing you from using the queue system. Please reload your user interface and try again."]=true; L["INCOMPATIBLE_ADDON"]="Das Addon %s ist nicht mit dem SVUI %s Modul kompatibel. Bitte deaktiviere entweder das Addon oder deaktiviere das SVUI Modul." -L["LOGIN_MSG"]="Willkommen zu %sSVUI|r Version %s%s|r, Tippe /sv um das Konfigurationsmenü aufzurufen. Für technische Hilfe, besuche das Supportforum unter http://www.wowinterface.com" L["Binding"]="Belegung" L["Key"]="Taste" L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/language/italian_ui.lua b/Interface/AddOns/SVUI/language/italian_ui.lua index 1a993cd..66eeb36 100644 --- a/Interface/AddOns/SVUI/language/italian_ui.lua +++ b/Interface/AddOns/SVUI/language/italian_ui.lua @@ -1,5 +1,8 @@ local L = _G.LibSuperVillain:Lang("itIT"); if not L then return; end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "Benvenuti a |cffFFFF1ASupervillain UI|r! Mantenete il vostro %s e il vostro %s." +L["LOGIN_MSG2"] = "versione |cffAA78FF%s|r, Tipo / sv per accedere al menu di configurazione in-game." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -111,7 +114,6 @@ L["Meanwhile..."]=true; L["..at "]=true; L["A taint has occured that is preventing you from using the queue system. Please reload your user interface and try again."]=true; L["INCOMPATIBLE_ADDON"]="The addon %s is not compatible with SVUI's %s package. Please select either the addon or the SVUI package to disable." -L["LOGIN_MSG"]="Welcome to %sSVUI|r version %s%s|r, type /sv to access the in-game configuration menu. If you are in need of technical support you can visit us at http://www.wowinterface.com" L["Binding"]=true; L["Key"]=true; L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/language/korean_ui.lua b/Interface/AddOns/SVUI/language/korean_ui.lua index d0c5665..30cea20 100644 --- a/Interface/AddOns/SVUI/language/korean_ui.lua +++ b/Interface/AddOns/SVUI/language/korean_ui.lua @@ -1,5 +1,8 @@ local L = _G.LibSuperVillain:Lang("koKR"); if not L then return; end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "|cffFFFF1AUI를 악당|r에 오신 것을 환영합니다! 귀하의 유지 %s 당신을 %s." +L["LOGIN_MSG2"] = "버전 |cffAA78FF%s|r, 유형 /sv 는 게임의 구성 메뉴에 액세스합니다." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -111,7 +114,6 @@ L["Meanwhile..."]=true; L["..at "]=true; L["A taint has occured that is preventing you from using the queue system. Please reload your user interface and try again."]=true; L["INCOMPATIBLE_ADDON"]="The addon %s is not compatible with SVUI's %s package. Please select either the addon or the SVUI package to disable." -L["LOGIN_MSG"]="Welcome to %sSVUI|r version %s%s|r, type /sv to access the in-game configuration menu. If you are in need of technical support you can visit us at http://www.wowinterface.com" L["Binding"]="단축키 지정" L["Key"]="단축키" L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/language/portuguese_ui.lua b/Interface/AddOns/SVUI/language/portuguese_ui.lua index 1126daa..1bc2bd0 100644 --- a/Interface/AddOns/SVUI/language/portuguese_ui.lua +++ b/Interface/AddOns/SVUI/language/portuguese_ui.lua @@ -1,5 +1,8 @@ local L = _G.LibSuperVillain:Lang("ptBR"); if not L then return; end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "Bem vindo à |cffFFFF1ASupervillain UI|r! Manter o seu %s e seu %s." +L["LOGIN_MSG2"] = "Versão |cffAA78FF%s|r, escreva /sv para acessar o menu de configuração em jogo." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -111,7 +114,6 @@ L["Meanwhile..."]=true; L["..at "]=true; L["A taint has occured that is preventing you from using the queue system. Please reload your user interface and try again."]="Um erro aconteceu que está previnindo você de usar o sistema de fila. Por favor recarregue sua interface e tente novamente." L["INCOMPATIBLE_ADDON"]="The addon %s is not compatible with SVUI's %s package. Please select either the addon or the SVUI package to disable." -L["LOGIN_MSG"]="Bem vindo à versão %s%s|r da %sSVUI|r, escreva /sv para acessar o menu de configuração em jogo. Se precisar de suporte técnico visite-nos no site http://www.wowinterface.com" L["Binding"]="Ligações" L["Key"]="Tecla" L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/language/russian_ui.lua b/Interface/AddOns/SVUI/language/russian_ui.lua index 14aec3f..9962fb7 100644 --- a/Interface/AddOns/SVUI/language/russian_ui.lua +++ b/Interface/AddOns/SVUI/language/russian_ui.lua @@ -1,5 +1,8 @@ local L = _G.LibSuperVillain:Lang("ruRU"); if not L then return; end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "обро пожаловать в |cffFFFF1ASupervillain UI|r! Держите свои %s и ваши %s." +L["LOGIN_MSG2"] = "Версия |cffAA78FF%s|r, наберите /sv для доступа в меню настроек." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -111,7 +114,6 @@ L["Meanwhile..."]=true; L["..at "]=true; L["A taint has occured that is preventing you from using the queue system. Please reload your user interface and try again."]="Произошла ошибка, которая не позволит встать в очередь. Пожалуйста, перезагрузите интерфейс и попробуйте снова" L["INCOMPATIBLE_ADDON"]="Аддон %s не совместим с модулем %s SVUI. Пожалуйста, выберите отключить ли не совместимый аддон или модуль." -L["LOGIN_MSG"]="Добро пожаловать в %sSVUI|r версии %s%s|r, наберите /sv для доступа в меню настроек. Если Вам нужна техническая поддержка, посетите наш форум на http://www.wowinterface.com" L["Binding"]="Назначение" L["Key"]="Клавиша" L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/language/spanish_ui.lua b/Interface/AddOns/SVUI/language/spanish_ui.lua index fb3d1b5..b5fabba 100644 --- a/Interface/AddOns/SVUI/language/spanish_ui.lua +++ b/Interface/AddOns/SVUI/language/spanish_ui.lua @@ -3,6 +3,9 @@ if not L then L = _G.LibSuperVillain:Lang("esMX") end if not L then return; end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "Bienvenido a |cffFFFF1ASupervillain UI|r! Mantenga su %s y su %s." +L["LOGIN_MSG2"] = "Versión |cffAA78FF%s|r, escribe /sv para acceder al menú de configuración." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -114,7 +117,6 @@ L["Meanwhile..."]=true; L["..at "]=true; L["A taint has occured that is preventing you from using the queue system. Please reload your user interface and try again."]="Un error ha ocurrido que te impide usar el sistema de cola. Recarga tu interfaz y trata nuevamente." L["INCOMPATIBLE_ADDON"]="The addon %s is not compatible with SVUI's %s package. Please select either the addon or the SVUI package to disable." -L["LOGIN_MSG"]="Bienvenido a %sSVUI|r versión %s%s|r, escribe /sv para acceder al menú de configuración. Si necesitas ayuda o soporte técnico puedes visitarnos en http://www.wowinterface.com" L["Binding"]="Controles" L["Key"]="Tecla" L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/language/taiwanese_ui.lua b/Interface/AddOns/SVUI/language/taiwanese_ui.lua index 13e99bc..9a60c71 100644 --- a/Interface/AddOns/SVUI/language/taiwanese_ui.lua +++ b/Interface/AddOns/SVUI/language/taiwanese_ui.lua @@ -1,5 +1,8 @@ local L = _G.LibSuperVillain:Lang("zhTW"); if not L then return; end +--[[LOGIN MESSAGE]]-- +L["LOGIN_MSG"] = "歡迎使用 |cffFFFF1ASupervillain UI|r! 让您的 %s 和你 %s." +L["LOGIN_MSG2"] = "|cffAA78FF%s|r 版, 請輸入/sv 進入設定介面." --[[REACTION TEXTS]]-- L[" is drinking."] = true; L["Leeeeeroy!"] = true; @@ -111,7 +114,6 @@ L["Meanwhile..."]=true; L["..at "]=true; L["A taint has occured that is preventing you from using the queue system. Please reload your user interface and try again."]="發生一個錯誤導致你無法使用隊列系統,請重新加載你的用戶界面,然後再試一次." L["INCOMPATIBLE_ADDON"]="插件 %s 與 SVUI 的 %s 模組不相容。請停用不相容的插件,或停用模組." -L["LOGIN_MSG"]="歡迎使用%sSVUI |r %s%s|r 版, 請輸入/sv 進入設定介面. 如需技術支援請至http://www.wowinterface.com" L["Binding"]="綁定" L["Key"]="鍵" L["KEY_ALT"]="A" diff --git a/Interface/AddOns/SVUI/libs/LibSuperVillain-1.0/LibSuperVillain-1.0.lua b/Interface/AddOns/SVUI/libs/LibSuperVillain-1.0/LibSuperVillain-1.0.lua index 1dc362e..eba8b48 100644 --- a/Interface/AddOns/SVUI/libs/LibSuperVillain-1.0/LibSuperVillain-1.0.lua +++ b/Interface/AddOns/SVUI/libs/LibSuperVillain-1.0/LibSuperVillain-1.0.lua @@ -294,6 +294,47 @@ valid data outside of the core object. --]] --DATABASE LOCAL HELPERS +local function SanitizeStorage(data) + for k,v in pairs(data) do + if(k == "STORED" or k == "SAFEDATA" or k == "LAYOUT") then + data[k] = nil + end + end +end + +local function LiveProfileChange() + local LastKey = SOURCE_KEY + if(PROFILE_SV.SAFEDATA and PROFILE_SV.SAFEDATA.dualSpecEnabled) then + SOURCE_KEY = GetSpecialization() + lib.EventManager:RegisterEvent("ACTIVE_TALENT_GROUP_CHANGED") + + if(not SOURCE_KEY) then + SOURCE_KEY = 1 + end + + if(LastKey ~= SOURCE_KEY) then + --construct core dataset + local db = setmetatable({}, meta_database) + db.data = PROFILE_SV.STORED[SOURCE_KEY] + db.defaults = CoreObject.configs + CoreObject.db = db + + local cache = setmetatable({}, meta_cache) + cache.data = CACHE_SV.STORED[SOURCE_KEY] + CoreObject.cache = cache + + if(CoreObject.ReLoad) then + CoreObject:ReLoad() + end + + lib:RefreshAll() + end + else + SOURCE_KEY = 1 + lib.EventManager:UnregisterEvent("ACTIVE_TALENT_GROUP_CHANGED") + end +end + local function tablecopy(d, s, debug) if(debug) then print(debug) @@ -476,51 +517,6 @@ function lib:WipeGlobal() end end -function lib:UpdateDatabase(event) - if event == "PLAYER_LOGOUT" then - local sv = rawget(CoreObject.db, "data") - local src = rawget(CoreObject.db, "defaults") - for k,v in pairs(sv) do - if(not src[k]) then - sv[k] = nil - elseif(src[k] ~= nil and (not LoadOnDemand[k])) then - removedefaults(sv[k], src[k]) - end - end - elseif(event == "ACTIVE_TALENT_GROUP_CHANGED") then - local LastKey = SOURCE_KEY - if(PROFILE_SV.SAFEDATA and PROFILE_SV.SAFEDATA.dualSpecEnabled) then - SOURCE_KEY = GetSpecialization() - self.EventManager:RegisterEvent("ACTIVE_TALENT_GROUP_CHANGED") - - if(not SOURCE_KEY) then - SOURCE_KEY = 1 - end - - if(LastKey ~= SOURCE_KEY) then - --construct core dataset - local db = setmetatable({}, meta_database) - db.data = PROFILE_SV.STORED[SOURCE_KEY] - db.defaults = CoreObject.configs - CoreObject.db = db - - local cache = setmetatable({}, meta_cache) - cache.data = CACHE_SV.STORED[SOURCE_KEY] - CoreObject.cache = cache - - if(CoreObject.ReLoad) then - CoreObject:ReLoad() - end - - self:RefreshAll() - end - else - SOURCE_KEY = 1 - self.EventManager:UnregisterEvent("ACTIVE_TALENT_GROUP_CHANGED") - end - end -end - function lib:GetSafeData(index) if(index) then return PROFILE_SV.SAFEDATA[index] @@ -587,7 +583,7 @@ local changeDBVar = function(self, value, key, sub1, sub2, sub3) end local innerOnEvent = function(self, event, ...) - local obj = self.module + local obj = self.___owner if self[event] and type(self[event]) == "function" then self[event](obj, event, ...) end @@ -596,7 +592,7 @@ end local registerEvent = function(self, eventname, eventfunc) if not self.___eventframe then self.___eventframe = CreateFrame("Frame", nil) - self.___eventframe.module = self + self.___eventframe.___owner = self self.___eventframe:SetScript("OnEvent", innerOnEvent) end @@ -621,7 +617,7 @@ end local innerOnUpdate = function(self, elapsed) if self.elapsed and self.elapsed > (self.throttle) then - local obj = self.module + local obj = self.___owner local callbacks = self.callbacks for name, fn in pairs(callbacks) do @@ -640,7 +636,7 @@ end local registerUpdate = function(self, updatefunc, throttle) if not self.___updateframe then self.___updateframe = CreateFrame("Frame", nil); - self.___updateframe.module = self; + self.___updateframe.___owner = self; self.___updateframe.callbacks = {}; self.___updateframe.elapsed = 0; self.___updateframe.throttle = throttle or 0.2; @@ -712,6 +708,13 @@ function lib:RefreshAll() end end +function lib:LiveUpdate() + if(PROFILE_SV.SAFEDATA.NEEDSLIVEUPDATE and not C_PetBattles.IsInBattle()) then + self:RefreshAll() + PROFILE_SV.SAFEDATA.NEEDSLIVEUPDATE = false + end +end + function lib:GetModuletable() return MODULES end @@ -728,7 +731,7 @@ function lib:ToggleDualProfile(enabled) PROFILE_SV.SAFEDATA.dualSpecEnabled = enabled if(enabled) then self.EventManager:RegisterEvent("ACTIVE_TALENT_GROUP_CHANGED") - self:UpdateDatabase() + LiveProfileChange() else self.EventManager:UnregisterEvent("ACTIVE_TALENT_GROUP_CHANGED") end @@ -878,22 +881,40 @@ local function NewLoadOnDemand(addonName, schema, header) } end -local function SanitizeStorage(data) - for k,v in pairs(data) do - if(k == "STORED" or k == "SAFEDATA" or k == "LAYOUT") then - data[k] = nil - end - end -end +--LIBRARY EVENT HANDLING ---DATABASE EVENT HANDLER -local DataBase_OnEvent = function(self, event) - if(event == "PLAYER_LOGOUT" or event == "ACTIVE_TALENT_GROUP_CHANGED") then - lib:UpdateDatabase(event) +local Library_OnEvent = function(self, event, arg, ...) + if(event == "PLAYER_LOGOUT") then + local sv = rawget(CoreObject.db, "data") + local src = rawget(CoreObject.db, "defaults") + for k,v in pairs(sv) do + if(not src[k]) then + sv[k] = nil + elseif(src[k] ~= nil and (not LoadOnDemand[k])) then + removedefaults(sv[k], src[k]) + end + end + elseif(event == "ADDON_LOADED") then + if(arg == CoreName) then + if(not CoreObject.___loaded and CoreObject.Load) then + CoreObject:Load() + CoreObject.___loaded = true + self:UnregisterEvent("ADDON_LOADED") + end + end + elseif(event == "PLAYER_LOGIN") then + if(not CoreObject.___initialized and CoreObject.Initialize and IsLoggedIn()) then + CoreObject:Initialize() + CoreObject.___initialized = true + self:UnregisterEvent("PLAYER_LOGIN") + end + elseif(event == "ACTIVE_TALENT_GROUP_CHANGED") then + LiveProfileChange() end end -- CORE OBJECT CONSTRUCT + local Core_NewCallback = function(self, fn) if(fn and type(fn) == "function") then Callbacks[#Callbacks+1] = fn @@ -983,24 +1004,32 @@ function lib:NewCore(gfile, pfile, cfile) --events if(not self.EventManager.Initialized) then + self.EventManager:RegisterEvent("ADDON_LOADED") + self.EventManager:RegisterEvent("PLAYER_LOGIN") self.EventManager:RegisterEvent("PLAYER_LOGOUT") - self.EventManager:SetScript("OnEvent", DataBase_OnEvent) + self.EventManager:SetScript("OnEvent", Library_OnEvent) self.EventManager.Initialized = true end --internals - CoreObject.NameID = CoreName; - CoreObject.Version = AddonVersion; - CoreObject.GameVersion = tonumber(InterfaceVersion); - CoreObject.DebugMode = false; - CoreObject.Schema = GetAddOnMetadata(CoreName, SchemaFromMeta); - CoreObject.TitleID = GetAddOnMetadata(CoreName, HeaderFromMeta); - CoreObject.NewCallback = Core_NewCallback - CoreObject.NewScript = Core_NewScript - CoreObject.NewPackage = Core_NewPackage - CoreObject.ResetData = Core_ResetData - CoreObject.db = tablesplice(CoreObject.configs, {}) - CoreObject.L = self:Lang() + CoreObject.NameID = CoreName; + CoreObject.Version = AddonVersion; + CoreObject.GameVersion = tonumber(InterfaceVersion); + CoreObject.DebugMode = false; + CoreObject.Schema = GetAddOnMetadata(CoreName, SchemaFromMeta); + CoreObject.TitleID = GetAddOnMetadata(CoreName, HeaderFromMeta); + + CoreObject.RegisterEvent = registerEvent + CoreObject.UnregisterEvent = unregisterEvent + CoreObject.RegisterUpdate = registerUpdate + CoreObject.UnregisterUpdate = unregisterUpdate + + CoreObject.NewCallback = Core_NewCallback + CoreObject.NewScript = Core_NewScript + CoreObject.NewPackage = Core_NewPackage + CoreObject.ResetData = Core_ResetData + CoreObject.db = tablesplice(CoreObject.configs, {}) + CoreObject.L = self:Lang() --set global _G[CoreName] = CoreObject; @@ -1055,6 +1084,8 @@ function lib:Initialize() PROFILE_SV = _G[PROFILE_FILENAME] PROFILE_SV.SAFEDATA = PROFILE_SV.SAFEDATA or {dualSpecEnabled = false} + if not PROFILE_SV.SAFEDATA.NEEDSLIVEUPDATE then PROFILE_SV.SAFEDATA.NEEDSLIVEUPDATE = false end + if(PROFILE_SV.SAFEDATA and PROFILE_SV.SAFEDATA.dualSpecEnabled) then SOURCE_KEY = GetSpecialization() or 1 self.EventManager:RegisterEvent("ACTIVE_TALENT_GROUP_CHANGED") @@ -1169,4 +1200,6 @@ function lib:Launch() ScriptQueue = nil end + + PROFILE_SV.SAFEDATA.NEEDSLIVEUPDATE = C_PetBattles.IsInBattle() end \ No newline at end of file diff --git a/Interface/AddOns/SVUI/libs/_load.xml b/Interface/AddOns/SVUI/libs/_load.xml new file mode 100644 index 0000000..bc724e1 --- /dev/null +++ b/Interface/AddOns/SVUI/libs/_load.xml @@ -0,0 +1,8 @@ +<Ui xmlns="http://www.blizzard.com/wow/ui/"> + <Script file="LibSuperVillain-1.0\LibSuperVillain-1.0.lua"/> + <Script file="LibStub\LibStub.lua"/> + <Script file="CallbackHandler-1.0\CallbackHandler-1.0.lua"/> + <Script file="LibSharedMedia-3.0\LibSharedMedia-3.0.lua"/> + <Script file="LibActionButton-1.0\LibActionButton-1.0.lua"/> + <Include file="oUF_Villain\oUF_Villain.xml"/> +</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/libs/libs.xml b/Interface/AddOns/SVUI/libs/libs.xml deleted file mode 100644 index bc724e1..0000000 --- a/Interface/AddOns/SVUI/libs/libs.xml +++ /dev/null @@ -1,8 +0,0 @@ -<Ui xmlns="http://www.blizzard.com/wow/ui/"> - <Script file="LibSuperVillain-1.0\LibSuperVillain-1.0.lua"/> - <Script file="LibStub\LibStub.lua"/> - <Script file="CallbackHandler-1.0\CallbackHandler-1.0.lua"/> - <Script file="LibSharedMedia-3.0\LibSharedMedia-3.0.lua"/> - <Script file="LibActionButton-1.0\LibActionButton-1.0.lua"/> - <Include file="oUF_Villain\oUF_Villain.xml"/> -</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_ActionPanel/oUF_ActionPanel.toc b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_ActionPanel/oUF_ActionPanel.toc index 9deaa79..6a3d5d2 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_ActionPanel/oUF_ActionPanel.toc +++ b/Interface/AddOns/SVUI/libs/oUF_Villain/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: 4.9 +## Version: 5.0 ## X-Category: oUF ## Dependencies: oUF diff --git a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Afflicted/oUF_Afflicted.toc b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Afflicted/oUF_Afflicted.toc index e56137c..432ad2b 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Afflicted/oUF_Afflicted.toc +++ b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Afflicted/oUF_Afflicted.toc @@ -2,7 +2,7 @@ ## Title: oUF Afflicted ## Notes: Adds Custom Debuff Highlighting to oUF. ## Author: Munglunch -## Version: 4.9 +## Version: 5.0 ## X-Category: oUF ## Dependencies: oUF diff --git a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.toc b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.toc index 6cbcafa..9cc371a 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_ArcaneCharge/oUF_ArcaneCharge.toc +++ b/Interface/AddOns/SVUI/libs/oUF_Villain/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: 4.9 +## Version: 5.0 ## Dependencies: oUF oUF_ArcaneCharge.lua \ No newline at end of file diff --git a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_AuraBars/oUF_AuraBars.lua b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_AuraBars/oUF_AuraBars.lua index d4d8fe3..2eb382d 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_AuraBars/oUF_AuraBars.lua +++ b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_AuraBars/oUF_AuraBars.lua @@ -126,7 +126,7 @@ local function SetBackground(frame) bottom = 0, }, }) - frame:SetBackdropColor(0,0,0,0.25) + frame:SetBackdropColor(0,0,0,0.5) frame:SetBackdropBorderColor(0,0,0) end diff --git a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Combatant/oUF_Combatant.toc b/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Combatant/oUF_Combatant.toc index 3fd9fb2..88f0fed 100644 --- a/Interface/AddOns/SVUI/libs/oUF_Villain/Plugins/oUF_Combatant/oUF_Combatant.toc +++ b/Interface/AddOns/SVUI/libs/oUF_Villain/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: 4.90 +## Version: 5.00 ## X-Category: oUF ## Dependencies: oUF diff --git a/Interface/AddOns/SVUI/packages/_load.xml b/Interface/AddOns/SVUI/packages/_load.xml new file mode 100644 index 0000000..a325aac --- /dev/null +++ b/Interface/AddOns/SVUI/packages/_load.xml @@ -0,0 +1,16 @@ +<Ui xmlns="http://www.blizzard.com/wow/ui/"> + <Include file="stats\SVStats.xml"/> + <Script file="dock\SVDock.lua"/> + <Include file="aura\SVAura.xml"/> + <Script file="map\SVMap.lua"/> + <Include file="plates\SVPlate.xml"/> + <Script file="tip\SVTip.lua"/> + <Script file="actionbar\SVBar.lua"/> + <Script file="actionbar\KeyBind.lua"/> + <Include file="unit\SVUnit.xml"/> + <Script file="chat\SVChat.lua"/> + <Include file="bag\SVBag.xml"/> + <Script file="override\SVOverride.lua"/> + <Script file="gear\SVGear.lua"/> + <Script file="henchmen\SVHenchmen.lua"/> +</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/packages/actionbar/SVBar.lua b/Interface/AddOns/SVUI/packages/actionbar/SVBar.lua index f3ea13f..cecfa3e 100644 --- a/Interface/AddOns/SVUI/packages/actionbar/SVBar.lua +++ b/Interface/AddOns/SVUI/packages/actionbar/SVBar.lua @@ -267,7 +267,7 @@ local function SaveActionButton(parent) SV.Timers:AddCooldown(cooldown) MOD.ButtonCache[parent] = true end - parent:SetSlotTemplate(true, 2, 0, 0) + parent:SetSlotTemplate(true, 2, 0, 0, 0.75) end local function SetFlyoutButton(button) diff --git a/Interface/AddOns/SVUI/packages/bag/SVBag.lua b/Interface/AddOns/SVUI/packages/bag/SVBag.lua index 940ea11..71f1a89 100644 --- a/Interface/AddOns/SVUI/packages/bag/SVBag.lua +++ b/Interface/AddOns/SVUI/packages/bag/SVBag.lua @@ -292,16 +292,20 @@ local SlotUpdate = function(self, slotID) local r, g, b = bagType[1], bagType[2], bagType[3]; slot:SetBackdropColor(r, g, b, 0.6) slot:SetBackdropBorderColor(r, g, b, 1) - elseif(itemLink) then + else + slot:SetBackdropColor(0, 0, 0, 0.6) + slot:SetBackdropBorderColor(0, 0, 0, 1) + end + if(itemLink) then local rarity = select(3, GetItemInfo(itemLink)) if(rarity and rarity > 1) then local r, g, b = GetItemQualityColor(rarity) - slot:SetBackdropBorderColor(r, g, b) - else - slot:SetBackdropBorderColor(0, 0, 0) + slot:SetBackdropColor(r, g, b, 0.6) + slot:SetBackdropBorderColor(r, g, b, 1) + else + slot:SetBackdropColor(0, 0, 0, 0.6) + slot:SetBackdropBorderColor(0, 0, 0, 1) end - else - slot:SetBackdropBorderColor(0, 0, 0) end if(C_NewItems.IsNewItem(bag, slotID)) then @@ -538,6 +542,8 @@ local ContainerFrame_UpdateLayout = function(self) bag = self.Bags[bagID] end + bag.numSlots = numSlots; + local btype = select(2, GetContainerNumFreeSlots(bagID)); local r, g, b; if RefProfessionColors[btype] then @@ -568,7 +574,8 @@ local ContainerFrame_UpdateLayout = function(self) slot:SetNormalTexture(""); slot:SetCheckedTexture(""); slot:RemoveTextures() - slot:SetSlotTemplate(true, 2, 0, 0, true); + slot:SetSlotTemplate(true, 2, 0, 0, 0.45); + slot.Panel.Shadow:SetAttribute("shadowAlpha", 0.9) if(_G[newTexName]) then _G[newTexName]:Hide() @@ -618,6 +625,8 @@ local ContainerFrame_UpdateLayout = function(self) BankFrameItemButton_UpdateLocked(menu[i]) end if(self.Bags[bagID]) then + self.Bags[bagID].numSlots = numSlots; + for i = 1, MAX_CONTAINER_ITEMS do if(self.Bags[bagID][i]) then self.Bags[bagID][i]:Hide(); @@ -625,8 +634,6 @@ local ContainerFrame_UpdateLayout = function(self) end end end - - self.Bags[bagID].numSlots = numSlots; end self:Size(containerWidth, containerHeight); @@ -1810,6 +1817,8 @@ function MOD:Load() BagFilters.buttons[clearID]:SetPoint("TOPLEFT", BagFilters.buttons[NUM_LE_BAG_FILTER_FLAGS], "BOTTOMLEFT", 0, -10) BagFilters.buttons[clearID]:Show() + + self:RegisterEvent("PLAYERREAGENTBANKSLOTS_CHANGED") end BagFilters:Hide() diff --git a/Interface/AddOns/SVUI/packages/map/SVMap.lua b/Interface/AddOns/SVUI/packages/map/SVMap.lua index 881a504..54d3358 100644 --- a/Interface/AddOns/SVUI/packages/map/SVMap.lua +++ b/Interface/AddOns/SVUI/packages/map/SVMap.lua @@ -112,6 +112,8 @@ do MMBBar:SetPoint("CENTER", MMBHolder, "CENTER", 0, 0) MMBBar:Height(SV.db.SVMap.minimapbar.buttonSize + 4) MMBBar:Width(SV.db.SVMap.minimapbar.buttonSize + 4) + MMBBar:SetFrameStrata("LOW") + MMBBar:SetFrameLevel(0) local lastButton, anchor, relative, xPos, yPos; local list = MOD.MinimapButtons @@ -189,9 +191,9 @@ do end end - btn:SetPushedTexture(nil) - btn:SetHighlightTexture(nil) - btn:SetDisabledTexture(nil) + btn:SetPushedTexture("") + btn:SetHighlightTexture("") + btn:SetDisabledTexture("") if not btn.isStyled then btn:HookScript("OnEnter", MMB_OnEnter) @@ -695,10 +697,6 @@ function MOD:PLAYER_REGEN_DISABLED() WorldMapFrameSizeDownButton:Disable() WorldMapFrameSizeUpButton:Disable() end - -function MOD:PET_BATTLE_CLOSE() - self:UpdateMinimapButtonSettings() -end --[[ ########################################################## BUILD FUNCTION / UPDATE @@ -723,6 +721,7 @@ end function MOD:ReLoad() if(not SV.db.SVMap.enable) then return; end self:RefreshMiniMap() + self:UpdateMinimapButtonSettings() end function MOD:Load() diff --git a/Interface/AddOns/SVUI/packages/stats/SVStats.lua b/Interface/AddOns/SVUI/packages/stats/SVStats.lua index 8549fec..873f69c 100644 --- a/Interface/AddOns/SVUI/packages/stats/SVStats.lua +++ b/Interface/AddOns/SVUI/packages/stats/SVStats.lua @@ -213,7 +213,7 @@ function MOD:NewAnchor(parent, maxCount, tipAnchor, isTop, customTemplate, isVer strata = "LOW" else template = isTop and "FramedTop" or "FramedBottom" - strata = "HIGH" + strata = "MEDIUM" end MOD.Anchors[parent:GetName()] = parent; diff --git a/Interface/AddOns/SVUI/packages/unit/elements/auras.lua b/Interface/AddOns/SVUI/packages/unit/elements/auras.lua index 03ab962..2427428 100644 --- a/Interface/AddOns/SVUI/packages/unit/elements/auras.lua +++ b/Interface/AddOns/SVUI/packages/unit/elements/auras.lua @@ -171,10 +171,10 @@ local ColorizeAuraBars = function(self) end if color then auraBar.statusBar:SetStatusBarColor(unpack(color)) - auraBar:SetBackdropColor(color[1] * 0.25, color[2] * 0.25, color[3] * 0.25, 0.25) + auraBar:SetBackdropColor(color[1] * 0.25, color[2] * 0.25, color[3] * 0.25, 0.5) else local r, g, b = auraBar.statusBar:GetStatusBarColor() - auraBar:SetBackdropColor(r * 0.25, g * 0.25, b * 0.25, 0.25) + auraBar:SetBackdropColor(r * 0.25, g * 0.25, b * 0.25, 0.5) end end end diff --git a/Interface/AddOns/SVUI/scripts/_load.xml b/Interface/AddOns/SVUI/scripts/_load.xml new file mode 100644 index 0000000..c111e93 --- /dev/null +++ b/Interface/AddOns/SVUI/scripts/_load.xml @@ -0,0 +1,10 @@ +<Ui xmlns="http://www.blizzard.com/wow/ui/"> + <Script file="misc.lua"/> + <Script file="mounts.lua"/> + <Script file="comix.lua"/> + <Script file="questwatch.lua"/> + <Script file="raid.lua"/> + <Script file="reactions.lua"/> + <Script file="spellbind.lua"/> + <Script file="ego.lua"/> +</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/scripts/ego.lua b/Interface/AddOns/SVUI/scripts/ego.lua index 5b6a9fa..4cebace 100644 --- a/Interface/AddOns/SVUI/scripts/ego.lua +++ b/Interface/AddOns/SVUI/scripts/ego.lua @@ -33,88 +33,66 @@ local L = SV.L local Sequences = { {65, 1000}, --shrug - {68, 1000}, --cheer {70, 1000}, --laugh {74, 1000}, --roar - {77, 1000}, --cry - {84, 1000}, --point {82, 1000}, --flex }; -local EgoFrame = CreateFrame("PlayerModel", "SVUI_EgoModel", UIParent); - local function rng() return random(1, #Sequences) end -local LaunchAnimation = function(self, key) +local GoGoGadget = function(self, key) key = key or rng() local emote = Sequences[key][1] - self:Show() - self:SetAnimation(emote) - self.anim:Play() + self:SetAlpha(1) + self.Model1:SetAnimation(emote) + self.Model2:SetAnimation(emote) end -local LaunchFreezeFrame = function(self, key) - key = key or rng() - local animation = Sequences[key] - local size = SVUIParent:GetHeight() - self:Show() - self:SetSequenceTime(unpack(animation)) - self.anim[2]:SetOffset(size, -size) - self.anim[2]:SetOffset(0, 0) - self.anim:Play() -end +local function LoadSVEgo() + local GameMenuFrame = _G.GameMenuFrame -local ResetPosition = function(self) - local size = SVUIParent:GetHeight() - self:SetPoint("TOP", SV.UIParent, "TOP", 0, 0) - self:SetWidth(size) - self:SetHeight(size) - self:SetUnit("player") -end + local EgoFrame = CreateFrame("Frame", "SVUI_EgoFrame", UIParent); + EgoFrame:SetParent(GameMenuFrame) + EgoFrame:SetFrameLevel(0) + EgoFrame:SetAllPoints(SV.UIParent) -local Ego_OnEvent = function(self, event) - if event == "ACHIEVEMENT_EARNED" then - self:LaunchAnimation(4) - else - self:LaunchAnimation(6) - end -end + EgoFrame.BG1 = EgoFrame:CreateTexture(nil, "BACKGROUND", nil, -7) + EgoFrame.BG1:SetPoint("TOPLEFT", EgoFrame, "TOPLEFT", 0, 0) + EgoFrame.BG1:SetPoint("BOTTOMRIGHT", EgoFrame, "TOPRIGHT", 0, -300) + EgoFrame.BG1:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]]) + EgoFrame.BG1:SetVertexColor(0, 0, 0, 0.8) -function SV:ToggleEgo() - if not SV.db.general.ego then - EgoFrame:UnregisterEvent("ACHIEVEMENT_EARNED") - EgoFrame:UnregisterEvent("SCREENSHOT_SUCCEEDED") - EgoFrame:SetScript("OnEvent", nil) - else - EgoFrame:RegisterEvent("ACHIEVEMENT_EARNED") - EgoFrame:RegisterEvent("SCREENSHOT_SUCCEEDED") - EgoFrame:SetScript("OnEvent", Ego_OnEvent) - end -end + EgoFrame.BG2 = EgoFrame:CreateTexture(nil, "BACKGROUND", nil, -7) + EgoFrame.BG2:SetPoint("BOTTOMLEFT", EgoFrame, "BOTTOMLEFT", 0, 0) + EgoFrame.BG2:SetPoint("TOPRIGHT", EgoFrame, "BOTTOMRIGHT", 0, 300) + EgoFrame.BG2:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]]) + EgoFrame.BG2:SetVertexColor(0, 0, 0, 0.8) -local EgoPop_OnUpdate = function(self) self.parent:SetAlpha(0) end + EgoFrame.Model1 = CreateFrame("PlayerModel", "SVUI_EgoModel1", EgoFrame); + EgoFrame.Model1:SetUnit("player") + EgoFrame.Model1:SetRotation(1) + EgoFrame.Model1:SetPortraitZoom(0.3) + EgoFrame.Model1:SetPosition(0,0,-0.25) + EgoFrame.Model1:SetFrameStrata("BACKGROUND") + EgoFrame.Model1:SetPoint("TOPLEFT", EgoFrame, "TOPLEFT", -250, -300) + EgoFrame.Model1:SetPoint("BOTTOMRIGHT", EgoFrame, "BOTTOM", 0, 300) -local function LoadSVEgo() - local size = UIParent:GetWidth() - EgoFrame:SetParent(SV.UIParent) - EgoFrame:SetPoint("TOP", SV.UIParent, "TOP", 0, 0) - EgoFrame:SetWidth(size) - EgoFrame:SetHeight(size) - EgoFrame:SetUnit("player") - EgoFrame.LaunchAnimation = LaunchAnimation - EgoFrame.LaunchFreezeFrame = LaunchFreezeFrame - EgoFrame.ResetPosition = ResetPosition - SV.Animate:Slide(EgoFrame, 0, 0, true, 1.5) - EgoFrame.anim[4]:SetScript("OnFinished", EgoPop_OnUpdate) + EgoFrame.Model2 = CreateFrame("PlayerModel", "SVUI_EgoModel2", EgoFrame); + EgoFrame.Model2:SetUnit("player") + EgoFrame.Model2:SetRotation(-1) + EgoFrame.Model2:SetPortraitZoom(0.3) + EgoFrame.Model2:SetPosition(0,0,-0.25) + EgoFrame.Model2:SetFrameStrata("BACKGROUND") + EgoFrame.Model2:SetPoint("TOPRIGHT", EgoFrame, "TOPRIGHT", 250, -300) + EgoFrame.Model2:SetPoint("BOTTOMLEFT", EgoFrame, "BOTTOM", 250, 300) - EgoFrame:Hide() -end + EgoFrame.GoGoGadget = GoGoGadget -_G.SlashCmdList["BADASS"] = function() - EgoFrame:LaunchAnimation(4) + EgoFrame:SetScript("OnShow", function(self) + self:GoGoGadget() + end) end -_G.SLASH_BADASS1 = "/badass" SV:NewScript(LoadSVEgo) \ No newline at end of file diff --git a/Interface/AddOns/SVUI/setup/_load.xml b/Interface/AddOns/SVUI/setup/_load.xml new file mode 100644 index 0000000..802f04a --- /dev/null +++ b/Interface/AddOns/SVUI/setup/_load.xml @@ -0,0 +1,4 @@ +<Ui xmlns="http://www.blizzard.com/wow/ui/"> + <Script file="installer.lua"/> + <Script file="presets.lua"/> +</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/setup/configs.lua b/Interface/AddOns/SVUI/setup/configs.lua deleted file mode 100644 index 0cb41f9..0000000 --- a/Interface/AddOns/SVUI/setup/configs.lua +++ /dev/null @@ -1,3658 +0,0 @@ ---[[ -############################################################################## -_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_ # - ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__ # - __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____ # - ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____ # - ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____ # - _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____ # - __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ # - _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_# - ___\///////////___________\///___________\/////////_____\///////////_# -############################################################################## -S U P E R - V I L L A I N - U I By: Munglunch # -############################################################################## -########################################################## -GET ADDON DATA -########################################################## -]]-- -local SV = select(2, ...) - -local playerClass = select(2, UnitClass("player")); - -local filterClass = playerClass or "NONE" - -local function safename(id) - local n = GetSpellInfo(id) - if not n then - if type(id) == "string" then - n = id - else - SV:Debugger('|cffFF9900SVUI:|r Spell not found: (#ID) '..id) - n = "Voodoo Doll"; - end - end - return n -end - ---[[ SYSTEM DATA ]]-- - -SV.configs = {} - -SV.configs["general"] = { - ["cooldown"] = true, - ["autoScale"] = true, - ["multiMonitor"] = false, - ["taintLog"] = false, - ["stickyFrames"] = true, - ["loginmessage"] = true, - ["hideErrorFrame"] = true, - ["threatbar"] = false, - ["bubbles"] = true, - ["comix"] = true, - ["bigComix"] = true, - ["questWatch"] = true, - ["woot"] = true, - ["pvpinterrupt"] = true, - ["lookwhaticando"] = false, - ["reactionChat"] = false, - ["reactionEmote"] = false, - ["sharingiscaring"] = false, - ["arenadrink"] = true, - ["stupidhat"] = true, -} - -SV.configs["LAYOUT"] = { - mediastyle = "default", - barstyle = "default", - unitstyle = "default", - groupstyle = "default", - aurastyle = "default" -} - -SV.configs["totems"] = { - ["enable"] = true, - ["showBy"] = "VERTICAL", - ["sortDirection"] = "ASCENDING", - ["size"] = 40, - ["spacing"] = 4 -} - -SV.configs["media"] = { - ["fonts"] = { - ["default"] = "SVUI System Font", - ["name"] = "SVUI Name Font", - ["number"] = "SVUI Number Font", - ["combat"] = "SVUI Combat Font", - ["giant"] = "SVUI Action Font", - ["size"] = 10, - ["unicodeSize"] = 12, - }, - ["textures"] = { - ["pattern"] = "SVUI Backdrop 1", - ["comic"] = "SVUI Comic 1", - ["unitlarge"] = "SVUI Unit BG 3", - ["unitsmall"] = "SVUI Small BG 3" - }, - ["colors"] = { - ["default"] = {0.2, 0.2, 0.2, 1}, - ["special"] = {0.37, 0.32, 0.29, 1}, - }, - ["unitframes"] = { - ["health"] = {0.3, 0.5, 0.3}, - ["power"] = { - ["MANA"] = {0.41, 0.85, 1}, - ["RAGE"] = {1, 0.31, 0.31}, - ["FOCUS"] = {1, 0.63, 0.27}, - ["ENERGY"] = {0.85, 0.83, 0.25}, - ["RUNES"] = {0.55, 0.57, 0.61}, - ["RUNIC_POWER"] = {0, 0.82, 1}, - ["FUEL"] = {0, 0.75, 0.75} - }, - ["reaction"] = { - [1] = {0.92, 0.15, 0.15}, - [2] = {0.92, 0.15, 0.15}, - [3] = {0.92, 0.15, 0.15}, - [4] = {0.85, 0.85, 0.13}, - [5] = {0.19, 0.85, 0.13}, - [6] = {0.19, 0.85, 0.13}, - [7] = {0.19, 0.85, 0.13}, - [8] = {0.19, 0.85, 0.13}, - }, - ["tapped"] = {0.55, 0.57, 0.61}, - ["disconnected"] = {0.84, 0.75, 0.65}, - ["casting"] = {0.8, 0.8, 0}, - ["spark"] = {1, 0.72, 0}, - ["interrupt"] = {0.78, 0.25, 0.25}, - ["shield_bars"] = {0.56, 0.4, 0.62}, - ["buff_bars"] = {0.31, 0.31, 0.31}, - ["debuff_bars"] = {0.8, 0.1, 0.1}, - ["predict"] = { - ["personal"] = {0, 1, 0.5, 0.25}, - ["others"] = {0, 1, 0, 0.25}, - ["absorbs"] = {1, 1, 0, 0.25} - }, - ["spellcolor"] = { - [safename(2825)] = {0.98, 0.57, 0.11}, --Bloodlust - [safename(32182)] = {0.98, 0.57, 0.11}, --Heroism - [safename(80353)] = {0.98, 0.57, 0.11}, --Time Warp - [safename(90355)] = {0.98, 0.57, 0.11}, --Ancient Hysteria - [safename(84963)] = {0.98, 0.57, 0.11}, --Inquisition - [safename(86659)] = {0.98, 0.57, 0.11}, --Guardian of Ancient Kings - } - } -} - -SV.configs["SVBar"] = { - ["enable"] = true, - ["font"] = "Roboto", - ["fontSize"] = 11, - ["fontOutline"] = "OUTLINE", - ["countFont"] = "SVUI Number Font", - ["countFontSize"] = 11, - ["countFontOutline"] = "OUTLINE", - ["cooldownSize"] = 18, - ["rightClickSelf"] = false, - ["macrotext"] = false, - ["hotkeytext"] = false, - ["hotkeyAbbrev"] = true, - ["showGrid"] = true, - ["unc"] = {0.8, 0.1, 0.1, 0.7}, - ["unpc"] = {0.5, 0.5, 1, 0.7}, - ["keyDown"] = false, - ["unlock"] = "SHIFT", - ["Micro"] = { - ["enable"] = true, - ["mouseover"] = true, - ["alpha"] = 1, - ["buttonsize"] = 30, - ["buttonspacing"] = 4, - ["yOffset"] = 4 - }, - ["Bar1"] = { - ["enable"] = true, - ["buttons"] = 12, - ["mouseover"] = false, - ["buttonsPerRow"] = 12, - ["point"] = "BOTTOMLEFT", - ["backdrop"] = false, - ["buttonsize"] = 32, - ["buttonspacing"] = 2, - ["useCustomPaging"] = true, - ["useCustomVisibility"] = false, - ["customVisibility"] = "[petbattle] hide; show", - ["customPaging"] = { - ["HUNTER"] = "", - ["WARLOCK"] = "[form:2] 10;", - ["PRIEST"] = "[bonusbar:1] 7;", - ["PALADIN"] = "", - ["MAGE"] = "", - ["ROGUE"] = "[stance:1] 7; [stance:2] 7; [stance:3] 7; [bonusbar:1] 7; [form:3] 7;", - ["DRUID"] = "[bonusbar:1, nostealth] 7; [bonusbar:1, stealth] 8; [bonusbar:2] 8; [bonusbar:3] 9; [bonusbar:4] 10;", - ["SHAMAN"] = "", - ["WARRIOR"] = "", - ["DEATHKNIGHT"] = "", - ["MONK"] = "[bonusbar:1] 7; [bonusbar:2] 8; [bonusbar:3] 9;", - }, - ["alpha"] = 1 - }, - ["Bar2"] = { - ["enable"] = false, - ["mouseover"] = false, - ["buttons"] = 12, - ["buttonsPerRow"] = 12, - ["point"] = "BOTTOMLEFT", - ["backdrop"] = false, - ["buttonsize"] = 32, - ["buttonspacing"] = 2, - ["useCustomPaging"] = false, - ["useCustomVisibility"] = false, - ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", - ["customPaging"] = { - ["HUNTER"] = "", - ["WARLOCK"] = "", - ["PRIEST"] = "", - ["PALADIN"] = "", - ["MAGE"] = "", - ["ROGUE"] = "", - ["DRUID"] = "", - ["SHAMAN"] = "", - ["WARRIOR"] = "", - ["DEATHKNIGHT"] = "", - ["MONK"] = "", - }, - ["alpha"] = 1 - }, - ["Bar3"] = { - ["enable"] = true, - ["mouseover"] = false, - ["buttons"] = 6, - ["buttonsPerRow"] = 6, - ["point"] = "BOTTOMLEFT", - ["backdrop"] = false, - ["buttonsize"] = 32, - ["buttonspacing"] = 2, - ["useCustomPaging"] = false, - ["useCustomVisibility"] = false, - ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", - ["customPaging"] = { - ["HUNTER"] = "", - ["WARLOCK"] = "", - ["PRIEST"] = "", - ["PALADIN"] = "", - ["MAGE"] = "", - ["ROGUE"] = "", - ["DRUID"] = "", - ["SHAMAN"] = "", - ["WARRIOR"] = "", - ["DEATHKNIGHT"] = "", - ["MONK"] = "", - }, - ["alpha"] = 1 - }, - ["Bar4"] = { - ["enable"] = true, - ["mouseover"] = true, - ["buttons"] = 12, - ["buttonsPerRow"] = 1, - ["point"] = "TOPRIGHT", - ["backdrop"] = false, - ["buttonsize"] = 32, - ["buttonspacing"] = 2, - ["useCustomPaging"] = false, - ["useCustomVisibility"] = false, - ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", - ["customPaging"] = { - ["HUNTER"] = "", - ["WARLOCK"] = "", - ["PRIEST"] = "", - ["PALADIN"] = "", - ["MAGE"] = "", - ["ROGUE"] = "", - ["DRUID"] = "", - ["SHAMAN"] = "", - ["WARRIOR"] = "", - ["DEATHKNIGHT"] = "", - ["MONK"] = "", - }, - ["alpha"] = 1 - }, - ["Bar5"] = { - ["enable"] = true, - ["mouseover"] = false, - ["buttons"] = 6, - ["buttonsPerRow"] = 6, - ["point"] = "BOTTOMLEFT", - ["backdrop"] = false, - ["buttonsize"] = 32, - ["buttonspacing"] = 2, - ["useCustomPaging"] = false, - ["useCustomVisibility"] = false, - ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", - ["customPaging"] = { - ["HUNTER"] = "", - ["WARLOCK"] = "", - ["PRIEST"] = "", - ["PALADIN"] = "", - ["MAGE"] = "", - ["ROGUE"] = "", - ["DRUID"] = "", - ["SHAMAN"] = "", - ["WARRIOR"] = "", - ["DEATHKNIGHT"] = "", - ["MONK"] = "", - }, - ["alpha"] = 1 - }, - ["Bar6"] = { - ["enable"] = false, - ["mouseover"] = false, - ["buttons"] = 12, - ["buttonsPerRow"] = 12, - ["point"] = "BOTTOMLEFT", - ["backdrop"] = false, - ["buttonsize"] = 32, - ["buttonspacing"] = 2, - ["useCustomPaging"] = false, - ["useCustomVisibility"] = false, - ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", - ["customPaging"] = { - ["HUNTER"] = "", - ["WARLOCK"] = "", - ["PRIEST"] = "", - ["PALADIN"] = "", - ["MAGE"] = "", - ["ROGUE"] = "", - ["DRUID"] = "", - ["SHAMAN"] = "", - ["WARRIOR"] = "", - ["DEATHKNIGHT"] = "", - ["MONK"] = "", - }, - ["alpha"] = 1 - }, - ["Pet"] = { - ["enable"] = true, - ["mouseover"] = false, - ["buttons"] = NUM_PET_ACTION_SLOTS, - ["buttonsPerRow"] = NUM_PET_ACTION_SLOTS, - ["point"] = "TOPLEFT", - ["backdrop"] = false, - ["buttonsize"] = 24, - ["buttonspacing"] = 3, - ["useCustomVisibility"] = false, - ["customVisibility"] = "[petbattle] hide; [pet, novehicleui, nooverridebar, nopossessbar] show; hide", - ["alpha"] = 1 - }, - ["Stance"] = { - ["enable"] = true, - ["style"] = "darkenInactive", - ["mouseover"] = false, - ["buttons"] = NUM_STANCE_SLOTS, - ["buttonsPerRow"] = NUM_STANCE_SLOTS, - ["point"] = "BOTTOMLEFT", - ["backdrop"] = false, - ["buttonsize"] = 24, - ["buttonspacing"] = 5, - ["useCustomVisibility"] = false, - ["customVisibility"] = "[petbattle] hide; show", - ["alpha"] = 1 - } -}; - -SV.configs["SVAura"] = { - ["enable"] = true, - ["disableBlizzard"] = true, - ["font"] = "SVUI Number Font", - ["fontSize"] = 12, - ["fontOutline"] = "THINOUTLINE", - ["countOffsetV"] = 0, - ["countOffsetH"] = 0, - ["timeOffsetV"] = -4, - ["timeOffsetH"] = 0, - ["hyperBuffs"] = { - ["enable"] = true, - ["filter"] = true, - }, - ["fadeBy"] = 5, - ["buffs"] = { - ["showBy"] = "LEFT_DOWN", - ["wrapAfter"] = 12, - ["maxWraps"] = 3, - ["wrapXOffset"] = 6, - ["wrapYOffset"] = 16, - ["sortMethod"] = "TIME", - ["sortDir"] = "-", - ["isolate"] = 1, - ["size"] = 32, - }, - ["debuffs"] = { - ["showBy"] = "LEFT_DOWN", - ["wrapAfter"] = 12, - ["maxWraps"] = 1, - ["wrapXOffset"] = 6, - ["wrapYOffset"] = 16, - ["sortMethod"] = "TIME", - ["sortDir"] = "-", - ["isolate"] = 1, - ["size"] = 32, - }, -}; - -SV.configs["SVBag"] = { - ["incompatible"] = { - ["AdiBags"] = true, - ["ArkInventory"] = true, - ["Bagnon"] = true, - }, - ["enable"] = true, - ["sortInverted"] = false, - ["bags"] = { - ["xOffset"] = -40, - ["yOffset"] = 40, - ["point"] = "BOTTOMRIGHT", - }, - ["bank"] = { - ["xOffset"] = 40, - ["yOffset"] = 40, - ["point"] = "BOTTOMLEFT", - }, - ["bagSize"] = 34, - ["bankSize"] = 34, - ["alignToChat"] = false, - ["bagWidth"] = 525, - ["bankWidth"] = 525, - ["currencyFormat"] = "ICON", - ["ignoreItems"] = "", - ["bagTools"] = true, - ["bagBar"] = { - ["enable"] = false, - ["showBy"] = "VERTICAL", - ["sortDirection"] = "ASCENDING", - ["size"] = 30, - ["spacing"] = 4, - ["showBackdrop"] = false, - ["mouseover"] = false, - }, -}; - -SV.configs["SVChat"] = { - ["enable"] = true, - ["tabHeight"] = 20, - ["tabWidth"] = 75, - ["tabStyled"] = true, - ["font"] = "Roboto", - ["fontOutline"] = "OUTLINE", - ["tabFont"] = "SVUI Alert Font", - ["tabFontSize"] = 10, - ["tabFontOutline"] = "OUTLINE", - ["url"] = true, - ["shortChannels"] = true, - ["hyperlinkHover"] = true, - ["throttleInterval"] = 45, - ["fade"] = false, - ["sticky"] = true, - ["smileys"] = true, - ["secretWordTone"] = "None", - ["psst"] = "Whisper Alert", - ["noWipe"] = false, - ["timeStampFormat"] = "NONE", - ["secretWords"] = "%MYNAME%, SVUI", - ["basicTools"] = true, -}; - -SV.configs["SVDock"] = { - ["enable"] = true, - ["dockLeftWidth"] = 412, - ["dockLeftHeight"] = 224, - ["dockRightWidth"] = 412, - ["dockRightHeight"] = 224, - ["dockStatWidth"] = defaultStatBarWidth, - ["buttonSize"] = 30, - ["buttonSpacing"] = 4, - ["leftDockBackdrop"] = true, - ["rightDockBackdrop"] = true, - ["topPanel"] = true, - ["bottomPanel"] = true, - ["docklets"] = { - ["DockletMain"] = "None", - ["MainWindow"] = "None", - ["DockletExtra"] = "None", - ["ExtraWindow"] = "None", - ["enableExtra"] = false, - ["DockletCombatFade"] = true - }, -}; - -SV.configs["SVGear"] = { - ["enable"] = true, - ["specialization"] = { - ["enable"] = false, - }, - ["battleground"] = { - ["enable"] = false, - }, - ["primary"] = "none", - ["secondary"] = "none", - ["equipmentset"] = "none", - ["durability"] = { - ["enable"] = true, - ["onlydamaged"] = true, - }, - ["itemlevel"] = { - ["enable"] = true, - }, - ["misc"] = { - setoverlay = true, - } -}; - -SV.configs["SVHenchmen"] = { - ["enable"] = true, - ["autoRoll"] = false, - ["vendorGrays"] = true, - ["autoAcceptInvite"] = false, - ["autorepchange"] = false, - ["pvpautorelease"] = false, - ["autoquestcomplete"] = false, - ["autoquestreward"] = false, - ["autoquestaccept"] = false, - ["autodailyquests"] = false, - ["autopvpquests"] = false, - ["skipcinematics"] = false, - ["mailOpener"] = true, - ["autoRepair"] = "PLAYER", -}; - -SV.configs["SVMap"] = { - ["incompatible"] = { - ["SexyMap"] = true, - ["SquareMap"] = true, - ["PocketPlot"] = true, - }, - ["enable"] = true, - ["mapAlpha"] = 1, - ["tinyWorldMap"] = true, - ["size"] = 240, - ["customshape"] = true, - ["locationText"] = "CUSTOM", - ["playercoords"] = "CUSTOM", - ["bordersize"] = 6, - ["bordercolor"] = "light", - ["minimapbar"] = { - ["enable"] = true, - ["styleType"] = "HORIZONTAL", - ["layoutDirection"] = "NORMAL", - ["buttonSize"] = 28, - ["mouseover"] = false, - }, -}; - -SV.configs["SVOverride"] = { - ["enable"] = true, - ["loot"] = true, - ["lootRoll"] = true, - ["lootRollWidth"] = 328, - ["lootRollHeight"] = 28, -}; - -SV.configs["SVPlate"] = { - ["enable"] = true, - ["filter"] = {}, - ["font"] = "SVUI Name Font", - ["fontSize"] = 10, - ["fontOutline"] = "OUTLINE", - ["comboPoints"] = true, - ["nonTargetAlpha"] = 0.6, - ["combatHide"] = false, - ["colorNameByValue"] = true, - ["showthreat"] = true, - ["targetcount"] = true, - ["pointer"] = { - ["enable"] = true, - ["colorMatchHealthBar"] = true, - ["color"] = {0.9, 1, 0.9}, - }, - ["healthBar"] = { - ["lowThreshold"] = 0.4, - ["width"] = 108, - ["height"] = 9, - ["text"] = { - ["enable"] = false, - ["format"] = "CURRENT", - ["xOffset"] = 0, - ["yOffset"] = 0, - ["attachTo"] = "CENTER", - }, - }, - ["castBar"] = { - ["height"] = 6, - ["color"] = {1, 0.81, 0}, - ["noInterrupt"] = {0.78, 0.25, 0.25}, - }, - ["raidHealIcon"] = { - ["xOffset"] = -4, - ["yOffset"] = 6, - ["size"] = 36, - ["attachTo"] = "LEFT", - }, - ["threat"] = { - ["enable"] = false, - ["goodScale"] = 1, - ["badScale"] = 1, - ["goodColor"] = {0.29, 0.68, 0.3}, - ["badColor"] = {0.78, 0.25, 0.25}, - ["goodTransitionColor"] = {0.85, 0.77, 0.36}, - ["badTransitionColor"] = {0.94, 0.6, 0.06}, - }, - ["auras"] = { - ["font"] = "SVUI Number Font", - ["fontSize"] = 7, - ["fontOutline"] = "OUTLINE", - ["numAuras"] = 5, - ["additionalFilter"] = "CC" - }, - ["reactions"] = { - ["tapped"] = {0.6, 0.6, 0.6}, - ["friendlyNPC"] = { 0.31, 0.45, 0.63}, - ["friendlyPlayer"] = {0.29, 0.68, 0.3}, - ["neutral"] = {0.85, 0.77, 0.36}, - ["enemy"] = {0.78, 0.25, 0.25}, - }, -}; - -SV.configs["SVStats"] = { - ["enable"] = true, - ["font"] = "SVUI Number Font", - ["fontSize"] = 12, - ["fontOutline"] = "OUTLINE", - ["showBackground"] = true, - ["shortGold"] = true, - ["panels"] = { - ["BottomRightDataPanel"] = { - ["right"] = "Bags", - ["left"] = "Friends", - ["middle"] = "Guild", - }, - ["BottomLeftDataPanel"] = { - ["left"] = "Time", - ["middle"] = "System", - ["right"] = "Gold", - }, - ["TopLeftDataPanel"] = { - ["left"] = "Durability Bar", - ["middle"] = "Reputation Bar", - ["right"] = "Experience Bar", - }, - ["TopRightDataPanel"] = { - ["left"] = "None", - ["middle"] = "None", - ["right"] = "None", - }, - }, - ["localtime"] = true, - ["time24"] = false, - ["battleground"] = true, - ["topLeftDockPanel"] = true, - ["bottomLeftDockPanel"] = true, - ["bottomRightDockPanel"] = true, - ["panelTransparency"] = false, -}; - -SV.configs["SVTip"] = { - ["enable"] = true, - ["cursorAnchor"] = false, - ["targetInfo"] = true, - ["playerTitles"] = true, - ["guildRanks"] = true, - ["inspectInfo"] = false, - ["itemCount"] = true, - ["spellID"] = false, - ["progressInfo"] = true, - ["visibility"] = { - ["unitFrames"] = "NONE", - ["combat"] = false, - }, - ["healthBar"] = { - ["text"] = true, - ["height"] = 10, - ["font"] = "Roboto", - ["fontSize"] = 10, - }, -}; - -SV.configs["SVUnit"] = { - ["enable"] = true, - ["disableBlizzard"] = true, - - ["smoothbars"] = false, - ["statusbar"] = "SVUI BasicBar", - ["auraBarStatusbar"] = "SVUI GlowBar", - - ["font"] = "SVUI Number Font", - ["fontSize"] = 12, - ["fontOutline"] = "OUTLINE", - - ["auraFont"] = "SVUI Alert Font", - ["auraFontSize"] = 12, - ["auraFontOutline"] = "OUTLINE", - - ["OORAlpha"] = 0.65, - ["groupOORAlpha"] = 0.45, - ["combatFadeRoles"] = true, - ["combatFadeNames"] = true, - ["debuffHighlighting"] = true, - ["smartRaidFilter"] = true, - ["fastClickTarget"] = false, - ["healglow"] = true, - ["glowtime"] = 0.8, - ["glowcolor"] = {1, 1, 0}, - ["autoRoleSet"] = false, - ["healthclass"] = true, - ["forceHealthColor"] = false, - ["overlayAnimation"] = true, - ["powerclass"] = false, - ["colorhealthbyvalue"] = true, - ["customhealthbackdrop"] = true, - ["classbackdrop"] = false, - ["auraBarByType"] = true, - ["auraBarShield"] = true, - ["castClassColor"] = false, - ["xrayFocus"] = true, - ["grid"] = { - ["enable"] = false, - ["size"] = 28, - ["shownames"] = false, - ["font"] = "Roboto", - ["fontsize"] = 16, - }, - ["player"] = { - ["enable"] = true, - ["width"] = 215, - ["height"] = 60, - ["lowmana"] = 30, - ["combatfade"] = false, - ["predict"] = false, - ["threatEnabled"] = true, - ["playerExpBar"] = false, - ["playerRepBar"] = false, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "current", - ["name_colored"] = true, - ["name_length"] = 21, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "[health:color][health:current]", - ["position"] = "INNERRIGHT", - ["xOffset"] = 0, - ["yOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 11, - }, - ["power"] = - { - ["enable"] = true, - ["tags"] = "", - ["height"] = 10, - ["position"] = "INNERLEFT", - ["hideonnpc"] = false, - ["xOffset"] = 0, - ["yOffset"] = 0, - ["detachedWidth"] = 250, - ["attachTextToPower"] = false, - ["druidMana"] = true, - ["fontSize"] = 11, - }, - ["name"] = - { - ["position"] = "CENTER", - ["tags"] = "", - ["xOffset"] = 0, - ["yOffset"] = 0, - ["font"] = "SVUI Number Font", - ["fontSize"] = 13, - ["fontOutline"] = "OUTLINE", - }, - ["pvp"] = - { - ["font"] = "SVUI Number Font", - ["fontSize"] = 12, - ["fontOutline"] = "OUTLINE", - ["position"] = "BOTTOM", - ["tags"] = "||cFFB04F4F[pvptimer][mouseover]||r", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - ["portrait"] = - { - ["enable"] = true, - ["width"] = 50, - ["overlay"] = true, - ["camDistanceScale"] = 1.4, - ["rotation"] = 0, - ["style"] = "3D", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 8, - ["numrows"] = 1, - ["attachTo"] = "DEBUFFS", - ["anchorPoint"] = "TOPLEFT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = true, - ["filterRaid"] = true, - ["filterBlocked"] = true, - ["filterAllowed"] = true, - ["filterInfinite"] = true, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = 8, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = true, - ["perrow"] = 8, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "TOPLEFT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = false, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = false, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = 8, - ["sizeOverride"] = 0, - }, - ["aurabar"] = - { - ["enable"] = false, - ["anchorPoint"] = "ABOVE", - ["attachTo"] = "DEBUFFS", - ["filterPlayer"] = true, - ["filterRaid"] = true, - ["filterBlocked"] = true, - ["filterAllowed"] = true, - ["filterInfinite"] = true, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["friendlyAuraType"] = "HELPFUL", - ["enemyAuraType"] = "HARMFUL", - ["height"] = 18, - ["sort"] = "TIME_REMAINING", - }, - ["castbar"] = - { - ["enable"] = true, - ["width"] = 215, - ["height"] = 20, - ["matchFrameWidth"] = true, - ["icon"] = true, - ["latency"] = false, - ["format"] = "REMAINING", - ["ticks"] = false, - ["spark"] = true, - ["displayTarget"] = false, - ["useCustomColor"] = false, - ["castingColor"] = {0.8, 0.8, 0}, - ["sparkColor"] = {1, 0.72, 0}, - }, - ["classbar"] = - { - ["enable"] = true, - ["slideLeft"] = true, - ["inset"] = "inset", - ["height"] = 25, - ["detachFromFrame"] = false, - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 25, - ["attachTo"] = "INNERBOTTOMRIGHT", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - ["combatIcon"] = { - ["enable"] = true, - ["size"] = 26, - ["attachTo"] = "INNERTOPRIGHT", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - ["restIcon"] = { - ["enable"] = true, - ["size"] = 25, - ["attachTo"] = "INNERTOPRIGHT", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - }, - ["stagger"] = - { - ["enable"] = true, - }, - }, - ["target"] = { - ["enable"] = true, - ["width"] = 215, - ["height"] = 60, - ["threatEnabled"] = true, - ["rangeCheck"] = true, - ["predict"] = false, - ["smartAuraDisplay"] = "DISABLED", - ["middleClickFocus"] = true, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "current", - ["name_colored"] = true, - ["name_length"] = 18, - ["smartlevel"] = true, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "[health:color][health:current]", - ["position"] = "INNERLEFT", - ["xOffset"] = 0, - ["yOffset"] = 0, - ["reversed"] = true, - ["fontSize"] = 11, - }, - ["power"] = - { - ["enable"] = true, - ["tags"] = "[power:color][power:current]", - ["height"] = 10, - ["position"] = "INNERRIGHT", - ["hideonnpc"] = true, - ["xOffset"] = 0, - ["yOffset"] = 0, - ["attachTextToPower"] = false, - ["fontSize"] = 11, - }, - ["name"] = - { - ["position"] = "INNERRIGHT", - ["tags"] = "[name:color][name:18][smartlevel]", - ["xOffset"] = -2, - ["yOffset"] = 36, - ["font"] = "SVUI Name Font", - ["fontSize"] = 15, - ["fontOutline"] = "NONE", - }, - ["portrait"] = - { - ["enable"] = true, - ["width"] = 50, - ["overlay"] = true, - ["rotation"] = 0, - ["camDistanceScale"] = 1.4, - ["style"] = "3D", - }, - ["buffs"] = - { - ["enable"] = true, - ["perrow"] = 8, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "TOPRIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = - { - friendly = false, - enemy = false, - }, - ["filterRaid"] = - { - friendly = false, - enemy = false, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = false, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = 8, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = true, - ["perrow"] = 8, - ["numrows"] = 1, - ["attachTo"] = "BUFFS", - ["anchorPoint"] = "TOPRIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = - { - friendly = false, - enemy = true, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = false, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = 8, - ["sizeOverride"] = 0, - }, - ["aurabar"] = - { - ["enable"] = false, - ["anchorPoint"] = "ABOVE", - ["attachTo"] = "DEBUFFS", - ["filterPlayer"] = - { - friendly = true, - enemy = true, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = true, - enemy = true, - }, - ["filterRaid"] = - { - friendly = true, - enemy = true, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["friendlyAuraType"] = "HELPFUL", - ["enemyAuraType"] = "HARMFUL", - ["height"] = 18, - ["sort"] = "TIME_REMAINING", - }, - ["castbar"] = - { - ["enable"] = true, - ["width"] = 215, - ["height"] = 20, - ["matchFrameWidth"] = true, - ["icon"] = true, - ["format"] = "REMAINING", - ["spark"] = true, - ["useCustomColor"] = false, - ["castingColor"] = {0.8, 0.8, 0}, - ["sparkColor"] = {1, 0.72, 0}, - }, - ["combobar"] = - { - ["enable"] = true, - ["height"] = 30, - ["smallIcons"] = false, - ["hudStyle"] = false, - ["hudScale"] = 64, - ["autoHide"] = true, - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 30, - ["attachTo"] = "INNERLEFT", - ["xOffset"] = 0, - ["yOffset"] = 0, - } - }, - }, - ["targettarget"] = { - ["enable"] = true, - ["rangeCheck"] = true, - ["threatEnabled"] = false, - ["width"] = 150, - ["height"] = 30, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "none", - ["name_colored"] = true, - ["name_length"] = 10, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "", - ["position"] = "INNERRIGHT", - ["xOffset"] = 0, - ["yOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 9, - }, - ["power"] = - { - ["enable"] = false, - ["tags"] = "", - ["height"] = 7, - ["position"] = "INNERLEFT", - ["hideonnpc"] = false, - ["xOffset"] = 0, - ["yOffset"] = 0, - ["fontSize"] = 9, - }, - ["name"] = - { - ["position"] = "CENTER", - ["tags"] = "[name:color][name:10]", - ["xOffset"] = 0, - ["yOffset"] = 1, - ["font"] = "SVUI Narrator Font", - ["fontSize"] = 14, - ["fontOutline"] = "OUTLINE", - }, - ["portrait"] = - { - ["enable"] = true, - ["width"] = 45, - ["overlay"] = true, - ["rotation"] = 0, - ["camDistanceScale"] = 1, - ["style"] = "3D", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 7, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "BOTTOMLEFT", - ["verticalGrowth"] = "DOWN", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = - { - friendly = true, - enemy = false, - }, - ["filterRaid"] = - { - friendly = true, - enemy = false, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = true, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = -8, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = false, - ["perrow"] = 5, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "TOPLEFT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = - { - friendly = false, - enemy = true, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = false, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = 8, - ["sizeOverride"] = 0, - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 18, - ["attachTo"] = "INNERRIGHT", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - }, - }, - ["focus"] = { - ["enable"] = true, - ["rangeCheck"] = true, - ["threatEnabled"] = true, - ["width"] = 170, - ["height"] = 30, - ["predict"] = false, - ["smartAuraDisplay"] = "DISABLED", - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "none", - ["name_colored"] = true, - ["name_length"] = 15, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "", - ["position"] = "INNERRIGHT", - ["xOffset"] = 0, - ["yOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = true, - ["tags"] = "", - ["height"] = 7, - ["position"] = "INNERLEFT", - ["hideonnpc"] = false, - ["xOffset"] = 0, - ["yOffset"] = 0, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "CENTER", - ["tags"] = "[name:color][name:15]", - ["xOffset"] = 0, - ["yOffset"] = 0, - ["font"] = "SVUI Narrator Font", - ["fontSize"] = 14, - ["fontOutline"] = "OUTLINE", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 7, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "BOTTOMRIGHT", - ["verticalGrowth"] = "DOWN", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = - { - friendly = true, - enemy = false, - }, - ["filterRaid"] = - { - friendly = true, - enemy = false, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = true, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = -8, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = true, - ["perrow"] = 5, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "TOPRIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = - { - friendly = false, - enemy = true, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = false, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = 8, - ["sizeOverride"] = 0, - }, - ["castbar"] = - { - ["enable"] = true, - ["width"] = 170, - ["height"] = 18, - ["icon"] = true, - ["matchFrameWidth"] = true, - ["format"] = "REMAINING", - ["spark"] = true, - ["useCustomColor"] = false, - ["castingColor"] = {0.8, 0.8, 0}, - ["sparkColor"] = {1, 0.72, 0}, - }, - ["aurabar"] = - { - ["enable"] = false, - ["anchorPoint"] = "ABOVE", - ["attachTo"] = "FRAME", - ["filterPlayer"] = - { - friendly = false, - enemy = true, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = false, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["filterRaid"] = - { - friendly = true, - enemy = true, - }, - ["useFilter"] = "", - ["friendlyAuraType"] = "HELPFUL", - ["enemyAuraType"] = "HARMFUL", - ["height"] = 18, - ["sort"] = "TIME_REMAINING", - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 18, - ["attachTo"] = "INNERLEFT", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - }, - }, - ["focustarget"] = { - ["enable"] = false, - ["rangeCheck"] = true, - ["threatEnabled"] = false, - ["width"] = 150, - ["height"] = 26, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "none", - ["name_colored"] = true, - ["name_length"] = 15, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "", - ["position"] = "INNERRIGHT", - ["xOffset"] = 0, - ["yOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = false, - ["tags"] = "", - ["height"] = 7, - ["position"] = "INNERLEFT", - ["hideonnpc"] = false, - ["xOffset"] = 0, - ["yOffset"] = 0, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "CENTER", - ["tags"] = "[name:color][name:15]", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["font"] = "SVUI Narrator Font", - ["fontSize"] = 14, - ["fontOutline"] = "OUTLINE", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 7, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "BOTTOMLEFT", - ["verticalGrowth"] = "DOWN", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = - { - friendly = true, - enemy = false, - }, - ["filterRaid"] = - { - friendly = true, - enemy = false, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = true, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = -8, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = false, - ["perrow"] = 5, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "TOPLEFT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = - { - friendly = false, - enemy = true, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = false, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = 8, - ["sizeOverride"] = 0, - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 18, - ["attachTo"] = "INNERLEFT", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - }, - }, - ["pet"] = { - ["enable"] = true, - ["rangeCheck"] = true, - ["threatEnabled"] = true, - ["width"] = 150, - ["height"] = 30, - ["predict"] = false, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "none", - ["name_colored"] = true, - ["name_length"] = 10, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "", - ["position"] = "INNERRIGHT", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = false, - ["tags"] = "", - ["height"] = 7, - ["position"] = "INNERLEFT", - ["hideonnpc"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "CENTER", - ["tags"] = "[name:color][name:8]", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["font"] = "SVUI Narrator Font", - ["fontSize"] = 14, - ["fontOutline"] = "OUTLINE", - }, - ["portrait"] = - { - ["enable"] = true, - ["width"] = 45, - ["overlay"] = true, - ["rotation"] = 0, - ["camDistanceScale"] = 1, - ["style"] = "3D", - }, - ["buffs"] = - { - ["enable"] = true, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "LEFT", - ["verticalGrowth"] = "DOWN", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = true, - ["filterRaid"] = true, - ["filterBlocked"] = true, - ["filterAllowed"] = true, - ["filterInfinite"] = true, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = -3, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = true, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHT", - ["verticalGrowth"] = "DOWN", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = false, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = false, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 3, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["castbar"] = - { - ["enable"] = true, - ["width"] = 130, - ["height"] = 8, - ["icon"] = false, - ["matchFrameWidth"] = true, - ["format"] = "REMAINING", - ["spark"] = false, - ["useCustomColor"] = false, - ["castingColor"] = {0.8, 0.8, 0}, - ["sparkColor"] = {1, 0.72, 0}, - }, - ["auraWatch"] = - { - ["enable"] = true, - ["size"] = 8, - }, - }, - ["pettarget"] = { - ["enable"] = false, - ["rangeCheck"] = true, - ["threatEnabled"] = false, - ["width"] = 130, - ["height"] = 26, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "none", - ["name_colored"] = true, - ["name_length"] = 15, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "", - ["position"] = "INNERRIGHT", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = false, - ["tags"] = "", - ["height"] = 7, - ["position"] = "INNERLEFT", - ["hideonnpc"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "CENTER", - ["tags"] = "[name:color][name:15]", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["font"] = "SVUI Narrator Font", - ["fontSize"] = 14, - ["fontOutline"] = "OUTLINE", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 7, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "BOTTOMLEFT", - ["verticalGrowth"] = "DOWN", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = - { - friendly = true, - enemy = false, - }, - ["filterRaid"] = - { - friendly = true, - enemy = false, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = true, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = -8, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = false, - ["perrow"] = 5, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "BOTTOMRIGHT", - ["verticalGrowth"] = "DOWN", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = - { - friendly = false, - enemy = true, - }, - ["filterBlocked"] = - { - friendly = true, - enemy = true, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = false, - enemy = false, - }, - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "", - ["xOffset"] = 0, - ["yOffset"] = 8, - ["sizeOverride"] = 0, - }, - }, - ["boss"] = { - ["enable"] = true, - ["rangeCheck"] = true, - ["showBy"] = "UP", - ["width"] = 200, - ["height"] = 45, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "current", - ["name_colored"] = true, - ["name_length"] = 15, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "[health:color][health:current]", - ["position"] = "INNERTOPRIGHT", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = true, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = true, - ["tags"] = "[power:color][power:current]", - ["height"] = 7, - ["position"] = "INNERBOTTOMRIGHT", - ["hideonnpc"] = false, - ["yOffset"] = 7, - ["xOffset"] = 0, - ["fontSize"] = 10, - }, - ["portrait"] = - { - ["enable"] = true, - ["width"] = 35, - ["overlay"] = true, - ["rotation"] = 0, - ["camDistanceScale"] = 1, - ["style"] = "3D", - }, - ["name"] = - { - ["position"] = "INNERLEFT", - ["tags"] = "[name:color][name:15]", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["font"] = "SVUI Number Font", - ["fontSize"] = 12, - ["fontOutline"] = "OUTLINE", - }, - ["buffs"] = - { - ["enable"] = true, - ["perrow"] = 2, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "LEFT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = false, - ["filterRaid"] = false, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = false, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = -8, - ["yOffset"] = 0, - ["sizeOverride"] = 40, - }, - ["debuffs"] = - { - ["enable"] = true, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "BUFFS", - ["anchorPoint"] = "LEFT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = true, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = false, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = -8, - ["yOffset"] = 0, - ["sizeOverride"] = 40, - }, - ["castbar"] = - { - ["enable"] = true, - ["width"] = 200, - ["height"] = 18, - ["icon"] = true, - ["matchFrameWidth"] = true, - ["format"] = "REMAINING", - ["spark"] = true, - ["useCustomColor"] = false, - ["castingColor"] = {0.8, 0.8, 0}, - ["sparkColor"] = {1, 0.72, 0}, - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 22, - ["attachTo"] = "CENTER", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - }, - }, - ["arena"] = { - ["enable"] = true, - ["rangeCheck"] = true, - ["showBy"] = "UP", - ["width"] = 215, - ["height"] = 45, - ["predict"] = false, - ["colorOverride"] = "USE_DEFAULT", - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "current", - ["name_colored"] = true, - ["name_length"] = 15, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "[health:color][health:current]", - ["position"] = "INNERTOPRIGHT", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = true, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = true, - ["tags"] = "[power:color][power:current]", - ["height"] = 7, - ["position"] = "INNERBOTTOMRIGHT", - ["hideonnpc"] = false, - ["yOffset"] = 7, - ["xOffset"] = 0, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "INNERLEFT", - ["tags"] = "[name:color][name:15]", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["font"] = "SVUI Number Font", - ["fontSize"] = 12, - ["fontOutline"] = "OUTLINE", - }, - ["portrait"] = - { - ["enable"] = true, - ["width"] = 45, - ["overlay"] = true, - ["rotation"] = 0, - ["camDistanceScale"] = 1, - ["style"] = "3D", - }, - ["buffs"] = - { - ["enable"] = true, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "LEFT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = - { - friendly = false, - enemy = false, - }, - ["filterRaid"] = - { - friendly = false, - enemy = false, - }, - ["filterBlocked"] = - { - friendly = false, - enemy = false, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "Shield", - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["xOffset"] = -8, - ["yOffset"] = 0, - ["sizeOverride"] = 40, - }, - ["debuffs"] = - { - ["enable"] = true, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "BUFFS", - ["anchorPoint"] = "LEFT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "LEFT", - ["filterPlayer"] = - { - friendly = false, - enemy = false, - }, - ["filterBlocked"] = - { - friendly = false, - enemy = false, - }, - ["filterAllowed"] = - { - friendly = false, - enemy = false, - }, - ["filterInfinite"] = - { - friendly = false, - enemy = false, - }, - ["useFilter"] = "CC", - ["filterDispellable"] = - { - friendly = false, - enemy = false, - }, - ["xOffset"] = -8, - ["yOffset"] = 0, - ["sizeOverride"] = 40, - }, - ["castbar"] = - { - ["enable"] = true, - ["width"] = 215, - ["height"] = 18, - ["icon"] = true, - ["matchFrameWidth"] = true, - ["format"] = "REMAINING", - ["spark"] = true, - ["useCustomColor"] = false, - ["castingColor"] = {0.8, 0.8, 0}, - ["sparkColor"] = {1, 0.72, 0}, - }, - ["pvp"] = - { - ["enable"] = true, - ["trinketPosition"] = "LEFT", - ["trinketSize"] = 45, - ["trinketX"] = -2, - ["trinketY"] = 0, - ["specPosition"] = "RIGHT", - ["specSize"] = 45, - ["specX"] = 2, - ["specY"] = 0, - }, - }, - ["party"] = { - ["enable"] = true, - ["rangeCheck"] = true, - ["threatEnabled"] = true, - ["visibility"] = "[@raid6, exists][nogroup] hide;show", - ["showBy"] = "UP_RIGHT", - ["wrapXOffset"] = 9, - ["wrapYOffset"] = 13, - ["groupCount"] = 1, - ["gRowCol"] = 1, - ["customSorting"] = false, - ["sortMethod"] = "GROUP", - ["sortDir"] = "ASC", - ["invertGroupingOrder"] = false, - ["startFromCenter"] = false, - ["showPlayer"] = true, - ["predict"] = false, - ["colorOverride"] = "USE_DEFAULT", - ["width"] = 70, - ["height"] = 70, - ["gridAllowed"] = true, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "none", - ["name_colored"] = true, - ["name_length"] = 10, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "", - ["position"] = "BOTTOM", - ["orientation"] = "HORIZONTAL", - ["frequentUpdates"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = true, - ["tags"] = "", - ["frequentUpdates"] = false, - ["height"] = 7, - ["position"] = "BOTTOMRIGHT", - ["hideonnpc"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "INNERTOPLEFT", - ["tags"] = "[name:color][name:10]", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["font"] = "SVUI Narrator Font", - ["fontSize"] = 13, - ["fontOutline"] = "OUTLINE", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 2, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHTTOP", - ["verticalGrowth"] = "DOWN", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = true, - ["filterRaid"] = true, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = true, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = true, - ["perrow"] = 2, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHTTOP", - ["verticalGrowth"] = "DOWN", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = false, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = false, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["auraWatch"] = - { - ["enable"] = true, - ["size"] = 8, - ["fontSize"] = 11, - }, - ["petsGroup"] = - { - ["enable"] = false, - ["width"] = 30, - ["height"] = 30, - ["gridAllowed"] = true, - ["anchorPoint"] = "BOTTOMLEFT", - ["xOffset"] = - 1, - ["yOffset"] = 0, - ["name_length"] = 3, - ["tags"] = "[name:3]", - }, - ["targetsGroup"] = - { - ["enable"] = false, - ["width"] = 30, - ["height"] = 30, - ["gridAllowed"] = true, - ["anchorPoint"] = "TOPLEFT", - ["xOffset"] = - 1, - ["yOffset"] = 0, - ["name_length"] = 3, - ["tags"] = "[name:3]", - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 25, - ["attachTo"] = "INNERBOTTOMLEFT", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - ["roleIcon"] = - { - ["enable"] = true, - ["size"] = 18, - ["attachTo"] = "INNERBOTTOMRIGHT", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - ["raidRoleIcons"] = - { - ["enable"] = true, - ["size"] = 18, - ["attachTo"] = "TOPLEFT", - ["xOffset"] = 0, - ["yOffset"] = -4, - }, - }, - ["portrait"] = - { - ["enable"] = true, - ["width"] = 45, - ["overlay"] = true, - ["rotation"] = 0, - ["camDistanceScale"] = 1, - ["style"] = "3D", - }, - }, - ["raid10"] = { - ["enable"] = true, - ["rangeCheck"] = true, - ["threatEnabled"] = true, - ["visibility"] = "[@raid6, noexists][@raid11, exists][nogroup] hide;show", - ["showBy"] = "RIGHT_DOWN", - ["wrapXOffset"] = 8, - ["wrapYOffset"] = 8, - ["groupCount"] = 2, - ["gRowCol"] = 1, - ["customSorting"] = false, - ["sortMethod"] = "GROUP", - ["sortDir"] = "ASC", - ["showPlayer"] = true, - ["predict"] = false, - ["colorOverride"] = "USE_DEFAULT", - ["width"] = 75, - ["height"] = 34, - ["gridAllowed"] = true, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "none", - ["name_colored"] = true, - ["name_length"] = 4, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "", - ["position"] = "BOTTOM", - ["orientation"] = "HORIZONTAL", - ["frequentUpdates"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = true, - ["tags"] = "", - ["frequentUpdates"] = false, - ["height"] = 4, - ["position"] = "BOTTOMRIGHT", - ["hideonnpc"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "INNERTOPLEFT", - ["tags"] = "[name:color][name:4]", - ["yOffset"] = 0, - ["xOffset"] = 8, - ["font"] = "SVUI Default Font", - ["fontSize"] = 10, - ["fontOutline"] = "OUTLINE", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = true, - ["filterRaid"] = true, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = true, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = false, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = false, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = false, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["auraWatch"] = - { - ["enable"] = true, - ["size"] = 8, - }, - ["rdebuffs"] = - { - ["enable"] = true, - ["size"] = 26, - ["xOffset"] = 0, - ["yOffset"] = 2, - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 15, - ["attachTo"] = "INNERBOTTOMRIGHT", - ["xOffset"] = -8, - ["yOffset"] = 0, - }, - ["roleIcon"] = - { - ["enable"] = true, - ["size"] = 12, - ["attachTo"] = "INNERBOTTOMLEFT", - ["xOffset"] = 8, - ["yOffset"] = 0, - }, - ["raidRoleIcons"] = - { - ["enable"] = true, - ["size"] = 18, - ["attachTo"] = "TOPLEFT", - ["xOffset"] = 8, - ["yOffset"] = -4, - }, - }, - }, - ["raid25"] = { - ["enable"] = true, - ["rangeCheck"] = true, - ["threatEnabled"] = true, - ["visibility"] = "[@raid6, noexists][@raid11, noexists][@raid26, exists][nogroup] hide;show", - ["showBy"] = "RIGHT_DOWN", - ["wrapXOffset"] = 8, - ["wrapYOffset"] = 8, - ["groupCount"] = 5, - ["gRowCol"] = 1, - ["customSorting"] = false, - ["sortMethod"] = "GROUP", - ["sortDir"] = "ASC", - ["showPlayer"] = true, - ["predict"] = false, - ["colorOverride"] = "USE_DEFAULT", - ["width"] = 50, - ["height"] = 30, - ["gridAllowed"] = true, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "none", - ["name_colored"] = true, - ["name_length"] = 4, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "", - ["position"] = "BOTTOM", - ["orientation"] = "HORIZONTAL", - ["frequentUpdates"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = true, - ["tags"] = "", - ["height"] = 4, - ["position"] = "BOTTOMRIGHT", - ["hideonnpc"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "INNERTOPLEFT", - ["tags"] = "[name:color][name:4]", - ["yOffset"] = 0, - ["xOffset"] = 8, - ["font"] = "SVUI Default Font", - ["fontSize"] = 10, - ["fontOutline"] = "OUTLINE", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = true, - ["filterRaid"] = true, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = true, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = false, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = false, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = false, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["auraWatch"] = - { - ["enable"] = true, - ["size"] = 8, - }, - ["rdebuffs"] = - { - ["enable"] = true, - ["size"] = 26, - ["xOffset"] = 0, - ["yOffset"] = 2, - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 15, - ["attachTo"] = "INNERBOTTOMRIGHT", - ["xOffset"] = -8, - ["yOffset"] = 0, - }, - ["roleIcon"] = - { - ["enable"] = true, - ["size"] = 12, - ["attachTo"] = "INNERBOTTOMLEFT", - ["xOffset"] = 8, - ["yOffset"] = 0, - }, - ["raidRoleIcons"] = - { - ["enable"] = true, - ["size"] = 18, - ["attachTo"] = "TOPLEFT", - ["xOffset"] = 8, - ["yOffset"] = -4, - }, - }, - }, - ["raid40"] = { - ["enable"] = true, - ["rangeCheck"] = true, - ["threatEnabled"] = true, - ["visibility"] = "[@raid6, noexists][@raid11, noexists][@raid26, noexists][nogroup] hide;show", - ["showBy"] = "RIGHT_DOWN", - ["wrapXOffset"] = 8, - ["wrapYOffset"] = 8, - ["groupCount"] = 8, - ["gRowCol"] = 1, - ["customSorting"] = false, - ["sortMethod"] = "GROUP", - ["sortDir"] = "ASC", - ["showPlayer"] = true, - ["predict"] = false, - ["colorOverride"] = "USE_DEFAULT", - ["width"] = 50, - ["height"] = 30, - ["gridAllowed"] = true, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "none", - ["name_colored"] = true, - ["name_length"] = 4, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "", - ["position"] = "BOTTOM", - ["orientation"] = "HORIZONTAL", - ["frequentUpdates"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["power"] = - { - ["enable"] = false, - ["tags"] = "", - ["frequentUpdates"] = false, - ["height"] = 4, - ["position"] = "BOTTOMRIGHT", - ["hideonnpc"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "INNERTOPLEFT", - ["tags"] = "[name:color][name:4]", - ["yOffset"] = 0, - ["xOffset"] = 8, - ["font"] = "SVUI Default Font", - ["fontSize"] = 10, - ["fontOutline"] = "OUTLINE", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = true, - ["filterRaid"] = true, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = true, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = false, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = false, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = false, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["rdebuffs"] = - { - ["enable"] = true, - ["size"] = 22, - ["xOffset"] = 0, - ["yOffset"] = 2, - }, - ["auraWatch"] = - { - ["enable"] = true, - ["size"] = 8, - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 15, - ["attachTo"] = "INNERBOTTOMRIGHT", - ["xOffset"] = -8, - ["yOffset"] = 0, - }, - ["roleIcon"] = - { - ["enable"] = true, - ["size"] = 12, - ["attachTo"] = "INNERBOTTOMLEFT", - ["xOffset"] = 8, - ["yOffset"] = 0, - }, - ["raidRoleIcons"] = - { - ["enable"] = true, - ["size"] = 18, - ["attachTo"] = "TOPLEFT", - ["xOffset"] = 8, - ["yOffset"] = -4, - }, - }, - }, - ["raidpet"] = { - ["enable"] = false, - ["rangeCheck"] = true, - ["threatEnabled"] = true, - ["visibility"] = "[group:raid] show; hide", - ["showBy"] = "DOWN_RIGHT", - ["wrapXOffset"] = 3, - ["wrapYOffset"] = 3, - ["groupCount"] = 2, - ["gRowCol"] = 1, - ["customSorting"] = true, - ["sortMethod"] = "PETNAME", - ["sortDir"] = "ASC", - ["invertGroupingOrder"] = false, - ["startFromCenter"] = false, - ["predict"] = false, - ["colorOverride"] = "USE_DEFAULT", - ["width"] = 80, - ["height"] = 30, - ["gridAllowed"] = true, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "deficit", - ["name_colored"] = true, - ["name_length"] = 4, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "[health:color][health:deficit]", - ["position"] = "BOTTOM", - ["orientation"] = "HORIZONTAL", - ["frequentUpdates"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "INNERTOPLEFT", - ["tags"] = "[name:color][name:4]", - ["yOffset"] = 4, - ["xOffset"] = -4, - ["font"] = "SVUI Default Font", - ["fontSize"] = 10, - ["fontOutline"] = "OUTLINE", - }, - ["buffs"] = - { - ["enable"] = false, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = true, - ["filterRaid"] = true, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = true, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["debuffs"] = - { - ["enable"] = false, - ["perrow"] = 3, - ["numrows"] = 1, - ["attachTo"] = "FRAME", - ["anchorPoint"] = "RIGHT", - ["verticalGrowth"] = "UP", - ["horizontalGrowth"] = "RIGHT", - ["filterPlayer"] = false, - ["filterBlocked"] = true, - ["filterAllowed"] = false, - ["filterInfinite"] = false, - ["filterDispellable"] = false, - ["useFilter"] = "", - ["xOffset"] = 8, - ["yOffset"] = 0, - ["sizeOverride"] = 0, - }, - ["auraWatch"] = - { - ["enable"] = true, - ["size"] = 8, - }, - ["rdebuffs"] = - { - ["enable"] = true, - ["size"] = 26, - ["xOffset"] = 0, - ["yOffset"] = 2, - }, - ["icons"] = - { - ["raidicon"] = - { - ["enable"] = true, - ["size"] = 18, - ["attachTo"] = "INNERTOPLEFT", - ["xOffset"] = 0, - ["yOffset"] = 0, - }, - }, - }, - ["tank"] = { - ["enable"] = true, - ["threatEnabled"] = true, - ["rangeCheck"] = true, - ["width"] = 120, - ["height"] = 28, - ["gridAllowed"] = true, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "deficit", - ["name_colored"] = true, - ["name_length"] = 8, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "[health:color][health:deficit]", - ["position"] = "INNERRIGHT", - ["orientation"] = "HORIZONTAL", - ["frequentUpdates"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "INNERLEFT", - ["tags"] = "[name:color][name:8]", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["font"] = "SVUI Default Font", - ["fontSize"] = 10, - ["fontOutline"] = "OUTLINE", - }, - ["targetsGroup"] = - { - ["enable"] = false, - ["anchorPoint"] = "RIGHT", - ["xOffset"] = 1, - ["yOffset"] = 0, - ["width"] = 120, - ["height"] = 28, - }, - }, - ["assist"] = { - ["enable"] = true, - ["threatEnabled"] = true, - ["rangeCheck"] = true, - ["width"] = 120, - ["height"] = 28, - ["gridAllowed"] = true, - ["formatting"] = { - ["power_colored"] = true, - ["power_type"] = "none", - ["power_class"] = false, - ["power_alt"] = false, - ["health_colored"] = true, - ["health_type"] = "deficit", - ["name_colored"] = true, - ["name_length"] = 8, - ["smartlevel"] = false, - ["absorbs"] = false, - ["threat"] = false, - ["incoming"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - }, - ["misc"] = { - ["tags"] = "" - }, - ["health"] = - { - ["tags"] = "[health:color][health:deficit]", - ["position"] = "INNERRIGHT", - ["orientation"] = "HORIZONTAL", - ["frequentUpdates"] = false, - ["yOffset"] = 0, - ["xOffset"] = 0, - ["reversed"] = false, - ["fontSize"] = 10, - }, - ["name"] = - { - ["position"] = "INNERLEFT", - ["tags"] = "[name:color][name:8]", - ["yOffset"] = 0, - ["xOffset"] = 0, - ["font"] = "SVUI Default Font", - ["fontSize"] = 10, - ["fontOutline"] = "OUTLINE", - }, - ["targetsGroup"] = - { - ["enable"] = false, - ["anchorPoint"] = "RIGHT", - ["xOffset"] = 1, - ["yOffset"] = 0, - ["width"] = 120, - ["height"] = 28, - }, - } -} - ---[[ CACHE DATA ]]-- - -local BUFFWATCH_BY_CLASS = { - PRIEST = { - {-- Weakened Soul - ["enabled"] = true, - ["id"] = 6788, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 1, ["g"] = 0, ["b"] = 0}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Prayer of Mending - ["enabled"] = true, - ["id"] = 41635, - ["point"] = "BOTTOMRIGHT", - ["color"] = {["r"] = 0.2, ["g"] = 0.7, ["b"] = 0.2}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Renew - ["enabled"] = true, - ["id"] = 139, - ["point"] = "BOTTOMLEFT", - ["color"] = {["r"] = 0.4, ["g"] = 0.7, ["b"] = 0.2}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Power Word: Shield - ["enabled"] = true, - ["id"] = 17, - ["point"] = "TOPLEFT", - ["color"] = {["r"] = 0.81, ["g"] = 0.85, ["b"] = 0.1}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Power Word: Shield Power Insight - ["enabled"] = true, - ["id"] = 123258, - ["point"] = "TOPLEFT", - ["color"] = {["r"] = 0.81, ["g"] = 0.85, ["b"] = 0.1}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Power Infusion - ["enabled"] = true, - ["id"] = 10060, - ["point"] = "RIGHT", - ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Guardian Spirit - ["enabled"] = true, - ["id"] = 47788, - ["point"] = "LEFT", - ["color"] = {["r"] = 0.86, ["g"] = 0.44, ["b"] = 0}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Pain Suppression - ["enabled"] = true, - ["id"] = 33206, - ["point"] = "LEFT", - ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - }, - DRUID = { - {-- Rejuvenation - ["enabled"] = true, - ["id"] = 774, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 0.8, ["g"] = 0.4, ["b"] = 0.8}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Regrowth - ["enabled"] = true, - ["id"] = 8936, - ["point"] = "BOTTOMLEFT", - ["color"] = {["r"] = 0.2, ["g"] = 0.8, ["b"] = 0.2}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Lifebloom - ["enabled"] = true, - ["id"] = 33763, - ["point"] = "TOPLEFT", - ["color"] = {["r"] = 0.4, ["g"] = 0.8, ["b"] = 0.2}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Wild Growth - ["enabled"] = true, - ["id"] = 48438, - ["point"] = "BOTTOMRIGHT", - ["color"] = {["r"] = 0.8, ["g"] = 0.4, ["b"] = 0}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - }, - PALADIN = { - {-- Beacon of Light - ["enabled"] = true, - ["id"] = 53563, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 0.7, ["g"] = 0.3, ["b"] = 0.7}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Hand of Protection - ["enabled"] = true, - ["id"] = 1022, - ["point"] = "BOTTOMRIGHT", - ["color"] = {["r"] = 0.2, ["g"] = 0.2, ["b"] = 1}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Hand of Freedom - ["enabled"] = true, - ["id"] = 1044, - ["point"] = "BOTTOMRIGHT", - ["color"] = {["r"] = 0.89, ["g"] = 0.45, ["b"] = 0}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Hand of Salvation - ["enabled"] = true, - ["id"] = 1038, - ["point"] = "BOTTOMRIGHT", - ["color"] = {["r"] = 0.93, ["g"] = 0.75, ["b"] = 0}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Hand of Sacrifice - ["enabled"] = true, - ["id"] = 6940, - ["point"] = "BOTTOMRIGHT", - ["color"] = {["r"] = 0.89, ["g"] = 0.1, ["b"] = 0.1}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Hand of Purity - ["enabled"] = true, - ["id"] = 114039, - ["point"] = "BOTTOMRIGHT", - ["color"] = {["r"] = 0.64, ["g"] = 0.41, ["b"] = 0.72}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Sacred Shield - ["enabled"] = true, - ["id"] = 20925, - ["point"] = "TOPLEFT", - ["color"] = {["r"] = 0.93, ["g"] = 0.75, ["b"] = 0}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Eternal Flame - ["enabled"] = true, - ["id"] = 114163, - ["point"] = "BOTTOMLEFT", - ["color"] = {["r"] = 0.87, ["g"] = 0.7, ["b"] = 0.03}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - }, - SHAMAN = { - {-- Riptide - ["enabled"] = true, - ["id"] = 61295, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 0.7, ["g"] = 0.3, ["b"] = 0.7}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Earth Shield - ["enabled"] = true, - ["id"] = 974, - ["point"] = "BOTTOMLEFT", - ["color"] = {["r"] = 0.2, ["g"] = 0.7, ["b"] = 0.2}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Earthliving - ["enabled"] = true, - ["id"] = 51945, - ["point"] = "BOTTOMRIGHT", - ["color"] = {["r"] = 0.7, ["g"] = 0.4, ["b"] = 0.4}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - }, - MONK = { - {--Renewing Mist - ["enabled"] = true, - ["id"] = 119611, - ["point"] = "TOPLEFT", - ["color"] = {["r"] = 0.8, ["g"] = 0.4, ["b"] = 0.8}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Life Cocoon - ["enabled"] = true, - ["id"] = 116849, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 0.2, ["g"] = 0.8, ["b"] = 0.2}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Enveloping Mist - ["enabled"] = true, - ["id"] = 132120, - ["point"] = "BOTTOMLEFT", - ["color"] = {["r"] = 0.4, ["g"] = 0.8, ["b"] = 0.2}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Zen Sphere - ["enabled"] = true, - ["id"] = 124081, - ["point"] = "BOTTOMRIGHT", - ["color"] = {["r"] = 0.7, ["g"] = 0.4, ["b"] = 0}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - }, - ROGUE = { - {-- Tricks of the Trade - ["enabled"] = true, - ["id"] = 57934, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - }, - MAGE = { - {-- Ice Ward - ["enabled"] = true, - ["id"] = 111264, - ["point"] = "TOPLEFT", - ["color"] = {["r"] = 0.2, ["g"] = 0.2, ["b"] = 1}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - }, - WARRIOR = { - {-- Vigilance - ["enabled"] = true, - ["id"] = 114030, - ["point"] = "TOPLEFT", - ["color"] = {["r"] = 0.2, ["g"] = 0.2, ["b"] = 1}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Intervene - ["enabled"] = true, - ["id"] = 3411, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Safe Guard - ["enabled"] = true, - ["id"] = 114029, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - }, - DEATHKNIGHT = { - {-- Unholy Frenzy - ["enabled"] = true, - ["id"] = 49016, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, - ["anyUnit"] = false, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - }, - HUNTER = {}, - WARLOCK = {}, - NONE = {} -} - -local FilterIDs = { - ["Blocked"] = [[36900,36901,36893,114216,97821,36032,132365,8733,57724,25771,57723,36032,58539,26013,6788,71041,41425,55711,8326,23445,24755,25163,80354,95809,95223,124275,124274,124273,117870,123981,15007,113942,89140]], - ["Allowed"] = [[31821,2825,32182,80353,90355,47788,33206,116849,22812,1490,116202,123059,136431,137332,137375,144351,142863,142864,142865,143198]], - ["Strict"] = [[123059,136431,137332,137375,144351,142863,142864,142865,143198]], - ["CC"] = [[47476,91800,91807,91797,108194,115001,33786,2637,339,78675,22570,5211,9005,102359,99,127797,45334,102795,114238,113004,3355,1513,19503,34490,24394,64803,19386,117405,128405,50519,91644,90337,54706,4167,90327,56626,50245,50541,96201,96201,31661,118,55021,122,82691,118271,44572,33395,102051,20066,10326,853,105593,31935,105421,605,64044,8122,9484,15487,114404,88625,113792,87194,2094,1776,6770,1833,51722,1330,408,88611,115197,113953,51514,64695,63685,76780,118905,118345,710,6789,118699,5484,6358,30283,24259,115782,115268,118093,89766,137143,20511,7922,676,105771,107566,132168,107570,118895,18498,116706,117368,115078,122242,119392,119381,120086,116709,123407,140023,25046,20549,107079]], - ["Shield"] = [[17,47515,45243,45438,115610,48797,48792,49039,87256,55233,50461,33206,47788,62618,47585,104773,110913,108359,22812,102342,106922,61336,19263,53480,1966,31224,74001,5277,45182,98007,30823,108271,1022,6940,114039,31821,498,642,86659,31850,118038,55694,97463,12975,114029,871,114030,120954,131523,122783,122278,115213,116849,20594]], - ["Player"] = [[17,47515,45243,45438,45438,115610,110909,12051,12472,80353,12042,32612,110960,108839,111264,108843,48797,48792,49039,87256,49222,55233,50461,49016,51271,96268,33206,47788,62618,47585,6346,10060,114239,119032,27827,104773,110913,108359,113860,113861,113858,88448,22812,102342,106922,61336,117679,102543,102558,102560,16689,132158,106898,1850,106951,29166,52610,69369,112071,124974,19263,53480,51755,54216,34471,3045,3584,131894,90355,90361,31224,74001,5277,45182,51713,114018,2983,121471,11327,108212,57933,79140,13750,98007,30823,108271,16188,2825,79206,16191,8178,58875,108281,108271,16166,114896,1044,1022,1038,6940,114039,31821,498,642,86659,20925,31850,31884,53563,31842,54428,105809,85499,118038,55694,97463,12975,114029,871,114030,18499,1719,23920,114028,46924,3411,107574,120954,131523,122783,122278,115213,116849,125174,116841,20594,59545,20572,26297,68992]], - ["Raid"] = [[116281,116784,116417,116942,116161,117708,118303,118048,118135,117878,117949,116835,116778,116525,122761,122760,122740,123812,123180,123474,122835,123081,122125,121885,121949,117436,118091,117519,122752,123011,116161,123121,119985,119086,119775,122151,138349,137371,136767,137641,137359,137972,136903,136753,137633,137731,133767,133768,136050,138569,134691,137440,137408,137360,135000,143436,143579,147383,146124,144851,144358,144774,147207,144215,143990,144330,143494,142990,143919,143766,143773,146589,143777,143385,143974,145183]] -} - -local FilterOverrides = { - ["45438"] = 5, ["48797"] = 5, ["87256"] = 4, - ["33206"] = 3, ["47585"] = 5, ["22812"] = 2, - ["102342"] = 2, ["19263"] = 5, ["5277"] = 5, - ["1022"] = 5, ["31821"] = 3, ["498"] = 2, - ["642"] = 5, ["86659"] = 4, ["31850"] = 4, - ["118038"] = 5, ["114029"] = 2, ["871"] = 3, - ["120954"] = 2, ["131523"] = 5 -} - -SV.configs["filter"] = { - ["CC"] = {}, - ["Shield"] = {}, - ["Player"] = {}, - ["Blocked"] = {}, - ["Allowed"] = {}, - ["Strict"] = {}, - ["Raid"] = {}, - ["BuffWatch"] = BUFFWATCH_BY_CLASS[filterClass], - ["PetBuffWatch"] = { - {-- Frenzy - ["enabled"] = true, - ["id"] = 19615, - ["point"] = "TOPLEFT", - ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - {-- Mend Pet - ["enabled"] = true, - ["id"] = 136, - ["point"] = "TOPRIGHT", - ["color"] = {["r"] = 0.2, ["g"] = 0.8, ["b"] = 0.2}, - ["anyUnit"] = true, - ["onlyShowMissing"] = false, - ['style'] = 'coloredIcon', - ['displayText'] = false, - ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, - ['textThreshold'] = -1, - ['xOffset'] = 0, - ['yOffset'] = 0 - }, - } -} - -for k, x in pairs(FilterIDs) do - local src = {}; - for id in x:gmatch("([^,]+)") do - if(id) then - local saved - local n = safename(id); - local p = FilterOverrides[tostring(id)] or 0; - if k == "Strict" then - saved = {['enable'] = true, ['spellID'] = id, ['priority'] = p} - else - saved = {['enable'] = true, ['priority'] = p} - end - src[n] = saved - end - end - SV.configs["filter"][k] = src -end \ No newline at end of file diff --git a/Interface/AddOns/SVUI/system/_load.xml b/Interface/AddOns/SVUI/system/_load.xml new file mode 100644 index 0000000..08da957 --- /dev/null +++ b/Interface/AddOns/SVUI/system/_load.xml @@ -0,0 +1,14 @@ +<Ui xmlns="http://www.blizzard.com/wow/ui/"> + <Script file="core.lua"/> + <Script file="configs.lua"/> + <Script file="media.lua"/> + <Script file="utilities.lua"/> + <Script file="animate.lua"/> + <Script file="common.lua"/> + <Script file="visibility.lua"/> + <Script file="timers.lua"/> + <Script file="slash.lua"/> + <Script file="alerts.lua"/> + <Script file="moveable.lua"/> + <Script file="mentalo.lua"/> +</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/system/common.lua b/Interface/AddOns/SVUI/system/common.lua index bd4b3b1..f45ddd7 100644 --- a/Interface/AddOns/SVUI/system/common.lua +++ b/Interface/AddOns/SVUI/system/common.lua @@ -71,11 +71,7 @@ end UI SCALING ########################################################## ]]-- --- function SV:ScreenCalibration(event) --- return --- end - -function SV:ScreenCalibration(event) +function SV:UI_SCALE_CHANGED(event) local scale, evalwidth local gxWidth, gxHeight, gxMod = GetUsableScreen() @@ -172,7 +168,7 @@ end local function scaled(value) if(not SCREEN_MOD) then - SV:ScreenCalibration() + SV:UI_SCALE_CHANGED() end return SCREEN_MOD * floor(value / SCREEN_MOD + .5); end @@ -346,426 +342,29 @@ end SV:NewCallback(FontTemplateUpdates) --[[ ########################################################## -APPENDED TEMPLATING METHODS +XML TEMPLATE LOOKUP TABLE ########################################################## ]]-- local _templates = { - ["Default"] = { - backdrop = { - bgFile = [[Interface\BUTTONS\WHITE8X8]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 1, - insets = - { - left = 0, - right = 0, - top = 0, - bottom = 0, - }, - }, - color = "default", - gradient = "default", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]], - texupdate = false, - padding = 1, - shadow = false, - noupdate = false, - }, - ["Transparent"] = { - backdrop = { - bgFile = [[Interface\BUTTONS\WHITE8X8]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 1, - insets = - { - left = 0, - right = 0, - top = 0, - bottom = 0, - }, - }, - color = "transparent", - gradient = false, - texture = false, - texupdate = false, - padding = 1, - shadow = false, - noupdate = true, - }, - ["Component"] = { - backdrop = { - bgFile = [[Interface\BUTTONS\WHITE8X8]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 2, - insets = - { - left = 0, - right = 0, - top = 0, - bottom = 0, - }, - }, - color = "default", - gradient = "default", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]], - texupdate = false, - padding = 1, - shadow = true, - noupdate = false, - }, - ["Button"] = { - backdrop = { - bgFile = [[Interface\AddOns\SVUI\assets\artwork\Template\BUTTON]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 1, - insets = - { - left = 1, - right = 1, - top = 1, - bottom = 1, - }, - }, - color = "default", - gradient = false, - texture = false, - texupdate = false, - padding = 1, - shadow = true, - noupdate = false, - }, - ["FramedTop"] = { - backdrop = { - bgFile = [[Interface\BUTTONS\WHITE8X8]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 1, - insets = - { - left = 0, - right = 0, - top = 0, - bottom = 0, - }, - }, - color = "default", - gradient = "darkest2", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT2]], - texupdate = true, - padding = 1, - shadow = false, - noupdate = false, - }, - ["FramedBottom"] = { - backdrop = { - bgFile = [[Interface\BUTTONS\WHITE8X8]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 1, - insets = - { - left = 0, - right = 0, - top = 0, - bottom = 0, - }, - }, - color = "default", - gradient = "darkest", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]], - texupdate = true, - padding = 1, - shadow = false, - noupdate = false, - }, - ["Bar"] = { - backdrop = { - bgFile = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 1, - insets = - { - left = 0, - right = 0, - top = 0, - bottom = 0, - }, - }, - color = "transparent", - gradient = false, - texture = false, - texupdate = false, - padding = 1, - shadow = false, - noupdate = true, - }, - ["Slot"] = { - backdrop = { - bgFile = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 1, - insets = - { - left = 1, - right = 1, - top = 1, - bottom = 1, - }, - }, - color = "transparent", - gradient = false, - texture = false, - texupdate = false, - padding = 2, - shadow = true, - noupdate = true, - }, - ["Inset"] = { - backdrop = { - bgFile = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 2, - insets = - { - left = 0, - right = 0, - top = 0, - bottom = 0, - }, - }, - color = "transparent", - gradient = false, - texture = false, - texupdate = false, - padding = 2, - shadow = false, - noupdate = true, - }, - ["Comic"] = { - backdrop = { - bgFile = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC1]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 2, - insets = - { - left = 1, - right = 1, - top = 1, - bottom = 1, - }, - }, - color = "class", - gradient = "class", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC1]], - texupdate = true, - padding = 2, - shadow = false, - noupdate = false, - }, - ["ModelComic"] = { - backdrop = { - bgFile = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 3, - insets = - { - left = 0, - right = 0, - top = 0, - bottom = 0, - }, - }, - color = "special", - gradient = "class", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL]], - texupdate = false, - padding = 3, - shadow = false, - noupdate = true, - }, - ["Paper"] = { - backdrop = { - bgFile = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 2, - insets = - { - left = 1, - right = 1, - top = 1, - bottom = 1, - }, - }, - color = "white", - gradient = "white", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER]], - texupdate = false, - padding = 2, - shadow = false, - noupdate = true, - }, - ["Container"] = { - backdrop = { - bgFile = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN3]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 2, - insets = - { - left = 1, - right = 1, - top = 1, - bottom = 1, - }, - }, - color = "special", - gradient = "special", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN3]], - texupdate = true, - padding = 2, - shadow = true, - noupdate = false, - }, - ["Pattern"] = { - backdrop = { - bgFile = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN1]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 2, - insets = - { - left = 1, - right = 1, - top = 1, - bottom = 1, - }, - }, - color = "special", - gradient = "special", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN1]], - texupdate = true, - padding = 2, - shadow = true, - noupdate = false, - }, - ["Halftone"] = { - backdrop = { - bgFile = [[Interface\BUTTONS\WHITE8X8]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 2, - insets = - { - left = 1, - right = 1, - top = 1, - bottom = 1, - }, - }, - color = "default", - gradient = "special", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]], - texupdate = true, - padding = 2, - shadow = true, - noupdate = false, - extended = [[HALFTONE]], - }, - ["Action"] = { - backdrop = { - bgFile = [[Interface\BUTTONS\WHITE8X8]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 2, - insets = - { - left = 1, - right = 1, - top = 1, - bottom = 1, - }, - }, - color = "default", - gradient = "special", - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]], - texupdate = true, - padding = 2, - shadow = true, - noupdate = false, - extended = [[ACTION]], - }, - ["Blackout"] = { - backdrop = { - bgFile = [[Interface\BUTTONS\WHITE8X8]], - edgeFile = [[Interface\BUTTONS\WHITE8X8]], - tile = false, - tileSize = 0, - edgeSize = 2, - insets = - { - left = 1, - right = 1, - top = 1, - bottom = 1, - }, - }, - color = "transparent", - gradient = false, - texture = [[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]], - texupdate = false, - padding = 2, - forcedOffset = 2, - shadow = true, - noupdate = true, - }, - ["UnitLarge"] = { - backdrop = false, - color = "special", - gradient = false, - texture = [[Interface\AddOns\SVUI\assets\artwork\Unitframe\Background\UNIT-BG1]], - texupdate = true, - padding = 0, - forcedOffset = 0, - shadow = false, - noupdate = false, - }, - ["UnitSmall"] = { - backdrop = false, - color = "special", - gradient = false, - texture = [[Interface\AddOns\SVUI\assets\artwork\Unitframe\Background\UNIT-SMALL-BG1]], - texupdate = true, - padding = 0, - forcedOffset = 0, - shadow = false, - noupdate = false, - } + ["Default"] = "SVUI_PanelTemplate_Default", + ["Transparent"] = "SVUI_PanelTemplate_Transparent", + ["Component"] = "SVUI_PanelTemplate_Component", + ["Button"] = "SVUI_PanelTemplate_Button", + ["FramedTop"] = "SVUI_PanelTemplate_FramedTop", + ["FramedBottom"] = "SVUI_PanelTemplate_FramedBottom", + ["Bar"] = "SVUI_PanelTemplate_Bar", + ["Slot"] = "SVUI_PanelTemplate_Slot", + ["Inset"] = "SVUI_PanelTemplate_Inset", + ["Comic"] = "SVUI_PanelTemplate_Comic", + ["ModelComic"] = "SVUI_PanelTemplate_ModelComic", + ["Paper"] = "SVUI_PanelTemplate_Paper", + ["Container"] = "SVUI_PanelTemplate_Container", + ["Pattern"] = "SVUI_PanelTemplate_Pattern", + ["Halftone"] = "SVUI_PanelTemplate_Halftone", + ["Action"] = "SVUI_PanelTemplate_Action", + ["Blackout"] = "SVUI_PanelTemplate_Blackout", + ["UnitLarge"] = "SVUI_PanelTemplate_UnitLarge", + ["UnitSmall"] = "SVUI_PanelTemplate_UnitSmall" }; --[[ ########################################################## @@ -773,14 +372,15 @@ INTERNAL HANDLERS ########################################################## ]]-- local HookPanelBorderColor = function(self,r,g,b,a) - if self[1]then - self[1]:SetTexture(r,g,b,a) - self[2]:SetTexture(r,g,b,a) - self[3]:SetTexture(r,g,b,a) - self[4]:SetTexture(r,g,b,a) - if self[5]then - self[5]:SetBackdropBorderColor(r,g,b,0.7) - end + if self.BorderLeft then + self.BorderLeft:SetVertexColor(r,g,b,a) + self.BorderRight:SetVertexColor(r,g,b,a) + self.BorderTop:SetVertexColor(r,g,b,a) + self.BorderBottom:SetVertexColor(r,g,b,a) + end + if self.Shadow then + local alpha = self.Shadow:GetAttribute("shadowAlpha") or 0.5 + self.Shadow:SetBackdropBorderColor(r,g,b,alpha) end end @@ -797,7 +397,7 @@ local HookBackdropBorderColor = function(self,...) end local HookVertexColor = function(self,...) - self._skin:SetVertexColor(...) + self.Panel.Skin:SetVertexColor(...) end local HookCustomBackdrop = function(self) @@ -832,58 +432,14 @@ TEMPLATE HELPERS local function CreatePanelTemplate(frame, templateName, underlay, noupdate, padding, xOffset, yOffset, defaultColor) if(not templateName or not _templates[templateName]) then templateName = frame._template or 'Default' end - local settings = _templates[templateName] - local colorName = defaultColor or settings.color or "default" - local gradientName = settings.gradient - local texFile = settings.texture - local hasShadow = settings.shadow - local bd = settings.backdrop - local bypass = noupdate or settings.noupdate - local bgColor = SV.Media.color[colorName] or {0.18,0.18,0.18,1} + local xmlTemplate = _templates[templateName] local borderColor = {0,0,0,1} - local initLevel = 0; local needsHooks = false; - padding = padding or settings.padding or 1 - - xOffset = settings.forcedOffset or xOffset or 1 - yOffset = settings.forcedOffset or yOffset or 1 - - frame._template = templateName; - frame._color = colorName; - frame._gradient = gradientName; - frame._texture = false; - frame._noupdate = bypass; - if(not frame.Panel) then needsHooks = true - local panel = NewFrame('Frame', nil, frame) - panel:SetPoint('TOPLEFT', frame, 'TOPLEFT', (xOffset * -1), yOffset) - panel:SetPoint('BOTTOMRIGHT', frame, 'BOTTOMRIGHT', xOffset, yOffset * -1) - - if(padding > 0) then - panel[1] = panel:CreateTexture(nil,"BORDER") - panel[1]:SetTexture(0,0,0) - panel[1]:SetPoint("TOPLEFT") - panel[1]:SetPoint("BOTTOMLEFT") - panel[1]:SetWidth(padding) - panel[2] = panel:CreateTexture(nil,"BORDER") - panel[2]:SetTexture(0,0,0) - panel[2]:SetPoint("TOPRIGHT") - panel[2]:SetPoint("BOTTOMRIGHT") - panel[2]:SetWidth(padding) - panel[3] = panel:CreateTexture(nil,"BORDER") - panel[3]:SetTexture(0,0,0) - panel[3]:SetPoint("TOPLEFT") - panel[3]:SetPoint("TOPRIGHT") - panel[3]:SetHeight(padding) - panel[4] = panel:CreateTexture(nil,"BORDER") - panel[4]:SetTexture(0,0,0) - panel[4]:SetPoint("BOTTOMLEFT") - panel[4]:SetPoint("BOTTOMRIGHT") - panel[4]:SetHeight(padding) - end + local panel = NewFrame('Frame', nil, frame, xmlTemplate) local level = frame:GetFrameLevel() if(level == 0 and not InCombatLockdown()) then @@ -899,54 +455,62 @@ local function CreatePanelTemplate(frame, templateName, underlay, noupdate, padd NewHook(frame, "SetFrameLevel", HookFrameLevel) frame.Panel = panel - end + end - if(hasShadow) then - if(not frame.Panel[5]) then - if(underlay) then - frame.Panel[5] = NewFrame('Frame', nil, frame.Panel) - frame.Panel[5]:SetPoint('TOPLEFT', frame.Panel, 'TOPLEFT', -3, 3) - frame.Panel[5]:SetPoint('BOTTOMRIGHT', frame.Panel, 'BOTTOMRIGHT', 3, -3) - else - frame.Panel[5] = NewFrame('Frame', nil, frame) - frame.Panel[5]:SetPoint('TOPLEFT', frame, 'TOPLEFT', -3, 3) - frame.Panel[5]:SetPoint('BOTTOMRIGHT', frame, 'BOTTOMRIGHT', 3, -3) - end - end + local colorName = defaultColor or frame.Panel:GetAttribute("panelColor") or "default" + local gradientName = frame.Panel:GetAttribute("panelGradient") + local bypass = noupdate or frame.Panel:GetAttribute("panelSkipUpdate") - frame.Panel[5]:SetBackdrop({ - edgeFile = [[Interface\AddOns\SVUI\assets\artwork\Template\GLOW]], - edgeSize = 3, - insets = { - left = 0, - right = 0, - top = 0, - bottom = 0 - } - }); + frame._template = templateName; + frame._color = colorName; + frame._gradient = gradientName; + frame._texture = false; + frame._noupdate = bypass; + + local forcedOffset = frame.Panel:GetAttribute("panelOffset") - frame.Panel[5]:SetBackdropBorderColor(0,0,0,0.5) + xOffset = forcedOffset or xOffset or 1 + yOffset = forcedOffset or yOffset or 1 - local level = frame.Panel[5]:GetFrameLevel() - 1 + frame.Panel:WrapOuter(frame, xOffset, yOffset) + padding = padding or frame.Panel:GetAttribute("panelPadding") + + if(padding and frame.Panel.BorderLeft) then + frame.Panel.BorderLeft:SetWidth(padding) + frame.Panel.BorderRight:SetWidth(padding) + frame.Panel.BorderTop:SetHeight(padding) + frame.Panel.BorderBottom:SetHeight(padding) + end + + if(frame.Panel.Shadow) then + frame.Panel.Shadow:SetPoint('TOPLEFT', frame.Panel, 'TOPLEFT', -3, 3) + frame.Panel.Shadow:SetPoint('BOTTOMRIGHT', frame.Panel, 'BOTTOMRIGHT', 3, -3) + + local alpha = frame.Panel.Shadow:GetAttribute("shadowAlpha") or 0.5 + frame.Panel.Shadow:SetBackdropBorderColor(0,0,0,alpha) + + local level = frame.Panel.Shadow:GetFrameLevel() - 1 if(level >= 0) then - frame.Panel[5]:SetFrameLevel(level) + frame.Panel.Shadow:SetFrameLevel(level) else - frame.Panel[5]:SetFrameLevel(0) + frame.Panel.Shadow:SetFrameLevel(0) end end + local bgColor = SV.Media.color[colorName] or {0.18,0.18,0.18,1} - if(bd) then - initLevel = 1; + if(not frame.Panel:GetAttribute("panelNoBackdrop")) then if(underlay) then - frame.Panel:SetBackdrop(bd) frame.Panel:SetBackdropColor(bgColor[1],bgColor[2],bgColor[3],bgColor[4] or 1) frame.Panel:SetBackdropBorderColor(0,0,0,1) else + local bd = frame.Panel:GetBackdrop() frame:SetBackdrop(bd) frame:SetBackdropColor(bgColor[1],bgColor[2],bgColor[3],bgColor[4] or 1) frame:SetBackdropBorderColor(0,0,0,1) + + frame.Panel:SetBackdrop(nil) end if(needsHooks and templateName ~= 'Transparent') then @@ -964,28 +528,20 @@ local function CreatePanelTemplate(frame, templateName, underlay, noupdate, padd end end - if(texFile) then - if(not frame._skin) then - if(underlay) then - frame._skin = frame.Panel:CreateTexture(nil,"BACKGROUND",nil,initLevel) - frame._skin:SetAllPoints(frame.Panel) - else - frame._skin = frame:CreateTexture(nil,"BACKGROUND",nil,initLevel) - frame._skin:SetAllPoints(frame) - end + if(frame.Panel.Skin) then + if(not underlay) then + frame.Panel.Skin:SetParent(frame) + frame.Panel.Skin:FillInner(frame, xOffset, yOffset) + else + frame.Panel.Skin:FillInner(frame.Panel, xOffset, yOffset) end - - frame._skin:SetTexture(texFile) - if(gradientName and SV.Media.gradient[gradientName]) then - frame._skin:SetGradient(unpack(SV.Media.gradient[gradientName])) + frame.Panel.Skin:SetGradient(unpack(SV.Media.gradient[gradientName])) else - frame._skin:SetVertexColor(bgColor[1], bgColor[2], bgColor[3], bgColor[4] or 1) + frame.Panel.Skin:SetVertexColor(bgColor[1], bgColor[2], bgColor[3], bgColor[4] or 1) end - frame._skin:SetNonBlocking(true) - - if((not bypass) and settings.texupdate) then + if((not bypass) and frame.Panel:GetAttribute("panelTexUpdate")) then frame._texture = lower(templateName) frame.TextureNeedsUpdate = true if(templateName == 'UnitLarge' or templateName == 'UnitSmall') then @@ -993,56 +549,6 @@ local function CreatePanelTemplate(frame, templateName, underlay, noupdate, padd frame.NoColorUpdate = true end end - - initLevel = 2; - end - - if(settings.extended) then - if(not underlay) then - initLevel = 0 - end - - local name = settings.extended - - if(not frame._extended) then - frame._extended = {} - - frame._extended[1] = frame.Panel:CreateTexture(nil, "BACKGROUND", nil, initLevel) - frame._extended[1]:SetPoint("TOPLEFT", frame.Panel, "TOPLEFT", 0, 0) - frame._extended[1]:SetPoint("TOPRIGHT", frame.Panel, "TOP", 0, 0) - frame._extended[1]:SetPoint("BOTTOMLEFT", frame.Panel, "LEFT", 0, 0) - - frame._extended[2] = frame.Panel:CreateTexture(nil, "BACKGROUND", nil, initLevel) - frame._extended[2]:SetPoint("TOPRIGHT", frame.Panel, "TOPRIGHT", 0, 0) - frame._extended[2]:SetPoint("TOPLEFT", frame.Panel, "TOP", 0, 0) - frame._extended[2]:SetPoint("BOTTOMRIGHT", frame.Panel, "RIGHT", 0, 0) - - frame._extended[3] = frame.Panel:CreateTexture(nil, "BACKGROUND", nil, initLevel) - frame._extended[3]:SetPoint("BOTTOMRIGHT", frame.Panel, "BOTTOMRIGHT", 0, 0) - frame._extended[3]:SetPoint("BOTTOMLEFT", frame.Panel, "BOTTOM", 0, 0) - frame._extended[3]:SetPoint("TOPRIGHT", frame.Panel, "RIGHT", 0, 0) - - frame._extended[4] = frame.Panel:CreateTexture(nil, "BACKGROUND", nil, initLevel) - frame._extended[4]:SetPoint("BOTTOMLEFT", frame.Panel, "BOTTOMLEFT", 0, 0) - frame._extended[4]:SetPoint("BOTTOMRIGHT", frame.Panel, "BOTTOM", 0, 0) - frame._extended[4]:SetPoint("TOPLEFT", frame.Panel, "LEFT", 0, 0) - end - - frame._extended[1]:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\Extended\]] .. name .. [[_TOPLEFT]]) - frame._extended[1]:SetVertexColor(0.05, 0.05, 0.05, 0.5) - frame._extended[1]:SetNonBlocking(true) - - frame._extended[2]:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\Extended\]] .. name .. [[_TOPRIGHT]]) - frame._extended[2]:SetVertexColor(0.05, 0.05, 0.05, 0.5) - frame._extended[2]:SetNonBlocking(true) - - frame._extended[3]:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\Extended\]] .. name .. [[_BOTTOMRIGHT]]) - frame._extended[3]:SetVertexColor(0.1, 0.1, 0.1, 0.5) - frame._extended[3]:SetNonBlocking(true) - - frame._extended[4]:SetTexture([[Interface\AddOns\SVUI\assets\artwork\Template\Extended\]] .. name .. [[_BOTTOMLEFT]]) - frame._extended[4]:SetVertexColor(0.1, 0.1, 0.1, 0.5) - frame._extended[4]:SetNonBlocking(true) end end @@ -1232,20 +738,20 @@ end local function SetPanelColor(self, ...) local arg1,arg2,arg3,arg4,arg5,arg6,arg7 = select(1, ...) if(not self.Panel or not arg1) then return; end - if(self._skin and self._gradient) then + if(self.Panel.Skin and self._gradient) then if(type(arg1) == "string") then if(arg1 == "VERTICAL" or arg1 == "HORIZONTAL") then - self._skin:SetGradient(...) + self.Panel.Skin:SetGradient(...) elseif(SV.Media.gradient[arg1]) then if self.__border then local d,r,g,b,r2,g2,b2 = unpack(SV.Media.gradient[arg1]) - --self._skin:SetGradient(d,r,g,b,r2,g2,b2) + --self.Panel.Skin:SetGradient(d,r,g,b,r2,g2,b2) self.__border[1]:SetTexture(r2,g2,b2) self.__border[2]:SetTexture(r2,g2,b2) self.__border[3]:SetTexture(r2,g2,b2) self.__border[4]:SetTexture(r2,g2,b2) else - self._skin:SetGradient(unpack(SV.Media.gradient[arg1])) + self.Panel.Skin:SetGradient(unpack(SV.Media.gradient[arg1])) if(SV.Media.color[arg1]) then local t = SV.Media.color[arg1] local r,g,b,a = t[1], t[2], t[3], t[4] or 1; @@ -1360,12 +866,14 @@ local function SetButtonTemplate(self, invisible, overridePadding, xOffset, yOff end end -local function SetSlotTemplate(self, underlay, padding, x, y, noChecked) +local function SetSlotTemplate(self, underlay, padding, x, y, shadowAlpha) if(not self) then return end - padding = padding or 1 CreatePanelTemplate(self, "Slot", underlay, true, padding, x, y) CreateButtonPanel(self, true) + if(shadowAlpha) then + self.Panel.Shadow:SetAttribute("shadowAlpha", shadowAlpha) + end end local function SetCheckboxTemplate(self, underlay, x, y) @@ -1381,7 +889,7 @@ local function SetCheckboxTemplate(self, underlay, x, y) NewHook(self, "SetChecked", function(self,checked) local r,g,b = 0,0,0 - if(checked == 1) then + if(checked == 1 or checked == true) then r,g,b = self:GetCheckedTexture():GetVertexColor() end self:SetBackdropBorderColor(r,g,b) @@ -1546,14 +1054,14 @@ local function FrameTemplateUpdates() if(frame.TextureNeedsUpdate and frame._texture) then local tex = SV.Media.bg[frame._texture] if(tex) then - frame._skin:SetTexture(tex) + frame.Panel.Skin:SetTexture(tex) end if(not frame.NoColorUpdate) then if(frame._gradient and SV.Media.gradient[frame._gradient]) then local g = SV.Media.gradient[frame._gradient] - frame._skin:SetGradient(g[1], g[2], g[3], g[4], g[5], g[6], g[7]) + frame.Panel.Skin:SetGradient(g[1], g[2], g[3], g[4], g[5], g[6], g[7]) elseif(p) then - frame._skin:SetVertexColor(p[1], p[2], p[3], p[4] or 1) + frame.Panel.Skin:SetVertexColor(p[1], p[2], p[3], p[4] or 1) end end end diff --git a/Interface/AddOns/SVUI/system/configs.lua b/Interface/AddOns/SVUI/system/configs.lua new file mode 100644 index 0000000..7becf07 --- /dev/null +++ b/Interface/AddOns/SVUI/system/configs.lua @@ -0,0 +1,3658 @@ +--[[ +############################################################################## +_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_ # + ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__ # + __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____ # + ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____ # + ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____ # + _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____ # + __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ # + _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_# + ___\///////////___________\///___________\/////////_____\///////////_# +############################################################################## +S U P E R - V I L L A I N - U I By: Munglunch # +############################################################################## +########################################################## +GET ADDON DATA +########################################################## +]]-- +local SV = select(2, ...) + +local playerClass = select(2, UnitClass("player")); + +local filterClass = playerClass or "NONE" + +local function safename(id) + local n = GetSpellInfo(id) + if not n then + if type(id) == "string" then + n = id + else + SV:Debugger('|cffFF9900SVUI:|r Spell not found: (#ID) '..id) + n = "Voodoo Doll"; + end + end + return n +end + +--[[ SYSTEM DATA ]]-- + +SV.configs = {} + +SV.configs["general"] = { + ["cooldown"] = true, + ["autoScale"] = true, + ["multiMonitor"] = false, + ["taintLog"] = false, + ["stickyFrames"] = true, + ["loginmessage"] = true, + ["hideErrorFrame"] = true, + ["threatbar"] = false, + ["bubbles"] = true, + ["comix"] = true, + ["bigComix"] = true, + ["questWatch"] = true, + ["woot"] = true, + ["pvpinterrupt"] = true, + ["lookwhaticando"] = false, + ["reactionChat"] = false, + ["reactionEmote"] = false, + ["sharingiscaring"] = false, + ["arenadrink"] = true, + ["stupidhat"] = true, +} + +SV.configs["LAYOUT"] = { + mediastyle = "default", + barstyle = "default", + unitstyle = "default", + groupstyle = "default", + aurastyle = "default" +} + +SV.configs["totems"] = { + ["enable"] = true, + ["showBy"] = "VERTICAL", + ["sortDirection"] = "ASCENDING", + ["size"] = 40, + ["spacing"] = 4 +} + +SV.configs["media"] = { + ["fonts"] = { + ["default"] = "SVUI System Font", + ["name"] = "SVUI Name Font", + ["number"] = "SVUI Number Font", + ["combat"] = "SVUI Combat Font", + ["giant"] = "SVUI Action Font", + ["size"] = 10, + ["unicodeSize"] = 12, + }, + ["textures"] = { + ["pattern"] = "SVUI Backdrop 1", + ["comic"] = "SVUI Comic 1", + ["unitlarge"] = "SVUI Unit BG 3", + ["unitsmall"] = "SVUI Small BG 3" + }, + ["colors"] = { + ["default"] = {0.2, 0.2, 0.2, 1}, + ["special"] = {0.37, 0.32, 0.29, 1}, + }, + ["unitframes"] = { + ["health"] = {0.3, 0.5, 0.3}, + ["power"] = { + ["MANA"] = {0.41, 0.85, 1}, + ["RAGE"] = {1, 0.31, 0.31}, + ["FOCUS"] = {1, 0.63, 0.27}, + ["ENERGY"] = {0.85, 0.83, 0.25}, + ["RUNES"] = {0.55, 0.57, 0.61}, + ["RUNIC_POWER"] = {0, 0.82, 1}, + ["FUEL"] = {0, 0.75, 0.75} + }, + ["reaction"] = { + [1] = {0.92, 0.15, 0.15}, + [2] = {0.92, 0.15, 0.15}, + [3] = {0.92, 0.15, 0.15}, + [4] = {0.85, 0.85, 0.13}, + [5] = {0.19, 0.85, 0.13}, + [6] = {0.19, 0.85, 0.13}, + [7] = {0.19, 0.85, 0.13}, + [8] = {0.19, 0.85, 0.13}, + }, + ["tapped"] = {0.55, 0.57, 0.61}, + ["disconnected"] = {0.84, 0.75, 0.65}, + ["casting"] = {0.8, 0.8, 0}, + ["spark"] = {1, 0.72, 0}, + ["interrupt"] = {0.78, 0.25, 0.25}, + ["shield_bars"] = {0.56, 0.4, 0.62}, + ["buff_bars"] = {0.31, 0.31, 0.31}, + ["debuff_bars"] = {0.8, 0.1, 0.1}, + ["predict"] = { + ["personal"] = {0, 1, 0.5, 0.25}, + ["others"] = {0, 1, 0, 0.25}, + ["absorbs"] = {1, 1, 0, 0.25} + }, + ["spellcolor"] = { + [safename(2825)] = {0.98, 0.57, 0.11}, --Bloodlust + [safename(32182)] = {0.98, 0.57, 0.11}, --Heroism + [safename(80353)] = {0.98, 0.57, 0.11}, --Time Warp + [safename(90355)] = {0.98, 0.57, 0.11}, --Ancient Hysteria + [safename(84963)] = {0.98, 0.57, 0.11}, --Inquisition + [safename(86659)] = {0.98, 0.57, 0.11}, --Guardian of Ancient Kings + } + } +} + +SV.configs["SVBar"] = { + ["enable"] = true, + ["font"] = "Roboto", + ["fontSize"] = 11, + ["fontOutline"] = "OUTLINE", + ["countFont"] = "SVUI Number Font", + ["countFontSize"] = 11, + ["countFontOutline"] = "OUTLINE", + ["cooldownSize"] = 18, + ["rightClickSelf"] = false, + ["macrotext"] = false, + ["hotkeytext"] = false, + ["hotkeyAbbrev"] = true, + ["showGrid"] = true, + ["unc"] = {0.8, 0.1, 0.1, 0.7}, + ["unpc"] = {0.5, 0.5, 1, 0.7}, + ["keyDown"] = false, + ["unlock"] = "SHIFT", + ["Micro"] = { + ["enable"] = true, + ["mouseover"] = true, + ["alpha"] = 1, + ["buttonsize"] = 30, + ["buttonspacing"] = 4, + ["yOffset"] = 4 + }, + ["Bar1"] = { + ["enable"] = true, + ["buttons"] = 12, + ["mouseover"] = false, + ["buttonsPerRow"] = 12, + ["point"] = "BOTTOMLEFT", + ["backdrop"] = false, + ["buttonsize"] = 32, + ["buttonspacing"] = 2, + ["useCustomPaging"] = true, + ["useCustomVisibility"] = false, + ["customVisibility"] = "[petbattle] hide; show", + ["customPaging"] = { + ["HUNTER"] = "", + ["WARLOCK"] = "[form:2] 10;", + ["PRIEST"] = "[bonusbar:1] 7;", + ["PALADIN"] = "", + ["MAGE"] = "", + ["ROGUE"] = "[stance:1] 7; [stance:2] 7; [stance:3] 7; [bonusbar:1] 7; [form:3] 7;", + ["DRUID"] = "[bonusbar:1, nostealth] 7; [bonusbar:1, stealth] 8; [bonusbar:2] 8; [bonusbar:3] 9; [bonusbar:4] 10;", + ["SHAMAN"] = "", + ["WARRIOR"] = "", + ["DEATHKNIGHT"] = "", + ["MONK"] = "[bonusbar:1] 7; [bonusbar:2] 8; [bonusbar:3] 9;", + }, + ["alpha"] = 1 + }, + ["Bar2"] = { + ["enable"] = false, + ["mouseover"] = false, + ["buttons"] = 12, + ["buttonsPerRow"] = 12, + ["point"] = "BOTTOMLEFT", + ["backdrop"] = false, + ["buttonsize"] = 32, + ["buttonspacing"] = 2, + ["useCustomPaging"] = false, + ["useCustomVisibility"] = false, + ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", + ["customPaging"] = { + ["HUNTER"] = "", + ["WARLOCK"] = "", + ["PRIEST"] = "", + ["PALADIN"] = "", + ["MAGE"] = "", + ["ROGUE"] = "", + ["DRUID"] = "", + ["SHAMAN"] = "", + ["WARRIOR"] = "", + ["DEATHKNIGHT"] = "", + ["MONK"] = "", + }, + ["alpha"] = 1 + }, + ["Bar3"] = { + ["enable"] = true, + ["mouseover"] = false, + ["buttons"] = 6, + ["buttonsPerRow"] = 6, + ["point"] = "BOTTOMLEFT", + ["backdrop"] = false, + ["buttonsize"] = 32, + ["buttonspacing"] = 2, + ["useCustomPaging"] = false, + ["useCustomVisibility"] = false, + ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", + ["customPaging"] = { + ["HUNTER"] = "", + ["WARLOCK"] = "", + ["PRIEST"] = "", + ["PALADIN"] = "", + ["MAGE"] = "", + ["ROGUE"] = "", + ["DRUID"] = "", + ["SHAMAN"] = "", + ["WARRIOR"] = "", + ["DEATHKNIGHT"] = "", + ["MONK"] = "", + }, + ["alpha"] = 1 + }, + ["Bar4"] = { + ["enable"] = true, + ["mouseover"] = true, + ["buttons"] = 12, + ["buttonsPerRow"] = 1, + ["point"] = "TOPRIGHT", + ["backdrop"] = false, + ["buttonsize"] = 32, + ["buttonspacing"] = 2, + ["useCustomPaging"] = false, + ["useCustomVisibility"] = false, + ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", + ["customPaging"] = { + ["HUNTER"] = "", + ["WARLOCK"] = "", + ["PRIEST"] = "", + ["PALADIN"] = "", + ["MAGE"] = "", + ["ROGUE"] = "", + ["DRUID"] = "", + ["SHAMAN"] = "", + ["WARRIOR"] = "", + ["DEATHKNIGHT"] = "", + ["MONK"] = "", + }, + ["alpha"] = 1 + }, + ["Bar5"] = { + ["enable"] = true, + ["mouseover"] = false, + ["buttons"] = 6, + ["buttonsPerRow"] = 6, + ["point"] = "BOTTOMLEFT", + ["backdrop"] = false, + ["buttonsize"] = 32, + ["buttonspacing"] = 2, + ["useCustomPaging"] = false, + ["useCustomVisibility"] = false, + ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", + ["customPaging"] = { + ["HUNTER"] = "", + ["WARLOCK"] = "", + ["PRIEST"] = "", + ["PALADIN"] = "", + ["MAGE"] = "", + ["ROGUE"] = "", + ["DRUID"] = "", + ["SHAMAN"] = "", + ["WARRIOR"] = "", + ["DEATHKNIGHT"] = "", + ["MONK"] = "", + }, + ["alpha"] = 1 + }, + ["Bar6"] = { + ["enable"] = false, + ["mouseover"] = false, + ["buttons"] = 12, + ["buttonsPerRow"] = 12, + ["point"] = "BOTTOMLEFT", + ["backdrop"] = false, + ["buttonsize"] = 32, + ["buttonspacing"] = 2, + ["useCustomPaging"] = false, + ["useCustomVisibility"] = false, + ["customVisibility"] = "[vehicleui] hide; [overridebar] hide; [petbattle] hide; show", + ["customPaging"] = { + ["HUNTER"] = "", + ["WARLOCK"] = "", + ["PRIEST"] = "", + ["PALADIN"] = "", + ["MAGE"] = "", + ["ROGUE"] = "", + ["DRUID"] = "", + ["SHAMAN"] = "", + ["WARRIOR"] = "", + ["DEATHKNIGHT"] = "", + ["MONK"] = "", + }, + ["alpha"] = 1 + }, + ["Pet"] = { + ["enable"] = true, + ["mouseover"] = false, + ["buttons"] = NUM_PET_ACTION_SLOTS, + ["buttonsPerRow"] = NUM_PET_ACTION_SLOTS, + ["point"] = "TOPLEFT", + ["backdrop"] = false, + ["buttonsize"] = 24, + ["buttonspacing"] = 3, + ["useCustomVisibility"] = false, + ["customVisibility"] = "[petbattle] hide; [pet, novehicleui, nooverridebar, nopossessbar] show; hide", + ["alpha"] = 1 + }, + ["Stance"] = { + ["enable"] = true, + ["style"] = "darkenInactive", + ["mouseover"] = false, + ["buttons"] = NUM_STANCE_SLOTS, + ["buttonsPerRow"] = NUM_STANCE_SLOTS, + ["point"] = "BOTTOMLEFT", + ["backdrop"] = false, + ["buttonsize"] = 24, + ["buttonspacing"] = 5, + ["useCustomVisibility"] = false, + ["customVisibility"] = "[petbattle] hide; show", + ["alpha"] = 1 + } +}; + +SV.configs["SVAura"] = { + ["enable"] = true, + ["disableBlizzard"] = true, + ["font"] = "SVUI Number Font", + ["fontSize"] = 12, + ["fontOutline"] = "THINOUTLINE", + ["countOffsetV"] = 0, + ["countOffsetH"] = 0, + ["timeOffsetV"] = -4, + ["timeOffsetH"] = 0, + ["hyperBuffs"] = { + ["enable"] = true, + ["filter"] = true, + }, + ["fadeBy"] = 5, + ["buffs"] = { + ["showBy"] = "LEFT_DOWN", + ["wrapAfter"] = 12, + ["maxWraps"] = 3, + ["wrapXOffset"] = 6, + ["wrapYOffset"] = 16, + ["sortMethod"] = "TIME", + ["sortDir"] = "-", + ["isolate"] = 1, + ["size"] = 32, + }, + ["debuffs"] = { + ["showBy"] = "LEFT_DOWN", + ["wrapAfter"] = 12, + ["maxWraps"] = 1, + ["wrapXOffset"] = 6, + ["wrapYOffset"] = 16, + ["sortMethod"] = "TIME", + ["sortDir"] = "-", + ["isolate"] = 1, + ["size"] = 32, + }, +}; + +SV.configs["SVBag"] = { + ["incompatible"] = { + ["AdiBags"] = true, + ["ArkInventory"] = true, + ["Bagnon"] = true, + }, + ["enable"] = true, + ["sortInverted"] = false, + ["bags"] = { + ["xOffset"] = -40, + ["yOffset"] = 40, + ["point"] = "BOTTOMRIGHT", + }, + ["bank"] = { + ["xOffset"] = 40, + ["yOffset"] = 40, + ["point"] = "BOTTOMLEFT", + }, + ["bagSize"] = 34, + ["bankSize"] = 34, + ["alignToChat"] = false, + ["bagWidth"] = 525, + ["bankWidth"] = 525, + ["currencyFormat"] = "ICON", + ["ignoreItems"] = "", + ["bagTools"] = true, + ["bagBar"] = { + ["enable"] = false, + ["showBy"] = "VERTICAL", + ["sortDirection"] = "ASCENDING", + ["size"] = 30, + ["spacing"] = 4, + ["showBackdrop"] = false, + ["mouseover"] = false, + }, +}; + +SV.configs["SVChat"] = { + ["enable"] = true, + ["tabHeight"] = 20, + ["tabWidth"] = 75, + ["tabStyled"] = true, + ["font"] = "Roboto", + ["fontOutline"] = "OUTLINE", + ["tabFont"] = "SVUI Alert Font", + ["tabFontSize"] = 10, + ["tabFontOutline"] = "OUTLINE", + ["url"] = true, + ["shortChannels"] = true, + ["hyperlinkHover"] = true, + ["throttleInterval"] = 45, + ["fade"] = false, + ["sticky"] = true, + ["smileys"] = true, + ["secretWordTone"] = "None", + ["psst"] = "Whisper Alert", + ["noWipe"] = false, + ["timeStampFormat"] = "NONE", + ["secretWords"] = "%MYNAME%, SVUI", + ["basicTools"] = true, +}; + +SV.configs["SVDock"] = { + ["enable"] = true, + ["dockLeftWidth"] = 412, + ["dockLeftHeight"] = 224, + ["dockRightWidth"] = 412, + ["dockRightHeight"] = 224, + ["dockStatWidth"] = defaultStatBarWidth, + ["buttonSize"] = 30, + ["buttonSpacing"] = 4, + ["leftDockBackdrop"] = true, + ["rightDockBackdrop"] = true, + ["topPanel"] = true, + ["bottomPanel"] = true, + ["docklets"] = { + ["DockletMain"] = "None", + ["MainWindow"] = "None", + ["DockletExtra"] = "None", + ["ExtraWindow"] = "None", + ["enableExtra"] = false, + ["DockletCombatFade"] = true + }, +}; + +SV.configs["SVGear"] = { + ["enable"] = true, + ["specialization"] = { + ["enable"] = false, + }, + ["battleground"] = { + ["enable"] = false, + }, + ["primary"] = "none", + ["secondary"] = "none", + ["equipmentset"] = "none", + ["durability"] = { + ["enable"] = true, + ["onlydamaged"] = true, + }, + ["itemlevel"] = { + ["enable"] = true, + }, + ["misc"] = { + setoverlay = true, + } +}; + +SV.configs["SVHenchmen"] = { + ["enable"] = true, + ["autoRoll"] = false, + ["vendorGrays"] = true, + ["autoAcceptInvite"] = false, + ["autorepchange"] = false, + ["pvpautorelease"] = false, + ["autoquestcomplete"] = false, + ["autoquestreward"] = false, + ["autoquestaccept"] = false, + ["autodailyquests"] = false, + ["autopvpquests"] = false, + ["skipcinematics"] = false, + ["mailOpener"] = true, + ["autoRepair"] = "PLAYER", +}; + +SV.configs["SVMap"] = { + ["incompatible"] = { + ["SexyMap"] = true, + ["SquareMap"] = true, + ["PocketPlot"] = true, + }, + ["enable"] = true, + ["mapAlpha"] = 1, + ["tinyWorldMap"] = true, + ["size"] = 240, + ["customshape"] = true, + ["locationText"] = "CUSTOM", + ["playercoords"] = "CUSTOM", + ["bordersize"] = 6, + ["bordercolor"] = "light", + ["minimapbar"] = { + ["enable"] = true, + ["styleType"] = "HORIZONTAL", + ["layoutDirection"] = "NORMAL", + ["buttonSize"] = 28, + ["mouseover"] = false, + }, +}; + +SV.configs["SVOverride"] = { + ["enable"] = true, + ["loot"] = true, + ["lootRoll"] = true, + ["lootRollWidth"] = 328, + ["lootRollHeight"] = 28, +}; + +SV.configs["SVPlate"] = { + ["enable"] = true, + ["filter"] = {}, + ["font"] = "SVUI Name Font", + ["fontSize"] = 10, + ["fontOutline"] = "OUTLINE", + ["comboPoints"] = true, + ["nonTargetAlpha"] = 0.6, + ["combatHide"] = false, + ["colorNameByValue"] = true, + ["showthreat"] = true, + ["targetcount"] = true, + ["pointer"] = { + ["enable"] = true, + ["colorMatchHealthBar"] = true, + ["color"] = {0.9, 1, 0.9}, + }, + ["healthBar"] = { + ["lowThreshold"] = 0.4, + ["width"] = 108, + ["height"] = 9, + ["text"] = { + ["enable"] = false, + ["format"] = "CURRENT", + ["xOffset"] = 0, + ["yOffset"] = 0, + ["attachTo"] = "CENTER", + }, + }, + ["castBar"] = { + ["height"] = 6, + ["color"] = {1, 0.81, 0}, + ["noInterrupt"] = {0.78, 0.25, 0.25}, + }, + ["raidHealIcon"] = { + ["xOffset"] = -4, + ["yOffset"] = 6, + ["size"] = 36, + ["attachTo"] = "LEFT", + }, + ["threat"] = { + ["enable"] = false, + ["goodScale"] = 1, + ["badScale"] = 1, + ["goodColor"] = {0.29, 0.68, 0.3}, + ["badColor"] = {0.78, 0.25, 0.25}, + ["goodTransitionColor"] = {0.85, 0.77, 0.36}, + ["badTransitionColor"] = {0.94, 0.6, 0.06}, + }, + ["auras"] = { + ["font"] = "SVUI Number Font", + ["fontSize"] = 7, + ["fontOutline"] = "OUTLINE", + ["numAuras"] = 5, + ["additionalFilter"] = "CC" + }, + ["reactions"] = { + ["tapped"] = {0.6, 0.6, 0.6}, + ["friendlyNPC"] = { 0.31, 0.45, 0.63}, + ["friendlyPlayer"] = {0.29, 0.68, 0.3}, + ["neutral"] = {0.85, 0.77, 0.36}, + ["enemy"] = {0.78, 0.25, 0.25}, + }, +}; + +SV.configs["SVStats"] = { + ["enable"] = true, + ["font"] = "SVUI Number Font", + ["fontSize"] = 12, + ["fontOutline"] = "OUTLINE", + ["showBackground"] = true, + ["shortGold"] = true, + ["panels"] = { + ["BottomRightDataPanel"] = { + ["right"] = "Bags", + ["left"] = "Friends", + ["middle"] = "Guild", + }, + ["BottomLeftDataPanel"] = { + ["left"] = "Time", + ["middle"] = "System", + ["right"] = "Gold", + }, + ["TopLeftDataPanel"] = { + ["left"] = "Durability Bar", + ["middle"] = "Reputation Bar", + ["right"] = "Experience Bar", + }, + ["TopRightDataPanel"] = { + ["left"] = "None", + ["middle"] = "None", + ["right"] = "None", + }, + }, + ["localtime"] = true, + ["time24"] = false, + ["battleground"] = true, + ["topLeftDockPanel"] = true, + ["bottomLeftDockPanel"] = true, + ["bottomRightDockPanel"] = true, + ["panelTransparency"] = false, +}; + +SV.configs["SVTip"] = { + ["enable"] = true, + ["cursorAnchor"] = false, + ["targetInfo"] = true, + ["playerTitles"] = true, + ["guildRanks"] = true, + ["inspectInfo"] = false, + ["itemCount"] = true, + ["spellID"] = false, + ["progressInfo"] = true, + ["visibility"] = { + ["unitFrames"] = "NONE", + ["combat"] = false, + }, + ["healthBar"] = { + ["text"] = true, + ["height"] = 10, + ["font"] = "Roboto", + ["fontSize"] = 10, + }, +}; + +SV.configs["SVUnit"] = { + ["enable"] = true, + ["disableBlizzard"] = true, + + ["smoothbars"] = false, + ["statusbar"] = "SVUI BasicBar", + ["auraBarStatusbar"] = "SVUI BasicBar", + + ["font"] = "SVUI Number Font", + ["fontSize"] = 12, + ["fontOutline"] = "OUTLINE", + + ["auraFont"] = "SVUI Alert Font", + ["auraFontSize"] = 12, + ["auraFontOutline"] = "OUTLINE", + + ["OORAlpha"] = 0.65, + ["groupOORAlpha"] = 0.45, + ["combatFadeRoles"] = true, + ["combatFadeNames"] = true, + ["debuffHighlighting"] = true, + ["smartRaidFilter"] = true, + ["fastClickTarget"] = false, + ["healglow"] = true, + ["glowtime"] = 0.8, + ["glowcolor"] = {1, 1, 0}, + ["autoRoleSet"] = false, + ["healthclass"] = true, + ["forceHealthColor"] = false, + ["overlayAnimation"] = true, + ["powerclass"] = false, + ["colorhealthbyvalue"] = true, + ["customhealthbackdrop"] = true, + ["classbackdrop"] = false, + ["auraBarByType"] = true, + ["auraBarShield"] = true, + ["castClassColor"] = false, + ["xrayFocus"] = true, + ["grid"] = { + ["enable"] = false, + ["size"] = 28, + ["shownames"] = false, + ["font"] = "Roboto", + ["fontsize"] = 16, + }, + ["player"] = { + ["enable"] = true, + ["width"] = 215, + ["height"] = 60, + ["lowmana"] = 30, + ["combatfade"] = false, + ["predict"] = false, + ["threatEnabled"] = true, + ["playerExpBar"] = false, + ["playerRepBar"] = false, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "current", + ["name_colored"] = true, + ["name_length"] = 21, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "[health:color][health:current]", + ["position"] = "INNERRIGHT", + ["xOffset"] = 0, + ["yOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 11, + }, + ["power"] = + { + ["enable"] = true, + ["tags"] = "", + ["height"] = 10, + ["position"] = "INNERLEFT", + ["hideonnpc"] = false, + ["xOffset"] = 0, + ["yOffset"] = 0, + ["detachedWidth"] = 250, + ["attachTextToPower"] = false, + ["druidMana"] = true, + ["fontSize"] = 11, + }, + ["name"] = + { + ["position"] = "CENTER", + ["tags"] = "", + ["xOffset"] = 0, + ["yOffset"] = 0, + ["font"] = "SVUI Number Font", + ["fontSize"] = 13, + ["fontOutline"] = "OUTLINE", + }, + ["pvp"] = + { + ["font"] = "SVUI Number Font", + ["fontSize"] = 12, + ["fontOutline"] = "OUTLINE", + ["position"] = "BOTTOM", + ["tags"] = "||cFFB04F4F[pvptimer][mouseover]||r", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + ["portrait"] = + { + ["enable"] = true, + ["width"] = 50, + ["overlay"] = true, + ["camDistanceScale"] = 1.4, + ["rotation"] = 0, + ["style"] = "3D", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 8, + ["numrows"] = 1, + ["attachTo"] = "DEBUFFS", + ["anchorPoint"] = "TOPLEFT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = true, + ["filterRaid"] = true, + ["filterBlocked"] = true, + ["filterAllowed"] = true, + ["filterInfinite"] = true, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = 8, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = true, + ["perrow"] = 8, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "TOPLEFT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = false, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = false, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = 8, + ["sizeOverride"] = 0, + }, + ["aurabar"] = + { + ["enable"] = false, + ["anchorPoint"] = "ABOVE", + ["attachTo"] = "DEBUFFS", + ["filterPlayer"] = true, + ["filterRaid"] = true, + ["filterBlocked"] = true, + ["filterAllowed"] = true, + ["filterInfinite"] = true, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["friendlyAuraType"] = "HELPFUL", + ["enemyAuraType"] = "HARMFUL", + ["height"] = 18, + ["sort"] = "TIME_REMAINING", + }, + ["castbar"] = + { + ["enable"] = true, + ["width"] = 215, + ["height"] = 20, + ["matchFrameWidth"] = true, + ["icon"] = true, + ["latency"] = false, + ["format"] = "REMAINING", + ["ticks"] = false, + ["spark"] = true, + ["displayTarget"] = false, + ["useCustomColor"] = false, + ["castingColor"] = {0.8, 0.8, 0}, + ["sparkColor"] = {1, 0.72, 0}, + }, + ["classbar"] = + { + ["enable"] = true, + ["slideLeft"] = true, + ["inset"] = "inset", + ["height"] = 25, + ["detachFromFrame"] = false, + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 25, + ["attachTo"] = "INNERBOTTOMRIGHT", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + ["combatIcon"] = { + ["enable"] = true, + ["size"] = 26, + ["attachTo"] = "INNERTOPRIGHT", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + ["restIcon"] = { + ["enable"] = true, + ["size"] = 25, + ["attachTo"] = "INNERTOPRIGHT", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + }, + ["stagger"] = + { + ["enable"] = true, + }, + }, + ["target"] = { + ["enable"] = true, + ["width"] = 215, + ["height"] = 60, + ["threatEnabled"] = true, + ["rangeCheck"] = true, + ["predict"] = false, + ["smartAuraDisplay"] = "DISABLED", + ["middleClickFocus"] = true, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "current", + ["name_colored"] = true, + ["name_length"] = 18, + ["smartlevel"] = true, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "[health:color][health:current]", + ["position"] = "INNERLEFT", + ["xOffset"] = 0, + ["yOffset"] = 0, + ["reversed"] = true, + ["fontSize"] = 11, + }, + ["power"] = + { + ["enable"] = true, + ["tags"] = "[power:color][power:current]", + ["height"] = 10, + ["position"] = "INNERRIGHT", + ["hideonnpc"] = true, + ["xOffset"] = 0, + ["yOffset"] = 0, + ["attachTextToPower"] = false, + ["fontSize"] = 11, + }, + ["name"] = + { + ["position"] = "INNERRIGHT", + ["tags"] = "[name:color][name:18][smartlevel]", + ["xOffset"] = -2, + ["yOffset"] = 36, + ["font"] = "SVUI Name Font", + ["fontSize"] = 15, + ["fontOutline"] = "OUTLINE", + }, + ["portrait"] = + { + ["enable"] = true, + ["width"] = 50, + ["overlay"] = true, + ["rotation"] = 0, + ["camDistanceScale"] = 1.4, + ["style"] = "3D", + }, + ["buffs"] = + { + ["enable"] = true, + ["perrow"] = 8, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "TOPRIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = + { + friendly = false, + enemy = false, + }, + ["filterRaid"] = + { + friendly = false, + enemy = false, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = false, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = 8, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = true, + ["perrow"] = 8, + ["numrows"] = 1, + ["attachTo"] = "BUFFS", + ["anchorPoint"] = "TOPRIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = + { + friendly = false, + enemy = true, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = false, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = 8, + ["sizeOverride"] = 0, + }, + ["aurabar"] = + { + ["enable"] = false, + ["anchorPoint"] = "ABOVE", + ["attachTo"] = "DEBUFFS", + ["filterPlayer"] = + { + friendly = true, + enemy = true, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = true, + enemy = true, + }, + ["filterRaid"] = + { + friendly = true, + enemy = true, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["friendlyAuraType"] = "HELPFUL", + ["enemyAuraType"] = "HARMFUL", + ["height"] = 18, + ["sort"] = "TIME_REMAINING", + }, + ["castbar"] = + { + ["enable"] = true, + ["width"] = 215, + ["height"] = 20, + ["matchFrameWidth"] = true, + ["icon"] = true, + ["format"] = "REMAINING", + ["spark"] = true, + ["useCustomColor"] = false, + ["castingColor"] = {0.8, 0.8, 0}, + ["sparkColor"] = {1, 0.72, 0}, + }, + ["combobar"] = + { + ["enable"] = true, + ["height"] = 30, + ["smallIcons"] = false, + ["hudStyle"] = false, + ["hudScale"] = 64, + ["autoHide"] = true, + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 30, + ["attachTo"] = "INNERLEFT", + ["xOffset"] = 0, + ["yOffset"] = 0, + } + }, + }, + ["targettarget"] = { + ["enable"] = true, + ["rangeCheck"] = true, + ["threatEnabled"] = false, + ["width"] = 150, + ["height"] = 30, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "none", + ["name_colored"] = true, + ["name_length"] = 10, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "", + ["position"] = "INNERRIGHT", + ["xOffset"] = 0, + ["yOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 9, + }, + ["power"] = + { + ["enable"] = false, + ["tags"] = "", + ["height"] = 7, + ["position"] = "INNERLEFT", + ["hideonnpc"] = false, + ["xOffset"] = 0, + ["yOffset"] = 0, + ["fontSize"] = 9, + }, + ["name"] = + { + ["position"] = "CENTER", + ["tags"] = "[name:color][name:10]", + ["xOffset"] = 0, + ["yOffset"] = 1, + ["font"] = "SVUI Narrator Font", + ["fontSize"] = 14, + ["fontOutline"] = "OUTLINE", + }, + ["portrait"] = + { + ["enable"] = true, + ["width"] = 45, + ["overlay"] = true, + ["rotation"] = 0, + ["camDistanceScale"] = 1, + ["style"] = "3D", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 7, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "BOTTOMLEFT", + ["verticalGrowth"] = "DOWN", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = + { + friendly = true, + enemy = false, + }, + ["filterRaid"] = + { + friendly = true, + enemy = false, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = true, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = -8, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = false, + ["perrow"] = 5, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "TOPLEFT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = + { + friendly = false, + enemy = true, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = false, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = 8, + ["sizeOverride"] = 0, + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 18, + ["attachTo"] = "INNERRIGHT", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + }, + }, + ["focus"] = { + ["enable"] = true, + ["rangeCheck"] = true, + ["threatEnabled"] = true, + ["width"] = 170, + ["height"] = 30, + ["predict"] = false, + ["smartAuraDisplay"] = "DISABLED", + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "none", + ["name_colored"] = true, + ["name_length"] = 15, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "", + ["position"] = "INNERRIGHT", + ["xOffset"] = 0, + ["yOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = true, + ["tags"] = "", + ["height"] = 7, + ["position"] = "INNERLEFT", + ["hideonnpc"] = false, + ["xOffset"] = 0, + ["yOffset"] = 0, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "CENTER", + ["tags"] = "[name:color][name:15]", + ["xOffset"] = 0, + ["yOffset"] = 0, + ["font"] = "SVUI Narrator Font", + ["fontSize"] = 14, + ["fontOutline"] = "OUTLINE", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 7, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "BOTTOMRIGHT", + ["verticalGrowth"] = "DOWN", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = + { + friendly = true, + enemy = false, + }, + ["filterRaid"] = + { + friendly = true, + enemy = false, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = true, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = -8, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = true, + ["perrow"] = 5, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "TOPRIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = + { + friendly = false, + enemy = true, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = false, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = 8, + ["sizeOverride"] = 0, + }, + ["castbar"] = + { + ["enable"] = true, + ["width"] = 170, + ["height"] = 18, + ["icon"] = true, + ["matchFrameWidth"] = true, + ["format"] = "REMAINING", + ["spark"] = true, + ["useCustomColor"] = false, + ["castingColor"] = {0.8, 0.8, 0}, + ["sparkColor"] = {1, 0.72, 0}, + }, + ["aurabar"] = + { + ["enable"] = false, + ["anchorPoint"] = "ABOVE", + ["attachTo"] = "FRAME", + ["filterPlayer"] = + { + friendly = false, + enemy = true, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = false, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["filterRaid"] = + { + friendly = true, + enemy = true, + }, + ["useFilter"] = "", + ["friendlyAuraType"] = "HELPFUL", + ["enemyAuraType"] = "HARMFUL", + ["height"] = 18, + ["sort"] = "TIME_REMAINING", + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 18, + ["attachTo"] = "INNERLEFT", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + }, + }, + ["focustarget"] = { + ["enable"] = false, + ["rangeCheck"] = true, + ["threatEnabled"] = false, + ["width"] = 150, + ["height"] = 26, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "none", + ["name_colored"] = true, + ["name_length"] = 15, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "", + ["position"] = "INNERRIGHT", + ["xOffset"] = 0, + ["yOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = false, + ["tags"] = "", + ["height"] = 7, + ["position"] = "INNERLEFT", + ["hideonnpc"] = false, + ["xOffset"] = 0, + ["yOffset"] = 0, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "CENTER", + ["tags"] = "[name:color][name:15]", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["font"] = "SVUI Narrator Font", + ["fontSize"] = 14, + ["fontOutline"] = "OUTLINE", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 7, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "BOTTOMLEFT", + ["verticalGrowth"] = "DOWN", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = + { + friendly = true, + enemy = false, + }, + ["filterRaid"] = + { + friendly = true, + enemy = false, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = true, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = -8, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = false, + ["perrow"] = 5, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "TOPLEFT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = + { + friendly = false, + enemy = true, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = false, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = 8, + ["sizeOverride"] = 0, + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 18, + ["attachTo"] = "INNERLEFT", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + }, + }, + ["pet"] = { + ["enable"] = true, + ["rangeCheck"] = true, + ["threatEnabled"] = true, + ["width"] = 150, + ["height"] = 30, + ["predict"] = false, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "none", + ["name_colored"] = true, + ["name_length"] = 10, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "", + ["position"] = "INNERRIGHT", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = false, + ["tags"] = "", + ["height"] = 7, + ["position"] = "INNERLEFT", + ["hideonnpc"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "CENTER", + ["tags"] = "[name:color][name:8]", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["font"] = "SVUI Narrator Font", + ["fontSize"] = 14, + ["fontOutline"] = "OUTLINE", + }, + ["portrait"] = + { + ["enable"] = true, + ["width"] = 45, + ["overlay"] = true, + ["rotation"] = 0, + ["camDistanceScale"] = 1, + ["style"] = "3D", + }, + ["buffs"] = + { + ["enable"] = true, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "LEFT", + ["verticalGrowth"] = "DOWN", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = true, + ["filterRaid"] = true, + ["filterBlocked"] = true, + ["filterAllowed"] = true, + ["filterInfinite"] = true, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = -3, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = true, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHT", + ["verticalGrowth"] = "DOWN", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = false, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = false, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 3, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["castbar"] = + { + ["enable"] = true, + ["width"] = 130, + ["height"] = 8, + ["icon"] = false, + ["matchFrameWidth"] = true, + ["format"] = "REMAINING", + ["spark"] = false, + ["useCustomColor"] = false, + ["castingColor"] = {0.8, 0.8, 0}, + ["sparkColor"] = {1, 0.72, 0}, + }, + ["auraWatch"] = + { + ["enable"] = true, + ["size"] = 8, + }, + }, + ["pettarget"] = { + ["enable"] = false, + ["rangeCheck"] = true, + ["threatEnabled"] = false, + ["width"] = 130, + ["height"] = 26, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "none", + ["name_colored"] = true, + ["name_length"] = 15, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "", + ["position"] = "INNERRIGHT", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = false, + ["tags"] = "", + ["height"] = 7, + ["position"] = "INNERLEFT", + ["hideonnpc"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "CENTER", + ["tags"] = "[name:color][name:15]", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["font"] = "SVUI Narrator Font", + ["fontSize"] = 14, + ["fontOutline"] = "OUTLINE", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 7, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "BOTTOMLEFT", + ["verticalGrowth"] = "DOWN", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = + { + friendly = true, + enemy = false, + }, + ["filterRaid"] = + { + friendly = true, + enemy = false, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = true, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = -8, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = false, + ["perrow"] = 5, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "BOTTOMRIGHT", + ["verticalGrowth"] = "DOWN", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = + { + friendly = false, + enemy = true, + }, + ["filterBlocked"] = + { + friendly = true, + enemy = true, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = false, + enemy = false, + }, + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "", + ["xOffset"] = 0, + ["yOffset"] = 8, + ["sizeOverride"] = 0, + }, + }, + ["boss"] = { + ["enable"] = true, + ["rangeCheck"] = true, + ["showBy"] = "UP", + ["width"] = 200, + ["height"] = 45, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "current", + ["name_colored"] = true, + ["name_length"] = 15, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "[health:color][health:current]", + ["position"] = "INNERTOPRIGHT", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = true, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = true, + ["tags"] = "[power:color][power:current]", + ["height"] = 7, + ["position"] = "INNERBOTTOMRIGHT", + ["hideonnpc"] = false, + ["yOffset"] = 7, + ["xOffset"] = 0, + ["fontSize"] = 10, + }, + ["portrait"] = + { + ["enable"] = true, + ["width"] = 35, + ["overlay"] = true, + ["rotation"] = 0, + ["camDistanceScale"] = 1, + ["style"] = "3D", + }, + ["name"] = + { + ["position"] = "INNERLEFT", + ["tags"] = "[name:color][name:15]", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["font"] = "SVUI Number Font", + ["fontSize"] = 12, + ["fontOutline"] = "OUTLINE", + }, + ["buffs"] = + { + ["enable"] = true, + ["perrow"] = 2, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "LEFT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = false, + ["filterRaid"] = false, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = false, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = -8, + ["yOffset"] = 0, + ["sizeOverride"] = 40, + }, + ["debuffs"] = + { + ["enable"] = true, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "BUFFS", + ["anchorPoint"] = "LEFT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = true, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = false, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = -8, + ["yOffset"] = 0, + ["sizeOverride"] = 40, + }, + ["castbar"] = + { + ["enable"] = true, + ["width"] = 200, + ["height"] = 18, + ["icon"] = true, + ["matchFrameWidth"] = true, + ["format"] = "REMAINING", + ["spark"] = true, + ["useCustomColor"] = false, + ["castingColor"] = {0.8, 0.8, 0}, + ["sparkColor"] = {1, 0.72, 0}, + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 22, + ["attachTo"] = "CENTER", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + }, + }, + ["arena"] = { + ["enable"] = true, + ["rangeCheck"] = true, + ["showBy"] = "UP", + ["width"] = 215, + ["height"] = 45, + ["predict"] = false, + ["colorOverride"] = "USE_DEFAULT", + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "current", + ["name_colored"] = true, + ["name_length"] = 15, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "[health:color][health:current]", + ["position"] = "INNERTOPRIGHT", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = true, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = true, + ["tags"] = "[power:color][power:current]", + ["height"] = 7, + ["position"] = "INNERBOTTOMRIGHT", + ["hideonnpc"] = false, + ["yOffset"] = 7, + ["xOffset"] = 0, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "INNERLEFT", + ["tags"] = "[name:color][name:15]", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["font"] = "SVUI Number Font", + ["fontSize"] = 12, + ["fontOutline"] = "OUTLINE", + }, + ["portrait"] = + { + ["enable"] = true, + ["width"] = 45, + ["overlay"] = true, + ["rotation"] = 0, + ["camDistanceScale"] = 1, + ["style"] = "3D", + }, + ["buffs"] = + { + ["enable"] = true, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "LEFT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = + { + friendly = false, + enemy = false, + }, + ["filterRaid"] = + { + friendly = false, + enemy = false, + }, + ["filterBlocked"] = + { + friendly = false, + enemy = false, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "Shield", + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["xOffset"] = -8, + ["yOffset"] = 0, + ["sizeOverride"] = 40, + }, + ["debuffs"] = + { + ["enable"] = true, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "BUFFS", + ["anchorPoint"] = "LEFT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "LEFT", + ["filterPlayer"] = + { + friendly = false, + enemy = false, + }, + ["filterBlocked"] = + { + friendly = false, + enemy = false, + }, + ["filterAllowed"] = + { + friendly = false, + enemy = false, + }, + ["filterInfinite"] = + { + friendly = false, + enemy = false, + }, + ["useFilter"] = "CC", + ["filterDispellable"] = + { + friendly = false, + enemy = false, + }, + ["xOffset"] = -8, + ["yOffset"] = 0, + ["sizeOverride"] = 40, + }, + ["castbar"] = + { + ["enable"] = true, + ["width"] = 215, + ["height"] = 18, + ["icon"] = true, + ["matchFrameWidth"] = true, + ["format"] = "REMAINING", + ["spark"] = true, + ["useCustomColor"] = false, + ["castingColor"] = {0.8, 0.8, 0}, + ["sparkColor"] = {1, 0.72, 0}, + }, + ["pvp"] = + { + ["enable"] = true, + ["trinketPosition"] = "LEFT", + ["trinketSize"] = 45, + ["trinketX"] = -2, + ["trinketY"] = 0, + ["specPosition"] = "RIGHT", + ["specSize"] = 45, + ["specX"] = 2, + ["specY"] = 0, + }, + }, + ["party"] = { + ["enable"] = true, + ["rangeCheck"] = true, + ["threatEnabled"] = true, + ["visibility"] = "[@raid6, exists][nogroup] hide;show", + ["showBy"] = "UP_RIGHT", + ["wrapXOffset"] = 9, + ["wrapYOffset"] = 13, + ["groupCount"] = 1, + ["gRowCol"] = 1, + ["customSorting"] = false, + ["sortMethod"] = "GROUP", + ["sortDir"] = "ASC", + ["invertGroupingOrder"] = false, + ["startFromCenter"] = false, + ["showPlayer"] = true, + ["predict"] = false, + ["colorOverride"] = "USE_DEFAULT", + ["width"] = 70, + ["height"] = 70, + ["gridAllowed"] = true, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "none", + ["name_colored"] = true, + ["name_length"] = 10, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "", + ["position"] = "BOTTOM", + ["orientation"] = "HORIZONTAL", + ["frequentUpdates"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = true, + ["tags"] = "", + ["frequentUpdates"] = false, + ["height"] = 7, + ["position"] = "BOTTOMRIGHT", + ["hideonnpc"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "INNERTOPLEFT", + ["tags"] = "[name:color][name:10]", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["font"] = "SVUI Narrator Font", + ["fontSize"] = 13, + ["fontOutline"] = "OUTLINE", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 2, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHTTOP", + ["verticalGrowth"] = "DOWN", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = true, + ["filterRaid"] = true, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = true, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = true, + ["perrow"] = 2, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHTTOP", + ["verticalGrowth"] = "DOWN", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = false, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = false, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["auraWatch"] = + { + ["enable"] = true, + ["size"] = 8, + ["fontSize"] = 11, + }, + ["petsGroup"] = + { + ["enable"] = false, + ["width"] = 30, + ["height"] = 30, + ["gridAllowed"] = true, + ["anchorPoint"] = "BOTTOMLEFT", + ["xOffset"] = - 1, + ["yOffset"] = 0, + ["name_length"] = 3, + ["tags"] = "[name:3]", + }, + ["targetsGroup"] = + { + ["enable"] = false, + ["width"] = 30, + ["height"] = 30, + ["gridAllowed"] = true, + ["anchorPoint"] = "TOPLEFT", + ["xOffset"] = - 1, + ["yOffset"] = 0, + ["name_length"] = 3, + ["tags"] = "[name:3]", + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 25, + ["attachTo"] = "INNERBOTTOMLEFT", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + ["roleIcon"] = + { + ["enable"] = true, + ["size"] = 18, + ["attachTo"] = "INNERBOTTOMRIGHT", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + ["raidRoleIcons"] = + { + ["enable"] = true, + ["size"] = 18, + ["attachTo"] = "TOPLEFT", + ["xOffset"] = 0, + ["yOffset"] = -4, + }, + }, + ["portrait"] = + { + ["enable"] = true, + ["width"] = 45, + ["overlay"] = true, + ["rotation"] = 0, + ["camDistanceScale"] = 1, + ["style"] = "3D", + }, + }, + ["raid10"] = { + ["enable"] = true, + ["rangeCheck"] = true, + ["threatEnabled"] = true, + ["visibility"] = "[@raid6, noexists][@raid11, exists][nogroup] hide;show", + ["showBy"] = "RIGHT_DOWN", + ["wrapXOffset"] = 8, + ["wrapYOffset"] = 8, + ["groupCount"] = 2, + ["gRowCol"] = 1, + ["customSorting"] = false, + ["sortMethod"] = "GROUP", + ["sortDir"] = "ASC", + ["showPlayer"] = true, + ["predict"] = false, + ["colorOverride"] = "USE_DEFAULT", + ["width"] = 75, + ["height"] = 34, + ["gridAllowed"] = true, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "none", + ["name_colored"] = true, + ["name_length"] = 4, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "", + ["position"] = "BOTTOM", + ["orientation"] = "HORIZONTAL", + ["frequentUpdates"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = true, + ["tags"] = "", + ["frequentUpdates"] = false, + ["height"] = 4, + ["position"] = "BOTTOMRIGHT", + ["hideonnpc"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "INNERTOPLEFT", + ["tags"] = "[name:color][name:4]", + ["yOffset"] = 0, + ["xOffset"] = 8, + ["font"] = "SVUI Default Font", + ["fontSize"] = 10, + ["fontOutline"] = "OUTLINE", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = true, + ["filterRaid"] = true, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = true, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = false, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = false, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = false, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["auraWatch"] = + { + ["enable"] = true, + ["size"] = 8, + }, + ["rdebuffs"] = + { + ["enable"] = true, + ["size"] = 26, + ["xOffset"] = 0, + ["yOffset"] = 2, + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 15, + ["attachTo"] = "INNERBOTTOMRIGHT", + ["xOffset"] = -8, + ["yOffset"] = 0, + }, + ["roleIcon"] = + { + ["enable"] = true, + ["size"] = 12, + ["attachTo"] = "INNERBOTTOMLEFT", + ["xOffset"] = 8, + ["yOffset"] = 0, + }, + ["raidRoleIcons"] = + { + ["enable"] = true, + ["size"] = 18, + ["attachTo"] = "TOPLEFT", + ["xOffset"] = 8, + ["yOffset"] = -4, + }, + }, + }, + ["raid25"] = { + ["enable"] = true, + ["rangeCheck"] = true, + ["threatEnabled"] = true, + ["visibility"] = "[@raid6, noexists][@raid11, noexists][@raid26, exists][nogroup] hide;show", + ["showBy"] = "RIGHT_DOWN", + ["wrapXOffset"] = 8, + ["wrapYOffset"] = 8, + ["groupCount"] = 5, + ["gRowCol"] = 1, + ["customSorting"] = false, + ["sortMethod"] = "GROUP", + ["sortDir"] = "ASC", + ["showPlayer"] = true, + ["predict"] = false, + ["colorOverride"] = "USE_DEFAULT", + ["width"] = 50, + ["height"] = 30, + ["gridAllowed"] = true, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "none", + ["name_colored"] = true, + ["name_length"] = 4, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "", + ["position"] = "BOTTOM", + ["orientation"] = "HORIZONTAL", + ["frequentUpdates"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = true, + ["tags"] = "", + ["height"] = 4, + ["position"] = "BOTTOMRIGHT", + ["hideonnpc"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "INNERTOPLEFT", + ["tags"] = "[name:color][name:4]", + ["yOffset"] = 0, + ["xOffset"] = 8, + ["font"] = "SVUI Default Font", + ["fontSize"] = 10, + ["fontOutline"] = "OUTLINE", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = true, + ["filterRaid"] = true, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = true, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = false, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = false, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = false, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["auraWatch"] = + { + ["enable"] = true, + ["size"] = 8, + }, + ["rdebuffs"] = + { + ["enable"] = true, + ["size"] = 26, + ["xOffset"] = 0, + ["yOffset"] = 2, + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 15, + ["attachTo"] = "INNERBOTTOMRIGHT", + ["xOffset"] = -8, + ["yOffset"] = 0, + }, + ["roleIcon"] = + { + ["enable"] = true, + ["size"] = 12, + ["attachTo"] = "INNERBOTTOMLEFT", + ["xOffset"] = 8, + ["yOffset"] = 0, + }, + ["raidRoleIcons"] = + { + ["enable"] = true, + ["size"] = 18, + ["attachTo"] = "TOPLEFT", + ["xOffset"] = 8, + ["yOffset"] = -4, + }, + }, + }, + ["raid40"] = { + ["enable"] = true, + ["rangeCheck"] = true, + ["threatEnabled"] = true, + ["visibility"] = "[@raid6, noexists][@raid11, noexists][@raid26, noexists][nogroup] hide;show", + ["showBy"] = "RIGHT_DOWN", + ["wrapXOffset"] = 8, + ["wrapYOffset"] = 8, + ["groupCount"] = 8, + ["gRowCol"] = 1, + ["customSorting"] = false, + ["sortMethod"] = "GROUP", + ["sortDir"] = "ASC", + ["showPlayer"] = true, + ["predict"] = false, + ["colorOverride"] = "USE_DEFAULT", + ["width"] = 50, + ["height"] = 30, + ["gridAllowed"] = true, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "none", + ["name_colored"] = true, + ["name_length"] = 4, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "", + ["position"] = "BOTTOM", + ["orientation"] = "HORIZONTAL", + ["frequentUpdates"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["power"] = + { + ["enable"] = false, + ["tags"] = "", + ["frequentUpdates"] = false, + ["height"] = 4, + ["position"] = "BOTTOMRIGHT", + ["hideonnpc"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "INNERTOPLEFT", + ["tags"] = "[name:color][name:4]", + ["yOffset"] = 0, + ["xOffset"] = 8, + ["font"] = "SVUI Default Font", + ["fontSize"] = 10, + ["fontOutline"] = "OUTLINE", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = true, + ["filterRaid"] = true, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = true, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = false, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = false, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = false, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["rdebuffs"] = + { + ["enable"] = true, + ["size"] = 22, + ["xOffset"] = 0, + ["yOffset"] = 2, + }, + ["auraWatch"] = + { + ["enable"] = true, + ["size"] = 8, + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 15, + ["attachTo"] = "INNERBOTTOMRIGHT", + ["xOffset"] = -8, + ["yOffset"] = 0, + }, + ["roleIcon"] = + { + ["enable"] = true, + ["size"] = 12, + ["attachTo"] = "INNERBOTTOMLEFT", + ["xOffset"] = 8, + ["yOffset"] = 0, + }, + ["raidRoleIcons"] = + { + ["enable"] = true, + ["size"] = 18, + ["attachTo"] = "TOPLEFT", + ["xOffset"] = 8, + ["yOffset"] = -4, + }, + }, + }, + ["raidpet"] = { + ["enable"] = false, + ["rangeCheck"] = true, + ["threatEnabled"] = true, + ["visibility"] = "[group:raid] show; hide", + ["showBy"] = "DOWN_RIGHT", + ["wrapXOffset"] = 3, + ["wrapYOffset"] = 3, + ["groupCount"] = 2, + ["gRowCol"] = 1, + ["customSorting"] = true, + ["sortMethod"] = "PETNAME", + ["sortDir"] = "ASC", + ["invertGroupingOrder"] = false, + ["startFromCenter"] = false, + ["predict"] = false, + ["colorOverride"] = "USE_DEFAULT", + ["width"] = 80, + ["height"] = 30, + ["gridAllowed"] = true, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "deficit", + ["name_colored"] = true, + ["name_length"] = 4, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "[health:color][health:deficit]", + ["position"] = "BOTTOM", + ["orientation"] = "HORIZONTAL", + ["frequentUpdates"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "INNERTOPLEFT", + ["tags"] = "[name:color][name:4]", + ["yOffset"] = 4, + ["xOffset"] = -4, + ["font"] = "SVUI Default Font", + ["fontSize"] = 10, + ["fontOutline"] = "OUTLINE", + }, + ["buffs"] = + { + ["enable"] = false, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = true, + ["filterRaid"] = true, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = true, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["debuffs"] = + { + ["enable"] = false, + ["perrow"] = 3, + ["numrows"] = 1, + ["attachTo"] = "FRAME", + ["anchorPoint"] = "RIGHT", + ["verticalGrowth"] = "UP", + ["horizontalGrowth"] = "RIGHT", + ["filterPlayer"] = false, + ["filterBlocked"] = true, + ["filterAllowed"] = false, + ["filterInfinite"] = false, + ["filterDispellable"] = false, + ["useFilter"] = "", + ["xOffset"] = 8, + ["yOffset"] = 0, + ["sizeOverride"] = 0, + }, + ["auraWatch"] = + { + ["enable"] = true, + ["size"] = 8, + }, + ["rdebuffs"] = + { + ["enable"] = true, + ["size"] = 26, + ["xOffset"] = 0, + ["yOffset"] = 2, + }, + ["icons"] = + { + ["raidicon"] = + { + ["enable"] = true, + ["size"] = 18, + ["attachTo"] = "INNERTOPLEFT", + ["xOffset"] = 0, + ["yOffset"] = 0, + }, + }, + }, + ["tank"] = { + ["enable"] = true, + ["threatEnabled"] = true, + ["rangeCheck"] = true, + ["width"] = 120, + ["height"] = 28, + ["gridAllowed"] = true, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "deficit", + ["name_colored"] = true, + ["name_length"] = 8, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "[health:color][health:deficit]", + ["position"] = "INNERRIGHT", + ["orientation"] = "HORIZONTAL", + ["frequentUpdates"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "INNERLEFT", + ["tags"] = "[name:color][name:8]", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["font"] = "SVUI Default Font", + ["fontSize"] = 10, + ["fontOutline"] = "OUTLINE", + }, + ["targetsGroup"] = + { + ["enable"] = false, + ["anchorPoint"] = "RIGHT", + ["xOffset"] = 1, + ["yOffset"] = 0, + ["width"] = 120, + ["height"] = 28, + }, + }, + ["assist"] = { + ["enable"] = true, + ["threatEnabled"] = true, + ["rangeCheck"] = true, + ["width"] = 120, + ["height"] = 28, + ["gridAllowed"] = true, + ["formatting"] = { + ["power_colored"] = true, + ["power_type"] = "none", + ["power_class"] = false, + ["power_alt"] = false, + ["health_colored"] = true, + ["health_type"] = "deficit", + ["name_colored"] = true, + ["name_length"] = 8, + ["smartlevel"] = false, + ["absorbs"] = false, + ["threat"] = false, + ["incoming"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + }, + ["misc"] = { + ["tags"] = "" + }, + ["health"] = + { + ["tags"] = "[health:color][health:deficit]", + ["position"] = "INNERRIGHT", + ["orientation"] = "HORIZONTAL", + ["frequentUpdates"] = false, + ["yOffset"] = 0, + ["xOffset"] = 0, + ["reversed"] = false, + ["fontSize"] = 10, + }, + ["name"] = + { + ["position"] = "INNERLEFT", + ["tags"] = "[name:color][name:8]", + ["yOffset"] = 0, + ["xOffset"] = 0, + ["font"] = "SVUI Default Font", + ["fontSize"] = 10, + ["fontOutline"] = "OUTLINE", + }, + ["targetsGroup"] = + { + ["enable"] = false, + ["anchorPoint"] = "RIGHT", + ["xOffset"] = 1, + ["yOffset"] = 0, + ["width"] = 120, + ["height"] = 28, + }, + } +} + +--[[ CACHE DATA ]]-- + +local BUFFWATCH_BY_CLASS = { + PRIEST = { + {-- Weakened Soul + ["enabled"] = true, + ["id"] = 6788, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 1, ["g"] = 0, ["b"] = 0}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Prayer of Mending + ["enabled"] = true, + ["id"] = 41635, + ["point"] = "BOTTOMRIGHT", + ["color"] = {["r"] = 0.2, ["g"] = 0.7, ["b"] = 0.2}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Renew + ["enabled"] = true, + ["id"] = 139, + ["point"] = "BOTTOMLEFT", + ["color"] = {["r"] = 0.4, ["g"] = 0.7, ["b"] = 0.2}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Power Word: Shield + ["enabled"] = true, + ["id"] = 17, + ["point"] = "TOPLEFT", + ["color"] = {["r"] = 0.81, ["g"] = 0.85, ["b"] = 0.1}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Power Word: Shield Power Insight + ["enabled"] = true, + ["id"] = 123258, + ["point"] = "TOPLEFT", + ["color"] = {["r"] = 0.81, ["g"] = 0.85, ["b"] = 0.1}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Power Infusion + ["enabled"] = true, + ["id"] = 10060, + ["point"] = "RIGHT", + ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Guardian Spirit + ["enabled"] = true, + ["id"] = 47788, + ["point"] = "LEFT", + ["color"] = {["r"] = 0.86, ["g"] = 0.44, ["b"] = 0}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Pain Suppression + ["enabled"] = true, + ["id"] = 33206, + ["point"] = "LEFT", + ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + }, + DRUID = { + {-- Rejuvenation + ["enabled"] = true, + ["id"] = 774, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 0.8, ["g"] = 0.4, ["b"] = 0.8}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Regrowth + ["enabled"] = true, + ["id"] = 8936, + ["point"] = "BOTTOMLEFT", + ["color"] = {["r"] = 0.2, ["g"] = 0.8, ["b"] = 0.2}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Lifebloom + ["enabled"] = true, + ["id"] = 33763, + ["point"] = "TOPLEFT", + ["color"] = {["r"] = 0.4, ["g"] = 0.8, ["b"] = 0.2}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Wild Growth + ["enabled"] = true, + ["id"] = 48438, + ["point"] = "BOTTOMRIGHT", + ["color"] = {["r"] = 0.8, ["g"] = 0.4, ["b"] = 0}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + }, + PALADIN = { + {-- Beacon of Light + ["enabled"] = true, + ["id"] = 53563, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 0.7, ["g"] = 0.3, ["b"] = 0.7}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Hand of Protection + ["enabled"] = true, + ["id"] = 1022, + ["point"] = "BOTTOMRIGHT", + ["color"] = {["r"] = 0.2, ["g"] = 0.2, ["b"] = 1}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Hand of Freedom + ["enabled"] = true, + ["id"] = 1044, + ["point"] = "BOTTOMRIGHT", + ["color"] = {["r"] = 0.89, ["g"] = 0.45, ["b"] = 0}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Hand of Salvation + ["enabled"] = true, + ["id"] = 1038, + ["point"] = "BOTTOMRIGHT", + ["color"] = {["r"] = 0.93, ["g"] = 0.75, ["b"] = 0}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Hand of Sacrifice + ["enabled"] = true, + ["id"] = 6940, + ["point"] = "BOTTOMRIGHT", + ["color"] = {["r"] = 0.89, ["g"] = 0.1, ["b"] = 0.1}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Hand of Purity + ["enabled"] = true, + ["id"] = 114039, + ["point"] = "BOTTOMRIGHT", + ["color"] = {["r"] = 0.64, ["g"] = 0.41, ["b"] = 0.72}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Sacred Shield + ["enabled"] = true, + ["id"] = 20925, + ["point"] = "TOPLEFT", + ["color"] = {["r"] = 0.93, ["g"] = 0.75, ["b"] = 0}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Eternal Flame + ["enabled"] = true, + ["id"] = 114163, + ["point"] = "BOTTOMLEFT", + ["color"] = {["r"] = 0.87, ["g"] = 0.7, ["b"] = 0.03}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + }, + SHAMAN = { + {-- Riptide + ["enabled"] = true, + ["id"] = 61295, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 0.7, ["g"] = 0.3, ["b"] = 0.7}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Earth Shield + ["enabled"] = true, + ["id"] = 974, + ["point"] = "BOTTOMLEFT", + ["color"] = {["r"] = 0.2, ["g"] = 0.7, ["b"] = 0.2}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Earthliving + ["enabled"] = true, + ["id"] = 51945, + ["point"] = "BOTTOMRIGHT", + ["color"] = {["r"] = 0.7, ["g"] = 0.4, ["b"] = 0.4}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + }, + MONK = { + {--Renewing Mist + ["enabled"] = true, + ["id"] = 119611, + ["point"] = "TOPLEFT", + ["color"] = {["r"] = 0.8, ["g"] = 0.4, ["b"] = 0.8}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Life Cocoon + ["enabled"] = true, + ["id"] = 116849, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 0.2, ["g"] = 0.8, ["b"] = 0.2}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Enveloping Mist + ["enabled"] = true, + ["id"] = 132120, + ["point"] = "BOTTOMLEFT", + ["color"] = {["r"] = 0.4, ["g"] = 0.8, ["b"] = 0.2}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Zen Sphere + ["enabled"] = true, + ["id"] = 124081, + ["point"] = "BOTTOMRIGHT", + ["color"] = {["r"] = 0.7, ["g"] = 0.4, ["b"] = 0}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + }, + ROGUE = { + {-- Tricks of the Trade + ["enabled"] = true, + ["id"] = 57934, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + }, + MAGE = { + {-- Ice Ward + ["enabled"] = true, + ["id"] = 111264, + ["point"] = "TOPLEFT", + ["color"] = {["r"] = 0.2, ["g"] = 0.2, ["b"] = 1}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + }, + WARRIOR = { + {-- Vigilance + ["enabled"] = true, + ["id"] = 114030, + ["point"] = "TOPLEFT", + ["color"] = {["r"] = 0.2, ["g"] = 0.2, ["b"] = 1}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Intervene + ["enabled"] = true, + ["id"] = 3411, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Safe Guard + ["enabled"] = true, + ["id"] = 114029, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + }, + DEATHKNIGHT = { + {-- Unholy Frenzy + ["enabled"] = true, + ["id"] = 49016, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, + ["anyUnit"] = false, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + }, + HUNTER = {}, + WARLOCK = {}, + NONE = {} +} + +local FilterIDs = { + ["Blocked"] = [[36900,36901,36893,114216,97821,36032,132365,8733,57724,25771,57723,36032,58539,26013,6788,71041,41425,55711,8326,23445,24755,25163,80354,95809,95223,124275,124274,124273,117870,123981,15007,113942,89140]], + ["Allowed"] = [[31821,2825,32182,80353,90355,47788,33206,116849,22812,1490,116202,123059,136431,137332,137375,144351,142863,142864,142865,143198]], + ["Strict"] = [[123059,136431,137332,137375,144351,142863,142864,142865,143198]], + ["CC"] = [[47476,91800,91807,91797,108194,115001,33786,2637,339,78675,22570,5211,9005,102359,99,127797,45334,102795,114238,113004,3355,1513,19503,34490,24394,64803,19386,117405,128405,50519,91644,90337,54706,4167,90327,56626,50245,50541,96201,96201,31661,118,55021,122,82691,118271,44572,33395,102051,20066,10326,853,105593,31935,105421,605,64044,8122,9484,15487,114404,88625,113792,87194,2094,1776,6770,1833,51722,1330,408,88611,115197,113953,51514,64695,63685,76780,118905,118345,710,6789,118699,5484,6358,30283,24259,115782,115268,118093,89766,137143,20511,7922,676,105771,107566,132168,107570,118895,18498,116706,117368,115078,122242,119392,119381,120086,116709,123407,140023,25046,20549,107079]], + ["Shield"] = [[17,47515,45243,45438,115610,48797,48792,49039,87256,55233,50461,33206,47788,62618,47585,104773,110913,108359,22812,102342,106922,61336,19263,53480,1966,31224,74001,5277,45182,98007,30823,108271,1022,6940,114039,31821,498,642,86659,31850,118038,55694,97463,12975,114029,871,114030,120954,131523,122783,122278,115213,116849,20594]], + ["Player"] = [[17,47515,45243,45438,45438,115610,110909,12051,12472,80353,12042,32612,110960,108839,111264,108843,48797,48792,49039,87256,49222,55233,50461,49016,51271,96268,33206,47788,62618,47585,6346,10060,114239,119032,27827,104773,110913,108359,113860,113861,113858,88448,22812,102342,106922,61336,117679,102543,102558,102560,16689,132158,106898,1850,106951,29166,52610,69369,112071,124974,19263,53480,51755,54216,34471,3045,3584,131894,90355,90361,31224,74001,5277,45182,51713,114018,2983,121471,11327,108212,57933,79140,13750,98007,30823,108271,16188,2825,79206,16191,8178,58875,108281,108271,16166,114896,1044,1022,1038,6940,114039,31821,498,642,86659,20925,31850,31884,53563,31842,54428,105809,85499,118038,55694,97463,12975,114029,871,114030,18499,1719,23920,114028,46924,3411,107574,120954,131523,122783,122278,115213,116849,125174,116841,20594,59545,20572,26297,68992]], + ["Raid"] = [[116281,116784,116417,116942,116161,117708,118303,118048,118135,117878,117949,116835,116778,116525,122761,122760,122740,123812,123180,123474,122835,123081,122125,121885,121949,117436,118091,117519,122752,123011,116161,123121,119985,119086,119775,122151,138349,137371,136767,137641,137359,137972,136903,136753,137633,137731,133767,133768,136050,138569,134691,137440,137408,137360,135000,143436,143579,147383,146124,144851,144358,144774,147207,144215,143990,144330,143494,142990,143919,143766,143773,146589,143777,143385,143974,145183]] +} + +local FilterOverrides = { + ["45438"] = 5, ["48797"] = 5, ["87256"] = 4, + ["33206"] = 3, ["47585"] = 5, ["22812"] = 2, + ["102342"] = 2, ["19263"] = 5, ["5277"] = 5, + ["1022"] = 5, ["31821"] = 3, ["498"] = 2, + ["642"] = 5, ["86659"] = 4, ["31850"] = 4, + ["118038"] = 5, ["114029"] = 2, ["871"] = 3, + ["120954"] = 2, ["131523"] = 5 +} + +SV.configs["filter"] = { + ["CC"] = {}, + ["Shield"] = {}, + ["Player"] = {}, + ["Blocked"] = {}, + ["Allowed"] = {}, + ["Strict"] = {}, + ["Raid"] = {}, + ["BuffWatch"] = BUFFWATCH_BY_CLASS[filterClass], + ["PetBuffWatch"] = { + {-- Frenzy + ["enabled"] = true, + ["id"] = 19615, + ["point"] = "TOPLEFT", + ["color"] = {["r"] = 0.89, ["g"] = 0.09, ["b"] = 0.05}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + {-- Mend Pet + ["enabled"] = true, + ["id"] = 136, + ["point"] = "TOPRIGHT", + ["color"] = {["r"] = 0.2, ["g"] = 0.8, ["b"] = 0.2}, + ["anyUnit"] = true, + ["onlyShowMissing"] = false, + ['style'] = 'coloredIcon', + ['displayText'] = false, + ['textColor'] = {["r"] = 1, ["g"] = 1, ["b"] = 1}, + ['textThreshold'] = -1, + ['xOffset'] = 0, + ['yOffset'] = 0 + }, + } +} + +for k, x in pairs(FilterIDs) do + local src = {}; + for id in x:gmatch("([^,]+)") do + if(id) then + local saved + local n = safename(id); + local p = FilterOverrides[tostring(id)] or 0; + if k == "Strict" then + saved = {['enable'] = true, ['spellID'] = id, ['priority'] = p} + else + saved = {['enable'] = true, ['priority'] = p} + end + src[n] = saved + end + end + SV.configs["filter"][k] = src +end \ No newline at end of file diff --git a/Interface/AddOns/SVUI/system/core.lua b/Interface/AddOns/SVUI/system/core.lua new file mode 100644 index 0000000..f0852c7 --- /dev/null +++ b/Interface/AddOns/SVUI/system/core.lua @@ -0,0 +1,580 @@ +--[[ +############################################################################## +_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_ # + ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__ # + __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____ # + ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____ # + ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____ # + _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____ # + __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ # + _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_# + ___\///////////___________\///___________\/////////_____\///////////_# +############################################################################## +S U P E R - V I L L A I N - U I By: Munglunch # +############################################################################## ]]-- + +--[[ GLOBALS ]]-- + +local _G = _G; +--LUA +local unpack = _G.unpack; +local select = _G.select; +local assert = _G.assert; +local type = _G.type; +local error = _G.error; +local pcall = _G.pcall; +local print = _G.print; +local ipairs = _G.ipairs; +local pairs = _G.pairs; +local next = _G.next; +local rawset = _G.rawset; +local rawget = _G.rawget; +local tostring = _G.tostring; +local tonumber = _G.tonumber; +local getmetatable = _G.getmetatable; +local setmetatable = _G.setmetatable; +--STRING +local string = _G.string; +local upper = string.upper; +local format = string.format; +local find = string.find; +local match = string.match; +local gsub = string.gsub; +--MATH +local math = _G.math; +local floor = math.floor +local random = math.random; +--TABLE +local table = _G.table; +local tsort = table.sort; +local tconcat = table.concat; +local tinsert = _G.tinsert; +local tremove = _G.tremove; +local twipe = _G.wipe; +--BLIZZARD API +local ReloadUI = _G.ReloadUI; +local GetLocale = _G.GetLocale; +local CreateFrame = _G.CreateFrame; +local IsAddOnLoaded = _G.IsAddOnLoaded; +local InCombatLockdown = _G.InCombatLockdown; +local GetAddOnInfo = _G.GetAddOnInfo; +local LoadAddOn = _G.LoadAddOn; +local SendAddonMessage = _G.SendAddonMessage; +local LibStub = _G.LibStub; +local GetAddOnMetadata = _G.GetAddOnMetadata; +local GetCVarBool = _G.GetCVarBool; +local GameTooltip = _G.GameTooltip; +local StaticPopup_Hide = _G.StaticPopup_Hide; +local ERR_NOT_IN_COMBAT = _G.ERR_NOT_IN_COMBAT; + +--[[ CONSTANTS ]]-- + +_G.BINDING_HEADER_SVUI = "Supervillain UI"; +_G.BINDING_NAME_SVUI_MARKERS = "Raid Markers"; +_G.BINDING_NAME_SVUI_DOCKS = "Toggle Docks"; +_G.BINDING_NAME_SVUI_RIDE = "Let's Ride"; + +_G.SlashCmdList.RELOADUI = ReloadUI +_G.SLASH_RELOADUI1 = "/rl" +_G.SLASH_RELOADUI2 = "/reloadui" + +--[[ GET THE REGISTRY LIB ]]-- + +local SVLib = _G.LibSuperVillain; + +--[[ +##################################################################################### + /$$$$$$ /$$ /$$ /$$ /$$ /$$$$$$ /$$$$$$ /$$$$$$ /$$$$$$$ /$$$$$$$$ + /$$__ $$| $$ | $$| $$ | $$|_ $$_/ /$$__ $$ /$$__ $$| $$__ $$| $$_____/ +| $$ \__/| $$ | $$| $$ | $$ | $$ | $$ \__/| $$ \ $$| $$ \ $$| $$ +| $$$$$$ | $$ / $$/| $$ | $$ | $$ | $$ | $$ | $$| $$$$$$$/| $$$$$ + \____ $$ \ $$ $$/ | $$ | $$ | $$ | $$ | $$ | $$| $$__ $$| $$__/ + /$$ \ $$ \ $$$/ | $$ | $$ | $$ | $$ $$| $$ | $$| $$ \ $$| $$ +| $$$$$$/ \ $/ | $$$$$$/ /$$$$$$ | $$$$$$/| $$$$$$/| $$ | $$| $$$$$$$$ + \______/ \_/ \______/ |______/ \______/ \______/ |__/ |__/|________/ +##################################################################################### +]]-- + +--[[ LOCALS ]]-- + +local callbacks = {}; +local numCallbacks = 0; +local playerClass = select(2, UnitClass("player")); +local actualWidth, actualHeight = UIParent:GetSize() +local messagePattern = "|cffFF2F00%s:|r"; +local debugPattern = "|cffFF2F00%s|r [|cff992FFF%s|r]|cffFF2F00:|r"; +local errorPattern = "|cffff0000Error -- |r|cffff9900Required addon '|r|cffffff00%s|r|cffff9900' is %s.|r" + +--[[ HELPERS ]]-- + +local function _removedeprecated() + --[[ BEGIN DEPRECATED ]]-- + + --[[ END DEPRECATED ]]-- +end + +local function _sendmessage(msg, prefix) + if(type(msg) == "table") then + msg = tostring(msg) + end + if(not msg) then return end + if(prefix) then + local outbound = ("%s %s"):format(prefix, msg); + print(outbound) + else + print(msg) + end +end + +--[[ CLASS COLOR LOCALS ]]-- + +local function RegisterCallback(self, m, h) + assert(type(m) == "string" or type(m) == "function", "Bad argument #1 to :RegisterCallback (string or function expected)") + if type(m) == "string" then + assert(type(h) == "table", "Bad argument #2 to :RegisterCallback (table expected)") + assert(type(h[m]) == "function", "Bad argument #1 to :RegisterCallback (m \"" .. m .. "\" not found)") + m = h[m] + end + callbacks[m] = h or true + numCallbacks = numCallbacks + 1 +end + +local function UnregisterCallback(self, m, h) + assert(type(m) == "string" or type(m) == "function", "Bad argument #1 to :UnregisterCallback (string or function expected)") + if type(m) == "string" then + assert(type(h) == "table", "Bad argument #2 to :UnregisterCallback (table expected)") + assert(type(h[m]) == "function", "Bad argument #1 to :UnregisterCallback (m \"" .. m .. "\" not found)") + m = h[m] + end + callbacks[m] = nil + numCallbacks = numCallbacks + 1 +end + +local function DispatchCallbacks() + if (numCallbacks < 1) then return end + for m, h in pairs(callbacks) do + local ok, err = pcall(m, h ~= true and h or nil) + if not ok then + print("ERROR:", err) + end + end +end + +--[[ BUILD CLASS COLOR GLOBAL ]]-- + +local SVUI_CLASS_COLORS; + +do + local env = getfenv(0) + env.SVUI_CLASS_COLORS = {} + SVUI_CLASS_COLORS = env.SVUI_CLASS_COLORS + + local classes = {}; + local supercolors = { + ["HUNTER"] = { r = 0.454, g = 0.698, b = 0 }, + ["WARLOCK"] = { r = 0.286, g = 0, b = 0.788 }, + ["PRIEST"] = { r = 0.976, g = 1, b = 0.839 }, + ["PALADIN"] = { r = 0.956, g = 0.207, b = 0.733 }, + ["MAGE"] = { r = 0, g = 0.796, b = 1 }, + ["ROGUE"] = { r = 1, g = 0.894, b = 0.117 }, + ["DRUID"] = { r = 1, g = 0.513, b = 0 }, + ["SHAMAN"] = { r = 0, g = 0.38, b = 1 }, + ["WARRIOR"] = { r = 0.698, g = 0.36, b = 0.152 }, + ["DEATHKNIGHT"] = { r = 0.847, g = 0.117, b = 0.074 }, + ["MONK"] = { r = 0.015, g = 0.886, b = 0.38 }, + }; + for class in pairs(RAID_CLASS_COLORS) do + tinsert(classes, class) + end + tsort(classes) + setmetatable(SVUI_CLASS_COLORS,{ + __index = function(t, k) + if k == "RegisterCallback" then return RegisterCallback end + if k == "UnregisterCallback" then return UnregisterCallback end + if k == "DispatchCallbacks" then return DispatchCallbacks end + end + }); + for i, class in ipairs(classes) do + local color = supercolors[class] + local r, g, b = color.r, color.g, color.b + local hex = ("ff%02x%02x%02x"):format(r * 255, g * 255, b * 255) + if not SVUI_CLASS_COLORS[class] or not SVUI_CLASS_COLORS[class].r or not SVUI_CLASS_COLORS[class].g or not SVUI_CLASS_COLORS[class].b then + SVUI_CLASS_COLORS[class] = { + r = r, + g = g, + b = b, + colorStr = hex, + } + end + end + classes = nil +end + +--[[ CORE ENGINE CONSTRUCT ]]-- + +-- We have to send the names of our three SavedVariables files since the WoW API +-- has no method for parsing them in LUA. +local SVUI = SVLib:NewCore("SVUI_Global", "SVUI_Profile", "SVUI_Cache") + +SVUI.ConfigID = "SVUI_ConfigOMatic"; +SVUI.class = playerClass +SVUI.ClassRole = "" +SVUI.UnitRole = "NONE" +SVUI.ConfigurationMode = false +SVUI.EffectiveScale = 1 +SVUI.ActualHeight = actualHeight +SVUI.ActualWidth = actualWidth +SVUI.yScreenArea = (actualHeight * 0.33) +SVUI.xScreenArea = (actualWidth * 0.33) + +--[[ UTILITY FRAMES ]]-- + +SVUI.UIParent = CreateFrame("Frame", "SVUIParent", UIParent); +SVUI.UIParent:SetFrameLevel(UIParent:GetFrameLevel()); +SVUI.UIParent:SetPoint("CENTER", UIParent, "CENTER"); +SVUI.UIParent:SetSize(UIParent:GetSize()); + +SVUI.Cloaked = CreateFrame("Frame", nil, UIParent); +SVUI.Cloaked:Hide(); + +SVUI.Options = { + type = "group", + name = "|cff339fffConfig-O-Matic|r", + args = { + plugins = { + order = -2, + type = "group", + name = "Plugins", + childGroups = "tab", + args = { + pluginheader = { + order = 1, + type = "header", + name = "Supervillain Plugins", + }, + pluginOptions = { + order = 2, + type = "group", + name = "", + args = { + pluginlist = { + order = 1, + type = "group", + name = "Summary", + args = { + active = { + order = 1, + type = "description", + name = function() return SVLib:GetPlugins() end + } + } + }, + } + } + } + } + } +} + +--[[ BUILD LOGIN MESSAGES ]]-- + +local commandments = { + { + "schemes diabolical", + "henchmen in-line", + "entrances grand", + "battles glorious", + "power absolute", + }, + { + "traps inescapable", + "enemies overthrown", + "monologues short", + "victories infamous", + "identity a mystery", + } +}; + +function SVUI:SetLoginMessage() + local first = commandments[1][random(1,5)] + local second = commandments[2][random(1,5)] + local logMsg1 = (self.L["LOGIN_MSG"]):format(first, second) + local logMsg2 = (self.L["LOGIN_MSG2"]):format(self.Version) + local outbound = (messagePattern):format(self.NameID) + _sendmessage(logMsg1, outbound) + _sendmessage(logMsg2, outbound) +end + +--[[ CORE FUNCTIONS ]]-- + +function SVUI:fubar() return end + +function SVUI:StaticPopup_Show(arg) + if arg == "ADDON_ACTION_FORBIDDEN" then + StaticPopup_Hide(arg) + end +end + +function SVUI:Debugger(msg) + if(not self.DebugMode) then return end + local outbound = (debugPattern):format(self.NameID, "DEBUG") + _sendmessage(msg, outbound) +end + +function SVUI:AddonMessage(msg) + local outbound = (messagePattern):format(self.NameID) + _sendmessage(msg, outbound) +end + +function SVUI:ResetAllUI(confirmed) + if InCombatLockdown()then + SendAddonMessage(ERR_NOT_IN_COMBAT) + return + end + if(not confirmed) then + self:StaticPopup_Show('RESET_UI_CHECK') + return + end + self.Setup:Reset() +end + +function SVUI:ResetUI(confirmed) + if InCombatLockdown()then + SendAddonMessage(ERR_NOT_IN_COMBAT) + return + end + if(not confirmed) then + self:StaticPopup_Show('RESETMOVERS_CHECK') + return + end + self.Mentalo:Reset() +end + +function SVUI:ImportProfile(key) + self.SystemAlert["COPY_PROFILE_PROMPT"].text = "Are you sure you want to copy the profile '" .. key .. "'?" + self.SystemAlert["COPY_PROFILE_PROMPT"].OnAccept = function() SVLib:ImportDatabase(key) end + self:StaticPopup_Show("COPY_PROFILE_PROMPT") +end + +function SVUI:ToggleConfig() + if InCombatLockdown() then + SendAddonMessage(ERR_NOT_IN_COMBAT) + self:RegisterEvent('PLAYER_REGEN_ENABLED') + return + end + if not IsAddOnLoaded(self.ConfigID) then + local _,_,_,_,_,state = GetAddOnInfo(self.ConfigID) + if state ~= "MISSING" and state ~= "DISABLED" then + LoadAddOn(self.ConfigID) + local config_version = GetAddOnMetadata(self.ConfigID, "Version") + if(tonumber(config_version) < 4) then + self:StaticPopup_Show("CLIENT_UPDATE_REQUEST") + end + else + local errorMessage = (errorPattern):format(self.ConfigID, state) + self:AddonMessage(errorMessage) + return + end + end + local aceConfig = LibStub("AceConfigDialog-3.0") + local switch = not aceConfig.OpenFrames[self.NameID] and "Open" or "Close" + aceConfig[switch](aceConfig, self.NameID) + GameTooltip:Hide() +end + +function SVUI:TaintHandler(taint, sourceName, sourceFunc) + if GetCVarBool('scriptErrors') ~= 1 then return end + local errorString = ("Error Captured: %s->%s->{%s}"):format(taint, sourceName or "Unknown", sourceFunc or "Unknown") + self:AddonMessage(errorString) + self:StaticPopup_Show("TAINT_RL") +end + +function SVUI:VersionCheck() + local minimumVersion = 4.06; + local installedVersion = SVLib:GetSafeData("install_version"); + if(installedVersion) then + if(type(installedVersion) == "string") then + installedVersion = tonumber(installedVersion) + end + if(type(installedVersion) == "number" and installedVersion < minimumVersion) then + --_removedeprecated() -- No current deprecated entries to remove + self.Setup:Install(true) + end + else + self.Setup:Install(true) + end +end + +function SVUI:RefreshEverything(bypass) + self:RefreshAllSystemMedia(); + self.UIParent:Hide(); + self.Mentalo:SetPositions(); + SVLib:RefreshAll(); + self.UIParent:Show(); + if not bypass then + self:VersionCheck() + end +end + +--[[ EVENT HANDLERS ]]-- + +function SVUI:PLAYER_ENTERING_WORLD() + if(not self.RoleIsSet) then + self:PlayerInfoUpdate() + end + if(not self.MediaInitialized) then + self:RefreshAllSystemMedia() + end + local _,instanceType = IsInInstance() + if(instanceType == "pvp") then + self.BGTimer = self.Timers:ExecuteLoop(RequestBattlefieldScoreData, 5) + elseif(self.BGTimer) then + self.Timers:RemoveLoop(self.BGTimer) + self.BGTimer = nil + end + if(not InCombatLockdown()) then + collectgarbage("collect") + end +end + +function SVUI:PET_BATTLE_CLOSE() + self:PushDisplayAudit() + SVLib:LiveUpdate() +end + +function SVUI:PET_BATTLE_OPENING_START() + self:FlushDisplayAudit() +end + +function SVUI:PET_BATTLE_CLOSE() + self:PushDisplayAudit() + SVLib:LiveUpdate() +end + +function SVUI:PLAYER_REGEN_DISABLED() + local forceClosed = false; + + if(IsAddOnLoaded(self.ConfigID)) then + local aceConfig=LibStub("AceConfigDialog-3.0") + if aceConfig.OpenFrames[self.NameID] then + self:RegisterEvent("PLAYER_REGEN_ENABLED") + aceConfig:Close(self.NameID) + forceClosed = true + end + end + + if(self.Mentalo.Frames) then + for frame,_ in pairs(self.Mentalo.Frames) do + if _G[frame] and _G[frame]:IsShown() then + forceClosed = true; + _G[frame]:Hide() + end + end + end + + if(HenchmenFrameModel and HenchmenFrame and HenchmenFrame:IsShown()) then + HenchmenFrame:Hide() + HenchmenFrameBG:Hide() + forceClosed = true; + end + + if forceClosed == true then + self:AddonMessage(ERR_NOT_IN_COMBAT) + end + + if(self.NeedsFrameAudit) then + self:PushDisplayAudit() + end +end + +function SVUI:PLAYER_REGEN_ENABLED() + self:ToggleConfig() + self:UnregisterEvent("PLAYER_REGEN_ENABLED") +end + +function SVUI:TaintHandler(event, taint, sourceName, sourceFunc) + if GetCVarBool('scriptErrors') ~= 1 then return end + local errorString = ("Error Captured: %s->%s->{%s}"):format(taint, sourceName or "Unknown", sourceFunc or "Unknown") + self:AddonMessage(errorString) +end + +--[[ LOAD FUNCTIONS ]]-- + +function SVUI:ReLoad() + self.Timers:ClearAllTimers(); + self:RefreshAllSystemMedia(); + self.Mentalo:SetPositions(); + self:AddonMessage("All user settings reloaded"); +end + +function SVUI:Load() + self.Timers:ClearAllTimers() + + local rez = GetCVar("gxResolution"); + local gxHeight = tonumber(match(rez,"%d+x(%d+)")); + local gxWidth = tonumber(match(rez,"(%d+)x%d+")); + + SVLib:Initialize() + + self.DisplaySettings = SVLib:NewGlobal("Display") + if(not self.DisplaySettings.screenheight or (self.DisplaySettings.screenheight and type(self.DisplaySettings.screenheight) ~= "number")) then + self.DisplaySettings.screenheight = gxHeight + end + if(not self.DisplaySettings.screenwidth or (self.DisplaySettings.screenwidth and type(self.DisplaySettings.screenwidth) ~= "number")) then + self.DisplaySettings.screenwidth = gxWidth + end + + self:UI_SCALE_CHANGED(); + self:RefreshSystemFonts(); + self:LoadSystemAlerts(); + + self:RegisterEvent('PLAYER_REGEN_DISABLED'); +end + +function SVUI:Initialize() + SVLib:Launch(); + + self:UI_SCALE_CHANGED("PLAYER_LOGIN"); + self:PlayerInfoUpdate(); + self.Mentalo:Initialize() + self:VersionCheck() + self:RefreshAllSystemMedia(); + + hooksecurefunc("StaticPopup_Show", self.StaticPopup_Show) + + self:RegisterEvent("PLAYER_ENTERING_WORLD"); + self:RegisterEvent("UI_SCALE_CHANGED"); + self:RegisterEvent("PET_BATTLE_CLOSE"); + self:RegisterEvent("PET_BATTLE_OPENING_START"); + self:RegisterEvent("ADDON_ACTION_BLOCKED", "TaintHandler"); + self:RegisterEvent("ADDON_ACTION_FORBIDDEN", "TaintHandler"); + self:RegisterEvent("ACTIVE_TALENT_GROUP_CHANGED", "PlayerInfoUpdate"); + self:RegisterEvent("PLAYER_TALENT_UPDATE", "PlayerInfoUpdate"); + self:RegisterEvent("CHARACTER_POINTS_CHANGED", "PlayerInfoUpdate"); + self:RegisterEvent("UNIT_INVENTORY_CHANGED", "PlayerInfoUpdate"); + self:RegisterEvent("UPDATE_BONUS_ACTIONBAR", "PlayerInfoUpdate"); + + SVLib:RefreshModule("SVMap"); + + collectgarbage("collect") + + if self.db.general.loginmessage then + self:SetLoginMessage() + end +end +--[[ +########################################################## +THE CLEANING LADY +########################################################## +]]-- +local LemonPledge = 0; +local Consuela = CreateFrame("Frame") +Consuela:RegisterAllEvents() +Consuela:SetScript("OnEvent", function(self, event) + LemonPledge = LemonPledge + 1 + if(InCombatLockdown()) then return end; + if(LemonPledge > 10000) then + collectgarbage("collect"); + LemonPledge = 0; + end +end) \ No newline at end of file diff --git a/Interface/AddOns/SVUI/system/load.lua b/Interface/AddOns/SVUI/system/load.lua deleted file mode 100644 index bf48f8a..0000000 --- a/Interface/AddOns/SVUI/system/load.lua +++ /dev/null @@ -1,255 +0,0 @@ ---[[ -############################################################################## -_____/\\\\\\\\\\\____/\\\________/\\\__/\\\________/\\\__/\\\\\\\\\\\_ # - ___/\\\/////////\\\_\/\\\_______\/\\\_\/\\\_______\/\\\_\/////\\\///__ # - __\//\\\______\///__\//\\\______/\\\__\/\\\_______\/\\\_____\/\\\_____ # - ___\////\\\__________\//\\\____/\\\___\/\\\_______\/\\\_____\/\\\_____ # - ______\////\\\________\//\\\__/\\\____\/\\\_______\/\\\_____\/\\\_____ # - _________\////\\\______\//\\\/\\\_____\/\\\_______\/\\\_____\/\\\_____ # - __/\\\______\//\\\______\//\\\\\______\//\\\______/\\\______\/\\\_____ # - _\///\\\\\\\\\\\/________\//\\\________\///\\\\\\\\\/____/\\\\\\\\\\\_# - ___\///////////___________\///___________\/////////_____\///////////_# -############################################################################## -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 type = _G.type; -local tonumber = _G.tonumber; -local tinsert = _G.tinsert; -local string = _G.string; -local table = _G.table; ---[[ STRING METHODS ]]-- -local format, match = string.format, string.match; ---[[ TABLE METHODS ]]-- -local tcopy = table.copy; ---[[ -########################################################## -GET ADDON DATA -########################################################## -]]-- -local SV = select(2, ...) -local SVLib = _G.LibSuperVillain -local L = SV.L ---[[ -########################################################## -LOCALS -########################################################## -]]-- -local NewHook = hooksecurefunc; ---[[ -########################################################## -SYSTEM UPDATES -########################################################## -]]-- -local playerClass = select(2,UnitClass("player")); - -local function DeleteOldSavedVars() - --[[ BEGIN DEPRECATED ]]-- - - --[[ END DEPRECATED ]]-- -end - -function SV:VersionCheck() - local minimumVersion = 4.06; - local installedVersion = SVLib:GetSafeData("install_version"); - if(installedVersion) then - if(type(installedVersion) == "string") then - installedVersion = tonumber(installedVersion) - end - if(type(installedVersion) == "number" and installedVersion < minimumVersion) then - --DeleteOldSavedVars() -- No current deprecated entries to remove - self.Setup:Install(true) - end - else - self.Setup:Install(true) - end -end - -function SV:RefreshEverything(bypass) - self:RefreshAllSystemMedia(); - self.UIParent:Hide(); - self.Mentalo:SetPositions(); - SVLib:RefreshAll(); - self.UIParent:Show(); - if not bypass then - self:VersionCheck() - end -end ---[[ -########################################################## -SVUI LOAD PROCESS -########################################################## -]]-- -function SV:ReLoad() - self.Timers:ClearAllTimers(); - self:RefreshAllSystemMedia(); - self.Mentalo:SetPositions(); - self:AddonMessage("All user settings reloaded"); -end - -function SV:Load() - self.Timers:ClearAllTimers() - - local rez = GetCVar("gxResolution"); - local gxHeight = tonumber(match(rez,"%d+x(%d+)")); - local gxWidth = tonumber(match(rez,"(%d+)x%d+")); - - SVLib:Initialize() - - self.DisplaySettings = SVLib:NewGlobal("Display") - if(not self.DisplaySettings.screenheight or (self.DisplaySettings.screenheight and type(self.DisplaySettings.screenheight) ~= "number")) then - self.DisplaySettings.screenheight = gxHeight - end - if(not self.DisplaySettings.screenwidth or (self.DisplaySettings.screenwidth and type(self.DisplaySettings.screenwidth) ~= "number")) then - self.DisplaySettings.screenwidth = gxWidth - end - - self:ScreenCalibration(); - self:RefreshSystemFonts(); - self:LoadSystemAlerts(); - - self.UIParent:RegisterEvent('PLAYER_REGEN_DISABLED'); - self.AddonLoaded = true -end - -function SV:Launch() - SVLib:Launch(); - - self:ScreenCalibration("PLAYER_LOGIN"); - self:DefinePlayerRole(); - - self.Mentalo:Initialize() - - self:VersionCheck() - - self:RefreshAllSystemMedia(); - - NewHook("StaticPopup_Show", self.StaticPopup_Show) - - self.UIParent:RegisterEvent("PLAYER_ENTERING_WORLD"); - self.UIParent:RegisterEvent("UI_SCALE_CHANGED"); - self.UIParent:RegisterEvent("PET_BATTLE_CLOSE"); - self.UIParent:RegisterEvent("PET_BATTLE_OPENING_START"); - self.UIParent:RegisterEvent("ADDON_ACTION_BLOCKED"); - self.UIParent:RegisterEvent("ADDON_ACTION_FORBIDDEN"); - self.UIParent:RegisterEvent("ACTIVE_TALENT_GROUP_CHANGED"); - self.UIParent:RegisterEvent("PLAYER_TALENT_UPDATE"); - self.UIParent:RegisterEvent("CHARACTER_POINTS_CHANGED"); - self.UIParent:RegisterEvent("UNIT_INVENTORY_CHANGED"); - self.UIParent:RegisterEvent("UPDATE_BONUS_ACTIONBAR"); - - SVLib:RefreshModule("SVMap"); - - collectgarbage("collect") - - if self.db.general.loginmessage then - local logMsg = (L["LOGIN_MSG"]):format("|cffFFFF1A", "|cffAA78FF", self.Version) - self:AddonMessage(logMsg); - end - - self.AddonLaunched = true -end ---[[ -########################################################## -EVENT HANDLERS -########################################################## -]]-- -local SVUISystem_OnEvent = function(self, event, arg, ...) - if(event == "ADDON_LOADED" and arg == "SVUI") then - if(not SV.AddonLoaded) then - SV:Load() - self:UnregisterEvent("ADDON_LOADED") - end - end - if(event == "PLAYER_LOGIN") then - if(not SV.AddonLaunched and IsLoggedIn()) then - SV:Launch() - self:UnregisterEvent("PLAYER_LOGIN") - end - end - if(event == "ACTIVE_TALENT_GROUP_CHANGED" or event == "PLAYER_TALENT_UPDATE" or event == "CHARACTER_POINTS_CHANGED" or event == "UNIT_INVENTORY_CHANGED" or event == "UPDATE_BONUS_ACTIONBAR") then - SV:DefinePlayerRole() - elseif(event == "UI_SCALE_CHANGED") then - SV:ScreenCalibration("UI_SCALE_CHANGED") - elseif(event == "PLAYER_ENTERING_WORLD") then - if(not SV.RoleIsSet) then - SV:DefinePlayerRole() - end - if(not SV.MediaInitialized) then - SV:RefreshAllSystemMedia() - end - local _,instanceType = IsInInstance() - if(instanceType == "pvp") then - SV.BGTimer = SV.Timers:ExecuteLoop(RequestBattlefieldScoreData, 5) - elseif(SV.BGTimer) then - SV.Timers:RemoveLoop(SV.BGTimer) - SV.BGTimer = nil - end - if(not InCombatLockdown()) then - collectgarbage("collect") - end - elseif(event == "PET_BATTLE_CLOSE") then - SV:PushDisplayAudit() - elseif(event == "PET_BATTLE_OPENING_START") then - SV:FlushDisplayAudit() - elseif(event == "ADDON_ACTION_BLOCKED" or event == "ADDON_ACTION_FORBIDDEN") then - SV:TaintHandler(arg, ...) - elseif(event == "PLAYER_REGEN_DISABLED") then - local forceClosed = false; - if IsAddOnLoaded(SV.ConfigID) then - local aceConfig=LibStub("AceConfigDialog-3.0") - if aceConfig.OpenFrames[SV.NameID] then - self:RegisterEvent('PLAYER_REGEN_ENABLED') - aceConfig:Close(SV.NameID) - forceClosed = true - end - end - if SV.Mentalo.Frames then - for frame,_ in pairs(SV.Mentalo.Frames) do - if _G[frame] and _G[frame]:IsShown() then - forceClosed = true; - _G[frame]:Hide() - end - end - end - if(HenchmenFrameModel and HenchmenFrame and HenchmenFrame:IsShown()) then - HenchmenFrame:Hide() - HenchmenFrameBG:Hide() - forceClosed = true; - end - if forceClosed == true then - SV:AddonMessage(ERR_NOT_IN_COMBAT) - end - elseif(event == "PLAYER_REGEN_ENABLED") then - SV:ToggleConfig() - self:UnregisterEvent('PLAYER_REGEN_ENABLED') - end -end - -SV.UIParent:RegisterEvent("ADDON_LOADED") -SV.UIParent:RegisterEvent("PLAYER_LOGIN") -SV.UIParent:SetScript("OnEvent", SVUISystem_OnEvent) ---[[ -########################################################## -THE CLEANING LADY -########################################################## -]]-- -local LemonPledge = 0; -local Consuela = CreateFrame("Frame") -Consuela:RegisterAllEvents() -Consuela:SetScript("OnEvent", function(self, event) - LemonPledge = LemonPledge + 1 - if(InCombatLockdown()) then return end; - if(LemonPledge > 10000) then - collectgarbage("collect"); - LemonPledge = 0; - end -end) \ No newline at end of file diff --git a/Interface/AddOns/SVUI/system/media.lua b/Interface/AddOns/SVUI/system/media.lua index cc169e0..abff273 100644 --- a/Interface/AddOns/SVUI/system/media.lua +++ b/Interface/AddOns/SVUI/system/media.lua @@ -127,9 +127,12 @@ LSM:Register("font","SVUI Pixel Font",[[Interface\AddOns\SVUI\assets\fonts\Pixel LSM:Register("font","Roboto",[[Interface\AddOns\SVUI\assets\fonts\Roboto.ttf]],LSM.LOCALE_BIT_ruRU+LSM.LOCALE_BIT_western) --[[ ########################################################## -POPULATE MEDIA TABLE +CREATE AND POPULATE MEDIA DATA ########################################################## ]]-- + +SV.Media = {} + do local myclass = select(2,UnitClass("player")) local cColor1 = SVUI_CLASS_COLORS[myclass] diff --git a/Interface/AddOns/SVUI/system/utilities.lua b/Interface/AddOns/SVUI/system/utilities.lua index 93ac86c..396b76f 100644 --- a/Interface/AddOns/SVUI/system/utilities.lua +++ b/Interface/AddOns/SVUI/system/utilities.lua @@ -91,7 +91,7 @@ elseif(PlayerClass == "PALADIN") then RefUnitRoles = {"HEALER", "TANK", "DAMAGER"} end -function SV:DefinePlayerRole() +function SV:PlayerInfoUpdate() local spec = GetSpecialization() local role, unitRole; if spec then diff --git a/Interface/AddOns/SVUI/system/visibility.lua b/Interface/AddOns/SVUI/system/visibility.lua index 3836bdf..8383d94 100644 --- a/Interface/AddOns/SVUI/system/visibility.lua +++ b/Interface/AddOns/SVUI/system/visibility.lua @@ -36,10 +36,8 @@ local L = SV.L; LOCALS ########################################################## ]]-- -local DisplayEventHandler = CreateFrame("Frame"); -local DisplayFrames = {}; local SecureFadeManager = CreateFrame("Frame"); -local SecureFadeFrames = {}; +local DisplayFrames, SecureFadeFrames = {}, {}; --[[ ########################################################## FRAME VISIBILITY MANAGEMENT @@ -52,28 +50,21 @@ function SV:AddToDisplayAudit(frame) end function SV:FlushDisplayAudit() - if InCombatLockdown() then return end - for frame,_ in pairs(DisplayFrames)do - frame:SetParent(SV.Cloaked) - end - DisplayEventHandler:RegisterEvent("PLAYER_REGEN_DISABLED") + if(InCombatLockdown()) then return end + for frame, _ in pairs(DisplayFrames)do + frame:SetParent(self.Cloaked) + end + self.NeedsFrameAudit = true end function SV:PushDisplayAudit() - if InCombatLockdown() then return end - local default = self.UIParent - for frame,parent in pairs(DisplayFrames)do - frame:SetParent(parent or default) - end - DisplayEventHandler:UnregisterEvent("PLAYER_REGEN_DISABLED") -end - -local DisplayAudit_OnEvent = function(self, event, arg, ...) - SV:PushDisplayAudit() + if(InCombatLockdown()) then return end + for frame, parent in pairs(DisplayFrames)do + frame:SetParent(parent or self.UIParent) + end + self.NeedsFrameAudit = false end -DisplayEventHandler:SetScript("OnEvent", DisplayAudit_OnEvent) - local function SafeFrameRemoval(table, item) local index = 1; while table[index] do diff --git a/Interface/AddOns/SVUI/xml/_load.xml b/Interface/AddOns/SVUI/xml/_load.xml new file mode 100644 index 0000000..adbd8de --- /dev/null +++ b/Interface/AddOns/SVUI/xml/_load.xml @@ -0,0 +1,5 @@ +<Ui xmlns="http://www.blizzard.com/wow/ui/"> + <Include file='system.xml'/> + <Include file='widgets.xml'/> + <Include file='mentalo.xml'/> +</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/xml/mentalo.xml b/Interface/AddOns/SVUI/xml/mentalo.xml new file mode 100644 index 0000000..f6471e0 --- /dev/null +++ b/Interface/AddOns/SVUI/xml/mentalo.xml @@ -0,0 +1,250 @@ +<Ui xmlns="http://www.blizzard.com/wow/ui/"> + <Frame name="SVUI_MentaloPrecision" hidden="true" frameStrata="DIALOG"> + <Size x="130" y="60"/> + <Anchors> + <Anchor point="CENTER"/> + </Anchors> + <Layers> + <Layer level="BACKGROUND"> + <Texture name="$parentBG" setAllPoints="true"/> + </Layer> + <Layer level="OVERLAY"> + <Texture name="$parentTitleBG"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativeTo="$parentBG" relativePoint="TOPLEFT"/> + <Anchor point="TOPRIGHT" relativeTo="$parentBG" relativePoint="TOPRIGHT"> + <Offset x="0" y="30"/> + </Anchor> + </Anchors> + </Texture> + </Layer> + <Layer level="ARTWORK"> + <FontString parentKey="Title" inherits="GameFontNormal" text="Focused Position"> + <Anchors> + <Anchor point="TOPLEFT" relativeTo="$parentTitleBG" relativePoint="TOPLEFT"/> + <Anchor point="BOTTOMRIGHT" relativeTo="$parentTitleBG" relativePoint="BOTTOMRIGHT"/> + </Anchors> + </FontString> + <FontString inherits="NumberFont_Outline_Huge" text="X"> + <Anchors> + <Anchor point="RIGHT" relativeTo="$parent" relativePoint="LEFT"> + <Offset x="-3" y="0"/> + </Anchor> + </Anchors> + <Color r="1" g="0.5" b="0" a="1"/> + </FontString> + <FontString inherits="NumberFont_Outline_Huge" text="Y"> + <Anchors> + <Anchor point="LEFT" relativeTo="$parent" relativePoint="RIGHT"> + <Offset x="3" y="0"/> + </Anchor> + </Anchors> + <Color r="1" g="0.5" b="0" a="1"/> + </FontString> + </Layer> + </Layers> + <Frames> + <EditBox name="$parentSetX" inherits="InputBoxTemplate" autoFocus="false"> + <Size x="50" y="17"/> + <Anchors> + <Anchor point="BOTTOMRIGHT" relativeTo="$parentBG" relativePoint="CENTER"> + <Offset x="-12" y="3"/> + </Anchor> + </Anchors> + + <Scripts> + <OnEscapePressed> + self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) + EditBox_ClearFocus(self) + </OnEscapePressed> + <OnEditFocusLost> + self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) + </OnEditFocusLost> + <OnShow> + EditBox_ClearFocus(self) + self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) + </OnShow> + </Scripts> + </EditBox> + + <EditBox name="$parentSetY" inherits="InputBoxTemplate" autoFocus="false"> + <Size x="50" y="17"/> + <Anchors> + <Anchor point="BOTTOMLEFT" relativeTo="$parentBG" relativePoint="CENTER"> + <Offset x="12" y="3"/> + </Anchor> + </Anchors> + <Scripts> + <OnEscapePressed> + self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) + EditBox_ClearFocus(self) + </OnEscapePressed> + <OnEditFocusLost> + self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) + </OnEditFocusLost> + <OnShow> + EditBox_ClearFocus(self) + self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) + </OnShow> + </Scripts> + </EditBox> + + <Button name="$parentUpButton" inherits="UIPanelSquareButton"> + <Size x="25" y="20"/> + <Anchors> + <Anchor point="TOPLEFT" relativeTo="$parentBG" relativePoint="CENTER"> + <Offset x="10" y="-3"/> + </Anchor> + </Anchors> + <Scripts> + <OnLoad> + SquareButton_SetIcon(self, "UP"); + self:RegisterForClicks("AnyUp"); + </OnLoad> + <OnClick> + local frame = _G["SVUI_MentaloPrecisionSetY"]; + frame.CurrentValue = frame.CurrentValue + 1 + frame:SetText(frame.CurrentValue) + frame:GetScript('OnEnterPressed')(frame) + </OnClick> + </Scripts> + </Button> + + <Button name="$parentDownButton" inherits="UIPanelSquareButton"> + <Size x="25" y="20"/> + <Anchors> + <Anchor point="LEFT" relativeTo="$parentUpButton" relativePoint="RIGHT"> + <Offset x="2" y="0"/> + </Anchor> + </Anchors> + <Scripts> + <OnLoad> + SquareButton_SetIcon(self, "DOWN"); + self:RegisterForClicks("AnyUp"); + </OnLoad> + <OnClick> + local frame = _G["SVUI_MentaloPrecisionSetY"]; + frame.CurrentValue = frame.CurrentValue - 1 + frame:SetText(frame.CurrentValue) + frame:GetScript('OnEnterPressed')(frame) + </OnClick> + </Scripts> + </Button> + + <Button name="$parentRightButton" inherits="UIPanelSquareButton"> + <Size x="25" y="20"/> + <Anchors> + <Anchor point="RIGHT" relativeTo="$parentUpButton" relativePoint="LEFT"> + <Offset x="-20" y="0"/> + </Anchor> + </Anchors> + <Scripts> + <OnLoad> + SquareButton_SetIcon(self, "RIGHT"); + self:RegisterForClicks("AnyUp"); + </OnLoad> + <OnClick> + local frame = _G["SVUI_MentaloPrecisionSetX"]; + frame.CurrentValue = frame.CurrentValue + 1 + frame:SetText(frame.CurrentValue) + frame:GetScript('OnEnterPressed')(frame) + </OnClick> + </Scripts> + </Button> + + <Button name="$parentLeftButton" inherits="UIPanelSquareButton"> + <Size x="25" y="20"/> + <Anchors> + <Anchor point="RIGHT" relativeTo="$parentRightButton" relativePoint="LEFT"> + <Offset x="-2" y="0"/> + </Anchor> + </Anchors> + <Scripts> + <OnLoad> + SquareButton_SetIcon(self, "LEFT"); + self:RegisterForClicks("AnyUp"); + </OnLoad> + <OnClick> + local frame = _G["SVUI_MentaloPrecisionSetX"]; + frame.CurrentValue = frame.CurrentValue - 1 + frame:SetText(frame.CurrentValue) + frame:GetScript('OnEnterPressed')(frame) + </OnClick> + </Scripts> + </Button> + </Frames> + </Frame> + + <Frame name="SVUI_Mentalo" movable="true" hidden="true" frameStrata="DIALOG"> + <Size x="300" y="30"/> + <Anchors> + <Anchor point="CENTER"/> + </Anchors> + <Layers> + <Layer level="BACKGROUND"> + <Texture name="$parentBG" setAllPoints="true"/> + </Layer> + <Layer level="OVERLAY"> + <Texture name="$parentTitleBG"> + <Anchors> + <Anchor point="TOPLEFT"/> + <Anchor point="BOTTOMRIGHT" relativePoint="TOPRIGHT"> + <Offset x="0" y="-30"/> + </Anchor> + </Anchors> + </Texture> + </Layer> + <Layer level="ARTWORK"> + <FontString parentKey="Title" inherits="SystemFont_Small" justifyH="LEFT" text="Mentalo The Frame Mover!"> + <Anchors> + <Anchor point="TOPLEFT" relativeTo="$parentTitleBG"> + <Offset x="4" y="0"/> + </Anchor> + <Anchor point="BOTTOMRIGHT" relativeTo="$parentTitleBG"/> + </Anchors> + <Color r="1" g="1" b="1" a="1"/> + </FontString> + <FontString parentKey="SubTitle" inherits="FriendsFont_Small" justifyH="CENTER" text="Right-click frames to move with precision."> + <Anchors> + <Anchor point="TOPLEFT" relativeTo="$parentTitleBG" relativePoint="BOTTOMLEFT"> + <Offset x="4" y="-4"/> + </Anchor> + <Anchor point="TOPRIGHT" relativeTo="$parentTitleBG" relativePoint="BOTTOMRIGHT"> + <Offset x="-4" y="-4"/> + </Anchor> + </Anchors> + <Color r="1" g="1" b="0" a="0.8"/> + </FontString> + <Texture parentKey="Avatar" file="Interface\AddOns\SVUI\assets\artwork\Doodads\MENTALO-OFF"> + <Size x="132" y="132"/> + <Anchors> + <Anchor point="BOTTOM" relativeTo="$parentBG" relativePoint="TOP"/> + </Anchors> + </Texture> + </Layer> + </Layers> + <Frames> + <Button name="$parentLockButton" inherits="OptionsButtonTemplate" text="Lock"> + <Size x="96" y="24"/> + <Anchors> + <Anchor point="RIGHT" relativeTo="$parentBG"> + <Offset x="-4" y="0"/> + </Anchor> + </Anchors> + </Button> + </Frames> + <Scripts> + <OnHide> + _G["SVUI_MentaloPrecision"]:Hide(); + </OnHide> + <OnDragStart> + self.moving = true; + self:StartMoving(); + </OnDragStart> + <OnDragStop> + self.moving = nil; + self:StopMovingOrSizing(); + </OnDragStop> + </Scripts> + </Frame> +</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/xml/system.xml b/Interface/AddOns/SVUI/xml/system.xml index 4beb4ad..dc0c93f 100644 --- a/Interface/AddOns/SVUI/xml/system.xml +++ b/Interface/AddOns/SVUI/xml/system.xml @@ -93,240 +93,4 @@ </Button> </Frames> </Frame> - - <Frame name="SVUI_MentaloPrecision" inherits="SVUI_PanelTemplate" hidden="true" frameStrata="DIALOG"> - <Size x="130" y="60"/> - <Anchors> - <Anchor point="CENTER"/> - </Anchors> - <Layers> - <Layer level="ARTWORK"> - <FontString parentKey="Title" inherits="GameFontNormal" text="Focused Position"> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="$parentTitleBG" relativePoint="TOPLEFT"/> - <Anchor point="BOTTOMRIGHT" relativeTo="$parentTitleBG" relativePoint="BOTTOMRIGHT"/> - </Anchors> - </FontString> - <FontString inherits="NumberFont_Outline_Huge" text="X"> - <Anchors> - <Anchor point="RIGHT" relativeTo="$parent" relativePoint="LEFT"> - <Offset x="-3" y="0"/> - </Anchor> - </Anchors> - <Color r="1" g="0.5" b="0" a="1"/> - </FontString> - <FontString inherits="NumberFont_Outline_Huge" text="Y"> - <Anchors> - <Anchor point="LEFT" relativeTo="$parent" relativePoint="RIGHT"> - <Offset x="3" y="0"/> - </Anchor> - </Anchors> - <Color r="1" g="0.5" b="0" a="1"/> - </FontString> - </Layer> - </Layers> - <Frames> - <EditBox name="$parentSetX" inherits="InputBoxTemplate" autoFocus="false"> - <Size x="50" y="17"/> - <Anchors> - <Anchor point="BOTTOMRIGHT" relativeTo="$parentBG" relativePoint="CENTER"> - <Offset x="-12" y="3"/> - </Anchor> - </Anchors> - - <Scripts> - <OnEscapePressed> - self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) - EditBox_ClearFocus(self) - </OnEscapePressed> - <OnEditFocusLost> - self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) - </OnEditFocusLost> - <OnShow> - EditBox_ClearFocus(self) - self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) - </OnShow> - </Scripts> - </EditBox> - - <EditBox name="$parentSetY" inherits="InputBoxTemplate" autoFocus="false"> - <Size x="50" y="17"/> - <Anchors> - <Anchor point="BOTTOMLEFT" relativeTo="$parentBG" relativePoint="CENTER"> - <Offset x="12" y="3"/> - </Anchor> - </Anchors> - <Scripts> - <OnEscapePressed> - self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) - EditBox_ClearFocus(self) - </OnEscapePressed> - <OnEditFocusLost> - self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) - </OnEditFocusLost> - <OnShow> - EditBox_ClearFocus(self) - self:SetText(math.floor((self.CurrentValue or 0) + 0.5)) - </OnShow> - </Scripts> - </EditBox> - - <Button name="$parentUpButton" inherits="UIPanelSquareButton"> - <Size x="25" y="20"/> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="$parentBG" relativePoint="CENTER"> - <Offset x="10" y="-3"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - SquareButton_SetIcon(self, "UP"); - self:RegisterForClicks("AnyUp"); - </OnLoad> - <OnClick> - local frame = _G["SVUI_MentaloPrecisionSetY"]; - frame.CurrentValue = frame.CurrentValue + 1 - frame:SetText(frame.CurrentValue) - frame:GetScript('OnEnterPressed')(frame) - </OnClick> - </Scripts> - </Button> - - <Button name="$parentDownButton" inherits="UIPanelSquareButton"> - <Size x="25" y="20"/> - <Anchors> - <Anchor point="LEFT" relativeTo="$parentUpButton" relativePoint="RIGHT"> - <Offset x="2" y="0"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - SquareButton_SetIcon(self, "DOWN"); - self:RegisterForClicks("AnyUp"); - </OnLoad> - <OnClick> - local frame = _G["SVUI_MentaloPrecisionSetY"]; - frame.CurrentValue = frame.CurrentValue - 1 - frame:SetText(frame.CurrentValue) - frame:GetScript('OnEnterPressed')(frame) - </OnClick> - </Scripts> - </Button> - - <Button name="$parentRightButton" inherits="UIPanelSquareButton"> - <Size x="25" y="20"/> - <Anchors> - <Anchor point="RIGHT" relativeTo="$parentUpButton" relativePoint="LEFT"> - <Offset x="-20" y="0"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - SquareButton_SetIcon(self, "RIGHT"); - self:RegisterForClicks("AnyUp"); - </OnLoad> - <OnClick> - local frame = _G["SVUI_MentaloPrecisionSetX"]; - frame.CurrentValue = frame.CurrentValue + 1 - frame:SetText(frame.CurrentValue) - frame:GetScript('OnEnterPressed')(frame) - </OnClick> - </Scripts> - </Button> - - <Button name="$parentLeftButton" inherits="UIPanelSquareButton"> - <Size x="25" y="20"/> - <Anchors> - <Anchor point="RIGHT" relativeTo="$parentRightButton" relativePoint="LEFT"> - <Offset x="-2" y="0"/> - </Anchor> - </Anchors> - <Scripts> - <OnLoad> - SquareButton_SetIcon(self, "LEFT"); - self:RegisterForClicks("AnyUp"); - </OnLoad> - <OnClick> - local frame = _G["SVUI_MentaloPrecisionSetX"]; - frame.CurrentValue = frame.CurrentValue - 1 - frame:SetText(frame.CurrentValue) - frame:GetScript('OnEnterPressed')(frame) - </OnClick> - </Scripts> - </Button> - </Frames> - </Frame> - - <Frame name="SVUI_Mentalo" movable="true" hidden="true" frameStrata="DIALOG"> - <Size x="300" y="30"/> - <Anchors> - <Anchor point="CENTER"/> - </Anchors> - <Layers> - <Layer level="BACKGROUND"> - <Texture name="$parentBG" setAllPoints="true"/> - </Layer> - <Layer level="OVERLAY"> - <Texture name="$parentTitleBG"> - <Anchors> - <Anchor point="TOPLEFT"/> - <Anchor point="BOTTOMRIGHT" relativePoint="TOPRIGHT"> - <Offset x="0" y="-30"/> - </Anchor> - </Anchors> - </Texture> - </Layer> - <Layer level="ARTWORK"> - <FontString parentKey="Title" inherits="SystemFont_Small" justifyH="LEFT" text="Mentalo The Frame Mover!"> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="$parentTitleBG"> - <Offset x="4" y="0"/> - </Anchor> - <Anchor point="BOTTOMRIGHT" relativeTo="$parentTitleBG"/> - </Anchors> - <Color r="1" g="1" b="1" a="1"/> - </FontString> - <FontString parentKey="SubTitle" inherits="FriendsFont_Small" justifyH="CENTER" text="Right-click frames to move with precision."> - <Anchors> - <Anchor point="TOPLEFT" relativeTo="$parentTitleBG" relativePoint="BOTTOMLEFT"> - <Offset x="4" y="-4"/> - </Anchor> - <Anchor point="TOPRIGHT" relativeTo="$parentTitleBG" relativePoint="BOTTOMRIGHT"> - <Offset x="-4" y="-4"/> - </Anchor> - </Anchors> - <Color r="1" g="1" b="0" a="0.8"/> - </FontString> - <Texture parentKey="Avatar" file="Interface\AddOns\SVUI\assets\artwork\Doodads\MENTALO-OFF"> - <Size x="132" y="132"/> - <Anchors> - <Anchor point="BOTTOM" relativeTo="$parentBG" relativePoint="TOP"/> - </Anchors> - </Texture> - </Layer> - </Layers> - <Frames> - <Button name="$parentLockButton" inherits="OptionsButtonTemplate" text="Lock"> - <Size x="96" y="24"/> - <Anchors> - <Anchor point="RIGHT" relativeTo="$parentBG"> - <Offset x="-4" y="0"/> - </Anchor> - </Anchors> - </Button> - </Frames> - <Scripts> - <OnHide> - _G["SVUI_MentaloPrecision"]:Hide(); - </OnHide> - <OnDragStart> - self.moving = true; - self:StartMoving(); - </OnDragStart> - <OnDragStop> - self.moving = nil; - self:StopMovingOrSizing(); - </OnDragStop> - </Scripts> - </Frame> </Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI/xml/widgets.xml b/Interface/AddOns/SVUI/xml/widgets.xml new file mode 100644 index 0000000..4acae67 --- /dev/null +++ b/Interface/AddOns/SVUI/xml/widgets.xml @@ -0,0 +1,978 @@ +<Ui xmlns="http://www.blizzard.com/wow/ui/"> + <Frame name="SVUI_ShadowTemplate" virtual="true"> + <Attributes> + <Attribute name="shadowAlpha" type="number" value="0.5" /> + </Attributes> + <Backdrop edgeFile="Interface\AddOns\SVUI\assets\artwork\Template\GLOW"> + <EdgeSize val="3" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0" g="0" b="0" a="0" /> + <BorderColor r="0" g="0" b="0" a="0.5" /> + </Backdrop> + </Frame> + + <Frame name="SVUI_PanelTemplate_Default" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="default" /> + <Attribute name="panelGradient" type="string" value="default" /> + <Attribute name="panelTexUpdate" type="boolean" value="false" /> + <Attribute name="panelPadding" type="number" value="1" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + </Attributes> + <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="1" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + </Layer> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_Transparent" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="transparent" /> + <Attribute name="panelGradient" type="boolean" value="false" /> + <Attribute name="panelTexUpdate" type="boolean" value="false" /> + <Attribute name="panelPadding" type="number" value="1" /> + <Attribute name="panelSkipUpdate" type="boolean" value="true" /> + </Attributes> + <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="1" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0" g="0" b="0" a="0.5" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_Component" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="default" /> + <Attribute name="panelGradient" type="string" value="default" /> + <Attribute name="panelTexUpdate" type="boolean" value="false" /> + <Attribute name="panelPadding" type="number" value="1" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + </Attributes> + <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="2" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + </Layer> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + <Frames> + <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" /> + </Frames> + </Frame> + + <Frame name="SVUI_PanelTemplate_Button" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="default" /> + <Attribute name="panelGradient" type="boolean" value="false" /> + <Attribute name="panelTexUpdate" type="boolean" value="false" /> + <Attribute name="panelPadding" type="number" value="1" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + </Attributes> + <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\BUTTON" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="2" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="1" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + <Frames> + <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" /> + </Frames> + </Frame> + + <Frame name="SVUI_PanelTemplate_FramedTop" inherits="SVUI_PanelTemplate_Default" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="default" /> + <Attribute name="panelGradient" type="string" value="darkest2" /> + <Attribute name="panelTexUpdate" type="boolean" value="true" /> + </Attributes> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT2" setAllPoints="true" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_FramedBottom" inherits="SVUI_PanelTemplate_Default" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="default" /> + <Attribute name="panelGradient" type="string" value="darkest" /> + <Attribute name="panelTexUpdate" type="boolean" value="true" /> + </Attributes> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_Bar" inherits="SVUI_PanelTemplate_Transparent" virtual="true"> + <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="1" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0" g="0" b="0" a="0.5" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + </Frame> + + <Frame name="SVUI_PanelTemplate_Slot" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="transparent" /> + <Attribute name="panelGradient" type="boolean" value="false" /> + <Attribute name="panelTexUpdate" type="boolean" value="false" /> + <Attribute name="panelPadding" type="number" value="2" /> + <Attribute name="panelSkipUpdate" type="boolean" value="true" /> + </Attributes> + <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="1" /> + <TileSize val="0" /> + <BackgroundInsets left="1" right="1" top="1" bottom="1" /> + <Color r="0" g="0" b="0" a="0.5" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + <Frames> + <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" /> + </Frames> + </Frame> + + <Frame name="SVUI_PanelTemplate_Inset" inherits="SVUI_PanelTemplate_Transparent" virtual="true"> + <Attributes> + <Attribute name="panelPadding" type="number" value="2" /> + </Attributes> + <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="2" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0" g="0" b="0" a="0.5" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_Comic" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="class" /> + <Attribute name="panelGradient" type="string" value="class" /> + <Attribute name="panelTexUpdate" type="boolean" value="true" /> + <Attribute name="panelPadding" type="number" value="3" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + </Attributes> + <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC1" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="3" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC1" setAllPoints="true" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + </Layer> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="3" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="3" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="3" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="3" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_ModelComic" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="special" /> + <Attribute name="panelGradient" type="string" value="class" /> + <Attribute name="panelTexUpdate" type="boolean" value="true" /> + <Attribute name="panelPadding" type="number" value="3" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + </Attributes> + <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="3" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0.37" g="0.32" b="0.29" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\COMIC-MODEL" setAllPoints="true" /> + <Color r="0.37" g="0.32" b="0.29" a="1" /> + </Layer> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="3" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="3" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="3" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="3" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_Paper" inherits="SVUI_PanelTemplate_Comic" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="white" /> + <Attribute name="panelGradient" type="string" value="white" /> + <Attribute name="panelSkipUpdate" type="boolean" value="true" /> + </Attributes> + <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="1" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="1" g="1" b="1" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\PAPER" setAllPoints="true" /> + <Color r="1" g="1" b="1" a="1" /> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_Container" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="special" /> + <Attribute name="panelGradient" type="string" value="special" /> + <Attribute name="panelTexUpdate" type="boolean" value="true" /> + <Attribute name="panelPadding" type="number" value="2" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + </Attributes> + <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN3" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="1" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0.37" g="0.32" b="0.29" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN3" setAllPoints="true" /> + <Color r="0.37" g="0.32" b="0.29" a="1" /> + </Layer> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_Pattern" inherits="SVUI_PanelTemplate_Comic" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="special" /> + <Attribute name="panelGradient" type="string" value="special" /> + </Attributes> + <Backdrop bgFile="Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN1" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="1" /> + <TileSize val="0" /> + <BackgroundInsets left="0" right="0" top="0" bottom="0" /> + <Color r="0.37" g="0.32" b="0.29" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Background\PATTERN1" setAllPoints="true" /> + <Color r="0.37" g="0.32" b="0.29" a="1" /> + </Layer> + </Layers> + <Frames> + <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" /> + </Frames> + </Frame> + + <Frame name="SVUI_PanelTemplate_Action" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="default" /> + <Attribute name="panelGradient" type="string" value="special" /> + <Attribute name="panelTexUpdate" type="boolean" value="true" /> + <Attribute name="panelPadding" type="number" value="2" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + </Attributes> + <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="2" /> + <TileSize val="0" /> + <BackgroundInsets left="1" right="1" top="1" bottom="1" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + </Layer> + <Layer level="BACKGROUND" textureSubLevel="2"> + <Texture parentKey="ExtendedTopLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_TOPLEFT"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOP" /> + <Anchor point="BOTTOMLEFT" relativePoint="LEFT" /> + </Anchors> + <Color r="0.05" g="0.05" b="0.05" a="0.5" /> + </Texture> + <Texture parentKey="ExtendedTopRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_TOPRIGHT"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="TOPLEFT" relativePoint="TOP" /> + <Anchor point="BOTTOMRIGHT" relativePoint="RIGHT" /> + </Anchors> + <Color r="0.05" g="0.05" b="0.05" a="0.5" /> + </Texture> + <Texture parentKey="ExtendedBottomLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_BOTTOMLEFT"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOM" /> + <Anchor point="TOPLEFT" relativePoint="LEFT" /> + </Anchors> + <Color r="0.1" g="0.1" b="0.1" a="0.5" /> + </Texture> + <Texture parentKey="ExtendedBottomRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\ACTION_BOTTOMRIGHT"> + <Anchors> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOM" /> + <Anchor point="TOPRIGHT" relativePoint="RIGHT" /> + </Anchors> + <Color r="0.1" g="0.1" b="0.1" a="0.5" /> + </Texture> + </Layer> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + <Frames> + <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" /> + </Frames> + </Frame> + + <Frame name="SVUI_PanelTemplate_Halftone" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="default" /> + <Attribute name="panelGradient" type="string" value="special" /> + <Attribute name="panelTexUpdate" type="boolean" value="true" /> + <Attribute name="panelPadding" type="number" value="2" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + </Attributes> + <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="2" /> + <TileSize val="0" /> + <BackgroundInsets left="1" right="1" top="1" bottom="1" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" /> + <Color r="0.2" g="0.2" b="0.2" a="1" /> + </Layer> + <Layer level="BACKGROUND" textureSubLevel="2"> + <Texture parentKey="ExtendedTopLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_TOPLEFT"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOP" /> + <Anchor point="BOTTOMLEFT" relativePoint="LEFT" /> + </Anchors> + <Color r="0.05" g="0.05" b="0.05" a="0.5" /> + </Texture> + <Texture parentKey="ExtendedTopRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_TOPRIGHT"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="TOPLEFT" relativePoint="TOP" /> + <Anchor point="BOTTOMRIGHT" relativePoint="RIGHT" /> + </Anchors> + <Color r="0.05" g="0.05" b="0.05" a="0.5" /> + </Texture> + <Texture parentKey="ExtendedBottomLeft" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_BOTTOMLEFT"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOM" /> + <Anchor point="TOPLEFT" relativePoint="LEFT" /> + </Anchors> + <Color r="0.1" g="0.1" b="0.1" a="0.5" /> + </Texture> + <Texture parentKey="ExtendedBottomRight" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\Extended\HALFTONE_BOTTOMRIGHT"> + <Anchors> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOM" /> + <Anchor point="TOPRIGHT" relativePoint="RIGHT" /> + </Anchors> + <Color r="0.1" g="0.1" b="0.1" a="0.5" /> + </Texture> + </Layer> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + <Frames> + <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" /> + </Frames> + </Frame> + + <Frame name="SVUI_PanelTemplate_Blackout" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="transparent" /> + <Attribute name="panelGradient" type="boolean" value="false" /> + <Attribute name="panelTexUpdate" type="boolean" value="false" /> + <Attribute name="panelPadding" type="number" value="2" /> + <Attribute name="panelOffset" type="number" value="2" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + </Attributes> + <Backdrop bgFile="Interface\BUTTONS\WHITE8X8" edgeFile="Interface\BUTTONS\WHITE8X8" tile="false"> + <EdgeSize val="2" /> + <TileSize val="0" /> + <BackgroundInsets left="1" right="1" top="1" bottom="1" /> + <Color r="0" g="0" b="0" a="0.5" /> + <BorderColor r="0" g="0" b="0" a="1" /> + </Backdrop> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT" setAllPoints="true" /> + <Color r="0" g="0" b="0" a="0.5" /> + </Layer> + <Layer level="BORDER"> + <Texture parentKey="BorderLeft" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderRight" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension x="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderTop" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="TOPLEFT" relativePoint="TOPLEFT" /> + <Anchor point="TOPRIGHT" relativePoint="TOPRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + <Texture parentKey="BorderBottom" file="Interface\BUTTONS\WHITE8X8"> + <Anchors> + <Anchor point="BOTTOMLEFT" relativePoint="BOTTOMLEFT" /> + <Anchor point="BOTTOMRIGHT" relativePoint="BOTTOMRIGHT" /> + </Anchors> + <Size> + <AbsDimension y="2" /> + </Size> + <Color r="0" g="0" b="0" a="1" /> + </Texture> + </Layer> + </Layers> + <Frames> + <Frame parentKey="Shadow" inherits="SVUI_ShadowTemplate" /> + </Frames> + </Frame> + + <Frame name="SVUI_PanelTemplate_UnitLarge" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="special" /> + <Attribute name="panelGradient" type="boolean" value="false" /> + <Attribute name="panelTexUpdate" type="boolean" value="true" /> + <Attribute name="panelPadding" type="number" value="0" /> + <Attribute name="panelOffset" type="number" value="3" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + <Attribute name="panelNoBackdrop" type="boolean" value="true" /> + </Attributes> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Unitframe\Background\UNIT-BG1" setAllPoints="true" /> + <Color r="0.37" g="0.32" b="0.29" a="1" /> + </Layer> + </Layers> + </Frame> + + <Frame name="SVUI_PanelTemplate_UnitSmall" virtual="true"> + <Attributes> + <Attribute name="panelColor" type="string" value="special" /> + <Attribute name="panelGradient" type="boolean" value="false" /> + <Attribute name="panelTexUpdate" type="boolean" value="true" /> + <Attribute name="panelPadding" type="number" value="0" /> + <Attribute name="panelOffset" type="number" value="3" /> + <Attribute name="panelSkipUpdate" type="boolean" value="false" /> + <Attribute name="panelNoBackdrop" type="boolean" value="true" /> + </Attributes> + <Layers> + <Layer level="BACKGROUND" textureSubLevel="1"> + <Texture parentKey="Skin" nonBlocking="true" file="Interface\AddOns\SVUI\assets\artwork\Unitframe\Background\UNIT-SMALL-BG1" setAllPoints="true" /> + <Color r="0.37" g="0.32" b="0.29" a="1" /> + </Layer> + </Layers> + </Frame> +</Ui> \ No newline at end of file diff --git a/Interface/AddOns/SVUI_ChatOMatic/SVUI_ChatOMatic.toc b/Interface/AddOns/SVUI_ChatOMatic/SVUI_ChatOMatic.toc index ffc27ea..f2775bd 100644 --- a/Interface/AddOns/SVUI_ChatOMatic/SVUI_ChatOMatic.toc +++ b/Interface/AddOns/SVUI_ChatOMatic/SVUI_ChatOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 60000 ## Author: Munglunch -## Version: 4.9 +## Version: 5.0 ## Title: |cffFF9900SVUI |r|cffFFEF00Chat-O-Matic|r ## Notes: Supervillain UI [|cff9911FFVarious Chat Gadgets|r] ## SavedVariables: ChatOMatic_Data diff --git a/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.toc b/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.toc index c6b20a4..1a96515 100644 --- a/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.toc +++ b/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 60000 ## Author: Munglunch -## Version: 4.9 +## Version: 5.0 ## Title: |cffFF9900SVUI |r|cffFFEF00Config-O-Matic|r ## Notes: Supervillain UI [|cff9911FFConfig Options|r] ## RequiredDeps: SVUI diff --git a/Interface/AddOns/SVUI_ConfigOMatic/components/bag.lua b/Interface/AddOns/SVUI_ConfigOMatic/components/bag.lua index a82f95a..3781d9f 100644 --- a/Interface/AddOns/SVUI_ConfigOMatic/components/bag.lua +++ b/Interface/AddOns/SVUI_ConfigOMatic/components/bag.lua @@ -82,7 +82,8 @@ SV.Options.args.SVBag = { min = 15, max = 45, step = 1, - set = function(a,b) MOD:ChangeDBVar(b,a[#a]) MOD:RefreshBagFrames("BagFrame") end + set = function(a,b) MOD:ChangeDBVar(b,a[#a]) MOD:RefreshBagFrames("BagFrame") end, + disabled = function()return SV.db.SVBag.alignToChat end }, bankSize = { order = 2, @@ -92,7 +93,8 @@ SV.Options.args.SVBag = { min = 15, max = 45, step = 1, - set = function(a,b) MOD:ChangeDBVar(b,a[#a]) MOD:RefreshBagFrames("BankFrame") end + set = function(a,b) MOD:ChangeDBVar(b,a[#a]) MOD:RefreshBagFrames("BankFrame") end, + disabled = function()return SV.db.SVBag.alignToChat end }, sortInverted = { order = 3, @@ -161,8 +163,8 @@ SV.Options.args.SVBag = { alignToChat = { order = 1, type = "toggle", - name = L["Align To Chat"], - desc = L["Align the width of the bag frame to fit inside the chat box."], + name = L["Align To Docks"], + desc = L["Align the width of the bag frame to fit inside dock windows."], set = function(a,b)MOD:ChangeDBVar(b,a[#a]) MOD:RefreshBagFrames() end }, bags = { diff --git a/Interface/AddOns/SVUI_CraftOMatic/SVUI_CraftOMatic.toc b/Interface/AddOns/SVUI_CraftOMatic/SVUI_CraftOMatic.toc index 168e57a..f50e954 100644 --- a/Interface/AddOns/SVUI_CraftOMatic/SVUI_CraftOMatic.toc +++ b/Interface/AddOns/SVUI_CraftOMatic/SVUI_CraftOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 60000 ## Author: Munglunch -## Version: 4.9 +## Version: 5.0 ## Title: |cffFF9900SVUI |r|cffFFEF00Craft-O-Matic|r ## Notes: Supervillain UI [|cff9911FFProfession Tools|r]. ## Interface: 60000 diff --git a/Interface/AddOns/SVUI_FightOMatic/SVUI_FightOMatic.toc b/Interface/AddOns/SVUI_FightOMatic/SVUI_FightOMatic.toc index c43eaec..c1d3f7e 100644 --- a/Interface/AddOns/SVUI_FightOMatic/SVUI_FightOMatic.toc +++ b/Interface/AddOns/SVUI_FightOMatic/SVUI_FightOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 60000 ## Author: Munglunch -## Version: 4.9 +## Version: 5.0 ## Title: |cffFF9900SVUI |r|cffFFEF00Fight-O-Matic|r ## Notes: Supervillain UI [|cff9911FFPvP Tools|r]. ## SavedVariables: FightOMatic_Data diff --git a/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.toc b/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.toc index 1438078..de8f577 100644 --- a/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.toc +++ b/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 60000 ## Author: Munglunch -## Version: 4.9 +## Version: 5.0 ## Title: |cffFF9900SVUI |r|cffFFEF00Log-O-Matic|r ## Notes: Supervillain UI [|cff9911FFData Logging|r]. ## SavedVariables: LogOMatic_Data diff --git a/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.toc b/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.toc index 8ccf115..adcc9be 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.toc +++ b/Interface/AddOns/SVUI_StyleOMatic/SVUI_StyleOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 60000 ## Author: Munglunch, Azilroka, Sortokk -## Version: 4.9 +## Version: 5.0 ## Title: |cffFF9900SVUI |r|cffFFEF00Style-O-Matic|r ## Notes: Supervillain UI [|cff9911FFAddon Skins|r]. ## RequiredDeps: SVUI diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/challenges.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/challenges.lua index 1ad71b2..a3e6805 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/challenges.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/challenges.lua @@ -38,16 +38,17 @@ local function ChallengesFrameStyle() select(10, ChallengesFrameDetails:GetRegions()):Hide() select(11, ChallengesFrameDetails:GetRegions()):Hide() ChallengesFrameDungeonButton1:SetPoint("TOPLEFT", ChallengesFrame, "TOPLEFT", 8, -83) + for u = 1, 9 do local v = ChallengesFrame["button"..u] v:SetButtonTemplate() - v:SetButtonTemplate() v:SetHighlightTexture("") v.selectedTex:SetAlpha(.2) v.selectedTex:SetPoint("TOPLEFT", 1, -1) v.selectedTex:SetPoint("BOTTOMRIGHT", -1, 1) - v.NoMedal:Die() - end + v.NoMedal:Die() + end + for u = 1, 3 do local F = ChallengesFrame["RewardRow"..u] for A = 1, 2 do diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/encounterjournal.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/encounterjournal.lua index e807a0a..db59c68 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/encounterjournal.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/encounterjournal.lua @@ -136,6 +136,8 @@ local function EncounterJournalStyle() EncounterJournalInstanceSelectScrollFrameScrollChild:SetFixedPanelTemplate("Default") EncounterJournalInstanceSelectScrollFrameScrollChild:SetPanelColor("dark") + EncounterJournalInstanceSelectScrollDownButton:SetButtonTemplate() + EncounterJournalInstanceSelectScrollDownButton:SetNormalTexture([[Interface\AddOns\SVUI\assets\artwork\Icons\MOVE-DOWN]]) EncounterJournalEncounterFrameInstanceFrame:SetFixedPanelTemplate("Inset") diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/inspect.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/inspect.lua index 8e41af9..24543de 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/inspect.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/inspect.lua @@ -91,9 +91,9 @@ local function InspectStyle() local r = GetInventoryItemQuality(unit, q:GetID()) if r and q.Panel then local s, t, f = GetItemQualityColor(r) - q.Panel:SetBackdropBorderColor(s, t, f) + q:SetBackdropBorderColor(s, t, f) elseif q.Panel then - q.Panel:SetBackdropBorderColor(0,0,0,1) + q:SetBackdropBorderColor(0,0,0,1) end end) InspectGuildFrameBG:Die() diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lfd.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lfd.lua index bd04c57..b794649 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lfd.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/lfd.lua @@ -233,7 +233,7 @@ local function LFDFrameStyle() button.ring:Hide() button.bg:SetTexture(0,0,0,0) button.bg:SetAllPoints() - button:SetFixedPanelTemplate('Button') + button:SetPanelTemplate('Button') button:SetButtonTemplate() button.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9) button.icon:SetDrawLayer("OVERLAY") diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/loothistory.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/loothistory.lua index 8b5c624..06b03ea 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/loothistory.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/loothistory.lua @@ -80,7 +80,7 @@ local _hook_MasterLootFrame_OnShow = function() icon:SetTexCoord(0.1, 0.9, 0.1, 0.9) item:SetPanelTemplate("Pattern") item.Panel:WrapOuter(icon) - item.Panel:SetBackdropBorderColor(colors.r, colors.g, colors.b) + item:SetBackdropBorderColor(colors.r, colors.g, colors.b) end for i = 1, MasterLooterFrame:GetNumChildren()do local child = select(i, MasterLooterFrame:GetChildren()) diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua index 7b1b302..7695f78 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua @@ -74,14 +74,14 @@ local function PetJournal_UpdatePets() if N then local color = ITEM_QUALITY_COLORS[N-1] if d.Panel then - d.Panel:SetBackdropBorderColor(color.r, color.g, color.b) + d:SetBackdropBorderColor(color.r, color.g, color.b) end if d.IconShadow then d.IconShadow:SetBackdropBorderColor(color.r, color.g, color.b) end else if d.Panel then - d.Panel:SetBackdropBorderColor(1, 1, 0, 0.5) + d:SetBackdropBorderColor(1, 1, 0, 0.5) end if d.IconShadow then d.IconShadow:SetBackdropBorderColor(1, 1, 0, 0.5) diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua b/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua index e82ca79..63657d1 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua @@ -348,7 +348,7 @@ function STYLE:ApplyScrollBarStyle(this) this:RemoveTextures() this:SetBackdrop(nil) this:SetFixedPanelTemplate("Component") - this.Panel:SetBackdropBorderColor(0.2,0.2,0.2) + this:SetBackdropBorderColor(0.2,0.2,0.2) this:SetThumbTexture("Interface\\Buttons\\UI-ScrollBar-Knob") this.StyleHooked = true diff --git a/Interface/AddOns/SVUI_TrackOMatic/SVUI_TrackOMatic.toc b/Interface/AddOns/SVUI_TrackOMatic/SVUI_TrackOMatic.toc index 78cb107..c216e6d 100644 --- a/Interface/AddOns/SVUI_TrackOMatic/SVUI_TrackOMatic.toc +++ b/Interface/AddOns/SVUI_TrackOMatic/SVUI_TrackOMatic.toc @@ -1,6 +1,6 @@ ## Interface: 60000 ## Author: Munglunch -## Version: 4.9 +## Version: 5.0 ## Title: |cffFF9900SVUI |r|cffFFEF00Track-O-Matic|r ## Notes: Supervillain UI [|cff9911FFRaid & Party Member Tracking|r]. ## RequiredDeps: SVUI diff --git a/Interface/BUTTONS/UI-SILVER-BUTTON-DOWN.blp b/Interface/BUTTONS/UI-SILVER-BUTTON-DOWN.blp new file mode 100644 index 0000000..bfc7cf2 Binary files /dev/null and b/Interface/BUTTONS/UI-SILVER-BUTTON-DOWN.blp differ diff --git a/Interface/BUTTONS/UI-SILVER-BUTTON-UP.blp b/Interface/BUTTONS/UI-SILVER-BUTTON-UP.blp new file mode 100644 index 0000000..5ef32d9 Binary files /dev/null and b/Interface/BUTTONS/UI-SILVER-BUTTON-UP.blp differ diff --git a/Interface/BUTTONS/UI-SilverButtonLG-Left-Down.blp b/Interface/BUTTONS/UI-SilverButtonLG-Left-Down.blp new file mode 100644 index 0000000..ea9c18c Binary files /dev/null and b/Interface/BUTTONS/UI-SilverButtonLG-Left-Down.blp differ diff --git a/Interface/BUTTONS/UI-SilverButtonLG-Left-Hi.blp b/Interface/BUTTONS/UI-SilverButtonLG-Left-Hi.blp new file mode 100644 index 0000000..611cc3f Binary files /dev/null and b/Interface/BUTTONS/UI-SilverButtonLG-Left-Hi.blp differ diff --git a/Interface/BUTTONS/UI-SilverButtonLG-Left-Up.blp b/Interface/BUTTONS/UI-SilverButtonLG-Left-Up.blp new file mode 100644 index 0000000..ea9c18c Binary files /dev/null and b/Interface/BUTTONS/UI-SilverButtonLG-Left-Up.blp differ diff --git a/Interface/BUTTONS/UI-SilverButtonLG-Mid-Down.blp b/Interface/BUTTONS/UI-SilverButtonLG-Mid-Down.blp new file mode 100644 index 0000000..5a2fe76 Binary files /dev/null and b/Interface/BUTTONS/UI-SilverButtonLG-Mid-Down.blp differ diff --git a/Interface/BUTTONS/UI-SilverButtonLG-Mid-Hi.blp b/Interface/BUTTONS/UI-SilverButtonLG-Mid-Hi.blp new file mode 100644 index 0000000..454fcc2 Binary files /dev/null and b/Interface/BUTTONS/UI-SilverButtonLG-Mid-Hi.blp differ diff --git a/Interface/BUTTONS/UI-SilverButtonLG-Mid-Up.blp b/Interface/BUTTONS/UI-SilverButtonLG-Mid-Up.blp new file mode 100644 index 0000000..5a2fe76 Binary files /dev/null and b/Interface/BUTTONS/UI-SilverButtonLG-Mid-Up.blp differ diff --git a/Interface/BUTTONS/UI-SilverButtonLG-Right-Down.blp b/Interface/BUTTONS/UI-SilverButtonLG-Right-Down.blp new file mode 100644 index 0000000..deaf17d Binary files /dev/null and b/Interface/BUTTONS/UI-SilverButtonLG-Right-Down.blp differ diff --git a/Interface/BUTTONS/UI-SilverButtonLG-Right-Hi.blp b/Interface/BUTTONS/UI-SilverButtonLG-Right-Hi.blp new file mode 100644 index 0000000..624cd81 Binary files /dev/null and b/Interface/BUTTONS/UI-SilverButtonLG-Right-Hi.blp differ diff --git a/Interface/BUTTONS/UI-SilverButtonLG-Right-Up.blp b/Interface/BUTTONS/UI-SilverButtonLG-Right-Up.blp new file mode 100644 index 0000000..deaf17d Binary files /dev/null and b/Interface/BUTTONS/UI-SilverButtonLG-Right-Up.blp differ diff --git a/Interface/BattlefieldFrame/Battleground-Alliance.blp b/Interface/BattlefieldFrame/Battleground-Alliance.blp index 9c11a82..6000090 100644 Binary files a/Interface/BattlefieldFrame/Battleground-Alliance.blp and b/Interface/BattlefieldFrame/Battleground-Alliance.blp differ diff --git a/Interface/BattlefieldFrame/Battleground-Horde.blp b/Interface/BattlefieldFrame/Battleground-Horde.blp index 5a5db15..5532ffc 100644 Binary files a/Interface/BattlefieldFrame/Battleground-Horde.blp and b/Interface/BattlefieldFrame/Battleground-Horde.blp differ diff --git a/Interface/FriendsFrame/Battlenet-Battleneticon.blp b/Interface/FriendsFrame/Battlenet-Battleneticon.blp new file mode 100644 index 0000000..c45609b Binary files /dev/null and b/Interface/FriendsFrame/Battlenet-Battleneticon.blp differ diff --git a/Interface/FriendsFrame/Battlenet-D3icon.blp b/Interface/FriendsFrame/Battlenet-D3icon.blp new file mode 100644 index 0000000..e0698a9 Binary files /dev/null and b/Interface/FriendsFrame/Battlenet-D3icon.blp differ diff --git a/Interface/FriendsFrame/Battlenet-Sc2icon.blp b/Interface/FriendsFrame/Battlenet-Sc2icon.blp new file mode 100644 index 0000000..f7c6232 Binary files /dev/null and b/Interface/FriendsFrame/Battlenet-Sc2icon.blp differ diff --git a/Interface/FriendsFrame/Battlenet-WTCGicon.blp b/Interface/FriendsFrame/Battlenet-WTCGicon.blp new file mode 100644 index 0000000..8b7084e Binary files /dev/null and b/Interface/FriendsFrame/Battlenet-WTCGicon.blp differ diff --git a/Interface/FriendsFrame/Battlenet-WoWicon.blp b/Interface/FriendsFrame/Battlenet-WoWicon.blp new file mode 100644 index 0000000..0022ecd Binary files /dev/null and b/Interface/FriendsFrame/Battlenet-WoWicon.blp differ diff --git a/Interface/FriendsFrame/TravelPass-Invite.blp b/Interface/FriendsFrame/TravelPass-Invite.blp new file mode 100644 index 0000000..88dd31c Binary files /dev/null and b/Interface/FriendsFrame/TravelPass-Invite.blp differ diff --git a/Interface/MINIMAP/TRACKING/BattleMaster.blp b/Interface/MINIMAP/TRACKING/BattleMaster.blp index 4a9be08..aadc6e2 100644 Binary files a/Interface/MINIMAP/TRACKING/BattleMaster.blp and b/Interface/MINIMAP/TRACKING/BattleMaster.blp differ diff --git a/Interface/PVPFrame/PVP-Currency-Alliance.blp b/Interface/PVPFrame/PVP-Currency-Alliance.blp index 25c67e5..6000090 100644 Binary files a/Interface/PVPFrame/PVP-Currency-Alliance.blp and b/Interface/PVPFrame/PVP-Currency-Alliance.blp differ diff --git a/Interface/PVPFrame/PVP-Currency-Horde.blp b/Interface/PVPFrame/PVP-Currency-Horde.blp index 8d8603f..5532ffc 100644 Binary files a/Interface/PVPFrame/PVP-Currency-Horde.blp and b/Interface/PVPFrame/PVP-Currency-Horde.blp differ diff --git a/Interface/TARGETINGFRAME/UI-PVP-Alliance.blp b/Interface/TARGETINGFRAME/UI-PVP-Alliance.blp new file mode 100644 index 0000000..ee0ff56 Binary files /dev/null and b/Interface/TARGETINGFRAME/UI-PVP-Alliance.blp differ diff --git a/Interface/TARGETINGFRAME/UI-PVP-Horde.blp b/Interface/TARGETINGFRAME/UI-PVP-Horde.blp new file mode 100644 index 0000000..e229b9d Binary files /dev/null and b/Interface/TARGETINGFRAME/UI-PVP-Horde.blp differ diff --git a/Interface/TARGETINGFRAME/UI-StatusBar.blp b/Interface/TARGETINGFRAME/UI-StatusBar.blp new file mode 100644 index 0000000..6556b55 Binary files /dev/null and b/Interface/TARGETINGFRAME/UI-StatusBar.blp differ diff --git a/Interface/TARGETINGFRAME/UI-TargetingFrame-BarFill.blp b/Interface/TARGETINGFRAME/UI-TargetingFrame-BarFill.blp new file mode 100644 index 0000000..6556b55 Binary files /dev/null and b/Interface/TARGETINGFRAME/UI-TargetingFrame-BarFill.blp differ diff --git a/Interface/TARGETINGFRAME/UI-TargetingFrame-LevelBackground.blp b/Interface/TARGETINGFRAME/UI-TargetingFrame-LevelBackground.blp new file mode 100644 index 0000000..6556b55 Binary files /dev/null and b/Interface/TARGETINGFRAME/UI-TargetingFrame-LevelBackground.blp differ diff --git a/Interface/WorldStateFrame/AllianceIcon.blp b/Interface/WorldStateFrame/AllianceIcon.blp index 40a4c94..6000090 100644 Binary files a/Interface/WorldStateFrame/AllianceIcon.blp and b/Interface/WorldStateFrame/AllianceIcon.blp differ diff --git a/Interface/WorldStateFrame/HordeIcon.blp b/Interface/WorldStateFrame/HordeIcon.blp index 18e88e1..5532ffc 100644 Binary files a/Interface/WorldStateFrame/HordeIcon.blp and b/Interface/WorldStateFrame/HordeIcon.blp differ