Lernpfad:Hehomon/11: Unterschied zwischen den Versionen

Aus Informatik-Box
Zur Navigation springen Zur Suche springen
Markierungen: Mobile Bearbeitung Mobile Web-Bearbeitung
Markierungen: Mobile Bearbeitung Mobile Web-Bearbeitung
Zeile 30: Zeile 30:
{{Aufgabe:End}}
{{Aufgabe:End}}
{{Info:Start}}
{{Info:Start}}
Die Bilddateien der Hehomons liegen im Projektorder um Unterordner "images/". Alle Bilder sind als PNG-Datei mit transparentem Hintergrund gespeichert und haben die Maße 400x400 Pixel.
Die Bilddateien der Hehomons liegen im Unterordner "images/" des Projektordners. Alle Bilder sind als PNG-Datei mit transparentem Hintergrund gespeichert und haben die Maße 400x400 Pixel.
{{Info:End}}
{{Info:End}}



Version vom 3. März 2020, 08:00 Uhr

Jetzt ist es an der Zeit, die Hehomons in die Arena zu beschwören.

Beim Erstellen der Arena habt ihr schon die Klasse Bild benutzt. Die wollen wir jetzt verwenden, um das Bild von Alligung in die Arena zu zeichnen.

Entsprechend unserer Architektur nehmen wir dazu Anpassungen in den Klassen vor.

Erweiterung des Datenmodells

Zunächst müssen wir das Bild festlegen, das angezeigt werden soll. Da es sich um eine Information des Hehomons handelt, die für jedes Monster anders ist, passen wir die entsprechende Klasse an.

EA hehomon klasse 2.png
Icon Heft.png
Arbeitsauftrag

Fügt Hehomon eine neue Objektvariable String bild hinzu, in der der Name der Bilddatei gespeichert wird. Vergesst nicht, die Variable im Konstruktor zu initialisieren und einen Getter String getBild() zu erstellen.

Passt auch die Konstruktoren der Unterklasse an. Dort muss im Aufruf von super der neue Paramter String pBild ergänzt werden. Die Bilddatei für Alligung heißt "Alligung.png".


Die Bilder anzeigen

Als nächstes ändern wir die Arena so, dass sie die Bilddateien der kämpfenden Hehomons über das Hintergrundbild zeichnet. Dazu sind mehrere Schritte nötig:

  1. Die Arena muss die Beteiligten Hehomon-Objekte kennen.
  2. Beim Erstellen der Arena müssen Bild-Objekte aus den Bilddateien erstellt werden.
  3. Die Bilder müssen dem Arena-Knoten hinzugefügt werden.
EA arena klasse 2.png
Icon Heft.png
Arbeitsauftrag
  1. Ergänzt die Objektvariablen Hehomon angreifer und Hehomon verteidiger. Beide werden im Konstruktor durch Parameter initialisiert. Getter oder Setter sind nicht nötig.
  2. Erstellt jeweils ein Bildobjekt zum Verteidiger und Angreifer mit passenden x- und y-Koordinaten und dem Dateipfad "images/"+angreifer.getBild(). Orientiert euch dabei am Hintergrund. Die passenden Koordinaten findet ihr durch ausprobieren heraus.
  3. Fügt die Bilder mit add() dem Arena-Knoten hinzu.
Icon Info.png

Die Bilddateien der Hehomons liegen im Unterordner "images/" des Projektordners. Alle Bilder sind als PNG-Datei mit transparentem Hintergrund gespeichert und haben die Maße 400x400 Pixel.


Neue Objekte erzeugen

Die Spielsteuerung muss nun alle Teile zusammenbringen, die nötigen Hehomon-Objektinstanzen erzeugen und an den Konstruktor der Arena weitergeben. Damit die Steuerung später auch noch Zugriff auf die Hehomons hat, speichert sie die Objekte selber auch in Objektvariablen.

Icon Heft.png
Arbeitsauftrag
  1. Ergänzt die Objektvariablen Hehomon angreifer und Hehomon verteidiger. Beide werden im Konstruktor durch Parameter initialisiert. Getter oder Setter sind nicht nötig.
  2. Erstellt im Konstruktor von Spiel zwei Alligung-Objekte als Angreifer und Verteidiger (angreifer = new Alligung( ... ).
  3. Übergebt der Arena im Konstruktor die beiden kämpfenden Hehomons new Arena(angreifer, verteidiger).

Statt zwei Alligungs könnt ihr natürlich auch eure eigenen Hehomons beschwören, wenn ihr diese schon im Projekt implemenitert habt.

Wenn alles geklappt hat solltet ihr die Hehomons nun in der Arena angezeigt bekommen, sobald ihr ein neues Spiel-Objekt erstellt.