Zum Hauptinhalt springen

Spielstart & Eingabe

Nun wird's interaktiv 🥳 Eine Gamer:in soll ein Feld auswählen können.

Nur Felder auswählen

Die Gefahr bei diesem Schritt lauert im inneren Bedürfnis, in diesem ersten Schritt bereits an alles zu Denken und das ganze Spiel zu programmieren!

in diesem Schritt nicht gefragt :

  • die Eingabe auf ungültige Eingaben überprüfen

  • ausgewählte Felder zusammenrechnen

  • den Spielstand angebe

  • überprüfen, ob das Spiel vorbei ist

  • Sound hinzufügen

  • ...

Spielstart und Eingabe
  1. Nur eine einzelne Eingabe einlesen und das Feld nicht mehr anzeigen... Commit & Push

    Hinweis
    1. Eingabe

    2. Koordinaten auslesen

    3. Im Spielfeld das ausgewählte Feld markieren

    4. Aktualisiertes Spielfeld anzeigen (markiertes Feld soll leer sein)


  2. Eingabe und Auswerten der Eingabe in separate Funktionen verschieben und nun diese Funktionen aufrufen... Commit & Push

  3. Eine Funktion play o.ä. schreiben, welche solange das Spiel läuft (vorerst also unendlich lange!) den ersten Schritt wiederholt... Commit & Push

    Hinweis

    Weiss man nicht im voraus, wie oft etwas wiederholt wird, so ist es immer ein Hinweis, dass eine while Schleife verwendet werden sollte.

    Hier eine, die unendlich lange läuft (bis man Ctrl + c drückt):

    while True:
    eingabe()
    auswerten()
    show()

  4. Code nochmals kurz durchgehen - machen Variablen- und Funktionsnamen Sinn? Könnten gewisse Dinge einfacher verständlich (\neq weniger Code) geschrieben werden? Braucht es allenfalls irgendwo noch eine weitere Funktion?... Commit & Push

  5. Kurzer Blog-Eintrag in Form eines Lernjournals - was haben Sie gemacht (evtl. mit Screenshot), wie spielen die Funktionen zusammen?

Aufgabe

Überprüfen Sie im NumTrip Spiel die Benutzereingaben, so dass auch bei fehlerhaften Eingaben das Programm nicht abstürzt.

Grundgerüst des Spiels, vol. 2

Wichtig vor der Verwendung:

  • Überlegen Sie sich, wie die untenstehende Version mit Ihrem Top-Down Entwurf zusammenpasst.

  • Die Überprüfung der Eingaben muss unbedingt noch selber implementiert werden.

  • Es sind aktuell keine Kommentare vorhanden - beschreiben Sie mit Kommentaren jede übernommene Funktion, was sie macht.

stage2.py
https://github.com/lebalz/ofi-blog/blob/main/docs/EF-Python/04-NumTrip/snippets/stage2.py