Skip to content

@dice-roller/rpg-dice-roller / presenters / TextPresenter

Class: TextPresenter ​

Defined in: src/presenters/TextPresenter.ts:60

Plain text output, matching v5: e.g. 4d6: [3, 5, 2, 6] = 16, with flag symbols after each die value and history rolls joined with "; ". It prints the supplied roll's total as-is: newly evaluated rolls round their total to 2 decimal places, but restored totals need not be rounded.

Maths is written without spaces ([4, 2]+3), function arguments are joined with , (max([5],[2])), and group members are joined with , ({[4, 5], [3]-1}). A member with flags (e.g. dropped, or a target success) is wrapped in parentheses: ([6, 3])d. An expression result is presented without notation or a total; an empty history produces "".

Extends ​

Constructors ​

Constructor ​

new TextPresenter(options?): TextPresenter

Defined in: src/presenters/TextPresenter.ts:64

Parameters ​

options? ​

TextPresenterOptions = {}

Returns ​

TextPresenter

Overrides ​

TreePresenter.constructor

Properties ​

flagSymbols ​

readonly flagSymbols: Readonly<Record<ResultFlag, string>>

Defined in: src/presenters/TextPresenter.ts:61


separator ​

readonly separator: string

Defined in: src/presenters/TextPresenter.ts:62

Methods ​

binary() ​

protected binary(result): string

Defined in: src/presenters/TextPresenter.ts:122

[4, 2]+3

Parameters ​

result ​

BinaryResult

Returns ​

string

Overrides ​

TreePresenter.binary


die() ​

protected die(result, _pool): string

Defined in: src/presenters/TextPresenter.ts:103

6!, 1d

Parameters ​

result ​

DieResult

_pool ​

PoolResult

Returns ​

string

Overrides ​

TreePresenter.die


flags() ​

protected flags(flags): string

Defined in: src/presenters/TextPresenter.ts:74

The symbols for the flags, e.g. ["explode", "drop"] -> !d.

Parameters ​

flags ​

readonly ("max" | "min" | "explode" | "drop" | "re-roll" | "unique" | "critical-success" | "critical-failure" | "compound" | "penetrate" | "re-roll-once" | "target-success" | "target-failure" | "unique-once")[]

Returns ​

string


fn() ​

protected fn(result): string

Defined in: src/presenters/TextPresenter.ts:153

floor([4, 5]/2), max([5],[2])

Parameters ​

result ​

FunctionResult

Returns ​

string

Overrides ​

TreePresenter.fn


formatNumber() ​

protected formatNumber(value): string

Defined in: src/presenters/TextPresenter.ts:79

Formats a number with String(value), including non-finite values.

Parameters ​

value ​

number

Returns ​

string


group() ​

protected group(result): string

Defined in: src/presenters/TextPresenter.ts:108

{[3, 5]+2, ([4])d}

Parameters ​

result ​

GroupResult

Returns ​

string

Overrides ​

TreePresenter.group


history() ​

protected history(history): string

Defined in: src/presenters/TextPresenter.ts:84

The rolls joined with separator; an empty history is an empty string.

Parameters ​

history ​

RollHistory

Returns ​

string

Overrides ​

TreePresenter.history


member() ​

protected member(member): string

Defined in: src/presenters/TextPresenter.ts:113

A group member: [3, 5]+2, or ([3, 5]+2)* with flags.

Parameters ​

member ​

GroupMemberResult

Returns ​

string


number() ​

protected number(result): string

Defined in: src/presenters/TextPresenter.ts:93

Parameters ​

result ​

NumberResult

Returns ​

string

Overrides ​

TreePresenter.number


operand() ​

protected operand(result, minPrecedence): string

Defined in: src/presenters/TextPresenter.ts:141

Parameters ​

result ​

ExpressionResult

minPrecedence ​

number

Returns ​

string


paren() ​

protected paren(result): string

Defined in: src/presenters/TextPresenter.ts:148

([4, 2]*2)

Parameters ​

result ​

ParenResult

Returns ​

string

Overrides ​

TreePresenter.paren


pool() ​

protected pool(result): string

Defined in: src/presenters/TextPresenter.ts:98

[3, 5, 2, 6]

Parameters ​

result ​

PoolResult

Returns ​

string

Overrides ​

TreePresenter.pool


present() ​

present(target): string

Defined in: src/presenters/TreePresenter.ts:30

Dispatches a history, roll, or expression result to the corresponding hook.

Parameters ​

target ​

Presentable

Returns ​

string

Inherited from ​

TreePresenter.present


roll() ​

protected roll(roll): string

Defined in: src/presenters/TextPresenter.ts:89

notation: <result> = total.

Parameters ​

roll ​

Roll<unknown>

Returns ​

string

Overrides ​

TreePresenter.roll


unary() ​

protected unary(result): string

Defined in: src/presenters/TextPresenter.ts:137

-5

Parameters ​

result ​

UnaryResult

Returns ​

string

Overrides ​

TreePresenter.unary


visit() ​

protected visit(result): string

Defined in: src/presenters/TreePresenter.ts:43

Presents a result node with the hook for its type.

Parameters ​

result ​

ExpressionResult

Returns ​

string

Inherited from ​

TreePresenter.visit

MIT Licensed · Credits