hey guys im using oUF_Neav in my new ui: DarkenedBlizz UI and ive got a few stuff they want in it... so how do i get this ui:
and only thing i can manage is to show the status text but as u see in the first pic and not like i want it
Code:
local time
local _G = getfenv(0)
for _, v in pairs({
InterfaceOptionsPartyRaidPanelPartyBackground,
InterfaceOptionsPartyRaidPanelPartyPets,
InterfaceOptionsCombatPanelTargetOfTarget,
InterfaceOptionsCombatPanelTOTDropDown,
InterfaceOptionsCombatPanelEnemyCastBarsOnPortrait,
}) do
v:SetAlpha(0.35)
v:Disable()
v.Enable = v.Disable
end
local function CreateFont(parentName, font, fontSize, fontStyle, xShadow, yShadow)
local f = parentName:CreateFontString(nil, "OVERLAY")
f:SetFont(font, fontSize, fontStyle)
f:SetShadowOffset(xShadow, yShadow)
return f
end
local function menu(self)
local unit = self.unit:sub(1, -2)
local cunit = self.unit:gsub("(.)", string.upper, 1)
if (unit == "party" or unit == "partypet") then
ToggleDropDownMenu(1, nil, _G["PartyMemberFrame"..self.id.."DropDown"], "cursor", 0, 0)
elseif(_G[cunit.."FrameDropDown"]) then
ToggleDropDownMenu(1, nil, _G[cunit.."FrameDropDown"], "cursor", 0, 0)
end
end
local function NumFormat(i)
if (i >= 1000000) then
return ("%.3fK"):format(i / 1e6):gsub("%.", "M ")
elseif (i >= 100000) then
return ("%.3f"):format(i / 1e3):gsub("%.", "K ")
else
return i
end
end
local function UpdateColor(self, unit, func)
local colorA, colorB
local _, class = UnitClass(unit)
for i = 1, 4 do
if (unit == "party"..i) then
colorA = oUF.colors.class[class]
end
end
if (unit == "pet" and GetPetHappiness()) then
colorA = oUF.colors.happiness[GetPetHappiness()]
elseif (unit == "player" or not UnitIsFriend("player", unit) and UnitIsPlayer(unit) and UnitClass(unit)) then
colorA = oUF.colors.class[class]
else
colorB = {1, 1, 1}
end
if (colorA) then
self:SetTextColor(colorA[1], colorA[2], colorA[3])
elseif (colorB) then
self:SetTextColor(colorB[1], colorB[2], colorB[3])
end
end
local function OverrideUpdateLevel(self, unit, name)
local level = UnitLevel(unit)
local color = GetDifficultyColor(level)
if (level < 0) then
self.Level:SetTextColor(1, 0, 0)
else
self.Level:SetTextColor(color.r, color.g, color.b)
end
if (UnitClassification(unit) == "elite") then
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-TargetingFrame-Elite")
elseif (UnitClassification(unit) == "rareelite") then
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-TargetingFrame-Rare-Elite")
elseif (UnitClassification(unit) == "rare") then
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-TargetingFrame-Rare")
elseif (UnitClassification(unit) == "worldboss") then
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-TargetingFrame-Elite")
else
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-TargetingFrame")
end
end
local function OverrideUpdateName(self, event, unit)
if (self.unit == unit) then
if (self.Background) then
if (UnitIsDead(unit) or UnitIsGhost(unit) or UnitIsTapped(unit) and not UnitIsTappedByPlayer(unit)) then
self.Background:SetVertexColor(0.5, 0.5, 0.5)
elseif (UnitIsFriend(unit, "player") and UnitIsPlayer(unit)) then
self.Background:SetVertexColor(RAID_CLASS_COLORS[select(2, UnitClass(unit))].r, RAID_CLASS_COLORS[select(2, UnitClass(unit))].g, RAID_CLASS_COLORS[select(2, UnitClass(unit))].b)
elseif not UnitIsFriend(unit, "player") and UnitIsPlayer(unit) then
self.Background:SetVertexColor(0.9, 0, 0)
else
self.Background:SetVertexColor(UnitSelectionColor(unit))
end
end
if (unit == "target" or unit == "player" or unit == "focus") then
OverrideUpdateLevel(self, unit, name)
end
UpdateColor(self.Name, unit, "SetTextColor")
end
end
local function PostUpdateHealth(self, event, unit, bar, min, max)
if (UnitIsDead(unit) or UnitIsGhost(unit) or not UnitIsConnected(unit)) then
bar.value:SetText((UnitIsDead(unit) and "Dead") or (UnitIsGhost(unit) and "Ghost") or (not UnitIsConnected(unit) and "Offline"))
elseif (unit == "targettarget") then
bar.value:SetText((min/max * 100 < 100 and string.format("%d%%", min/max * 100)) or "")
else
bar.value:SetText(NumFormat(min).." / "..NumFormat(max))
end
if (UnitIsDead(unit) or (UnitIsGhost(unit)) or not UnitIsConnected(unit)) then
self.Health:SetStatusBarColor(0.5, 0.5, 0.5)
else
self.Health:SetStatusBarColor(0, 1, 0)
end
self:UNIT_NAME_UPDATE(event, unit)
end
local function PostUpdatePower(self, event, unit, bar, min, max)
if (UnitIsDead(unit) or (UnitIsGhost(unit)) or not UnitIsConnected(unit)) then
bar:SetValue(0)
bar.value:SetText("")
elseif (min == 0) then
bar.value:SetText("")
elseif (not UnitHasMana(unit)) then
bar.value:SetText(min)
elseif (min == max) then
bar.value:SetText(min)
else
if (UnitHasMana(unit)) then
if (unit == "player") then
bar.value:SetText(min)
else
bar.value:SetText(min.." / "..max)
end
else
bar.value:SetText(min)
end
end
end
local function PostCreateAuraIcon(self, button, icons)
icons.showDebuffType = true
button:SetWidth(20)
button:SetHeight(20)
button.cd:SetReverse()
button.cd:ClearAllPoints()
button.cd:SetPoint("TOPRIGHT", button, "TOPRIGHT", -1, -1)
button.cd:SetPoint("BOTTOMLEFT", button, "BOTTOMLEFT", 1, 1)
button.icon:SetTexCoord(0.04, 0.96, 0.04, 0.96)
button.overlay:SetTexture(oUF_Neav.media.border)
button.overlay:SetTexCoord(0, 1, 0, 1)
button.overlay:ClearAllPoints()
button.overlay:SetPoint("TOPRIGHT", button, "TOPRIGHT", 2.5, 2.5)
button.overlay:SetPoint("BOTTOMLEFT", button, "BOTTOMLEFT", -2.5, -2.5)
button.overlay.Hide = function(self)
self:SetVertexColor(0.65, 0.65, 0.65)
end
end
local function frameStyle(self, unit)
self.menu = menu
self:EnableMouse(true)
self:SetFrameStrata((unit == "targettarget") and "MEDIUM" or "LOW")
self:RegisterForClicks("anyup")
self:SetAttribute("*type2", "menu")
self:SetScript("OnEnter", UnitFrame_OnEnter)
self:SetScript("OnLeave", UnitFrame_OnLeave)
self.PostCreateAuraIcon = PostCreateAuraIcon
self:SetAttribute("initial-height", (unit == "player" or unit == "target" or unit == "focus") and 42 or 30)
self:SetAttribute("initial-width", (unit == "player" or unit == "target" or unit == "focus") and 175 or 105)
-- health
self.Health = CreateFrame("StatusBar", nil, self)
self.Health:SetHeight((self:GetHeight() * 0.81))
self.Health:SetStatusBarTexture(oUF_Neav.media.statusbar, "BORDER")
self.Health:SetHeight(12)
self.Health:SetWidth(119)
self.PostUpdateHealth = PostUpdateHealth
self.Health.value = CreateFont(self.Health, "Fonts\\ARIALN.ttf", oUF_Neav.size.fontSmall * 1.1, nil, 1, -1)
self.Health.value:SetPoint("CENTER", self.Health, 0, 1)
-- power
self.Power = CreateFrame("StatusBar", nil, self)
self.Power:SetStatusBarTexture(oUF_Neav.media.statusbar, "BORDER")
self.Power:SetPoint("TOPLEFT", self.Health, "BOTTOMLEFT", 0, -1)
self.Power:SetPoint("TOPRIGHT", self.Health, "BOTTOMRIGHT", 0, -1)
self.Power.colorPower = true
self.Power.colorHappiness = true
self.PostUpdatePower = PostUpdatePower
self.Power.value = CreateFont(self.Power, "Fonts\\ARIALN.ttf", oUF_Neav.size.fontSmall * 1.1, nil, 1, -1)
self.Power.value:SetPoint("CENTER", self.Power, 0, 1)
if (unit == "targettarget") then
self.Power.value:Hide()
end
-- background
self.bg = self.Power:CreateTexture(nil, "BACKGROUND")
self.bg:SetTexture(oUF_Neav.media.statusbar)
self.bg:SetVertexColor(0, 0, 0, 0.35)
self.bg:SetPoint("TOPRIGHT", self.Health, 0, (unit == "player") and 19 or 0)
self.bg:SetPoint("BOTTOMLEFT", self.Power)
-- name
self.Name = CreateFont(self.Health, oUF_Neav.media.font, oUF_Neav.size.fontBig, nil, 1, -1)
self.Name:SetJustifyH("CENTER")
self.Name:SetHeight(10)
self.Name:SetText("[name]")
self:Tag(self.Name, "[name]")
self.UNIT_NAME_UPDATE = OverrideUpdateName
-- pvpicons
self.PvP = self.Health:CreateTexture(self:GetName().."PVPIcon", "OVERLAY", self)
self.PvP:SetHeight(64)
-- portraits
self.Portrait = self:CreateTexture(nil, "BACKGROUND")
self.Portrait:SetWidth((unit == "player" or unit == "target" or unit == "focus") and 64 or 37)
self.Portrait:SetHeight((self.Portrait:GetWidth()))
-- masterlooter
self.MasterLooter = self.Health:CreateTexture(nil, "OVERLAY")
self.MasterLooter:SetHeight(16)
self.MasterLooter:SetWidth(16)
-- groupleader
self.Leader = self.Health:CreateTexture(nil, "OVERLAY")
self.Leader:SetHeight(16)
self.Leader:SetWidth(16)
-- raidicons
self.RaidIcon = self.Health:CreateTexture(nil, "OVERLAY")
self.RaidIcon:SetTexture("Interface\\TargetingFrame\\UI-RaidTargetingIcons", "OVERLAY")
self.RaidIcon:SetHeight(20)
self.RaidIcon:SetWidth(20)
self.RaidIcon:SetPoint("CENTER", self.Portrait, "TOP", 0, -1)
-- texture anchor
self.f = CreateFrame("Frame", self:GetName().."TextureFrame", self)
self.f:SetParent(self)
-- texture
self.Overlay = self.Health:CreateTexture(nil, "MEDIUM")
self.Overlay:SetParent(self.f)
-- glow texture
if (unit == "pet" or unit == "player" or self:GetParent():GetName():match("Party")) then
self.Glow = self.Health:CreateTexture(self:GetName().."Glow", "BACKGROUND")
self.Glow:SetAlpha(0)
end
-- player ------------------------------------------------------
if (unit == "player") then
self.f:SetHeight(100)
self.f:SetWidth(232)
self.f:SetPoint("CENTER", self, -20, -7)
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-TargetingFrame")
self.Overlay:SetTexCoord(1, 0.09375, 0, 0.78125)
self.Overlay:SetAllPoints(self.f)
if (oUF_Neav.show.pvpicons) then
self.PvPTimer = self.Health:CreateFontString(self:GetName().."PVPTimer", "OVERLAY")
self.PvPTimer:SetFont("Fonts\\ARIALN.ttf", oUF_Neav.size.fontSmall)
self.PvPTimer:SetShadowOffset(1, -1)
self.PvPTimer:SetPoint("CENTER", self.f, "TOPLEFT", 38, -15)
end
self.Glow:SetTexture("Interface\\TargetingFrame\\UI-TargetingFrame-Flash")
self.Glow:SetTexCoord(0.9453125, 0, 0, 0.181640625)
self.Glow:SetPoint("TOPLEFT", self.f, "TOPLEFT", 13, 0)
self.Glow:SetHeight(93)
self.Glow:SetWidth(242)
self.Leader:SetPoint("TOPLEFT", self.f, 45, -10)
self.MasterLooter:SetPoint("TOPLEFT", self.f, 85, -10)
self.Level = CreateFont(self.Health, "Interface\\AddOns\\oUF_Neav\\media\\font.ttf", 17, "OUTLINE", 0, 0)
self.Level:SetPoint("CENTER", self.f, -62, -15)
self.Level:SetText("[level]")
self:Tag(self.Level, "[level]")
self.Name:SetPoint("CENTER", self.f, 50, 19)
self.Portrait:SetPoint("TOPLEFT", self.f, 42, -12)
self.PvP:SetPoint("TOPLEFT", self.f, 18, -20)
self.Health:SetPoint("TOPLEFT", self.f, 106, -41)
self:SetScale(oUF_Neav.unitframe.player.scale)
end
-- pet ------------------------------------------------------
if (unit == "pet") then
self.Debuffs = CreateFrame("Frame", nil, self)
self.Debuffs:SetFrameStrata("BACKGROUND")
self.Debuffs:SetHeight(20 * 3)
self.Debuffs:SetWidth(20 * 3)
self.Debuffs.size = oUF_Neav.unitframe.pet.auraSize
self.Debuffs.spacing = 4
self.Debuffs:SetPoint("TOPLEFT", self, "CENTER", -15, -19)
self.Debuffs.initialAnchor = "TOPLEFT"
self.Debuffs["growth-y"] = "DOWN"
self.Debuffs["growth-x"] = "RIGHT"
self.Debuffs.num = 6
self.f:SetHeight(53)
self.f:SetWidth(128)
self.f:SetPoint("CENTER", self, 1, -3)
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-SmallTargetingFrame")
self.Overlay:SetPoint("TOPLEFT", self.f, 0, -2)
self.Overlay:SetHeight(64)
self.Overlay:SetWidth(128)
self.Name:SetPoint("BOTTOMLEFT", self.Health, "TOPLEFT", 0, 5)
self.Name:SetJustifyH("LEFT")
self.Name:SetWidth(100)
self.Name:SetHeight(10)
self.Health:SetHeight(8)
self.Health:SetWidth(69)
self.Health:SetPoint("TOPLEFT", self.f, 46, -22)
self.Portrait:SetPoint("TOPLEFT", self.f, 7, -6)
self.PvP:SetHeight(50)
self.PvP:SetPoint("CENTER", self, "LEFT", 1, -8)
self.Glow:SetTexture("Interface\\TargetingFrame\\UI-PartyFrame-Flash")
self.Glow:SetTexCoord(0, 1, 1, 0)
self.Glow:SetHeight(64)
self.Glow:SetWidth(128)
self.Glow:SetPoint("TOPLEFT", self.f, -4, 11)
self:SetScale(oUF_Neav.unitframe.pet.scale)
end
-- target + focus ------------------------------------------------------
if (unit == "target" or unit == "focus") then
self.Auras = CreateFrame("Frame", nil, self)
self.Auras.gap = true
self.Auras.size = oUF_Neav.unitframe.target.auraSize
self.Auras:SetHeight(self.Auras.size * 3)
self.Auras:SetWidth(self.Auras.size * 6)
self.Auras:SetPoint("TOPLEFT", self, "BOTTOMLEFT", -4, -5)
self.Auras.initialAnchor = "TOPLEFT"
self.Auras["growth-x"] = "RIGHT"
self.Auras["growth-y"] = "DOWN"
self.Auras.numBuffs = 40
self.Auras.numDebuffs = 40
self.Auras.spacing = 4
self.f:SetHeight(100)
self.f:SetWidth(232)
self.f:SetPoint("CENTER", self, 20, -7)
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-TargetingFrame")
self.Overlay:SetTexCoord(0.09375, 1, 0, 0.78125)
self.Overlay:SetAllPoints(self.f)
self.Background = self.Health:CreateTexture(self:GetName().."Background", "BACKGROUND")
self.Background:SetTexture("Interface\\AddOns\\oUF_Neav\\media\\nameBackground")
self.Background:SetTexCoord(0.2, 0.8, 0.3, 0.7)
self.Background:SetHeight(18)
self.Background:SetPoint("BOTTOMRIGHT", self.Health, "TOPRIGHT")
self.Background:SetPoint("BOTTOMLEFT", self.Health, "TOPLEFT")
self.Leader:SetPoint("TOPRIGHT", self.f, -45, -10)
self.MasterLooter:SetPoint("TOPRIGHT", self.f, -85, -10)
self.Level = CreateFont(self.Health, "Interface\\AddOns\\oUF_Neav\\media\\font.ttf", 17, "OUTLINE", 0, 0)
self.Level:SetPoint("CENTER", self.f, 63.5, -15)
self.Level:SetText("[level]")
self:Tag(self.Level, "[level]")
self.CombatFeedbackText = CreateFont(self.Health, oUF_Neav.media.font, 18, "OUTLINE", 0, 0)
self.CombatFeedbackText:SetPoint("CENTER", self.Portrait)
self.Portrait:SetPoint("TOPRIGHT", self.f, -42, -12)
self.PvP:SetPoint("TOPRIGHT", self.f, 3, -20)
self.Health:SetPoint("TOPRIGHT", self.f, -106, -41)
self.Name:SetPoint("CENTER", self.f, -52, 19)
self.Name:SetWidth(110)
self:SetScale(oUF_Neav.unitframe.target.scale)
if (select(2, UnitClass("Player")) == "ROGUE" or select(2, UnitClass("Player")) == "DRUID") then
self.CPoints = CreateFont(self.Health, DAMAGE_TEXT_FONT, 22, "OUTLINE", 0, 0)
self.CPoints:SetPoint("RIGHT", self.Portraitbg, "LEFT", 8, 0)
self.CPoints:SetTextColor(1, 1, 1)
end
end
if (unit == "focus") then
self.t1 = self.Health:CreateTexture(nil, "BACKGROUND")
self.t1:SetWidth(24)
self.t1:SetHeight(16)
self.t1:SetTexture("Interface\\CharacterFrame\\UI-CharacterFrame-GroupIndicator")
self.t1:SetTexCoord(0.53125, 0.71875, 0, 1)
self.t1:SetPoint("BOTTOMRIGHT", self, "TOP", 40, 0)
self.t1:SetAlpha(0.7)
self.t2 = self.Health:CreateTexture(nil, "BACKGROUND")
self.t2:SetWidth(38)
self.t2:SetHeight(16)
self.t2:SetTexture("Interface\\CharacterFrame\\UI-CharacterFrame-GroupIndicator")
self.t2:SetPoint("RIGHT", self.t1, "LEFT")
self.t2:SetTexCoord(0.1875, 0.53125, 0, 1)
self.t2:SetAlpha(0.7)
self.t3 = self.Health:CreateTexture(nil, "BACKGROUND")
self.t3:SetWidth(24)
self.t3:SetHeight(16)
self.t3:SetTexture("Interface\\CharacterFrame\\UI-CharacterFrame-GroupIndicator")
self.t3:SetTexCoord(0, 0.1875, 0, 1)
self.t3:SetPoint("RIGHT", self.t2, "LEFT")
self.t3:SetAlpha(0.7)
self.f1 = self.Health:CreateFontString(nil, "OVERLAY")
self.f1:SetFont("Fonts\\ARIALN.ttf", oUF_Neav.size.fontSmall + 1)
self.f1:SetShadowOffset(1, -1)
self.f1:SetPoint("CENTER", self.t2, 0, -1)
self.f1:SetText("Focus")
self.f1:SetAlpha(0.7)
self:SetMovable(true)
self:RegisterForDrag("LeftButton")
self:SetScript("OnDragStart", function(self)
if (IsShiftKeyDown()) then
self:ClearAllPoints()
self:StartMoving()
end
end)
self:SetScript("OnDragStop", function(self)
self:StopMovingOrSizing()
end)
end
-- targetstarget ------------------------------------------------------
if (unit == "targettarget") then
self:SetAttribute("initial-height", 20)
self:SetAttribute("initial-width", 85)
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-TargetofTargetFrame")
self.Overlay:SetTexCoord(0.015625, 0.7265625, 0, 0.703125)
self.Overlay:SetPoint("CENTER", self, 0, 0)
self.Overlay:SetHeight(45)
self.Overlay:SetWidth(93)
self.Name:SetPoint("TOPLEFT", self, "CENTER", -3, -11)
self.Name:SetJustifyH("LEFT")
self.Name:SetWidth(100)
self.Health:SetHeight(7)
self.Health:SetWidth(47)
self.Health:SetPoint("CENTER", self, 22, 4)
self.Health.value:SetPoint("CENTER", self, "CENTER", 23, 1)
self.Portrait:SetPoint("LEFT", self, "CENTER", -43, 0)
self:SetScale(oUF_Neav.unitframe.targetstarget.scale)
end
-- party ------------------------------------------------------
if (self:GetParent():GetName():match("Party")) then
self.Debuffs = CreateFrame("Frame", nil, self)
self.Debuffs:SetFrameStrata("BACKGROUND")
self.Debuffs:SetHeight(20)
self.Debuffs:SetWidth(20 * 3)
self.Debuffs.size = oUF_Neav.unitframe.party.auraSize
self.Debuffs.spacing = 4
self.Debuffs:SetPoint("LEFT", self, "RIGHT", 7, 7)
self.Debuffs.initialAnchor = "LEFT"
self.Debuffs["growth-y"] = "DOWN"
self.Debuffs["growth-x"] = "RIGHT"
self.Debuffs.num = 3
self.f:SetHeight(53)
self.f:SetWidth(128)
self.f:SetPoint("CENTER", self, 1, 2)
self.Overlay:SetTexture("Interface\\TargetingFrame\\UI-PartyFrame")
self.Overlay:SetPoint("TOPLEFT", self.f, 0, -2)
self.Overlay:SetHeight(64)
self.Overlay:SetWidth(128)
self.Leader:SetPoint("TOPLEFT", self.f, 2, 0)
self.MasterLooter:SetPoint("TOPLEFT", self.f, 29, 0)
self.Name:SetPoint("TOPLEFT", self.Power, "BOTTOMLEFT", -1, -5)
self.Name:SetJustifyH("LEFT")
self.Name:SetWidth(100)
self.Health:SetPoint("TOPLEFT", self.f, 47, -12)
self.Health:SetHeight(8)
self.Health:SetWidth(70)
self.Portrait:SetPoint("TOPLEFT", self.f, 7, -6)
self.PvP:SetPoint("TOPLEFT", self.f, -9, -10)
self.PvP:SetHeight(46)
self.PvP:SetWidth(46)
self.Glow:SetTexture("Interface\\TargetingFrame\\UI-PartyFrame-Flash")
self.Glow:SetHeight(63)
self.Glow:SetWidth(128)
self.Glow:SetPoint("TOPLEFT", self.f, -3, 2)
self:SetScale(oUF_Neav.unitframe.party.scale)
end
if (unit == "player" and oUF_Neav.unitframe.player.mouseoverText or unit == "pet" and oUF_Neav.unitframe.pet.mouseoverText or unit == "target" and oUF_Neav.unitframe.target.mouseoverText or unit == "focus" and oUF_Neav.unitframe.focus.mouseoverText or self:GetParent():GetName():match("Party") and oUF_Neav.unitframe.party.mouseoverText) then
self.Health.value:Hide()
self.Power.value:Hide()
self:SetScript("OnEnter", function(self)
self.Health.value:Show()
self.Power.value:Show()
UnitFrame_OnEnter(self)
end)
self:SetScript("OnLeave", function(self)
self.Health.value:Hide()
self.Power.value:Hide()
UnitFrame_OnLeave(self)
end)
end
self.Power:SetHeight((self.Health:GetHeight() - 1))
self.PvP:SetWidth((self.PvP:GetHeight()))
if (not oUF_Neav.show.pvpicons) then
self.PvP:Hide()
self.PvP.Show = function() end
end
if (unit == "pet" or self:GetParent():GetName():match("Party")) then
self.Range = true
self.inRangeAlpha = 1
self.outsideRangeAlpha = 0.6
end
self.disallowVehicleSwap = true
end
oUF:RegisterStyle("nUnits", frameStyle)
oUF:SetActiveStyle("nUnits")
local player = oUF:Spawn("player", "Player")
player:SetPoint(oUF_Neav.unitframe.player.position[1], oUF_Neav.unitframe.player.position[2], oUF_Neav.unitframe.player.position[3], oUF_Neav.unitframe.player.position[4], oUF_Neav.unitframe.player.position[5])
local pet = oUF:Spawn("pet", "PlayerPet")
pet:SetPoint(oUF_Neav.unitframe.pet.position[1], Player, oUF_Neav.unitframe.pet.position[3], oUF_Neav.unitframe.pet.position[4], oUF_Neav.unitframe.pet.position[5])
local target = oUF:Spawn("target", "Target")
target:SetPoint(oUF_Neav.unitframe.target.position[1], oUF_Neav.unitframe.target.position[2], oUF_Neav.unitframe.target.position[3], oUF_Neav.unitframe.target.position[4], oUF_Neav.unitframe.target.position[5])
local tot = oUF:Spawn("targettarget", "TargetsTarget")
tot:SetPoint(oUF_Neav.unitframe.targetstarget.position[1], Target, oUF_Neav.unitframe.targetstarget.position[3], oUF_Neav.unitframe.targetstarget.position[4], oUF_Neav.unitframe.targetstarget.position[5])
local focus = oUF:Spawn("focus", "Focus")
focus:SetPoint("LEFT", UIParent, 45, -50.35)
local party = oUF:Spawn("header", "Party")
party:SetPoint(oUF_Neav.unitframe.party.position[1], oUF_Neav.unitframe.party.position[2], oUF_Neav.unitframe.party.position[3], oUF_Neav.unitframe.party.position[4], oUF_Neav.unitframe.party.position[5])
party:SetManyAttributes(
"showParty", true, "yOffset", -30
)
if (oUF_Neav.show.party) then
party:Show()
end
local event = CreateFrame("Frame", nil, Player)
local inLeft = event:CreateTexture(nil, "BACKGROUND")
inLeft:SetWidth(24)
inLeft:SetHeight(16)
inLeft:SetTexture("Interface\\CharacterFrame\\UI-CharacterFrame-GroupIndicator")
inLeft:SetTexCoord(0, 0.1875, 0, 1)
inLeft:SetPoint("BOTTOMLEFT", Player, "TOP", -40, 0)
local inCenter = event:CreateTexture(nil, "BACKGROUND")
inCenter:SetWidth(38)
inCenter:SetHeight(16)
inCenter:SetTexture("Interface\\CharacterFrame\\UI-CharacterFrame-GroupIndicator")
inCenter:SetPoint("LEFT", inLeft, "RIGHT")
inCenter:SetTexCoord(0.1875, 0.53125, 0, 1)
local inRight = event:CreateTexture(nil, "BACKGROUND")
inRight:SetWidth(24)
inRight:SetHeight(16)
inRight:SetTexture("Interface\\CharacterFrame\\UI-CharacterFrame-GroupIndicator")
inRight:SetTexCoord(0.53125, 0.71875, 0, 1)
inRight:SetPoint("LEFT", inCenter, "RIGHT")
local inText = event:CreateFontString(nil, "OVERLAY")
inText:SetFont("Fonts\\ARIALN.ttf", oUF_Neav.size.fontSmall + 1)
inText:SetShadowOffset(1, -1)
inText:SetPoint("CENTER", inCenter, 0, -1)
inText:SetAlpha(0.6)
event:SetScript("OnEvent", function(self)
local name, rank, subgroup
local numRaidMembers = GetNumRaidMembers()
inCenter:SetAlpha(0)
inLeft:SetAlpha(0)
inRight:SetAlpha(0)
inText:SetText("")
if (numRaidMembers == 0) then
inCenter:SetAlpha(0)
inLeft:SetAlpha(0)
inRight:SetAlpha(0)
inText:SetText("")
return
end
for i = 1, MAX_RAID_MEMBERS do
if (i <= numRaidMembers) then
name, rank, subgroup = GetRaidRosterInfo(i)
if (name == UnitName("player")) then
inText:SetText(GROUP.." "..subgroup)
inCenter:SetWidth(inText:GetWidth())
inCenter:SetAlpha(0.7)
inLeft:SetAlpha(0.7)
inRight:SetAlpha(0.7)
end
end
end
if (HIDE_PARTY_INTERFACE == "1") then
party:Hide()
end
end)
if (oUF_Neav.show.pvpicons) then
event:SetScript("OnUpdate", function(self, elapsed)
if (IsPVPTimerRunning()) then
time = GetPVPTimer()
else
time = nil
end
if (time) then
time = time - elapsed * 1000
local timeLeft = time
if (timeLeft < 0) then
PlayerPVPTimer:SetText("")
end
PlayerPVPTimer:SetFormattedText(SecondsToTimeAbbrev(floor(timeLeft/1000)))
else
PlayerPVPTimer:SetText("")
end
end)
end
event:RegisterEvent("PLAYER_LOGIN")
event:RegisterEvent("CVAR_UPDATE")
event:RegisterEvent("RAID_ROSTER_UPDATE")
event:RegisterEvent("PARTY_LEADER_CHANGED")
event:RegisterEvent("PARTY_MEMBER_CHANGED")