Impressum
Inhalt Teil 2 >

Laufendes O in Python - Teil 1

Das laufende O ist ein kleines Spiel auf der Console, in welchem ein O mit den Tasten W, A, S und D bewegt wird.
Um dies zu realisieren verwenden wir ein paar Funktionen aus der Bibliothek WConio2, diese kann hier heruntergeladen werden.
Die Projektseite der Bibliothek ist von GitHub
Um die Bibliothek einzubinden, wird sie im gleichen Verzeichnis wie das Python-Programm gespeichert. Alternativ kann man sie über PIP installieren.
In die ersten Zeile des Python-Programms schreibt man: from WConio2 import *

Ausgaben positionieren

Mit gotoxy(x,y) aus der Bibliothek positioniert man den Cursor an (x,y).
Das heißt, dass ein print danach die Ausgabe an dieser Position beginnt.
In Thonny muss man das Programm mit STRG+T oder im Menü Ausführen mit "aktuelles Skript in Terminal ausführen" ausführen.
from WConio2 import *
gotoxy(3,4)
print("Hallo")

gotoxy(1,3)
print("oben")

gotoxy(3,5)
print("unten")
Als Ausgabe erhlt man:


 oben
   Hallo
   unten

Tastendrücke einlesen

Um den Spieler zu steuern müssen Tastendrücke eingelesen werden, ohne sie auf dem Bildschirm anzuzeigen.
In der Bibliothek gibt es hierfür die Funktion:
getkey()
Diese liefert die gedrückte Taste als Text zurück, welche man sich in einer Variablen speichern sollte: key = getkey().

Bewegung

Um jetzt ein Zeichen über den Bildschirm bewegen zu können gehen wir wie folgt vor:
Zuerst legen wir die Variablen x und y mit dem Startwert 5 an. Diese stellen die Position unseres Spielers dar.
In Python sieht das so aus:
from WConio2 import *
x=5
y=5
while True:
    gotoxy(x,y)
    print("O")
    c = getkey()
    gotoxy(x,y)
    print(" ")
    if c=='d': x=x+1
    if c=='a': x=x-1
    if c=='s': y=y+1
    if c=='w': y=y-1
    if c=='x': break

Wenn man dieses Programm in Thonny mit STRG+T ausführt kann man das O mit den Tasten W, A, S und D über den Bildschirm bewegen.
Wer lieber mit Cursor-Tasten steuert, kann dies mit WConio2 auch machen.
Der Python-Code ändert sich dabei nur in den if-Anweisungen:
from WConio2 import *
x=5
y=5
while True:
    gotoxy(x,y)
    print("O")
    c = getkey()
    gotoxy(x,y)
    print(" ")
    if c=='up': y=y-1
    if c=='down': y=y+1
    if c=='left': x-=1
    if c=='right':x+=1
    if c=='x': break

Wenn man dieses Programm in Thonny mit STRG+T ausführt kann man das O mit den Tasten ↑, ←, ↓ und → über den Bildschirm bewegen.