Code:
function()
local flameBOL_up = false
if not IsInGroup() then --If Player is solo, check only player.
local has_beaconLight , _, _, _, _, _, expiration = UnitAura("player", "Beacon of Light", nil, "PLAYER")
local has_eternalFlame , _, _, _, _, _, flameExpire = UnitAura("player", "Eternal Flame", nil, "PLAYER")
if (has_beaconLight and has_eternalFlame) then
flameBOL_up = true
end
elseif IsInRaid() then --if Player is in raid, check all raid members
local group_size = GetNumGroupMembers()
for i=1, group_size do
local has_beaconLight, _, _, _, _, _, expiration = UnitAura("raid"..i , "Beacon of Light", nil, "PLAYER")
local has_eternalFlame, _, _, _, _, _, flameExpire = UnitAura("raid"..i , "Eternal Flame", nil, "PLAYER")
if (has_beaconLight and has_eternalFlame) then
flameBOL_up = true
end
end
else --if player is in a party, check all other party members and then check player.
local group_size = GetNumGroupMembers() - 1
for i=1, group_size do
local has_beaconLight, _, _, _, _, _, expiration = UnitAura("party"..i , "Beacon of Light", nil, "PLAYER")
local has_eternalFlame, _, _, _, _, _, flameExpire = UnitAura("party"..i , "Eternal Flame", nil, "PLAYER")
if (has_beaconLight and has_eternalFlame) then
flameBOL_up = true
end
end
local has_beaconLight, _, _, _, _, _, expiration = UnitAura("player", "Beacon of Light", nil, "PLAYER")
local has_eternalFlame, _, _, _, _, _, flameExpire = UnitAura("player", "Eternal Flame", nil, "PLAYER")
if (has_beaconLight and has_eternalFlame) then
flameBOL_up = true
end
end
return flameBOL_up
end
Custom Untrigger is the same as above, except for I just "return not flameBOL_up"