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
@@ -0,0 +1,143 @@
local E, L, V, P, G = unpack(ElvUI)
local S = E:GetModule("Skins")
local AS = E:GetModule("AddOnSkins")
if not AS:IsAddonLODorEnabled("LightHeaded") then return end
local cos, pi = math.cos, math.pi
-- LightHeaded r310
S:AddCallbackForAddon("LightHeaded", "LightHeaded", function()
if not E.private.addOnSkins.LightHeaded then return end
LightHeadedFrame:StripTextures()
LightHeadedFrame:SetTemplate("Transparent")
LightHeadedFrame:Height(424)
LightHeadedFrame:Point("LEFT", QuestLogFrame, "RIGHT", -2, 0)
LightHeadedFrame.handle:SetParent(QuestLogFrame) -- ignore LightHeadedFrame alpha
LightHeadedFrame.handle:StripTextures()
LightHeadedFrame.handle:SetTemplate("Default")
LightHeadedFrame.handle:Point("LEFT", LightHeadedFrame, "RIGHT", -1, 0)
LightHeadedSearchBox:Width(281)
LightHeadedSearchBox:Point("TOP", LightHeadedFrame, "TOP", 0, -30)
S:HandleEditBox(LightHeadedSearchBox)
S:HandleCloseButton(LightHeadedFrame.close, LightHeadedFrame)
LightHeadedScrollFrame:CreateBackdrop("Transparent")
LightHeadedScrollFrame.backdrop:Point("TOPLEFT", -1, 2)
LightHeadedScrollFrame.backdrop:Point("BOTTOMRIGHT", 1, -2)
LightHeadedScrollFrame:Point("TOPLEFT", 9, -75)
LightHeadedScrollFrame:Point("BOTTOMRIGHT", -30, 55)
LightHeadedScrollFrameScrollBar:Point("TOPLEFT", LightHeadedScrollFrame, "TOPRIGHT", 4, -17)
LightHeadedScrollFrameScrollBar:Point("BOTTOMLEFT", LightHeadedScrollFrame, "BOTTOMRIGHT", 4, 17)
S:HandleNextPrevButton(LightHeadedFrameSub.next, "right")
S:HandleNextPrevButton(LightHeadedFrameSub.prev, "left")
S:HandleScrollBar(LightHeadedScrollFrameScrollBar)
LightHeadedTooltip:SetTemplate("Transparent")
hooksecurefunc(LightHeaded, "OnHyperlinkEnter", function()
local backdrop = E.media.backdropfadecolor
local border = E.media.bordercolor
LightHeadedTooltip:SetBackdropColor(backdrop[1], backdrop[2], backdrop[3], backdrop[4])
LightHeadedTooltip:SetBackdropBorderColor(border[1], border[2], border[3])
end)
hooksecurefunc(LightHeaded, "OnHyperlinkClick", function()
LightHeadedTooltip:Hide()
end)
local QLFrameOffsetXOpened, QLFrameOffsetXClosed = -2, -326
local function UpdatePosition()
if LightHeaded.db.profile.open then
LightHeadedFrame:Point("LEFT", QuestLogFrame, "RIGHT", QLFrameOffsetXOpened, 0)
else
LightHeadedFrame:SetAlpha(0)
LightHeadedFrameSub:SetAlpha(1)
LightHeadedFrame:Point("LEFT", QuestLogFrame, "RIGHT", QLFrameOffsetXClosed, 0)
end
end
UpdatePosition()
hooksecurefunc(LightHeaded, "LockUnlockFrame", function()
LightHeadedFrame:Height(424)
UpdatePosition()
end)
local function cosineInterpolation(y1, y2, mu)
return y1 + (y2 - y1) * (1 - cos(pi * mu)) / 2
end
local openedX, closedX = QLFrameOffsetXOpened, QLFrameOffsetXClosed
local timeToFade = 1.5
local mod = 1 / timeToFade
if LightHeaded.db.profile.open then
openedX, closedX = closedX, openedX
end
local count = 0
local totalElapsed = 0
local function OnUpdate(self, elapsed)
count = count + 1
totalElapsed = totalElapsed + elapsed
if totalElapsed >= timeToFade then
local temp = openedX
openedX = closedX
closedX = temp
count = 0
totalElapsed = 0
self:SetScript("OnUpdate", nil)
if not LightHeaded.db.profile.open then
if LightHeadedFrameSub.justclosed then
LightHeadedFrameSub.justclosed = false
LightHeadedFrameSub:Hide()
self:SetAlpha(0)
else
LightHeaded.db.profile.open = true
self:SetAlpha(1)
end
end
return
elseif count == 1 then
if LightHeaded.db.profile.open then
LightHeaded.db.profile.open = false
LightHeadedFrameSub.justclosed = true
else
LightHeadedFrameSub:Show()
LightHeaded:SelectQuestLogEntry()
end
end
local status = mod * totalElapsed
local offset = cosineInterpolation(closedX, openedX, status)
self:Point("LEFT", QuestLogFrame, "RIGHT", offset, 0)
self:SetAlpha(LightHeaded.db.profile.lhopen and (1 - status) or status)
end
LightHeadedFrame.handle:SetScript("OnClick", function()
LightHeadedFrame:SetScript("OnUpdate", OnUpdate)
if LightHeaded.db.profile.sound then
PlaySoundFile("Sound\\Doodad\\Karazahn_WoodenDoors_Close_A.wav")
end
LightHeaded.db.profile.lhopen = not LightHeaded.db.profile.lhopen
end)
LightHeaded.ChangeBGAlpha = E.noop
end)