diff --git a/elements/leaderindicator.lua b/elements/leaderindicator.lua index f5c981f2..2d9334df 100644 --- a/elements/leaderindicator.lua +++ b/elements/leaderindicator.lua @@ -48,7 +48,13 @@ local function Update(self, event) -- UnitLeadsAnyGroup(unit). Inside the group formed by the dungeon finder UnitIsGroupLeader(unit) will only return -- true for the instance leader. local isInLFGInstance = HasLFGRestrictions() - local isLeader = UnitIsGroupLeader(unit) + local isLeader + if(IsInInstance()) then + isLeader = UnitIsGroupLeader(unit) + else + isLeader = UnitLeadsAnyGroup(unit) + end + if(isLeader) then if(isInLFGInstance) then element:SetTexture([[Interface\LFGFrame\UI-LFG-ICON-PORTRAITROLES]]) @@ -96,6 +102,7 @@ local function Enable(self) element.__owner = self element.ForceUpdate = ForceUpdate + self:RegisterEvent('UNIT_FLAGS', Path) self:RegisterEvent('PARTY_LEADER_CHANGED', Path, true) self:RegisterEvent('GROUP_ROSTER_UPDATE', Path, true) @@ -108,6 +115,7 @@ local function Disable(self) if(element) then element:Hide() + self:UnregisterEvent('UNIT_FLAGS', Path) self:UnregisterEvent('PARTY_LEADER_CHANGED', Path) self:UnregisterEvent('GROUP_ROSTER_UPDATE', Path) end