Benutzer-Werkzeuge

Webseiten-Werkzeuge


python:pgzero:projekt1

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
python:pgzero:projekt1 [2021/03/20 16:44] – [Die Spielfigur zufällig platzieren] lutzpython:pgzero:projekt1 [2024/03/12 09:24] (aktuell) – [Die Spielfigur zufällig platzieren] lutz
Zeile 122: Zeile 122:
  
 Mit der ersten Zeile wird der Zufallszahlengenerator importiert. Mit der veränderten Funktion ''%%place_homer()%%'' wird die Spielfigur an einer zufälligen Stelle des Bildschirms platziert. Nach jedem Treffer wird die Funktion aufgerufen und Homer erscheint an einer anderen stelle des Bildschirms. Mit der ersten Zeile wird der Zufallszahlengenerator importiert. Mit der veränderten Funktion ''%%place_homer()%%'' wird die Spielfigur an einer zufälligen Stelle des Bildschirms platziert. Nach jedem Treffer wird die Funktion aufgerufen und Homer erscheint an einer anderen stelle des Bildschirms.
 +
 +Hier seht ihr das fertige Programm:
 +
 +<code python projekt1.py>
 +import pgzrun
 +
 +from random import randint
 +
 +homer = Actor("homer.png")
 +
 +def draw():
 +    screen.clear()
 +    homer.draw()
 +    
 +def place_homer():
 +    homer.x = randint(10, 800)
 +    homer.y = randint(10, 600)
 +
 +def on_mouse_down(pos):
 +    if homer.collidepoint(pos):
 +        print("Treffer!")
 +        place_homer()
 +    else:
 +        print("Daneben!")
 +        quit()
 +
 +place_homer()
 +
 +pgzrun.go()
 +</code>
 +
 +=====Erklärvideo=====
 +
 +{{youtube>gWG3wDRD1xU}}
 +
 +=====Aufgaben====
 +
 +**Aufgabe 1**
 +
 +Verändere das Programm so, dass es auch bei "Daneben!" weiterläuft. Es kann dann nur durch das Schließen des Fensters beendet werden.
 +
 +**Aufgabe 2**
 +
 +Führe eine Variable treffer ein, die die Anzahl der Treffer zählt. Sie muss zu Beginn des Programms im Hauptprogramm auf 0 gesetzt werden. 
 +
 +Wenn nun Homer getroffen wurde, soll die Variable soll um 1 erhöht werden. Um eine globale Variable in einer Funktion zu ändern, muss sie in der Funktion als global deklariert werden. (https://www.python-kurs.eu/python3_global_lokal.php)
 +
 +Letztendlich soll in der **print**-Anweisung hinter Treffer noch die Anzahl der bisherigen Treffer ausgegeben werden.
 +
 +**Aufgabe 3**
 +
 +Schreibe ein eigenes Programm!
 +
 +Führe andere ähnliche Spielfiguren (https://icons8.de/icon/set/characters/color) ein und passe die Hintergrundfarbe (https://pygame-zero.readthedocs.io/de/latest/introduction.html#einen-hintergrund-zeichnen) an, um den Spieler zu verwirren. Nur wenn auf eine bestimmte Figur geklickt wird (hier der Grinch) wird ein Treffer gezählt.
 +
 +{{ :python:pgzero:grinch.png?600 |}}
 +
 +\\
 +
 +~~DISCUSSION | Hier können Fragen zum Inhalt der Seite gestellt werden. ~~
python/pgzero/projekt1.1616255048.txt.gz · Zuletzt geändert: 2021/03/20 16:44 von lutz