javascript - What was used to compress this code? -
i'm trying understand what's going on in code: http://js1k.com/2013-spring/demo/1396
this doesn't it's been minified or encoded in base62 me. when paste in vim weird characters appear everywhere. there way can decode it?
end of code there script, used decode code
for (y = 0; $ = 'zxqj`_^zwvuqonmkjihgca@8$ ' [y++];) with(_.split($)) _ = join(pop()); eval(_)
i put firebug ... instead of eval(_)
put console.log( _ )
code
e = null; t = function (b) { c.width = c.height = 19 * s; a.fillstyle = "#db5"; a.fillrect(0, 0, c.width, c.width); (i = s / 2; < c.width; += s) a.moveto(i, s / 2), a.lineto(i, c.width - s / 2), a.moveto(s / 2, i), a.lineto(c.width - s / 2, i); a.stroke(); b && (f = 19 * ~~(0.5 + (b.clienty - s / 2) / s) + ~~(0.5 + (b.clientx - s / 2) / s), t[f] == e && (t[f] = d, (l(f) | !(l(f + 1) & l(f - 1) & l(f + 19) & l(f - 19))) & (!m | f != n) ? "d" == b.type[5] ? (m = 0, u = f, d = !d, e(f + 1, d), e(f - 1, d), e(f + 19, d), e(f - 19, d), e(f)) : (t[f] = e, a.beginpath(), a.arc(~~(0.5 + (b.clientx - s / 2) / s) * s + s / 2, ~~ (0.5 + (b.clienty - s / 2) / s) * s + s / 2, s / 2 - 1, 0, 6.3, 1), a.strokestyle = a.fillstyle = "rgba(0,0,0,0.3)", d && (a.fillstyle = "rgba(255,255,255,0.3)"), a.fill(), a.stroke()) : t[f] = e)); a.strokestyle = "#000"; a.fillstyle = "#000"; (i = s / 2 + 75; < c.width; += 6 * s) (h = s / 2 + 75; h < c.width; h += 6 * s) a.beginpath(), a.arc(i, h, 2, 0, 6.3, 1), a.fill(); m && (t[n] = d, l(u) || (a.beginpath(), a.rect(n % 19 * s + s / 2 / 2, ~~ (n / 19) * s + s / 2 / 2, s / 2, s / 2), a.stroke()), t[n] = e); (i = t.length; i--;) t[i] != e && (a.beginpath(), a.arc(i % 19 * s + s / 2, ~~ (i / 19) * s + s / 2, s / 2 - 1, 0, 6.3, 1), a.fillstyle = "#000", t[i] && (a.fillstyle = "#fff"), a.fill(), a.stroke()) }; e = function (b, g) { if (!l(b, g)) { 1 == w.length && (m = 1, n = b); (i = w.length; i--;) t[w[i]] = e } }; l = function (b, g) { w = []; g == e && (g = t[b]); l = function (b) { (i = w.length; i--;) if (w[i] == b) return; w.push(b); 0 != (b + 1) % 19 && t[b + 1] == g && l(b + 1); 0 != b % 19 && t[b - 1] == g && l(b - 1); t[b + 19] == g && l(b + 19); t[b - 19] == g && l(b - 19) }; if (g != e && g == t[b]) l(b); else return 1; (i = w.length; i--;) if (0 != (w[i] + 1) % 19 && t[w[i] + 1] == e || 0 != w[i] % 19 && t[w[i] - 1] == e || 342 > w[i] && t[w[i] + 19] == e || 19 <= w[i] && t[w[i] - 19] == e) return 1; return 0 }; s = 25; d = m = n = 0; c.addeventlistener("mousemove", t); c.addeventlistener("mousedown", t); t = []; t();
Comments
Post a Comment