Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local roleColors = {
- TANK = {0.2, 0.2, 0.8},
- HEALER = {0, 0.7, 0},
- DAMAGER = {0.7, 0, 0},
- NONE = {0.7, 0.7, 0.7},
- }
- function NewSecureGroupHeader(name)
- local header = _G[name] or CreateFrame("Frame", name, UIParent, "SecureGroupHeaderTemplate")
- header:SetAttribute("showRaid", true)
- header:SetAttribute("point", "LEFT")
- header:SetAttribute("xOffset", 1)
- header:SetAttribute("unitsPerColumn", 5)
- header:SetAttribute("maxColumns", 8)
- header:SetAttribute("columnAnchorPoint", "TOP")
- header:SetAttribute("columnSpacing", 1)
- header:SetAttribute("template", "AuraButtonTemplate, SecureUnitButtonTemplate")
- header:SetAttribute("initialConfigFunction", [[
- self:SetAttribute("*type1", "target")
- ]])
- header.e = header.e or CreateFrame("Frame")
- header.e:RegisterEvent("GROUP_ROSTER_UPDATE")
- header.e:RegisterEvent("PLAYER_ROLES_ASSIGNED")
- header.e:SetScript("OnEvent", function(self, event, ...)
- for i, frame in ipairs(header) do
- frame:SetScript("OnEnter", nil)
- frame:SetScript("OnLeave", nil)
- frame.bg = frame.bg or frame:CreateTexture()
- frame.bg:SetAllPoints()
- local unit = frame:GetAttribute("unit")
- frame.bg:SetTexture(unpack(roleColors[UnitGroupRolesAssigned(unit)]))
- end
- end)
- return header
- end
- local tanks = NewSecureGroupHeader("LombleRaidTanks")
- tanks:SetAttribute("roleFilter", "TANK")
- tanks:SetPoint("TOPLEFT", 32, -32)
- tanks:Show()
- local healers = NewSecureGroupHeader("LombleRaidHealers")
- healers:SetAttribute("roleFilter", "HEALER")
- healers:SetPoint("TOPLEFT", tanks, "BOTTOMLEFT", 0, -4)
- healers:Show()
- local damagers = NewSecureGroupHeader("LombleRaidDamagers")
- damagers:SetAttribute("roleFilter", "DAMAGER")
- damagers:SetPoint("TOPLEFT", healers, "BOTTOMLEFT", 0, -4)
- damagers:Show()
- local none = NewSecureGroupHeader("LombleRaidNone")
- none:SetAttribute("roleFilter", "NONE")
- none:SetPoint("TOPLEFT", damagers, "BOTTOMLEFT", 0, -4)
- none:Show()
- local raid = NewSecureGroupHeader("LombleRaidAll")
- raid:SetAttribute("groupingOrder", "TANK,HEALER,DAMAGER,NONE")
- raid:SetAttribute("groupBy", "ASSIGNEDROLE")
- raid:SetPoint("TOPLEFT", 192, -32)
- raid:Show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement