Mi blog y yo solos en el mundo

pensando en la gente que ama las madalenas

No hay un camino para la paz, la paz es el camino -Ghandi-

Y entonces comprendí porque le llamaban

martes, marzo 12, 2013

Te digo que el nyan cat entra...

Quería participar en el concurso de javascript de js1k.com pero mucho me temo que voy a fracasar miserablemente.

La idea del concurso es usando HTML5 y javascript crear una aplicación que use solo 1k y que no tenga referencias externas pero me temo que por más que apriete esto no va a bajar de 2K :(

Nyan cat

function $(){a.closePath()}function A(){a.beginPath()}function B(d,e,f,g,h,i){a.bezierCurveTo(d,e,f,g,h,i)}function C(d,e,f,g){a.fillRect(d,e,f,g)}function D(d,e){a.moveTo(d,e)}function E(d,e,f,g,h){a.arcTo(d,e,f,g,h)}function F(){a.stroke()}function G(d,e,f,g,h){a.arc(d,e,f,g,h)}var e=new Array();d=0;x=0;f=0;g=2*Math.PI;w=window;l=160;m=100;n=190;o=110;p=120;k=80;q=115;r=130;s=170;t=150;u=140;v=30;x=4.3;H=90;I=10;J=60;w.setInterval(function(){c.width=c.width;if(x==0){f=I;x=1;}else{x=0;f=0;}A();a.fillStyle="#448";C(0,0,800,600);A();a.fillStyle="red";C(J,k+f/2,v,I);C(v,85-f/2,v,I);C(0,k+f/2,v,I);$();a.fillStyle="#F60";C(J,H+f/2,v,I);C(v,95-f/2,v,I);C(0,H+f/2,v,I);$();a.fillStyle="#FF0";C(J,m+f/2,v,I);C(v,105-f/2,v,I);C(0,m+f/2,v,I);$();a.fillStyle="#0F0";C(J,o+f/2,v,I);C(v,q-f/2,v,I);C(0,o+f/2,v,I);$();a.fillStyle="#00F";C(J,p+f/2,v,I);C(v,125-f/2,v,I);C(0,p+f/2,v,I);$();a.fillStyle="#F0F";C(J,r+f/2,v,I);C(v,135-f/2,v,I);C(0,r+f/2,v,I);$();a.strokeStyle="#000";D(H+f*x,r);B(J+f*x,l,H+f*x,l,H+f*x,u);D(o+f*x,r);B(k+f*x,l,o+f*x,l,o+f*x,u);D(p-f*x,r);B(r-f*x, l,145-f*x,l,135-f*x,u);D(u-f*x,r);B(t-f*x, l,165-f*x,l,155-f*x,u);D(H,o);B(J,p-f*x,J,u-f*x,H,p);$();a.fillStyle="#666";a.fill();F();$();A();a.lineWidth="1";a.strokeStyle="red";D(H,k);a.lineTo(t,k);E(s,k,s,H,I);a.lineTo(s,r);E(s,u,r,t,I);a.lineTo(m,u);E(k,u,70,p,I);a.lineTo(k,m);E(k,k,m,k,I);F();a.fillStyle="#F66";a.fill();$();a.fillStyle="red";A();G(m,H,3,0,g);G(o,p,3,0,g);$();a.fill();A();G(97,131,3,0,g);G(q,98,3,0,g);$();a.fill();A();G(u,95,3,0,g);G(135,r,3,0,g);$();a.fill();A();G(89,112,3,0, g);G(r,106,3,0,g);$();a.fill();A();D(t,m+f);a.lineWidth="1";a.strokeStyle="#000";B(u,u+f,200,u+f,n,m+f); B(n,m+f,n,70+f,s,m+f);B(175,m+f,t,70+f,t,m+f);$();a.fillStyle="#666";a.fill();F();A();E(l,p+f);B(l,p+f,165,r+f,s,p+f);B(s,p+f,175,r+f,180,p+f);F();$();A();G(155,q+f,3,0,g);G(185,q+f,3,0,g);a.fillStyle="#F66";a.fill();$();A();G(163,108+f,3,0,g);G(177,108+f,3,0,g);a.fillStyle="#000";a.fill();$();A();D(168,q+f);a.lineTo(172,q+f);F();$();A();G(162,107+f,2,0,g);G(176,107+f,2,0,g);a.fillStyle="#FFF";a.fill();$();a.font="30px Arial";a.fillText("Click the frame",300,550);},200);w.setInterval(function(){for (i=0;i < d;i=i+2){A();D(e[i],e[i+1]);A();C(e[i]+5,e[i+1],5,5);C(e[i]-5,e[i+1],5,5);C(e[i],e [i+1]+5,5,5);C(e[i],e[i+1]-5,5,5);$();F();e[i]=e[i] - I;if(e[i]<0){d=d-2;e[i]=e[d];e[i+1]=e[d+1];i=i-2;}}},50);c.addEventListener('click',function(k){e[d]=k.pageX,e[d+1]=k.pageY;d=d+2;},false);
Aunque quizás si pongo todas las funciones en una sola con un array de parámetros...