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 f85d2b9..6664319 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 @@ -487,11 +487,6 @@ function lib:UpdateDatabase(event) removedefaults(sv[k], src[k]) end end - for k,v in pairs(CACHE_SV) do - if(k ~= "STORED") then - CACHE_SV[k] = nil - end - end elseif(event == "ACTIVE_TALENT_GROUP_CHANGED") then local LastKey = SOURCE_KEY if(PROFILE_SV.SAFEDATA and PROFILE_SV.SAFEDATA.dualSpecEnabled) then diff --git a/Interface/AddOns/SVUI/packages/bag/SVBag.lua b/Interface/AddOns/SVUI/packages/bag/SVBag.lua index 8a1e8cd..40c6d0d 100644 --- a/Interface/AddOns/SVUI/packages/bag/SVBag.lua +++ b/Interface/AddOns/SVUI/packages/bag/SVBag.lua @@ -73,6 +73,8 @@ local RefProfessionColors = { [0x10000] = {222/255,13/255,65/255}, [0x100000] = {18/255,224/255,180/255} } + +local BagFilters = CreateFrame("Frame", "SVUI_BagFilterMenu", UIParent); --[[ ########################################################## LOCAL FUNCTIONS @@ -185,6 +187,47 @@ local function BuildEquipmentMap() end end end + +local DD_OnClick = function(self) + SetBagSlotFlag(self.BagID, self.FilterID, not GetBagSlotFlag(self.BagID, self.FilterID)) + self:GetParent():Hide() +end + +local DDClear_OnClick = function(self) + for i = LE_BAG_FILTER_FLAG_EQUIPMENT, NUM_LE_BAG_FILTER_FLAGS do + SetBagSlotFlag(self.BagID, i, false) + end + self:GetParent():Hide() +end + +local DD_OnEnter = function(self) + self.hoverTex:Show() +end + +local DD_OnLeave = function(self) + self.hoverTex:Hide() +end + +local function SetFilterMenu(self) + for i = LE_BAG_FILTER_FLAG_EQUIPMENT, NUM_LE_BAG_FILTER_FLAGS do + if(GetBagSlotFlag(self.id, i)) then + BagFilters.buttons[i].activeTex:Show() + else + BagFilters.buttons[i].activeTex:Hide() + end + BagFilters.buttons[i].BagID = self.id + end + + BagFilters.buttons[NUM_LE_BAG_FILTER_FLAGS + 1].BagID = self.id + + local maxHeight = ((NUM_LE_BAG_FILTER_FLAGS) * 16) + 30 + local maxWidth = 135 + + BagFilters:SetSize(maxWidth, maxHeight) + BagFilters:ClearAllPoints() + BagFilters:SetPoint("TOPLEFT", self, "BOTTOMLEFT", 0, -8) + ToggleFrame(BagFilters) +end --[[ ########################################################## CORE FUNCTIONS @@ -212,7 +255,7 @@ end local SlotUpdate = function(self, slotID) if(not self[slotID]) then return end - + --print(self[slotID]:GetName()) local bag = self:GetID(); local slot = self[slotID]; local bagType = self.bagFamily; @@ -260,17 +303,26 @@ end local RefreshSlots = function(self) local bagID = self:GetID() - if(not bagID or (not self.SlotUpdate)) then return end + if(not bagID) then return end local maxcount = GetContainerNumSlots(bagID) for slotID = 1, maxcount do self:SlotUpdate(slotID) end end +local RefreshReagentSlots = function(self) + local bagID = self:GetID() + if(not bagID or (not self.SlotUpdate)) then return end + local maxcount = self.numSlots + for slotID = 1, maxcount do + self:SlotUpdate(slotID) + end +end + local BagMenu_OnEnter = function(self) local parent = self.parent if(not parent) then return end - for bagID, bag in ipairs(parent.Bags) do + for bagID, bag in pairs(parent.Bags) do local numSlots = GetContainerNumSlots(bagID) for slotID = 1, numSlots do if bag[slotID] then @@ -281,33 +333,51 @@ local BagMenu_OnEnter = function(self) end end end - end + end + + local numSlots = GetContainerNumSlots(parent.BaseID) + for slotID = 1, numSlots do + if parent.Bags[parent.BaseID][slotID] then + parent.Bags[parent.BaseID][slotID]:SetAlpha(0.1) + end + end + + if(select(4, GetBuildInfo()) >= 60000) then GameTooltip:AppendText(" |cff00FF11[SHIFT-CLICK] To Set Filters|r") end end local BagMenu_OnLeave = function(self) local parent = self.parent if(not parent) then return end - for bagID, bag in ipairs(parent.Bags) do + for bagID, bag in pairs(parent.Bags) do local numSlots = GetContainerNumSlots(bagID) for slotID = 1, numSlots do if bag[slotID] then bag[slotID]:SetAlpha(1) end end - end + end + + local numSlots = GetContainerNumSlots(parent.BaseID) + for slotID = 1, numSlots do + if parent.Bags[parent.BaseID][slotID] then + parent.Bags[parent.BaseID][slotID]:SetAlpha(1) + end + end end local BAG_FILTER_LABELS = _G.BAG_FILTER_LABELS; local BagMenu_OnClick = function(self) if IsShiftKeyDown() then - print("Unavailable until WoD") - --SetBagSlotFlag(self.id, LE_BAG_FILTER_FLAG_EQUIPMENT, true) + SetFilterMenu(self); + elseif(BagFilters:IsShown()) then + ToggleFrame(BagFilters) end end local ContainerFrame_UpdateCooldowns = function(self) - for bagID, bag in ipairs(self.Bags) do + if self.isReagent then return end + for bagID, bag in pairs(self.Bags) do for slotID = 1, GetContainerNumSlots(bagID)do local start, duration, enable = GetContainerItemCooldown(bagID, slotID) if(bag[slotID]) then @@ -323,7 +393,7 @@ local ContainerFrame_UpdateCooldowns = function(self) end local ContainerFrame_UpdateBags = function(self) - for bagID, bag in ipairs(self.Bags) do + for bagID, bag in pairs(self.Bags) do bag:RefreshSlots() end end @@ -332,18 +402,19 @@ local ContainerFrame_UpdateLayout = function(self) if SV.db.SVBag.enable ~= true then return; end local isBank = self.isBank - local isReagent = self.isReagent local containerName = self:GetName() - local buttonSpacing, numContainerRows = 8, 0; + local buttonSpacing = 8; local containerWidth, numContainerColumns, buttonSize + local precount = 0; + for i, bagID in ipairs(self.BagIDs) do + local numSlots = GetContainerNumSlots(bagID); + precount = precount + (numSlots or 0); + end + if(SV.db.SVBag.alignToChat) then containerWidth = (isBank and SV.db.SVDock.dockLeftWidth or SV.db.SVDock.dockRightWidth) - local precount, avg = 0, 0.08; - for i, bagID in ipairs(self.BagIDs) do - local numSlots = GetContainerNumSlots(bagID); - precount = precount + (numSlots or 0); - end + local avg = 0.08; if(precount > 287) then avg = 0.12 elseif(precount > 167) then @@ -354,7 +425,6 @@ local ContainerFrame_UpdateLayout = function(self) avg = 0.09 end - --local rowCalc = ceil(precount * avg); numContainerColumns = avg * 100; local unitSize = floor(containerWidth / numContainerColumns) @@ -365,88 +435,95 @@ local ContainerFrame_UpdateLayout = function(self) numContainerColumns = floor(containerWidth / (buttonSize + buttonSpacing)); end + local numContainerRows = ceil(precount / numContainerColumns) + local containerHeight = (((buttonSize + buttonSpacing) * numContainerRows) - buttonSpacing) + self.topOffset + self.bottomOffset local holderWidth = ((buttonSize + buttonSpacing) * numContainerColumns) - buttonSpacing; local bottomPadding = (containerWidth - holderWidth) * 0.5; local lastButton, lastRowButton, globalName; local numContainerSlots, fullContainerSlots = GetNumBankSlots(); local totalSlots = 0; + self.ButtonSize = buttonSize; self.holderFrame:Width(holderWidth); local menu = self.BagMenu - if(not isReagent) then - for i, bagID in ipairs(self.BagIDs) do - if((not isBank and bagID <= 3) or (isBank and bagID ~= -1 and numContainerSlots >= 1 and not ((i - 1) > numContainerSlots))) then - menu:Size(((buttonSize + buttonSpacing) * (isBank and i - 1 or i)) + buttonSpacing, buttonSize + (buttonSpacing * 2)) - - local bagSlot; - - if(not menu[i]) then - if isBank then - globalName = ("SVUI_BankBag%d"):format((bagID - 4)); - bagSlot = CreateFrame("CheckButton", globalName, menu, "BankItemButtonBagTemplate") - else - globalName = ("SVUI_MainBag%dSlot"):format(bagID); - bagSlot = CreateFrame("CheckButton", globalName, menu, "BagSlotButtonTemplate") - end - - bagSlot.parent = self; - - bagSlot:SetNormalTexture("") - bagSlot:SetCheckedTexture("") - bagSlot:SetPushedTexture("") - bagSlot:SetScript("OnClick", nil) - - local texName = ("%sIconTexture"):format(globalName) - bagSlot.iconTexture = _G[texName]; - bagSlot.iconTexture:FillInner() - bagSlot.iconTexture:SetTexCoord(0.1, 0.9, 0.1, 0.9) - - bagSlot:HookScript("OnEnter", BagMenu_OnEnter) - bagSlot:HookScript("OnLeave", BagMenu_OnLeave) + for i, bagID in ipairs(self.BagIDs) do + if((not isBank and bagID <= 3) or (isBank and bagID ~= -1 and numContainerSlots >= 1 and not ((i - 1) > numContainerSlots))) then + menu:Size(((buttonSize + buttonSpacing) * (isBank and i - 1 or i)) + buttonSpacing, buttonSize + (buttonSpacing * 2)) + + local bagSlot; - if(not bagSlot.tooltipText) then - bagSlot.tooltipText = "" - end + if(not menu[i]) then + if isBank then + globalName = ("SVUI_BankBag%d"):format(bagID); + bagSlot = CreateFrame("CheckButton", globalName, menu, "BankItemButtonBagTemplate") + else + globalName = ("SVUI_MainBag%dSlot"):format(bagID); + bagSlot = CreateFrame("CheckButton", globalName, menu, "BagSlotButtonTemplate") + end - if(isBank) then - bagSlot:SetID(bagID) - bagSlot.id = bagID; - else - bagSlot:HookScript("OnClick", BagMenu_OnClick) - bagSlot.id = (bagID + 1); - end + bagSlot.parent = self; + + bagSlot:SetNormalTexture("") + bagSlot:SetCheckedTexture("") + bagSlot:SetPushedTexture("") + bagSlot:SetScript("OnClick", nil) + bagSlot:RemoveTextures() + bagSlot:SetSlotTemplate(true, 2, 0, 0, true); + + local texName = ("%sIconTexture"):format(globalName) + bagSlot.iconTexture = _G[texName]; + bagSlot.iconTexture:FillInner() + bagSlot.iconTexture:SetTexCoord(0.1, 0.9, 0.1, 0.9) + + hooksecurefunc(bagSlot, "UpdateTooltip", BagMenu_OnEnter) + --bagSlot:HookScript("OnEnter", BagMenu_OnEnter) + bagSlot:HookScript("OnLeave", BagMenu_OnLeave) + + if(not bagSlot.tooltipText) then + bagSlot.tooltipText = "" + end - menu[i] = bagSlot; + if(isBank) then + bagSlot:SetID(bagID) + bagSlot.id = bagID; else - bagSlot = menu[i] + if(select(4, GetBuildInfo()) >= 60000) then bagSlot:HookScript("OnClick", BagMenu_OnClick) end + bagSlot.id = (bagID + 1); end - bagSlot:Size(buttonSize) - bagSlot:ClearAllPoints() + menu[i] = bagSlot; + else + bagSlot = menu[i] + end - if(isBank) then - if(i == 2) then - bagSlot:SetPoint("BOTTOMLEFT", menu, "BOTTOMLEFT", buttonSpacing, buttonSpacing) - else - bagSlot:SetPoint("LEFT", menu[i - 1], "RIGHT", buttonSpacing, 0) - end + bagSlot:Size(buttonSize) + bagSlot:ClearAllPoints() - if(bagSlot.GetInventorySlot) then - BankFrameItemButton_Update(bagSlot) - BankFrameItemButton_UpdateLocked(bagSlot) - end - else - if(i == 1) then - bagSlot:SetPoint("BOTTOMLEFT", menu, "BOTTOMLEFT", buttonSpacing, buttonSpacing) - else - bagSlot:SetPoint("LEFT", menu[i - 1], "RIGHT", buttonSpacing, 0) - end + if(isBank) then + if(i == 2) then + bagSlot:SetPoint("BOTTOMLEFT", menu, "BOTTOMLEFT", buttonSpacing, buttonSpacing) + else + bagSlot:SetPoint("LEFT", menu[i - 1], "RIGHT", buttonSpacing, 0) + end + + if(bagSlot.GetInventorySlot) then + BankFrameItemButton_Update(bagSlot) + BankFrameItemButton_UpdateLocked(bagSlot) + end + else + if(i == 1) then + bagSlot:SetPoint("BOTTOMLEFT", menu, "BOTTOMLEFT", buttonSpacing, buttonSpacing) + else + bagSlot:SetPoint("LEFT", menu[i - 1], "RIGHT", buttonSpacing, 0) end end + end + + local numSlots = GetContainerNumSlots(bagID); - local numSlots = GetContainerNumSlots(bagID); + if numSlots > 0 then local bagName = ("%sBag%d"):format(containerName, bagID) local template = (bagID == -1) and "BankItemButtonGenericTemplate" or "ContainerFrameItemButtonTemplate" local bag; @@ -462,108 +539,135 @@ local ContainerFrame_UpdateLayout = function(self) bag = self.Bags[bagID] end - if numSlots > 0 then - local btype = select(2, GetContainerNumFreeSlots(bagID)); - if RefProfessionColors[btype] then - local r, g, b = unpack(RefProfessionColors[btype]); - bag.bagFamily = {r, g, b}; - bag:SetBackdropColor(r, g, b, 0.25) - bag:SetBackdropBorderColor(r, g, b, 1) - else - bag.bagFamily = false; - end + local btype = select(2, GetContainerNumFreeSlots(bagID)); + if RefProfessionColors[btype] then + local r, g, b = unpack(RefProfessionColors[btype]); + bag.bagFamily = {r, g, b}; + bag:SetBackdropColor(r, g, b, 0.25) + bag:SetBackdropBorderColor(r, g, b, 1) + else + bag.bagFamily = false; + end - for i = 1, MAX_CONTAINER_ITEMS do - if bag[i] then - bag[i]:Hide(); - end - end + for i = 1, MAX_CONTAINER_ITEMS do + if bag[i] then + bag[i]:Hide(); + end + end - for slotID = 1, numSlots do - local slot; - totalSlots = totalSlots + 1; - - if not bag[slotID] then - local slotName = ("%sSlot%d"):format(bagName, slotID) - local newTexName = ("%sNewItemTexture"):format(slotName) - local iconName = ("%sIconTexture"):format(slotName) - local cdName = ("%sCooldown"):format(slotName) - - slot = CreateFrame("CheckButton", slotName, bag, template); - slot:SetNormalTexture(nil); - slot:SetCheckedTexture(nil); - slot:SetSlotTemplate(true, 2, 0, 0, true); - - if(_G[newTexName]) then - _G[newTexName]:Hide() - end + for slotID = 1, numSlots do + local slot; + totalSlots = totalSlots + 1; + + if not bag[slotID] then + local slotName = ("%sSlot%d"):format(bagName, slotID) + local newTexName = ("%sNewItemTexture"):format(slotName) + local iconName = ("%sIconTexture"):format(slotName) + local cdName = ("%sCooldown"):format(slotName) + + slot = CreateFrame("CheckButton", slotName, bag, template); + slot:SetNormalTexture(""); + slot:SetCheckedTexture(""); + slot:RemoveTextures() + slot:SetSlotTemplate(true, 2, 0, 0, true); + + if(_G[newTexName]) then + _G[newTexName]:Hide() + end - slot.iconTexture = _G[iconName]; - slot.iconTexture:FillInner(slot); - slot.iconTexture:SetTexCoord(0.1, 0.9, 0.1, 0.9); - slot.cooldown = _G[cdName]; + slot.iconTexture = _G[iconName]; + slot.iconTexture:FillInner(slot); + slot.iconTexture:SetTexCoord(0.1, 0.9, 0.1, 0.9); + slot.cooldown = _G[cdName]; - SV.Timers:AddCooldown(slot.cooldown) + SV.Timers:AddCooldown(slot.cooldown) - bag[slotID] = slot - else - slot = bag[slotID] - end + bag[slotID] = slot + else + slot = bag[slotID] + end - slot:SetID(slotID); - slot:Size(buttonSize); - bag:SlotUpdate(slotID); + slot:SetID(slotID); + slot:Size(buttonSize); + bag:SlotUpdate(slotID); - if slot:GetPoint() then - slot:ClearAllPoints(); - end + if slot:GetPoint() then + slot:ClearAllPoints(); + end - if lastButton then - if((totalSlots - 1) % numContainerColumns == 0) then - slot:Point("TOP", lastRowButton, "BOTTOM", 0, -buttonSpacing); - numContainerRows = numContainerRows + 1; - lastRowButton = slot; - else - slot:Point("LEFT", lastButton, "RIGHT", buttonSpacing, 0); - end - else - slot:Point("TOPLEFT", self.holderFrame, "TOPLEFT"); - numContainerRows = numContainerRows + 1; + if lastButton then + if((totalSlots - 1) % numContainerColumns == 0) then + slot:Point("TOP", lastRowButton, "BOTTOM", 0, -buttonSpacing); lastRowButton = slot; - end - - lastButton = slot; - end - else - if(menu[i] and menu[i].GetInventorySlot) then - BankFrameItemButton_Update(menu[i]) - BankFrameItemButton_UpdateLocked(menu[i]) - end - for i = 1, MAX_CONTAINER_ITEMS do - if(bag[i]) then - bag[i]:Hide(); + else + slot:Point("LEFT", lastButton, "RIGHT", buttonSpacing, 0); end - end + else + slot:Point("TOPLEFT", self.holderFrame, "TOPLEFT"); + lastRowButton = slot; + end + + lastButton = slot; + end + else + if(menu[i] and menu[i].GetInventorySlot) then + BankFrameItemButton_Update(menu[i]) + BankFrameItemButton_UpdateLocked(menu[i]) end + for i = 1, MAX_CONTAINER_ITEMS do + if(bag[i]) then + bag[i]:Hide(); + end + end end - else + end + + self:Size(containerWidth, containerHeight); +end + +local ReagentFrame_UpdateLayout = function(self) + if SV.db.SVBag.enable ~= true or not _G.ReagentBankFrame then return; end + + local ReagentBankFrame = _G.ReagentBankFrame; + + local containerName = self:GetName() + local buttonSpacing = 8; + local preColumns = ReagentBankFrame.numColumn or 7 + local preSubColumns = ReagentBankFrame.numSubColumn or 2 + local numContainerColumns = preColumns * preSubColumns + local numContainerRows = ReagentBankFrame.numRow or 7 + local buttonSize = SVUI_BankContainerFrame.ButtonSize + local containerWidth = (buttonSize + buttonSpacing) * numContainerColumns + buttonSpacing + local containerHeight = (((buttonSize + buttonSpacing) * numContainerRows) - buttonSpacing) + self.topOffset + self.bottomOffset + local maxCount = numContainerColumns * numContainerRows + local holderWidth = ((buttonSize + buttonSpacing) * numContainerColumns) - buttonSpacing; + local lastButton, lastRowButton; + local bagID = REAGENTBANK_CONTAINER; + local totalSlots = 0; + + self.holderFrame:Width(holderWidth); + + if(not IsReagentBankUnlocked()) then + local cost = GetReagentBankCost() + print(cost) + else local bag; - local bagName = ("%sBag%d"):format(containerName, 1) + local bagName = ("%sBag%d"):format(containerName, bagID) - if not self.Bags[1] then + if not self.Bags[bagID] then bag = CreateFrame("Frame", bagName, self); - bag:SetID(1); - bag.numSlots = numSlots; + bag:SetID(bagID); + bag.numSlots = maxCount; bag.SlotUpdate = SlotUpdate; - bag.RefreshSlots = RefreshSlots; - self.Bags[1] = bag + bag.RefreshSlots = RefreshReagentSlots; + self.Bags[bagID] = bag else - bag = self.Bags[1] + bag = self.Bags[bagID] end bag.bagFamily = false; - for slotID = 1, 98 do + for slotID = 1, maxCount do local slot; totalSlots = totalSlots + 1; @@ -573,9 +677,10 @@ local ContainerFrame_UpdateLayout = function(self) local iconName = ("%sIconTexture"):format(slotName) local cdName = ("%sCooldown"):format(slotName) - slot = CreateFrame("CheckButton", slotName, bag, template); + slot = CreateFrame("CheckButton", slotName, bag, "ReagentBankItemButtonGenericTemplate"); slot:SetNormalTexture(nil); slot:SetCheckedTexture(nil); + slot:RemoveTextures() slot:SetSlotTemplate(true, 2, 0, 0, true); if(_G[newTexName]) then @@ -605,23 +710,23 @@ local ContainerFrame_UpdateLayout = function(self) if lastButton then if((totalSlots - 1) % numContainerColumns == 0) then slot:Point("TOP", lastRowButton, "BOTTOM", 0, -buttonSpacing); - numContainerRows = numContainerRows + 1; lastRowButton = slot; else slot:Point("LEFT", lastButton, "RIGHT", buttonSpacing, 0); end else slot:Point("TOPLEFT", self.holderFrame, "TOPLEFT"); - numContainerRows = numContainerRows + 1; lastRowButton = slot; end - lastButton = slot; - end + lastButton = slot; + BankFrameItemButton_Update(slot); + BankFrameItemButton_UpdateLocked(slot) + end end - self:Size(containerWidth, (((buttonSize + buttonSpacing) * numContainerRows) - buttonSpacing) + self.topOffset + self.bottomOffset); + self:Size(containerWidth, containerHeight); end function MOD:RefreshBagFrames(frame) @@ -928,12 +1033,13 @@ do end local Container_OnEvent = function(self, event, ...) - if(event == "ITEM_LOCK_CHANGED") then + if(event == "BAG_UPDATE" or event == "ITEM_LOCK_CHANGED") then local bagID, slotID = ... - if(bagID and slotID and self.Bags[bagID] and self.Bags[bagID][slotID]) then + if(bagID and slotID and self.Bags[bagID]) then self.Bags[bagID]:SlotUpdate(slotID) end - elseif(event == "BAG_UPDATE" or event == "EQUIPMENT_SETS_CHANGED") then + self:RefreshBags() + elseif(event == "EQUIPMENT_SETS_CHANGED") then BuildEquipmentMap() for id, bag in ipairs(self.Bags) do local numSlots = GetContainerNumSlots(id) @@ -1077,7 +1183,6 @@ do function MOD:MakeBags() local bagName = "SVUI_ContainerFrame" - local uisCount = #UISpecialFrames + 1; local bagsCount = #self.BagFrames + 1; local frame = CreateFrame("Button", "SVUI_ContainerFrame", SV.UIParent) @@ -1092,7 +1197,7 @@ do frame:RegisterEvent("BAG_UPDATE") frame:RegisterEvent("EQUIPMENT_SETS_CHANGED") frame:RegisterEvent("PLAYERBANKSLOTS_CHANGED") - frame:RegisterEvent("PLAYERREAGENTBANKSLOTS_CHANGED") + --frame:RegisterEvent("PLAYERREAGENTBANKSLOTS_CHANGED") frame:SetMovable(true) frame:RegisterForDrag("LeftButton", "RightButton") @@ -1111,12 +1216,21 @@ do frame.bottomOffset = 32; frame.topOffset = 65; frame.BagIDs = {0, 1, 2, 3, 4} + frame.BaseID = 0 frame.Bags = {} frame.closeButton = CreateFrame("Button", "SVUI_ContainerFrameCloseButton", frame, "UIPanelCloseButton") frame.closeButton:Point("TOPRIGHT", -4, -4) + frame.holderFrame = CreateFrame("Frame", nil, frame) frame.holderFrame:Point("TOP", frame, "TOP", 0, -frame.topOffset) frame.holderFrame:Point("BOTTOM", frame, "BOTTOM", 0, frame.bottomOffset) + + frame.Title = frame:CreateFontString() + frame.Title:SetFontObject(NumberFont_Outline_Large) + frame.Title:SetText(INVENTORY_TOOLTIP) + frame.Title:SetPoint("TOPLEFT", frame, "TOPLEFT", 2, -2) + frame.Title:SetTextColor(1,0.8,0) + frame.BagMenu = CreateFrame("Button", "SVUI_ContainerFrameBagMenu", frame) frame.BagMenu:Point("BOTTOMLEFT", frame, "TOPLEFT", 0, 1) frame.BagMenu:SetFixedPanelTemplate("Transparent") @@ -1201,6 +1315,10 @@ do frame.bagsButton:SetScript("OnEnter", Tooltip_Show) frame.bagsButton:SetScript("OnLeave", Tooltip_Hide) local BagBtn_OnClick = function() + PlaySound("igMainMenuOption"); + if(BagFilters:IsShown()) then + ToggleFrame(BagFilters) + end ToggleFrame(frame.BagMenu) end frame.bagsButton:SetScript("OnClick", BagBtn_OnClick) @@ -1239,7 +1357,6 @@ do frame:SetScript("OnHide", CloseAllBags) SV:AddToDisplayAudit(frame) - --UISpecialFrames[uisCount] = "SVUI_ContainerFrame"; self.BagFrames[bagsCount] = frame self.BagFrame = frame @@ -1249,14 +1366,13 @@ do -- Reagent Slots: 1 - 98 -- /script print(ReagentBankFrameItem1:GetInventorySlot()) local bagName = isReagent and "SVUI_ReagentContainerFrame" or "SVUI_BankContainerFrame" - local uisCount = #UISpecialFrames + 1; local bagsCount = #self.BagFrames + 1; local frame = CreateFrame("Button", bagName, isReagent and self.BankFrame or SV.UIParent) frame:SetPanelTemplate(isReagent and "Action" or "Container") frame:SetFrameStrata("HIGH") - frame.UpdateLayout = ContainerFrame_UpdateLayout; + frame.UpdateLayout = isReagent and ReagentFrame_UpdateLayout or ContainerFrame_UpdateLayout; frame.RefreshBags = ContainerFrame_UpdateBags; frame.RefreshCooldowns = ContainerFrame_UpdateCooldowns; @@ -1265,7 +1381,7 @@ do frame:RegisterEvent("BAG_UPDATE") frame:RegisterEvent("EQUIPMENT_SETS_CHANGED") frame:RegisterEvent("PLAYERBANKSLOTS_CHANGED") - frame:RegisterEvent("PLAYERREAGENTBANKSLOTS_CHANGED") + --frame:RegisterEvent("PLAYERREAGENTBANKSLOTS_CHANGED") frame:SetMovable(true) frame:RegisterForDrag("LeftButton", "RightButton") @@ -1287,6 +1403,7 @@ do frame.BagIDs = {} else frame.BagIDs = {-1, 5, 6, 7, 8, 9, 10, 11} + frame.BaseID = -1 end frame.Bags = {} @@ -1298,10 +1415,11 @@ do frame.holderFrame:Point("TOP", frame, "TOP", 0, -frame.topOffset) frame.holderFrame:Point("BOTTOM", frame, "BOTTOM", 0, frame.bottomOffset) - frame.BagMenu = CreateFrame("Button", bagName.."BagMenu", frame) - frame.BagMenu:Point("BOTTOMLEFT", frame, "TOPLEFT", 0, 1) - frame.BagMenu:SetFixedPanelTemplate("Transparent") - frame.BagMenu:Hide() + frame.Title = frame:CreateFontString() + frame.Title:SetFontObject(NumberFont_Outline_Large) + frame.Title:SetText(isReagent and REAGENT_BANK or BANK or "Bank") + frame.Title:SetPoint("TOPLEFT", frame, "TOPLEFT", 2, -2) + frame.Title:SetTextColor(1,0.8,0) frame.sortButton = CreateFrame("Button", nil, frame) frame.sortButton:Point("TOPRIGHT", frame, "TOP", 0, -10) @@ -1325,23 +1443,26 @@ do local Stack_OnClick = MOD:RunSortingProcess(MOD.Stack, "bank") frame.stackButton:SetScript("OnClick", Stack_OnClick) - frame.transferButton = CreateFrame("Button", nil, frame) - frame.transferButton:Point("LEFT", frame.stackButton, "RIGHT", 10, 0) - frame.transferButton:Size(25, 25) - frame.transferButton:SetNormalTexture(ICON_TRANSFER) - StyleBagToolButton(frame.transferButton) - frame.transferButton.ttText = L["Stack Bank to Bags"] - frame.transferButton:SetScript("OnEnter", Tooltip_Show) - frame.transferButton:SetScript("OnLeave", Tooltip_Hide) - local Transfer_OnClick = MOD:RunSortingProcess(MOD.Transfer, "bank bags") - frame.transferButton:SetScript("OnClick", Transfer_OnClick) - + if(not isReagent) then + frame.BagMenu = CreateFrame("Button", bagName.."BagMenu", frame) + frame.BagMenu:Point("BOTTOMLEFT", frame, "TOPLEFT", 0, 1) + frame.BagMenu:SetFixedPanelTemplate("Transparent") + frame.BagMenu:Hide() + + frame.transferButton = CreateFrame("Button", nil, frame) + frame.transferButton:Point("LEFT", frame.stackButton, "RIGHT", 10, 0) + frame.transferButton:Size(25, 25) + frame.transferButton:SetNormalTexture(ICON_TRANSFER) + StyleBagToolButton(frame.transferButton) + frame.transferButton.ttText = L["Stack Bank to Bags"] + frame.transferButton:SetScript("OnEnter", Tooltip_Show) + frame.transferButton:SetScript("OnLeave", Tooltip_Hide) + local Transfer_OnClick = MOD:RunSortingProcess(MOD.Transfer, "bank bags") + frame.transferButton:SetScript("OnClick", Transfer_OnClick) - SV:AddToDisplayAudit(frame) - --UISpecialFrames[uisCount] = bagName; - self.BagFrames[bagsCount] = frame + SV:AddToDisplayAudit(frame) + self.BagFrames[bagsCount] = frame - if(not isReagent) then frame.bagsButton = CreateFrame("Button", nil, frame) frame.bagsButton:Point("RIGHT", frame.sortButton, "LEFT", -10, 0) frame.bagsButton:Size(25, 25) @@ -1351,6 +1472,10 @@ do frame.bagsButton:SetScript("OnEnter", Tooltip_Show) frame.bagsButton:SetScript("OnLeave", Tooltip_Hide) local BagBtn_OnClick = function() + PlaySound("igMainMenuOption"); + if(BagFilters:IsShown()) then + ToggleFrame(BagFilters) + end local numSlots, _ = GetNumBankSlots() if numSlots >= 1 then ToggleFrame(frame.BagMenu) @@ -1370,6 +1495,7 @@ do frame.purchaseBagButton:SetScript("OnEnter", Tooltip_Show) frame.purchaseBagButton:SetScript("OnLeave", Tooltip_Hide) local PurchaseBtn_OnClick = function() + PlaySound("igMainMenuOption"); local _, full = GetNumBankSlots() if not full then SV:StaticPopup_Show("BUY_BANK_SLOT") @@ -1389,6 +1515,7 @@ do frame.swapButton:SetScript("OnEnter", Tooltip_Show) frame.swapButton:SetScript("OnLeave", Tooltip_Hide) frame.swapButton:SetScript("OnClick", function() + PlaySound("igMainMenuOption"); if(_G["SVUI_ReagentContainerFrame"]:IsShown()) then _G["SVUI_ReagentContainerFrame"]:Hide() else @@ -1399,6 +1526,17 @@ do frame:SetScript("OnHide", CloseBankFrame) self.BankFrame = frame else + --DepositReagentBank() + frame.transferButton = CreateFrame("Button", nil, frame) + frame.transferButton:Point("LEFT", frame.stackButton, "RIGHT", 10, 0) + frame.transferButton:Size(25, 25) + frame.transferButton:SetNormalTexture(ICON_TRANSFER) + StyleBagToolButton(frame.transferButton) + frame.transferButton.ttText = L["Deposit All Reagents"] + frame.transferButton:SetScript("OnEnter", Tooltip_Show) + frame.transferButton:SetScript("OnLeave", Tooltip_Hide) + frame.transferButton:SetScript("OnClick", DepositReagentBank) + frame:SetPoint("TOPLEFT", self.BankFrame, "TOPRIGHT", 2, 0) self.ReagentFrame = frame end @@ -1561,6 +1699,87 @@ function MOD:Load() self:ModifyBags() self.BagFrame:UpdateLayout() + BagFilters:SetParent(SV.UIParent) + BagFilters:SetPanelTemplate("Default") + BagFilters.buttons = {} + BagFilters:SetFrameStrata("DIALOG") + BagFilters:SetClampedToScreen(true) + + if(select(4, GetBuildInfo()) >= 60000) then + + for i = LE_BAG_FILTER_FLAG_EQUIPMENT, NUM_LE_BAG_FILTER_FLAGS do + BagFilters.buttons[i] = CreateFrame("Button", nil, BagFilters) + + BagFilters.buttons[i].hoverTex = BagFilters.buttons[i]:CreateTexture(nil, 'OVERLAY') + BagFilters.buttons[i].hoverTex:SetAllPoints() + BagFilters.buttons[i].hoverTex:SetTexture([[Interface\QuestFrame\UI-QuestTitleHighlight]]) + BagFilters.buttons[i].hoverTex:SetBlendMode("ADD") + BagFilters.buttons[i].hoverTex:Hide() + + BagFilters.buttons[i].activeTex = BagFilters.buttons[i]:CreateTexture(nil, 'OVERLAY') + BagFilters.buttons[i].activeTex:SetAllPoints() + BagFilters.buttons[i].activeTex:SetTexture([[Interface\QuestFrame\UI-QuestTitleHighlight]]) + BagFilters.buttons[i].activeTex:SetVertexColor(0,0.7,0) + BagFilters.buttons[i].activeTex:SetBlendMode("ADD") + BagFilters.buttons[i].activeTex:Hide() + + BagFilters.buttons[i].text = BagFilters.buttons[i]:CreateFontString(nil, 'BORDER') + BagFilters.buttons[i].text:SetAllPoints() + BagFilters.buttons[i].text:SetFont(SV.Media.font.roboto,12,"OUTLINE") + BagFilters.buttons[i].text:SetJustifyH("LEFT") + BagFilters.buttons[i].text:SetText(BAG_FILTER_LABELS[i]) + + BagFilters.buttons[i]:SetScript("OnEnter", DD_OnEnter) + BagFilters.buttons[i]:SetScript("OnLeave", DD_OnLeave) + + BagFilters.buttons[i]:SetHeight(16) + BagFilters.buttons[i]:SetWidth(115) + + BagFilters.buttons[i].FilterID = i + BagFilters.buttons[i]:SetScript("OnClick", DD_OnClick) + + if i == LE_BAG_FILTER_FLAG_EQUIPMENT then + BagFilters.buttons[i]:SetPoint("TOPLEFT", BagFilters, "TOPLEFT", 10, -10) + else + BagFilters.buttons[i]:SetPoint("TOPLEFT", BagFilters.buttons[i - 1], "BOTTOMLEFT", 0, 0) + end + + BagFilters.buttons[i]:Show() + end + + local clearID = NUM_LE_BAG_FILTER_FLAGS + 1 + + BagFilters.buttons[clearID] = CreateFrame("Button", nil, BagFilters) + + BagFilters.buttons[clearID].hoverTex = BagFilters.buttons[clearID]:CreateTexture(nil, 'OVERLAY') + BagFilters.buttons[clearID].hoverTex:SetAllPoints() + BagFilters.buttons[clearID].hoverTex:SetTexture([[Interface\QuestFrame\UI-QuestTitleHighlight]]) + BagFilters.buttons[clearID].hoverTex:SetBlendMode("ADD") + BagFilters.buttons[clearID].hoverTex:Hide() + + BagFilters.buttons[clearID].text = BagFilters.buttons[clearID]:CreateFontString(nil, 'BORDER') + BagFilters.buttons[clearID].text:SetAllPoints() + BagFilters.buttons[clearID].text:SetFont(SV.Media.font.roboto,12,"OUTLINE") + BagFilters.buttons[clearID].text:SetJustifyH("LEFT") + BagFilters.buttons[clearID].text:SetText(CLEAR_ALL .. " " .. FILTERS) + + BagFilters.buttons[clearID]:SetScript("OnEnter", DD_OnEnter) + BagFilters.buttons[clearID]:SetScript("OnLeave", DD_OnLeave) + + BagFilters.buttons[clearID]:SetHeight(16) + BagFilters.buttons[clearID]:SetWidth(115) + + BagFilters.buttons[clearID].FilterID = 0 + BagFilters.buttons[clearID]:SetScript("OnClick", DDClear_OnClick) + + BagFilters.buttons[clearID]:SetPoint("TOPLEFT", BagFilters.buttons[NUM_LE_BAG_FILTER_FLAGS], "BOTTOMLEFT", 0, -10) + + BagFilters.buttons[clearID]:Show() + end + + BagFilters:Hide() + SV:AddToDisplayAudit(BagFilters) + BankFrame:UnregisterAllEvents() for i = 1, NUM_CONTAINER_FRAMES do local frame = _G["ContainerFrame"..i] @@ -1583,7 +1802,7 @@ function MOD:Load() self:RegisterEvent("PLAYER_ENTERING_WORLD") self:RegisterEvent("PLAYER_TRADE_MONEY", "UpdateGoldText") self:RegisterEvent("TRADE_MONEY_CHANGED", "UpdateGoldText") - if(SV.GameVersion >= 60000) then self:RegisterEvent("PLAYERBANKBAGSLOTS_CHANGED"); end + self:RegisterEvent("PLAYERBANKBAGSLOTS_CHANGED") StackSplitFrame:SetFrameStrata("DIALOG") diff --git a/Interface/AddOns/SVUI/packages/override/SVOverride.lua b/Interface/AddOns/SVUI/packages/override/SVOverride.lua index 58f5e6b..ecd51cf 100644 --- a/Interface/AddOns/SVUI/packages/override/SVOverride.lua +++ b/Interface/AddOns/SVUI/packages/override/SVOverride.lua @@ -1067,7 +1067,6 @@ function MOD:Load() SV.Mentalo:Add(SVUI_LootFrameHolder, L["Loot Frame"], nil, nil, nil, nil, "SVUI_LootFrame"); SV:AddToDisplayAudit(SVUI_LootFrame); SVUI_LootFrame:Hide(); - --tinsert(UISpecialFrames, "SVUI_LootFrame"); UIParent:UnregisterEvent("LOOT_BIND_CONFIRM") UIParent:UnregisterEvent("CONFIRM_DISENCHANT_ROLL") diff --git a/Interface/AddOns/SVUI/packages/unit/SVUnit.lua b/Interface/AddOns/SVUI/packages/unit/SVUnit.lua index 5c97e27..a084307 100644 --- a/Interface/AddOns/SVUI/packages/unit/SVUnit.lua +++ b/Interface/AddOns/SVUI/packages/unit/SVUnit.lua @@ -875,15 +875,19 @@ function MOD:RefreshUnitLayout(frame, template) else castbar.SafeZone = nil; castbar.LatencyTexture:Hide() - end + end + + if castbar.Grip then + castbar.Grip:Width(castHeight + 2) + castbar.Grip:Height(castHeight + 2) + end + if castbar.Icon then if db.castbar.icon then - castbar.Icon.bg:Width(castHeight + 2) - castbar.Icon.bg:Height(castHeight + 2) - castbar.Icon.bg:Show() - else - castbar.Icon.bg:Hide() - castbar.Icon = nil + castbar.Grip.Icon:SetAllPoints(castbar.Grip) + castbar.Grip.Icon:Show() + else + castbar.Grip.Icon:Hide() end end diff --git a/Interface/AddOns/SVUI/packages/unit/elements/castbar.lua b/Interface/AddOns/SVUI/packages/unit/elements/castbar.lua index 7722dd6..f0d1e4d 100644 --- a/Interface/AddOns/SVUI/packages/unit/elements/castbar.lua +++ b/Interface/AddOns/SVUI/packages/unit/elements/castbar.lua @@ -512,25 +512,32 @@ function MOD:CreateCastbar(frame, reversed, moverName, ryu, useFader, isBoss) local cbName = frame:GetName().."Castbar" local castbarHolder = CreateFrame("Frame", cbName, castbar) - local iconHolder = CreateFrame("Frame", nil, castbar) + local grip = CreateFrame("Frame", nil, castbar) + grip:SetFrameStrata("HIGH") + + local iconHolder = CreateFrame("Frame", nil, grip) iconHolder:SetFixedPanelTemplate("Inset", false) - iconHolder:SetFrameStrata("HIGH") + grip.Icon = iconHolder + local buttonIcon = iconHolder:CreateTexture(nil, "BORDER") buttonIcon:FillInner() buttonIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9) - buttonIcon.bg = iconHolder; castbar.Icon = buttonIcon; + local shieldIcon = iconHolder:CreateTexture(nil, "ARTWORK") - shieldIcon:Point("TOPLEFT",buttonIcon,"TOPLEFT",-7,7) - shieldIcon:Point("BOTTOMRIGHT",buttonIcon,"BOTTOMRIGHT",7,-8) + shieldIcon:Point("TOPLEFT", buttonIcon, "TOPLEFT", -7, 7) + shieldIcon:Point("BOTTOMRIGHT", buttonIcon, "BOTTOMRIGHT", 7, -8) shieldIcon:SetTexture("Interface\\Addons\\SVUI\\assets\\artwork\\Unitframe\\Castbar\\SHIELD") castbar.Shield = shieldIcon; - castbar.Time = iconHolder:CreateFontString(nil, "OVERLAY") + castbar.Time = grip:CreateFontString(nil, "OVERLAY") castbar.Time:SetDrawLayer("OVERLAY", 7) - castbar.Text = iconHolder:CreateFontString(nil, "OVERLAY") + + castbar.Text = grip:CreateFontString(nil, "OVERLAY") castbar.Text:SetDrawLayer("OVERLAY", 7) + castbar.Grip = grip + local bgFrame = CreateFrame("Frame", nil, castbar) local hadouken = CreateFrame("Frame", nil, castbar) @@ -591,7 +598,7 @@ function MOD:CreateCastbar(frame, reversed, moverName, ryu, useFader, isBoss) SV.Animate:Sprite(hadouken[2],false,false,true) castbar:Point("BOTTOMLEFT", castbarHolder, "BOTTOMLEFT", 1, 1) - iconHolder:Point("LEFT", castbar, "RIGHT", 4, 0) + grip:Point("LEFT", castbar, "RIGHT", 4, 0) castbar.Time:Point("RIGHT", castbar, "LEFT", -4, 0) castbar.Time:SetJustifyH("CENTER") @@ -627,13 +634,13 @@ function MOD:CreateCastbar(frame, reversed, moverName, ryu, useFader, isBoss) SV.Animate:Sprite(hadouken[2],false,false,true) castbar:Point("BOTTOMRIGHT", castbarHolder, "BOTTOMRIGHT", -1, 1) - iconHolder:Point("RIGHT", castbar, "LEFT", -4, 0) + grip:Point("RIGHT", castbar, "LEFT", -4, 0) castbar.Time:Point("LEFT", castbar, "RIGHT", 4, 0) castbar.Time:SetJustifyH("CENTER") end - -- castbar.Time:Point("CENTER", iconHolder, "CENTER", 0, 0) + -- castbar.Time:Point("CENTER", grip, "CENTER", 0, 0) -- castbar.Time:SetJustifyH("CENTER") castbar.Text:SetPoint("CENTER", castbar, "CENTER", 0, 0) @@ -664,9 +671,9 @@ function MOD:CreateCastbar(frame, reversed, moverName, ryu, useFader, isBoss) if reversed then castbar:SetReverseFill(true) - iconHolder:Point("LEFT", castbar, "RIGHT", 6, 0) + grip:Point("LEFT", castbar, "RIGHT", 6, 0) else - iconHolder:Point("RIGHT", castbar, "LEFT", -6, 0) + grip:Point("RIGHT", castbar, "LEFT", -6, 0) end end diff --git a/Interface/AddOns/SVUI/scripts/mounts.lua b/Interface/AddOns/SVUI/scripts/mounts.lua index 29c56e2..7b9d1c2 100644 --- a/Interface/AddOns/SVUI/scripts/mounts.lua +++ b/Interface/AddOns/SVUI/scripts/mounts.lua @@ -45,7 +45,7 @@ local NewHook = hooksecurefunc; local CountMounts, MountInfo, RandomMount, MountUp, UnMount; local MountListener = CreateFrame("Frame"); -MountListener.favorites = 0 +MountListener.favorites = false --[[ ########################################################## LOCAL FUNCTIONS @@ -56,10 +56,10 @@ if(select(4, GetBuildInfo()) >= 60000) then return C_MountJournal.GetNumMounts() end function MountInfo(index) - return C_MountJournal.GetMountInfo(index) + return true, C_MountJournal.GetMountInfo(index) end function RandomMount() - if(MountListener.favorites > 0) then + if(MountListener.favorites) then return 0 end maxMounts = C_MountJournal.GetNumMounts() @@ -82,7 +82,7 @@ else return random(1, maxMounts) end function MountUp(index) - index = index or random(1, maxMounts) + index = index or RandomMount() return CallCompanion("MOUNT", index) end UnMount = Dismount @@ -108,45 +108,50 @@ local function UpdateMountCheckboxes(button, index) if(SV.cache.Mounts.types["GROUND"] ~= index) then SV.cache.Mounts.types["GROUND"] = index end - bar["GROUND"]:SetChecked(1) + bar["GROUND"]:SetChecked(true) else - bar["GROUND"]:SetChecked(0) + bar["GROUND"]:SetChecked(false) end if(SV.cache.Mounts.names["FLYING"] == creatureName) then if(SV.cache.Mounts.types["FLYING"] ~= index) then SV.cache.Mounts.types["FLYING"] = index end - bar["FLYING"]:SetChecked(1) + bar["FLYING"]:SetChecked(true) else - bar["FLYING"]:SetChecked(0) + bar["FLYING"]:SetChecked(false) end if(SV.cache.Mounts.names["SWIMMING"] == creatureName) then if(SV.cache.Mounts.types["SWIMMING"] ~= index) then SV.cache.Mounts.types["SWIMMING"] = index end - bar["SWIMMING"]:SetChecked(1) + bar["SWIMMING"]:SetChecked(true) else - bar["SWIMMING"]:SetChecked(0) + bar["SWIMMING"]:SetChecked(false) end if(SV.cache.Mounts.names["SPECIAL"] == creatureName) then if(SV.cache.Mounts.types["SPECIAL"] ~= index) then SV.cache.Mounts.types["SPECIAL"] = index end - bar["SPECIAL"]:SetChecked(1) + bar["SPECIAL"]:SetChecked(true) else - bar["SPECIAL"]:SetChecked(0) + bar["SPECIAL"]:SetChecked(false) end end end local function UpdateMountsCache() - if(not MountJournal or not MountJournal.cachedMounts) then return end + if(not MountJournal) then return end local num = CountMounts() + MountListener.favorites = false + for index = 1, num, 1 do - local _, info, id = MountInfo(index) + local _, info, id, _, _, _, _, _, favorite = MountInfo(index) + if(favorite == true) then + MountListener.favorites = true + end if(SV.cache.Mounts.names["GROUND"] == info) then if(SV.cache.Mounts.types["GROUND"] ~= index) then SV.cache.Mounts.types["GROUND"] = index @@ -171,7 +176,7 @@ local function UpdateMountsCache() end local function Update_MountCheckButtons() - if(not MountJournal or not MountJournal.cachedMounts) then return end + if(not MountJournal or (MountJournal and not MountJournal.cachedMounts)) then return end local count = #MountJournal.cachedMounts if(type(count) ~= "number") then return end local scrollFrame = MountJournal.ListScrollFrame; @@ -233,7 +238,7 @@ local CheckButton_OnClick = function(self) local key = self.key if(index) then - if(self:GetChecked() == 1) then + if(self:GetChecked() == true) then SV.cache.Mounts.types[key] = index SV.cache.Mounts.names[key] = name else @@ -318,7 +323,7 @@ local function SetMountCheckButtons() buttonBar["GROUND"]:SetPanelColor(0.2, 0.7, 0.1, 0.15) buttonBar["GROUND"]:GetCheckedTexture():SetVertexColor(0.2, 0.7, 0.1, 1) buttonBar["GROUND"].key = "GROUND" - buttonBar["GROUND"]:SetChecked(0) + buttonBar["GROUND"]:SetChecked(false) buttonBar["GROUND"]:SetScript("OnClick", CheckButton_OnClick) buttonBar["GROUND"]:SetScript("OnEnter", CheckButton_OnEnter) buttonBar["GROUND"]:SetScript("OnLeave", CheckButton_OnLeave) @@ -331,7 +336,7 @@ local function SetMountCheckButtons() buttonBar["FLYING"]:SetPanelColor(1, 1, 0.2, 0.15) buttonBar["FLYING"]:GetCheckedTexture():SetVertexColor(1, 1, 0.2, 1) buttonBar["FLYING"].key = "FLYING" - buttonBar["FLYING"]:SetChecked(0) + buttonBar["FLYING"]:SetChecked(false) buttonBar["FLYING"]:SetScript("OnClick", CheckButton_OnClick) buttonBar["FLYING"]:SetScript("OnEnter", CheckButton_OnEnter) buttonBar["FLYING"]:SetScript("OnLeave", CheckButton_OnLeave) @@ -344,7 +349,7 @@ local function SetMountCheckButtons() buttonBar["SWIMMING"]:SetPanelColor(0.2, 0.42, 0.76, 0.15) buttonBar["SWIMMING"]:GetCheckedTexture():SetVertexColor(0.2, 0.42, 0.76, 1) buttonBar["SWIMMING"].key = "SWIMMING" - buttonBar["SWIMMING"]:SetChecked(0) + buttonBar["SWIMMING"]:SetChecked(false) buttonBar["SWIMMING"]:SetScript("OnClick", CheckButton_OnClick) buttonBar["SWIMMING"]:SetScript("OnEnter", CheckButton_OnEnter) buttonBar["SWIMMING"]:SetScript("OnLeave", CheckButton_OnLeave) @@ -357,7 +362,7 @@ local function SetMountCheckButtons() buttonBar["SPECIAL"]:SetPanelColor(0.7, 0.1, 0.1, 0.15) buttonBar["SPECIAL"]:GetCheckedTexture():SetVertexColor(0.7, 0.1, 0.1, 1) buttonBar["SPECIAL"].key = "SPECIAL" - buttonBar["SPECIAL"]:SetChecked(0) + buttonBar["SPECIAL"]:SetChecked(false) buttonBar["SPECIAL"]:SetScript("OnClick", CheckButton_OnClick) buttonBar["SPECIAL"]:SetScript("OnEnter", CheckButton_OnEnter) buttonBar["SPECIAL"]:SetScript("OnLeave", CheckButton_OnLeave) diff --git a/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.lua b/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.lua index db76226..5a09b33 100644 --- a/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.lua +++ b/Interface/AddOns/SVUI_ConfigOMatic/SVUI_ConfigOMatic.lua @@ -836,35 +836,40 @@ SV.Options.args.common = { } }; -local q, r, dnt = "", "", ""; +local q, r, community, dnt = "", "", "", ""; local s = "\n"; local p = "\n"..format("|cff4f4f4f%s|r", "---------------------------------------------"); -local t = {"Munglunch", "Elv", "Tukz", "Azilroka", "Sortokk", "AlleyKat", "Quokka", "Haleth", "P3lim", "Haste", "Totalpackage", "Kryso", "Thepilli"}; -local u = {"Wowinterface Community", "Doonga - (The man who keeps me busy)", "Judicate", "Cazart506", "Movster", "MuffinMonster", "Joelsoul", "Trendkill09", "Luamar", "Zharooz", "Lyn3x5", "Madh4tt3r", "Xarioth", "Sinnisterr", "Melonmaniac", "Hojowameeat", "Xandeca", "Bkan", "Daigan - (My current 2nd in command)", "AtomicKiller", "Meljen", "Moondoggy", "Stormblade", "Schreibstift", "Anj", "Risien", "Penguinsane", "Cromax", "Nitro_Turtle", "Shinzou", "Autolykus", "Taotao"}; +local t = {"Munglunch", "Elv", "Tukz", "Azilroka", "Sortokk", "Kkthnx", "AlleyKat", "Quokka", "Haleth", "P3lim", "Haste", "Totalpackage", "Kryso", "Thepilli"}; +local u = {"Sinnisterr - (My wife, the MOST ruthless Warlock you will ever meet)", "Doonga - (The man who keeps me busy)", "Daigan - (My current 2nd in command)", "Penguinsane - (Tester extraordinaire)", "FaolanKing - (King of the bug report portal)"}; local v = {"Movster", "Cazart506", "FaolanKing", "Doonga", "Other Silent Partners.. (Let me know if I have forgotten you)"}; +local w = {"Wowinterface Community", "Judicate", "Cazart506", "Movster", "MuffinMonster", "Joelsoul", "Trendkill09", "Luamar", "Zharooz", "Lyn3x5", "Madh4tt3r", "Xarioth", "Melonmaniac", "Hojowameeat", "Xandeca", "Bkan", "AtomicKiller", "Meljen", "Moondoggy", "Stormblade", "Schreibstift", "Anj", "Risien", "Cromax", "Nitro_Turtle", "Shinzou", "Autolykus", "Taotao"}; local credit_header = format("|cffff9900%s|r", "SUPERVILLAIN CREDITS:")..p; local credit_sub = format("|cffff9900%s|r", "CREATED BY:").." Munglunch"..p; -local credit_sub2 = format("|cffff9900%s|r", "USING ORIGINAL CODE BY:").." Elv, Tukz, Azilroka, Sortokk"..p; -local special_thanks = format("|cffff9900%s|r", "A VERY SPECIAL THANKS TO: ")..format("|cffffff00%s|r", "Movster").." ..who inspired me to bring this project back to life!"..p; -local coding = format("|cff3399ff%s|r", L['CODE MONKEYS (aka ORIGINAL AUTHORS):'])..p; -local testing = format("|cffaa33ff%s|r", L['PERFECTIONISTS (aka TESTERS):'])..p; +local credit_sub2 = format("|cffff9900%s|r", "CODE GRANTS BY:").." Elv, Tukz, Azilroka, Sortokk"..p; +local special_thanks = format("|cffff9900%s|r", "SPECIAL THANKS TO: ")..format("|cfff81422%s|r |cff2288cc(@WowInterface.com)|r", "Cairenn").." ..the most patient and accomodating person I know!\n\n"..format("|cffff9900%s|r", "A VERY SPECIAL THANKS TO: ")..format("|cffffff00%s|r", "Movster").." ..who inspired me to bring this project back to life!"..p; +local coding = format("|cff3399ff%s|r", L['CODE MONKEYS (aka CONTRIBUTORS):'])..p; +local testing = format("|cffaa33ff%s|r", L['PERFECTIONISTS (aka CORE TESTING TEAM):'])..p; +local testing2 = format("|cffaa33ff%s|r", L['MINIONS (aka COMMUNITY TESTERS):'])..p; local doners = format("|cff99ff33%s|r", L['KINGPINS (aka INVESTORS):'])..p; local music = format("|cff00ccff%s|r", 'Theme Song By: Fingathing [taken from the song: SuperHero Music]'); -tsort(t, function(o,n) return o < n end) for _, x in pairs(t) do q = q..s..x +end + +for _, x in pairs(u) do + r = r..s..x end -tsort(u, function(o,n) return o < n end) -for _, y in pairs(u) do - r = r..s..y + +for _, x in pairs(v) do + dnt = dnt..s..x end -tsort(u, function(o,n) return o < n end) -for _, z in pairs(v) do - dnt = dnt..s..z + +for _, x in pairs(w) do + community = community..s..x end -local creditsString = credit_header..'\n'..credit_sub..'\n'..credit_sub2..'\n'..special_thanks..'\n\n'..coding..q..'\n\n'..testing..r..'\n\n'..doners..dnt..'\n\n'..music..'\n\n'; +local creditsString = credit_header..'\n'..credit_sub..'\n'..credit_sub2..'\n'..special_thanks..'\n\n'..coding..q..'\n\n'..testing..r..'\n\n'..testing2..community..'\n\n'..doners..dnt..'\n\n'..music..'\n\n'; SV.Options.args.credits = { type = "group", diff --git a/Interface/AddOns/SVUI_CraftOMatic/components/archaeology.lua b/Interface/AddOns/SVUI_CraftOMatic/components/archaeology.lua index c34500a..02e3b07 100644 --- a/Interface/AddOns/SVUI_CraftOMatic/components/archaeology.lua +++ b/Interface/AddOns/SVUI_CraftOMatic/components/archaeology.lua @@ -440,8 +440,6 @@ function PLUGIN:LoadArchaeologyMode() for i = 1, 12 do local bar = CreateFrame("StatusBar", nil, ArchCrafting) - local race = bar:CreateFontString() - local progress = bar:CreateFontString() local solve = CreateFrame("Button", nil, bar, "SecureHandlerClickTemplate") local yOffset; @@ -459,12 +457,14 @@ function PLUGIN:LoadArchaeologyMode() local sOffset = SV.Scale(1) -- Race Text + local race = bar:CreateFontString() race:SetFontObject(NumberFont_Outline_Large) race:SetText(RACE) race:SetPoint("TOPLEFT", bar, "TOPLEFT", sOffset, -sOffset) race:SetTextColor(1,0.8,0) -- Progress Text + local progress = bar:CreateFontString() progress:SetFont(SV.Media.font.roboto, 11, "OUTLINE") progress:SetText("") progress:SetPoint("BOTTOMRIGHT", bar, "BOTTOMRIGHT", -sOffset, sOffset) diff --git a/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.lua b/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.lua index a6fee08..a55841e 100644 --- a/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.lua +++ b/Interface/AddOns/SVUI_LogOMatic/SVUI_LogOMatic.lua @@ -69,52 +69,52 @@ LOCAL FUNCTIONS ]]-- local RefreshLoggedSlot = function(self, slotID, save) if(not self[slotID]) then return end - local bag = self:GetID() - local slot, _ = self[slotID], nil; + --print(self[slotID]:GetName()) + local bag = self:GetID(); + local slot = self[slotID]; local bagType = self.bagFamily; - local texture, count, locked = GetContainerItemInfo(bag, slotID) - local itemLink = GetContainerItemLink(bag, slotID); - local key; + slot:Show() - slot.name, slot.rarity = nil, nil; - local start, duration, enable = GetContainerItemCooldown(bag, slotID) - CooldownFrame_SetTimer(slot.cooldown, start, duration, enable) - if duration > 0 and enable == 0 then + + local texture, count, locked, rarity = GetContainerItemInfo(bag, slotID); + local start, duration, enable = GetContainerItemCooldown(bag, slotID); + local itemLink = GetContainerItemLink(bag, slotID); + + CooldownFrame_SetTimer(slot.cooldown, start, duration, enable); + + if(duration > 0 and enable == 0) then SetItemButtonTextureVertexColor(slot, 0.4, 0.4, 0.4) else SetItemButtonTextureVertexColor(slot, 1, 1, 1) - end - if bagType then + end + + if(bagType) then local r, g, b = bagType[1], bagType[2], bagType[3]; slot:SetBackdropColor(r, g, b, 0.5) slot:SetBackdropBorderColor(r, g, b, 1) - elseif itemLink then - local class, subclass, maxStack; - key, _, slot.rarity, _, _, class, subclass, maxStack = GetItemInfo(itemLink) - slot.name = key - local z, A, C = GetContainerItemQuestInfo(bag, slotID) - if A and not isActive then - slot:SetBackdropBorderColor(1.0, 0.3, 0.3) - elseif A or z then - slot:SetBackdropBorderColor(1.0, 0.3, 0.3) - elseif slot.rarity and slot.rarity>1 then - local D, E, F = GetItemQualityColor(slot.rarity) - slot:SetBackdropBorderColor(D, E, F) + elseif(itemLink) then + local key, _, rarity, _, _, class, subclass, maxStack = 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) end - if (key and save) then + + if(key and save) then local id = GetContainerItemID(bag,slotID) if id ~= 6948 then PLUGIN.myStash[bag][key] = GetItemCount(id,true) end end else slot:SetBackdropBorderColor(0, 0, 0) - end - if C_NewItems.IsNewItem(bag, slotID)then + end + + if(C_NewItems.IsNewItem(bag, slotID)) then ActionButton_ShowOverlayGlow(slot) else ActionButton_HideOverlayGlow(slot) - end + end + SetItemButtonTexture(slot, texture) SetItemButtonCount(slot, count) SetItemButtonDesaturated(slot, locked, 0.5, 0.5, 0.5) @@ -130,7 +130,7 @@ local RefreshLoggedSlots = function(self, bagID, save) end local RefreshLoggedBags = function(self) - for id,bag in ipairs(self.Bags)do + for id,bag in pairs(self.Bags)do if PLUGIN.myStash[id] then twipe(PLUGIN.myStash[id]) else diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/achievement.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/achievement.lua index 6069bbc..dcb5f09 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/achievement.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/achievement.lua @@ -209,15 +209,21 @@ local function AchievementStyle() AchievementFrameComparisonSummaryFriendStatusBar.text:SetPoint("CENTER") AchievementFrameComparisonHeader:Point("BOTTOMRIGHT", AchievementFrameComparison, "TOPRIGHT", 45, -20) - for f = 1, 10 do - local d = _G["AchievementFrameSummaryCategoriesCategory"..f] - local i = _G["AchievementFrameSummaryCategoriesCategory"..f.."Button"] - local j = _G["AchievementFrameSummaryCategoriesCategory"..f.."ButtonHighlight"] - BarStyleHelper(d) - i:RemoveTextures() - j:RemoveTextures() - _G[j:GetName().."Middle"]:SetTexture(1, 1, 1, 0.3) - _G[j:GetName().."Middle"]:SetAllPoints(d) + for i = 1, 12 do + local categoryName = ("AchievementFrameSummaryCategoriesCategory%d"):format(i) + if(_G[categoryName]) then + if _G[categoryName.."Button"] then + _G[categoryName.."Button"]:RemoveTextures() + end + local hlName = categoryName.."ButtonHighlight" + local highlight = _G[hlName] + if(highlight) then + highlight:RemoveTextures() + _G[hlName.."Middle"]:SetTexture(1, 1, 1, 0.3) + _G[hlName.."Middle"]:SetAllPoints(categoryName) + end + BarStyleHelper(_G[categoryName]) + end end AchievementFrame:HookScript("OnShow", function(self) diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua index d4695d4..7924b6b 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/petjournal.lua @@ -110,18 +110,29 @@ local function PetJournalStyle() MountJournal.MountDisplay.ShadowOverlay:RemoveTextures() MountJournal.MountCount:RemoveTextures() MountJournalListScrollFrame:RemoveTextures() + MountJournalMountButton:RemoveTextures() MountJournalMountButton:SetButtonTemplate() MountJournalSearchBox:SetEditboxTemplate() STYLE:ApplyScrollFrameStyle(MountJournalListScrollFrameScrollBar) MountJournal.MountDisplay:SetFixedPanelTemplate("ModelComic") - for i = 1, #MountJournal.ListScrollFrame.buttons do - local button = _G["MountJournalListScrollFrameButton"..i] + local buttons = MountJournal.ListScrollFrame.buttons + for i = 1, #buttons do + local button = buttons[i] if(button) then STYLE:ApplyItemButtonStyle(button, nil, true, true) local bar = _G["SVUI_MountSelectBar"..i] if(bar) then bar:SetParent(button.Panel) end + if(SV.GameVersion >= 60000) then + if(button.favorite) then + local fg = CreateFrame("Frame", nil, button) + fg:SetSize(40,40) + fg:SetPoint("TOPLEFT", button, "TOPLEFT", -1, 1) + fg:SetFrameLevel(button:GetFrameLevel() + 30) + button.favorite:SetParent(fg) + end + end end end @@ -216,19 +227,23 @@ local function PetJournalStyle() PetJournalPetCardPetInfo.levelBG:SetAlpha(0) PetJournalPetCardPetInfoIcon:SetTexCoord(0.1, 0.9, 0.1, 0.9) STYLE:ApplyItemButtonStyle(PetJournalPetCardPetInfo, nil, true, true) + local fg = CreateFrame("Frame", nil, PetJournalPetCardPetInfo) fg:SetSize(40,40) fg:SetPoint("TOPLEFT", PetJournalPetCardPetInfo, "TOPLEFT", -1, 1) fg:SetFrameLevel(PetJournalPetCardPetInfo:GetFrameLevel() + 30) + PetJournalPetCardPetInfo.favorite:SetParent(fg) PetJournalPetCardPetInfo.Panel:WrapOuter(PetJournalPetCardPetInfoIcon) PetJournalPetCardPetInfoIcon:SetParent(PetJournalPetCardPetInfo.Panel) PetJournalPetCardPetInfo.level:SetParent(PetJournalPetCardPetInfo.Panel) + local R = PetJournalPrimaryAbilityTooltip;R.Background:SetTexture(0,0,0,0) if R.Delimiter1 then R.Delimiter1:SetTexture(0,0,0,0) R.Delimiter2:SetTexture(0,0,0,0) - end + end + R.BorderTop:SetTexture(0,0,0,0) R.BorderTopLeft:SetTexture(0,0,0,0) R.BorderTopRight:SetTexture(0,0,0,0) @@ -238,6 +253,7 @@ local function PetJournalStyle() R.BorderBottomRight:SetTexture(0,0,0,0) R.BorderBottomLeft:SetTexture(0,0,0,0) R:SetFixedPanelTemplate("Transparent", true) + for b = 1, 6 do local S = _G['PetJournalPetCardSpell'..b] S:SetFrameLevel(S:GetFrameLevel() + 2) @@ -246,7 +262,8 @@ local function PetJournalStyle() S.Panel:SetAllPoints() S.icon:SetTexCoord(0.1, 0.9, 0.1, 0.9) S.icon:FillInner(S.Panel) - end + end + PetJournalPetCardHealthFrame.healthBar:RemoveTextures() PetJournalPetCardHealthFrame.healthBar:SetPanelTemplate('Default') PetJournalPetCardHealthFrame.healthBar:SetStatusBarTexture([[Interface\AddOns\SVUI\assets\artwork\Template\DEFAULT]]) @@ -259,9 +276,18 @@ local function PetJournalStyle() ToyBox:RemoveTextures() ToyBoxProgressBar:SetPanelTemplate("Bar", true) ToyBoxSearchBox:SetEditboxTemplate() + ToyBoxFilterButton:RemoveTextures() ToyBoxFilterButton:SetButtonTemplate() - STYLE:ApplyDropdownStyle(ToyBoxFilterDropDown) - ToyBoxIconsFrame:SetBasicPanel() + ToyBoxIconsFrame:RemoveTextures() + ToyBoxIconsFrame:SetFixedPanelTemplate('ModelComic') + + MountJournalFilterButton:RemoveTextures() + MountJournalFilterButton:SetButtonTemplate() + + MountJournal.SummonRandomFavoriteButton:RemoveTextures() + MountJournal.SummonRandomFavoriteButton:SetSlotTemplate(true, 2, 0, 0, true) + MountJournal.SummonRandomFavoriteButton.texture:SetTexture([[Interface\ICONS\ACHIEVEMENT_GUILDPERK_MOUNTUP]]) + MountJournal.SummonRandomFavoriteButton.texture:SetTexCoord(0.1, 0.9, 0.1, 0.9) for i = 1, 18 do local gName = ("ToySpellButton%d"):format(i) diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/talents.lua b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/talents.lua index 60bc03b..068ca9f 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/talents.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/blizzard/talents.lua @@ -176,7 +176,9 @@ local function TalentFrameStyle() PlayerSpecTab1:Point(d, x, f, -1, h) end) - for i = 1, MAX_NUM_TALENT_TIERS do + local maxTiers = (SV.GameVersion >= 60000) and MAX_TALENT_TIERS or MAX_NUM_TALENT_TIERS + + for i = 1, maxTiers do local gName = ("PlayerTalentFrameTalentsTalentRow%d"):format(i) local rowFrame = _G[gName] if(rowFrame) then @@ -191,14 +193,14 @@ local function TalentFrameStyle() for z = 1, NUM_TALENT_COLUMNS do local talentItem = _G[("%sTalent%d"):format(gName, z)] if(talentItem) then - STYLE:ApplyItemButtonStyle(talentItem, false, true) + STYLE:ApplyItemButtonStyle(talentItem) end end end end hooksecurefunc("TalentFrame_Update", function() - for i = 1, MAX_NUM_TALENT_TIERS do + for i = 1, maxTiers do local gName = ("PlayerTalentFrameTalentsTalentRow%d"):format(i) for z = 1, NUM_TALENT_COLUMNS do diff --git a/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua b/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua index 6c6b599..268fa0d 100644 --- a/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua +++ b/Interface/AddOns/SVUI_StyleOMatic/components/style_methods.lua @@ -186,7 +186,7 @@ function STYLE:ApplyItemButtonStyle(frame, adjust, shrink, noScript) if shrink then frame:SetPanelTemplate("Button", true, 1, -2, -2) else - frame:SetFixedPanelTemplate("Button") + frame:SetPanelTemplate("Button", true, 1, -1, -1) end end 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