{ "c": [ { "actions": { "finish": [], "init": { "custom": "if not _G.WA_RaidBuffMemory_Buffs then\n _G.WA_RaidBuffMemory_Buffs = {}\nend\nlocal worldBuffs = {\n [22888] = 1, -- Rallying Cry of the Dragonslayer\n [24425] = 2, -- Spirit of Zandalar\n [22817] = 3, -- Fengus' Ferocity\n [22820] = 4, -- Slip'kik's Savvy\n [22818] = 5, -- Mol'dar's Moxie\n [15366] = 6, -- Songflower Serenade\n [16609] = 7, -- Warchief's Blessing\n [23768] = 8, -- Sayge's Dark Fortune of Damage\n}\n\n\nlocal function syncStates(allStates, unit)\n local guid = UnitGUID(unit)\n local buffs = _G.WA_RaidBuffMemory_Buffs[guid]\n if not buffs then\n return false\n end\n \n for buff, _ in pairs(worldBuffs) do\n local state = allStates[guid .. \"-\" .. buff]\n if state then\n state.show = false\n state.changed = true\n end\n end\n for _, buff in ipairs(buffs) do\n allStates[guid .. \"-\" .. buff] = {\n unit = unit,\n show = true,\n changed = true,\n icon = select(3, GetSpellInfo(buff)),\n index = worldBuffs[buff],\n spellId = buff,\n }\n end\n return true\nend\n\n\nlocal function updateUnitAuras(unit)\n if not UnitIsConnected(unit) then\n return\n end\n local buffs = {}\n for i = 1, 255 do\n local name, _, _, _, _, _, _, _, _, spellId = UnitBuff(unit, i)\n if spellId == nil then\n break\n end\n if worldBuffs[spellId] then\n table.insert(buffs, spellId)\n end\n end\n _G.WA_RaidBuffMemory_Buffs[UnitGUID(unit)] = buffs\nend\n\n\n\naura_env.eventHandlers = {}\n\nfunction aura_env.eventHandlers.UNIT_AURA(allStates, unitTarget)\n if not unitTarget or unitTarget:sub(0, 4) ~= \"raid\" then\n return false\n end\n updateUnitAuras(unitTarget)\n return syncStates(allStates, unitTarget)\nend\n\n\nfunction aura_env.eventHandlers.GROUP_ROSTER_UPDATE(allStates)\n for unit in WA_IterateGroupMembers() do\n syncStates(allStates, unit)\n end\n -- addon unitframes may be slow to update; need to force frame reanchor after finished reordering\n C_Timer.After(2, function()\n WeakAuras.ScanEvents(\"GROUP_ROSTER_UPDATE_DELAYED\")\n end)\n return true\nend\n\n\nfunction aura_env.eventHandlers.GROUP_ROSTER_UPDATE_DELAYED(allStates)\n return true\nend\n\n\nfunction aura_env.eventHandlers.OPTIONS(allStates)\n for unit in WA_IterateGroupMembers() do\n updateUnitAuras(unit)\n syncStates(allStates, unit)\n end\n return true\nend", "do_custom": true }, "start": [] }, "alpha": 1, "anchorFrameType": "SCREEN", "anchorPoint": "CENTER", "animation": { "finish": { "duration_type": "seconds", "easeStrength": 3, "easeType": "none", "type": "none" }, "main": { "duration_type": "seconds", "easeStrength": 3, "easeType": "none", "type": "none" }, "start": { "duration_type": "seconds", "easeStrength": 3, "easeType": "none", "type": "none" } }, "authorOptions": [], "blendMode": "BLEND", "color": [ 1, 1, 1, 1 ], "conditions": [ { "changes": [ { "property": "color", "value": [ 0.83529411764706, 0, 0, 1 ] } ], "check": { "op": "==", "trigger": 1, "value": "228880", "variable": "spellId" } }, { "changes": [ { "property": "color", "value": [ 0, 0.81176470588235, 0, 1 ] } ], "check": { "op": "==", "trigger": 1, "value": "244250", "variable": "spellId" } }, { "changes": [ { "property": "color", "value": [ 0, 1, 0.68235294117647, 1 ] } ], "check": { "op": "==", "trigger": 1, "value": "228170", "variable": "spellId" } }, { "changes": [ { "property": "color", "value": [ 0.63137254901961, 0, 0.53725490196078, 1 ] } ], "check": { "op": "==", "trigger": 1, "value": "228200", "variable": "spellId" } }, { "changes": [ { "property": "color", "value": [ 0.4156862745098, 0.29411764705882, 0.13725490196078, 1 ] } ], "check": { "op": "==", "trigger": 1, "value": "228180", "variable": "spellId" } }, { "changes": [ { "property": "color", "value": [ 1, 0.50980392156863, 0.67450980392157, 1 ] } ], "check": { "op": "==", "trigger": 1, "value": "153660", "variable": "spellId" } }, { "changes": [ { "property": "color", "value": [ 1, 0.38823529411765, 0, 1 ] } ], "check": { "op": "==", "trigger": 1, "value": "166090", "variable": "spellId" } }, { "changes": [ { "property": "color", "value": [ 0.62352941176471, 0.023529411764706, 1, 1 ] } ], "check": { "op": "==", "trigger": 1, "value": "237680", "variable": "spellId" } } ], "config": [], "cooldown": false, "cooldownEdge": false, "cooldownSwipe": true, "cooldownTextDisabled": false, "desaturate": false, "discrete_rotation": 0, "displayIcon": "", "frameStrata": 1, "height": 16, "icon": true, "iconSource": -1, "id": "RaidBuffMemory_Icon", "information": [], "internalVersion": 45, "inverse": false, "keepAspectRatio": false, "load": { "class": { "multi": [] }, "ingroup": { "multi": { "raid": true }, "single": "raid" }, "raid_role": { "single": "MAINASSIST" }, "size": { "multi": { "none": true }, "single": "none" }, "spec": { "multi": [] }, "talent": { "multi": [] }, "use_combat": false, "use_ingroup": true, "use_never": false, "use_raid_role": true, "use_zone": false, "zone": "Stormwind City", "zoneIds": "" }, "mirror": false, "regionType": "icon", "rotate": false, "rotation": 0, "selfPoint": "CENTER", "semver": "1.0.0", "subRegions": [], "texture": "Interface\\AddOns\\WeakAuras\\Media\\Textures\\Square_FullWhite", "textureWrapMode": "CLAMPTOBLACKADDITIVE", "tocversion": 11307, "triggers": { "1": { "trigger": { "auranames": [ "Arcane Intellect" ], "check": "event", "combinePerUnit": true, "custom": "function(allStates, event, ...)\n return aura_env.eventHandlers[event](allStates, ...)\nend", "customVariables": "{\n spellId = \"number\",\n}", "custom_type": "stateupdate", "debuffType": "HELPFUL", "duration": "1", "event": "Cooldown Progress (Spell)", "events": "OPTIONS GROUP_ROSTER_UPDATE GROUP_ROSTER_UPDATE_DELAYED UNIT_AURA", "genericShowOn": "showOnCooldown", "ignoreDisconnected": false, "names": [], "realSpellName": 0, "showClones": true, "spellIds": [], "spellName": 0, "subeventPrefix": "SPELL", "subeventSuffix": "_CAST_START", "type": "custom", "unevent": "auto", "unit": "group", "useName": true, "use_genericShowOn": true, "use_spellName": true, "use_track": true }, "untrigger": [] }, "activeTriggerMode": -10 }, "uid": "AqbyydbWK)v", "url": "https://wago.io/2ZE03KZa7/1", "useTooltip": true, "version": 1, "wagoID": "2ZE03KZa7", "width": 16, "xOffset": 0, "yOffset": 0, "zoom": 0.25 } ], "d": { "actions": { "finish": [], "init": [], "start": [] }, "align": "RIGHT", "anchorFrameType": "SCREEN", "anchorPerUnit": "UNITFRAME", "anchorPoint": "BOTTOMLEFT", "animate": false, "animation": { "finish": { "duration_type": "seconds", "easeStrength": 3, "easeType": "none", "type": "none" }, "main": { "duration_type": "seconds", "easeStrength": 3, "easeType": "none", "type": "none" }, "start": { "duration_type": "seconds", "easeStrength": 3, "easeType": "none", "type": "none" } }, "arcLength": 360, "authorOptions": [], "backdropColor": [ 1, 1, 1, 0.5 ], "border": false, "borderBackdrop": "Blizzard Tooltip", "borderColor": [ 0, 0, 0, 1 ], "borderEdge": "Square Full White", "borderInset": 1, "borderOffset": 4, "borderSize": 2, "columnSpace": 1, "conditions": [], "config": [], "constantFactor": "RADIUS", "frameStrata": 1, "fullCircle": true, "gridType": "RU", "gridWidth": 6, "groupIcon": 134153, "grow": "GRID", "id": "RaidBuffMemory", "information": [], "internalVersion": 45, "limit": 5, "load": { "class": { "multi": [] }, "size": { "multi": [] }, "spec": { "multi": [] }, "talent": { "multi": [] }, "zoneIds": "" }, "radius": 200, "regionType": "dynamicgroup", "rotation": 0, "rowSpace": 1, "scale": 1, "selfPoint": "BOTTOMLEFT", "semver": "1.0.0", "sort": "none", "space": 0, "stagger": 0, "subRegions": [], "tocversion": 11307, "triggers": [ { "trigger": { "debuffType": "HELPFUL", "event": "Health", "names": [], "spellIds": [], "subeventPrefix": "SPELL", "subeventSuffix": "_CAST_START", "type": "aura2", "unit": "player" }, "untrigger": [] } ], "uid": "LWOsqFUB3PR", "url": "https://wago.io/2ZE03KZa7/1", "useAnchorPerUnit": true, "useLimit": false, "version": 1, "wagoID": "2ZE03KZa7", "xOffset": 0, "yOffset": 0 }, "m": "d", "s": "3.3.0", "v": 1421, "wagoID": "2ZE03KZa7" }