Thorsten F.: Spielfeld in der Art von Jump and Run

Hi Leute,

möchte ein in Java ein Spiel programmieren, welches auf der Art von Jump and Run basiert.

Habe schonm im Netz nach einer Art Spielfeld gesucht. Wollte mir mal Beispiel Code anschauen, aber dies bzgl. nicht wirklich viel gefunden.

In einem Jump and Run gibt es ja auch Hindernisse.

Ich selbst habe mittlerweile eine Figur, die ich nur in einem ganz best. Bereich bewegen kann. Jedoch habe ich das alles mit x-,y-Koordinaten gemacht.

Das ist dann alles statisch.

Weiß jemand von euch eine Seite oder kann mir jemand sagen, wie ich Bilder als ein Hindernis beschreiben kann, bei dem meine Figur (die ich bewegen kann ) nicht weitergehen kann?

  1. Hallo Thorsten,

    Möglicherweise gibt es irgendwo eine Javabibliothek für Jump-and-Run-Spiele, aber unter den Standardklassen gibt es sowas natürlich nicht.
    Wenn Du keine solche Bibliothek finden solltest, musst Du eben alles selber implementieren, sprich die Tastaturereignisse abfangen und entsprechend die graphische Oberfläche akualisieren.

    Die Java 2D API < http://java.sun.com/docs/books/tutorial/2d/index.html> ist beim Erzeugen der Graphik sicher ganz hilfreich.

    Du solltest ein Model für Dein Spiel entwerfen, das beschreibt, aus welchen Elementen ein Level besteht, wo die Figur gerade steht usw.

    Damit kannst Du ganz unabhängig von der graphischen Darstellung berechnen, was im Spiel passiert (Läuft die Figur gegen irgendetwas, fällt sie runter etc)
    Das Model stößt dann die entsprechende Visualisierung an.

    Bsp: Benutzer drückt Vorwärts.
    Model bekommt das Ereignis "Vorwärtslaufen anfangen".
    Das Model berechnet dann alle 0.25 Sekunden, was passiert, wenn die Figur einen Schritt nach vorn macht, und schickt ein entsprechendes Ereignis an das Modul, das sich um die Visualisierung kümmert.

    Model und Visualisierungsmodul müssen wohl in einem extra Thread laufen.
    Man muss ja Tataturereignisse entgegennehmen können, wärend das Spiel noch auf das letzte Ereignis reagiert. Ereignisse wie "Vorwärtslaufen anfangen" können ja eine beliebig lange Reaktion zur Folge haben.

    Grüße

    Daniel