Change all use of heroclass to use RAID_CLASS_COLORS instead. This can be changed to CUSTOM_CLASS_COLORS later with a color picker for each class, but to support CoA classes need to go back to being colored properly.

Fix remaining lua errors covered by ascension patches

Add Addon Skins
Add Enhanced Friends List
This commit is contained in:
Andrew6810
2022-10-28 07:12:13 -07:00
parent 60ef8a38af
commit df7cc26a64
205 changed files with 18480 additions and 35 deletions
+196
View File
@@ -0,0 +1,196 @@
local E, L, V, P, G = unpack(ElvUI)
local S = E:GetModule("Skins")
local AS = E:GetModule("AddOnSkins")
if not AS:IsAddonLODorEnabled("Talented") then return end
local unpack = unpack
-- Talented r660
S:AddCallbackForAddon("Talented", "Talented", function()
if not E.private.addOnSkins.Talented then return end
local function SkinButton(button)
S:HandleButton(button, true)
button.left:Kill()
button.middle:Kill()
button.right:Kill()
end
S:SecureHook(Talented, "CreateBaseFrame", function()
TalentedFrame:StripTextures()
TalentedFrame:SetTemplate("Transparent")
S:HandleCloseButton(TalentedFrame.close, TalentedFrame)
SkinButton(TalentedFrame.bactions)
SkinButton(TalentedFrame.bmode)
SkinButton(TalentedFrame.bglyphs)
SkinButton(TalentedFrame.bactivate)
TalentedFrame.bactivate:Point("BOTTOM", TalentedFrame, 0, 3)
TalentedFrame.editname:Height(18)
TalentedFrame.editname:DisableDrawLayer("BACKGROUND")
S:HandleEditBox(TalentedFrame.editname)
S:HandleCheckBox(TalentedFrame.checkbox)
S:Unhook(Talented, "CreateBaseFrame")
end)
S:RawHook(Talented, "MakeButton", function(self, parent)
local button = S.hooks[self].MakeButton(self, parent)
if not button.isSkinned then
button:SetTemplate("Default")
button:StyleButton()
button:DisableDrawLayer("BACKGROUND")
button:SetNormalTexture(nil)
button.SetNormalTexture = E.noop
button.texture:SetInside(button)
button.texture:SetTexCoord(unpack(E.TexCoords))
button.texture:SetDrawLayer("ARTWORK")
button.rank:SetFont(E.LSM:Fetch("font", E.db["general"].font), 12, "OUTLINE")
button.rank:Point("CENTER", button, "BOTTOMRIGHT", 2, 0)
button.rank.texture:Kill()
button.isSkinned = true
end
return button
end)
S:RawHook(Talented, "GetButtonTarget", function(self, button)
local target = S.hooks[self].GetButtonTarget(self, button)
if not target.isSkinned then
target:SetFont(E.LSM:Fetch("font", E.db["general"].font), 12, "OUTLINE")
target:Point("CENTER", button, "TOPRIGHT", 2, 0)
target.texture:Kill()
target.isSkinned = true
end
return target
end)
S:RawHook(Talented, "MakeTalentFrame", function(self, parent, width, height)
local tree = S.hooks[self].MakeTalentFrame(self, parent, width, height)
if not tree.isSkinned then
tree.clear:GetNormalTexture():SetDesaturated(true)
tree.clear:GetPushedTexture():SetDesaturated(true)
tree.clear:GetHighlightTexture():SetDesaturated(true)
tree.isSkinned = true
end
return tree
end)
AS:SkinLibrary("Dewdrop-2.0")
end)
S:AddCallbackForAddon("Talented_GlyphFrame", "Talented_GlyphFrame", function()
if not E.private.addOnSkins.Talented then return end
TalentedGlyphs:CreateBackdrop("Transparent")
TalentedGlyphs.backdrop:Point("TOPLEFT", 11, -12)
TalentedGlyphs.backdrop:Point("BOTTOMRIGHT", -32, 76)
TalentedGlyphs:SetHitRectInsets(0, 0, 0, 0)
S:SetBackdropHitRect(TalentedGlyphs, TalentedGlyphs.backdrop, true)
S:HandleCloseButton(TalentedGlyphs.close)
TalentedGlyphs.title:Point("TOP", 0, -15)
TalentedGlyphs.portrait:Hide()
TalentedGlyphs.background:SetDrawLayer("ARTWORK")
TalentedGlyphs.background:Size(323, 349)
TalentedGlyphs.background:Point("TOPLEFT", 20, -59)
TalentedGlyphs.background:CreateBackdrop()
TalentedGlyphs.glow:SetDrawLayer("OVERLAY")
TalentedGlyphs.glow:SetAllPoints(TalentedGlyphs.background)
-- texWidth, texHeight, cropWidth, cropHeight, offsetX, offsetY = 512, 512, 315, 340, 21, 72
TalentedGlyphs.background:SetTexCoord(0.041015625, 0.65625, 0.140625, 0.8046875)
-- texWidth, texHeight, cropWidth, cropHeight, offsetX, offsetY = 512, 512, 315, 340, 30, 34
TalentedGlyphs.glow:SetTexCoord(0.05859375, 0.673828125, 0.06640625, 0.73046875)
local glyphBGScale = 1.0253968
local glyphPositions = {
{"CENTER", -1, 126},
{"CENTER", -1, -119},
{"TOPLEFT", 8, -62},
{"BOTTOMRIGHT", -10, 70},
{"TOPRIGHT", -8, -62},
{"BOTTOMLEFT", 7, 70}
}
local slotAnimations = {}
local TOPLEFT, TOP, TOPRIGHT, BOTTOMRIGHT, BOTTOM, BOTTOMLEFT = 3, 1, 5, 4, 2, 6
slotAnimations[TOPLEFT] = {["point"] = "CENTER", ["xStart"] = -13, ["xStop"] = -85, ["yStart"] = 17, ["yStop"] = 60}
slotAnimations[TOP] = {["point"] = "CENTER", ["xStart"] = -13, ["xStop"] = -13, ["yStart"] = 17, ["yStop"] = 100}
slotAnimations[TOPRIGHT] = {["point"] = "CENTER", ["xStart"] = -13, ["xStop"] = 59, ["yStart"] = 17, ["yStop"] = 60}
slotAnimations[BOTTOM] = {["point"] = "CENTER", ["xStart"] = -13, ["xStop"] = -13, ["yStart"] = 17, ["yStop"] = -64}
slotAnimations[BOTTOMLEFT] = {["point"] = "CENTER", ["xStart"] = -13, ["xStop"] = -87, ["yStart"] = 18, ["yStop"] = -27}
slotAnimations[BOTTOMRIGHT] = {["point"] = "CENTER", ["xStart"] = -13, ["xStop"] = 61, ["yStart"] = 18, ["yStop"] = -27}
for _, animData in ipairs(slotAnimations) do
animData.xStart = animData.xStart + 3
animData.yStart = animData.yStart + 8
animData.xStop = (animData.xStop + 3) * glyphBGScale
animData.yStop = (animData.yStop + 8) * glyphBGScale
end
local glyphFrameLevel = TalentedGlyphs:GetFrameLevel() + 1
for glyphID, glyph in ipairs(TalentedGlyphs.glyphs) do
glyph:SetFrameLevel(glyphFrameLevel)
glyph:Size(90)
glyph:SetScale(glyphBGScale)
local point, x, y = unpack(glyphPositions[glyphID])
glyph:Point(point, TalentedGlyphs.background.backdrop, x, y)
local animation = slotAnimations[glyphID]
glyph.sparkle:SetDrawLayer("OVERLAY")
glyph.sparkle:Point(animation.point, animation.xStart, animation.yStart)
glyph.sparkle.anim.translation:SetOffset(animation.xStop - animation.xStart, animation.yStop - animation.yStart)
end
S:HandleCheckBox(TalentedGlyphs.checkbox)
TalentedGlyphs.checkbox:Point("BOTTOMLEFT", 15, 80)
end)
S:AddCallbackForAddon("Talented_SpecTabs", "Talented_SpecTabs", function()
if not E.private.addOnSkins.Talented then return end
local function skinTabs()
Talented.tabs:Point("TOPLEFT", TalentedFrame, "TOPRIGHT", -1, -40)
for _, tab in ipairs({"spec1", "spec2", "petspec1"}) do
tab = Talented.tabs[tab]
tab:SetTemplate("Default")
tab:StyleButton()
tab:DisableDrawLayer("BACKGROUND")
tab:GetNormalTexture():SetInside(tab.backdrop)
tab:GetNormalTexture():SetTexCoord(unpack(E.TexCoords))
end
end
if Talented.base then
skinTabs()
else
hooksecurefunc(Talented, "CreateBaseFrame", skinTabs)
end
end)