switch (roll option): Difference between revisions
Jump to navigation
Jump to search
Verisimilar (talk | contribs) mNo edit summary |
No edit summary |
||
Line 39: | Line 39: | ||
|also= | |also= | ||
{{func|if}}, | {{func|if}}, | ||
{{roll|if}} | {{roll|if}}, | ||
[[Introduction to Macro Branching]] | |||
}} | }} | ||
[[Category:Branching Roll Option]] | [[Category:Branching Roll Option]] |
Revision as of 23:27, 14 July 2009
[switch():] Roll Option
* Introduced in version 1.3b46
Chooses among several options and executes code based on the expression.
Usage
[switch(expression):
case case1: body1;
case case2: body2;
default: defaultBody
]
Parameters
expression
- The regular expression that determines which case is executed. Since this is a regular expression, metacharacters such as*
and()
will need to have backslashes in front of them if you want to match them literally.case
- A potential match for theexpression
, possesses a correspondingbody
that is executed if a match is made.default
- If theexpression
finds no matches within thecase
s, then thedefaultBody
is executed.
Examples
[h:powerType="at-will"]
[switch(powerType):
case "at-will": "You may use this power as much as you like";
case "encounter": "You may only use this power once per encounter";
case "daily": "You may only use this power once per day"]
Outputs You may use this power as much as you like
[h:powerType=".*sword.*"]
[switch(powerType):
case "flail": "one-handed weapon; two-handed does Str*2 damage";
case "shortsword": "used for jabs, so is a puncturing weapon";
case "longsword": "a slashing weapon"]
Outputs used for jabs, so is a puncturing weapon
. Notice that the first matching clause was the one that the [switch():] option found.