Eco Run
Documentación Técnica
1. Ficha Técnica
- Nombre: Eco Run
- ODS: ODS 14 - Vida Submarina / ODS 15 - Vida de Ecosistemas Terrestres
- Objetivo: Hacer clic de forma rápida en la basura que aparece en localizaciones aleatorias de la pantalla antes de que desaparezca o el reloj marque cero.
2. Mecánica y Flujo de Juego
Pertenece a la familia de los juegos "Reaction Clicker". La naturaleza procedimental del juego depende del bucle central que invoca objetos asíncronamente.
- El estado inicia con contador de basura en 0.
- El
setIntervalglobal (`spawnInterval`) inyecta un Div simulando basura cada "x" milisegundos. - El jugador hace clic y suma puntos. Si ignora la basura, un
setTimeoutinterno puede destruirla y penalizar. - A un número definido de clicks exitosos, el juego acaba y ganas.
3. Lógica de Programación
El juego utiliza coordenadas CSS absolutas (left y top con valores en porcentaje) instanciadas mediante Math.random() * 80 + 10 + '%' para asegurar que el nodo permanezca jugable dentro de los márgenes y no desborde.
Eventos Principales
click: Agregado dinámicamente a cada Div de basura que es generado. Enlaza con una función callback para ocultar el nodo y sumar progreso. Incluyee.stopPropagation()para evitar clics accidentales subyacentes.
Variables Importantes
4. Sistema de Victoria/Derrota
Victoria: El bucle del intervalo comprueba siempre if (this.collectedTrash >= this.targetTrash) this.finish(true). Las metas escalan exponencialmente según el nivel.
Derrota: BaseGame monitorea el tiempo en milisegundos restado por Frame. Si finaliza sin que the collectedTrash empate con target, es Game Over.
5. Posibles Mejoras Futuras
- El contenedor genera acumulación en el DOM si el Timeout de expiración natural no la remueve, lo mejor sería almacenar los nodos en un Array global y limpiar el recolector de basura (Garbage Collector real de JS).
- Incluir distractores como animales que si haces clic restan puntos.
