Servicio azar
Referencia del servicio azar. Números y elecciones al azar que salen de la semilla de la partida, para que la partida se pueda repetir igual.
Corresponde aFormato 1, API 1 Para quien escribe código Esta página se genera desde las fuentes del SDK.
En esta página
Números y elecciones al azar que salen de la semilla de la partida, para que la partida se pueda repetir igual.
Los tipos que aparecen en las firmas (Vec3, Texto, el selector) están en la referencia de la API.
Funciones y propiedades de azar#
azar.numero#
azar.numero(): number // [0, 1)Decimal en [0, 1).
azar.entero#
azar.entero(min: number, max: number): numberEntero entre min y max, ambos incluidos.
De docs/EJEMPLOS.md, «azar»:
const cantidad = azar.entero(3, 6);azar.entre#
azar.entre(min: number, max: number): numberDecimal en [min, max).
De docs/EJEMPLOS.md, «mundo: crear piezas desde el script»:
const moneda = mundo.crear({
forma: 'cilindro',
posicion: [azar.entre(-10, 10), 1, azar.entre(-10, 10)],
rotacion: [90, 0, 0],
tamano: [0.9, 0.16, 0.9],
material: { color: 'ambar', acabado: 'brillante' },
solida: false,
etiquetas: ['moneda']
});azar.elegir#
azar.elegir<T>(lista: T[]): TUn elemento de la lista, al azar.
De docs/EJEMPLOS.md, «azar»:
const premio = azar.elegir(['moneda', 'estrella', 'llave']);azar.mezclar#
azar.mezclar<T>(lista: T[]): T[]Una copia mezclada de la lista.
De docs/EJEMPLOS.md, «azar»:
const losas = azar.mezclar(mundo.piezas('losa'));azar.suerte#
azar.suerte(p: number): booleantrue con probabilidad p (0 a 1).
De docs/EJEMPLOS.md, «azar»:
if (azar.suerte(0.25)) juego.registro('Partida con premio doble:', premio, cantidad);Ejemplos completos#
Scripts completos de docs/EJEMPLOS.md. Cada uno supone una escena con lo que nombra, y las claves de texto (interfaz.t('...')) deben existir en textos de juego.json.
azar#
import { azar, juego, mundo } from '@greengames/sdk';
juego.alIniciar(() => {
const losas = azar.mezclar(mundo.piezas('losa'));
for (const trampa of losas.slice(0, 3)) trampa.etiquetar('peligro'); // tres trampas distintas cada partida
const premio = azar.elegir(['moneda', 'estrella', 'llave']);
const cantidad = azar.entero(3, 6);
if (azar.suerte(0.25)) juego.registro('Partida con premio doble:', premio, cantidad);
});Sigue con#
- Servicio reloj
- Referencia de la API: los once servicios y los tipos comunes.
- Scripts: las reglas de un script y cómo corre dentro de la sala.