Feb 252013
 

In dieser Lektion werden wir ein Gesundheitssystem für unsere Heliboys hinzufügen und den Tod unseres Roboters.

Tod des Roboters

1

Jedes Spiel hat ein Ausfall-System eingebaut, dies Endet meistens mit dem Tod der Spielfigur und meist mit dem Neustart des Levels. Wenn nun unser Roboter in ein Loch fällt, wollen wir ausgegeben haben, dass dieser nun Tod ist. Dies gelingt uns in 3 Schritten:

1. Wir erstellen eine Variable die überprüft ob das Spiel noch läuft oder der Roboter Tod ist, also den Status des Spiels.

2. Je nachdem welche Status unser Spiel hat, werden wir verschiedene Teile der update() und paint()-Methode haben.

3. Wenn unser Roboter in ein Loch fällt, also die Y Variable außerhalb des Bildschirms ist, wird der Status des Spiels auf Tod gesetzt und das entsprechende Bild angezeigt.

1. den Status des Spiels erstellen

Hierzu werden wir ein Enum erstellen. Dies besteht aus Konstanten, also festen Variablen. Dazu fügen wir folgendes in der StartingClass hinzu:

Hier haben wir nun unser Enum erstellt. Darin sind die festen Variablen Running und Dead. Als nächstes setzen wir zu beginn des Spiels den Status auf Running.

Damit sich das Spiel nicht immer neu Aktualisiert, wenn unser Roboter gestorben ist, müssen wir die run()-Methode ändern. Dazu setzen wir ein IF-Statement innerhalb der Methode.

Ähnlich wie bei der run()-Methode, werden wir nun die paint()-Methode bearbeiten. Falls der Tod eintritt, werden wir ein entsprechendes Bild ausgeben.

Damit haben wir nun den Tod unseres Roboters eingebaut. Nun müssen wir noch ein Gesundheitssystem für unseren Roboter einbauen. Falls ihr etwas üben wollt, erstellt eine Methode, welche den Neustart des Spiels initialisiert oder aber ihr wartet bis wir das Spiel auf Android portiert haben.

Tipps:

  • Setzt jede Variable auf ihren Ausgangswert zurück, wie zu Beginn des Spiels
  • Erstellt eine Methode die alle benötigten Methoden aufruft, dass das Spiel wieder läuft.
  • Erstellt ein IF Statement, dass das Spiel neustartet nur nach einer gewissen Tastenkombination und nur wenn der Roboter auch Tod ist.

Gesundheitssystem des Gegners

 1. Erstellen des Gesundheitssystems

Dazu öffnen wir als erstes die Enemy Klasse. Als wir diese Klasse erstellt haben, haben wir maxHealth und currentHealth als Variable deklariert. Diese beiden Variablen löschen wir nun, genauso wie die dazugehörigen Getters and Setters, dies sollten 4 insgesamt sein. Zum Schluss fügen wir eine neue Variable mit dem Namen health ein und geben ihr den Wert von 5.

 

2. Schaden und Tod des Heliboys

Hierzu öffnen wir die Projectile Klasse. Wir werden das Gesundheitssystem nun dazu verwenden mit dem Schaden und dem Tod des Heliboys umzugehen.

Wenn wir dieses Spiel auf Android portieren, werden wir wesentlich mehr Gegner einfügen. Dies werden wir dann mit einer ArrayList tun. Da wir momentan nur 2 Gegner haben, müssen wir dies für beide einzeln tun.

Alle Änderungen werden in der checkCollision()-Methode der Projectile Klasse statt finden. Unser Ziel ist recht simpel. Wenn die Gesundheit größer 0 ist, subtrahiere 1. Wenn die Gesundheit 0 ist, stirbt der Heliboy und wird vom Bildschirm entfernt.

Wenn wir diese Änderungen vorgenommen haben, bekommen wir folgendes Resultat im Spiel.

2

Wie ihr sehen könnt oder auch nicht, ist der erste Heliboy verschwunden und es wurden 5 Punkte hinzugefügt. Unser Spiel beinhaltet noch einige Fehler, diese werden wir aber ausmerzen, wenn wir unser Spiel auf Android portiert haben. In der nächsten Lektion werden wir uns mit künstlicher Intelligenz beschäftigen und diese in unser Spiel einfügen.

Falls ihr Fragen habt, immer raus damit, ich helfe euch sehr gerne. Hinterlasst bitte einfach einen Kommentar.

Teilt diese Seite mit euren Freunden und besucht uns mal auf Facebook und auf Google+, dass würde dieser Seite wirklich weiterhelfen, Danke sehr. Oder ein Klick auf die Werbung, hilft dabei diese Seite am laufen zu halten.

Source Code

Falls einer hier einsteigen möchte oder nicht den ganzen Code abtippen möchte, habe ich hier das Projekt exportiert und ihr könnt diesen bei euch einfügen. Unter der Kategorie Eclipse und Import und Export habe ich erläutert wie ihr dies macht.

Kapitel 3 Lektion 8

Quelle: Original Anleitung auf englisch von Kilobolt Studios

Lektion 7 – Kollisionserkennung Teil 3 Lektion 9 – Künstliche Intelligenz