A platform game! You are the green square, and you need to get to the top of a tower because you have some sudden urge to. Use the the left and right arrow keys to move and up to jump. Don't press any…
l="g in a)a[g[6]]=a[g];Zb,c,i,f,d,e,g,h){if(b!=Q.a)return c?d+g>b&b+i>d&e+h>c&c+f>e:fillStyle=b;tX*wY*3e3As=t.z=t.H};Q=[e=[P=[y=3930]]],c.height=w=3007x=u=d=k=O=T=D=I=F=B=J=L;9Q*20eNw Z,PNw Z,down=upa){n=which-38;d!=||k!=n !@(L=!n,d=@d:,k=@k:F?-n:n,!@O::L};M){L&!UJ?-4:V,_y(UW=.05)>3?3:U;!L d?xu=k+(O-k*-W):u-=-u*-W;Chsl('+T++%w+'9%,'+D*50+'%)w,w)71;80{Credo=(K)*Q[i%9]+D*Math.sin(T/2*2(E=i*5R=K?K:w)|U>0y=E-2_H|=,)Y=E-9)}{C#30F'),c(XA,(Y%=y+w)9),X>w-9|X<0?A=-A:H?(s=!f||B?V:z=H=:s<3?sW:s!I alert(-(y/50-K)||(x=4e4);!I C#0f0x,159,2;with(P[f])f<5!H x(G=('DJFBI')[f],,-9!HH[G]=1,G+'',1e4)))}M,9)};M();";for(d in e="_L=;V-2.5N=ne7;i=K79C'@L?i<U=a.onkey;i++)=this[i] (=0o,E,Rfor(X,Y,t.+=,9Z(a.type[5]-y+150)with(e[f]) &&setTimeout(0,');a.c(om()for(f=0;f<9;f++)=function(,9,x,y,9,20)&=Math.rand".split(""))l=l.replace(RegExp(e[d][0],"g"),e[d].slice(1));eval(l)
bD0iFWcgaW4gYSlhW2dbNl1dPWFbZ107WgRiLGMsaSxmLGQsZSxnLGgpe2lmKGIhPVEuYSlyZXR1cm4gYz9kK2c+YiZiK2k+ZCZlK2g+YyZjK2Y+ZTodZmlsbFN0eWxlPWI7dBoTWAYqdxNZBiozZTMTQQYTcz10Lno9dC5IF307UT1bZT1bUD1beT0zOTMwXV1dLGMuaGVpZ2h0PXc9MzAwN3g9dT0eZD1rPU89VD1EPUk9Rj1CPUo9TBc7HzkbURkGKjIwB2VOdyBaLFBOdyBaLBxkb3duPRx1cARhKXtuPR13aGljaC0zODtkIT0PfHxrIT1uCSFAKEw9IW4sZD1AZDoPLGs9QGs6Rj8tbjpuLCFATxc6DDpMF307TQQpe0wmIVUYHko/LTQ6VixfeRIoVRJXPS4wNSk+Mz8eMzpVOyFMCWQ/eBJ1PWsrKE8SLWsqLVcpOnUtPS11Ki1XO0Noc2woJytUKysldysnETklLCcrRCo1MCsnJSkCBwd3LHcpNzE7HzgwG3tDcmVkAm89KB9LKSpRW2klOV0rRCpNYXRoLnNpbihULzIMKjIHKEU9aSo1DA4HUj0fSz9LOncRKXwWA1U+MBh5PUUtMgceXwULSHw9FhEsFBERKRhZPUUtOSl9BXsLQyMzMEYnKSwdYyhYEkEsKFklPXkrdykOBzkRKSxYPnctOXxYPDA/QT0tQToHSD8ocz0hZnx8Qj9WOgd6PUg9DDpzPDM/cxJXOgcQFBJzEQMhSQlhbGVydCgtKHkvNTAtSyl8DHwoeD00ZTQpOyFJCUMjMGYwAngsMTUHOSwyDDt3aXRoKFBbZl0pZjw1GCFICR14KEc9KCdESkZCSScpW2ZdLBQODCwQFC05EQMhSBhIGltHXT0xLAhHKycXJywxZTQpKSl9CE0sOSl9O00oKTsiO2ZvcihkIGluIGU9Il9MPQw7AVYtMi41AU4ZPW5lATc7FWk9AUs3OQFDECcBQEw/AR9pPAEeVT0BHWEuARxvbmtleQEbO2krKykBGj10aGlzARlbaV0BGAkoARc9MAEWEG8sRSxSARVmb3IoARRYLFkBEyx0LgESKz0BESw5ARBaKAEPYS50eXBlWzVdAQ4teSsxNQEMMCkBC3dpdGgoZVtmXSkBCSYmAQhzZXRUaW1lb3V0KAEHMCwBAicpO2EuYygBBgJvbSgpAQVmb3IoZj0wO2Y8OTtmKyspAQQ9ZnVuY3Rpb24oAQMsOSx4LHksOSwyMCkmAQI9TWF0aC5yYW5kIi5zcGxpdCgiASIpKWw9bC5yZXBsYWNlKFJlZ0V4cChlW2RdWzBdLCJnIiksZVtkXS5zbGljZSgxKSk7ZXZhbChsKQ==
with (a) {
//collision checking, enemy/powerup creating and color setting
Z = function (q, j, k, d, e, f, g, h) {
//smaller than q != undefined
if (q != Q.a) return j ? e + g > q & q + k > e & f + h > j & j + d > f : fillStyle = q;
else t = this, t.X = r() * size, t.Y = r() * 4e3, t.A = r() - .5, t.s = t.z = t.H = 0;
}
blockx = [blocksize = [enemies = [powerups = [y = 3920]]]], x = xspeed = yspeed = press = key = xaccel = D = S = J = F = B = I = T = jump = 0, r = (m = Math).random, c.height = size = c.width;
for (i = 0; i < 9; i++)
blockx[i] = r() * size / 2 + size / 8,
blocksize[i] = r() * 50 + 50,
enemies[i] = new Z,
powerups[i] = new Z;
onkeydown = onkeyup = function (e) {
which = e.which - 38;
press != e.type[5] || key != which && !jump ?
(jump = !which, press = jump ? press : e.type[5], key = jump ? key : F ? -which : which, !jump ? xaccel = 0 : 0) : jump = 0;
}
M = function () {
//if jump is set and the player is not in the air (yspeed is set) set yspeed to -2.5
jump & !yspeed && (yspeed = J ? -4 : -2.5, jump = 0);
y += (yspeed += speedinc = .05) > 3 ? yspeed = 3 : yspeed;
!jump && press ? x += xspeed = key + (xaccel += key < 0 ? -speedinc : speedinc) : xspeed -= xspeed > 0 ? -speedinc : speedinc;
T++;
//clear screen
Z(D ? 'hsla(' + (T % size) + ',99%,50%,.1)' : '#000');
fillRect(0, 0, size, size);
//draw blocks and enimies and check for collision
Z('red');
for (i = 1; i ^ 80; i++) {
if ((by = i * 50) < y + size && by > y - size) {
fillRect(bx = i ^ 79 ? blockx[i % 9] + ((!(i & i - 1)) || D ? m.sin(T / (y / 20)) * 20 : 0) : 0, by - y + size / 2, bs = i ^ 79 ? blocksize[i % 9] : size, 9) | Z(bx, by, bs, 9, x, y, 9, 20) && y + 17 < by && yspeed > 0 && (y = by - 20, yspeed = jump = 0);
for (f = 0; f < 9; f++) with (enemies[f]) H |= Z(bx, by, bs, 9, X, Y, 9, 9) && (Y = by - 9);
}
}
for (f = 0; f < 9; f++) {
Z('#30F');
with (enemies[f])
fillRect(X += A, Y > y + size ? Y = y - size : Y - y + size / 2, 9, 9),
X > size - 9 | X < 0 ? A = -A : 0,
H ? (s = !f || B ? -2.5 : 0, z = H = 0) : s < 3 ? s += speedinc : 0,
Z(X, Y += s, 9, 9, x, y, 9, 20) && !I && alert('Dysentery strikes again!') | _;
//draw player and powerups
Z(I ? "#F0F" : '#0f0');
fillRect(x, size / 2, 9, 20);
fillText('Score: ' + (-(y / 50 - 79) | 0), 0, 9);
with (powerups[f])
f < 6 && (!H && fillText(p = 'DSJFBI'[f], X, Y - y + size / 2),
Z(X, Y - 9, 9, 9, x, y, 9, 20) & !H && (this[p] = H = 1, setTimeout(p + '=0', 1e4)));
}
setTimeout(M, p.innerHTML = S ? 30 : 9);
}
} M();