You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
143 lines
4.0 KiB
143 lines
4.0 KiB
|
3 years ago
|
local E, L, V, P, G = unpack(ElvUI)
|
||
|
|
local S = E:GetModule('Skins')
|
||
|
|
|
||
|
|
local _G = _G
|
||
|
|
local ipairs, unpack = ipairs, unpack
|
||
|
|
local hooksecurefunc = hooksecurefunc
|
||
|
|
local CLASS_ICON_TCOORDS = CLASS_ICON_TCOORDS
|
||
|
|
local CLASS_SORT_ORDER = CLASS_SORT_ORDER
|
||
|
|
|
||
|
|
local StripAllTextures = {
|
||
|
|
'RaidGroup1',
|
||
|
|
'RaidGroup2',
|
||
|
|
'RaidGroup3',
|
||
|
|
'RaidGroup4',
|
||
|
|
'RaidGroup5',
|
||
|
|
'RaidGroup6',
|
||
|
|
'RaidGroup7',
|
||
|
|
'RaidGroup8'
|
||
|
|
}
|
||
|
|
|
||
|
|
function S:Blizzard_RaidUI()
|
||
|
|
if not (E.private.skins.blizzard.enable and E.private.skins.blizzard.raid) then return end
|
||
|
|
|
||
|
|
-- Raid Frame Tab
|
||
|
|
S:HandleButton(_G.RaidFrameReadyCheckButton)
|
||
|
|
|
||
|
|
_G.RaidFrameConvertToRaidButton:Point('BOTTOMRIGHT', -6, 4)
|
||
|
|
|
||
|
|
for _, object in ipairs(StripAllTextures) do
|
||
|
|
local obj = _G[object]
|
||
|
|
if obj then
|
||
|
|
obj:StripTextures()
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
for i = 1, _G.MAX_RAID_GROUPS * 5 do
|
||
|
|
S:HandleButton(_G['RaidGroupButton'..i], true)
|
||
|
|
end
|
||
|
|
|
||
|
|
for i = 1, 8 do
|
||
|
|
for j = 1, 5 do
|
||
|
|
local slot = _G['RaidGroup'..i..'Slot'..j]
|
||
|
|
slot:StripTextures()
|
||
|
|
slot:SetTemplate('Transparent')
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
_G.RaidClassButton1:ClearAllPoints()
|
||
|
|
_G.RaidClassButton1:Point('TOPLEFT', _G.RaidFrame, 'TOPRIGHT', -50, -50)
|
||
|
|
|
||
|
|
-- Classes on the right side of the Raid Control
|
||
|
|
do
|
||
|
|
local prevButton
|
||
|
|
local button, icon, count, coords
|
||
|
|
|
||
|
|
for index = 1, 13 do
|
||
|
|
button = _G['RaidClassButton'..index]
|
||
|
|
icon = _G['RaidClassButton'..index..'IconTexture']
|
||
|
|
count = _G['RaidClassButton'..index..'Count']
|
||
|
|
|
||
|
|
button:StripTextures()
|
||
|
|
button:SetTemplate()
|
||
|
|
button:Size(22)
|
||
|
|
|
||
|
|
button:ClearAllPoints()
|
||
|
|
if index == 1 then
|
||
|
|
button:Point('TOPLEFT', _G.RaidFrame, 'TOPRIGHT', -3, -48)
|
||
|
|
elseif index == 11 then
|
||
|
|
button:Point('TOP', prevButton, 'BOTTOM', 0, -25)
|
||
|
|
else
|
||
|
|
button:Point('TOP', prevButton, 'BOTTOM', 0, -5)
|
||
|
|
end
|
||
|
|
prevButton = button
|
||
|
|
|
||
|
|
icon:SetInside()
|
||
|
|
|
||
|
|
if index == 11 then
|
||
|
|
icon:SetTexture('Interface\\RaidFrame\\UI-RaidFrame-Pets')
|
||
|
|
icon:SetTexCoord(unpack(E.TexCoords))
|
||
|
|
elseif index == 12 then
|
||
|
|
icon:SetTexture('Interface\\RaidFrame\\UI-RaidFrame-MainTank')
|
||
|
|
icon:SetTexCoord(unpack(E.TexCoords))
|
||
|
|
elseif index == 13 then
|
||
|
|
icon:SetTexture('Interface\\RaidFrame\\UI-RaidFrame-MainAssist')
|
||
|
|
icon:SetTexCoord(unpack(E.TexCoords))
|
||
|
|
else
|
||
|
|
coords = CLASS_ICON_TCOORDS[CLASS_SORT_ORDER[index]]
|
||
|
|
icon:SetTexture('Interface\\WorldStateFrame\\Icons-Classes')
|
||
|
|
icon:SetTexCoord(coords[1] + 0.02, coords[2] - 0.02, coords[3] + 0.02, coords[4] - 0.02)
|
||
|
|
end
|
||
|
|
|
||
|
|
count:FontTemplate(nil, 12, 'OUTLINE')
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
hooksecurefunc('RaidPullout_GetFrame', function()
|
||
|
|
for i = 1, _G.NUM_RAID_PULLOUT_FRAMES do
|
||
|
|
local rp = _G['RaidPullout'..i]
|
||
|
|
if rp and not rp.backdrop then
|
||
|
|
S:HandleFrame(rp, true, nil, 9, -17, -7, 10)
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end)
|
||
|
|
|
||
|
|
local bars = { 'HealthBar', 'ManaBar', 'Target', 'TargetTarget' }
|
||
|
|
hooksecurefunc('RaidPullout_Update', function(pullOutFrame)
|
||
|
|
local pfName = pullOutFrame:GetName()
|
||
|
|
local pfBName, pfBObj, pfTot
|
||
|
|
|
||
|
|
for i = 1, pullOutFrame.numPulloutButtons do
|
||
|
|
pfBName = pfName..'Button'..i
|
||
|
|
pfBObj = _G[pfBName]
|
||
|
|
pfTot = _G[pfBName..'TargetTargetFrame']
|
||
|
|
|
||
|
|
if not pfBObj.backdrop then
|
||
|
|
local sBar
|
||
|
|
|
||
|
|
for _, v in ipairs(bars) do
|
||
|
|
sBar = _G[pfBName..v]
|
||
|
|
sBar:StripTextures()
|
||
|
|
sBar:SetStatusBarTexture(E.media.normTex)
|
||
|
|
end
|
||
|
|
|
||
|
|
_G[pfBName..'ManaBar']:Point('TOP', '$parentHealthBar', 'BOTTOM', 0, 0)
|
||
|
|
_G[pfBName..'Target']:Point('TOP', '$parentManaBar', 'BOTTOM', 0, -1)
|
||
|
|
|
||
|
|
pfBObj:CreateBackdrop()
|
||
|
|
pfBObj.backdrop:Point('TOPLEFT', E.PixelMode and 0 or -1, -(E.PixelMode and 10 or 9))
|
||
|
|
pfBObj.backdrop:Point('BOTTOMRIGHT', E.PixelMode and 0 or 1, E.PixelMode and 1 or 0)
|
||
|
|
end
|
||
|
|
|
||
|
|
if not pfTot.backdrop then
|
||
|
|
pfTot:StripTextures()
|
||
|
|
pfTot:CreateBackdrop()
|
||
|
|
pfTot.backdrop:Point('TOPLEFT', E.PixelMode and 10 or 9, -(E.PixelMode and 15 or 14))
|
||
|
|
pfTot.backdrop:Point('BOTTOMRIGHT', -(E.PixelMode and 10 or 9), E.PixelMode and 8 or 7)
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end)
|
||
|
|
end
|
||
|
|
|
||
|
|
S:AddCallbackForAddon('Blizzard_RaidUI')
|