Foundry Virtual Tabletop - API Documentation - Version 14
    Preparing search index...

    A type of RollTerm used to represent static numbers.

    Hierarchy (View Summary)

    Index

    Properties

    _evaluated: boolean = false

    An internal flag for whether the term has been evaluated

    _root: Roll

    A reference to the Roll at the root of the evaluation tree.

    isIntermediate: boolean = false

    Is this term intermediate, and should be evaluated first as part of the simplification process?

    number: number

    The term's numeric value.

    options: object

    An object of additional options which describes and modifies the term.

    FLAVOR_REGEXP: RegExp = ...

    A regular expression which identifies term-level flavor text

    FLAVOR_REGEXP_STRING: string = "(?:\\[([^\\]]+)\\])"

    A regular expression pattern which identifies optional term-level flavor text

    REGEXP: RegExp = ...

    A regular expression used to match a term of this type

    SERIALIZE_ATTRIBUTES: string[] = ...

    An array of additional attributes which should be retained when the term is serialized

    Accessors

    • get expression(): string

      A string representation of the formula expression for this RollTerm, prior to evaluation.

      Returns string

    • get flavor(): string

      Optional flavor text which modifies and describes this term.

      Returns string

    • get formula(): string

      A string representation of the formula, including optional flavor text.

      Returns string

    • get isDeterministic(): boolean

      Whether this term is entirely deterministic or contains some randomness.

      Returns boolean

    • get resolver(): RollResolver

      A reference to the RollResolver app being used to externally resolve this term.

      Returns RollResolver

    • get total(): number

      A string or numeric representation of the final output for this term, after evaluation.

      Returns number

    Methods

    • Evaluate the term, processing its inputs and finalizing its total.

      Parameters

      • Optionaloptions: { allowStrings?: boolean; maximize?: boolean; minimize?: boolean } = {}

        Options which modify how the RollTerm is evaluated

        • OptionalallowStrings?: boolean

          If true, string terms will not throw an error when evaluated.

        • Optionalmaximize?: boolean

          Maximize the result, obtaining the largest possible value.

        • Optionalminimize?: boolean

          Minimize the result, obtaining the smallest possible value.

      Returns RollTerm | Promise<RollTerm>

      Returns a Promise if the term is non-deterministic.

    • Serialize the RollTerm to a JSON string which allows it to be saved in the database or embedded in text. This method should return an object suitable for passing to the JSON.stringify function.

      Returns RollTermData

    • Protected

      Evaluate the term.

      Parameters

      • Optionaloptions: object = {}

        Options which modify how the RollTerm is evaluated, see RollTerm#evaluate

      Returns RollTerm | Promise<RollTerm>

      Returns a Promise if the term is non-deterministic.

    • Reconstruct a RollTerm instance from a provided JSON string

      Parameters

      • json: string

        A serialized JSON representation of a DiceTerm

      Returns RollTerm

      A reconstructed RollTerm from the provided JSON

    • Construct a term of this type given a matched regular expression array.

      Parameters

      • match: RegExpMatchArray

        The matched regular expression array

      Returns NumericTerm

      The constructed term

    • Determine if evaluating a given RollTerm with certain evaluation options can be done so deterministically.

      Parameters

      • term: RollTerm

        The term.

      • Optionaloptions: { maximize?: boolean; minimize?: boolean } = {}

        Options for evaluating the term.

        • Optionalmaximize?: boolean

          Force the result to be maximized.

        • Optionalminimize?: boolean

          Force the result to be minimized.

      Returns boolean

    • Determine whether a string expression matches a NumericTerm

      Parameters

      • expression: string

        The expression to parse

      Returns RegExpMatchArray | null

    • Protected

      Define term-specific logic for how a de-serialized data object is restored as a functional RollTerm

      Parameters

      Returns RollTerm

      The re-constructed RollTerm object