Du wolltest schon immer mal ein Game programmieren, aber wusstest nicht, wo du anfangen sollst? Keine Sorge, dieser Artikel zeigt dir, wie du in nur 10 Minuten ein einfaches, interaktives Würfel-Spiel mit JavaScript erstellen kannst. Keine komplizierten Engines, keine unnötigen Abhängigkeiten – nur reines JavaScript, HTML und CSS. Los geht’s!
Was du brauchst
Bevor wir starten, stell sicher, dass du folgende Dinge parat hast:
- Einen Texteditor (z.B. VS Code, Sublime Text, Atom)
- Einen Webbrowser (Chrome, Firefox, Safari)
- Grundkenntnisse in HTML, CSS und JavaScript sind von Vorteil, aber nicht zwingend erforderlich. Wir erklären alles Schritt für Schritt.
Schritt 1: Die HTML-Struktur erstellen
Zuerst erstellen wir die grundlegende HTML-Struktur für unser Würfel-Spiel. Öffne deinen Texteditor und erstelle eine neue Datei namens index.html
. Füge folgenden Code ein:
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Interaktiver Würfel</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="container">
<div id="dice">1</div>
<button id="roll-button">Würfeln</button>
</div>
<script src="script.js"></script>
</body>
</html>
Dieser Code erstellt einen Container (<div class="container">
), der unseren Würfel (<div id="dice">1</div>
) und einen Button zum Würfeln (<button id="roll-button">Würfeln</button>
) enthält. Wir verlinken außerdem eine CSS-Datei (style.css
) für die Gestaltung und eine JavaScript-Datei (script.js
) für die Funktionalität.
Schritt 2: Das CSS-Styling hinzufügen
Als Nächstes erstellen wir die CSS-Datei, um unseren Würfel ansprechend zu gestalten. Erstelle eine neue Datei namens style.css
und füge folgenden Code ein:
body {
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
background-color: #f0f0f0;
}
.container {
display: flex;
flex-direction: column;
align-items: center;
}
#dice {
width: 100px;
height: 100px;
background-color: #fff;
border: 2px solid #333;
border-radius: 10px;
font-size: 40px;
text-align: center;
line-height: 100px;
margin-bottom: 20px;
cursor: pointer; /* Zeigt an, dass der Würfel klickbar ist */
transition: transform 0.3s ease; /* Fügt eine sanfte Animation hinzu */
}
#dice:active {
transform: scale(0.95); /* Verkleinert den Würfel leicht beim Klicken */
}
#roll-button {
padding: 10px 20px;
font-size: 16px;
background-color: #4CAF50;
color: white;
border: none;
border-radius: 5px;
cursor: pointer;
}
#roll-button:hover {
background-color: #3e8e41;
}
Dieser CSS-Code zentriert den Inhalt auf der Seite, gestaltet den Würfel als Quadrat mit abgerundeten Ecken und einem Rahmen, und formatiert den „Würfeln”-Button. Wir haben auch einen :active
-Zustand für den Würfel hinzugefügt, der ihn leicht verkleinert, wenn er angeklickt wird, sowie eine transition
, um die Animation sanft zu gestalten. Der cursor: pointer
sorgt dafür, dass der Cursor sich in eine Hand verwandelt, wenn er über den Würfel fährt, was dem Benutzer signalisiert, dass er mit ihm interagieren kann.
Schritt 3: Die JavaScript-Logik implementieren
Jetzt kommt der spannende Teil: die JavaScript-Logik, die unseren Würfel zum Leben erweckt. Erstelle eine neue Datei namens script.js
und füge folgenden Code ein:
const dice = document.getElementById('dice');
const rollButton = document.getElementById('roll-button');
rollButton.addEventListener('click', () => {
rollDice();
});
dice.addEventListener('click', () => {
rollDice();
});
function rollDice() {
const randomNumber = Math.floor(Math.random() * 6) + 1;
dice.textContent = randomNumber;
}
Dieser Code holt sich zunächst die Referenzen zum Würfel-Element (dice
) und dem Button (rollButton
). Anschließend fügen wir einen Event Listener hinzu, der die Funktion rollDice()
aufruft, wenn der Button oder der Würfel selbst angeklickt wird. Die rollDice()
-Funktion generiert eine zufällige Zahl zwischen 1 und 6 und aktualisiert den Textinhalt des Würfel-Elements mit dieser Zahl.
Schritt 4: Testen und Anpassen
Öffne die index.html
-Datei in deinem Browser. Du solltest einen Würfel mit der Zahl 1 und einen Button mit der Aufschrift „Würfeln” sehen. Klicke auf den Button oder den Würfel selbst und beobachte, wie sich die Zahl auf dem Würfel ändert. Glückwunsch, du hast dein erstes interaktives Game-Projekt erfolgreich erstellt!
Jetzt kannst du das Spiel nach Belieben anpassen. Hier sind ein paar Ideen:
- Ändere die Farben und das Aussehen des Würfels mit CSS.
- Füge eine Animation hinzu, wenn der Würfel gewürfelt wird.
- Zeige die Würfelaugen anstelle von Zahlen.
- Implementiere eine Highscore-Funktion.
Bonus: Animation hinzufügen
Um eine einfache Animation hinzuzufügen, kannst du dem Würfel eine CSS-Klasse hinzufügen, die eine Drehung bewirkt. Ändere deine script.js
-Datei wie folgt:
const dice = document.getElementById('dice');
const rollButton = document.getElementById('roll-button');
rollButton.addEventListener('click', () => {
rollDice();
});
dice.addEventListener('click', () => {
rollDice();
});
function rollDice() {
dice.classList.add('rolling');
const randomNumber = Math.floor(Math.random() * 6) + 1;
setTimeout(() => {
dice.classList.remove('rolling');
dice.textContent = randomNumber;
}, 300); // Wartezeit für die Animation (300 Millisekunden)
}
Füge dann folgendes CSS zu deiner style.css
-Datei hinzu:
#dice.rolling {
animation: roll 0.3s ease; /* Kurze Animation beim Würfeln */
}
@keyframes roll {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
Jetzt dreht sich der Würfel kurz, bevor er die neue Zahl anzeigt, was das Spielerlebnis noch ansprechender macht.
Fazit
In diesem Artikel hast du gelernt, wie du in wenigen Minuten ein einfaches, interaktives Würfel-Spiel mit HTML, CSS und JavaScript erstellen kannst. Dieses Projekt ist ein idealer Einstieg in die Spieleentwicklung und zeigt, dass man mit einfachen Mitteln schnell Erfolgserlebnisse erzielen kann. Nutze dieses Grundgerüst, um deine eigenen Ideen umzusetzen und komplexere Spiele zu entwickeln. Viel Spaß beim Programmieren!