Constructor
new PoolTerm()
Example
// Keep the highest of the 3 roll expressions
let pool = new PoolTerm({
rolls: ["4d6", "3d8 - 1", "2d10 + 3"],
modifiers: ["kh"]
});
pool.evaluate();
Members
CLOSE_REGEXP :RegExp
A regular expression pattern used to identify the closing of a dice pool expression.
Type:
dice
Return an Array of each individual DiceTerm instances contained within the PoolTerm.
expression
modifiers :Array.<string>
The string modifiers applied to resolve the pool
Type:
- Array.<string>
MODIFIERS :Object.<string, function()>
Define the modifiers that can be used for this particular DiceTerm type.
Type:
- Object.<string, function()>
OPEN_REGEXP :RegExp
The regular expression pattern used to identify the opening of a dice pool expression.
Type:
results :Array.<DiceTermResult>
The array of dice pool results which have been rolled
Type:
rolls :Array.<Roll>
Each component term of a dice pool is evaluated as a Roll instance
Type:
SERIALIZE_ATTRIBUTES
terms :Array.<string>
The original provided terms to the Dice Pool
Type:
- Array.<string>
total
values :Array.<number>
Return an array of rolled values which are still active within the PoolTerm
Type:
- Array.<number>
Methods
(static) _fromData()
(static) fromExpression(formula, optionsopt) → {PoolTerm|null}
Given a string formula, create and return an evaluated PoolTerm object
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
formula |
string | The string formula to parse |
|
options |
object |
<optional> |
Additional options applied to the PoolTerm |
Returns:
The evaluated PoolTerm object or null if the formula is invalid
- Type
- PoolTerm | null
(static) fromRolls(rolls) → {RollTerm}
Create a PoolTerm by providing an array of existing Roll objects
Parameters:
Name | Type | Description |
---|---|---|
rolls |
Array.<Roll> | An array of Roll objects from which to create the pool |
Returns:
The constructed PoolTerm comprised of the provided rolls
- Type
- RollTerm
(async) _evaluate()
_evaluateModifier()
- See:
-
- DiceTerm#_evaluateModifier
Use the same logic as for the DiceTerm to avoid duplication
_evaluateModifiers()
- See:
-
- DiceTerm#_evaluateModifiers
Use the same logic as for the DiceTerm to avoid duplication
_evaluateSync()
alter(…args) → {PoolTerm}
Alter the DiceTerm by adding or multiplying the number of dice which are rolled
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
args |
Array.<any> |
<repeatable> |
Arguments passed to each contained Roll#alter method. |
Returns:
The altered pool
- Type
- PoolTerm
countFailures(modifier)
Count the number of failed results which occurred in a given result set. Failures are counted relative to some target, or relative to the lowest possible value if no target is given. Applying a count-failures modifier to the results re-casts all results to 1 (failure) or 0 (non-failure)
6d6cf Count the number of dice which rolled a 1 as failures 6d6cf<=3 Count the number of dice which rolled less than 3 as failures 6d6cf>4 Count the number of dice which rolled greater than 4 as failures
Parameters:
Name | Type | Description |
---|---|---|
modifier |
string | The matched modifier query |
countSuccess(modifier)
Count the number of successful results which occurred in the pool. Successes are counted relative to some target, or relative to the maximum possible value if no target is given. Applying a count-success modifier to the results re-casts all results to 1 (success) or 0 (failure)
20d20cs Count the number of dice which rolled a 20 20d20cs>10 Count the number of dice which rolled higher than 10 20d20cs<10 Count the number of dice which rolled less than 10
Parameters:
Name | Type | Description |
---|---|---|
modifier |
string | The matched modifier query |
drop(modifier)
Keep a certain number of highest or lowest dice rolls from the result set.
{1d6,1d8,1d10,1d12}dl3 Drop the 3 worst results in the pool {1d12,6}dh Drop the highest result in the pool
Parameters:
Name | Type | Description |
---|---|---|
modifier |
string | The matched modifier query |
keep(modifier)
Keep a certain number of highest or lowest dice rolls from the result set.
{1d6,1d8,1d10,1d12}kh2 Keep the 2 best rolls from the pool {1d12,6}kl Keep the lowest result in the pool
Parameters:
Name | Type | Description |
---|---|---|
modifier |
string | The matched modifier query |