the exclamation wont cast skill if its currently in use.
Works for all commands, yea.
Not sure about the cooldown, but because of the GCD there is a i believe 1 - 2 sec CD so you wont accidently unstealth unless you are really spamming the button.
The only problem that I have with these macros is that I like to use the same hotkey to cancel my form and go into caster without having to have another keybind.
Or you can combine ravage if prowling, shred if you’re not, and charge if in bear form. Again, this is so you only have to have one keybind for common actions.
To further explain why you cannot have the same bind to prowl and unprowl:
Your first conditional checks if you’re in cat, if yes, go stealth.
If first conditional isn’t true, moves on to second one.
Now since you’re in stealth and you’re not in combat, second conditional is true, so it’ll ravage.
So now you’re in combat, that means first and second conditionals are not true, so it’ll go to the third one, and does ferocious bite.
So you’ve killed the mob, and you’re back out of combat. You hit your bind.
Your first conditional will now be true since you’re not in combat and is in cat, it’ll cast Prowl to stealth.
The only workaround I have for this is I have my #3 bind with that macro. And my #7 bind with the normal Prowl spell. That way, if I’m not in combat but I want to leave stealth, I hit #7.
EDIT: Exactly what are you trying to do with your current binding? Perhaps I can help. I didn’t read the part clearly where you mentioned you wanted to go into caster with same bind.
OMG Dude you are the man! I can’t believe this works! I have wanting this function/macro since launch! If I could pay you I would, this is the greatest thing ever! Thank you soooo much for posting this!
try
/cast [noform:2] !cat form
/cast [form:2] prowl
looks contradictory but it prevents you from leaving cat form as a cat but you can stealth and become visible again you can easily use/keybind alt+1,2,3,4, for your main forms or use a /cast [stance:X] stance name before you spell that needs to be in a certain stance it will require if on the GCD to press twice. like this
/cast [nomod,stance:4] Starsurge
/cast [nomod,stance:0/1/2/3/5/6] Moonkin Form
or something like this
/cast [nomod] solar wrath
/cast [mod:alt,stance:0/1/2/3/5/6] Moonkin Form
/cast [mod:alt,stance:4] lunar strike
but its the same thing as saying cast in all listed forms. The other is more compact and simple and says dont cast me in the form you tell it which is usually the form you want.