Greenfoot #4: Spiel programmieren - »Dragon Hunter I«

    Projekt: Dragon Hunter I

    Die Drachen der Guroksteppe haben zahlreiche Prinzessinnen entführt und halten sie in den Tälern gefangen. Zieh los, starker Ritter, und rette sie! Aber nimm dich in Acht - in regelmäßigen Abständen drehen die Drachen richtig auf. Zum Glück hast du deinen Booster …

    Nebenbei lernen wir auch noch:

    • Bilder im Konstruktor skalieren (getImage(), scale(), getWidth(), getHeight())
    • Datentypen: int, double, String, boolean
    • Variablen verwenden (z. B. leben zählen, auf 0 Leben prüfen etc.)
    • Vergleichsoperatoren ==, >= etc.
    • Werte von Variablen mit showText(…) anzeigen
    • Klassenvariablen vs. lokale Variablen; Gültigkeit lokaler Variablen
    • setRotation(…)
    • Greenfoot.started(), Greenfoot.stopped()

    Das hier brauchen Sie, um mitarbeiten zu können:

    Themenübersicht

    Es werden nur neue Themen aufgeführt. Alle bisher behandelten Themen finden Sie in den anderen Folgen (Übersicht).

    • 2:00 - Bilder der Actor im Konstruktor skalieren mit getImage().scale(…)
    • 4:20 - Proportional Skalieren mit mit getWidth()/2 etc.
    • 6:43 - Tastatursteuerung und Boost mit Space-Taste
    • 7:58 - Einsammeln der Prinzessinnen und zählen mit Variablen/Attributen
    • 9:02 - Datentypen: int, double, String, boolean
    • 10:00 - Werte verändern: int-Variable hochzählen, Zuweisung von rechts nach links
    • 10:41 - Anzeige von Variablenwerten mit showText(…); Verknüpfung von String und int
    • 12:43 - Prüfung, ob alle Prinzessinnen eingesammelt sind; Vergleichsoperator ==
    • 14:08 - Spiel beenden mit Greenfoot.stop()
    • 18:11 - Lösung: Spielerposition mit setLocation(…) verändern
    • 19:59 - Geräusche einbauen; GreenfootSound-Objekt als Attribut
    • 22:10 - Zufällige Ausrichtung von Objekten im Konstruktor
    • 23:33 - setRotation(…) statt turn(…)
    • 24:20 - Drachenbewegung implementieren
    • 25:50 - DRAGONFRENZY - mit Geschwindigkeitsvariable und Timer für wiederkehrende Ereignisse
    • 29:40 - Text von der Welt löschen
    • 30:23 - Spiel tweaken durch Anpassung der Variablenwerte
    • 31:44 - Hintergrundmusik; Greenfoot.started() wird ausgeführt bei Klick auf Run, Greenfoot.stopped() wird ausgeführt bei Klick auf Stop
    • 33:22 - LOKALE VARIABLE vs. KLASSENVARIABLE; Gültigkeit von lokalen Variablen

      Übung: Candy Castle

      Öffnen Sie dieses Szenario:

      Erweitern Sie es so, wie im folgenden Video gezeigt:

      Lösung

      Sie finden hier ein Lösungsvideo. Das ist weitgehend unkommentiert, ich programmiere das einfach kurz runter. Schauen Sie das ERST DANN an, wenn Sie wirklich nicht weiterkommen. Die Übung ist dazu da, dass Sie die neu erlernten Inhalte anwenden - wenn Sie das jetzt einfach nachprogrammieren, lernen Sie gar nichts.

      Klick hier, um Lösung ein-/auszublenden …


      TEST

      Passwort 1234: klick hier