From e4ad047e13ef284aec5da62ca63e069c27b95c9a Mon Sep 17 00:00:00 2001 From: Dietrich Date: Fri, 5 Feb 2021 12:14:52 +0100 Subject: [PATCH] mit Gewonnen und verloren --- galgenspiel.py | 50 +++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 45 insertions(+), 5 deletions(-) diff --git a/galgenspiel.py b/galgenspiel.py index 8cf3a17..f2b539d 100644 --- a/galgenspiel.py +++ b/galgenspiel.py @@ -1,27 +1,50 @@ from galgenmaennchen import turtle, t, zeichenliste +from wortliste import wörter +import random + +geheimwort = "und" # random.choice(wörter) -geheimwort = "und" t.hideturtle() + linie = turtle.Pen() linie.hideturtle() +bs = turtle.Pen() +bs.hideturtle() + geraten = "" def linienzeichnen(): + # Zeichne die Linien mit Buchstaben darauf, sollten diese schon erraten sein. linie.home() - linie.clear() + linie.clear() # Lösche die vorherigen tipps for buchstabe in geheimwort: linie.fd(15) - if buchstabe in geraten: + if buchstabe in geraten: # zeichne den Buchstaben nur, wenn er geraten wurde linie.write(buchstabe, align="center", font="serif 12 bold") linie.fd(15) linie.up() linie.fd(20) linie.down() -linienzeichnen() +def falsche_buchstaben(): + bs.pu() + bs.clear() + bs.goto (100, -200) + nr = 0 + for buchstabe in geraten: + if buchstabe not in geheimwort: + bs.write(buchstabe, True, align="center", font="serif 15") + bs.forward(20) + nr += 1 + if nr % 4 == 0: + bs.goto(100, -250) + -for grafik in zeichenliste: +# zeichne einmal die linien. Ohne den folgenden Befehl würde die oben befindliche Funktion nicht ausgeführt. +linienzeichnen() +# gewonnen = "ja" +for grafik in zeichenliste[:2]: gewonnen = "ja" neugeraten = turtle.textinput("", "Welcher Buchstabe?") @@ -49,8 +72,25 @@ for grafik in zeichenliste: gewonnen = "nein" geraten = geraten + neugeraten grafik() + falsche_buchstaben() if gewonnen == "ja": linie.goto(0,-100) linie.write("gewonnen") break + +if gewonnen == "nein": + geraten += geheimwort + while True: + linie.color("red") + linienzeichnen() + linie.pu() + linie.goto(100, -50) + linie.write("Verloren", True, align="center", font="serif 15") +else: + while True: + linie.color("green") + linienzeichnen() + linie.pu() + linie.goto(100, -50) + linie.write("Gewonnen", True, align="center", font="serif 15")