Hi. I spended a little time on trying to do vanilla version of modifier macros implemented in TBC that look like
/cast [mod:shift] Greater Heal
/cast [mod:alt] Flash Heal
/cast [mod:ctrl] Dispell Magic
It changes casted spell depending on what else are you holding. Saves bars and can be used for self-casts too.
So, in pre-bc it should looks like this, for example:
/script c=IsControlKeyDown()if(c)then CastSpellByName('Dispell Magic') end
/script d=IsAltKeyDown()if(d)then CastSpellByName('Flash Heal', 1) end
/script e=IsShiftKeyDown()if(e)then CastSpellByName('Flash Heal') end
/cast Greater Heal
It causes that, if are you holding SHIFT while pressing macro, you will cast Flash heal on your target, Dispell Magic if you are holding CTRL, Flash Heal on you while pressing ATL and Greater Heal on your target while you are not pressing nothing else. As you can see, adding ", 1" forces spell to be casted on you. And "/cast Greater heal" have to be at the end, so system firstly check conditions, than do Greater.
You can write any spell or action you want instead of that ones, ofc.
Maybe it will help to someone.
Bye