#showtooltip
/cast [mod:shift,@mouseover,help,nodead] [mod:shift] Lesser Healing Wave; [mod:alt,@mouseover,help,nodead] [mod:alt] Lesser Healing Wave(Rank 1); [@mouseover,help,nodead] [] Lesser Healing Wave(Rank 4)
You’ve really just been over-thinking things and as a result you’re adding redundant modifiers.
Macros are executed left to right and stop at the first condition set that returns true. So if you’ve got mod:shift
in one set followed by mod:alt
in another. It’s implied that shift being pressed has already “been used up” by the time you get to the alt set and you don’t need to tell the alt condition set to not use shift.
As far as ensuring @unit
conditions fall back, like @mouseover
, just remember to always include an existence check: exists
, help
, or harm
pick one. If you don’t then the game assumes you always have a valid whatever and won’t move on.