Tetris en JavaScript – Open source

En este post te mostraré el juego de Tetris programado en JavaScript puro, totalmente gratuito y open source.

Este juego de bloques está programado con JavaScript y utiliza canvas para pintar el juego. También utilizo Bootstrap para el diseño de los botones y la página en general, con un poco de SweetAlert para las ventanas.

Aunque se vea sencillo de hacer, es uno de los trabajos que más me ha costado realizar y del cual me siento más orgulloso. Fue complejo (para mí) comprender toda la lógica para las colisiones, rotaciones, eliminación de filas, movimiento de piezas, límites, etcétera.

Entre las características del juego encontramos:

  1. Sonidos: música de fondo, sonido cuando la pieza no se puede rotar, cuando se hace una fila completa y cuando el tetrominó toca el suelo
  2. Colores: cada pieza tiene un color aleatorio elegido en tiempo de ejecución
  3. Rotaciones: las piezas se pueden rotar para acomodarlas y acumular puntos
  4. Compatible con móviles: debido a que es web, he agregado unos botones para poder jugarlo en móviles, pero también se puede jugar con el teclado
  5. Código abierto: puedes modificar el juego, el tablero, la longitud, velocidad, piezas, rotaciones, etcétera.
  6. Port de tetris: se comporta como cualquier juego de tetris normal
  7. Pausa del juego: el juego se puede pausar o reanudar en cualquier momento

Veamos entonces los detalles de este juego programado en JS. A lo largo del post te mostraré cómo es que este juego está programado, también te dejaré una demostración y el código completo.

Nota: figura, pieza y tetrominó serán usados como sinónimos en este post.

(más…)

Sentencias de control en Go: If y Switch

Introducción Este tutorial pretende ser muy sencillo. Simplemente explica cómo funciona la sentencia if, else y switch. Veremos cómo a veces vamos a preferir switch, y cómo aquí no tenemos que utilizar break cuando lo utilizamos. If y else Comencemos con la sentencia if. A diferencia de otros lenguajes, la Leer más…