PDA

Ver la versión completa : Un tetris en 7 lineas de código de Java Script



nandove
02/11/2007, 18:44
Pues si!, no se como ha sido capaz este fulano pero ha metido un Tetris en 7 lineas de codigo XDDDDD Genial! aqui el codigo:



<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
&#37;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>



copiad el texto en un txt y renombrarlo como html ;) IMPRESIONANTE!

Edit: Por supuesto donde hay un ";)" poned un punto y coma + cierra parentesis :D

The_Punisher
02/11/2007, 18:46
Ummm no se hacer funcionar esto xD

nandove
02/11/2007, 19:03
Facil descomprime y abre el fichero tet.html

AZ!DØ
02/11/2007, 19:10
a modo de curiosidad esta bien, porque es cutre como el solo [wei]

y mejor si lo pones en un bloque de c&#243;digo, ya que no salen los emoticonos


<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
&#37;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>

seint
02/11/2007, 19:14
A mi el tetris se me atasca cuando coloco 3 o 4 piezas xDD

nandove
02/11/2007, 19:16
a modo de curiosidad esta bien, porque es cutre como el solo [wei]

y mejor si lo pones en un bloque de código, ya que no salen los emoticonos


<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>

Gracias me se habia olvidao!, estaba viendo si podia ponerlo como codigo html en esta misma pagina para que se ejecute ;) pero si lo hago seria como intentar "hackear" la pagina XDDDDD

Por cierto no creo que sea cutre... que mide menos de un 1k!!! sustituye los caracteres ascii entrecomillados por rutinas graficas y tienes un tetris en toda regla ;)

danihm_moz
02/11/2007, 19:28
cual es el codigo ascii del cuadrado ese que a mi me sale en el notepad "|" y en el firefox al ejecutarlo "ヲ" lo que descuadra las lineas y es imposible jugarlo :(

con una "o" o una "I" no se ve mal del todo pero no es lo mismo

< - >
acabo de probar el del zip y se descuadran mucho las lineas, creo que va mejor con o &#243; I

kraff2
02/11/2007, 19:33
La verdad es que s&#237; impresiona, pero para evitar el trabajo de c&p y problemas de caracteres en ascii puedes poner el enlace a la p&#225;gina original, creo que es esta (zapanet.info/blog/game/tetorisu.html) (por cierto en konqueror y opera no funciona del todo bien en firefox s&#237; ;))

nandove
02/11/2007, 19:36
Es lo que mola de la programacion si tienes las fuentes, las modificas y ves el resultado :D

< - >

La verdad es que sí impresiona, pero para evitar el trabajo de c&p y problemas de caracteres en ascii puedes poner el enlace a la página original, creo que es esta (zapanet.info/blog/game/tetorisu.html) (por cierto en konqueror y opera no funciona del todo bien en firefox sí ;))


Gracias tio, a mi me llegó por mail y no sabia quien fue el fiera que se lo curró. :D

Pero insisto, lo increible no es el juego, lo increible es que se lo currara en 7LINEAS!!! es lo impresionante 577bytes:lol:

ZeNiTRaM
02/11/2007, 23:09
Id pulsando las letras del teclado.. algunas hacen cosas raras. Si encima va a traer easter eggs y todo.. :D

theNestruo
02/11/2007, 23:39
Prefiero el clásico HO 2 MAEK TERTIS in 3213 sampel steps1!`` (http://www.gamedev.net/columns/hardcore/tetris) de Pouya. Tiene más feelin'

dardo
02/11/2007, 23:51
Nandove, no se como cuentas pero así a ojo cuento como poco diez.

Si te escriben un libro entero solo con punto y seguido para ti sería como un libro de una sola linea.

elarcadio
03/11/2007, 09:03
Es que est&#225; hablando de c&#243;digo javascript.Las otras lineas son de html.

Salu2

chipan
03/11/2007, 10:18
Pues a mi se me descuajiringa de lo lindo; a ver si encuentro manera de ponerlo con una fuente monoespaciada como la courier o algo as&#237;.

Karkayu
03/11/2007, 11:29
Para que se vea todo bien, usad un editor HTML para "copy-pastear" el codigo (nada de bloc de notas). Yo he usado el PSPAD en Windows y va todo perfecto.

Gracias Nandove

Un saludo
:brindis:


EDITO: Tiene algunos bugs (si pulsas un par de veces seguidas algunas teclas, la ficha desaparece por un lado de la pantalla :S)