Add multiple spell ids support to AuraTrigger

Before AuraTrigger only supported a single spell id but now multiple
spells can activate the same trigger.

Related changes:
- Change the glue between AuraList and AuraTrigger to match this new functionality.
- Update the default frame config
This commit is contained in:
omicron committed 2026-06-26 01:25:10 +02:00
1 parent 8be0732930
commit eaebe470b9
3 files changed
+127 -56

No files matched your search

+37 -24
View File
@@ -31,6 +31,19 @@ local colors = {
light_blue = { 0.7, 0.7, 1 },
}
---@param list number[]
---@return table<number, true>
local function set(list)
local s = {}
for _, v in ipairs(list) do
s[v] = true
end
return s
end
local AURAS_PRIEST_RENEW = set({ 139, 6074, 6075, 6076, 6077, 6078, 10927, 10928, 10929, 25315, 25221, 25222 })
local AURAS_PRIEST_PWS = set({ 17, 592, 600, 3747, 6065, 6066, 10898, 10899, 10900, 10901, 25217, 25218 })
local function RangeConfig()
local _, class = UnitClass("player")
if class == "SHAMAN" then
@@ -41,7 +54,7 @@ local function RangeConfig()
}
elseif class == "PRIEST" then
return {
friendly = "Flash Heal",
friendly = "Heal",
enemy = "Smite",
fade = 0.2,
}
@@ -134,15 +147,15 @@ local function MouseConfig()
button = "wheel-up",
mods = {},
kind = "macro",
data = "/use [@UNIT,help]Flash Heal",
data = "/use [@UNIT,help]Lesser Heal",
},
{ button = "wheel-down", mods = {}, kind = "macro", data = "/use [@UNIT,help]Renew" },
{ button = "wheel-down", mods = {}, kind = "macro", data = "/use [@UNIT,help]Heal" },
-- alt
{ button = "mouse1", mods = { alt = true }, kind = "spell", data = "Power Word: Life" },
{ button = "mouse2", mods = { alt = true }, kind = "spell", data = "Pain Suppression" },
{ button = "mouse3", mods = { alt = true }, kind = "spell", data = "Power Infusion" },
{ button = "wheel-up", mods = { alt = true }, kind = "spell", data = "Rapture" },
{ button = "wheel-up", mods = { alt = true }, kind = "spell", data = "Renew" },
{ button = "wheel-down", mods = { alt = true }, kind = "spell", data = "Power Word: Shield" },
-- Shift
@@ -282,7 +295,7 @@ local function TriggerClassConfig()
return {
{
kind = "AuraTrigger",
spellId = 32594,
spellIds = set({ 32594 }),
own = true, -- Second Earth Shield on yourself
indicator = {
kind = "SquareIndicator",
@@ -296,7 +309,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 29203,
spellIds = set({ 29203 }),
own = true, -- Healing Way
indicator = {
kind = "SquareIndicator",
@@ -310,7 +323,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 16237,
spellIds = set({ 16237 }),
own = true, -- Ancestral Fortitude
indicator = {
kind = "SquareIndicator",
@@ -338,7 +351,7 @@ local function TriggerClassConfig()
return {
{
kind = "AuraTrigger",
spellId = 17,
spellIds = AURAS_PRIEST_PWS,
own = true, -- Power Word: Shield
indicator = {
kind = "SquareIndicator",
@@ -352,7 +365,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 33206,
spellIds = set({ 33206 }),
own = true, -- Pain Suppression
indicator = {
kind = "SquareIndicator",
@@ -367,7 +380,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 41635,
spellIds = set({ 41635 }),
own = true, -- Prayer of Mending
indicator = {
kind = "SquareIndicator",
@@ -381,7 +394,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 139,
spellIds = AURAS_PRIEST_RENEW,
own = true, -- Renew
indicator = {
kind = "SquareIndicator",
@@ -395,7 +408,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 194384,
spellIds = set({ 194384 }),
own = true, -- Atonement
indicator = {
kind = "SquareIndicator",
@@ -410,7 +423,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 10060,
spellIds = set({ 10060 }),
own = true, -- Power Infusion
indicator = {
kind = "SquareIndicator",
@@ -438,7 +451,7 @@ local function TriggerClassConfig()
return {
{
kind = "AuraTrigger",
spellId = 287280, -- Glimmer of Light
spellIds = set({ 287280 }), -- Glimmer of Light
own = true,
indicator = {
kind = "SquareIndicator",
@@ -453,7 +466,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 25771, -- Forbearance
spellIds = set({ 25771 }), -- Forbearance
indicator = {
kind = "SquareIndicator",
size = 17,
@@ -467,7 +480,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 53563, -- Beacon of Light
spellIds = set({ 53563 }), -- Beacon of Light
own = true,
indicator = {
kind = "SquareIndicator",
@@ -480,7 +493,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 156910, -- Beacon of Faith
spellIds = set({ 156910 }), -- Beacon of Faith
own = true,
indicator = {
kind = "SquareIndicator",
@@ -493,7 +506,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 200025, -- Beacon of Virtue
spellIds = set({ 200025 }), -- Beacon of Virtue
own = true,
indicator = {
kind = "SquareIndicator",
@@ -506,7 +519,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 1044, -- Blessing of Freedom
spellIds = set({ 1044 }), -- Blessing of Freedom
own = true,
indicator = {
kind = "SquareIndicator",
@@ -520,7 +533,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 1111, -- Blessing of Spellwarding
spellIds = set({ 1111 }), -- Blessing of Spellwarding
own = true,
indicator = {
kind = "SquareIndicator",
@@ -534,7 +547,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 1022, -- Blessing of Protection
spellIds = set({ 1022 }), -- Blessing of Protection
own = true,
indicator = {
kind = "SquareIndicator",
@@ -548,7 +561,7 @@ local function TriggerClassConfig()
},
{
kind = "AuraTrigger",
spellId = 6940, -- Blessing of Saccrifice
spellIds = set({ 6940 }), -- Blessing of Saccrifice
own = true,
indicator = {
kind = "SquareIndicator",
@@ -596,7 +609,7 @@ local function MakeDebuffTrigger(slot, spellid, color, stacks)
end
return {
kind = "AuraTrigger",
spellId = spellid,
spellIds = set({ spellid }),
indicator = {
kind = "SquareIndicator",
size = 15,
@@ -676,7 +689,7 @@ local function TriggerConfig()
-- Some more debuffs in the bottom row
table.insert(triggers, {
kind = "AuraTrigger",
spellId = 240443, -- Bursting
spellIds = set({ 240443 }), -- Bursting
indicator = {
kind = "SquareIndicator",
size = 17,