diff --git a/assets/favicon.ico b/assets/favicon.ico new file mode 100644 index 0000000..2bdb33e Binary files /dev/null and b/assets/favicon.ico differ diff --git a/assets/reset.mp3 b/assets/reset.mp3 new file mode 100644 index 0000000..30795aa Binary files /dev/null and b/assets/reset.mp3 differ diff --git a/assets/siren.mp3 b/assets/siren.mp3 new file mode 100644 index 0000000..b9dfee1 Binary files /dev/null and b/assets/siren.mp3 differ diff --git a/assets/swan.png b/assets/swan.png new file mode 100644 index 0000000..07b359c Binary files /dev/null and b/assets/swan.png differ diff --git a/assets/tick.mp3 b/assets/tick.mp3 new file mode 100644 index 0000000..f4871f8 Binary files /dev/null and b/assets/tick.mp3 differ diff --git a/assets/typing_sounds/button1.mp3 b/assets/typing_sounds/button1.mp3 new file mode 100644 index 0000000..c6e50f1 Binary files /dev/null and b/assets/typing_sounds/button1.mp3 differ diff --git a/assets/typing_sounds/button2.mp3 b/assets/typing_sounds/button2.mp3 new file mode 100644 index 0000000..a5eaf01 Binary files /dev/null and b/assets/typing_sounds/button2.mp3 differ diff --git a/assets/typing_sounds/button3.mp3 b/assets/typing_sounds/button3.mp3 new file mode 100644 index 0000000..891e488 Binary files /dev/null and b/assets/typing_sounds/button3.mp3 differ diff --git a/assets/typing_sounds/button4.mp3 b/assets/typing_sounds/button4.mp3 new file mode 100644 index 0000000..5f1f35d Binary files /dev/null and b/assets/typing_sounds/button4.mp3 differ diff --git a/assets/typing_sounds/button5.mp3 b/assets/typing_sounds/button5.mp3 new file mode 100644 index 0000000..67b78a8 Binary files /dev/null and b/assets/typing_sounds/button5.mp3 differ diff --git a/assets/typing_sounds/button6.mp3 b/assets/typing_sounds/button6.mp3 new file mode 100644 index 0000000..0ab73aa Binary files /dev/null and b/assets/typing_sounds/button6.mp3 differ diff --git a/assets/typing_sounds/button7.mp3 b/assets/typing_sounds/button7.mp3 new file mode 100644 index 0000000..7303f25 Binary files /dev/null and b/assets/typing_sounds/button7.mp3 differ diff --git a/assets/typing_sounds/button8.mp3 b/assets/typing_sounds/button8.mp3 new file mode 100644 index 0000000..c138c0a Binary files /dev/null and b/assets/typing_sounds/button8.mp3 differ diff --git a/index.html b/index.html new file mode 100644 index 0000000..5fdf347 --- /dev/null +++ b/index.html @@ -0,0 +1,16 @@ + + + + + + + + + +
+

>:

+ +
+ + + diff --git a/src/script.js b/src/script.js new file mode 100644 index 0000000..39ff4d9 --- /dev/null +++ b/src/script.js @@ -0,0 +1,68 @@ +document.title = 108 +const input = document.querySelector('input') + +const siren = new Audio('assets/siren.mp3') +const type = new Audio('assets/type.mp3') +const reset = new Audio('assets/reset.mp3') +const tick = new Audio('assets/tick.mp3') + +const typeSound = () => { + let randomNumber = Math.floor(Math.random() * 7) + switch (randomNumber) { + case 0: + new Audio('assets/typing_sounds/button1.mp3').play() + break + case 1: + new Audio('assets/typing_sounds/button2.mp3').play() + break + case 2: + new Audio('assets/typing_sounds/button3.mp3').play() + break + case 3: + new Audio('assets/typing_sounds/button4.mp3').play() + break + case 4: + new Audio('assets/typing_sounds/button5.mp3').play() + break + case 5: + new Audio('assets/typing_sounds/button6.mp3').play() + break + case 6: + new Audio('assets/typing_sounds/button7.mp3').play() + break + case 7: + new Audio('assets/typing_sounds/button8.mp3').play() + } +} + +input.onkeydown = (event) => { + typeSound() + if (event.key == 'Enter') { + input.value.trim() + if (input.value == '4 8 15 16 23 42') { + document.title = 108 + input.value = '' + siren.pause() + siren.currentTime = 0 + reset.play() + } else if (input.value == 'terminate') { + document.title = 4 + input.value = '' + siren.play() + } else { + input.value = '' + } + } +} + +setInterval(() => { + document.title-- + if (document.title <= 4) { + siren.play() + } + tick.play() +}, 60000) + +setInterval(() => { + input.focus() +}, 1) diff --git a/src/style.css b/src/style.css new file mode 100644 index 0000000..74aedc4 --- /dev/null +++ b/src/style.css @@ -0,0 +1,45 @@ +* { + padding: 0; + margin: 0; + box-sizing: border-box; +} + +body { + background-color: rgb(0, 0, 0); + color: rgba(0, 247, 0, 0.75); + font: 1rem Courier New, monospace; + height: 100vh; + overflow: hidden; + text-shadow: 0 0 5px rgba(56, 255, 56, 0.75); +} + +.container { + align-items: center; + display: flex; + justify-content: flex-start; + margin: 0.3rem 0 0 0.8rem; + padding: 40px; +} + +.input { + background-color: rgb(0, 0, 0); + border: none; + color: rgba(0, 247, 0, 0.75); + font-family: Courier New, monospace; + font-size: 3.2rem; + font-weight: bold; + margin-left: 0.5rem; + margin-top: 0.5rem; + outline: none; + text-shadow: 0 0 5px rgba(56, 255, 56, 0.75); +} + +h1 { + display: inline-block; + font-size: 3.8rem; + letter-spacing: -4px; +} + +span { + font-size: 3rem; +}