As the title says.
I've been trying to create a custom unit frame piece by piece ( for reasons - have you seen nUI's archaic code? rofl ) and have stumbled on the portrait part.
Based on Blizzards code here :
https://github.com/Gethe/wow-ui-sour...Frame.lua#L166
I have a simple frame with a texture which accepts the SetPortraitTexture image quite fine.
However, when I toggle on 'ReplaceMyFramePortrait' interface option and use the following code to use a different image it doesn't work.
My first attempt was this, which correctly retrieved the value from the GetCVar function and the classIconAtlas is set to classicon-WARLOCK which I can assume is correct as that is Blizzards function.
Now, the Blizzard PlayerFrame correctly makes the change, however, mine does not.
Lua Code:
if useClassIcon == "1" then
local _, class = UnitClass(unitFrame.unit)
if class then
local classIconAtlas = GetClassAtlas(class)
if classIconAtlas then
unitFrame.Portrait.Icon:SetAtlas(classIconAtlas)
end
end
end
SetPortraitTexture(unitFrame.Portrait.Icon, "player",false)
So, I thought I would try a different route, as I can see from
https://github.com/Gethe/wow-ui-text...ree/live/ICONS that the class icons individual files still exist.
Now my test character was a warlock and the file for her comes up as ICONS\ClassIcon_Warlock.png so I tried the following code. And it worked.
Lua Code:
if useClassIcon == "1" then
local _, class = UnitClass(unitFrame.unit)
if class then
unitFrame.Portrait.Icon:SetTexture("Interface\\ICONS\\ClassIcon_" .. class)
end
else
SetPortraitTexture(unitFrame.Portrait.Icon, "player",false)
end
So, the question is, does anyone know if there is some special setup for a texture to have to make atlas functions work ? Blizzard seems to be using them more nowadays so thought I better get to figuring them out rofl.
Thanks in advance.