Override role as TANK based on MT assignments

This is particularly helpful in fights like High King Maulgar,
Illidari Council or Kael'Thas where a DPS player is temporarily
made into a tank.
This commit was merged in pull request #11.
This commit is contained in:
Andreas committed 2026-10-29 12:54:24 +01:00
1 parent 949e3686aa
commit 4567bea3f9
2 files changed
+13 -3

No files matched your search

+11 -1
View File
@@ -541,10 +541,20 @@ function UnitFrame:UNIT_POWER_UPDATE()
self:UpdatePower()
end
function UnitFrame:UpdateRole(role)
function UnitFrame:GetRole(role)
if role == nil then
role = UnitGroupRolesAssigned(self.unit)
end
if GetPartyAssignment("MAINTANK", self.unit) then
role = "TANK"
end
return role
end
function UnitFrame:UpdateRole(role)
role = self:GetRole(role)
if role == "HEALER" then
self:EnablePower(Enum.PowerType.Mana)
elseif role == "TANK" and select(3, UnitClass(self.unit)) == 6 then
+2 -2
View File
@@ -53,8 +53,8 @@ local function UnitFrameDefaultCompare(lhs, rhs)
end
-- tank < healer < damage < ?
local lrole = RoleValue(UnitGroupRolesAssigned(lunit))
local rrole = RoleValue(UnitGroupRolesAssigned(runit))
local lrole = RoleValue(lhs:GetRole())
local rrole = RoleValue(rhs:GetRole())
if lrole ~= rrole then
return lrole < rrole