Save Energy
Documentación Técnica
1. Ficha Técnica
- Nombre: Save Energy
- ODS: ODS 7 - Energía Asequible y No Contaminante
- Objetivo: Reaccionar rápido tocando los electrodomésticos o bombillas que se enciendan para apagarlos. Mantener el consumo de energía bajo hasta que acabe el tiempo de supervivencia.
2. Mecánica y Flujo de Juego
Se inspira en el género clásico "Whack-A-Mole" pero invirtiendo la perspectiva: no hay que atrapar algo activo, sino silenciarlo/apagarlo para preservar la paz ambiental de los recursos.
- Aparece un Canvas o Grid pre-poblado con un N número de dispositivos. Todos arrancan apagados (Oscurecidos o clases de estilo inactivas CSS).
- Variables de entorno temporales escogen 1 o 2 dispositivos y varían su
element.classLista encendido (brillantes). - El jugador hace clic y desactiva el nodo a su estado neutro original apagado.
- Si los ignora, el medidor virtual de KW/h sube, provocando fallo.
3. Lógica de Programación
Depende pesadamente en las propiedades de mutabilidad de estado de Elementos (On/Off Flags) y no tanto en motor físico complejo.
El Array del Grid
El ritmo de activaciones utiliza un spawnInterval = setInterval(turnRandomOn, Rate). El Rate de encendidos decrece conforme los niveles crecen, haciendo inmanejable tener todo apagado para el jugador.
La Barra Roja vs Verde de penalización
Tiene un medidor global que comprueba en el loop secundario la cantidad de aparatos con flag true. Por cada segundo que un número "excesivo" de aparatos pasa encendido, la barra general decrece.
4. Sistema de Victoria/Derrota
Sobrescribe la definición clásica de BaseGame handleTimeout() de la siguiente forma:
- Victoria: El jugador llega a
this.timeLeft <= 0sin que su medidor de energía/barras de frustración llegase a 0 en cualquier momento de la partida. - Derrota: Agotar el medidor (Ejemplo, 4 o más electrodomésticos duran 3 segundos enteros conectados a la red desbordando los Watios).
