Spiele programmieren mit Lua und Löve2D
In dieser Tutorialreihe programmieren wir ein simples Snake-Spiel. Dabei schauen wir uns an, wie man mit Lua und Löve2D von Anfang bis Ende ein komplettes Spiel entwickelt. Dabei erstellen wir uns ein Spielfeld mit einer Tilemap, implementieren die Steuerung der Schlange, Kollisionen und Soundeffekte.
Teil 1 - Die ersten Schritte
Im ersten Teil der Reihe befassen wir uns erst mal mit der Einrichtung und den ersten Schritten in Love2D.
Teil 2 - Spielfeld und Steuerung
Nachdem wir uns eingerichtet haben können wir uns schon direkt daran machen das Spielfeld und die Steuerung unserer Schlange zu implementieren.
Teil 3 - Der Körper der Schlange
Wenn man Snake kennt dann weiß man, dass die Herausforderung darin besteht sich nicht selbst zu essen. Dafür muss der Körper der Schlange im Laufe des Spiels wachsen. Wie wir das umsetzen, sehen wir uns hier an.
Teil 4 - Kollisionen
Was nutzen uns Items und Hinernisse, wenn wir damit nicht interagieren können? Richtig, nichts! Deswegen kümmern wir uns in diesem Tutorial um die Kollisionen.
Teil 5 - Items einsammeln
Damit unsere Schlange wachsen kann, muss sie auch essen. Da wir nun schon Kollisionen implementiert haben, können wir uns nun um die einsammelbaren Gegenstände kümmern.
Teil 6 - Mehr Grafik
Zwar kann ich keine schicken Grafiken anbieten, aber um es zumindest ein bisschen ansehnlicher zu gestalten kümmern wir uns erst mal darum diese überhaupt zu implementieren.
Teil 7 - Mehr Grafik 2
Im letzten Teil der Reihe haben wir bereits damit begonnen die ersten Grafiken einzubinden. In diesem Tutorial gehen noch einen Schritt weiter und versorgen unser kleines Spiel mit weiteren Grafiken.
Teil 8 - Soundeffekte und Musik
Das Spiel ist nun schon fast fertig. Aber nur fast. Musik und Soundeffekte dürfen natürlich auch nicht fehlen. Und wie wir diese in unser Spiel bekommen, schauen wir uns in diesem Tutorial an.
Teil 9 - Ein kleine Nachschlag
Soweit ist unser Spiel zwar fertig, aber ein paar Kleinigkeiten könnte man noch angehen. Auch ist mir ein kleiner Fehler unterlaufen, den ich in diesem Tutorial noch korrigiere.