From 0e7c9115b1bb0486de46d95cce33642570b7bdfb Mon Sep 17 00:00:00 2001 From: tbkizle Date: Wed, 10 Jul 2024 19:13:09 -0400 Subject: [PATCH] [Statuses\Auras] Attempt to Fix Aura Status for Wrath China now has wrath servers --- Statuses/Auras.lua | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/Statuses/Auras.lua b/Statuses/Auras.lua index 3b8ba5e..e206162 100644 --- a/Statuses/Auras.lua +++ b/Statuses/Auras.lua @@ -1209,7 +1209,12 @@ end function PlexusStatusAuras:OnStatusEnable(status) self:RegisterMessage("Plexus_UnitJoined") - self:RegisterEvent("UNIT_AURA", "UpdateUnitAuras") + if not Plexus:IsWrathWow() then + self:RegisterEvent("UNIT_AURA", "UpdateUnitAuras") + end + if Plexus:IsWrathWow() then + self:RegisterEvent("UNIT_AURA", "ScanUnitAuras") + end self:RegisterEvent("SPELLS_CHANGED", "UpdateDispellable") --self:ScheduleRepeatingTimer("UpdateAllUnitAuras", 1) --UNIT_AURA fires every 5s this is a problem for duration color @@ -1716,13 +1721,25 @@ function PlexusStatusAuras:DeleteAura(status) end function PlexusStatusAuras:UpdateAllUnitAuras() - for guid, unitid in PlexusRoster:IterateRoster() do - self:UpdateUnitAuras("UpdateAllUnitAuras", unitid, {isFullUpdate = true}) + if not Plexus:IsWrathWow() then + for guid, unitid in PlexusRoster:IterateRoster() do + self:UpdateUnitAuras("UpdateAllUnitAuras", unitid, {isFullUpdate = true}) + end + end + if Plexus:IsWrathWow() then + for guid, unitid in PlexusRoster:IterateRoster() do + self:ScanUnitAuras("UpdateAllUnitAuras", unitid, guid) + end end end function PlexusStatusAuras:Plexus_UnitJoined(event, guid, unitid) - self:UpdateUnitAuras(event, unitid, {isFullUpdate = true}) + if not Plexus:IsWrathWow() then + self:UpdateUnitAuras(event, unitid, {isFullUpdate = true}) + end + if Plexus:IsWrathWow() then + self:ScanUnitAuras("UpdateAllUnitAuras", unitid, guid) + end end function PlexusStatusAuras:UpdateDispellable() --luacheck: ignore 212