CECA / REGISTRO DE MONEDA GRABADA

Consulta el registro de dos caras antes de lanzar

Este libro grabado relaciona el editor actual de moneda: cinco IDs de diseño seleccionables, controles visibles de botón y arrastre, expresión de resultado, valores de movimiento, registro mostrado, valores guardados, sonido y confeti.

Abrir moneda

Selector de motivos / cinco IDs grabados

El selector contiene exactamente cinco IDs: euro, dollar, chf, gbp y gold. El editor resuelve nombres y etiquetas de cara desde sus objetos de diseño y asignación localizada.

  • euro
  • dollar
  • chf
  • gbp
  • gold

Los cinco IDs identifican diseños seleccionables en esta interfaz; este registro no les asigna otro atributo.

Riel de activación / botón, arrastre, tecla

Usa el botón o el control de arrastre visibles. El botón llama a flipCoin(1.5). isFlipping evita otra ruta de lanzamiento mientras una está en curso.

01 · BOTÓN — Control visible

Al pulsar el control visible se llama a flipCoin(1.5). El control se desactiva mientras isFlipping es true.

02 · ARRASTRE — Desplazamiento hacia arriba

offset = max(dragStartY - clientY, 0), limitado a 100px. El final inicia solo con offset > 30 o velocity > 2, usando max(offset / 30, velocity / 3).

03 · TECLA — Guardia de Enter o Espacio

Enter o Space llama a flipCoin(1.5) solo si el destino no es input, textarea, button, select o [contenteditable=true].

Placa de movimiento / resultado y rotación

El editor deriva el lado mostrado con Math.random() > 0.5 ? heads : tails y usa requestAnimationFrame para actualizar el movimiento.

RESULTADO — Expresión del lado

Math.random() > 0.5 ? heads : tails. La rotación final es heads = 0 y tails = 180.

VUELTAS — Componentes del giro

Para flipCoin(velocity=1), baseFlips=4 y extraFlips=min(velocity*2,6). total rotation=(baseFlips+extraFlips)*360+end rotation.

TIEMPO — Duración de movimiento

duration=1500+velocity*500 ms. requestAnimationFrame actualiza rotación, arco, escala y sombra durante la ruta.

Registro de lanzamientos / límite visible

Al terminar el movimiento se fijan showResult, estado de confeti y FlipResult result/timestamp/coinType; el resultado se inserta al inicio, total aumenta en 1 y se envía un evento de analítica.

HISTORIAL — Inserción inicial, conserva 20

El editor antepone FlipResult y mantiene como máximo 20 entradas.

VISTA LATERAL — Muestra 10 entradas

La vista lateral usa history.slice(0,10). Con historial no vacío muestra porcentajes redondeados de heads y tails del historial actual.

LECTURA — Solo registro mostrado

Los recuentos y porcentajes describen el historial mostrado; esta página no los trata como evaluación estadística o de probabilidad.

Libro de valores guardados / carga y borrado

Al montar, el editor lee coinFlipHistory, coinFlipTotalFlips, coinFlipSound y coinFlipSelectedCoin. Su efecto escribe historial, incluso un array vacío, total, sonido e ID de moneda elegida.

CARGA — Valores aceptados

El historial acepta solo objetos con result heads o tails y corta a 20. Total se acepta solo si es finite y >= 0; selectedCoin debe ser un ID de diseño conocido.

PARSE — Ruta de JSON no válido

Si falla el análisis JSON, se eliminan coinFlipHistory y coinFlipTotalFlips. Después se resuelven sonido y moneda elegida desde sus cadenas presentes.

BORRAR — Reinicia historial y total

Borrar historial fija history en [] y totalFlips en 0; el efecto escribe después esos nuevos valores bajo las claves nombradas.

Notas de alcance

  • AudioContext se intenta durante un lanzamiento; un contexto suspendido compatible se reanuda y el control visible alterna sonido.
  • Tras la ruta final, el estado de confeti inicia un bucle canvas de 150 partículas y su efecto limpia el bucle de animation frame.
  • Este registro describe ramas del editor y controles visibles, no una evaluación de un resultado o pantalla.
  • Usa el botón y el control de arrastre visibles para interactuar con el editor.

Continuar con herramientas cercanas

Cada herramienta enlazada tiene sus propios controles y ruta de estado.

  • Ruleta

    Abre la interfaz de entradas y controles de rueda.

  • Sudoku

    Abre la interfaz de rompecabezas de cuadrícula.

  • Puzzle de palabras

    Abre la interfaz de rompecabezas de palabras.

Preguntas sobre el registro de moneda

¿Qué motivos se pueden seleccionar?

El selector tiene los IDs euro, dollar, chf, gbp y gold. El editor resuelve nombres visibles y etiquetas de cara desde sus asignaciones de diseño y localización existentes.

¿Cómo puede empezar un lanzamiento?

El botón visible llama a flipCoin(1.5). El arrastre usa offset = max(dragStartY - clientY, 0), limitado a 100px, y solo activa con offset > 30 o velocity > 2. Enter o Space siguen su guardia de destino y llaman a flipCoin(1.5).

¿Qué expresión y valores de movimiento se usan?

La expresión de lado es Math.random() > 0.5 ? heads : tails. baseFlips=4, extraFlips=min(velocity*2,6), duration=1500+velocity*500 ms y total rotation=(baseFlips+extraFlips)*360+end rotation.

¿Qué muestra la vista lateral?

El historial conserva 20 entradas, la vista lateral usa history.slice(0,10) y un historial no vacío muestra porcentajes redondeados de heads y tails para esa pantalla.

¿Qué valores guardados se leen y escriben?

Los valores nombrados son coinFlipHistory, coinFlipTotalFlips, coinFlipSound y coinFlipSelectedCoin. JSON no válido elimina historial y total; borrar fija history en [] y total en 0 antes de que el efecto los escriba.

¿Qué hacen las rutas de sonido y confeti?

Un lanzamiento intenta AudioContext y reanuda un contexto suspendido compatible. Al final, el estado de confeti ejecuta un bucle canvas de 150 partículas que limpia su animation frame loop.

Abrir controles de moneda

Elige un motivo visible, usa el botón o arrastre y consulta el registro mostrado.

Abrir moneda