Un tetris en 560bytes

Lunes, 10 de Diciembre de 2007

Con este simple código, un Tetris completamente funcional, con tan solo 560 bytes.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
<body onKeyDown=K=event.keyCode><script>X=[Z=[B=A=12]];h=e=K=t=P=0;function Y()
{C=[d=K-38];c=0;for(i=4;i--*K;K-13?c+=!Z[h+p+d]:c-=!Z[h+(C[i]=p*A-Math.round(p/
A)*145)])p=B[i];!t|c+4?c-4?0:h+=d:B=C;for(f=K=i=0;i<4;f+=Z[A+p])X[p=h+B[i++]]=1
if(e=!e){if(f|B){for(l=228;i--;)Z[h+B[i]]=k=1;for(B=[[-7,-20,6,17,-9,3,6][t=++t
%7]-4,0,1,t-6?-A:-1];l--;h=5)if(l%A)l-=l%A*!Z[l];else for(P+=k++,j=l+=A;--j>A;)
Z[j]=Z[j-A]}h+=A}for(i=S="";i<240;X[i]=Z[i]|=++i%A<2|i>228)i%A?0:S+="<br>",S+=X
[i]?"■":"_";document.body.innerHTML=S+P;Z[5]||setTimeout(Y,99-P)}Y()</script>
</body>
</html>

Puedes verlo funcionando aquí: http://zapanet.info/blog/game/tetorisu.html

2 comentarios to “Un tetris en 560bytes”

  1. Tetris en JavaScript por 560 bytes | Carlos Caballero:

    […] Tetris en JavaScript por 560 bytes 8Ene2008 Filed under: Programación Autor: Carlos Caballero printPlayer(’flash’,'black’,'Escuchar noticia’,'’,'http://www.sonowebs.com/images/play.png’,'es’,'’,'’,'’,'Tetris+en+JavaScript+por+560+bytes’,'%3Cp%3EAhora+mismo+me+encuentro+preparando+un+curso+de+Javascript+para+explicarlo+en+el+Ciclo+formativo+de+Administraci%C3%B3n+de+Sistemas+Inform%C3%A1ticos+y+le%C3%B3+v%C3%ADa+%3Ca+HREF%3D%22http%3A%2F%2Falbertovilches.com%2Fun-tetris-en-560bytes%22+TARGET%3D%22_blank%22+TITLE%3D%22Yo%2C+Programador%22%3EYo%2C+Programador%3C%2Fa%3E.+Un+programador+que+ha+sido+capaz+de+escribir+el+juego+tetris+en+javascript+en+tan+solo+560+bytes.+Es+cierto+que+no+tiene+gr%C3%A1ficos+sorprendentes+ni+m%C3%BAsica+demoledora%2C+pero+sorprendente+s%C3%AD+que+es.+El+c%C3%B3digo+est%C3%A1+un+poco+ofuscado+pero+aqu%C3%AD+os+lo+dejo%3A%3C%2Fp%3E%0A%3Cp%3E%26lt%3Bhtml%26gt%3B%3Cbr+%2F%3E%0A%26lt%3Bhead%26gt%3B%3Cbr+%2F%3E%0A%26lt%3Bmeta+http-equiv%3D%26%238221%3BContent-Type%26%238221%3B+content%3D%26%238221%3Btext%2Fhtml%3B+charset%3Dshift_jis%26%238221%3B%26gt%3B%3Cbr+%2F%3E%0A%26lt%3Bbody+onKeyDown%3DK%3Devent.keyCode%26gt%3B%26lt%3Bscript%26gt%3BX%3D%5BZ%3D%5BB%3DA%3D12%5D%5D%3Bh%3De%3DK%3Dt%3DP%3D0%3Bfunction+Y%28%29%7BC%3D%5Bd%3DK-38%5D%3Bc%3D0%3Bfor%28i%3D4%3Bi%26%238211%3B%2AK%3BK-13%3Fc%2B%3D%21Z%5Bh%2Bp%2Bd%5D%3Ac-%3D%21Z%5Bh%2B%28C%5Bi%5D%3Dp%2AA-Math.round%28p%2FA%29%2A145%29%5D%29p%3DB%5Bi%5D%3B%21t%7Cc%2B4%3Fc-4%3F0%3Ah%2B%3Dd%3AB%3DC%3Bfor%28f%3DK%3Di%3D0%3Bi%26lt%3B4%3Bf%2B%3DZ%5BA%2Bp%5D%29X%5Bp%3Dh%2BB%5Bi%2B%2B%5D%5D%3D1+if%28e%3D%21e%29%7Bif%28f%7CB%29%7Bfor%28l%3D228%3Bi%26%238211%3B%3B%29Z%5Bh%2BB%5Bi%5D%5D%3Dk%3D1%3Bfor%28B%3D%5B%5B-7%2C-20%2C6%2C17%2C-9%2C3%2C6%5D%5Bt%3D%2B%2Bt%257%5D-4%2C0%2C1%2Ct-6%3F-A%3A-1%5D%3Bl%26%238211%3B%3Bh%3D5%29if%28l%25A%29l-%3Dl%25A%2A%21Z%5Bl%5D%3Belse+for%28P%2B%3Dk%2B%2B%2Cj%3Dl%2B%3DA%3B%26%238211%3Bj%26gt%3BA%3B%29Z%5Bj%5D%3DZ%5Bj-A%5D%7Dh%2B%3DA%7Dfor%28i%3DS%3D%26%238221%3B%22%3Bi%26lt%3B240%3BX%5Bi%5D%3DZ%5Bi%5D%7C%3D%2B%2Bi%25A%26lt%3B2%7Ci%26gt%3B228%29i%25A%3F0%3AS%2B%3D%26%238221%3B%26lt%3Bbr%26gt%3B%26%238221%3B%2CS%2B%3DX%5Bi%5D%3F%26%238221%3B%E2%96%A0%26%238221%3B%3A%26%238221%3B%EF%BC%BF%26%238221%3B%3Bdocument.body.innerHTML%3DS%2BP%3BZ%5B5%5D%7C%7CsetTimeout%28Y%2C99-P%29%7DY%28%29%26lt%3B%2Fscript%26gt%3B%3Cbr+%2F%3E%0A%26lt%3B%2Fbody%26gt%3B%3Cbr+%2F%3E%0A%26lt%3B%2Fhtml%26gt%3B%3C%2Fp%3E%0A%3Cp%3ESi+quer%C3%A9is+verlo+funcionando+aqu%C3%AD+ten%C3%A9is+el+enlace%3A+%3Ca+HREF%3D%22http%3A%2F%2Fzapanet.info%2Fblog%2Fgame%2Ftetorisu.html%22+TITLE%3D%22Tetris+en+JavaScript%22%3Ehttp%3A%2F%2Fzapanet.info%2Fblog%2Fgame%2Ftetorisu.html%3C%2Fa%3E%3C%2Fp%3E%0A%3Cp%3EV%C3%ADa+%7C+%3Ca+HREF%3D%22http%3A%2F%2Falbertovilches.com%2F%22+TARGET%3D%22_blank%22+TITLE%3D%22Yo%2C+Programador%22%3EYo%2C+Programador%3C%2Fa%3E%3C%2Fp%3E%0A’,'Programaci%C3%B3n’,'http://www.carloscaballero.es/2008/01/08/tetris-en-javascript-por-560-bytes/’,'’,'’,'232′,’20′);Ahora mismo me encuentro preparando un curso de Javascript para explicarlo en el Ciclo formativo de Administración de Sistemas Informáticos y leó vía Yo, Programador. Un programador que ha sido capaz de escribir el juego tetris en javascript en tan solo 560 bytes. Es cierto que no tiene gráficos sorprendentes ni música demoledora, pero sorprendente sí que es. El código está un poco ofuscado pero aquí os lo dejo: […]

  2. meneame.net:

    Un tetris en 560bytes…

    un tetris en javascript de solo ¡560 bytes! … eso es optimización de codigo, no? codigo fuente y jugable en el enlace. Un programador que ha sido capaz de escribir el juego tetris en javascript en tan solo 560 bytes. Es cierto que no tiene gráfico…

Hacer un comentario

XHTML: Puedes utilizar las siguientes etiquetas:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

Verification Image

Debes leer y teclear los caracteres entre 0..9 y A..F para enviar la respuesta.