Jetzt wird ein Spiel programmiert. Es geht darum, den
Maulwurf so schnell wie möglich zu fangen, wenn er aus dem Loch schaut. Auf
dem Calliope mini wird das Auftauchen durch die LEDs (rote Lämpchen) dargestellt. Mit
den Knöpfen A und B fangen wir den Maulwurf.
Kategorie | Tüfteln |
Schulstufe | SEK1 |
Schwerpunkte | Variablen, Ereignis, Funktionen, Verzweigungen |
Es ist wichtig ein Programm in kleine Schritte aufzuteilen und immer zu testen, ob es schon funktioniert. Wenn alles klappt, geht es weiter.
Vorbereitung:
Lass eine Mittellinie auf dem LED-Display leuchten.
Wenn Taste A gedrückt wird, soll ein Haken angezeigt werden.
Wenn Taste B gedrückt wird, soll ebenfalls ein Haken angezeigt werden.
Jetzt kommt der Zufall dazu! Lass dir eine zufällige Zahl aus einem 2er Zahlenraum ausgeben.
Spielmechanik
Wenn die zufällige Zahl eine 0 ist, lass den Maulwurf links erscheinen.
Wenn die zufällige Zahl eine 1 ist, lass den Maulwurf rechts erscheinen.
Überprüfe, ob der Maulwurf gefangen wurde, indem du abfragst, ob die richtige Taste gedrückt wurde.
Für beide Tasten benötigst du die gleiche Logik:
Für die Taste A gilt folgende Logik:
Wenn Zufall = 0 ist, dann taucht der Maulwurf links auf und wir müssen ihn mit Taste A fangen.
Erweitere den Code für die Taste A sodass, wenn diese Bedingung erfüllt wird, ein Haken erscheint, wenn nicht ein X angezeigt wird und du weißt, dass das nicht der richtige Knopf war 😊
Wenn Zufall = 1 ist, dann taucht der Maulwurf rechts auf und wir müssen ihn mit B fangen.
Wende im nächsten Schritt die gleiche Logik auf die Taste B an.
Du kannst die Anzeige für richtig und falsch auch mit dem Leuchten der RGB-LED unterstützen.
Hier findest du Informationen zu Wenn… dann“ Bedingungen und weiteren Grundlagen.
Die grafische Darstellung in Form eines PAP dient als Grundlage der
Entwicklung eines Programms. Ein PAP beschreibt den Ablauf und die
Zusammenhänge von einzelnen Operationen zur Lösung einer Aufgabe.
- Befehle dauerhaft ausführen lassen
- Befehle beim Start der Anwendung einmalig ausführen lassen
- Bestimmte Tastenereignisse für Taste A, B und A+B festlegen
- Eine Bewegung, ein Schütteln oder die Lage des Calliope mini als Eingabe-Ereignis festlegen
- Variablen müssen angelegt und initialisiert werden
- Variablen speichern
- Variablen anzeigen lassen
- Variablen verwenden
- Der Zufallsgenerator gibt eine zufällige Zahl aus
- Eine Bedingte Abfrage für verschiedene Aktionen definieren
- Werte abfragen und vergleichen
- Ein Bild auf der LED-Matrix anzeigen
- Befehle beim Start der Anwendung einmalig ausführen lassen
- Befehle in einer Schleife ausführen lassen
- Bestimmte Tastenereignisse für Taste A, B und A+B festlegen
- Eine Bewegung, ein Schütteln oder die Lage des Calliope mini als Eingabe-Ereignis festlegen
- Variablen müssen angelegt und initialisiert werden
- Variablen speichern
- Variablen anzeigen lassen
- Variablen verwenden
- Der Zufallsgenerator gibt eine zufällige Zahl aus
- Eine bedingte Abfrage für verschiedene Aktionen definieren
- Werte oder Zustände abfragen und miteinander vergleichen
- Ein Bild auf der LED-Matrix zeigen
- Befehle unendlich oft ausführen lassen
- Befehle beim Start der Anwendung einmalig ausführen lassen
- Bestimmte Tastenereignisse für Taste A, B und A+B festlegen
- Eine Bewegung, ein Schütteln oder die Lage des Calliope mini als Eingabe-Ereignis festlegen
- Variablen müssen angelegt und initialisiert werden
- Variablen speichern
- Variablen anzeigen lassen
- Variablen verwenden
- Der Zufallsgenerator gibt eine zufällige Zahl aus
- Eine bedingte Abfrage für verschiedene Aktionen definieren
- Werte oder Zustände abfragen und miteinander vergleichen
- Ein Bild auf der LED-Matrix zeigen
Eine Beschreibung der einzelnen Programmier-Blöcke gibt es hier.
- Wird ein Häkchen angezeigt und der Spielstand hochgezählt, wenn der Maulwurf auf der Seite der Taste erscheint, die gedrückt wurde?
- Wird der Maulwurf lange genug angezeigt?
- Wo könnte eine Pausenzeit verändert werden, damit das Spiel einfacher bzw. schwieriger wird.
Erweiterung
- Überlege dir eine weitere Eingabe um den Punktestand anzuzeigen.
- Für den Punktestand wird eine Variable benötigt und die jedesmal, wenn der Maulwurf gefangen wurde hochgezählt wird.
- Der Maulwurf taucht gleichzeitig auf beiden Seiten auf. Überlege dir eine dritte Option, um 2 Maulwurfe gleichzeitig zu fangen.
- Du kannst auch über die Touch-Pins das Tempo ändern und so die Schwierigkeit erhöhen. Verwende dazu eine Variable tempo.
Calliope gGmbH - Idee basierend auf dem Material von: App Camps