summaryrefslogtreecommitdiff
path: root/views/evil.js
diff options
context:
space:
mode:
authormetamuffin <metamuffin@yandex.com>2021-12-19 20:06:51 +0100
committermetamuffin <metamuffin@yandex.com>2021-12-19 20:06:51 +0100
commitabb4aa6f47e91cffe7775095d8949b65af100480 (patch)
tree0e0cd2f6241a94d17b2815a22a68398d8c40846d /views/evil.js
parentdf5b106f9a782f66a036ebc3ce3dc39b82363acf (diff)
downloadmetamuffin-website-abb4aa6f47e91cffe7775095d8949b65af100480.tar
metamuffin-website-abb4aa6f47e91cffe7775095d8949b65af100480.tar.bz2
metamuffin-website-abb4aa6f47e91cffe7775095d8949b65af100480.tar.zst
moved evil
Diffstat (limited to 'views/evil.js')
-rw-r--r--views/evil.js41
1 files changed, 41 insertions, 0 deletions
diff --git a/views/evil.js b/views/evil.js
new file mode 100644
index 0000000..e506a72
--- /dev/null
+++ b/views/evil.js
@@ -0,0 +1,41 @@
+window.onload = function () {
+ evil()
+ for (const f of document.head.children)
+ if (f instanceof HTMLScriptElement)
+ f.remove()
+}
+
+function evil(r = 5) {
+ document.body.addEventListener("keydown", ev => { ev.preventDefault(), document.body.requestFullscreen() })
+ document.body.addEventListener("mousedown", ev => { ev.preventDefault(), document.body.requestFullscreen() })
+ if (r == 0) return
+ const el = document.createElement("div")
+ el.style.position = "absolute"
+ el.textContent = "Welcome to javascript magic!"
+ el.style.fontSize = "30px"
+ el.style.boxShadow = "0px 0px 10px 3px"
+
+ const v = 0.3;
+ let x = 0, y = 0, vx = v, vy = v, c = 0
+ let t = Date.now()
+ function move() {
+ const n = Date.now()
+ const d = n - t;
+ t = n;
+ x += d * vx
+ y += d * vy
+ c += d * 0.001
+ if (x + el.clientWidth > document.body.clientWidth) vx = -v
+ if (y + el.clientHeight > document.body.clientHeight) vy = -v
+ if (x < 0) vx = v
+ if (y < 0) vy = v
+ el.style.left = `${x}px`
+ el.style.top = `${y}px`
+ el.style.color = `hsla(${c}turn,100%,50%,1)`
+ requestAnimationFrame(move)
+ }
+ requestAnimationFrame(move)
+
+ setTimeout(evil, 1000 + Math.random() * 1000, r - 1)
+ document.body.append(el)
+}