There is a macro you can use to cast drain soul, and to delete the last shard in your soul bag. I'm new to writing scripts but I modified the script I found here:
http://www.wowhead.com/forums&topic=265 ... lete-shard- Code: Select all
/cast Drain Soul(Rank 1)
/run local a=GetBagName(4); if a=="Core Felcloth Bag" or a=="Felcloth Bag" or a=="Soul Pouch" or a=="Box of Souls" or a=="Small Soul Pouch" then PickupContainerItem(4,GetContainerNumSlots(4)) DeleteCursorItem() else end
The macro just deletes the bottom-right item in the left-most bag. Since soul shards fill up in your soul bag from top-left to bottom-right, this only deletes a shard if your soul bag is full, then the soul shard is replaced when your target dies while being drained. I just added a check to see if the bag is a soul bag so that I don't accidentally delete anything other than soul shards. Using this I never have soul shards clutter my regular bags while soloing and draining to gain Improved Drain Soul buff, and my soul bag is always full. Make sure that your soul bag is your left-most bag for it to work.
And finally, even though I added the check to avoid accidentally deleting items except for soul shards, I make no guarantees so use at your own risk.