mirror of
https://github.com/brues-code/pfUI.git
synced 2026-09-22 15:46:56 +00:00
115 lines
5.2 KiB
Lua
115 lines
5.2 KiB
Lua
pfUI:RegisterModule("raid", function ()
|
|
-- do not go further on disabled UFs
|
|
if pfUI_config.unitframes.disable == "1" then return end
|
|
|
|
local default_border = pfUI_config.appearance.border.default
|
|
if pfUI_config.appearance.border.raidframes ~= "-1" then
|
|
default_border = pfUI_config.appearance.border.raidframes
|
|
end
|
|
|
|
pfUI.uf.raid = CreateFrame("Button","pfRaid",UIParent)
|
|
pfUI.uf.raid:Hide()
|
|
|
|
pfUI.uf.raid:RegisterEvent("RAID_ROSTER_UPDATE")
|
|
pfUI.uf.raid:RegisterEvent("VARIABLES_LOADED")
|
|
pfUI.uf.raid:SetScript("OnEvent", function()
|
|
for i=1, 40 do
|
|
pfUI.uf.raid[i].label = "raid"
|
|
pfUI.uf.raid[i].id = 0
|
|
pfUI.uf.raid[i]:Hide()
|
|
end
|
|
|
|
-- sort players into roster
|
|
for i=1, GetNumRaidMembers() do
|
|
local name, _, subgroup = GetRaidRosterInfo(i)
|
|
if name then
|
|
for subindex = 1, 5 do
|
|
ids = subindex + 5*(subgroup-1)
|
|
if pfUI.uf.raid[ids].id == 0 then
|
|
pfUI.uf.raid[ids].id = i
|
|
pfUI.uf.raid[ids]:Show()
|
|
pfUI.uf:RefreshUnit(pfUI.uf.raid[ids])
|
|
break
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end)
|
|
|
|
for r=1, 8 do
|
|
for g=1, 5 do
|
|
i = g + 5*(r-1)
|
|
pfUI.uf.raid[i] = CreateFrame("Button","pfRaid" .. i,UIParent)
|
|
|
|
pfUI.uf.raid[i]:SetWidth(50)
|
|
pfUI.uf.raid[i]:SetHeight(30 + 2*default_border + pfUI_config.unitframes.raid.pspace)
|
|
pfUI.uf.raid[i]:SetPoint("BOTTOMLEFT", (r-1) * (54+default_border) + 5, pfUI_config.chat.left.height + 10 + ((g-1)*(37+default_border))+default_border)
|
|
pfUI.utils:UpdateMovable(pfUI.uf.raid[i])
|
|
pfUI.uf.raid[i]:Hide()
|
|
pfUI.uf.raid[i].id = 0
|
|
|
|
pfUI.uf.raid[i].hp = CreateFrame("Frame",nil, pfUI.uf.raid[i])
|
|
pfUI.uf.raid[i].hp:SetPoint("TOP", 0, 0)
|
|
pfUI.uf.raid[i].hp:SetWidth(50)
|
|
pfUI.uf.raid[i].hp:SetHeight(27)
|
|
pfUI.utils:CreateBackdrop(pfUI.uf.raid[i].hp, default_border)
|
|
|
|
pfUI.uf.raid[i].hp.bar = CreateFrame("StatusBar", nil, pfUI.uf.raid[i].hp)
|
|
pfUI.uf.raid[i].hp.bar:SetStatusBarTexture("Interface\\AddOns\\pfUI\\img\\bar")
|
|
pfUI.uf.raid[i].hp.bar:SetAllPoints(pfUI.uf.raid[i].hp)
|
|
pfUI.uf.raid[i].hp.bar:SetMinMaxValues(0, 100)
|
|
|
|
pfUI.uf.raid[i].power = CreateFrame("Frame",nil, pfUI.uf.raid[i])
|
|
pfUI.uf.raid[i].power:SetPoint("BOTTOM", 0, 0)
|
|
pfUI.uf.raid[i].power:SetWidth(50)
|
|
pfUI.uf.raid[i].power:SetHeight(3)
|
|
pfUI.utils:CreateBackdrop(pfUI.uf.raid[i].power, default_border)
|
|
|
|
pfUI.uf.raid[i].power.bar = CreateFrame("StatusBar", nil, pfUI.uf.raid[i].power)
|
|
pfUI.uf.raid[i].power.bar:SetStatusBarTexture("Interface\\AddOns\\pfUI\\img\\bar")
|
|
pfUI.uf.raid[i].power.bar:SetAllPoints(pfUI.uf.raid[i].power)
|
|
pfUI.uf.raid[i].power.bar:SetMinMaxValues(0, 100)
|
|
|
|
pfUI.uf.raid[i].caption = pfUI.uf.raid[i]:CreateFontString("Status", "HIGH", "GameFontNormal")
|
|
pfUI.uf.raid[i].caption:SetFont(pfUI.font_square, pfUI_config.global.font_size, "OUTLINE")
|
|
pfUI.uf.raid[i].caption:SetAllPoints(pfUI.uf.raid[i].hp.bar)
|
|
pfUI.uf.raid[i].caption:ClearAllPoints()
|
|
pfUI.uf.raid[i].caption:SetParent(pfUI.uf.raid[i].hp.bar)
|
|
pfUI.uf.raid[i].caption:SetPoint("CENTER",pfUI.uf.raid[i].hp.bar, "CENTER", 0, 0)
|
|
pfUI.uf.raid[i].caption:SetJustifyH("CENTER")
|
|
pfUI.uf.raid[i].caption:SetFontObject(GameFontWhite)
|
|
|
|
pfUI.uf.raid[i].hp.leaderIcon = CreateFrame("Frame",nil,pfUI.uf.raid[i].hp)
|
|
pfUI.uf.raid[i].hp.leaderIcon:SetWidth(10)
|
|
pfUI.uf.raid[i].hp.leaderIcon:SetHeight(10)
|
|
pfUI.uf.raid[i].hp.leaderIcon.texture = pfUI.uf.raid[i].hp.leaderIcon:CreateTexture(nil,"BACKGROUND")
|
|
pfUI.uf.raid[i].hp.leaderIcon.texture:SetTexture("Interface\\GROUPFRAME\\UI-Raid-LeaderIcon")
|
|
pfUI.uf.raid[i].hp.leaderIcon.texture:SetAllPoints(pfUI.uf.raid[i].hp.leaderIcon)
|
|
pfUI.uf.raid[i].hp.leaderIcon:SetPoint("TOPLEFT", pfUI.uf.raid[i].hp, "TOPLEFT", -4, 4)
|
|
pfUI.uf.raid[i].hp.leaderIcon:Hide()
|
|
|
|
pfUI.uf.raid[i].hp.lootIcon = CreateFrame("Frame",nil,pfUI.uf.raid[i].hp)
|
|
pfUI.uf.raid[i].hp.lootIcon:SetWidth(10)
|
|
pfUI.uf.raid[i].hp.lootIcon:SetHeight(10)
|
|
pfUI.uf.raid[i].hp.lootIcon.texture = pfUI.uf.raid[i].hp.lootIcon:CreateTexture(nil,"BACKGROUND")
|
|
pfUI.uf.raid[i].hp.lootIcon.texture:SetTexture("Interface\\GROUPFRAME\\UI-Raid-MasterLooter")
|
|
pfUI.uf.raid[i].hp.lootIcon.texture:SetAllPoints(pfUI.uf.raid[i].hp.lootIcon)
|
|
pfUI.uf.raid[i].hp.lootIcon:SetPoint("TOPLEFT", pfUI.uf.raid[i].hp, "LEFT", -4, 4)
|
|
pfUI.uf.raid[i].hp.lootIcon:Hide()
|
|
|
|
pfUI.uf.raid[i].hp.raidIcon = CreateFrame("Frame",nil,pfUI.uf.raid[i].hp.bar)
|
|
pfUI.uf.raid[i].hp.raidIcon:SetWidth(24)
|
|
pfUI.uf.raid[i].hp.raidIcon:SetHeight(24)
|
|
pfUI.uf.raid[i].hp.raidIcon.texture = pfUI.uf.raid[i].hp.raidIcon:CreateTexture(nil,"ARTWORK")
|
|
pfUI.uf.raid[i].hp.raidIcon.texture:SetTexture("Interface\\AddOns\\pfUI\\img\\raidicons")
|
|
pfUI.uf.raid[i].hp.raidIcon.texture:SetAllPoints(pfUI.uf.raid[i].hp.raidIcon)
|
|
pfUI.uf.raid[i].hp.raidIcon:SetPoint("TOP", pfUI.uf.raid[i].hp, "TOP", -4, 4)
|
|
pfUI.uf.raid[i].hp.raidIcon:Hide()
|
|
|
|
pfUI.uf.raid[i]:RegisterForClicks('LeftButtonUp', 'RightButtonUp')
|
|
|
|
pfUI.uf:CreateUnit(pfUI.uf.raid[i])
|
|
end
|
|
end
|
|
end)
|