I was annoyed by too many soul shards in my bags.
I wasn't satisfied with the existing macros so i mad my own one.
This macro will run through all items in all your bags and delete soul shards over your defined threshold.
For this macro to work you need the addon "Super Macro".
After the addon in installed create a new macro.
Add this code in the right text area (extended lua code):
function delShards(number) i=1; for bag = 0,4,1 do for slot = 1, GetContainerNumSlots(bag), 1 do local name = GetContainerItemLink(bag,slot); if name and string.find(name,"Soul Shard") then if i > number then DEFAULT_CHAT_FRAME:AddMessage("Deleting "..name.." "..i); PickupContainerItem(bag,slot); DeleteCursorItem(); end; i=i+1; end; end; end; end;
Add this code to the left text area:
/script delShards(5)
In this example all shard above 5 will be deleted. You can enter any number there.
You even can combine the code on the left with a spell if you want.
Like this:
/cast Drain Soul(Rank 1)
/script delShards(5)
This casts Drain Soul and deletes a shard at the same time.
Here is an example of how it should look like with a different macro tho:
Hope this helps someone.
Greetings