fac8827 - aura updates
authorAleksi Blinnikka <aleksi.blinnikka@iki.fi>
Fri, 3 Dec 2021 12:40:16 +0000
committerAleksi Blinnikka <aleksi.blinnikka@iki.fi>
Fri, 3 Dec 2021 12:40:16 +0000
OmaTMW/TellMeWhen.lua
kehys/auras.lua

index 6037c86..b5a5a2b 100644 (file)
@@ -116,8 +116,18 @@ local chars = {
                 auraFilter = "PLAYER HELPFUL",
                 x = 570,
                 y = 440,
                 auraFilter = "PLAYER HELPFUL",
                 x = 570,
                 y = 440,
-                width = 80,
-                height = 80,
+                width = 60,
+                height = 60,
+            },
+            {
+                unit = "player",
+                spec = 2, -- Protection
+                auras = {"Shining Light"},
+                auraFilter = "PLAYER HELPFUL",
+                x = 630,
+                y = 440,
+                width = 60,
+                height = 60,
             },
             {
                 unit = "player",
             },
             {
                 unit = "player",
@@ -256,6 +266,86 @@ local chars = {
                 height = 40,
             },
         },
                 height = 40,
             },
         },
+        ["Iled"] = {
+            {
+                unit = "player",
+                auras = {"Arcane Intellect"},
+                auraFilter = "HELPFUL",
+                invert = true,
+                x = 720,
+                y = 460,
+                width = 60,
+                height = 60,
+            },
+            {
+                unit = "player",
+                auras = {"Rune of Power"},
+                auraFilter = "PLAYER HELPFUL",
+                x = 660,
+                y = 460,
+                width = 40,
+                height = 40,
+            },
+            {
+                unit = "target",
+                spec = 3, -- Frost
+                auras = {"Winter's Chill"},
+                auraFilter = "PLAYER HARMFUL",
+                x = 700,
+                y = 460,
+                width = 40,
+                height = 40,
+            },
+            {
+                unit = "player",
+                spec = 2, -- Fire
+                auras = {"Sun King's Blessing"},
+                auraFilter = "PLAYER HELPFUL",
+                x = 700,
+                y = 460,
+                width = 40,
+                height = 40,
+            },
+            {
+                unit = "player",
+                spec = 3, -- Frost
+                auras = {"Icy Veins"},
+                auraFilter = "PLAYER HELPFUL",
+                x = 660,
+                y = 420,
+                width = 40,
+                height = 40,
+            },
+            {
+                unit = "player",
+                spec = 2, -- Fire
+                auras = {"Combustion"},
+                auraFilter = "PLAYER HELPFUL",
+                x = 660,
+                y = 420,
+                width = 40,
+                height = 40,
+            },
+            {
+                unit = "player",
+                spec = 2, -- Fire
+                auras = {"Infernal Cascade"},
+                auraFilter = "PLAYER HELPFUL",
+                x = 620,
+                y = 420,
+                width = 40,
+                height = 40,
+            },
+            {
+                unit = "player",
+                auras = {"Alter Time"},
+                auraFilter = "PLAYER HELPFUL",
+                x = 700,
+                y = 420,
+                width = 40,
+                height = 40,
+            },
+        },
     },
 };
 
     },
 };
 
@@ -301,7 +391,10 @@ local settings = {
             "Chilling Touch", "Volatile Charge", "Liquid Gold", "Drained Soul", "Evoke Anguish",
             "Ancient Curse", "Corrosion", "Debilitating Spit", "Tasty Morsel", "Encroaching Shadows",
             "Corrupted Existence", "Madness Bomb", "Crimson Chorus", "Essence Sap", "Bloodlight",
             "Chilling Touch", "Volatile Charge", "Liquid Gold", "Drained Soul", "Evoke Anguish",
             "Ancient Curse", "Corrosion", "Debilitating Spit", "Tasty Morsel", "Encroaching Shadows",
             "Corrupted Existence", "Madness Bomb", "Crimson Chorus", "Essence Sap", "Bloodlight",
-            "Arcane Vulnerability", "Wicked Laceration", "Withering Touch"
+            "Arcane Vulnerability", "Wicked Laceration", "Withering Touch", "Fragment of Destiny",
+            "Flameclasp Eruption", "Wailing Arrow", "Frozen Destruction",
+            "Remnant: Mort'regar's Echoes", "Barbed Arrow", "Scorn", "Ire", "Song of Dissolution",
+            "Grim Portent", "Exposed Threads of Fate", "Despair"
         },
         auraFilter = "HARMFUL",
         x = 660,
         },
         auraFilter = "HARMFUL",
         x = 660,
@@ -312,7 +405,7 @@ local settings = {
     {
         unit = "player",
         auras = {
     {
         unit = "player",
         auras = {
-            "Adaptive Membrane", "Gluttonous Miasma"
+            "Adaptive Membrane", "Gluttonous Miasma", "Remnant: Soulforge Heat"
         },
         auraFilter = "HARMFUL",
         x = 660,
         },
         auraFilter = "HARMFUL",
         x = 660,
@@ -336,11 +429,11 @@ local Indicators = CreateFrame("Frame", "OmaTMW", UIParent);
 local function updateAuraFrame(frame)
     local unit = frame.unit;
     if UnitExists(unit) and (not frame.spec or frame.spec == currentSpec) then
 local function updateAuraFrame(frame)
     local unit = frame.unit;
     if UnitExists(unit) and (not frame.spec or frame.spec == currentSpec) then
-        local name, icon, count, duration, expires;
+        local name, icon, count, duration, expires, id;
         local auraFilter = frame.auraFilter;
         local i = 1;
         while true do
         local auraFilter = frame.auraFilter;
         local i = 1;
         while true do
-            name, icon, count, _, duration, expires = UnitAura(unit, i, auraFilter);
+            name, icon, count, _, duration, expires, _, _, _, id = UnitAura(unit, i, auraFilter);
             if not name then break end
             -- possible improvement to add spellID as an option
             if frame.auras[name] and not frame.invert then
             if not name then break end
             -- possible improvement to add spellID as an option
             if frame.auras[name] and not frame.invert then
index f777e22..9f18dc5 100644 (file)
@@ -7,24 +7,13 @@ local UnitGUID = UnitGUID;
 
 local guids = addon.FrameGuids;
 local watchedAuras = {
 
 local guids = addon.FrameGuids;
 local watchedAuras = {
-    --[286988] = duration, -- Searing Embers
-    --[257908] = {bar=false}, -- Oiled Blade
-    --[268391] = {bar=false}, -- Mental Assault
-    --[272571] = {bar=false}, -- Choking Waters
-    --[268008] = {bar=false}, -- Snake Charm
-    --[280605] = {bar=false}, -- Brain Freeze
-    --[268797] = {bar=false}, -- Transmute to Goo
-    --[265889] = {bar=false}, -- Torch Strike
-    --[266209] = {bar=false}, -- Wicked Frenzy
-    --[258323] = {bar=false}, -- Infected Wound
-    --[262513] = {bar=false}, -- Azerite Heartseeker
     [287280] = {1, "buff1"}, -- Glimmer of Light
     [194384] = {1, "buff1"}, -- Atonement
     [61295] = {1, "buff1"}, -- Riptide
     [53563] = {1, "buff2"}, -- Beacon of Light
     [156910] = {1, "buff2"}, -- Beacon of Faith
     [200025] = {1, "buff2"}, -- Beacon of Virtue
     [287280] = {1, "buff1"}, -- Glimmer of Light
     [194384] = {1, "buff1"}, -- Atonement
     [61295] = {1, "buff1"}, -- Riptide
     [53563] = {1, "buff2"}, -- Beacon of Light
     [156910] = {1, "buff2"}, -- Beacon of Faith
     [200025] = {1, "buff2"}, -- Beacon of Virtue
-    [974] = {1, "buff2"}, -- Earth Shield
+    --[974] = {1, "buff2"}, -- Earth Shield
     -- Tank defensives
     [6940] = {1, "tankcd"}, -- Blessing of Sacrifice
     [33206] = {1, "tankcd"}, -- Pain Suppression
     -- Tank defensives
     [6940] = {1, "tankcd"}, -- Blessing of Sacrifice
     [33206] = {1, "tankcd"}, -- Pain Suppression
@@ -32,6 +21,11 @@ local watchedAuras = {
     [102342] = {1, "tankcd"}, -- Ironbark
     [116849] = {1, "tankcd"}, -- Life Cocoon
     [196555] = {1, "tankcd"}, -- Netherwalk
     [102342] = {1, "tankcd"}, -- Ironbark
     [116849] = {1, "tankcd"}, -- Life Cocoon
     [196555] = {1, "tankcd"}, -- Netherwalk
+    -- Raid-wide defensives
+    [31821] = {1, "tankcd"}, -- Aura Mastery
+    [81782] = {1, "tankcd"}, -- Power Word: Barrier
+    [145629] = {1, "tankcd"}, -- Anti-Magic Zone
+    [325174] = {1, "tankcd"}, -- Spirit Link Totem
     --[124275] = {1, "stagger"}, -- Light Stagger (Monk)
     --[124274] = {1, "stagger"}, -- Moderate Stagger (Monk)
     [124273] = {1, "stagger"}, -- Heavy Stagger (Monk)
     --[124275] = {1, "stagger"}, -- Light Stagger (Monk)
     --[124274] = {1, "stagger"}, -- Moderate Stagger (Monk)
     [124273] = {1, "stagger"}, -- Heavy Stagger (Monk)
@@ -102,11 +96,15 @@ local watchedAuras = {
     [344993] = {5, "stacks"}, -- Jagged Swipe (Halls of Atonement)
     [323692] = {1, "stacks"}, -- Arcane Vulnerability (De Other Side)
     [317661] = {1, "stacks"}, -- Insidious Venom (Spires of Ascension)
     [344993] = {5, "stacks"}, -- Jagged Swipe (Halls of Atonement)
     [323692] = {1, "stacks"}, -- Arcane Vulnerability (De Other Side)
     [317661] = {1, "stacks"}, -- Insidious Venom (Spires of Ascension)
+    [355732] = {1, "stacks"}, -- Melt Soul (Incinerator Arkolath)
     [327814] = {1, "heal"}, -- Wicked Gash (Gauntlet) (Sanguine Depths)
     [323687] = {1, "heal"}, -- Arcane Lightning (De Other Side)
     [324154] = {1, "heal"}, -- Dark Stride (Spires of Ascension)
     [335305] = {1, "heal"}, -- Barbed Shackles (Sanguine Depths)
     [336279] = {1, "heal"}, -- Explosive Anger (Sanguine Depths)
     [327814] = {1, "heal"}, -- Wicked Gash (Gauntlet) (Sanguine Depths)
     [323687] = {1, "heal"}, -- Arcane Lightning (De Other Side)
     [324154] = {1, "heal"}, -- Dark Stride (Spires of Ascension)
     [335305] = {1, "heal"}, -- Barbed Shackles (Sanguine Depths)
     [336279] = {1, "heal"}, -- Explosive Anger (Sanguine Depths)
+    [356011] = {1, "heal"}, -- Beam Splicer (Tazavesh)
+    [347481] = {1, "heal"}, -- Shuri (Tazavesh)
+    [357190] = {1, "heal"}, -- Star Vulnerability (Tazavesh)
     -- Castle Nathria
     [346301] = {1, "stacks"}, -- Bloodlight (Shriekwing)
     [328897] = {7, "alert"}, -- Exsanguinated (Shriekwing)
     -- Castle Nathria
     [346301] = {1, "stacks"}, -- Bloodlight (Shriekwing)
     [328897] = {7, "alert"}, -- Exsanguinated (Shriekwing)
@@ -128,14 +126,36 @@ local watchedAuras = {
     [334755] = {14, "heal"}, -- Essence Sap (Hungering Destroyer)
     [343320] = {1, "alert"}, -- Curse of Caramain (Trash)
     [333913] = {1, "stacks"}, -- Wicked Laceration (Stone Legion Generals)
     [334755] = {14, "heal"}, -- Essence Sap (Hungering Destroyer)
     [343320] = {1, "alert"}, -- Curse of Caramain (Trash)
     [333913] = {1, "stacks"}, -- Wicked Laceration (Stone Legion Generals)
+    -- Sanctum of Domination
+    [357431] = {1, "heal"}, -- Grasp of Death (Tarragrue)
+    [352392] = {2, "stacks"}, -- Soulforge Heat (Tarragrue)
+    [350034] = {1, "heal"}, -- Fractured Soul (Eye of the Jailer)
+    [350542] = {1, "stacks"}, -- Fragment of Destiny (The Nine)
+    [350184] = {1, "heal"}, -- Daschla's Mighty Impact (The Nine)
+    [350647] = {1, "heal"}, -- Brand of Torment (Soulrender Dormazain)
+    [355506] = {1, "heal"}, -- Shadowsteel Chains (Painsmith Raznal)
+    [350496] = {1, "heal"}, -- Threat Neutralization (Guardian of the First Ones)
+    [357686] = {1, "heal"}, -- Runic Affinity (Fatescribe Roh-Kalo)
+    [353162] = {1, "stacks"}, -- Fate Fragment (Fatescribe Roh-Kalo)
+    [347807] = {2, "stacks"}, -- Barbed Arrow (Sylvanas Windrunner)
+    [351117] = {1, "stacks"}, -- Crushing Dread (Sylvanas Windrunner)
+    [353929] = {1, "stacks"}, -- Banshee's Bane (Sylvanas Windrunner)
+    [351870] = {1, "heal"}, -- Haunting Wave (Sylvanas Windrunner)
+    [351451] = {1, "heal"}, -- Curse of Lethargy (Sylvanas Windrunner)
+    [348064] = {1, "heal"}, -- Wailing Arrow (Sylvanas Windrunner)
 };
 };
+
+--local overlapAuras = {
+--    [53563] = {1, "buff3"}, -- other Beacon of Light
+--    [156910] = {1, "buff3"}, -- other Beacon of Faith
+--};
 local playerGuid = nil;
 
 local auraEvents = {};
 auraEvents.SPELL_AURA_APPLIED = function(frame, id, source, _, _, atype, amount)
     if (amount == nil and watchedAuras[id][1] == 1) or (amount ~= nil and amount >= watchedAuras[id][1]) then
         amount = amount or 1;
 local playerGuid = nil;
 
 local auraEvents = {};
 auraEvents.SPELL_AURA_APPLIED = function(frame, id, source, _, _, atype, amount)
     if (amount == nil and watchedAuras[id][1] == 1) or (amount ~= nil and amount >= watchedAuras[id][1]) then
         amount = amount or 1;
-        if atype == "BUFF" and (source == playerGuid or watchedAuras[id][2] == "tankcd") then
+        if atype == "BUFF" and (source == playerGuid or watchedAuras[id][2] == "tankcd" or watchedAuras[id][2] == "buff2") then
             frame[watchedAuras[id][2]][id] = amount;
         elseif atype == "DEBUFF" then
             frame[watchedAuras[id][2]][id] = amount;
             frame[watchedAuras[id][2]][id] = amount;
         elseif atype == "DEBUFF" then
             frame[watchedAuras[id][2]][id] = amount;
@@ -149,7 +169,7 @@ auraEvents.SPELL_AURA_APPLIED_DOSE = auraEvents.SPELL_AURA_APPLIED;
 auraEvents.SPELL_AURA_REFRESH = auraEvents.SPELL_AURA_APPLIED;
 auraEvents.SPELL_AURA_REMOVED = function(frame, id, source, _, _, atype, amount)
     if amount == nil or amount == 0 then
 auraEvents.SPELL_AURA_REFRESH = auraEvents.SPELL_AURA_APPLIED;
 auraEvents.SPELL_AURA_REMOVED = function(frame, id, source, _, _, atype, amount)
     if amount == nil or amount == 0 then
-        if atype == "BUFF" and (source == playerGuid or watchedAuras[id][2] == "tankcd") then
+        if atype == "BUFF" and (source == playerGuid or watchedAuras[id][2] == "tankcd" or watchedAuras[id][2] == "buff2") then
             frame[watchedAuras[id][2]][id] = nil;
         elseif atype == "DEBUFF" then
             frame[watchedAuras[id][2]][id] = nil;
             frame[watchedAuras[id][2]][id] = nil;
         elseif atype == "DEBUFF" then
             frame[watchedAuras[id][2]][id] = nil;