Raspberry Pi – einfaches Pibrella Spiel

In den letzten Artikeln habe ich mich näher mit dem Pibrella Board für den Raspberry Pi beschäftigt und am Beispiel eines Adventkranzes gezeigt wie man mit Ausgabegeräten wie den LEDs arbeiten kann. In diesem Artikel zeige ich euch wie ihr mit dein Eingaben umgehen könnt. Dazu entwickeln wir ein simples Spiel welcehes die 3 LEDs, den Button und den Lautsprecher verwendet.

pibrella-spiel

Einfaches Pibrella Spiel

Mit diesem sehr einfachen Pibrella Spiel kann man sehr gut alle Ein- und Ausgabemöglichkeiten des Pibrella Board kreativ nutzen. Gerade für Anfänger ist dieses Beispiel ein netter Einstieg.

Spielregeln

Bevor wir aber mit der Entwicklung beginnen kurz zum Spiel und dessen Regeln:

  • es leuchtet zufällig immer eine der LED Lampen eine zufällige Zeit lang
  • falls gerade das grüne LED leuchtet, dann sollte man als Spieler so schnell wie möglich den Button klicken
  • wurde der Button geklickt, während dessen die grüne LED geleuchtet hat, dann hat man gewonnen. Das wird durch den Success Sound des Lautsprechers und durch leuchten aller 3 LEDs symbolisiert
  • wurde der Button geklickt, während dessen ein anderes LED geleuchtet hat, dann hat man verloren. Es ertönt der Error Sound
  • das Spiel läuft in einer Endlosschleife, man hat jederzeit dir Möglichkeit weiterzuspielen.

Die Regeln sind damit in kurz aber komplett beschrieben. Auf gehts nun zum Programmieren.

Source Code

Als Programmiersprache wählen wir Python, da es dafür die Pibrella Bibliothek gibt. Dank dieser Bibliothek können wir über einzeilige Codes die LEDs und den Lautsprecher steuern und den Zustand des Buttons abfragen. Wir benötigen folgende Imports:

random benötigen wir um dem Spiel ein wenig Zufall hinzuzufügen. Schließlich wäre es ja langweilig, wenn immer die selben LEDs in der gleichen Reihenfolge leuchten. Mit der time Bibliothek können wir mit time.sleep eine Wartezeit einfügen die angibt wie lange ein LED leuchtet und der pibrella Import ist für die Ansteuerung des Boards.

Zu Beginn initialisieren wir 2 Arrays:

Das ist zum einen das leds Array in dem die Nummern der 3 LED Lichter stehen. Im times Array sind Zeitspannen definiert, wie lange ein solches LED leuchten darf.

Nun kommen wir zur Spielschleife:

In einer Endlosschleife holen wir uns als erstes zufällig eine Nummer eines LEDs. Je nachdem welche Nummer wir haben schalten wir dieses LED Licht an, warten eine zufällige Zeitspanne und schalten danach das LED wieder ab.

Nun holen wir uns den Status vom Button:

Und prüfen, ob dieser geklickt wurde. In diesem Fall hat der Spieler nun gewonnen oder verloren.

Sollte also gerade die grüne LED (select == 0) aktiv gewesen sein, dann hat der Spieler gewonnen. Es wird der Success Sound abgespielt, alle 3 LEDs eingeschaltet und 3 Sekunden gewartet. Danach wird der Lautsprecher und die LEDs zurückgesetzt. Im Fall einer anderen LED hat man verloren. Es wird der Fail Sound abgespielt, 3 Sekunden gewartet und danach der Lautsprecher zurückgesetzt.

Das Spiel läuft dann mit der Anzeige der nächsten LED weiter.
Der vollständige Source Code kann hier heruntergeladen werden.

Fazit

Mit diesem einfach Pibrella Spiel habe ich auf spielerische Weise die einzelnen Elemente des Pibrella Board in einem Python Script verwendet. Der Source Code sollte auch Anfängern leicht verständlich sein. Es werden sowohl Ausgabegeräte wie die LEDs und der Lautsprecher verwendet als auch Eingabegeräte wie der Button. Das Skript beinhaltet eine Spielschleife, welche in jedem Spiel vorkommt. Das heißt eine Endlosschleife in denen sich die Anzeige aktualisiert und Benutzerinteraktion abgerufen wird und gegebenenfalls darauf reagiert wird. Der Kern jedes Spiels!

Habt Ihr noch Ideen, wie man dieses Skript erweitern könnte? Oder gar ein eigenes Skript entwickelt?

(Visited 325 times, 1 visits today)

Das könnte auch interessant sein...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.