Nach ein bisschen weiterer Arbeit hab ich jetzt das Spiel soweit, dass man ein paar Skelette abschießen kann, die den Spieler verfolgen. Allerdings stürzt das Spiel nach wenigen Sekunden ab, was wohl an dem schlechten ATI Treiber für meine Grafikkarte unter Linux liegt. Also erwäge ich jetzt, mir eine neue Grafikkarte zuzulegen, denn unter diesen Umständen macht das Entwickeln nicht wirklich Spaß...
Um die Organisation der ganzen Objekte auf der Karte hin zu bekommen, habe ich mir angelehnt an die MarteEngine und das Artemis Framework, folgendes Konzept überlegt: Es gibt mehrere Schichten (Layer), auf denen sich die Objekte (Entities) befinden können. Diese Objekte bestehen aus drei verschiedenen Teilen. Zunächst hat jedes Objekt Komponenten (Components), die als reine Datenkonstrukte fungieren, also zum Beispiel die Position, das Anzeigebild oder eine Geschwindigkeit des Objekts beinhalten. Dazu kommen dann bestimmte Verhaltensweisen (Behaviours), die festlegen, wie sich die Komponenten im Verlaufe der Zeit verhalten. Schließlich gibt es noch verschiedene Anzeigemöglichkeiten (Looks) mithilfe von denen das Objekt dann auf den Bildschirm gezeichnet wird.
Dieses System bietet eine große Flexibilität, da die einzelnen Teile nahezu beliebig kombiniert werden können, um das gewünscht Verhalten und Aussehen zusammen zu schrauben. In der nächsten Zeit werde ich irgendwann mal die Dokumentation von den ganzen Klassen verbessern, falls jemand anderes das System verwenden möchte...
Ansonsten habe ich mir jetzt ein paar Gedanken gemacht und durchaus nicht uninspiriert vom Mojangs Catacomb Snatch hab ich mir überlegt eine Mischung aus Tower Defense und Shoot 'em Up zu basteln, dass in einer Mine spielt. Aber mal schauen was daraus wird. Die Grafiken für den Spielen sind übrigens auch aus dem Spiel geklaut...