Un juego de tetris programado en 140 bytes (más o menos el tamaño de un tweet de twitter)

tetris

¿Es posible escribir un programa que no sea más grande que un tweet de twitter, o sea, 140 bytes?. La página web 140byt.es dice que sí y lo ha demostrado programado un juego de Tetris que ocupa 140 bytes.

A eso se dedica dicha web, a recopilar programas en Javascript que no ocupen más que un SMS o un tweet.

Esta implementacion espectacular de un juego de Tetris en 140 bytes tiene sólo dos tipos de bloques (lo llaman "Tetris Binario") y no se puede rotar, pero en líneas generales se comporta como el juego original. Los bloques van cayendo desde la arriba de la pantalla y tienes que hacerlos encajar correctamente abajo.  Puedes probar desde este enlace la demo.

Y este es EL PROGRAMA COMPLETO (más bien es una función) que incluye toda esta lógica de juego, mover bloques, detectar colisiones, asignar nuevo bloque, quitar las líneas completadas y dibujar la zona de juego (puedes encontrar toda la información detallada de su funcionamiento en el enlace original):

function(a,b,c,d,e){return d+=c,
    e=a|b<<d,d<0|a&b<<d&&(a=e=
    parseInt((a|b<<c).toString(d=32)
    .replace(/v/,""),d),b=new Date%2?1:3),
    [a,b,d,e]}

Además tiene algunos trucos interesantes. El primero es ¿qué hace el objeto "Date" en el código?, pues es una buena forma de obtener números aleatorios (brillante ideal). Otro es el estupendo método que tiene para crear el tablero y los bloques, donde se basa en operaciones de rotación binaria (shift) para simular el bloque o el tablero.

Si quieres aprender más sobre cómo está hecho este fantástico programa, echa un vistazo al código comentado en este enlace.

Simplemente genial.

Visto en I-Programmer.