Files
pfUI/modules/raid.lua
T
2016-12-24 11:03:47 +01:00

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.api: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.api: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.api: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)