mirror of
https://github.com/brues-code/SuperCleveRoidMacros.git
synced 2026-09-16 03:38:00 +00:00
Add [equipset]/[noequipset] conditionals for equipment sets
Checks whether a saved ClassicAPI equipment set is currently equipped, via C_EquipmentSet.GetEquipmentSetInfo's isEquipped flag (wrapped as ClassicAPI.IsEquipmentSetEquipped). Named [equipset] rather than [set] to avoid colliding with the existing tier/item-set piece-count conditional. Supports OR-lists ([equipset:Raid/Farm]) and negation ([noequipset:PvP]). Pairs with the conditional /equipset command: swap with one, branch on the other.
This commit is contained in:
@@ -5836,6 +5836,26 @@ CleveRoids.Keywords = {
|
||||
end, conditionals, "noset")
|
||||
end,
|
||||
|
||||
-- [equipset:Name] — true if the saved equipment set "Name" is currently
|
||||
-- equipped (ClassicAPI equipment manager, distinct from [set] tier pieces).
|
||||
-- [equipset:Raid/PvP] = either set equipped. Names are case-sensitive; use _
|
||||
-- for spaces, e.g. [equipset:My_Raid_Set].
|
||||
equipset = function(conditionals)
|
||||
return Multi(conditionals.equipset, function(v)
|
||||
local name = (type(v) == "table") and v.name or v
|
||||
return CleveRoids.ClassicAPI.IsEquipmentSetEquipped(name)
|
||||
end, conditionals, "equipset")
|
||||
end,
|
||||
|
||||
-- [noequipset:Name] — true if that equipment set is NOT currently equipped.
|
||||
-- [noequipset:Raid/PvP] = neither equipped (De Morgan's).
|
||||
noequipset = function(conditionals)
|
||||
return NegatedMulti(conditionals.noequipset, function(v)
|
||||
local name = (type(v) == "table") and v.name or v
|
||||
return not CleveRoids.ClassicAPI.IsEquipmentSetEquipped(name)
|
||||
end, conditionals, "noequipset")
|
||||
end,
|
||||
|
||||
-- [inbag:Item] — true if item exists in bags or equipped
|
||||
-- [inbag:Item<12] — true if bag count of Item is less than 12
|
||||
-- Supports multi-value: [inbag:Item1/Item2 inbag:Item3] = (Item1 OR Item2) AND Item3
|
||||
|
||||
Reference in New Issue
Block a user