Navigation
These archived docs are for Phaser 2.4.4 Phaser 3 docs can be found on newdocs.phaser.io.
Phaser CE docs can be found on the Phaser CE Documentation site.

Constructor

Phaser. RandomDataGenerator

new RandomDataGenerator(seeds)

An extremely useful repeatable random data generator.

Based on Nonsense by Josh Faul https://github.com/jocafa/Nonsense.

The random number genererator is based on the Alea PRNG, but is modified.

  • https://github.com/coverslide/node-alea
  • https://github.com/nquinlan/better-random-numbers-for-javascript-mirror
  • http://baagoe.org/en/wiki/Better_random_numbers_for_javascript (original, perm. 404)
Parameters
Name Type Argument Description
seeds Array.<any> | string <optional>

An array of values to use as the seed, or a generator state (from {#state}).

Source code: math/RandomDataGenerator.js (Line 23)

Public Methods

angle() → {number}

Returns a random angle between -180 and 180.

Returns
number -

A random number between -180 and 180.

Source code: math/RandomDataGenerator.js (Line 298)

between(min, max) → {number}

Returns a random integer between and including min and max. This method is an alias for RandomDataGenerator.integerInRange.

Parameters
Name Type Description
min number

The minimum value in the range.

max number

The maximum value in the range.

Returns
number -

A random number between min and max.

Source code: math/RandomDataGenerator.js (Line 198)

frac() → {number}

Returns a random real number between 0 and 1.

Returns
number -

A random real number between 0 and 1.

Source code: math/RandomDataGenerator.js (Line 160)

integer() → {number}

Returns a random integer between 0 and 2^32.

Returns
number -

A random integer between 0 and 2^32.

Source code: math/RandomDataGenerator.js (Line 148)

integerInRange(min, max) → {number}

Returns a random integer between and including min and max.

Parameters
Name Type Description
min number

The minimum value in the range.

max number

The maximum value in the range.

Returns
number -

A random number between min and max.

Source code: math/RandomDataGenerator.js (Line 184)

normal() → {number}

Returns a random real number between -1 and 1.

Returns
number -

A random real number between -1 and 1.

Source code: math/RandomDataGenerator.js (Line 227)

pick(ary) → {any}

Returns a random member of array.

Parameters
Name Type Description
ary Array

An Array to pick a random member of.

Returns
any -

A random member of the array.

Source code: math/RandomDataGenerator.js (Line 258)

real() → {number}

Returns a random real number between 0 and 2^32.

Returns
number -

A random real number between 0 and 2^32.

Source code: math/RandomDataGenerator.js (Line 172)

realInRange(min, max) → {number}

Returns a random real number between min and max.

Parameters
Name Type Description
min number

The minimum value in the range.

max number

The maximum value in the range.

Returns
number -

A random number between min and max.

Source code: math/RandomDataGenerator.js (Line 213)

sow(seeds)

Reset the seed of the random data generator.

Note: the seed array is only processed up to the first undefined (or null) value, should such be present.

Parameters
Name Type Description
seeds Array.<any>

The array of seeds: the toString() of each value is used.

Source code: math/RandomDataGenerator.js (Line 83)

state(state) → {string}

Gets or Sets the state of the generator. This allows you to retain the values that the generator is using between games, i.e. in a game save file.

To seed this generator with a previously saved state you can pass it as the seed value in your game config, or call this method directly after Phaser has booted.

Call this method with no parameters to return the current state.

If providing a state it should match the same format that this method returns, which is a string with a header !rnd followed by the c, s0, s1 and s2 values respectively, each comma-delimited.

Parameters
Name Type Argument Description
state string <optional>

Generator state to be set.

Returns
string -

The current state of the generator.

Source code: math/RandomDataGenerator.js (Line 310)

timestamp(min, max) → {number}

Returns a random timestamp between min and max, or between the beginning of 2000 and the end of 2020 if min and max aren't specified.

Parameters
Name Type Description
min number

The minimum value in the range.

max number

The maximum value in the range.

Returns
number -

A random timestamp between min and max.

Source code: math/RandomDataGenerator.js (Line 284)

uuid() → {string}

Returns a valid RFC4122 version4 ID hex string from https://gist.github.com/1308368

Returns
string -

A valid RFC4122 version4 ID hex string

Source code: math/RandomDataGenerator.js (Line 239)

weightedPick(ary) → {any}

Returns a random member of array, favoring the earlier entries.

Parameters
Name Type Description
ary Array

An Array to pick a random member of.

Returns
any -

A random member of the array.

Source code: math/RandomDataGenerator.js (Line 271)