big Performance fix
All checks were successful
Dynamic Branch Deploy / build-and-deploy (push) Successful in 1m20s
All checks were successful
Dynamic Branch Deploy / build-and-deploy (push) Successful in 1m20s
This commit is contained in:
@@ -5,31 +5,33 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover">
|
||||
<title>Escape the Teacher</title>
|
||||
|
||||
<script src="js/pixi.min.js"></script>
|
||||
|
||||
<link rel="stylesheet" href="style.css">
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<button id="mute-btn" onclick="toggleAudioClick()">🔊</button>
|
||||
|
||||
<div id="rotate-overlay">
|
||||
<div class="icon">📱↻</div>
|
||||
<p>Bitte Gerät drehen!</p>
|
||||
<small>Querformat benötigt</small>
|
||||
</div>
|
||||
<div id="game-container">
|
||||
<canvas id="gameCanvas"></canvas>
|
||||
|
||||
<div id="game-container">
|
||||
<div id="ui-layer">
|
||||
SCORE: <span id="score">0</span>
|
||||
</div>
|
||||
|
||||
<div id="startScreen">
|
||||
|
||||
<div class="start-left">
|
||||
<h1>ESCAPE THE<br>TEACHER</h1>
|
||||
|
||||
<p style="font-size: 12px; color: #aaa;">Dein Rekord: <span id="localHighscore" style="color:yellow">0</span></p>
|
||||
|
||||
<button id="startBtn" onclick="startGameClick()">STARTEN</button>
|
||||
<div id="loadingText">Lade Grafiken...</div>
|
||||
<div id="loadingText">Lade Assets...</div>
|
||||
|
||||
<div class="info-box">
|
||||
<div class="info-title">SCHUL-NEWS</div>
|
||||
@@ -78,13 +80,14 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="modal-codes" class="modal-overlay">
|
||||
<div id="modal-codes" class="modal-overlay" style="display:none;">
|
||||
<div class="modal-content">
|
||||
<button class="close-modal" onclick="closeModal()">X</button>
|
||||
<h2 style="color:yellow">MEINE BEWEISE</h2>
|
||||
<div id="codesList" style="font-size: 10px; line-height: 1.8;">
|
||||
Lade Daten...
|
||||
</div>
|
||||
<p style="margin-top:20px; font-size:9px; color:#888;">Zeige diesen Code für deinen Preis oder lösche den Eintrag.</p>
|
||||
<p style="margin-top:20px; font-size:9px; color:#888;">Zeige diesen Code dem Lehrer für deinen Preis oder lösche den Eintrag.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -97,12 +100,12 @@
|
||||
Sebastian Unterschütz<br>
|
||||
Göltzschtalblick 16<br>
|
||||
08236 Ellefeld<br>
|
||||
<small>Kontakt: sebastian@unterschutz.de</small>
|
||||
<small>Kontakt: sebastian@unterschuetz.de</small>
|
||||
</p>
|
||||
|
||||
<hr style="border:1px solid #444; margin: 15px 0;">
|
||||
|
||||
<p><strong>🎵 Musik Design:</strong><br>
|
||||
<p><strong>🎵 Musik & Sound Design:</strong><br>
|
||||
<span style="color:#ffcc00; font-size:18px;">Max E.</span>
|
||||
</p>
|
||||
|
||||
@@ -129,50 +132,43 @@
|
||||
<h2>Datenschutzerklärung</h2>
|
||||
|
||||
<p><strong>1. Datenschutz auf einen Blick</strong><br>
|
||||
Allgemeine Hinweise: Die folgenden Hinweise geben einen einfachen Überblick darüber, was mit Ihren personenbezogenen Daten passiert, wenn Sie diese Website besuchen. Personenbezogene Daten sind alle Daten, mit denen Sie persönlich identifiziert werden können.</p>
|
||||
Allgemeine Hinweise: Die folgenden Hinweise geben einen einfachen Überblick darüber, was mit Ihren personenbezogenen Daten passiert, wenn Sie diese Website besuchen.</p>
|
||||
|
||||
<p><strong>2. Verantwortlicher</strong><br>
|
||||
Verantwortlich für die Datenverarbeitung auf dieser Website ist:<br>
|
||||
Sebastian Unterschütz<br>
|
||||
Göltzschtalblick 16, 08236 Ellefeld<br>
|
||||
E-Mail: sebastian@unterschutz.de<br>
|
||||
E-Mail: sebastian@unterschuetz.de<br>
|
||||
<em>(Schulprojekt im Rahmen der IT232)</em></p>
|
||||
|
||||
<p><strong>3. Hosting (Hetzner)</strong><br>
|
||||
Wir hosten die Inhalte unserer Website bei folgendem Anbieter:<br>
|
||||
<strong>Hetzner Online GmbH</strong><br>
|
||||
Industriestr. 25<br>
|
||||
91710 Gunzenhausen<br>
|
||||
Deutschland<br>
|
||||
Industriestr. 25, 91710 Gunzenhausen, Deutschland<br>
|
||||
<br>
|
||||
Serverstandort: <strong>Deutschland</strong> (ausschließlich).<br>
|
||||
Wir haben mit dem Anbieter einen Vertrag zur Auftragsverarbeitung (AVV) geschlossen. Hierbei handelt es sich um einen datenschutzrechtlich vorgeschriebenen Vertrag, der gewährleistet, dass dieser die personenbezogenen Daten unserer Websitebesucher nur nach unseren Weisungen und unter Einhaltung der DSGVO verarbeitet.</p>
|
||||
Wir haben mit dem Anbieter einen Vertrag zur Auftragsverarbeitung (AVV) geschlossen, der die Einhaltung der DSGVO gewährleistet.</p>
|
||||
|
||||
<p><strong>4. Datenerfassung auf dieser Website</strong></p>
|
||||
|
||||
<p><strong>Server-Log-Dateien</strong><br>
|
||||
Der Provider der Seiten (Hetzner) erhebt und speichert automatisch Informationen in so genannten Server-Log-Dateien, die Ihr Browser automatisch an uns übermittelt. Dies sind:
|
||||
<ul>
|
||||
<li>Uhrzeit der Serveranfrage</li>
|
||||
<li>IP-Adresse</li>
|
||||
</ul>
|
||||
Eine Zusammenführung dieser Daten mit anderen Datenquellen wird nicht vorgenommen.<br>
|
||||
<strong>Rechtsgrundlage:</strong> Art. 6 Abs. 1 lit. f DSGVO. Der Websitebetreiber hat ein berechtigtes Interesse an der technisch fehlerfreien Darstellung und der Optimierung seiner Website – hierzu müssen die Server-Log-Files erfasst werden. Die Daten werden nach spätestens 7 Tagen automatisch gelöscht.</p>
|
||||
Der Provider der Seiten (Hetzner) erhebt und speichert automatisch Informationen in so genannten Server-Log-Dateien (Browser, OS, Referrer, Hostname, Uhrzeit, IP-Adresse).<br>
|
||||
<strong>Rechtsgrundlage:</strong> Art. 6 Abs. 1 lit. f DSGVO (Berechtigtes Interesse an technischer Fehlerfreiheit und Sicherheit). Die Daten werden nach spätestens 14 Tagen gelöscht.</p>
|
||||
|
||||
<p><strong>Spielstände & Highscores</strong><br>
|
||||
Wenn Sie einen Highscore eintragen, speichern wir in unserer Datenbank:
|
||||
Wenn Sie einen Highscore eintragen, speichern wir:
|
||||
<ul>
|
||||
<li>Den von Ihnen gewählten Namen (Pseudonym empfohlen!)</li>
|
||||
<li>Ihren Punktestand und Zeitstempel</li>
|
||||
<li>Eine Session-ID und einen "Claim-Code" zur Verifizierung</li>
|
||||
<li>Gewählter Name (Pseudonym empfohlen!)</li>
|
||||
<li>Punktestand und Zeitstempel</li>
|
||||
<li>Session-ID und "Claim-Code"</li>
|
||||
</ul>
|
||||
Diese Daten dienen ausschließlich der Darstellung der Bestenliste und der Spielmechanik.</p>
|
||||
Diese Daten dienen der Darstellung der Bestenliste.</p>
|
||||
|
||||
<p><strong>Lokale Speicherung (LocalStorage)</strong><br>
|
||||
Das Spiel speichert Einstellungen (z.B. "Ton aus") und Ihre persönlichen "Claim-Codes" lokal in Ihrem Browser (`LocalStorage`). Diese Daten verlassen Ihr Gerät nicht, außer Sie übermitteln einen Highscore aktiv an den Server. Wir setzen <strong>keine Tracking-Cookies</strong> oder Analyse-Tools (wie Google Analytics) ein.</p>
|
||||
Das Spiel speichert Einstellungen (Audio) und Codes lokal in Ihrem Browser. Wir setzen <strong>keine Tracking-Cookies</strong> oder Analyse-Tools ein.</p>
|
||||
|
||||
<p><strong>5. Ihre Rechte</strong><br>
|
||||
Sie haben jederzeit das Recht auf unentgeltliche Auskunft über Ihre gespeicherten personenbezogenen Daten, deren Herkunft und Empfänger und den Zweck der Datenverarbeitung sowie ein Recht auf Berichtigung oder Löschung dieser Daten. Hierzu sowie zu weiteren Fragen zum Thema personenbezogene Daten können Sie sich jederzeit an die im Impressum angegebene Adresse wenden.</p>
|
||||
Sie haben jederzeit das Recht auf Auskunft, Berichtigung und Löschung Ihrer Daten. Wenden Sie sich dazu an den Verantwortlichen im Impressum.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -195,12 +191,13 @@
|
||||
const modals = document.querySelectorAll('.modal-overlay');
|
||||
modals.forEach(el => el.style.display = 'none');
|
||||
}
|
||||
|
||||
|
||||
window.onclick = function(event) {
|
||||
if (event.target.classList.contains('modal-overlay')) {
|
||||
closeModal();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user