RNG:

rng: RandomGenerator

gen(): number

Generate a random number in [0-1).

const rng = new RNG({ type: "lce", seed: Date.now() })
const value = rng.gen() // Returns a number in [0-1)

returnsA number in [0-1).

save(): string

Save the rng internal state to a string.

load(data: string ): boolean

Load the rng internal state from a string.

genNumber(a: number , b: number ): number

Generate a random number between two values.

parama- The minimum value.

paramb- The maximum value.

const rng = new RNG({ type: "lce", seed: Date.now() })
const value = rng.genNumber(10, 20) // Returns a number in [10,20)

returnsA number between a and b.

genInteger(max: number ): number

Generate a random integer in [0, max).

parammax- The maximum value.

returnsA number in [0, max).

genVec2(a: Vec2 , b: Vec2 ): Vec2

Generate a random 2D vector between two vectors.

parama- The minimum vector.

paramb- The maximum vector.

const rng = new RNG({ type: "lce", seed: Date.now() })
const vec = rng.genVec2(vec2(0,0), vec2(100,100))

returnsA vector between vectors a and b.

genColor(a: Color , b: Color ): Color

Generate a random color between two colors.

parama- The first color.

paramb- The second color.

const rng = new RNG({ type: "lce", seed: Date.now() })
const color = rng.genColor(rgb(0,0,0), rgb(255,255,255))

returnsA color between colors a and b.

genAny<T>(args: [ ] | [ T ] | [ T, T ] ): T

Generate a random value of a specific type.

paramargs- No args for [0-1], one arg for [0-arg], or two args for [arg1-arg2].

const rng = new RNG({ type: "lce", seed: Date.now() })
const val = rng.genAny(0, 100) // Number between 0-100
const vec = rng.genAny(vec2(0,0), vec2(100,100)) // Vec2
const col = rng.genAny(rgb(0,0,0), rgb(255,255,255)) // Color

returnsA random value.