Compare commits

...

13 Commits

Author SHA1 Message Date
8f3e3da7ec update subdomains 2023-10-16 15:12:17 +02:00
8dc9ece2ac Add Code Guard image, Add mr subdomain 2023-10-15 16:36:11 +02:00
34e6e30f19 Update 2023-09-24 16:16:58 +02:00
cca40240b4 Update .gitignore 2023-05-06 20:30:23 +02:00
The Arrayser
ff636caa56
down! 2023-05-06 20:28:02 +02:00
The Arrayser
0225848d03
Update index.html 2023-05-06 20:25:52 +02:00
The Arrayser
593ebfea86
https://www.youtube.com/watch?v=dQw4w9WgXcQ 2023-05-06 20:21:59 +02:00
54c4c0bfdd Merge remote-tracking branch 'origin/master' 2023-05-06 20:10:48 +02:00
61e97d4097 Update index.html 2023-05-06 20:10:45 +02:00
e219981559 Update files 2023-05-06 20:00:46 +02:00
The Arrayser
d500b16f3a
Amogus 2023-05-06 19:51:13 +02:00
The Arrayser
2763fd220f
Added cinny
s
2023-05-06 19:49:37 +02:00
The Arrayser
61db54d562
Add a few more projects to the project list
d'uh
2023-05-01 20:15:06 +02:00
21 changed files with 1655 additions and 3 deletions

3
.gitignore vendored
View File

@ -1,3 +1,6 @@
visit_counter.log
forum
.well-known
uni
senpai
chess

54
SEM5/AWPM.html Normal file
View File

@ -0,0 +1,54 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<style type="text/css">
.tg {border-collapse:collapse;border-color:#9ABAD9;border-spacing:0;}
.tg td{border-color:#9ABAD9;border-style:solid;border-width:0px;color:#444;
font-family:Arial, sans-serif;font-size:14px;overflow:hidden;padding:10px 5px;word-break:normal;}
.tg th{background-color:#409cff;border-color:#9ABAD9;border-style:solid;border-width:0px;color:#fff;
font-family:Arial, sans-serif;font-size:14px;font-weight:normal;overflow:hidden;padding:10px 5px;word-break:normal;}
.tg .tg-0lax{text-align:left;vertical-align:top}
tr:hover td{
background-color:#EBF5FF;
}
</style>
<table class="tg">
<thead>
<tr>
<th class="tg-0lax">AWPM</th>
<th class="tg-0lax">Probabilistischer Teilnehm-Faktor (in Emojis)<br></th>
<th class="tg-0lax">Begründung</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tg-0lax">Projektarbeit - Advent of Code</td>
<td class="tg-0lax"></td>
<td class="tg-0lax">Hört sich spannend und einfach an</td>
</tr>
<tr>
<td class="tg-0lax">Projektarbeit</td>
<td class="tg-0lax">😐<br><br></td>
<td class="tg-0lax">Ein bisschen ungenau</td>
</tr>
<tr>
<td class="tg-0lax">Elementarteilchenphysik</td>
<td class="tg-0lax">☹️</td>
<td class="tg-0lax">Hat halt nix mit Informatik zu tun</td>
</tr>
<tr>
<td class="tg-0lax">Bienenkunde</td>
<td class="tg-0lax">🙁</td>
<td class="tg-0lax">Dozent</td>
</tr>
</tbody>
</table>
</body>
</html>

77
SEM5/FWPM.html Normal file
View File

@ -0,0 +1,77 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<style type="text/css">
.tg {border-collapse:collapse;border-color:#aaa;border-spacing:0;}
.tg td{background-color:#fff;border-color:#aaa;border-style:solid;border-width:0px;color:#333;
font-family:Arial, sans-serif;font-size:14px;overflow:hidden;padding:10px 5px;word-break:normal;}
.tg th{background-color:#f38630;border-color:#aaa;border-style:solid;border-width:0px;color:#fff;
font-family:Arial, sans-serif;font-size:14px;font-weight:normal;overflow:hidden;padding:10px 5px;word-break:normal;}
.tg .tg-0lax{text-align:left;vertical-align:top}
tr:hover td{
background-color: rgba(240,230,140,.5);
}
</style>
<table class="tg">
<thead>
<tr>
<th class="tg-0lax">FWPM</th>
<th class="tg-0lax">Probabilistischer Teilnehm-Faktor (in Emojis)<br></th>
<th class="tg-0lax">Begründung</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tg-0lax">Embedded Systems</td>
<td class="tg-0lax"></td>
<td class="tg-0lax">Hört sich spannend an</td>
</tr>
<tr>
<td class="tg-0lax">Software Reverse Engineering</td>
<td class="tg-0lax"></td>
<td class="tg-0lax">Hört sich spannend an</td>
</tr>
<tr>
<td class="tg-0lax">Angewandte IT-Sicherheit</td>
<td class="tg-0lax">😐</td>
<td class="tg-0lax">Klausuren von Dozent waren bisher immer recht vordernd<br></td>
</tr>
<tr>
<td class="tg-0lax">CCNAv7 - Switching, Routing and Wireless Essentials</td>
<td class="tg-0lax">🤷</td>
<td class="tg-0lax">Dozent</td>
</tr>
<tr>
<td class="tg-0lax">Geographische Informationssysteme</td>
<td class="tg-0lax">🤷</td>
<td class="tg-0lax"><s>Was da einen wohl erwartet?</s>Oof... Webdevelopment; der Rest ist OK<br></td>
</tr>
<tr>
<td class="tg-0lax">Applied Machine Learning</td>
<td class="tg-0lax">🙁</td>
<td class="tg-0lax">Schon wieder KI</td>
</tr>
<tr>
<td class="tg-0lax">Applied Robotics</td>
<td class="tg-0lax">🙁</td>
<td class="tg-0lax">sehr KI getrieben</td>
</tr>
<tr>
<td class="tg-0lax">Hardware-Oriented Robotics</td>
<td class="tg-0lax">🙁</td>
<td class="tg-0lax">basically "Applied Robotics"?</td>
</tr>
<tr>
<td class="tg-0lax">Evaluation und Auswahl von Standardsoftware</td>
<td class="tg-0lax">☹️</td>
<td class="tg-0lax">hört sich irgendwie langeweilig an</td>
</tr>
</tbody>
</table>
</body>
</html>

28
SEM5/Faecher.html Normal file
View File

@ -0,0 +1,28 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Vorläufige Fächerauswahl!">
<meta property="og:image" content="https://cringe-studios.com/SEM5/thonking.png"/>
<meta property="og:type" content="website">
<meta property="og:url" content="https://cringe-studios.com/SEM5/Faecher.html">
<meta property="og:title" content="Fächerauswahl">
<meta property="og:description" content="Vorläufige Fächerauswahl!">
<title>Fächerauswahl</title>
<link rel="icon" href="thonking.png">
<script>
function resizeIframe(obj) {
obj.style.height = obj.contentWindow.document.documentElement.scrollHeight + 'px';
obj.style.width = obj.contentWindow.document.documentElement.scrollWidth + 'px';
}
</script>
</head>
<body>
<iframe src="FWPM.html" title="FWPM" frameborder="0" scrolling="no" onload="resizeIframe(this)"></iframe>
<iframe src="AWPM.html" title="AWPM" frameborder="0" scrolling="no" onload="resizeIframe(this)"></iframe>
<iframe src="Pflicht.html" title="Pflicht" frameborder="0" scrolling="no" onload="resizeIframe(this)"></iframe>
</body>
</html>

39
SEM5/Pflicht.html Normal file
View File

@ -0,0 +1,39 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<style type="text/css">
.tg {border-collapse:collapse;border-color:#bbb;border-spacing:0;}
.tg td{border-color:#bbb;border-style:solid;border-width:0px;color:#594F4F;
font-family:Arial, sans-serif;font-size:14px;overflow:hidden;padding:10px 5px;word-break:normal;}
.tg th{background-color:#9DE0AD;border-color:#bbb;border-style:solid;border-width:0px;color:#493F3F;
font-family:Arial, sans-serif;font-size:14px;font-weight:normal;overflow:hidden;padding:10px 5px;word-break:normal;}
.tg .tg-0lax{text-align:left;vertical-align:top}
tr:hover td{
background-color:#E0FFEB;
}
</style>
<table class="tg">
<thead>
<tr>
<th class="tg-0lax">Pflicht</th>
<th class="tg-0lax">Probabilistischer Teilnehm-Faktor (in Emojis)<br></th>
<th class="tg-0lax">Begründung</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tg-0lax">Software-Architektur</td>
<td class="tg-0lax"></td>
<td class="tg-0lax">Ist Pflicht im Informatik Studium</td>
</tr>
</tbody>
</table>
</body>
</html>

BIN
SEM5/thonking.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

7
arrayser/amogus.txt Normal file
View File

@ -0,0 +1,7 @@
AMOGUS

41
blobert/index.html Normal file
View File

@ -0,0 +1,41 @@
<!DOCTYPE html>
<html>
<head>
<style>
div {
transition: all 1s linear;
}
</style>
</head>
<body>
<div>This site is currently under construction!</div>
<div>If you are in need of entertainment in the mean time click <a href="https://www.youtube.com/watch?v=dQw4w9WgXcQ">here</a>!</div>
<script>
let divs = document.getElementsByTagName("div");
let size = parseInt(localStorage.getItem("size"));
if(isNaN(size)) size = 15;
for(let div of divs) {
div.style.fontSize = size + "px";
}
const max_size = 100;
const min_size = 10;
let growing = true;
setInterval(() => {
if(size > 100) growing = false;
if(size < 10) growing = true;
if(growing) size += 20;
else size -= 20;
for(let div of divs) {
div.style.fontSize = size + "px";
}
localStorage.setItem("size", size);
}, 1000);
</script>
</body>
</html>

22
cody/index.html Normal file
View File

@ -0,0 +1,22 @@
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="The cringest of them all!">
<meta property="og:image" content="https://nsfw.cringe-studios.com/cody.webp">
<meta property="og:type" content="website">
<meta property="og:url" content="https://cody.cringe-studios.com/">
<meta property="og:title" content="Cringe Cody">
<meta property="og:description" content="The cringest of them all!">
<title>Cringe Cody</title>
<title>Cody</title>
<meta http-equiv="refresh" content="0;url=https://jg-cody.de/">
</head>
<body>
<header></header>
<main></main>
<footer></footer>
</body>
</html>

1
dev/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
videobase

885
dev/cringe.html Normal file

File diff suppressed because one or more lines are too long

17
evil.html Normal file
View File

@ -0,0 +1,17 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="!sognirC eht fo emoH">
<meta property="og:image" content="https://nsfw.cringe-studios.com/grimacing.png">
<meta property="og:type" content="website">
<meta property="og:url" content="https://cringe-studios.com/">
<meta property="og:title" content="etisbeW laiciffO ѕσι∂υт$ єgηιя¢">
<meta property="og:description" content="!sognirC eht fo emoH">
<title>ѕσι∂υт$ єgηιя¢</title>
</head>
<body>
<iframe src="https://cringe-studios.com" style="filter:invert(); position: absolute; top: 0; left: 0; width: 100vw; height: 100vh; border: none; transform: scale(-1, 1);">
</body>
</html>

BIN
img/code-guard.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 281 KiB

BIN
img/cody.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
img/uwu.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

BIN
img/youpoop.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View File

@ -53,6 +53,10 @@
.impostor-image {
animation: amogus 1000s infinite linear;
}
.impostor-image-spinny {
animation: amogus 1s infinite linear;
}
.article {
text-align:left;
@ -201,7 +205,7 @@
<div class="col-md-4 gurke" style="background-color: rgb(239, 228, 176);">
<h1>Cringe CEO</h1>
<a href="https://nsfw.cringe-studios.com/Ecchi.webp"> <!-- Ecchi.png" -->
<img class="impostor-image" src="https://nsfw.cringe-studios.com/arrayser.webp" alt="Picture of the Cringe CEO" width="50%" style="border-radius: 50%;" />
<img class="impostor-image" src="https://nsfw.cringe-studios.com/arrayser.webp" alt="Picture of the Cringe CEO" width="50%" style="border-radius: 50%;" onmouseenter="spinny(this)" onmouseleave="normal(this)"/>
</a><br />
<br />
<div class="article">
@ -222,7 +226,7 @@
</div>
<div class="col-md-4 gurke" style="background-color: rgb(152, 255, 152);">
<h1>Kölian</h1>
<img class="impostor-image" src="https://nsfw.cringe-studios.com/mrletsplay.webp" alt="JulianA" width="50%" style="border-radius: 50%;" /><br />
<img class="impostor-image" src="https://nsfw.cringe-studios.com/mrletsplay.webp" alt="JulianA" width="50%" style="border-radius: 50%;" onmouseenter="spinny(this)" onmouseleave="normal(this)"/><br />
<br />
<div class="article">
<p>Alias: <b><code>MrLetsplay</code></b></p>
@ -241,7 +245,7 @@
</div>
<div class="col-md-4 gurke" style="background-color:rgb(236, 173, 173)">
<h1>Bolbert</h1>
<img class="impostor-image" src="https://nsfw.cringe-studios.com/blobert.webp" alt="JulianB" width="50%" style="border-radius: 50%;" /><br />
<img class="impostor-image" src="https://nsfw.cringe-studios.com/blobert.webp" alt="JulianB" width="50%" style="border-radius: 50%;" onmouseenter="spinny(this)" onmouseleave="normal(this)"/><br />
<br />
<div class="article">
<p>Alias: <b><code>Blobert</code></b></p>
@ -253,6 +257,7 @@
<li>Hobby: Appreciating Memes on the internet</li>
<li>Favorite Song: Shrek opening song (All Star vong Smash Mouth her)</li>
</ul>
<p>Catch Phrase: <code>"Amogus"</code></p>
<p>Pronoun: <code>something</code></p>
<p>Brainfuck is the best language.</p>
</div>
@ -270,6 +275,11 @@
<li><a href="https://github.com/CringeStudios/cringe-studios.com" target="_blank">Cringe Studios Website</a></li>
<li>Secret Reichstag</li>
<li>Shitty Auth Launcher</li>
<li><a href="https://senpai.cringe-studios.com/" target="_blank">Senpai API Webinterface (senAPI) </a></li>
<li><a href="https://chat.cringe-studios.com/" target="_blank">Cringe Studios Chat & Communications Service</a></li>
<li><a href="https://cinny.cringe-studios.com" target="_blank">Another Cringe Studios Chat & Communications Service</a> (<a href="https://github.com/CringeStudios/cinny" target="_blank">GitHub</a>)</li>
<li>Cringe DB (not finished yet)</li>
<li><a href="https://graphite-official.com/" target="_blank">Graphite Discordo Bot</a></li>
<li>Kek Engine</li>
<li>Kekman</li>
<li>KekPong</li>
@ -350,6 +360,17 @@
}
</script>
-->
<script>
function spinny(x) {
x.classList.remove("impostor-image");
x.classList.add("impostor-image-spinny");
}
function normal(x) {
x.classList.remove("impostor-image-spinny");
x.classList.add("impostor-image");
}
</script>
<script>
window.sus = () => console.log("You are sus");

62
index_birthday.html Normal file
View File

@ -0,0 +1,62 @@
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Home of the Cringos!">
<meta property="og:image" content="https://nsfw.cringe-studios.com/grimacing.png">
<meta property="og:type" content="website">
<meta property="og:url" content="https://cringe-studios.com/">
<meta property="og:title" content="¢яιηgє $тυ∂ισѕ Official Website">
<meta property="og:description" content="Home of the Cringos!">
<title>¢яιηgє $тυ∂ισѕ</title>
<link rel="icon" href="https://cdn.discordapp.com/attachments/906285431782539294/959130243053010994/Untitled.png">
<link rel="stylesheet" href="/fnont/comic.css">
<style>
body {
text-align: center;
font-family: 'Comic Mono';
background-color:yellow;
width: min(100vw, 100vh);
height: min(100vw, 100vh);
overflow: hidden
}
footer {
text-align: left;
font-size: 50%;
}
.container{
margin:auto;
width: 100%;
position: absolute;
}
</style>
</head>
<body>
<div class="container">
<header style="padding-top:5vh;padding-bottom:5vh;"><h1 style="color:red;">Happy Birthday JD</h1></header>
<svg style="width:min(50%,50vmin); position:relative;" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><circle fill="#FFCC4D" cx="17" cy="19" r="17"/><ellipse fill="#664500" cx="17.999" cy="26" rx="2" ry="2.5"/><path fill="#664500" d="M8.111 21.383c-.182 0-.367-.05-.532-.154-.467-.294-.607-.911-.313-1.379.916-1.453 3.701-3.938 7.69-2.962.536.131.864.673.733 1.209-.132.536-.676.862-1.209.733-3.604-.882-5.502 2.056-5.521 2.086-.191.302-.516.467-.848.467zm11.973-3.742c-.29 0-.576-.125-.774-.366-.35-.427-.288-1.058.14-1.408 3.176-2.604 6.762-1.562 8.215-.646.467.294.607.912.312 1.379-.293.465-.908.607-1.376.315-.138-.084-3.052-1.823-5.884.499-.186.153-.41.227-.633.227z"/><path fill="#E2A62D" d="M13.346 31.273c-.068 0-.137-.009-.205-.028-.398-.113-.63-.527-.517-.926.437-1.54.258-3.029-.49-4.086-.497-.702-1.205-1.131-1.943-1.178-.414-.025-.728-.382-.702-.795s.381-.751.795-.701c1.193.074 2.313.733 3.073 1.807 1.011 1.429 1.27 3.383.709 5.361-.093.331-.394.546-.72.546zm11.037-3.061c-.142 0-.285-.04-.412-.124-1.167-.77-1.82-2.117-1.792-3.695.029-1.635.809-3.153 1.984-3.869.353-.216.814-.104 1.03.251.216.354.104.814-.251 1.03-.735.448-1.244 1.499-1.264 2.614-.02 1.055.389 1.936 1.118 2.417.346.228.441.693.213 1.039-.144.219-.382.337-.626.337z"/><path fill="#DD2E44" d="M17.179 2.72c-.043-.049-.11-.076-.189-.091 0 0-15.924-3.023-16.613-2.415C-.311.823.74 16.998.74 16.998c.005.081.023.15.067.199.604.684 4.758-2.004 9.279-6.001 4.522-3.998 7.697-7.792 7.093-8.476z"/><path fill="#EA596E" d="M.349.271C.334.301.321.342.311.394.47 1.765 2.006 13.046 2.963 16.572c1.436-.803 2.895-1.894 4.609-3.253C6.116 10.654 1.158.146.349.271z"/><path fill="#3B88C3" d="M29.902 29.229l-10.573-1.303c-1.13-.102-3.117-.112-3.015-1.902.093-1.623 2.04-1.373 3.479-1.16l10.638 1.774-.529 2.591z"/><path fill="#88C9F9" d="M30.43 26.639l-4.222-.724c-.494-.089-.934.647-.956 1.426-.025.866.227 1.304.726 1.406l4.144.512.308-2.62z"/><path fill="#3B88C3" d="M34.918 26.341l-2.622 2.411-4.687-5.097 2.622-2.411c1.361-1.252 3.499-1.162 4.751.199l.135.147c1.251 1.362 1.162 3.499-.199 4.751z"/><ellipse transform="rotate(-42.597 29.954 26.205)" fill="#88C9F9" cx="29.952" cy="26.203" rx="2.77" ry="3.462"/><ellipse transform="rotate(-42.597 29.954 26.205)" fill="#269" cx="29.952" cy="26.203" rx="1.385" ry="2.077"/><circle fill="#55ACEE" cx="2.5" cy="33.5" r="1.5"/><circle fill="#55ACEE" cx="29" cy="2" r="2"/><path fill="#EA596E" d="M4.864 29.246L2.526 23.63.412 29.675zM26 5l-4 1 1-4z"/><path fill="#77B255" d="M31.999 13L36 7.999 33 6z"/></svg>
</div>
<div style="position: absolute; bottom: 0;">
<footer style="display:flex; flex-direction:row; justify-content:space-between;width:100vw">
<span>
&copy; Cringe Studios
</span>
<span>
Website: <a href="https://cringe-studios.com">https://cringe-studios.com</a>
</span>
<span>
Legal: <a href="mailto:legal@cringe-studios.com" target="_blank">legal@cringe-studios.com</a>
</span>
</footer>
</div>
</body>
</html>

BIN
mr/favicon.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

382
mr/index.html Normal file
View File

@ -0,0 +1,382 @@
<!DOCTYPE html>
<html>
<head>
<title>Mr's space</title>
<link rel="icon" href="favicon.gif">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Look at my fancy website pls">
<meta property="og:image" content="https://nsfw.cringe-studios.com/mrletsplay.webp">
<meta property="og:type" content="website">
<meta property="og:url" content="https://mr.cringe-studios.com/">
<meta property="og:title" content="MrLetsplay's space">
<meta property="og:description" content="Look at my fancy website pls">
<style>
* {
cursor: none;
}
body {
--bg1: rgb(0, 0, 0);
--bg2: rgb(15, 15, 15);
background-image: linear-gradient(to bottom, var(--bg1) 0px, var(--bg1) 2px, var(--bg2) 3px, var(--bg2) 6px);
background-size: 100% 6px;
background-repeat: repeat-y;
color: lime;
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
margin: 0;
padding: 0;
font-family: monospace;
font-size: calc(var(--ch) * 2 / 3);
line-height: var(--ch);
user-select: none;
/* animation-name: r;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite; */
}
#content {
width: 100%;
height: 100%;
display: grid;
grid-template-columns: repeat(auto-fill, var(--cw));
grid-template-rows: repeat(auto-fill, var(--ch));
}
.glow {
text-shadow: 0 0 0 lime, 0 0 0 lime;
transition: text-shadow 0.5s ease;
}
.glow:hover {
text-shadow: 1px 1px 10px lime, -1px -1px 5px lime;
transition: text-shadow 0.5s ease;
}
.letter {
text-align: center;
}
.letter:hover {
color: black;
}
.clickable:hover~#cursor {
background-color: red;
}
@keyframes r {
0% {
background-position-y: 0px;
}
100% {
background-position-y: -6px;
}
}
#cursor {
position: fixed;
top: 0;
left: 0;
width: var(--cw);
height: var(--ch);
background-color: lime;
z-index: -1;
}
</style>
<noscript>
<style>
* {
cursor: default;
}
body {
--cw: 15px;
--ch: 30px;
}
</style>
</noscript>
</head>
<body>
<section id="content">
<noscript>N</noscript>
<noscript>O</noscript>
<noscript>M</noscript>
<noscript>E</noscript>
<noscript>D</noscript>
<noscript>I</noscript>
<noscript>A</noscript>
</section>
<div id="cursor" style="display: none;"></div>
<script>
const cursor = document.getElementById("cursor");
const body = document.getElementById("content");
const colors = ["red", "green", "blue"];
let cW = 15;
let cH = 2 * cW;
let paintMode = false;
let color = colors[0];
document.body.style.setProperty("--cw", cW + "px");
document.body.style.setProperty("--ch", cH + "px");
function getBoxPos(x, y) {
x -= x % cW;
y -= y % cH;
return [x, y];
}
function getBoxIdx(x, y) {
x = Math.floor(x / cW);
y = Math.floor(y / cH);
return [x, y];
}
function setBoxColor(x, y, color) {
const boxId = "box-" + x + "-" + y;
let box = document.getElementById(boxId);
if (!box) {
box = document.createElement("a");
box.id = boxId;
box.style.zIndex = -1;
box.style.position = "fixed";
box.style.left = "calc(var(--cw) * " + x + ")";
box.style.top = "calc(var(--ch) * " + y + ")";
box.style.width = "var(--cw)";
box.style.height = "var(--ch)";
body.appendChild(box);
}
box.style.backgroundColor = color;
}
function deleteBox(x, y) {
const boxId = "box-" + x + "-" + y;
let box = document.getElementById(boxId);
if (box != null) box.remove();
}
document.onmousemove = event => {
let [x, y] = getBoxPos(event.x, event.y);
cursor.style.left = x + "px";
cursor.style.top = y + "px";
cursor.style.display = "block";
let [bx, by] = getBoxIdx(event.x, event.y);
if (paintMode) setBoxColor(bx, by, color);
};
document.onkeyup = event => {
switch (event.key) {
case "p":
paintMode = !paintMode;
break;
case "c":
color = colors[(colors.indexOf(color) + 1) % colors.length];
break;
case "n":
cW--;
cH = 2 * cW;
document.body.style.setProperty("--cw", cW + "px");
document.body.style.setProperty("--ch", cH + "px");
break;
case "m":
cW++;
cH = 2 * cW;
document.body.style.setProperty("--cw", cW + "px");
document.body.style.setProperty("--ch", cH + "px");
break;
}
}
document.onmouseout = () => {
cursor.style.display = "none";
};
let snekRunning = false;
function playSnek() {
if (snekRunning) return;
snekRunning = true;
console.log("Hello world");
let snekPos = [0, 0];
let snek = [];
let dir = 0;
let gridW = Math.floor(window.innerWidth / cW);
let gridH = Math.floor(window.innerHeight / cH);
let dot = null;
makeFood = () => {
if (dot != null) deleteBox(dot[0], dot[1]);
dot = [Math.round(Math.random() * gridW), Math.round(Math.random() * gridH)];
setBoxColor(dot[0], dot[1], "pink");
};
makeFood();
interval = setInterval(() => {
gridW = Math.floor(window.innerWidth / cW);
gridH = Math.floor(window.innerHeight / cH);
let oldPos = [...snekPos]; // More memroy allocation
switch (dir) {
case 0:
snekPos[0]++;
break;
case 1:
snekPos[1]++;
break;
case 2:
snekPos[0]--;
break;
case 3:
snekPos[1]--;
break;
}
if (snekPos[0] < 0) {
snekPos[0] = gridW;
}
if (snekPos[0] > window.innerWidth / cW) {
snekPos[0] = 0;
}
if (snekPos[1] < 0) {
snekPos[1] = gridH;
}
if (snekPos[1] > window.innerHeight / cH) {
snekPos[1] = 0;
}
deleteBox(oldPos[0], oldPos[1]);
if (oldPos[0] == dot[0] && oldPos[1] == dot[1]) {
snek.push(oldPos);
makeFood();
}
for (let p of snek) {
deleteBox(p[0], p[1]);
}
for (let p of snek) {
if (snekPos[0] == p[0] && snekPos[1] == p[1]) {
// Die
snekRunning = false;
deleteBox(dot[0], dot[1]);
clearInterval(interval);
return;
}
}
snek.push(oldPos);
snek.shift();
setBoxColor(snekPos[0], snekPos[1], "green");
for (let p of snek) {
setBoxColor(p[0], p[1], "yellow");
}
}, 100);
document.addEventListener("keyup", event => {
switch (event.keyCode) {
case 38: // up
dir = 3;
break;
case 40: // down
dir = 1;
break;
case 37: // left
dir = 2;
break;
case 39: // right
dir = 0;
break;
}
});
}
let content = [
" ",
" MrLetsplay's Secret Space",
" Projects",
[" - ", { text: "KekEngine", link: "https://git.cringe-studios.com/mr/KekEngine" }, " (+ ", { text: "Kekrooms", link: "https://git.cringe-studios.com/mr/Kekrooms" }, ")"],
[" - ", { text: "ShittyAuthLauncher", link: "https://github.com/MrLetsplay2003/ShittyAuthLauncher" }, ", ", { text: "ShittyAuthServer", link: "https://github.com/MrLetsplay2003/ShittyAuthServer" }, ", ", { text: "ShittyAuthPatcher", link: "https://github.com/MrLetsplay2003/ShittyAuthPatcher" }],
" ",
" Programs",
[" - ", { text: "Snek", onclick: playSnek }],
" ",
" p - Enable/Disable paint mode | c - Switch paint color | n/m - Zoom out/in"
]
function appendStr(text, newLine, makeElement = () => document.createElement("a")) {
let first = newLine;
for (let l of text) {
let b = makeElement();
if (first) b.style.gridColumn = "1 / 2";
b.classList.add("letter");
b.innerText = l;
body.appendChild(b);
first = false;
}
}
for (let line of content) {
if (typeof line == "string") {
appendStr(line, true);
} else {
let first = true;
for (let l of line) {
if (typeof l == "string") {
appendStr(l, first);
} else {
if (l.link) {
l.onclick = () => window.location.href = l.link;
}
let makeElement = () => {
let b = document.createElement("a");
if (l.onclick) {
b.onmouseover = event => {
cursor.style.backgroundColor = "red";
};
b.onmouseout = event => {
cursor.style.backgroundColor = null;
}
b.classList.add("clickable");
b.onclick = l.onclick;
}
return b;
}
appendStr(l.text, first, makeElement);
}
first = false;
}
}
}
</script>
</body>
</html>

13
projects/index.html Normal file
View File

@ -0,0 +1,13 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Cringe-Studios Projects</title>
</head>
<body>
<ul>
<li><a href="#">CringeDB</a></li>
<li><a href="#">Cringe Studios Generic Text Chat Alternative (Name is subject to change)</a></li>
</ul>
</body>
</html>