Hi, Minibubble!
Macros all work like this:
Code:
/command [condition1] parameter1; [condition2] parameter2; ... ; final_parameter
Explaining:the command will check "condition1". If it's true, it will execute "parameter1" and stop there, so it won't execute any other parameters ahead. If "condition1" is false, it will jump "parameter1" and check "condition2". If "condition2" is true, it executes "parameter2". If it's false, it will jump to next condition/parameter combo, until it reaches the "final_parameter" and executes it (if the final parameter also has a condition and it's false, the command does nothing).
So, when you do:
Code:
/cast [mod:shift] Skill1; Skill2
If will check if shift is pressed. If it is, then it uses Skill1. If it's false, it will jump to next condition/parameter, which is to use Skill2 (it has no conditions, so it will always execute it if shift is not pressed).
The /castsequence commands works just like that, but the parameters are sequences (including reset conditions), not skills. So, a command like:
Code:
/castsequence [mod:shift] reset=8 Skill1, Skill2; reset=6 Skill3, Skill4
Contains 2 sequences. If you press shift, you will advance the sequence "reset=8 Skill1, Skill2". If you do not press shift, you will advance the sequence "reset=6 Skill3, Skill4". Notice that both sequences are independent, so advancing one won't advance the other. Also notice that the shift condition applies to the whole sequence, not to individual skills within it.
Tresston's example is a very good example. But notice that it can also be worded like this:
Code:
/castsequence [mod:shift]reset=180 Barkskin, Survival Instincts; [stance:3,@player] Healing Touch; [stance:1]Savage Defense
It becomes a single command. Notice that I used Healing Touch and Savage Defense as if they were sequences (1 skill sequences). In this example, pressing shift will execute the Barkskin first. Pressing shift again will to the Survival Instincts.
Not pressing shift will either use Healing Toush if you are in stance 3, or use Savage Defense if you are in stance 1. If you are in neither stance, not pressing shift will make your command do nothing, because there's no conditionless parameter at the end of the command.