diff --git a/Animation/Animation_Simple.py b/Animation/Animation_Simple.py
new file mode 100755
index 0000000..cdfdda9
--- /dev/null
+++ b/Animation/Animation_Simple.py
@@ -0,0 +1,27 @@
+import turtle
+
+import time
+
+turtle.setup(500,500)
+turtle.speed(0)
+turtle.width(4)
+
+def quadrat():
+ for i in range(4):
+ turtle.fd(100)
+ turtle.rt(90)
+
+turtle.pu()
+turtle.setpos(-350,-50)
+turtle.pd()
+
+turtle.ht()
+turtle.tracer(0)
+
+while True:
+ turtle.clear()
+ quadrat()
+ turtle.fd(1)
+ time.sleep(0.01)
+ turtle.update()
+
diff --git a/Animation/Animation_dot.py b/Animation/Animation_dot.py
new file mode 100755
index 0000000..4a1f089
--- /dev/null
+++ b/Animation/Animation_dot.py
@@ -0,0 +1,26 @@
+import turtle
+
+import time
+
+turtle.width(4)
+turtle.bgcolor("black")
+turtle.color("red")
+
+turtle.ht()
+
+turtle.pu()
+turtle.setpos(-700,-700)
+turtle.lt(45)
+turtle.pd()
+
+
+turtle.tracer(0)
+turtle.delay(500)
+
+
+while True:
+ turtle.clear()
+ turtle.dot(50)
+ turtle.fd(0.5)
+ turtle.update()
+
\ No newline at end of file
diff --git a/Animation/Animation_ship.py b/Animation/Animation_ship.py
new file mode 100755
index 0000000..725b731
--- /dev/null
+++ b/Animation/Animation_ship.py
@@ -0,0 +1,101 @@
+from turtle import*
+import time
+import math
+
+
+speed_boat = 0.01
+
+def ship():
+ clear()
+ fd(130)
+ lt(50)
+ fd(50)
+ lt(130)
+ fd(90)
+ rt(90)
+ fd(150)
+ rt(154)
+ fd(math.sqrt(16900 + 4900))
+ rt(116)
+ fd(65)
+ lt(90)
+ fd(18)
+ rt(90)
+ fd(102)
+ lt(130)
+ fd(49)
+ lt(50)
+ update()
+
+def ship_2():
+ clear()
+ fd(130)
+ lt(50)
+ fd(50)
+ lt(130)
+ fd(240)
+ rt(130)
+
+
+
+
+def speed_more():
+ global speed_boat
+ speed_boat += 0.5
+
+
+def goleft():
+ lt(1)
+ bk(1)
+
+
+def goright():
+ rt(1)
+ bk(1)
+
+
+def speed_less():
+ global speed_boat
+ speed_boat -= 0.5
+
+def speed_stop():
+ global speed_boat
+ speed_boat = -1.35
+
+def speed_exelerate_fast():
+ global speed_boat
+ speed_boat += 2
+
+def speed_reduce_fast():
+ global speed_boat
+ speed_boat -= 2
+
+def reset_system():
+ global speed_boat
+ speed_boat = 0.01
+ home()
+ pu()
+ setpos(-350,-50)
+ pd()
+ tracer(0)
+ ht()
+
+
+
+
+reset_system()
+
+while True:
+ fd(speed_boat)
+ ship()
+ time.sleep(0.01)
+ onkeypress(reset_system, "Escape")
+ onkeypress(speed_exelerate_fast, "w")
+ onkeypress(speed_reduce_fast, "s")
+ onkeypress(speed_stop, "space")
+ onkeypress(speed_more, "Up")
+ onkeypress(goright, "Right")
+ onkeypress(goleft, "Left")
+ onkeypress(speed_less, "Down")
+ listen()
+
diff --git a/Animation/Erde und Mond.py b/Animation/Erde und Mond.py
new file mode 100755
index 0000000..3378a8e
--- /dev/null
+++ b/Animation/Erde und Mond.py
@@ -0,0 +1,32 @@
+#Import der Module
+import turtle
+import time
+
+#Aufsetzen der Turtle instanzen
+earth = turtle.Turtle()
+sun = turtle.Turtle()
+
+#Vorbereiten der Benutzeroberfläche
+turtle.bgcolor("black")
+turtle.addshape("earth.gif")
+turtle.addshape("sun.gif")
+earth.shape("earth.gif")
+sun.shape("sun.gif")
+
+#Erde umkreist Sonne
+def earth_move():
+ for i in range(10):
+ earth.fd(1)
+ earth.rt(0.2)
+ time.sleep(0.01)
+
+
+turtle.tracer(2)
+
+earth.pu()
+earth.fd(250)
+earth.rt(90)
+
+while True:
+ earth_move()
+
\ No newline at end of file
diff --git a/Animation/Main_hub.py b/Animation/Main_hub.py
new file mode 100755
index 0000000..17b4b65
--- /dev/null
+++ b/Animation/Main_hub.py
@@ -0,0 +1,252 @@
+#Imporieren aller module
+from turtle import*
+import random
+import time
+import math
+
+title("Main Hub")
+
+#Wichtige Vorbereitungen
+
+def hi():
+ pu()
+ setpos(-100,0)
+ pd()
+ lt(90)
+ fd(200)
+ bk(100)
+ rt(90)
+ fd(100)
+ lt(90)
+ fd(100)
+ bk(200)
+ pu()
+ setpos(50,0)
+ pd()
+ fd(200)
+
+speed(10000)
+ht()
+
+#Lässt den Benutzer auswählen, ob die Formen zufällig oder in einem Kreis angeordnet, nach Wünschen des Benutzers gezeichnet werden sollen.
+print("ready")
+hi()
+program_choice = int(numinput("Welches Program sollte ausgeführt werden?", " 1=Custom, 2=Random, 3=Drunken Man ",1,minval=1))
+
+
+#Definition des Befehls Vieleck(). Der Grundbaustein des Programms
+def vieleck(anzahl_seiten,radius, anzahl_kreis_printed, figuren, kreise, figur_nummer, save_first):
+ parts_circle = 1
+ time_durchgang_start = time.time()
+ for i in range(anzahl_seiten):
+ fd(radius/anzahl_seiten)
+ rt(360/anzahl_seiten)
+ parts_circle += 1
+ if parts_circle / anzahl_seiten * 100 >= 50 and parts_circle / anzahl_seiten * 100 < 50.1:
+ print(" Circle:",parts_circle / anzahl_seiten * 100, "%")
+ time_durchgang_end = time.time()
+ exact_timecalculation(time_durchgang_start, time_durchgang_end, anzahl_seiten, radius, anzahl_kreis_printed, figuren, kreise, figur_nummer, save_first)
+
+
+#Definition des Befehls, der mit beendigung des Auswahlverfahrens aufgerufen wird. Verwaltet die wichtigsten feautures
+def figur(seite,radiusin,anzahlkr,anzahl_figuren,erh_input):
+ figur_number = 1
+ first_time = 1
+ print("Globally: 0 % done")
+ for i in range(anzahl_figuren):
+ change_color(figur_number)
+ print("drawing figure number",figur_number)
+ anzahl_kr_printed = 0
+ for i in range(anzahlkr):
+ vieleck(seite,radiusin, anzahl_kr_printed, anzahl_figuren, anzahlkr, figur_number, first_time)
+ rt(360/anzahlkr)
+ anzahl_kr_printed += 1
+ print(anzahl_kr_printed / anzahlkr * 100, "%")
+ radiusin += erh_input
+ figur_number += 1
+ print("done")
+ print("Globally:", (figur_number - 1) / anzahl_figuren * 100, "% done")
+
+#Berechnet, sobald das Programm begonnen hatte zu zeichnen, wie lange der Vorgang noch dauern wird.
+def exact_timecalculation(time_durchgang_end_1, time_durchgang_start_1, seitenzahl, radiusinput, anzahl_kreise_printed, figuren, kreise, figur_number, save_1):
+ print("Time per shape", time_durchgang_start_1 - time_durchgang_end_1)
+ remaining_circles = (figuren * kreise) - ((anzahl_kreise_printed + ((figur_number - 1) * kreise)))
+ remaining_time = remaining_circles * ((time_durchgang_end_1 - time_durchgang_start_1) * -1)
+ print(((anzahl_kreise_printed + ((figur_number - 1) * kreise))), "/", (kreise * figuren), "shapes got already printed.", remaining_circles, "remaining")
+ print("ETA:", remaining_time, "seconds or", remaining_time / 60, "minutes")
+ if save_1 > 1:
+ remaining_time = save_time_end
+ save_1 = 0
+ else:
+ save_1 = 0
+
+#Wechselt die Farbe
+def change_color(anz_figuren):
+ if anz_figuren >= 1 and anz_figuren < 2:
+ color("red")
+ else:
+ if anz_figuren >= 2 and anz_figuren < 3:
+ color("green")
+ else:
+ if anz_figuren >= 3 and anz_figuren < 4:
+ color("blue")
+ else:
+ if anz_figuren >= 4 and anz_figuren < 5:
+ color("brown")
+ else:
+ color("black")
+
+
+#Führt den zufälligen Teil des Programms aus
+def vieleck_random_randomize():
+ amount_circles_drawn = 0
+ pu()
+ amount_circles = random.randint(25, 75)
+ print(amount_circles, "shapes need to be printed. Esitmated time:", amount_circles * 0.35, "seconds")
+ print("0 / 0 or 0 % done")
+ for i in range(amount_circles):
+ color(random.random(),random.random(),random.random())
+ size = random.randint(50, 250)
+ width(random.randint(2, 10))
+ ecken = random.randint(3, 20)
+ setpos(random.randint(-300,300), random.randint(-300,300))
+ fuellen = random.randint(0,1)
+ pd()
+ if fuellen >= 1:
+ begin_fill()
+ for i in range(ecken):
+ fd(size / ecken)
+ rt(360 / ecken)
+ end_fill()
+ else:
+ for i in range(ecken):
+ fd(size / ecken)
+ rt(360 / ecken)
+ amount_circles_drawn += 1
+ pu()
+ print(amount_circles_drawn, "/", amount_circles, "or", amount_circles_drawn / amount_circles * 100, "% drawn.")
+ print("100 % done. Process ended with a 0")
+
+#Definition des Betrunkenen Mannes??
+def drunken_man_walk_show(schritte,distanz):
+ for i in range(schritte):
+ fd(distanz)
+ setheading(random.randint(0, 360))
+
+def drunken_man_walk_calculate(anzahl_tests,anzahl_figuren_test,add,anzahl_tests_pro,ausgabe):
+ print("started. Going to make the test", anzahl_tests, "times to get a result which is as acurate as possible")
+ schritte = 100
+ schritte_begin = schritte
+ distanz = 20
+ summe = 0
+ summe_second = 0
+ l = [1]
+ for i in range(anzahl_figuren_test):
+ amount_atemps_per = 0
+ for i in range(anzahl_tests):
+ print("Collecting data for", schritte,"steps, collecting data for try number", amount_atemps_per + 1, "/", anzahl_tests)
+ for i in range(anzahl_tests_pro):
+ drunken_man_walk_show(schritte,distanz)
+ x = xcor()
+ y = ycor()
+ d = math.sqrt(x**2 + y**2)
+ summe += d
+ pu()
+ home()
+ pd()
+ summe_calc = summe / anzahl_tests_pro
+ print("Average dislocation of 0.0 is:", summe_calc,"pixels, with a amount of steps of", schritte,".")
+ summe_second += summe_calc
+ reset()
+ summe = 0
+ amount_atemps_per += 1
+ print("TOTAL Average dislocation of 0.0 is:", summe_second / anzahl_tests, "pixels with", schritte, "steps")
+ print("Next size getting executed")
+ result = summe_second / anzahl_tests
+ l.append(result)
+ schritte += add
+ summe_second = 0
+ l.remove(1)
+ l.reverse()
+ print("\n\n\n")
+ print("entire list:",l)
+ print("\n_________________________ \n\n\n")
+ if ausgabe == 1:
+ for i in range(anzahl_figuren_test):
+ show = l.pop()
+ print(schritte_begin, "has an average dislocation of", show)
+ schritte_begin += add
+ else:
+ print("Schritte | Durchschnittliche Entfernung")
+ print("----------------------------------------------")
+ for i in range(anzahl_figuren_test):
+ show = l.pop()
+ print(schritte_begin, " | ", show)
+ schritte_begin += add
+
+
+
+
+#Wird ausgeführt, wenn der vom Benutzer einstellbare Modus ausgewählt wird.
+if program_choice >= 1 and program_choice < 2:
+ title("Custom Design")
+ reset()
+ ht()
+ speed(10000)
+ print("Custom Design")
+ seiteninput = int(numinput("Wie viele Seiten?", " Gerade Zahl von 3-unendlich ",10,minval=3))
+ radiusinput = int(numinput("Wie gross soll der Radius sein?", " Gerade Zahl von 50-unendlich ",50,minval=50))
+ anzahlkrinput = int(numinput("Wie viele Kreise sollen gezeichnet werden??", " Gerade Zahl von 1-unendlich ",5,minval=1))
+ figureninput = int(numinput("Wie viele Figuren sollen gezeichnet werden?", " Gerade Zahl von 1-unendlich ",5,minval=1))
+ erhinput = int(numinput("Um wieviel soll sich sich der Radius der Kreise erhöhen?", " Gerade Zahl von 20-unendlich ",50,minval=20))
+ verzoegerung = int(numinput("Wie schnell soll die Animation laufen?", " Gerade Zahl von 1-unendlich, umso höher, desto schneller ",50,minval=0))
+ print("starting process...")
+ tracer(verzoegerung)
+ print(anzahlkrinput * figureninput, "circles need to be printed. Estimated time until completion:", (anzahlkrinput * figureninput * (seiteninput * 0.0330383)), "seconds or", (anzahlkrinput * figureninput * (seiteninput * 0.0330383)) / 60, "minutes")
+ time.sleep(2)
+ draw_time_start = time.time()
+ figur(seiteninput,radiusinput,anzahlkrinput,figureninput,erhinput)
+ draw_time_end = time.time()
+ draw_time = (draw_time_end - draw_time_start) - (anzahlkrinput * figureninput * (seiteninput * 0.0330383))
+ print("Drawing of", anzahlkrinput * figureninput, "shapes has taken", draw_time_end - draw_time_start , "seconds or", (draw_time_end - draw_time_start) / 60, "minutes, estimated:", (anzahlkrinput * figureninput * (seiteninput * 0.0330383)), "seconds, which means a diffrence of", draw_time, "seconds or missed by", draw_time * 100, "%")
+ print("Click to exit")
+
+
+else:
+ if program_choice >= 2 and program_choice < 3:
+ title("Random Design")
+ reset()
+ ht()
+ speed(10000)
+ print("Random Design")
+ draw_time_start = time.time()
+ vieleck_random_randomize()
+ draw_time_end = time.time()
+ print("Drawing has taken", draw_time_end - draw_time_start , "seconds")
+ print("Click to exit")
+ else:
+ if program_choice >= 3 and program_choice < 4:
+ title("Drunken Man's Walk")
+ reset()
+ ht()
+ speed(0)
+ print("Drunken Man's Walk")
+ easy_difficult = int(numinput("Soll es gezeigt oder eine Tabelle erstellt werden?", " 1=Normal, 2=Tabelle ",1,minval=1))
+ if easy_difficult == 1:
+ title("Drunken Man's Walk: standard")
+ drunken_man_walk_show(100,20)
+ else:
+ title("Drunken Man's Walk: List")
+ tests_total = int(numinput("Wie viele unterschiedliche Längen sollten getestet werden?", " Dauer erhöht sich extrem, Genauigkeit genauso ",10,minval=1))
+ tests_per = int(numinput("Wieviele Tests sollten pro Länge durchgeführt werden?", " Dauer erhöht sich extrem, Genauigkeit genauso ",10,minval=1))
+ addition = int(numinput("Um wieviel soll die Schrittzahl vergrössert werden?", " Dauer erhöht sich unbedeutend, abhängig von Tests ", 100, minval=1))
+ executes_per = int(numinput("Wie viele Spuren sollen gezeichnet werden?", " Dauer erhöht sich ziemlich, Genauigkeit genauso ",1000,minval=1))
+ tracerdelay = int(numinput("Alle wie viele Striche soll aktualisiert werden?", " umso höher, desto schneller ",10000,minval=1))
+ output = int(numinput("Wie soll die Liste ausgegeben werden?", " 1 = Liste, 2 = Tabelle ",1,minval=1, maxval=2))
+ tracer(tracerdelay)
+ drunken_man_walk_calculate(tests_per,tests_total,addition,executes_per,output)
+
+ else:
+ print("wrong")
+update()
+exitonclick()
\ No newline at end of file
diff --git a/Animation/Viereck drehung.py b/Animation/Viereck drehung.py
new file mode 100755
index 0000000..cd7066e
--- /dev/null
+++ b/Animation/Viereck drehung.py
@@ -0,0 +1,21 @@
+from turtle import*
+import time
+#tracer(1)
+#ht()
+
+def viereck():
+ for i in range(1000000000000000):
+ clear()
+ pu()
+ setpos(0,0)
+ rt(10)
+ fd(50)
+ rt(90)
+ pd()
+ for i in range(4):
+ fd(50)
+ rt(90)
+ fd(50)
+ time.sleep(0.05)
+
+viereck()
\ No newline at end of file
diff --git a/Animation/Wartesymbol.py b/Animation/Wartesymbol.py
new file mode 100755
index 0000000..d796e37
--- /dev/null
+++ b/Animation/Wartesymbol.py
@@ -0,0 +1,24 @@
+import time
+import os
+
+strich = 1
+
+
+while True:
+ for i in range(4):
+ print("Please wait...")
+ if strich == 1:
+ print("\t-", end="\r")
+ time.sleep(0.5)
+ elif strich == 2:
+ print("\t\\", end="\r")
+ time.sleep(0.5)
+ elif strich == 3:
+ print("\t|", end="\r")
+ time.sleep(0.5)
+ else:
+ print("\t/", end="\r")
+ time.sleep(0.5)
+ os.system( 'clear' )
+ strich += 1
+ strich = 1
\ No newline at end of file
diff --git a/Animation/earth.gif b/Animation/earth.gif
new file mode 100755
index 0000000..0d72eb7
Binary files /dev/null and b/Animation/earth.gif differ
diff --git a/Animation/sun.gif b/Animation/sun.gif
new file mode 100755
index 0000000..dad57c4
Binary files /dev/null and b/Animation/sun.gif differ
diff --git a/ArrayOperations/Listenformatierung.py b/ArrayOperations/Listenformatierung.py
new file mode 100755
index 0000000..04c7939
--- /dev/null
+++ b/ArrayOperations/Listenformatierung.py
@@ -0,0 +1,3 @@
+inventory = ["Test", "Test2"]
+for item in inventory:
+ print("*"+item)
\ No newline at end of file
diff --git a/Assembly/PC.dig b/Assembly/PC.dig
new file mode 100755
index 0000000..3a2dd83
--- /dev/null
+++ b/Assembly/PC.dig
@@ -0,0 +1,347 @@
+
+
+ 1
+
+
+
+ Switch
+
+
+
+
+ Switch
+
+
+
+
+ LightBulb
+
+
+ rotation
+
+
+
+
+
+
+ VDD
+
+
+
+
+ Ground
+
+
+
+
+ Switch
+
+
+
+
+ Switch
+
+
+
+
+ LightBulb
+
+
+ rotation
+
+
+
+
+
+
+ RelayDT
+
+
+
+
+ RelayDT
+
+
+ mirror
+ true
+
+
+ rotation
+
+
+
+
+
+
+ In
+
+
+
+
+ Ground
+
+
+
+
+ In
+
+
+ rotation
+
+
+
+
+
+
+ LightBulb
+
+
+ rotation
+
+
+
+ Color
+
+ 51
+ 51
+ 255
+ 255
+
+
+
+
+
+
+ Ground
+
+
+
+
+ XOr
+
+
+
+
+ In
+
+
+
+
+ In
+
+
+
+
+ LED
+
+
+
+
+ PFET
+
+
+
+
+ NFET
+
+
+
+
+ In
+
+
+ Label
+ A
+
+
+
+
+
+ Ground
+
+
+
+
+ VDD
+
+
+
+
+ Out
+
+
+ Label
+ Out
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Assembly/PC_2.dig b/Assembly/PC_2.dig
new file mode 100755
index 0000000..2673498
--- /dev/null
+++ b/Assembly/PC_2.dig
@@ -0,0 +1,391 @@
+
+
+ 1
+
+
+
+ PFET
+
+
+
+
+ NFET
+
+
+
+
+ In
+
+
+ Label
+ A
+
+
+
+
+
+ Ground
+
+
+
+
+ VDD
+
+
+
+
+ Out
+
+
+ Label
+ Out
+
+
+
+
+
+ Not
+
+
+
+
+ In
+
+
+ Label
+ A1
+
+
+
+
+
+ Out
+
+
+ Label
+ Out1
+
+
+
+
+
+ Out
+
+
+ Label
+ Out2
+
+
+
+
+
+ FGNFET
+
+
+
+
+ PFET
+
+
+
+
+ FGPFET
+
+
+
+
+ FGNFET
+
+
+
+
+ In
+
+
+ Label
+ A2
+
+
+
+
+
+ In
+
+
+ Label
+ B2
+
+
+
+
+
+ VDD
+
+
+
+
+ Ground
+
+
+
+
+ NAnd
+
+
+ wideShape
+ true
+
+
+
+
+
+ Out
+
+
+ Label
+ Out3
+
+
+
+
+
+ In
+
+
+ Label
+ A3
+
+
+
+
+
+ In
+
+
+ Label
+ B3
+
+
+
+
+
+ NOr
+
+
+ wideShape
+ true
+
+
+
+
+
+ In
+
+
+ Label
+ A4
+
+
+
+
+
+ In
+
+
+ Label
+ B4
+
+
+
+
+
+ Out
+
+
+ Label
+ Out4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Assembly/PC_3.dig b/Assembly/PC_3.dig
new file mode 100755
index 0000000..e83d43f
--- /dev/null
+++ b/Assembly/PC_3.dig
@@ -0,0 +1,212 @@
+
+
+ 1
+
+
+
+ And
+
+
+ wideShape
+ true
+
+
+
+
+
+ And
+
+
+ wideShape
+ true
+
+
+
+
+
+ Or
+
+
+ wideShape
+ true
+
+
+
+
+
+ Or
+
+
+ wideShape
+ true
+
+
+
+
+
+ And
+
+
+ wideShape
+ true
+
+
+
+
+
+ Out
+
+
+ Label
+ Out1
+
+
+
+
+
+ Out
+
+
+ Label
+ Out2
+
+
+
+
+
+ In
+
+
+ Label
+ A1
+
+
+
+
+
+ In
+
+
+ Label
+ B1
+
+
+
+
+
+ In
+
+
+ Label
+ C1
+
+
+
+
+
+ In
+
+
+ Label
+ A2
+
+
+
+
+
+ In
+
+
+ Label
+ B2
+
+
+
+
+
+ In
+
+
+ Label
+ C2
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Assembly/Rechenwerk.dig b/Assembly/Rechenwerk.dig
new file mode 100755
index 0000000..2de67ad
--- /dev/null
+++ b/Assembly/Rechenwerk.dig
@@ -0,0 +1,394 @@
+
+
+ 1
+
+
+
+ In
+
+
+ rotation
+
+
+
+ Label
+ B0
+
+
+
+
+
+ Volladierer.dig
+
+
+
+
+ In
+
+
+ rotation
+
+
+
+ Label
+ A0
+
+
+
+
+
+ LED
+
+
+ rotation
+
+
+
+ Label
+ S0
+
+
+
+
+
+ In
+
+
+ rotation
+
+
+
+ Label
+ B1
+
+
+
+
+
+ Volladierer.dig
+
+
+
+
+ In
+
+
+ rotation
+
+
+
+ Label
+ A1
+
+
+
+
+
+ LED
+
+
+ rotation
+
+
+
+ Label
+ S1
+
+
+
+
+
+ In
+
+
+ rotation
+
+
+
+ Label
+ B2
+
+
+
+
+
+ Volladierer.dig
+
+
+
+
+ In
+
+
+ rotation
+
+
+
+ Label
+ A2
+
+
+
+
+
+ LED
+
+
+ rotation
+
+
+
+ Label
+ S2
+
+
+
+
+
+ In
+
+
+ rotation
+
+
+
+ Label
+ B3
+
+
+
+
+
+ Volladierer.dig
+
+
+
+
+ In
+
+
+ rotation
+
+
+
+ Label
+ A3
+
+
+
+
+
+ LED
+
+
+ rotation
+
+
+
+ Label
+ S3
+
+
+
+
+
+ LED
+
+
+ rotation
+
+
+
+ Label
+ S4
+
+
+
+
+
+ In
+
+
+ Label
+ I1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Assembly/Volladierer.dig b/Assembly/Volladierer.dig
new file mode 100755
index 0000000..d3a08f1
--- /dev/null
+++ b/Assembly/Volladierer.dig
@@ -0,0 +1,210 @@
+
+
+ 1
+
+
+
+ XOr
+
+
+ wideShape
+ true
+
+
+
+
+
+ And
+
+
+ rotation
+
+
+
+ wideShape
+ true
+
+
+
+
+
+ And
+
+
+ rotation
+
+
+
+ wideShape
+ true
+
+
+
+
+
+ Or
+
+
+ rotation
+
+
+
+ wideShape
+ true
+
+
+
+
+
+ XOr
+
+
+ wideShape
+ true
+
+
+
+
+
+ In
+
+
+ Label
+ A
+
+
+
+
+
+ In
+
+
+ Label
+ B
+
+
+
+
+
+ In
+
+
+ Label
+ Cin
+
+
+ rotation
+
+
+
+
+
+
+ Out
+
+
+ Label
+ S
+
+
+
+
+
+ Out
+
+
+ Label
+ Cout
+
+
+ rotation
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/C/Addierer.c b/C/Addierer.c
new file mode 100755
index 0000000..d6c76bc
--- /dev/null
+++ b/C/Addierer.c
@@ -0,0 +1,10 @@
+int main() {
+ int summe = 0;
+ for(int i=0; i<5; i++) {
+ printf("Gib die Zahl ein:")
+ int zahl;
+ scanf("%d", &zahl);
+ summe = summe + zahl;
+ }
+ printf("Summe: %d\n", summe);
+}
\ No newline at end of file
diff --git a/Concepts/TicTacToe_V2 Layout menu.docx b/Concepts/TicTacToe_V2 Layout menu.docx
new file mode 100755
index 0000000..021758b
Binary files /dev/null and b/Concepts/TicTacToe_V2 Layout menu.docx differ
diff --git a/Concepts/Zuweisungsnummer.docx b/Concepts/Zuweisungsnummer.docx
new file mode 100755
index 0000000..77f6cb5
Binary files /dev/null and b/Concepts/Zuweisungsnummer.docx differ
diff --git a/ExamStuff/Aufgabe 7 Prfg Spirale.py b/ExamStuff/Aufgabe 7 Prfg Spirale.py
new file mode 100755
index 0000000..82414c3
--- /dev/null
+++ b/ExamStuff/Aufgabe 7 Prfg Spirale.py
@@ -0,0 +1,19 @@
+from turtle import*
+shape("turtle")
+color("blue")
+
+distance = 10
+pu()
+
+for i in range(2):
+ fd(distance)
+ rt(20)
+ orientation = heading()
+ stamp()
+ while orientation > 0:
+ orientation = heading()
+ fd(distance)
+ rt(20)
+ stamp()
+ distance += 2
+ print(orientation)
\ No newline at end of file
diff --git a/ExamStuff/Prüfung Testfile.py b/ExamStuff/Prüfung Testfile.py
new file mode 100755
index 0000000..5be3e20
--- /dev/null
+++ b/ExamStuff/Prüfung Testfile.py
@@ -0,0 +1,6 @@
+seconds = 70512
+minutes = seconds // 60
+seconds_rest = minutes % 60
+hours = minutes // 60
+minutes_rest = minutes % 60
+print(hours, minutes_rest, seconds_rest)
\ No newline at end of file
diff --git a/ExamStuff/prfg Aufgabe 8 Cross.py b/ExamStuff/prfg Aufgabe 8 Cross.py
new file mode 100755
index 0000000..52f979b
--- /dev/null
+++ b/ExamStuff/prfg Aufgabe 8 Cross.py
@@ -0,0 +1,28 @@
+from turtle import*
+import math
+
+rt(45)
+go = 1
+color("red")
+
+distance_in = int(numinput("Wie weit darf sich die Turtle vom Mittelpunkt entfernen??", " Gerade Zahl von 1-unendlich ",300,minval=1))
+
+for i in range(4):
+ go = 1
+ while go == 1:
+ fd(50)
+ dot(25)
+ x = xcor()
+ y = ycor()
+ distance = math.sqrt((x**2) + (y**2))
+ if distance >= distance_in:
+ go = 0
+ else:
+ if distance <= -distance_in:
+ go = 0
+
+ else:
+ go = 1
+
+ bk(distance_in)
+ rt(90)
\ No newline at end of file
diff --git a/IO/Calculator.py b/IO/Calculator.py
new file mode 100755
index 0000000..cceefac
--- /dev/null
+++ b/IO/Calculator.py
@@ -0,0 +1,66 @@
+#Library import
+import math
+
+
+#Startup
+out = 0
+print("""
+
+,--------. ,--. ,--.
+'--. .--',--,--. ,---. ,---.| ,---. ,---. ,--,--, ,--.--. ,---. ,---.| ,---. ,--,--, ,---. ,--.--.
+ | | ' ,-. |( .-' | .--'| .-. || .-. :| \| .--'| .-. :| .--'| .-. || \| .-. :| .--'
+ | | \ '-' |.-' `)\ `--.| | | |\ --.| || || | \ --.\ `--.| | | || || |\ --.| |
+ `--' `--`--'`----' `---'`--' `--' `----'`--''--'`--' `----' `---'`--' `--'`--''--' `----'`--'
+
+ =================
+ Alpha 1.0
+ Build 1
+ 28.05.21
+
+ """)
+
+#Userinput
+i = input("Rechung eingeben: ")
+
+#Separation
+l = i.split()
+x1 = l.pop(0)
+x = int(x1)
+
+#Calculation
+if len(l) == 1:
+ print("Wrong entry, retry, use spaces in between numbers and operands.")
+else:
+ while len(l) > 1:
+ y1 = l.pop(1)
+ y = int(y1)
+ if "*" in l:
+ out = x * y
+
+ elif "+" in l:
+ out = x + y
+
+ elif "-" in l:
+ out = x - y
+
+ elif "/" or ":" in l:
+ out = x / y
+
+ elif "^" or "**" in l:
+ out = x ** y
+
+ elif "<>" in l:
+ math.sqrt(x)
+
+ else:
+ print("unkown operand, retry")
+
+ if len(l) != 0:
+ operand = l.pop(0)
+ x = out
+ else:
+ print("The result is:")
+
+
+#Output
+print(out)
\ No newline at end of file
diff --git a/IO/Coinflip.py b/IO/Coinflip.py
new file mode 100755
index 0000000..38f96d0
--- /dev/null
+++ b/IO/Coinflip.py
@@ -0,0 +1,40 @@
+import random
+
+
+st1 = 0
+st2 = 0
+st3 = 3
+st2a = 0
+anzahl = 0
+
+go = 1
+
+
+while go == 1:
+ zahl = random.randint(1,2)
+
+ if st1 == st2:
+ if st2a == st3:
+ go = 0
+ else:
+ anzahl += 1
+ st3 = st2
+ st2 = st1
+ st2a = st1
+ st1 = zahl
+ if zahl == 1:
+ print("K")
+ else:
+ print("N")
+
+ else:
+ anzahl += 1
+ st3 = st2
+ st2 = st1
+ st2a = st1
+ st1 = zahl
+ if zahl == 1:
+ print("K")
+ else:
+ print("N")
+print("Took", anzahl, "tries")
\ No newline at end of file
diff --git a/IO/Eingabe Umwandlung easy.py b/IO/Eingabe Umwandlung easy.py
new file mode 100755
index 0000000..7505d9c
--- /dev/null
+++ b/IO/Eingabe Umwandlung easy.py
@@ -0,0 +1,21 @@
+eingabe = int(input("Zahl im Dezimalsystem: "))
+system = int(input("Zahlensystem: "))
+
+
+if system == 2:
+ y = bin(eingabe)
+ print("Resultat:", y)
+
+elif system == 16:
+ y = hex(eingabe)
+ print("Resultat:", y)
+
+elif system == 8:
+ y = oct(eingabe)
+ print("Resultat:", y)
+
+else:
+ print("wrong")
+
+
+
diff --git a/IO/Frankengewinnspiel.py b/IO/Frankengewinnspiel.py
new file mode 100755
index 0000000..fc06504
--- /dev/null
+++ b/IO/Frankengewinnspiel.py
@@ -0,0 +1,111 @@
+#FRANKENGEWINNSPIEL
+#-------------------------------------------------
+
+
+#Import of Modules and setup variables
+#import turtle
+
+#Definition of Turtle instances
+
+
+
+#Preparations, so setup of the game output window and choice of diffrent gamemodes
+programchoice = 200
+while (programchoice < 1) or (programchoice > 99):
+ programchoice = programchoice = int(input("Welcher Modus? 1 = Normales Spiel, 2 = Liste aller Gewinne mit angabe des Höchsten, 3 = angabe des höchsten Gewinnes, 4 = andgabe des höchsten erreichbaren Feldes: "))
+ if (programchoice < 1) or (programchoice > 99):
+ print("Number not within designated range. Try again")
+ print("Willkommen")
+
+
+
+#MAINGAME
+#-----------------------
+def playgame(field):
+ global winning
+ winning = 0
+ while field > 1:
+ if (field % 2) == 1:
+ next = field * 3 + 1
+ winning += next
+ field = next
+ else:
+ next = field / 2
+ winning += next
+ field = next
+
+#GAMEMODE 1
+#-------------------------
+def gamemode1():
+ s = 200
+ while (s < 1) or (s > 99):
+ s = int(input("Zahl: "))
+ if (s < 1) or (s > 99):
+ print("Number not within designated range. Try again")
+ print("Ok")
+ fieldint = s
+ playgame(fieldint)
+ global winning
+ print("Your winnings:", winning)
+
+
+#GAMEMODE 2
+#--------------------------
+def gamemode2():
+ fieldascending = 1
+ for i in range(99):
+ playgame(fieldascending)
+ print("You win",winning,"with startpoint",fieldascending)
+ fieldascending += 1
+
+#GAMEMODE 3
+#--------------------------
+def gamemode3():
+ fieldascending = 1
+ global winning
+ currentwinning = 0
+ currentfield = 0
+ for i in range(99):
+ playgame(fieldascending)
+ if winning > currentwinning:
+ currentwinning = winning
+ currentfield = fieldascending
+ fieldascending += 1
+ print("Biggest possible winning is", currentwinning,"on field", currentfield)
+
+#GAMEMODE 4
+#-----------------------------
+def gamemode4():
+ fieldascending = 1
+ global winning
+ currentwinning = 0
+ currentfield = 0
+ biggestfield = 0
+ for i in range(99):
+ field = fieldascending
+ while field > 1:
+ if (field % 2) == 1:
+ next = field * 3 + 1
+ field = next
+ if next > biggestfield:
+ biggestfield = next
+ currentfield = fieldascending
+ else:
+ next = field / 2
+ field = next
+ fieldascending += 1
+ print("Biggest possible field is", biggestfield,"on startfield", currentfield)
+
+#RUN
+#-------------------------
+if programchoice == 1:
+ gamemode1()
+
+elif programchoice == 2:
+ gamemode2()
+
+elif programchoice == 3:
+ gamemode3()
+
+else:
+ gamemode4()
diff --git a/IO/Idioms.py b/IO/Idioms.py
new file mode 100755
index 0000000..df308e5
--- /dev/null
+++ b/IO/Idioms.py
@@ -0,0 +1,39 @@
+#Idioms
+import random
+
+#Check user input
+s = 200
+
+while (s < 1) or (s > 99):
+ s = int(input("Zahl: "))
+ if (s < 1) or (s > 99):
+ print("Number not within designated range. Try again")
+
+print("Ok")
+
+
+#Find biggest number
+output = 0
+for i in range(100):
+ n = random.randint(1, 1000)
+ if n > output:
+ output = n
+
+print(output)
+
+
+#Summ up
+summ = 0
+for i in range(100):
+ n = random.randint(1, 1000)
+ summ += n
+
+print(summ)
+
+
+#even or uneven?
+z = random.randint(1, 1000)
+if (z % 2) == 1:
+ print("odd")
+else:
+ print("even")
\ No newline at end of file
diff --git a/IO/Input + outupt.py b/IO/Input + outupt.py
new file mode 100755
index 0000000..d020f75
--- /dev/null
+++ b/IO/Input + outupt.py
@@ -0,0 +1,13 @@
+import math
+
+#Eingabe
+s = int(input("Seitenlänge: "))
+
+
+#Verarbeitung
+for i in range(s):
+ print(s * "* ")
+
+
+
+
diff --git a/IO/Umwandlung Zahlensysteme.py b/IO/Umwandlung Zahlensysteme.py
new file mode 100755
index 0000000..8531770
--- /dev/null
+++ b/IO/Umwandlung Zahlensysteme.py
@@ -0,0 +1,15 @@
+eingabe = int(input("Zahl im Dezimalsystem: "))
+system = int(input("Zahlensystem: "))
+
+y = eingabe
+out = 0
+stelle = 1
+
+while y > 0:
+ y = y // system
+ outadd = y % system
+ out += (outadd * stelle)
+ stelle *= 10
+
+
+print(out)
\ No newline at end of file
diff --git a/IO/Zeit des Lichts zur Erde.py b/IO/Zeit des Lichts zur Erde.py
new file mode 100755
index 0000000..0c3d30b
--- /dev/null
+++ b/IO/Zeit des Lichts zur Erde.py
@@ -0,0 +1,3 @@
+c = (1.4962375e8 / 2.99792458e5)/60
+
+print(c)
\ No newline at end of file
diff --git a/IO/Zufall Not quite.py b/IO/Zufall Not quite.py
new file mode 100755
index 0000000..366c6fc
--- /dev/null
+++ b/IO/Zufall Not quite.py
@@ -0,0 +1,10 @@
+import time
+
+a = 5
+c = 1
+m = 32
+x = int(time.time()) % m
+
+for i in range(10):
+ x = (a*x + c) % m
+ print(x)
\ No newline at end of file
diff --git a/RandomOtherStuff/Clock.py b/RandomOtherStuff/Clock.py
new file mode 100755
index 0000000..848e251
--- /dev/null
+++ b/RandomOtherStuff/Clock.py
@@ -0,0 +1,125 @@
+#Import der Module
+import turtle
+import time
+import datetime
+
+#Setup der einzelnen Turtle instanzen.
+turtle.tracer(0)
+sekundenzeiger = turtle.Turtle()
+minutenzeiger = turtle.Turtle()
+stundenzeiger = turtle.Turtle()
+uhr = turtle.Turtle()
+sekundenzeiger.color("red")
+minutenzeiger.color("blue")
+stundenzeiger.width(2)
+
+#Definition des Ziffernblattes
+def clock_bg():
+ uhr.pd()
+ uhr.dot(10)
+ uhr.pu()
+ uhr.lt(90)
+ uhr.fd(230)
+ uhr.rt(90)
+ uhr.pd()
+ for i in range(12):
+ uhr.rt(90)
+ uhr.fd(20)
+ uhr.bk(20)
+ uhr.lt(90)
+ for i in range(60):
+ uhr.fd(2)
+ uhr.rt(0.5)
+ uhr.pu()
+
+#Funktion des Sekundenzeigers
+def sekzeiger():
+ sekundenzeiger.pu()
+ sekundenzeiger.home()
+ sekundenzeiger.pd()
+ sekunden = datetime.datetime.now().second
+ sekundenzeiger.setheading((sekunden * 6) * (-1))
+ sekundenzeiger.lt(90)
+ sekundenzeiger.bk(40)
+ sekundenzeiger.fd(220)
+
+
+#Funktion des Minutenzeigers
+def minzeiger():
+ minutenzeiger.pu()
+ minutenzeiger.home()
+ minutenzeiger.pd()
+ minuten = datetime.datetime.now().minute
+ minutenzeiger.lt((minuten * 6) *(-1))
+ minutenzeiger.lt(90)
+ minutenzeiger.bk(30)
+ minutenzeiger.fd(215)
+
+
+#Funktion des Stundenzeigers
+def stzeiger():
+ stundenzeiger.pu()
+ stundenzeiger.home()
+ stundenzeiger.pd()
+ mins = datetime.datetime.now().minute
+ stunden = datetime.datetime.now().hour
+ if stunden >= 12:
+ stunden -= 12
+ stundenzeiger.lt((stunden * 30) * (-1))
+ stundenzeiger.rt(mins * 0.5)
+ stundenzeiger.lt(90)
+ stundenzeiger.bk(15)
+ stundenzeiger.fd(135)
+ else:
+ stundenzeiger.lt((stunden * 30) * (-1))
+ stundenzeiger.rt(mins * 0.5)
+ stundenzeiger.lt(90)
+ stundenzeiger.bk(15)
+ stundenzeiger.fd(135)
+
+#Ganze Uhr
+def clock():
+ sekundenzeiger.clear()
+ minutenzeiger.clear()
+ stundenzeiger.clear()
+ sekundenzeiger.ht()
+ minutenzeiger.ht()
+ stundenzeiger.ht()
+ uhr.ht()
+ uhr.home()
+ clock_bg()
+ sekzeiger()
+ minzeiger()
+ stzeiger()
+ turtle.update()
+
+#Stoppen der Uhr
+def stop():
+ global run
+ run = 0
+
+
+#Hauptschleife
+def settings():
+ print("Welcome!")
+ global run
+ time.sleep(2)
+ run = 0
+ turtle.onkeypress(stop, "Escape")
+ turtle.listen()
+ run = 1
+ while run == 1:
+ clock()
+ turtle.title("Clock")
+ else:
+ print("stopped, click to exit")
+ turtle.exitonclick()
+ print("process ended")
+
+
+
+#Startzeit einblenden
+print(time.strftime("%H:%M:%S"))
+
+#Ausführen des Programms
+settings()
diff --git a/RandomOtherStuff/Slicer.py b/RandomOtherStuff/Slicer.py
new file mode 100755
index 0000000..fd5c9ce
--- /dev/null
+++ b/RandomOtherStuff/Slicer.py
@@ -0,0 +1,6 @@
+data = "myprogram.exe"
+
+datanew = data[:4]
+amount = len(datanew)
+amount //= 2
+print(datanew[amount])
diff --git a/RandomOtherStuff/Test.py b/RandomOtherStuff/Test.py
new file mode 100755
index 0000000..2aa1dfc
--- /dev/null
+++ b/RandomOtherStuff/Test.py
@@ -0,0 +1,21 @@
+from turtle import*
+
+
+addshape("testimage.gif")
+screensize(1080,1920)
+shape("testimage.gif")
+color("red")
+speed(1000)
+def walk():
+ w=10
+ length=100
+ for i in range(4):
+ w += 10
+ width(w)
+ for i in range(4):
+ length += 40
+ fd(length)
+ rt(90)
+
+walk()
+exitonclick()
\ No newline at end of file
diff --git a/RandomOtherStuff/Test_exe.py b/RandomOtherStuff/Test_exe.py
new file mode 100755
index 0000000..62c8725
--- /dev/null
+++ b/RandomOtherStuff/Test_exe.py
@@ -0,0 +1,4 @@
+from turtle import*
+import subprocess
+
+subprocess.run(Kreis_zufall_pre.py)
\ No newline at end of file
diff --git a/RandomOtherStuff/Textverbinder.py b/RandomOtherStuff/Textverbinder.py
new file mode 100755
index 0000000..8579150
--- /dev/null
+++ b/RandomOtherStuff/Textverbinder.py
@@ -0,0 +1,15 @@
+x = input("Wert x: ")
+y = input("Wert y: ")
+z = input("Wert z: ")
+
+whole = x + " " + y + " " + z
+remaining = len(whole)
+start = 0
+ending = 6
+while remaining > 1:
+ print(whole[start:ending], end=" ")
+ start += 6
+ ending += 6
+ remaining -= 6
+
+
\ No newline at end of file
diff --git a/RandomOtherStuff/While_rekursion.py b/RandomOtherStuff/While_rekursion.py
new file mode 100755
index 0000000..ea2bd63
--- /dev/null
+++ b/RandomOtherStuff/While_rekursion.py
@@ -0,0 +1,53 @@
+from turtle import*
+
+t1 = Turtle()
+t2 = Turtle()
+
+
+
+go = 3
+t1.lt(90)
+t1.speed(1000)
+t1.ht()
+
+
+def gogo():
+ go = 2
+ while go>1:
+ if t1.xcor() < (window_width()/2 -50):
+ for i in range(50):
+ t1.fd(2)
+ t1.rt(180/50)
+ if t1.xcor() < (window_width()/2 -50):
+ for i in range(50):
+ t1.fd(2)
+ t1.lt(180/50)
+
+ else:
+ print("done")
+ print(xcor())
+ go = 1
+
+
+ while go>0 and go<2:
+ if t1.xcor() > (window_width()/2 - window_width()/2 + 50):
+ for i in range(50):
+ t1.bk(2)
+ t1.lt(180/50)
+ if t1.xcor() > (window_width()/2 - window_width()/2 + 50):
+ for i in range(50):
+ t1.bk(2)
+ t1.rt(180/50)
+ else:
+ print("home")
+ go = 0
+ onkey(gogo, "space")
+ print("ready")
+
+t2.ht()
+
+
+onkey(gogo, "space")
+listen()
+
+print("ready")
\ No newline at end of file
diff --git a/RandomOtherStuff/Wortraten spiel.py b/RandomOtherStuff/Wortraten spiel.py
new file mode 100755
index 0000000..929640e
--- /dev/null
+++ b/RandomOtherStuff/Wortraten spiel.py
@@ -0,0 +1,193 @@
+import os
+global mistakes
+mistakes = 0
+global wortelements
+wortelements = []
+global done
+done = []
+
+def clear_screen():
+ os.system('cls')
+
+
+def worteingabe():
+ global wort
+ wort = input("Suchen sie ein Wort, welches erraten werden soll, ein: ")
+ clear_screen()
+ print("Vielen Dank. Das Wort wurde gespeichert.")
+ print("Geben Sie das Gerät weiter.")
+ ausgabe(wort)
+
+def ausgabe(wort):
+ global wortelements
+ print("""
+
+Das Wort:
+""")
+ print(len(wort)*"*")
+ global wholewordlist
+ wholewordlist = list(wort)
+ wortelements = list(len(wort)*"*")
+
+def ersetzen(letter):
+ global wort
+ global wortelements
+ global wholewordlist
+ global done
+ while letter in wholewordlist:
+ pos = wholewordlist.index(letter)
+ wholewordlist.pop(pos)
+ wholewordlist.insert(pos, "*")
+ wortelements.pop(pos)
+ wortelements.insert(pos, letter)
+
+
+def raten():
+ global wort
+ global wortelements
+ global wholewordlist
+ global go
+ go = 1
+ while go == 1:
+ buchstabe = input("Suchen sie einen Buchstaben aus, welcher sich im Wort befinden könnte: ")
+ if buchstabe in wholewordlist:
+ print("Der Buchstabe kommt hier vor:")
+ ersetzen(buchstabe)
+ print(*wortelements)
+ done.append(buchstabe)
+ elif buchstabe in done:
+ print("Dieser Buchstabe wurde bereits eingetippt.")
+ addman()
+ elif buchstabe == wort:
+ wholewordlist = list(len(wort)*"*")
+ else:
+ print("Dieser Buchstabe ist nicht Teil des Wortes")
+ done.append(buchstabe)
+ addman()
+ print(*done)
+ counts = wholewordlist.count("*")
+ if len(wort) - counts <= 0:
+ go = 0
+ else:
+ print("""
+
+
+DAS WORT WURDE GEFUNDEN
+Das Wort:
+""")
+ print(wort)
+
+
+def addman():
+ global mistakes
+ mistakes += 1
+ if mistakes == 1:
+ print("""
+
+
+
+
+ __________
+""")
+ elif mistakes == 2:
+ print("""
+
+
+
+
+
+ |
+ _____|_____
+""")
+ elif mistakes == 3:
+ print("""
+
+
+
+ |
+ |
+ |
+ _____|_____
+""")
+ elif mistakes == 4:
+ print("""
+
+ |
+ |
+ |
+ |
+ |\
+ _____|_\___
+""")
+ elif mistakes == 5:
+ print("""
+ _____
+ |
+ |
+ |
+ |
+ |\
+ _____|_\___
+""")
+ elif mistakes == 6:
+ print("""
+ _____
+ | |
+ | °
+ |
+ |
+ |\
+ _____|_\___
+""")
+ elif mistakes == 6:
+ print("""
+ _____
+ | |
+ | °
+ | \
+ |
+ |\
+ _____|_\___
+""")
+ elif mistakes == 7:
+ print("""
+ _____
+ | |
+ | °
+ | \/
+ |
+ |\
+ _____|_\___
+""")
+ elif mistakes == 8:
+ print("""
+ _____
+ | |
+ | °
+ | \/
+ | /
+ |\
+ _____|_\___
+""")
+ elif mistakes == 9:
+ print("""
+ _____
+ | |
+ | °
+ | \/
+ | /\
+ |\
+ _____|_\___
+
+
+ DEAD
+""")
+ global go
+ go = 0
+
+
+
+
+
+worteingabe()
+raten()
\ No newline at end of file
diff --git a/RandomOtherStuff/main.py b/RandomOtherStuff/main.py
new file mode 100755
index 0000000..ffabfaa
--- /dev/null
+++ b/RandomOtherStuff/main.py
@@ -0,0 +1,7 @@
+from turtle import *
+
+for i in range(4):
+ fd(100)
+ right(90)
+
+exitonclick()
diff --git a/RandomOtherStuff/testimage.gif b/RandomOtherStuff/testimage.gif
new file mode 100755
index 0000000..d618520
Binary files /dev/null and b/RandomOtherStuff/testimage.gif differ
diff --git a/RandomOtherStuff/timetest.py b/RandomOtherStuff/timetest.py
new file mode 100755
index 0000000..819f4c3
--- /dev/null
+++ b/RandomOtherStuff/timetest.py
@@ -0,0 +1,5 @@
+import time
+
+print ("time.time(): %f " % time.time())
+print (time.localtime( time.time()))
+print (time.asctime( time.localtime(time.time())))
\ No newline at end of file
diff --git a/RandomTurtle/Binäruhr.py b/RandomTurtle/Binäruhr.py
new file mode 100755
index 0000000..f13a0fb
--- /dev/null
+++ b/RandomTurtle/Binäruhr.py
@@ -0,0 +1,72 @@
+import turtle
+import datetime
+import time
+
+
+#Setup
+turtle.ht()
+turtle.tracer(0)
+turtle.speed(0)
+
+#Definition der Kreise
+def circles(fill):
+ turtle.pu()
+ turtle.bk(20)
+ turtle.pd()
+ if fill == 0:
+ turtle.circle(10)
+ else:
+ turtle.begin_fill()
+ turtle.circle(10)
+ turtle.end_fill()
+ turtle.pu()
+
+turtle.home()
+turtle.pu()
+turtle.bk(25)
+
+#Postitionieren der Turtle
+def distance(pixels):
+ turtle.home()
+ turtle.pu()
+ turtle.lt(90)
+ turtle.bk(pixels)
+ turtle.rt(90)
+
+#Berechnen der einzelnen Stellen
+def main():
+ turtle.clear()
+ turtle.home()
+ h = datetime.datetime.now().hour
+ min = datetime.datetime.now().minute
+ sec = datetime.datetime.now().second
+ hr_pos2 = h//2
+ mn_pos2 = min//2
+ sk_pos2 = sec//2
+
+
+ for i in range(6):
+ hr_pos2 = hr_pos2 // 2
+ hr_pos = hr_pos2 % 2
+ circles(hr_pos)
+
+ distance(50)
+
+ for i in range(7):
+ mn_pos2 = mn_pos2 // 2
+ mn_pos = mn_pos2 % 2
+ circles(mn_pos)
+
+ distance(100)
+
+ for i in range(7):
+ sk_pos2 = sk_pos2 // 2
+ sk_pos = sk_pos2 % 2
+ circles(sk_pos)
+
+ turtle.update()
+
+#Ausführen
+while True:
+ main()
+ time.sleep(0.1)
\ No newline at end of file
diff --git a/RandomTurtle/Digitale Uhr.py b/RandomTurtle/Digitale Uhr.py
new file mode 100755
index 0000000..199ba46
--- /dev/null
+++ b/RandomTurtle/Digitale Uhr.py
@@ -0,0 +1,48 @@
+from turtle import*
+import datetime
+import time
+
+style = ("Minecraftia", 75, "normal")
+tracer(0)
+
+#Ausführen der Uhr.
+while True:
+ time.sleep(1)
+ clear()
+ ht()
+ pu()
+ sec = datetime.datetime.now().second
+ min = datetime.datetime.now().minute
+ h = datetime.datetime.now().hour
+ bk(350)
+#Abstände definieren
+ if h >= 10:
+ write(h, font=style)
+ fd(200)
+ else:
+ write("0", font=style)
+ fd(100)
+ write(h, font=style)
+ fd(100)
+ write(":", font=style, align = "left")
+ fd(50)
+ if min >= 10:
+ write(min, font=style)
+ fd(200)
+ else:
+ write("0", font=style)
+ fd(100)
+ write(min, font=style)
+ fd(100)
+ write(":", font=style, align = "left")
+ fd(50)
+ if sec >= 10:
+ write(sec, font=style)
+ fd(200)
+ else:
+ write("0", font=style)
+ fd(100)
+ write(sec, font=style)
+ fd(100)
+ home()
+ update()
\ No newline at end of file
diff --git a/RandomTurtle/Dots.py b/RandomTurtle/Dots.py
new file mode 100755
index 0000000..3a8dd9a
--- /dev/null
+++ b/RandomTurtle/Dots.py
@@ -0,0 +1,25 @@
+from turtle import*
+import time
+
+def scene(d):
+ dot(500/d)
+
+
+ht()
+color("red")
+bgcolor("black")
+pu()
+tracer(0)
+
+lt(90)
+bk(120)
+
+a = 200
+
+for i in range(200):
+ clear()
+ scene(a)
+ update()
+ a -= 1
+ time.sleep(0.025)
+ fd(1)
\ No newline at end of file
diff --git a/RandomTurtle/Eiskristall-Rekursion.py b/RandomTurtle/Eiskristall-Rekursion.py
new file mode 100755
index 0000000..a3fa073
--- /dev/null
+++ b/RandomTurtle/Eiskristall-Rekursion.py
@@ -0,0 +1,36 @@
+from turtle import *
+import time
+r = numinput("PENTAGON","Wie gross soll die Seitenlänge des Pentagons sein?",200)
+rl = numinput("PENTAGON","Wie viele Ebenen sollen benuzt werden?",3)
+tracer(0)
+
+def pentagon(n, radius):
+ if n == 0:
+ #ausgefülltes Pentagon zeichnen
+ color("Red")
+ begin_fill()
+ for i in range(5):
+ fd(radius)
+ rt(360/5)
+ end_fill()
+ else:
+ for i in range(5):
+ #Positionierung der Turtle
+ pu()
+ fd(radius * 2.62 * 0.381966)
+ rt(360/5)
+ pd()
+ #Rekursion
+ pentagon(n - 1,radius * 0.381966)
+ update()
+
+starttime = time.time()
+pu()
+lt(90)
+fd(r)
+rt(90)
+bk(r*0.6)
+pd()
+pentagon(rl, r)
+
+exitonclick();
\ No newline at end of file
diff --git a/RandomTurtle/Halbkreis.py b/RandomTurtle/Halbkreis.py
new file mode 100755
index 0000000..b63a117
--- /dev/null
+++ b/RandomTurtle/Halbkreis.py
@@ -0,0 +1,14 @@
+from turtle import*
+
+speed(10000)
+ht()
+
+
+
+def kreis_halb(anzahl_seiten,radius):
+ for i in range(anzahl_seiten):
+ fd(radius / anzahl_seiten)
+ rt(360 / anzahl_seiten)
+
+kreis_halb(500,800)
+exitonclick()
diff --git a/RandomTurtle/Huhn.py b/RandomTurtle/Huhn.py
new file mode 100755
index 0000000..fba7f58
--- /dev/null
+++ b/RandomTurtle/Huhn.py
@@ -0,0 +1,87 @@
+import turtle
+import math
+import random
+
+turtle.title("Huhn")
+sideay = int(turtle.numinput("Huhn", "Punkt A, cord y", -100))
+sideax = int(turtle.numinput("Huhn", "Punkt A, cord x", 200))
+sideby = int(turtle.numinput("Huhn", "Punkt B, cord y", -100))
+sidebx = int(turtle.numinput("Huhn", "Punkt B, cord x", -200))
+sidecy = int(turtle.numinput("Huhn", "Punkt C, cord y", 200))
+sidecx = int(turtle.numinput("Huhn", "Punkt C, cord x", 0))
+anzahl_durchgaenge = int(turtle.numinput("Huhn", "Anzahl Durchgänge", 10, minval=1, maxval=100))
+stiftdicke = int(turtle.numinput("Huhn", "Stiftdicke", 2, minval=1, maxval=50))
+durchgang = 0
+
+
+turtle.speed(0)
+cage = turtle.Turtle()
+huhn = turtle.Turtle()
+
+cage.ht()
+huhn.pu()
+huhn.ht()
+
+
+def motion(sideay,sideax,sideby,sidebx,sidecy,sidecx,stiftdicke):
+ edge = random.randint(1,3)
+ if edge == 1:
+ x = sideax
+ y = sideay
+ else:
+ if edge == 2:
+ x = sidebx
+ y = sideby
+ else:
+ x = sidecx
+ y = sidecy
+
+ huhn.setheading(huhn.towards(x, y))
+ nextpos = (math.sqrt((x - huhn.xcor())**2 + (y - huhn.ycor()) **2)) / 2
+ huhn.fd(nextpos)
+ huhn.pd()
+ huhn.dot(stiftdicke)
+ huhn.pu()
+
+def motion_pre(sideay,sideax,sideby,sidebx,sidecy,sidecx,stiftdicke):
+ edge = random.randint(1,3)
+ if edge == 1:
+ x = sideax
+ y = sideay
+ else:
+ if edge == 2:
+ x = sidebx
+ y = sideby
+ else:
+ x = sidecx
+ y = sidecy
+
+ huhn.setheading(huhn.towards(x, y))
+ nextpos = (math.sqrt((x - huhn.xcor())**2 + (y - huhn.ycor()) **2)) / 2
+ huhn.fd(nextpos)
+
+def cagedraw(sideax,sideay,sidebx,sideby,sidecx,sidecy):
+ cage.pu()
+ cage.setpos(sideax,sideay)
+ cage.pd()
+ cage.setpos(sidebx,sideby)
+ cage.setpos(sidecx,sidecy)
+ cage.setpos(sideax,sideay)
+
+
+print("Started drawing Triangle")
+cagedraw(sideax,sideay,sidebx,sideby,sidecx,sidecy)
+
+print("Started mapping... Printing Points of Tranche:")
+turtle.tracer(1000)
+print("initialisation")
+for i in range(50):
+ motion_pre(sideay,sideax,sideby,sidebx,sidecy,sidecx,stiftdicke)
+
+for i in range(anzahl_durchgaenge):
+ for i in range(1000):
+ motion(sideay,sideax,sideby,sidebx,sidecy,sidecx,stiftdicke)
+ durchgang += 1
+ print(durchgang,"/", anzahl_durchgaenge)
+print("done, click to exit")
+turtle.exitonclick()
\ No newline at end of file
diff --git a/RandomTurtle/Kleeblatt.py b/RandomTurtle/Kleeblatt.py
new file mode 100755
index 0000000..2834274
--- /dev/null
+++ b/RandomTurtle/Kleeblatt.py
@@ -0,0 +1,17 @@
+from turtle import*
+
+speed(1000)
+
+def blatt(seite,winkel,anzahl):
+ for i in range(anzahl):
+ begin_fill()
+ for i in range(3):
+ fd(seite)
+ lt(winkel)
+ end_fill()
+ rt(360/anzahl)
+
+ht()
+color("green")
+blatt(100,120,4)
+exitonclick()
\ No newline at end of file
diff --git a/RandomTurtle/Kreis_zufall_pre.py b/RandomTurtle/Kreis_zufall_pre.py
new file mode 100755
index 0000000..22bd079
--- /dev/null
+++ b/RandomTurtle/Kreis_zufall_pre.py
@@ -0,0 +1,35 @@
+import random
+import turtle
+import time
+
+turtle.pu()
+
+def vieleck_random_randomize():
+ for i in range(random.randint(25, 100)):
+ turtle.color(random.random(),random.random(),random.random())
+ size = random.randint(50, 200)
+ turtle.width(random.randint(2, 10))
+ ecken = random.randint(3, 20)
+ turtle.setpos(random.randint(-300,300), random.randint(-300,300))
+ fuellen = random.randint(0,1)
+ turtle.pd()
+ if fuellen >= 1:
+ turtle.begin_fill()
+ for i in range(ecken):
+ turtle.fd(size / ecken)
+ turtle.rt(360 / ecken)
+ turtle.end_fill()
+ else:
+ for i in range(ecken):
+ turtle.fd(size / ecken)
+ turtle.rt(360 / ecken)
+ turtle.pu()
+
+print("Random Design")
+draw_time_start = time.time()
+vieleck_random_randomize()
+draw_time_end = time.time()
+print("Drawing has taken", draw_time_end - draw_time_start , "seconds")
+print("Click to exit")
+
+turtle.exitonclick();
\ No newline at end of file
diff --git a/RandomTurtle/Progressbar.py b/RandomTurtle/Progressbar.py
new file mode 100755
index 0000000..6be0841
--- /dev/null
+++ b/RandomTurtle/Progressbar.py
@@ -0,0 +1,11 @@
+import time
+import os
+
+while True:
+ for i in range(4):
+ print("=", end=" ",flush=True)
+ time.sleep(0.5)
+ print("=", end="\r",flush=True)
+ time.sleep(0.5)
+ os.system( 'cls' )
+ time.sleep(0.5)
\ No newline at end of file
diff --git a/RandomTurtle/Striche.py b/RandomTurtle/Striche.py
new file mode 100755
index 0000000..e192ca8
--- /dev/null
+++ b/RandomTurtle/Striche.py
@@ -0,0 +1,16 @@
+from turtle import*
+
+dicke = 3
+lt(90)
+
+for i in range(10):
+ fd(100)
+ bk(100)
+ rt(90)
+ pu()
+ fd(20)
+ pd()
+ lt(90)
+ width(dicke)
+ dicke += 2
+
diff --git a/RandomTurtle/Test_while_rekursiojn.py b/RandomTurtle/Test_while_rekursiojn.py
new file mode 100755
index 0000000..e42cc3f
--- /dev/null
+++ b/RandomTurtle/Test_while_rekursiojn.py
@@ -0,0 +1,7 @@
+from turtle import*
+
+a = int(numinput("Wie alt bist du?", "Bitte als Zahl eingeben",16,minval=1,maxval=100))
+
+while (a>=16) and (a<=20):
+ fd(100)
+ a = 1
\ No newline at end of file
diff --git a/RandomTurtle/TicTacToe.py b/RandomTurtle/TicTacToe.py
new file mode 100755
index 0000000..9c99933
--- /dev/null
+++ b/RandomTurtle/TicTacToe.py
@@ -0,0 +1,187 @@
+#TICTACTOE V 1.0
+
+import time
+
+#Variables5
+global bd
+bd = [[0,0,0],[0,0,0],[0,0,0]]
+global filled_fields
+filled_fields = 0
+global player
+global playershow
+playershow = 1
+player = 1
+global play
+play = 1
+
+
+#FUNCTIONS
+#--------------------
+def inputs():
+ global playershow
+ global bd
+ print("It's the turn of player", playershow)
+ m = input("Where do you want to put your mark? ")
+ if len(m) > 1:
+ sp = m[0]
+ zl = m[1]
+ z = int(zl) - 1
+ s = ord(sp) - 65
+ if bd[z][s] > 0:
+ print("""
+THAT FIELD IS ALREADY TAKEN, CHOOSE DIFFERENT ONE!
+""")
+ else:
+ inputremap(z,s)
+ else:
+ print("""
+ PLEASE TYPE IN A LEGIT COORDINATE:
+ FORM: Coordinate Y Coordinate X --> Ex. A1/A2
+ """)
+
+def inputremap(z, s):
+ global player
+ global playershow
+ global bd
+ bd[z][s] = player
+ if playershow == 1:
+ playershow = 2
+ player = 7
+ else:
+ playershow = 1
+ player = 1
+ global filled_fields
+ filled_fields += 1
+ full(filled_fields)
+
+
+def winning():
+ global play
+ global bd
+ x = 0
+ y = 0
+ global go
+ go = 1
+ count = 0
+ print("""
+checking for winner
+""")
+ while go == 1:
+ if sum(bd[x]) == 3:
+ go = 0
+ play = 0
+ print("The Winner is player 1")
+ elif sum(bd[x]) == 21:
+ go = 0
+ play = 0
+ print("The Winner is player 2")
+ elif bd[0][y] + bd[1][y] + bd[2][y] == 3:
+ go = 0
+ play = 0
+ print("The Winner is player 1")
+ elif bd[0][y] + bd[1][y] + bd[2][y] == 21:
+ go = 0
+ play = 0
+ print("The Winner is player 2")
+ else:
+ x += 1
+ y += 1
+ if count >= 2:
+ go = 0
+ print("""no winner yet
+""")
+ else:
+ count += 1
+
+def full(filled_field):
+ global bd
+ if filled_field == 9:
+ print("draw")
+ global play
+ play = 0
+ else:
+ winning()
+
+
+#BOARD DRAWING
+def board_draw():
+ print("\n")
+ xx = 0
+ yy = 0
+ global bd
+ while yy < 3:
+ while xx < 3:
+ if bd[xx][yy] == 0:
+ print(" ", end = " ")
+ elif bd[xx][yy] == 1:
+ print(" X ", end = " ")
+ elif bd[xx][yy] == 7:
+ print(" O ", end = " ")
+ else:
+ print(""" CRITICAL ERROR""")
+ if xx < 2:
+ print("|", end = " ")
+ else:
+ print(" ", end = " ")
+ xx += 1
+ print(" ")
+ xx = 0
+ if yy < 2:
+ print("----------------------")
+ else:
+ print(" ")
+ yy += 1
+
+
+
+
+#MAIN CYCLE
+print(50*("\n"))
+
+print("""
+
+ ------------------------------------------------------
+
+
+
+
+ TIC TAC TOE
+ ===========
+ V 1.0
+ V 2021.06.18
+
+
+
+by Janis Hutz
+""")
+time.sleep(2)
+print("starting...")
+time.sleep(3)
+print("\n\n\n")
+goahead = 1
+print("""
+ | |
+ ----------------
+ | |
+ ----------------
+ | |
+ """)
+while goahead == 1:
+ while play == 1:
+ inputs()
+ board_draw()
+ time.sleep(2)
+ print("""
+REPLAY?
+""")
+ i = input("""Choose: (y/n)""")
+ if i == "y":
+ goahead = 1
+ play = 1
+ else:
+ goahead = 0
+print("""
+
+ GOOD BYE!
+
+""")
\ No newline at end of file
diff --git a/RandomTurtle/blume.py b/RandomTurtle/blume.py
new file mode 100755
index 0000000..d77df09
--- /dev/null
+++ b/RandomTurtle/blume.py
@@ -0,0 +1,43 @@
+from turtle import*
+
+lt(90)
+width(3)
+speed(1000)
+
+def stiel(orientation):
+ color("green")
+ for i in range(50):
+ if orientation > 1 and orientation < 3:
+ fd(7)
+ lt(1)
+ else:
+ fd(7)
+ rt(1)
+
+
+def leaves():
+ color("red")
+ for i in range(100):
+ fd(3)
+ rt(360/100)
+
+
+
+
+def blume(orientation_in,blaetter):
+ stiel(orientation_in)
+ for i in range(blaetter):
+ leaves()
+ rt(360/blaetter)
+
+
+ht()
+
+blume(2,5)
+pu()
+home()
+fd(50)
+lt(90)
+pd()
+blume(1,10)
+exitonclick()
\ No newline at end of file
diff --git a/StringOperations/reverser.py b/StringOperations/reverser.py
new file mode 100755
index 0000000..b5fa577
--- /dev/null
+++ b/StringOperations/reverser.py
@@ -0,0 +1,13 @@
+eingabe = input("Dein Text: ")
+caracter = -1
+morecaracters = True
+amountleft = len(eingabe)
+while morecaracters == True:
+ print(eingabe[caracter], end="")
+ if amountleft > 1:
+ caracter -= 1
+ amountleft -= 1
+ else:
+ morecaracters = False
+
+
\ No newline at end of file
diff --git a/TextAdventure/Adventure_Crash_neu.py b/TextAdventure/Adventure_Crash_neu.py
new file mode 100755
index 0000000..17925f1
--- /dev/null
+++ b/TextAdventure/Adventure_Crash_neu.py
@@ -0,0 +1,577 @@
+import time
+import random
+global stepscount
+stepscount = 0
+inventory = []
+done = []
+visited = []
+global goahead
+goahead = 0
+
+
+
+
+def cover():
+ print("""
+
+
+
+
+
+
+
+
+
+
+
+
+ ______ ______ ______ ______ _______ _______ _____
+( ___ \ / ___ \ / ___ \ / ___ \ ( )( ___ )|\ /| / ___ \
+| ( ) )\/ ) )\/ \ \\/ ) )| () () || ( ) |( \ / ) ( (___) )
+| (__/ / / / ___) / / / | || || || (___) | \ (_) / \ /
+| __ ( / / (___ ( / / | |(_)| || ___ | ) _ ( / ___ \
+| ( \ \ / / ) \ / / | | | || ( ) | / ( ) \ ( ( ) )
+| )___) ) / / /\___/ / / / | ) ( || ) ( |( / \ ) ( (___) )
+|/ \___/ \_/ \______/ \_/ |/ \||/ \||/ \| \_____/
+
+ _______ _______ _______ _______
+( ____ \( ____ )( ___ )( ____ \|\ /|
+| ( \/| ( )|| ( ) || ( \/| ) ( |
+| | | (____)|| (___) || (_____ | (___) |
+| | | __)| ___ |(_____ )| ___ |
+| | | (\ ( | ( ) | ) || ( ) |
+| (____/\| ) \ \__| ) ( |/\____) || ) ( |
+(_______/|/ \__/|/ \|\_______)|/ \|
+
+
+
+
+
+
+""")
+ time.sleep(2)
+ print("""
+DIES BASIERT AUF EINER WAHREN TATSACHE. DIE SPIELELEMENTE SIND VEREINFACHT UND TEILS
+UNREALISTISCH DARGESTELLT. WICHTIGE DETAILS WERDEN ZUR EINFACHEREN VERSTÄNDLICHKEIT
+WEGGELASSEN. DER ERMITTLUNGSPROZESS IST IN WIRKLICHKEIT EINE UNGEHEURLICH SCHWIERIGE
+AUFGABE UND WIRD HIER AUF EIN MÖGLICHST ÜBERSCHAUBARES MASS GEKÜRZT.
+
+""")
+ time.sleep(5)
+ go = 0
+ while go == 0:
+ a = userinput("Tippe folgendes ein, wenn du bereit bist: ok | ")
+ if a == "ok":
+ go = 1
+ else:
+ print("wrong, retry")
+ global start
+ start = time.time()
+
+
+
+def gameoverpossible():
+ global start
+ if "grounding" not in done:
+ current = time.time() - start
+ if current < 120:
+ gameover1()
+ elif current < 180 and current > 119:
+ gameover2()
+ elif current < 240 and current > 179:
+ gameover3()
+ elif current < 300 and current > 239:
+ gameover()
+ else:
+ current = time.time()
+
+def gameover1():
+ if random.randint(0,10) == 1:
+ gameover()
+ else:
+ current = time.time()
+
+def gameover2():
+ if random.randint(0,6) == 1:
+ gameover()
+ else:
+ current = time.time()
+
+def gameover3():
+ if random.randint(0,3) == 1:
+ gameover()
+ else:
+ current = time.time()
+
+def gameover():
+ global next
+ next = 0
+ global exit
+ exit = 0
+ print("""
+ NEW YORK TIMES
+
+ DIE KATASTROPHE
+ ---------------------------------
+Heute morgen gegen 7 Uhr ist eine Boeing 737 MAX 8 der United Airlines abgestürzt.
+Alle 178 Menschen an Bord der Maschine sind bei dem fast senkrechten Absturz der
+Maschine gestorben. Der Unfall ähnelt den beiden bisherigen Abstürzen von 737 MAX
+in Ethiopien und Indonesien in vielerlei Hinsicht. Auch hier war die Maschine
+senkrecht abgestürzt, auch hier wollten die Piloten umkehren und meldeten Probleme
+mit der Flugsteuerung. Die Ermittler dieses Falles werden sich morgen früh für ihre
+langsame Arbeit für den Tod der 178 Menschen verantworten, da sie kein Weltweites
+Flugverbot für die 737 MAX ausgesprochen hatte.
+ ---------------------------------
+
+Oh weh.
+Das wird einige Konsequenzen für dich nach sich ziehen.
+""")
+ time.sleep(4)
+ print("""
+
+
+Es ist der nächste Morgen. Du machst dich auf zum Gericht.
+Die Richter entziehen den Fall deiner Verantwortung und verurteilen dich zu
+lebenslänglicher Haft, aufgrund von fahrlässiger Tötung. Das ist das Ende deiner
+Karriere.
+""")
+
+ print("Punktezahl: 0")
+
+
+
+def einfuehrung():
+ print("""Es ist Samstagmorgen... Urplötzlich stürzt eine fast brandneue Boeing 737MAX
+von Ethiopian Airlines ab. Die Welt ist schockiert, da dies bereits der zweite Absturz dieses
+Typs ist. Beides Mal waren fast brandneue Flugzeuge involviert. Beide Abstürze ähnelten sich
+massiv. Deine Aufgabe ist es nun, die Absturze zu klären.""")
+ print("""
+Als neu ernannter Ermittler musst du dir bereits jetzt eine wichtige Frage stellen:
+Solltest du ein weltweites Flugverbot für diesen Flugzeugtypen verhängen?
+Sowohl Boeing als auch die Fluggesellschaften werden sich dagegen sträuben.
+""")
+ i = userinput("Willst du das Flugverbot verhängen? (y/n)")
+ if i == "y":
+ print("""
+ NEW YORK TIMES
+
+ NTSB ERMITTLER VERHÄNGT FLUGVERBOT FÜR UNGLÜCKSFLIEGER
+ --------------------------------------------------------------
+Heute Morgen hat ein Sprecher des NTSB (National Transport and Safety Board verkündet,
+dass der leitende Ermittler ein Flugverbot für alle Flugzeuge der Boeing 737MAX-Klasse
+zu verhängen. Dies ist auf massive Proteste seitens der Fluggesellschaften und von Boeing
+gestossen. Jedoch: Viele Aviatikexperten befürworten den Entscheid des Ermittlers. Die
+Sicherheit der Passagiere muss um jeden Preis gewährleistet werden. Die einzige Möglichkeit
+dies zu gewährleisten ist, ein Flugverbot auszusprechen.
+""")
+ done.append("grounding")
+ elif i == "n":
+ print("""
+Die Wirtschaft ist wichtig, ein Pilotenfehler kann ja nicht ausgeschlossen werden.
+Ermitteln wir!
+
+""")
+ else:
+ print("wrong, retry")
+ einfuehrung()
+ time.sleep(4)
+
+def grundriss():
+ if "grounding" in done:
+ print("""
+
+_________________________________________________________________________________________________________
+
+Willkommen im Ermittlerbüro.
+Dies ist dein Arbeitsplatz an der Unfallstelle. Die Welt will Antworten und Boeing
+braucht sie, um das Flugzeug zu verbessern. Der Zeitdruck ist aber geringer, da keine
+weiteren Abstürze geschehen können.
+Hier kannst du alle Gegenstände, welche du auf der Unfallstelle finden kannst
+untersuchen, um die mögliche Unfallursache herauszufinden.
+""")
+ else:
+ print("""
+
+_________________________________________________________________________________________________________
+
+Willkommen im Ermittlerbüro.
+Dies ist dein Arbeitsplatz an der Unfallstelle. Du solltest dich so schnell wie
+möglich um diesen Fall kümmern, denn sonst könnte es zu weiteren Abstürzen kommen.
+Hier kannst du alle Gegenstände, welche du auf der Unfallstelle finden kannst
+untersuchen, um die mögliche Unfallursache herauszufinden.
+""")
+
+
+def abspann():
+ print("""
+
+DU HAST ES GESCHAFFT!
+ GLÜCKWUNSCH!
+
+ """)
+ global start
+ global stepscount
+ times = time.time() - start
+ points = times*2 + stepscount**2 - 110
+ if points < 0:
+ print("Deine Zeit: ",times)
+ print("\n\nDeine Punkte (Je geringer desto besser): 0")
+ print("\nDeine Anzahl Schritte (Je geringer desto besser):", stepscount)
+ else:
+ print("Deine Zeit: ",times)
+ print("\n\nDeine Punkte (Je geringer desto besser): ",points)
+ print("\nDeine Anzahl Schritte (Je geringer desto besser):", stepscount)
+ bewertung(points)
+
+def bewertung(punkte):
+ print("""
+ DEINE BEWERTUNG:""")
+ if punkte <= 0:
+ print(""" GOD """)
+ if punkte < 20:
+ print(""" A+ """)
+ elif punkte < 40:
+ print(""" A """)
+ elif punkte < 100:
+ print(""" B """)
+ elif punkte < 200:
+ print(""" C """)
+ elif punkte < 301:
+ print(""" D """)
+ elif punkte > 300:
+ print(""" D- """)
+
+
+def userinput(question):
+ return input(question).lower()
+
+def makedone(item):
+ inventory.remove(item)
+ done.append(item)
+
+def eb():
+ global stepscount
+ stepscount += 1
+ print("""Du befindest dich jetzt im Ermittlerbüro.
+""")
+ while len(inventory) > 0:
+ stepscount += 1
+ if "blackbox" in inventory:
+ makedone("blackbox")
+ print("""Da du ja jetzt die Blackbox des Flugzeugs gefunden hast,
+kannst du sie hier im Ermittlerbüro aufmachen und die Flugdaten auslesen.
+Dies dauert jedoch eine gewisse Zeit. Du öffnest ihn und hoffst, dass einer
+deiner Spezialisten die Daten retten kann.""")
+ time.sleep(7)
+ print("""Dein Spezialist hat es geschafft! Die Daten konten wiederhergestellt werden!
+Du siehst eine Auffälligkeit in den Daten der Flughöhe und der vertikalen Geschwindigkeit.
+Dies deutet auf massive technische Probleme hin. Auch die Daten des Anstellwinkelsensors 1,
+sind auffällig: Er hatte die ganze Zeit denselben Anstellwinkel angezeigt.
+""")
+ if "anstellwinkelsensor" in inventory:
+ print("""Glücklicherweise hast du ihn bereits auf dem Trümmerfeld entdeckt.
+Du untersuchst ihn nun.""")
+ elif "anstellwinkelsensor" in done:
+ print("""Du hast ihn ja bereits untersucht. """)
+ else:
+ print("""Du solltest dich vielleicht nach dem Sensor umsehen.""")
+ elif "anstellwinkelsensor" in inventory:
+ makedone("anstellwinkelsensor")
+ print("""Da du ja zuvor den Anstellwinkelsensor des Flugzeugs gefunden hast,
+kannst du ihn jetzt auf Schäden überprüfen. Du untersuchst die Ströme, welche der
+Sensor bei Bewegung ausgibst und machst eine Entdeckung:
+ER FUNKTIONIERT NICHT!
+Logischerweise könnte er auch durch den Aufprall beschädigt sein, """)
+ if "blackbox" in done:
+ print("""aber die Blackbox bestätigt ja den Ausfall des Sensors.
+Du bist der Ursache auf der Spur. Glückwunsch!""")
+ global goahead
+ goahead = 1
+ inventory.clear()
+ else:
+ print("""du solltest deshalb die Blackbox finden, um den Ausfall zu
+bestätigen.
+""")
+ print("\n")
+ elif "turbine" in inventory:
+ print("""Du hast eine der beiden Turbinen in das Büro transportieren lassen.
+Als mögliche Absturzursache hast du Triebwerksversagen im Verdacht. Beim Betrachten
+der Triebwerke erkennst du aber an der Verformung der Schaufeln und dem Dreck
+in der Turbine selbst, also im Kompressor, dass sie voll funktionstüchtig war.
+Somit kann ein Absturz durch Triebwerksversagen ausgeschlossen werden.
+Denn ein modernes Flugzeug kann auch mit nur einem Triebwerk problemlos fliegen.""")
+ makedone("turbine")
+ elif "zeugen" in inventory:
+ makedone("zeugen")
+ print("""Du hast ja auch bereits die Zeugen befragt. Du schaust dir deine
+Notizen lange an, kannst aber nichts erkennen, was dir für den Fall helfen könnte.
+Du verwirfst die Aussagen als nicht aussagekräftig.""")
+ time.sleep(5)
+ if goahead == 1:
+ stepscount += 1
+ print("""Du wendest dich nun den Pilotenakten zu. Der Kapitän hatte beachtliche
+8000 Flugstunden und soweit du erkennen magst, auch keine bekannten Probleme. Auch die
+(kurze) Karriere des Copiloten war makellos, er hatte jedoch nur 200 Flugstunden.
+Die Piloten hatten beim Kontakt mit dem Tower Probleme gemeldet und zur Umkehr
+gebeten. Dies bestätigte auch der Stimmenrekorder. Deine Aufmerksamkeit fällt auf
+das als Manouvering Caracteristics Augumentation System, oder kurz MCAS, welches eigentlich
+einen Strömungsabriss verhindern sollte, aber, aufgrund der Architektur der 737-Familie,
+nur mit einem der redundanten Anstellwinkelsensoren verbunden war. Des weiteren:
+Zwei Sensoren sind einer zu wenig, denn falls jetzt einer ausfallen sollte, welcher
+sollte verwendet werden? Das MCAS hatte hier schlicht weg keine Chance, vernüftig
+zu handeln und hatte das Flugzeug in einen Sturzflug gezwungen, da der Anstellwinkelsensor
+einen zu hohen Anstellwinkel gemeldet hatte. Das Flugzeug war jedoch gar nicht in jener Lage und
+die Piloten kämpften vergeblich gegen das System, welches sich nicht abschalten liess.
+Denn durch die grösseren und Effizienteren Triebwerke (LEAP 1A) der 737MAX, mussten diese
+weiter vorne und höher unter dem Flügel angebracht werden, um genügend Bodenfreiheit zu
+gewährleisten. Dies hatte dazu geführt, dass bei dem schon sehr alten Flugzeug das sogenannte
+Pitch-Up moment grösser wurde und somit die Nase des Flugzeugs in gewissen Fluglagen
+unkontrolliert nach oben gehen kann. Das MCAS sollte dies verhindern, denn diese Fluglage
+führt unweigerlich zu einem Strömungsabriss, bei welchem das Flugzeug sogesagt "vom Himmel
+fallen würde".""")
+ time.sleep(10)
+ if "grounding" in done:
+ stepscount -= 2
+ print("""
+Nachdem du ja glücklicherweise bereits bei Ermittlungsbeginn das Grounding des Typs andgeordnet hattest.
+Die Fluggesellschaften und Boeing hatten zwar nicht sehr positiv darauf reagiert, aber mit dem was
+du herausgefunden hattest, sind jetzt alle froh, dass du es getan hattest.
+Die 737 MAX war anschliessend bis im Dezember 2020 gegroundet und Boeing fuhr durch dieses Problem
+massive Verluste ein.
+""")
+ else:
+ stepscount += 10
+ print("""
+Alle sind schockiert, dass du nicht bereits bei Ermittlungsbeginn ein Grounding angeordnet hattest.
+Boeing und auch die Fluggesellschaften fanden es zwar erst besser, aber auch sie sind jetzt der Meinung,
+dass es besser gewesen wäre, wenn du bereits da ein Grounding angeordnet hättest. Deine Haltung davon ist
+zwar verständlich, aber du wirst trotzdem zur Verantwortung gezogen. Du musst eine Haftstrafe von einem
+Jahr absitzen, da du viele Personen in Gefahr gebracht hast. Trotzdem, der Fall ist geklärt.
+""")
+ return 0
+ else:
+ print("""Um etwas untersuchen zu können, musst du erst etwas in dein Inventar nehmen,
+dann hier zurückkehren. Gehe dazu hinaus auf die Unfallstelle.
+Auch da könnten sich wichtige Hinweise verstecken.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Flügel (f), zum Heck (h) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "f":
+ return 2
+ if i == "h":
+ return 3
+ if i == "z":
+ return 5
+
+
+
+def fl():
+ global stepscount
+ stepscount += 1
+ if "flügel" in visited:
+ print("""Du hast den Flügel bereits untersucht.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Heck (h), zum Büro (b) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "b":
+ return 1
+ if i == "h":
+ return 3
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 2
+ else:
+ print("""
+Der Flügel. Komplett zertrümmert. Er scheint in einem beinahe 90° Winkel
+aufgeschlagen zu sein. Du und dein Team finden eine der beiden Turbinen. Du lässt
+sie in dein Büro transportieren, um sie dort zu untersuchen. Du kannst entweder
+in dein Büro gehen oder weitersuchen.""")
+ i = userinput("Willst du zurück? (y/n)")
+ visited.append("flügel")
+ time.sleep(2)
+ if i == 'y':
+ return 1
+ elif i == 'n':
+ print("""Du willst also weitersuchen.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Heck (h) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "h":
+ return 3
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 2
+
+
+
+def hk():
+ global stepscount
+ stepscount += 1
+ if "heck" in visited:
+ print("""Du hast das Heck bereits untersucht.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Flügel (f), zum Büro (b) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "b":
+ return 1
+ if i == "f":
+ return 2
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 3
+ else:
+ print("""
+Du entdeckst etwas, das wie das Seitenleitwerks des Flugzeugs aussehen könnte.
+Dein grösstes Ziel ist, die Blackbox zu finden. Du hebst Teile an, und plötzlich siehst du sie:
+Die Blackbox. Du hebst sie auf und lässt sie in dein Büro bringen. """)
+ inventory.append("blackbox")
+ time.sleep(1)
+ visited.append("heck")
+ i = userinput("Willst du zurück? (y/n)")
+ if i == 'y':
+ return 1
+ elif i == 'n':
+ print("""Du willst also weitersuchen.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Flügel (h) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "f":
+ return 2
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 3
+
+
+
+def zg():
+ global stepscount
+ stepscount += 1
+ if "zeugen" in visited:
+ print("""Du hast die Zeugen bereits befragt.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Flügel (f), zum Büro (b) oder zum Heck (h)? ")
+ if i == "c":
+ return 4
+ if i == "b":
+ return 1
+ if i == "f":
+ return 2
+ if i == "h":
+ return 3
+ else:
+ print("wrong, retry")
+ return 5
+ else:
+ print("""
+Du machst dich auf den Weg in ein nahegelegenes Dorf, da du gehört hast, dass eine Person
+den Absturz gesehen hat.
+ - Hallo. Sie haben den Absturz mitverfolgt?
+ - Ja habe ich.
+ - Wollen sie uns etwas darüber erzählen?
+ - Ja klar. Also. Ich war gerade auf dem Weg nach Hause, als ich ein Flugzeug hörte. Es war lauter
+ als sonst, deshalb schaute ich auf. Etwas schien ganz und gar nicht gut, denn plötzlich kippte
+ es zur Seite weg und stürzte vom Himmel. Einfach so. Eine riesige Explosion erschütterte unser Dorf.
+ - Vielen Dank. Sie haben mir geholfen.
+
+ Du machst dich auf den Weg zurück zur Unfallstelle. Willst du dir direkt Gedanken über die
+ Aussagen machen? Dafür musst du ins Büro zurück. """)
+ inventory.append("zeugen")
+ time.sleep(1)
+ visited.append("zeugen")
+ i = userinput("Willst du zurück? (y/n)")
+ if i == 'y':
+ return 1
+ elif i == 'n':
+ print("""Du willst also weitersuchen.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Heck (h) oder zum Flügel (f)? ")
+ if i == "c":
+ return 4
+ if i == "h":
+ return 3
+ if i == "f":
+ return 2
+ else:
+ print("wrong, retry")
+ return 5
+
+
+
+def co():
+ global stepscount
+ stepscount += 1
+ if "cockpit" in visited:
+ print("""Du hast das Cockpit bereits untersucht.""")
+ i = userinput("Wo willst du hin? Zum Heck (h), zum Flügel (f), zum Büro (b) oder willst du Zeugen befragen (z)? ")
+ if i == "h":
+ return 3
+ if i == "b":
+ return 1
+ if i == "f":
+ return 2
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 4
+ else:
+ print("""
+Du näherst dich der Nase des Flugzeugs. Vorsichtig läufst du umher. Vor dir liegt ein Sensor.
+Er scheint defekt zu sein. Du hebst ihn auf und lässt ihn in dein Büro bringen.
+Du kannst zurück gehen und ihn untersuchen oder weitersuchen.""")
+ inventory.append("anstellwinkelsensor")
+ time.sleep(1)
+ visited.append("cockpit")
+ i = userinput("Willst du zurück? (y/n)")
+ if i == 'y':
+ return 1
+ elif i == 'n':
+ print("""Du willst also weitersuchen.""")
+ i = userinput("Wo willst du hin? Zum Flügel (f), zum Heck (h) oder willst du Zeugen befragen (z)? ")
+ if i == "f":
+ return 2
+ if i == "h":
+ return 3
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 4
+
+
+
+
+def main():
+ cover()
+ einfuehrung()
+ grundriss()
+ global next
+ global exit
+ next = 1
+ exit = 0
+ while next != 0:
+ if next == 1:
+ next = eb()
+ elif next == 2:
+ next = fl()
+ elif next == 3:
+ next = hk()
+ elif next == 4:
+ next = co()
+ elif next == 5:
+ next = zg()
+ else:
+ print("an error occured. restart. Exit Code:", next)
+ next = 0
+ exit = 0
+ gameoverpossible()
+ if exit == 1:
+ abspann()
+
+main()
\ No newline at end of file
diff --git a/TextAdventure/Adventure_Template (1).py b/TextAdventure/Adventure_Template (1).py
new file mode 100755
index 0000000..9bc8491
--- /dev/null
+++ b/TextAdventure/Adventure_Template (1).py
@@ -0,0 +1,871 @@
+import time
+
+
+global inventory
+inventory = []
+
+global besucht
+besucht = []
+
+
+def cover():
+ print("""
+
+▄▄▄█████▓ ██░ ██ ▓█████ ██░ ██ ▒█████ █ ██ ██████ ▓█████
+▓ ██▒ ▓▒▓██░ ██▒▓█ ▀ ▓██░ ██▒▒██▒ ██▒ ██ ▓██▒▒██ ▒ ▓█ ▀
+▒ ▓██░ ▒░▒██▀▀██░▒███ ▒██▀▀██░▒██░ ██▒▓██ ▒██░░ ▓██▄ ▒███
+░ ▓██▓ ░ ░▓█ ░██ ▒▓█ ▄ ░▓█ ░██ ▒██ ██░▓▓█ ░██░ ▒ ██▒▒▓█ ▄
+ ▒██▒ ░ ░▓█▒░██▓░▒████▒ ░▓█▒░██▓░ ████▓▒░▒▒█████▓ ▒██████▒▒░▒████▒
+ ▒ ░░ ▒ ░░▒░▒░░ ▒░ ░ ▒ ░░▒░▒░ ▒░▒░▒░ ░▒▓▒ ▒ ▒ ▒ ▒▓▒ ▒ ░░░ ▒░ ░
+ ░ ▒ ░▒░ ░ ░ ░ ░ ▒ ░▒░ ░ ░ ▒ ▒░ ░░▒░ ░ ░ ░ ░▒ ░ ░ ░ ░ ░
+ ░ ░ ░░ ░ ░ ░ ░░ ░░ ░ ░ ▒ ░░░ ░ ░ ░ ░ ░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+
+
+
+---------------------------------------------------------------------
+
+ """)
+ time.sleep(1)
+
+
+
+def gameover():
+ print("""
+
+
+ ▄████ ▄▄▄ ███▄ ▄███▓▓█████ ▒█████ ██▒ █▓▓█████ ██▀███
+ ██▒ ▀█▒▒████▄ ▓██▒▀█▀ ██▒▓█ ▀ ▒██▒ ██▒▓██░ █▒▓█ ▀ ▓██ ▒ ██▒
+▒██░▄▄▄░▒██ ▀█▄ ▓██ ▓██░▒███ ▒██░ ██▒ ▓██ █▒░▒███ ▓██ ░▄█ ▒
+░▓█ ██▓░██▄▄▄▄██ ▒██ ▒██ ▒▓█ ▄ ▒██ ██░ ▒██ █░░▒▓█ ▄ ▒██▀▀█▄
+░▒▓███▀▒ ▓█ ▓██▒▒██▒ ░██▒░▒████▒ ░ ████▓▒░ ▒▀█░ ░▒████▒░██▓ ▒██▒
+ ░▒ ▒ ▒▒ ▓▒█░░ ▒░ ░ ░░░ ▒░ ░ ░ ▒░▒░▒░ ░ ▐░ ░░ ▒░ ░░ ▒▓ ░▒▓░
+ ░ ░ ▒ ▒▒ ░░ ░ ░ ░ ░ ░ ░ ▒ ▒░ ░ ░░ ░ ░ ░ ░▒ ░ ▒░
+░ ░ ░ ░ ▒ ░ ░ ░ ░ ░ ░ ▒ ░░ ░ ░░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░
+
+
+-------------------------------------------------------------------------
+""")
+
+
+def regeln():
+ print("Bevor wir starten, ein paar Anmerkungen.\n"
+ "Bitte alles was du schreibst IMMER in Kleibuchstaben verfassen.\n"
+ "Es wird immer MAXIMAL ein Wort benötigt.\n"
+ "Du hast einen Rucksack dabei, in dem du Dinge mitnehmen kannst.\n")
+
+ time.sleep(1)
+
+
+def einfuehrung():
+ print("Es ist Freitag Nacht...\n"
+
+
+ "Du hast dich verlaufen und bist auf der Suche nach einer Unterkunft\n"
+ "für die kommende Nacht.\n"
+ "Du bist ganz auf dich alleine gestellt.\n"
+ "Wenn du nicht aufpasst, wirst du sterben.\n"
+ "Sei vorsichtig und überlege dir jede Entscheidung gut.\n"
+ "Es gibt kein Zurück!!\n"
+
+ "Du bist ganz alleine an einer abgelegenen Strasse.\n"
+ "Es stürmt und ist eiskalt.\n"
+ "Plötzlich kommst du zu einem alten Haus.\n"
+ "Es sieht unheimlich aus.\n")
+ time.sleep(1)
+
+def grundriss():
+ print ("""
+ DU BIST HIER
+ |
+ __________ ____|______ _______ ____
+ | | | | | |
+ |Wohnzimmer|____| Flur |____|Schlafzimmer|
+ | | | | | |
+ |__ _____ _| |__ ______ _| |___ ___ ____|
+ | |
+ | |
+ | |
+ ____|____ ________ __ ______|_____
+ | | | | | |
+ | Küche |____| Flur |____| Badezimmer |
+ | | | | | |
+ |__ _____ _| |__ ________| |_ __________|
+ |
+ |
+ |
+ _____|_ ____
+ | |
+ | Keller |
+ | |
+ |_________ __|
+
+
+
+""")
+ time.sleep(1)
+
+
+
+
+
+def lageplan():
+ print("""
+
+ _______ ___________ _______ ____
+ | | | | | |
+ |Wohnzimmer|____| Flur |____|Schlafzimmer|
+ | | | | | |
+ |__ _____ _| |__ ______ _| |___ ___ ____|
+ | |
+ | |
+ | |
+ ____|____ ________ __ ______|_____
+ | | | | | |
+ | Küche |____| Flur |____|Badezimmer |
+ | | | | | |
+ |__ _____ _| |__ ________| |_ __________|
+ |
+ |
+ |
+ _____|______
+ | |
+ | Keller |
+ | |
+ |____________|
+
+
+ """)
+
+
+
+
+def abspann():
+ print("""
+
+
+▄▄▄█████▓ ██░ ██ ▓█████ ▓█████ ███▄ █ ▓█████▄
+▓ ██▒ ▓▒▓██░ ██▒▓█ ▀ ▓█ ▀ ██ ▀█ █ ▒██▀ ██▌
+▒ ▓██░ ▒░▒██▀▀██░▒███ ▒███ ▓██ ▀█ ██▒░██ █▌
+░ ▓██▓ ░ ░▓█ ░██ ▒▓█ ▄ ▒▓█ ▄ ▓██▒ ▐▌██▒░▓█▄ ▌
+ ▒██▒ ░ ░▓█▒░██▓░▒████▒ ░▒████▒▒██░ ▓██░░▒████▓
+ ▒ ░░ ▒ ░░▒░▒░░ ▒░ ░ ░░ ▒░ ░░ ▒░ ▒ ▒ ▒▒▓ ▒
+ ░ ▒ ░▒░ ░ ░ ░ ░ ░ ░ ░░ ░░ ░ ▒░ ░ ▒ ▒
+ ░ ░ ░░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░
+-----------------------------------------------------
+
+
+""")
+
+
+
+def Eintreten():
+ aktion = input('Willst Du eintreten oder weglaufen?').lower()
+
+ if aktion == 'eintreten':
+ flur1()
+
+ elif aktion == 'weglaufen':
+ print("\n"
+ "Du läufst davon voller Angst... \n"
+ "Doch schon nach kurzer Zeit wird dir bewusst...\n"
+ "Du musst zurück wenn du diese Nacht überleben willst.\n")
+ time.sleep(1)
+ Eintreten()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ Eintreten()
+
+
+def Mord():
+ print("\n"
+ "Du rennst so schnell du kannst zum Flur. \n"
+ "Du willst die Türe aufreissen und weglaufen.\n"
+ "Doch die Türe ist verschlossen!\n"
+ "Plötzlich spürst du das jemand hinter dir steht... \n"
+ "...du drehst langsam deinen Kopf\n"
+ "Die schwarze Gestalt steht hinter dir!\n"
+ "Sie ist voller Blut und lacht laut und bevor du reagieren kannst...\n"
+ "...sticht sie dir ein Messer kaltblütig in die Brust!\n")
+ time.sleep(5)
+ gameover()
+
+def schock():
+ print("Du öffnest neugierig den Duschvorhang.\n"
+ "Die Badewanne.. sie.. sie ist.. voller Blut!\n"
+ "Du schreist und hast Angst. Du willst nur noch weg hier!\n"
+ "Doch nach kurzer Zeit fällt dir neben der Wanne etwas auf...\n"
+ "...ist das ein Schlüssel?")
+
+ h = input('Schlüssel aufheben oder liegen lassen?').lower()
+
+ if h == "aufheben":
+ inventory.append("schlüssel")
+ badezimmer()
+
+
+ if h == "lassen":
+ badezimmer()
+
+ else:
+ print("Dieser Befehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen.\n")
+ time.sleep(2)
+ schock()
+
+def flur2():
+ print("Du stehst erneut auf einem Flur...\n"
+ "Er sieht aber anderst aus als der beim Hauseingang.\n"
+ "Deutlich düsterer... und eine Tür die in einen anderen Raum führt.\n"
+ "In den Keller vielleicht?\n")
+
+ i = input("Willst du die Türe öffnen?").lower()
+
+ if i == "nein":
+ flur3()
+
+
+ if i == "ja":
+
+ if "schlüssel" in inventory:
+ inventory.remove("schlüssel")
+ treppe()
+
+ else:
+ print("Die Türe scheint verschlossen zu sein.\n"
+ "Du brauchst einen Schlüssel um diesen Raum zu betreten.\n")
+
+ time.sleep(3)
+ lageplan()
+
+ j = input("Wohin willst du?").lower()
+
+
+
+ if j == "badezimmer":
+ if "ja" in besucht:
+ badezimmer1()
+
+ else:
+ badezimmer()
+
+ if j == "küche":
+ kueche()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ flur1()
+
+
+
+
+
+
+def flur1():
+ inventory.append("lampe")
+ print("\n"
+ "(Du findest eine Lampe und steckst sie in dein Inventar)\n"
+ "Du stehst auf einem Flur.\n"
+ "Das Haus sieht alt und verlassen aus.\n"
+ "Doch plötzlich hörst du etwas...\n"
+ "Schritte vielleicht?\n")
+
+ d = input("Willst du im Schlafzimmer oder im Wohnzimmer nachsehen?").lower()
+
+ if d == "schlafzimmer":
+ schlafzimmer1()
+
+ if d == "wohnzimmer":
+ wohnzimmer1()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen.\n")
+ time.sleep(2)
+ flur1()
+
+
+def flur():
+
+ print("Du bist nun auf dem Flur.\n")
+
+ f = input("Wohin willst du?").lower()
+ lageplan()
+
+
+ if f == "schlafzimmer":
+ schlafzimmer()
+
+ if f == "wohnzimmer":
+ wohnzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ flur()
+
+def flur3():
+
+ print("Du bist nun auf dem Flur.\n")
+
+
+ if "schlüssel" in inventory:
+
+ q = input("Willst du die Türe öffnen?")
+
+ if q == "ja":
+ if "schlüssel" in inventory:
+ treppe()
+
+ else:
+ print("Du brauchst einen Schlüssel um diese Türe zu öffnen.\n")
+
+ if q == "nein":
+
+
+ time.sleep(3)
+ lageplan()
+ f = input("Wohin willst du?").lower()
+
+
+ if f == "badezimmer":
+ if "ja" in besucht:
+ badezimmer()
+
+ else:
+ badezimmer1()
+
+ if f == "küche":
+ kueche()
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ flur3()
+
+ else:
+ lageplan()
+ f = input("Wohin willst du?").lower()
+
+
+ if f == "badezimmer":
+ if "ja" in besucht:
+ badezimmer()
+
+ else:
+ badezimmer1()
+
+ if f == "küche":
+ kueche()
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ flur3()
+
+
+
+def kueche():
+
+ print("Du bist nun in der Küche.\n"
+ "Von der schwarzen Gestalt ist nichts zu sehen.\n"
+ "Auf der Ablage liegt ein Messer.\n")
+
+ time.sleep(2)
+
+ p = input("Willst du das Messer aufheben? Es könnte sich später noch für Nützlich erweisen.\n")
+
+ if p == "ja":
+ inventory.append("messer")
+
+
+ if p == "nein":
+ print("ok")
+
+
+ kueche1()
+
+def kueche1():
+
+ print("Du bist nun in der Küche.\n")
+
+ time.sleep(2)
+ lageplan()
+ x = input("Wohin willst du?").lower()
+
+
+ if x == "flur":
+ flur2()
+
+ if x == "wohnzimmer":
+ wohnzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ kueche()
+
+def schlafzimmer():
+
+ print("Du bist nun im Schlafzimmer.\n")
+
+ e = input("Wohin willst du?").lower()
+ lageplan()
+
+ if e == "badezimmer":
+ if "ja" in besucht:
+ badezimmer()
+
+ else:
+ badezimmer1()
+
+ if e == "flur":
+ flur()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ schlafzimmer()
+
+def wohnzimmer():
+
+ print("Du bist nun im Wohnzimmer.\n")
+
+ f = input("Wohin willst du?").lower()
+ lageplan()
+
+ if f == "flur":
+ flur()
+
+ if f == "küche":
+ kueche()
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ wohnzimmer()
+
+
+def badezimmer2():
+
+ if "ja" in besucht:
+
+ badezimmer()
+
+
+ else:
+
+ print("Du bist nun im Badezimmer.\n")
+
+ e = input("Wohin willst du?").lower()
+ lageplan()
+
+ if e == "flur":
+ flur3()
+
+ if e == "schlafzimmer":
+ schlafzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ badezimmer()
+
+
+def badezimmer():
+
+ print("Du bist nun im Badezimmer.\n")
+
+ if "schlüssel" != inventory:
+
+ w = input("Willst du den Schlüssel aufheben?").lower()
+
+ if w == "ja":
+ inventory.append("schlüssel")
+
+ else:
+ print("ok")
+
+
+ e = input("Wohin willst du?").lower()
+ lageplan()
+
+ if e == "flur":
+ flur3()
+
+ if e == "schlafzimmer":
+ schlafzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ badezimmer()
+
+
+def badezimmer1():
+
+ besucht.append("ja")
+ print("Du öffnest die Türe zum Bad ganz leise.\n"
+ "Du hoffst, dass die schwarze Gestalt nichts gehört hat.\n"
+ "Etwas ängstlich betrittst du nun das Badezimmer.\n"
+ "Viel gibt es nicht zu sehen in diesem Badezimmer\n"
+ "Eine Toilette, ein Spiegel und eine Badewanne\n"
+ "Der Duschvorhang der Badewanne ist zu\n")
+
+ g = input("Willst du ihn öffnen?").lower()
+
+ if g == "ja":
+ schock()
+
+ if g == "nein":
+ badezimmer2()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ badezimmer1()
+
+
+
+def schlafzimmer1():
+
+ print("\n"
+ "Du öffnest die Schlafzimmertüre langsam.\n"
+ "Die Türe aber knirscht und lässt sich nur schwer öffnen.\n"
+ "Nun betrittst du das alte und verlassene SChlafzimmer.\n"
+ "Du siehst dich etwas um.\n"
+ "Am Boden hinter dem Bett siehst du etwas.\n"
+ "Flecken viellei... HILFE!!!!!\n"
+ "Jemand schrie um Hilfe? Und die Flecken - es ist Blut!!\n")
+
+ a = input("Willst du flüchten oder dem Hilferuf folgen?").lower()
+
+ if a == "flüchten":
+
+ print("\n"
+ "Du entschliesst dich zu flüchten.\n"
+ "Du hast Todesangst\n")
+ Mord()
+
+ if a == "folgen":
+ wohnzimmer1()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ schlafzimmer1()
+
+
+def wohnzimmer1():
+
+ print("\n"
+ "Du gehst aufmerksam ins Wohnzimmer.\n"
+ "Du blickst umher.\n"
+ "Da links! Eine schwarze Gestalt steht im nächsten Zimmer!\n"
+ "Geschockt bleibst du stehen und planst dein weiteres Vorgehen.\n")
+
+ b = input("Willst du die Situation beobachten oder flüchten?").lower()
+
+ if b == "flüchten":
+ Mord()
+
+ if b == "beobachten":
+ print("\n"
+ "Schockiert erkennst du, dass die schwarze Gestalt ein Messer hat.\n"
+ "Sie lacht auf eine psychopathische Art und Weise und läuft umher.\n"
+ "Sucht sie etwas? Oder jemanden?\n"
+ "Mich vielleicht?\n"
+ "Es sieht so aus als würde sie im nächsten Raum verschwinden.\n")
+
+ time.sleep(5)
+ lageplan()
+
+ c = input("Wohin willst du?").lower()
+
+ if c == "flur":
+ flur()
+
+
+ if c == "küche":
+ kueche()
+
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ wohnzimmer1()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ wohnzimmer1()
+
+
+def treppe():
+
+ print("Du öffnest die Türe möglichst leise.\n"
+ "Zu deiner Erleichterung öffnet sich die Türe ruhig.\n"
+ "Vor dir siehst du eine Treppe.\n"
+ "Sie führt nach unten... in den Keller wahrscheinlich.\n")
+
+ k = input("Willst du den Keller betreten?")
+
+ if k == "ja":
+ keller1()
+
+
+ if k == "nein":
+ schlüssel = 1
+ flur3()
+
+
+ else:
+ print("Dieser Befehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen.\n")
+ treppe()
+
+def keller1():
+
+ print("Schleichend gehst du die dunkle, alte Treppe hinunter\n"
+ "Zu deinem Pech knirscht das alte Holz unter deinen Füssen\n"
+ "Unten angekommen siehst du dich etwas um.\n"
+ "Ein Schrank, ein altes Bett und viele alte Schachteln stehen herum.\n"
+ "Ein komischer Geruch kommt dir in die Nase...\n"
+ "...woher der wohl kommen mag?\n"
+ "Aus dem Schranz läuft etwas heraus...\n"
+ "...wegen der Dunkelheit erkennst du nicht wases ist.\n")
+
+ l = input("Willst du im Schrank nachschauen?").lower()
+
+ if l == "ja":
+ schrank1()
+
+ if l == "nein":
+ schrank2()
+
+
+def schrank2():
+ print(
+ "Du hörst plötzlich ein Lachen.\n"
+ "Die schwarze Gestalt!!!\n"
+ "Und du hast keine Möglichkeit zu flüchten!\n"
+ "Das knirschen der Treppen wird immer lauter.\n"
+ "Du musst dich verstecken. Schnell!!!\n")
+
+
+
+
+ time.sleep(3)
+
+ o = input("Wo willst du dich verstecken?\n"
+ "Hinter den Schachteln oder unter dem Bett?").lower()
+
+
+ if o == "bett":
+ bett()
+
+
+ if o == "schachteln":
+ schachteln()
+
+
+ else:
+ print("Diese Möglichkeit steht nicht zur Auswahl.\n"
+ "Bitte überprüfe deine Antwort nochmals.\n")
+ schrank2()
+
+
+
+def schrank1():
+
+ print("Du öffnest den Schrank.\n"
+ "AHHHHHH!! Eine Leiche!! Und Blut! Überall Blut!!\n"
+ "Als wäre das nicht schon genug, hörst du plötzlich ein Lachen\n"
+ "Die schwarze Gestalt!!!\n"
+ "Und du hast keine Möglichkeit zu flüchten!\n"
+ "Das knirschen der Treppen wird immer lauter.\n"
+ "Du musst dich verstecken. Schnell!!!\n")
+
+
+ time.sleep(3)
+
+ m = input("Wo willst du dich verstecken?\n"
+ "Im Schrank, hinter den Schachteln oder unter dem Bett?\n").lower()
+
+ if m == "schrank":
+ schrank()
+
+
+ if m == "bett":
+ bett()
+
+
+ if m == "schachteln":
+ schachteln()
+
+
+ else:
+ print("Diese Möglichkeit steht nicht zur Auswahl.\n"
+ "Bitte überprüfe deine Antwort nochmals.\n")
+ schrank1()
+
+
+def schrank():
+ print("Du hast entschieden dich im Schrank zu verstecken.\n"
+ "In dem Schrank in dem auch die Leiche ist.\n"
+ "Ob das wohl die Richtige entscheidung war?\n")
+ ende1()
+
+
+
+
+def bett():
+ print("Du hast dich für das Bett entschieden\n"
+ "Unter dem Bett liegt ein Teppich\n"
+ "Ob da wohl etwas darunter ist, dass versteckt werden muss?\n")
+ ende2()
+
+
+
+
+def schachteln():
+ print("Du hast dich für die Schachteln entschieden\n"
+ "Du machst dich so klein wie möglich und hoffst nicht entdeckt zu werden\n"
+ "Durch einen Spalt bei den Schachteln siehst du auf das Bett\n"
+ "Darunter fällt dir ein Teppich auf.\n"
+ "Es sieht aus als wäre darunter etwas versteckt.\n")
+ ende3()
+
+
+def ende1():
+
+ print("Du drückst dich an den Schrank und bist so leise wie nur möglich.\n"
+ "Du hörst wie die schwarze Gestalt immer und immer näher kommt.\n"
+ "Sie lacht laut und sucht dich überall.\n"
+ "Sie kommt näher zum Schrank mit dem Messer voran.\n"
+ "Dann bleibt sie stehen.\n"
+ "Langsam öffnet sie die Schranktür.\n"
+ "Du blickst ihr direkt in die Augen.\n"
+ "Du schreist aber sie zeigt keine Gnade und ersticht dich kaltblütig.\n")
+ gameover()
+
+
+
+def ende2():
+
+ print("Die schwarze Gestalt ist im Keller.\n"
+ "Du hast Todesangst. Sie sucht dich überall.\n"
+ "Du erinnerst dich an das Messer welches du im Badezimmer gefunden hast.\n")
+
+ n = input("Willst du mit dem Messer den Teppich aufschneiden?")
+
+ if n == "ja":
+
+ if "messer" in inventory:
+
+ inventory.remove("messer")
+ flucht()
+
+ else:
+ mord2()
+
+
+ if n == "nein":
+ print("Du hast keine andere wahl. Schneide den Teppich auf!!!")
+ ende2()
+
+ else:
+ print("Antworte bitte mit ja oder nein.")
+ ende2()
+
+
+
+
+def ende3():
+
+ print("Du hörst wie die schwarze Gestalt den Keller betretet.\n"
+ "Voller Angst überlegst du wie du flüchten könntest.\n"
+ "Die schwarze Gestalt sucht dich überall.\n"
+ "Sie kommt langsam aber stetig immer näher zu den Schachteln.\n"
+ "Als die schwarze Gestalt einen kurzen Moment weg schaut,\n"
+ "läufst du so schnell du kannst zum Bett und versteckst dich dort\n")
+
+ ende2()
+
+
+def mord2():
+ print("Du hast kein Messer in deinem Rucksack.\n"
+ "Da du das Messer ohne Erfolg gesucht hast,\n"
+ "wurde die schwarze Gestalt auf dich aufmerksam.\n"
+ "Sie kommt immer näher in Richtung Bett und du hast\n"
+ "keine Möglichkeit mehr dich zu verstecken.\n"
+ "Die schwarze Gestalt zieht das Bett weg und sieht dir tief in die Augen.\n"
+ "Du schaust sie hilfeschreiend an aber das ist ihr egal.\n"
+ "Sie lacht laut los und sticht dir langsam mit dem Messer in die Brust.\n"
+ "Du verlierst das Bewusstsein und das letzte was du noch hörst,\n"
+ "ist das psychopathische Lachen.\n")
+ gameover()
+
+
+
+def flucht():
+ print("Unter dem Teppich ist tatsächlich etwas.\n"
+ "Eine geheime Öffnung im Boden!! Vielleicht ein Weg der hier weg führt?\n"
+ "Du Öffnest die Falltüre und springst nach unten.\n"
+ "Tatsächlich! Es sieht aus wie ein langer Gang\n"
+ "Das Problem ist nur... es ist stock dunkel.\n")
+
+ o = input("Nimm deine Lampe und zünde sie an! (lampe nehmen)\n")
+
+ if o == "lampe nehmen":
+ inventory.remove("lampe")
+ print("Du siehst nun genug für deine Flucht!\n")
+ wegvonhier()
+
+ else:
+ print("Dieser Befehl kenne ich leider nicht :/\n"
+ "Bitte erneut versuchen.\n")
+
+
+def wegvonhier():
+ print("Hinter dir hörst du schonwieder das Lachen der schwarzen Gestalt.\n"
+ "Du rennst so schnell du kannst!\n"
+ "Es ist kalt und nass in diesem Tunnel aber dir bleibt nichts anderes übrig.\n"
+ "Hier! Eine Leiter!\n"
+ "Du steigst die Leiter nach oben und öffnest die Falltüre.\n"
+ "Die schwarze Gestalt kommt immer näher!\n"
+ "Du kletterst hinaus und schliesst die Türe wieder.\n")
+ glückwunsch()
+
+
+
+def glückwunsch():
+ print("Gratuliere!!! Du hast die Nacht überlebt und einen Ausweg aus dem Haus gefunden!\n"
+ "Du bist nun in einem Wald.\n"
+ "Nach langem umherirren hast du ein Dorf gefunden.\n"
+ "Die Leute dort waren sehr freundlich und haben dich zurück zu deinem Haus gebracht.\n"
+ "Zuhause hast du alles der Polizei erzählt.\n"
+ "Als die Polizei ankam war das Haus nicht mehr dort.\n"
+ "Ein Berg aus SChutt und Asche ist übrig geblieben.\n"
+ "Die schwarze Gestalt wurde bis heute nicht gefunden.\n")
+ abspann()
+
+
+
+
+def main():
+ cover()
+ regeln()
+ einfuehrung()
+ grundriss()
+ Eintreten()
+
+
+main()
\ No newline at end of file
diff --git a/TextAdventure/Adventure_Template (2).py b/TextAdventure/Adventure_Template (2).py
new file mode 100755
index 0000000..9bc8491
--- /dev/null
+++ b/TextAdventure/Adventure_Template (2).py
@@ -0,0 +1,871 @@
+import time
+
+
+global inventory
+inventory = []
+
+global besucht
+besucht = []
+
+
+def cover():
+ print("""
+
+▄▄▄█████▓ ██░ ██ ▓█████ ██░ ██ ▒█████ █ ██ ██████ ▓█████
+▓ ██▒ ▓▒▓██░ ██▒▓█ ▀ ▓██░ ██▒▒██▒ ██▒ ██ ▓██▒▒██ ▒ ▓█ ▀
+▒ ▓██░ ▒░▒██▀▀██░▒███ ▒██▀▀██░▒██░ ██▒▓██ ▒██░░ ▓██▄ ▒███
+░ ▓██▓ ░ ░▓█ ░██ ▒▓█ ▄ ░▓█ ░██ ▒██ ██░▓▓█ ░██░ ▒ ██▒▒▓█ ▄
+ ▒██▒ ░ ░▓█▒░██▓░▒████▒ ░▓█▒░██▓░ ████▓▒░▒▒█████▓ ▒██████▒▒░▒████▒
+ ▒ ░░ ▒ ░░▒░▒░░ ▒░ ░ ▒ ░░▒░▒░ ▒░▒░▒░ ░▒▓▒ ▒ ▒ ▒ ▒▓▒ ▒ ░░░ ▒░ ░
+ ░ ▒ ░▒░ ░ ░ ░ ░ ▒ ░▒░ ░ ░ ▒ ▒░ ░░▒░ ░ ░ ░ ░▒ ░ ░ ░ ░ ░
+ ░ ░ ░░ ░ ░ ░ ░░ ░░ ░ ░ ▒ ░░░ ░ ░ ░ ░ ░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+
+
+
+---------------------------------------------------------------------
+
+ """)
+ time.sleep(1)
+
+
+
+def gameover():
+ print("""
+
+
+ ▄████ ▄▄▄ ███▄ ▄███▓▓█████ ▒█████ ██▒ █▓▓█████ ██▀███
+ ██▒ ▀█▒▒████▄ ▓██▒▀█▀ ██▒▓█ ▀ ▒██▒ ██▒▓██░ █▒▓█ ▀ ▓██ ▒ ██▒
+▒██░▄▄▄░▒██ ▀█▄ ▓██ ▓██░▒███ ▒██░ ██▒ ▓██ █▒░▒███ ▓██ ░▄█ ▒
+░▓█ ██▓░██▄▄▄▄██ ▒██ ▒██ ▒▓█ ▄ ▒██ ██░ ▒██ █░░▒▓█ ▄ ▒██▀▀█▄
+░▒▓███▀▒ ▓█ ▓██▒▒██▒ ░██▒░▒████▒ ░ ████▓▒░ ▒▀█░ ░▒████▒░██▓ ▒██▒
+ ░▒ ▒ ▒▒ ▓▒█░░ ▒░ ░ ░░░ ▒░ ░ ░ ▒░▒░▒░ ░ ▐░ ░░ ▒░ ░░ ▒▓ ░▒▓░
+ ░ ░ ▒ ▒▒ ░░ ░ ░ ░ ░ ░ ░ ▒ ▒░ ░ ░░ ░ ░ ░ ░▒ ░ ▒░
+░ ░ ░ ░ ▒ ░ ░ ░ ░ ░ ░ ▒ ░░ ░ ░░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░
+
+
+-------------------------------------------------------------------------
+""")
+
+
+def regeln():
+ print("Bevor wir starten, ein paar Anmerkungen.\n"
+ "Bitte alles was du schreibst IMMER in Kleibuchstaben verfassen.\n"
+ "Es wird immer MAXIMAL ein Wort benötigt.\n"
+ "Du hast einen Rucksack dabei, in dem du Dinge mitnehmen kannst.\n")
+
+ time.sleep(1)
+
+
+def einfuehrung():
+ print("Es ist Freitag Nacht...\n"
+
+
+ "Du hast dich verlaufen und bist auf der Suche nach einer Unterkunft\n"
+ "für die kommende Nacht.\n"
+ "Du bist ganz auf dich alleine gestellt.\n"
+ "Wenn du nicht aufpasst, wirst du sterben.\n"
+ "Sei vorsichtig und überlege dir jede Entscheidung gut.\n"
+ "Es gibt kein Zurück!!\n"
+
+ "Du bist ganz alleine an einer abgelegenen Strasse.\n"
+ "Es stürmt und ist eiskalt.\n"
+ "Plötzlich kommst du zu einem alten Haus.\n"
+ "Es sieht unheimlich aus.\n")
+ time.sleep(1)
+
+def grundriss():
+ print ("""
+ DU BIST HIER
+ |
+ __________ ____|______ _______ ____
+ | | | | | |
+ |Wohnzimmer|____| Flur |____|Schlafzimmer|
+ | | | | | |
+ |__ _____ _| |__ ______ _| |___ ___ ____|
+ | |
+ | |
+ | |
+ ____|____ ________ __ ______|_____
+ | | | | | |
+ | Küche |____| Flur |____| Badezimmer |
+ | | | | | |
+ |__ _____ _| |__ ________| |_ __________|
+ |
+ |
+ |
+ _____|_ ____
+ | |
+ | Keller |
+ | |
+ |_________ __|
+
+
+
+""")
+ time.sleep(1)
+
+
+
+
+
+def lageplan():
+ print("""
+
+ _______ ___________ _______ ____
+ | | | | | |
+ |Wohnzimmer|____| Flur |____|Schlafzimmer|
+ | | | | | |
+ |__ _____ _| |__ ______ _| |___ ___ ____|
+ | |
+ | |
+ | |
+ ____|____ ________ __ ______|_____
+ | | | | | |
+ | Küche |____| Flur |____|Badezimmer |
+ | | | | | |
+ |__ _____ _| |__ ________| |_ __________|
+ |
+ |
+ |
+ _____|______
+ | |
+ | Keller |
+ | |
+ |____________|
+
+
+ """)
+
+
+
+
+def abspann():
+ print("""
+
+
+▄▄▄█████▓ ██░ ██ ▓█████ ▓█████ ███▄ █ ▓█████▄
+▓ ██▒ ▓▒▓██░ ██▒▓█ ▀ ▓█ ▀ ██ ▀█ █ ▒██▀ ██▌
+▒ ▓██░ ▒░▒██▀▀██░▒███ ▒███ ▓██ ▀█ ██▒░██ █▌
+░ ▓██▓ ░ ░▓█ ░██ ▒▓█ ▄ ▒▓█ ▄ ▓██▒ ▐▌██▒░▓█▄ ▌
+ ▒██▒ ░ ░▓█▒░██▓░▒████▒ ░▒████▒▒██░ ▓██░░▒████▓
+ ▒ ░░ ▒ ░░▒░▒░░ ▒░ ░ ░░ ▒░ ░░ ▒░ ▒ ▒ ▒▒▓ ▒
+ ░ ▒ ░▒░ ░ ░ ░ ░ ░ ░ ░░ ░░ ░ ▒░ ░ ▒ ▒
+ ░ ░ ░░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░
+-----------------------------------------------------
+
+
+""")
+
+
+
+def Eintreten():
+ aktion = input('Willst Du eintreten oder weglaufen?').lower()
+
+ if aktion == 'eintreten':
+ flur1()
+
+ elif aktion == 'weglaufen':
+ print("\n"
+ "Du läufst davon voller Angst... \n"
+ "Doch schon nach kurzer Zeit wird dir bewusst...\n"
+ "Du musst zurück wenn du diese Nacht überleben willst.\n")
+ time.sleep(1)
+ Eintreten()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ Eintreten()
+
+
+def Mord():
+ print("\n"
+ "Du rennst so schnell du kannst zum Flur. \n"
+ "Du willst die Türe aufreissen und weglaufen.\n"
+ "Doch die Türe ist verschlossen!\n"
+ "Plötzlich spürst du das jemand hinter dir steht... \n"
+ "...du drehst langsam deinen Kopf\n"
+ "Die schwarze Gestalt steht hinter dir!\n"
+ "Sie ist voller Blut und lacht laut und bevor du reagieren kannst...\n"
+ "...sticht sie dir ein Messer kaltblütig in die Brust!\n")
+ time.sleep(5)
+ gameover()
+
+def schock():
+ print("Du öffnest neugierig den Duschvorhang.\n"
+ "Die Badewanne.. sie.. sie ist.. voller Blut!\n"
+ "Du schreist und hast Angst. Du willst nur noch weg hier!\n"
+ "Doch nach kurzer Zeit fällt dir neben der Wanne etwas auf...\n"
+ "...ist das ein Schlüssel?")
+
+ h = input('Schlüssel aufheben oder liegen lassen?').lower()
+
+ if h == "aufheben":
+ inventory.append("schlüssel")
+ badezimmer()
+
+
+ if h == "lassen":
+ badezimmer()
+
+ else:
+ print("Dieser Befehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen.\n")
+ time.sleep(2)
+ schock()
+
+def flur2():
+ print("Du stehst erneut auf einem Flur...\n"
+ "Er sieht aber anderst aus als der beim Hauseingang.\n"
+ "Deutlich düsterer... und eine Tür die in einen anderen Raum führt.\n"
+ "In den Keller vielleicht?\n")
+
+ i = input("Willst du die Türe öffnen?").lower()
+
+ if i == "nein":
+ flur3()
+
+
+ if i == "ja":
+
+ if "schlüssel" in inventory:
+ inventory.remove("schlüssel")
+ treppe()
+
+ else:
+ print("Die Türe scheint verschlossen zu sein.\n"
+ "Du brauchst einen Schlüssel um diesen Raum zu betreten.\n")
+
+ time.sleep(3)
+ lageplan()
+
+ j = input("Wohin willst du?").lower()
+
+
+
+ if j == "badezimmer":
+ if "ja" in besucht:
+ badezimmer1()
+
+ else:
+ badezimmer()
+
+ if j == "küche":
+ kueche()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ flur1()
+
+
+
+
+
+
+def flur1():
+ inventory.append("lampe")
+ print("\n"
+ "(Du findest eine Lampe und steckst sie in dein Inventar)\n"
+ "Du stehst auf einem Flur.\n"
+ "Das Haus sieht alt und verlassen aus.\n"
+ "Doch plötzlich hörst du etwas...\n"
+ "Schritte vielleicht?\n")
+
+ d = input("Willst du im Schlafzimmer oder im Wohnzimmer nachsehen?").lower()
+
+ if d == "schlafzimmer":
+ schlafzimmer1()
+
+ if d == "wohnzimmer":
+ wohnzimmer1()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen.\n")
+ time.sleep(2)
+ flur1()
+
+
+def flur():
+
+ print("Du bist nun auf dem Flur.\n")
+
+ f = input("Wohin willst du?").lower()
+ lageplan()
+
+
+ if f == "schlafzimmer":
+ schlafzimmer()
+
+ if f == "wohnzimmer":
+ wohnzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ flur()
+
+def flur3():
+
+ print("Du bist nun auf dem Flur.\n")
+
+
+ if "schlüssel" in inventory:
+
+ q = input("Willst du die Türe öffnen?")
+
+ if q == "ja":
+ if "schlüssel" in inventory:
+ treppe()
+
+ else:
+ print("Du brauchst einen Schlüssel um diese Türe zu öffnen.\n")
+
+ if q == "nein":
+
+
+ time.sleep(3)
+ lageplan()
+ f = input("Wohin willst du?").lower()
+
+
+ if f == "badezimmer":
+ if "ja" in besucht:
+ badezimmer()
+
+ else:
+ badezimmer1()
+
+ if f == "küche":
+ kueche()
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ flur3()
+
+ else:
+ lageplan()
+ f = input("Wohin willst du?").lower()
+
+
+ if f == "badezimmer":
+ if "ja" in besucht:
+ badezimmer()
+
+ else:
+ badezimmer1()
+
+ if f == "küche":
+ kueche()
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ flur3()
+
+
+
+def kueche():
+
+ print("Du bist nun in der Küche.\n"
+ "Von der schwarzen Gestalt ist nichts zu sehen.\n"
+ "Auf der Ablage liegt ein Messer.\n")
+
+ time.sleep(2)
+
+ p = input("Willst du das Messer aufheben? Es könnte sich später noch für Nützlich erweisen.\n")
+
+ if p == "ja":
+ inventory.append("messer")
+
+
+ if p == "nein":
+ print("ok")
+
+
+ kueche1()
+
+def kueche1():
+
+ print("Du bist nun in der Küche.\n")
+
+ time.sleep(2)
+ lageplan()
+ x = input("Wohin willst du?").lower()
+
+
+ if x == "flur":
+ flur2()
+
+ if x == "wohnzimmer":
+ wohnzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ kueche()
+
+def schlafzimmer():
+
+ print("Du bist nun im Schlafzimmer.\n")
+
+ e = input("Wohin willst du?").lower()
+ lageplan()
+
+ if e == "badezimmer":
+ if "ja" in besucht:
+ badezimmer()
+
+ else:
+ badezimmer1()
+
+ if e == "flur":
+ flur()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ schlafzimmer()
+
+def wohnzimmer():
+
+ print("Du bist nun im Wohnzimmer.\n")
+
+ f = input("Wohin willst du?").lower()
+ lageplan()
+
+ if f == "flur":
+ flur()
+
+ if f == "küche":
+ kueche()
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ wohnzimmer()
+
+
+def badezimmer2():
+
+ if "ja" in besucht:
+
+ badezimmer()
+
+
+ else:
+
+ print("Du bist nun im Badezimmer.\n")
+
+ e = input("Wohin willst du?").lower()
+ lageplan()
+
+ if e == "flur":
+ flur3()
+
+ if e == "schlafzimmer":
+ schlafzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ badezimmer()
+
+
+def badezimmer():
+
+ print("Du bist nun im Badezimmer.\n")
+
+ if "schlüssel" != inventory:
+
+ w = input("Willst du den Schlüssel aufheben?").lower()
+
+ if w == "ja":
+ inventory.append("schlüssel")
+
+ else:
+ print("ok")
+
+
+ e = input("Wohin willst du?").lower()
+ lageplan()
+
+ if e == "flur":
+ flur3()
+
+ if e == "schlafzimmer":
+ schlafzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ badezimmer()
+
+
+def badezimmer1():
+
+ besucht.append("ja")
+ print("Du öffnest die Türe zum Bad ganz leise.\n"
+ "Du hoffst, dass die schwarze Gestalt nichts gehört hat.\n"
+ "Etwas ängstlich betrittst du nun das Badezimmer.\n"
+ "Viel gibt es nicht zu sehen in diesem Badezimmer\n"
+ "Eine Toilette, ein Spiegel und eine Badewanne\n"
+ "Der Duschvorhang der Badewanne ist zu\n")
+
+ g = input("Willst du ihn öffnen?").lower()
+
+ if g == "ja":
+ schock()
+
+ if g == "nein":
+ badezimmer2()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ badezimmer1()
+
+
+
+def schlafzimmer1():
+
+ print("\n"
+ "Du öffnest die Schlafzimmertüre langsam.\n"
+ "Die Türe aber knirscht und lässt sich nur schwer öffnen.\n"
+ "Nun betrittst du das alte und verlassene SChlafzimmer.\n"
+ "Du siehst dich etwas um.\n"
+ "Am Boden hinter dem Bett siehst du etwas.\n"
+ "Flecken viellei... HILFE!!!!!\n"
+ "Jemand schrie um Hilfe? Und die Flecken - es ist Blut!!\n")
+
+ a = input("Willst du flüchten oder dem Hilferuf folgen?").lower()
+
+ if a == "flüchten":
+
+ print("\n"
+ "Du entschliesst dich zu flüchten.\n"
+ "Du hast Todesangst\n")
+ Mord()
+
+ if a == "folgen":
+ wohnzimmer1()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ schlafzimmer1()
+
+
+def wohnzimmer1():
+
+ print("\n"
+ "Du gehst aufmerksam ins Wohnzimmer.\n"
+ "Du blickst umher.\n"
+ "Da links! Eine schwarze Gestalt steht im nächsten Zimmer!\n"
+ "Geschockt bleibst du stehen und planst dein weiteres Vorgehen.\n")
+
+ b = input("Willst du die Situation beobachten oder flüchten?").lower()
+
+ if b == "flüchten":
+ Mord()
+
+ if b == "beobachten":
+ print("\n"
+ "Schockiert erkennst du, dass die schwarze Gestalt ein Messer hat.\n"
+ "Sie lacht auf eine psychopathische Art und Weise und läuft umher.\n"
+ "Sucht sie etwas? Oder jemanden?\n"
+ "Mich vielleicht?\n"
+ "Es sieht so aus als würde sie im nächsten Raum verschwinden.\n")
+
+ time.sleep(5)
+ lageplan()
+
+ c = input("Wohin willst du?").lower()
+
+ if c == "flur":
+ flur()
+
+
+ if c == "küche":
+ kueche()
+
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ wohnzimmer1()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ wohnzimmer1()
+
+
+def treppe():
+
+ print("Du öffnest die Türe möglichst leise.\n"
+ "Zu deiner Erleichterung öffnet sich die Türe ruhig.\n"
+ "Vor dir siehst du eine Treppe.\n"
+ "Sie führt nach unten... in den Keller wahrscheinlich.\n")
+
+ k = input("Willst du den Keller betreten?")
+
+ if k == "ja":
+ keller1()
+
+
+ if k == "nein":
+ schlüssel = 1
+ flur3()
+
+
+ else:
+ print("Dieser Befehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen.\n")
+ treppe()
+
+def keller1():
+
+ print("Schleichend gehst du die dunkle, alte Treppe hinunter\n"
+ "Zu deinem Pech knirscht das alte Holz unter deinen Füssen\n"
+ "Unten angekommen siehst du dich etwas um.\n"
+ "Ein Schrank, ein altes Bett und viele alte Schachteln stehen herum.\n"
+ "Ein komischer Geruch kommt dir in die Nase...\n"
+ "...woher der wohl kommen mag?\n"
+ "Aus dem Schranz läuft etwas heraus...\n"
+ "...wegen der Dunkelheit erkennst du nicht wases ist.\n")
+
+ l = input("Willst du im Schrank nachschauen?").lower()
+
+ if l == "ja":
+ schrank1()
+
+ if l == "nein":
+ schrank2()
+
+
+def schrank2():
+ print(
+ "Du hörst plötzlich ein Lachen.\n"
+ "Die schwarze Gestalt!!!\n"
+ "Und du hast keine Möglichkeit zu flüchten!\n"
+ "Das knirschen der Treppen wird immer lauter.\n"
+ "Du musst dich verstecken. Schnell!!!\n")
+
+
+
+
+ time.sleep(3)
+
+ o = input("Wo willst du dich verstecken?\n"
+ "Hinter den Schachteln oder unter dem Bett?").lower()
+
+
+ if o == "bett":
+ bett()
+
+
+ if o == "schachteln":
+ schachteln()
+
+
+ else:
+ print("Diese Möglichkeit steht nicht zur Auswahl.\n"
+ "Bitte überprüfe deine Antwort nochmals.\n")
+ schrank2()
+
+
+
+def schrank1():
+
+ print("Du öffnest den Schrank.\n"
+ "AHHHHHH!! Eine Leiche!! Und Blut! Überall Blut!!\n"
+ "Als wäre das nicht schon genug, hörst du plötzlich ein Lachen\n"
+ "Die schwarze Gestalt!!!\n"
+ "Und du hast keine Möglichkeit zu flüchten!\n"
+ "Das knirschen der Treppen wird immer lauter.\n"
+ "Du musst dich verstecken. Schnell!!!\n")
+
+
+ time.sleep(3)
+
+ m = input("Wo willst du dich verstecken?\n"
+ "Im Schrank, hinter den Schachteln oder unter dem Bett?\n").lower()
+
+ if m == "schrank":
+ schrank()
+
+
+ if m == "bett":
+ bett()
+
+
+ if m == "schachteln":
+ schachteln()
+
+
+ else:
+ print("Diese Möglichkeit steht nicht zur Auswahl.\n"
+ "Bitte überprüfe deine Antwort nochmals.\n")
+ schrank1()
+
+
+def schrank():
+ print("Du hast entschieden dich im Schrank zu verstecken.\n"
+ "In dem Schrank in dem auch die Leiche ist.\n"
+ "Ob das wohl die Richtige entscheidung war?\n")
+ ende1()
+
+
+
+
+def bett():
+ print("Du hast dich für das Bett entschieden\n"
+ "Unter dem Bett liegt ein Teppich\n"
+ "Ob da wohl etwas darunter ist, dass versteckt werden muss?\n")
+ ende2()
+
+
+
+
+def schachteln():
+ print("Du hast dich für die Schachteln entschieden\n"
+ "Du machst dich so klein wie möglich und hoffst nicht entdeckt zu werden\n"
+ "Durch einen Spalt bei den Schachteln siehst du auf das Bett\n"
+ "Darunter fällt dir ein Teppich auf.\n"
+ "Es sieht aus als wäre darunter etwas versteckt.\n")
+ ende3()
+
+
+def ende1():
+
+ print("Du drückst dich an den Schrank und bist so leise wie nur möglich.\n"
+ "Du hörst wie die schwarze Gestalt immer und immer näher kommt.\n"
+ "Sie lacht laut und sucht dich überall.\n"
+ "Sie kommt näher zum Schrank mit dem Messer voran.\n"
+ "Dann bleibt sie stehen.\n"
+ "Langsam öffnet sie die Schranktür.\n"
+ "Du blickst ihr direkt in die Augen.\n"
+ "Du schreist aber sie zeigt keine Gnade und ersticht dich kaltblütig.\n")
+ gameover()
+
+
+
+def ende2():
+
+ print("Die schwarze Gestalt ist im Keller.\n"
+ "Du hast Todesangst. Sie sucht dich überall.\n"
+ "Du erinnerst dich an das Messer welches du im Badezimmer gefunden hast.\n")
+
+ n = input("Willst du mit dem Messer den Teppich aufschneiden?")
+
+ if n == "ja":
+
+ if "messer" in inventory:
+
+ inventory.remove("messer")
+ flucht()
+
+ else:
+ mord2()
+
+
+ if n == "nein":
+ print("Du hast keine andere wahl. Schneide den Teppich auf!!!")
+ ende2()
+
+ else:
+ print("Antworte bitte mit ja oder nein.")
+ ende2()
+
+
+
+
+def ende3():
+
+ print("Du hörst wie die schwarze Gestalt den Keller betretet.\n"
+ "Voller Angst überlegst du wie du flüchten könntest.\n"
+ "Die schwarze Gestalt sucht dich überall.\n"
+ "Sie kommt langsam aber stetig immer näher zu den Schachteln.\n"
+ "Als die schwarze Gestalt einen kurzen Moment weg schaut,\n"
+ "läufst du so schnell du kannst zum Bett und versteckst dich dort\n")
+
+ ende2()
+
+
+def mord2():
+ print("Du hast kein Messer in deinem Rucksack.\n"
+ "Da du das Messer ohne Erfolg gesucht hast,\n"
+ "wurde die schwarze Gestalt auf dich aufmerksam.\n"
+ "Sie kommt immer näher in Richtung Bett und du hast\n"
+ "keine Möglichkeit mehr dich zu verstecken.\n"
+ "Die schwarze Gestalt zieht das Bett weg und sieht dir tief in die Augen.\n"
+ "Du schaust sie hilfeschreiend an aber das ist ihr egal.\n"
+ "Sie lacht laut los und sticht dir langsam mit dem Messer in die Brust.\n"
+ "Du verlierst das Bewusstsein und das letzte was du noch hörst,\n"
+ "ist das psychopathische Lachen.\n")
+ gameover()
+
+
+
+def flucht():
+ print("Unter dem Teppich ist tatsächlich etwas.\n"
+ "Eine geheime Öffnung im Boden!! Vielleicht ein Weg der hier weg führt?\n"
+ "Du Öffnest die Falltüre und springst nach unten.\n"
+ "Tatsächlich! Es sieht aus wie ein langer Gang\n"
+ "Das Problem ist nur... es ist stock dunkel.\n")
+
+ o = input("Nimm deine Lampe und zünde sie an! (lampe nehmen)\n")
+
+ if o == "lampe nehmen":
+ inventory.remove("lampe")
+ print("Du siehst nun genug für deine Flucht!\n")
+ wegvonhier()
+
+ else:
+ print("Dieser Befehl kenne ich leider nicht :/\n"
+ "Bitte erneut versuchen.\n")
+
+
+def wegvonhier():
+ print("Hinter dir hörst du schonwieder das Lachen der schwarzen Gestalt.\n"
+ "Du rennst so schnell du kannst!\n"
+ "Es ist kalt und nass in diesem Tunnel aber dir bleibt nichts anderes übrig.\n"
+ "Hier! Eine Leiter!\n"
+ "Du steigst die Leiter nach oben und öffnest die Falltüre.\n"
+ "Die schwarze Gestalt kommt immer näher!\n"
+ "Du kletterst hinaus und schliesst die Türe wieder.\n")
+ glückwunsch()
+
+
+
+def glückwunsch():
+ print("Gratuliere!!! Du hast die Nacht überlebt und einen Ausweg aus dem Haus gefunden!\n"
+ "Du bist nun in einem Wald.\n"
+ "Nach langem umherirren hast du ein Dorf gefunden.\n"
+ "Die Leute dort waren sehr freundlich und haben dich zurück zu deinem Haus gebracht.\n"
+ "Zuhause hast du alles der Polizei erzählt.\n"
+ "Als die Polizei ankam war das Haus nicht mehr dort.\n"
+ "Ein Berg aus SChutt und Asche ist übrig geblieben.\n"
+ "Die schwarze Gestalt wurde bis heute nicht gefunden.\n")
+ abspann()
+
+
+
+
+def main():
+ cover()
+ regeln()
+ einfuehrung()
+ grundriss()
+ Eintreten()
+
+
+main()
\ No newline at end of file
diff --git a/TextAdventure/Adventure_Template.py b/TextAdventure/Adventure_Template.py
new file mode 100755
index 0000000..9ae9067
--- /dev/null
+++ b/TextAdventure/Adventure_Template.py
@@ -0,0 +1,820 @@
+import time
+
+
+global inventory
+inventory = []
+
+global besucht
+besucht = []
+
+
+def cover():
+ print("""
+
+▄▄▄█████▓ ██░ ██ ▓█████ ██░ ██ ▒█████ █ ██ ██████ ▓█████
+▓ ██▒ ▓▒▓██░ ██▒▓█ ▀ ▓██░ ██▒▒██▒ ██▒ ██ ▓██▒▒██ ▒ ▓█ ▀
+▒ ▓██░ ▒░▒██▀▀██░▒███ ▒██▀▀██░▒██░ ██▒▓██ ▒██░░ ▓██▄ ▒███
+░ ▓██▓ ░ ░▓█ ░██ ▒▓█ ▄ ░▓█ ░██ ▒██ ██░▓▓█ ░██░ ▒ ██▒▒▓█ ▄
+ ▒██▒ ░ ░▓█▒░██▓░▒████▒ ░▓█▒░██▓░ ████▓▒░▒▒█████▓ ▒██████▒▒░▒████▒
+ ▒ ░░ ▒ ░░▒░▒░░ ▒░ ░ ▒ ░░▒░▒░ ▒░▒░▒░ ░▒▓▒ ▒ ▒ ▒ ▒▓▒ ▒ ░░░ ▒░ ░
+ ░ ▒ ░▒░ ░ ░ ░ ░ ▒ ░▒░ ░ ░ ▒ ▒░ ░░▒░ ░ ░ ░ ░▒ ░ ░ ░ ░ ░
+ ░ ░ ░░ ░ ░ ░ ░░ ░░ ░ ░ ▒ ░░░ ░ ░ ░ ░ ░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+
+
+
+---------------------------------------------------------------------
+
+ """)
+ time.sleep(1)
+
+
+
+def gameover():
+ print("""
+
+
+ ▄████ ▄▄▄ ███▄ ▄███▓▓█████ ▒█████ ██▒ █▓▓█████ ██▀███
+ ██▒ ▀█▒▒████▄ ▓██▒▀█▀ ██▒▓█ ▀ ▒██▒ ██▒▓██░ █▒▓█ ▀ ▓██ ▒ ██▒
+▒██░▄▄▄░▒██ ▀█▄ ▓██ ▓██░▒███ ▒██░ ██▒ ▓██ █▒░▒███ ▓██ ░▄█ ▒
+░▓█ ██▓░██▄▄▄▄██ ▒██ ▒██ ▒▓█ ▄ ▒██ ██░ ▒██ █░░▒▓█ ▄ ▒██▀▀█▄
+░▒▓███▀▒ ▓█ ▓██▒▒██▒ ░██▒░▒████▒ ░ ████▓▒░ ▒▀█░ ░▒████▒░██▓ ▒██▒
+ ░▒ ▒ ▒▒ ▓▒█░░ ▒░ ░ ░░░ ▒░ ░ ░ ▒░▒░▒░ ░ ▐░ ░░ ▒░ ░░ ▒▓ ░▒▓░
+ ░ ░ ▒ ▒▒ ░░ ░ ░ ░ ░ ░ ░ ▒ ▒░ ░ ░░ ░ ░ ░ ░▒ ░ ▒░
+░ ░ ░ ░ ▒ ░ ░ ░ ░ ░ ░ ▒ ░░ ░ ░░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░
+
+
+--------------------------------------------------------------------------
+""")
+
+
+def regeln():
+ print("Bevor wir starten, ein paar Anmerkungen.\n"
+ "Bitte alles was du schreibst IMMER in Kleibuchstaben verfassen.\n"
+ "Es wird immer MAXIMAL ein Wort benötigt.\n"
+ "Du hast einen Rucksack dabei, in dem du Dinge mitnehmen kannst.\n")
+
+ time.sleep(1)
+
+
+def einfuehrung():
+ print("Es ist Freitag Nacht...\n"
+
+
+ "Du hast dich verlaufen und bist auf der Suche nach einer Unterkunft\n"
+ "für die kommende Nacht.\n"
+ "Du bist ganz auf dich alleine gestellt.\n"
+ "Wenn du nicht aufpasst, wirst du sterben.\n"
+ "Sei vorsichtig und überlege dir jede Entscheidung gut.\n"
+ "Es gibt kein Zurück!!\n"
+
+ "Du bist ganz alleine an einer abgelegener Strasse.\n"
+ "Es stürmt und ist eiskalt.\n"
+ "Plötzlich kommst du zu einem alten Haus.\n"
+ "Es sieht unheimlich aus.\n")
+ time.sleep(1)
+
+def grundriss():
+ print ("""
+ DU BIST HIER
+ |
+ __________ ____|______ _______ ____
+ | | | | | |
+ |Wohnzimmer|____| Flur |____|Schlafzimmer|
+ | | | | | |
+ |__ _____ _| |__ ______ _| |___ ___ ____|
+ | |
+ | |
+ | |
+ ____|____ ________ __ ______|_____
+ | | | | | |
+ | Küche |____| Flur |____| Badezimmer |
+ | | | | | |
+ |__ _____ _| |__ ________| |_ __________|
+ |
+ |
+ |
+ _____|_ ____
+ | |
+ | Keller |
+ | |
+ |_________ __|
+
+
+
+""")
+ time.sleep(1)
+
+
+
+
+
+def lageplan():
+ print("""
+
+ _______ ___________ _______ ____
+ | | | | | |
+ |Wohnzimmer|____| Flur |____|Schlafzimmer|
+ | | | | | |
+ |__ _____ _| |__ ______ _| |___ ___ ____|
+ | |
+ | |
+ | |
+ ____|____ ________ __ ______|_____
+ | | | | | |
+ | Küche |____| Flur |____|Badezimmer |
+ | | | | | |
+ |__ _____ _| |__ ________| |_ __________|
+ |
+ |
+ |
+ _____|______
+ | |
+ | Keller |
+ | |
+ |____________|
+
+
+ """)
+
+
+
+
+def abspann():
+ print("""
+
+
+▄▄▄█████▓ ██░ ██ ▓█████ ▓█████ ███▄ █ ▓█████▄
+▓ ██▒ ▓▒▓██░ ██▒▓█ ▀ ▓█ ▀ ██ ▀█ █ ▒██▀ ██▌
+▒ ▓██░ ▒░▒██▀▀██░▒███ ▒███ ▓██ ▀█ ██▒░██ █▌
+░ ▓██▓ ░ ░▓█ ░██ ▒▓█ ▄ ▒▓█ ▄ ▓██▒ ▐▌██▒░▓█▄ ▌
+ ▒██▒ ░ ░▓█▒░██▓░▒████▒ ░▒████▒▒██░ ▓██░░▒████▓
+ ▒ ░░ ▒ ░░▒░▒░░ ▒░ ░ ░░ ▒░ ░░ ▒░ ▒ ▒ ▒▒▓ ▒
+ ░ ▒ ░▒░ ░ ░ ░ ░ ░ ░ ░░ ░░ ░ ▒░ ░ ▒ ▒
+ ░ ░ ░░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░
+
+
+
+""")
+
+
+
+def Eintreten():
+ aktion = input('Willst Du eintreten oder weglaufen?').lower()
+
+ if aktion == 'eintreten':
+ flur1()
+
+ elif aktion == 'weglaufen':
+ print("\n"
+ "Du läufst davon voller Angst... \n"
+ "Doch schon nach kurzer Zeit wird dir bewusst...\n"
+ "Du musst zurück wenn du diese Nacht überleben willst.\n")
+ time.sleep(1)
+ Eintreten()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ Eintreten()
+
+
+def Mord():
+ print("\n"
+ "Du rennst so schnell du kannst zum Flur. \n"
+ "Du willst die Türe aufreissen und weglaufen.\n"
+ "Doch die Türe ist verschlossen!\n"
+ "Plötzlich spürst du das jemand hinter dir steht... \n"
+ "...du drehst langsam deinen Kopf\n"
+ "Die schwarze Gestalt steht hinter dir!\n"
+ "Sie ist voller Blut und lacht laut und bevor du reagieren kannst...\n"
+ "...sticht sie dir ein Messer kaltblütig in die Brust!\n")
+ time.sleep(5)
+ gameover()
+
+def schock():
+ print("Du öffnest neugierig den Duschvorhang.\n"
+ "Die Badewanne.. sie.. sie ist.. voller Blut!\n"
+ "Du schreist und hast Angst. Du willst nur noch weg hier!\n"
+ "Doch nach kurzer Zeit fällt dir neben der Wanne etwas auf...\n"
+ "...ist das ein Schlüssel?")
+
+ h = input('Schlüssel aufheben oder liegen lassen?').lower()
+
+ if h == "aufheben":
+ inventory.append("schlüssel")
+ badezimmer()
+
+
+ if h == "lassen":
+ badezimmer()
+
+ else:
+ print("Dieser Befehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen.\n")
+ time.sleep(2)
+ schock()
+
+def flur2():
+ print("Du stehst erneut auf einem Flur...\n"
+ "Er sieht aber anderst aus als der beim Hauseingang.\n"
+ "Deutlich düsterer... und eine Tür die in einen anderen Raum führt.\n"
+ "In den Keller vielleicht?\n")
+
+ i = input("Willst du die Türe öffnen?").lower()
+
+ if i == "nein":
+ flur3()
+
+
+ if i == "ja":
+
+ if "schlüssel" in inventory:
+ inventory.remove("schlüssel")
+ treppe()
+
+ else:
+ print("Die Türe scheint verschlossen zu sein.\n"
+ "Du brauchst einen Schlüssel um diesen Raum zu betreten.\n")
+
+ time.sleep(3)
+ lageplan()
+
+ j = input("Wohin willst du?").lower()
+
+
+
+ if j == "badezimmer":
+ if "ja" in besucht:
+ badezimmer1()
+
+ else:
+ badezimmer()
+
+ if j == "küche":
+ kueche()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ flur1()
+
+
+
+
+
+
+def flur1():
+ inventory.append("lampe")
+ print("\n"
+ "(Du findest eine Lampe und steckst sie in dein Inventar)\n"
+ "Du stehst auf einem Flur.\n"
+ "Das Haus sieht alt und verlassen aus.\n"
+ "Doch plötzlich hörst du etwas...\n"
+ "Schritte vielleicht?\n")
+
+ d = input("Willst du im Schlafzimmer oder im Wohnzimmer nachsehen?").lower()
+
+ if d == "schlafzimmer":
+ schlafzimmer1()
+
+ if d == "wohnzimmer":
+ wohnzimmer1()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ flur1()
+
+
+def flur():
+ print("Du bist nun auf dem Flur.\n")
+
+ f = input("Wohin willst du?").lower()
+ lageplan()
+
+
+ if f == "schlafzimmer":
+ schlafzimmer()
+
+ if f == "wohnzimmer":
+ wohnzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ flur()
+
+def flur3():
+ print("Du bist nun auf dem Flur.\n")
+
+
+ if "schlüssel" in inventory:
+
+ q = input("Willst du die Türe öffnen?")
+
+ if q == "ja":
+ if "schlüssel" in inventory:
+ treppe()
+
+ else:
+ print("Du brauchst einen Schlüssel um diese Türe zu öffnen.\n")
+
+ if q == "nein":
+
+
+ time.sleep(3)
+ lageplan()
+ f = input("Wohin willst du?").lower()
+
+
+ if f == "badezimmer":
+ if "ja" in besucht:
+ badezimmer()
+
+ else:
+ badezimmer1()
+
+ if f == "küche":
+ kueche()
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ flur3()
+
+ else:
+ lageplan()
+ f = input("Wohin willst du?").lower()
+
+
+ if f == "badezimmer":
+ if "ja" in besucht:
+ badezimmer()
+
+ else:
+ badezimmer1()
+
+ if f == "küche":
+ kueche()
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ flur3()
+
+
+
+
+
+
+
+
+
+def kueche():
+ print("Du bist nun in der Küche.\n"
+ "Von der schwarzen Gestalt ist nichts zu sehen.\n"
+ "Auf der Ablage liegt ein Messer.\n")
+
+ time.sleep(2)
+
+ p = input("Willst du das Messer aufheben? Es könnte sich später noch für Nützlich erweisen.\n")
+
+ if p == "ja":
+ inventory.append("messer")
+
+
+ if p == "nein":
+ print("ok")
+
+
+ kueche1()
+
+def kueche1():
+ print("Du bist nun in der Küche.\n")
+
+ time.sleep(2)
+ lageplan()
+ x = input("Wohin willst du?").lower()
+
+
+ if x == "flur":
+ flur2()
+
+ if x == "wohnzimmer":
+ wohnzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ kueche()
+
+def schlafzimmer():
+ print("Du bist nun im Schlafzimmer.\n")
+
+ e = input("Wohin willst du?").lower()
+ lageplan()
+
+ if e == "badezimmer":
+ if "ja" in besucht:
+ badezimmer()
+
+ else:
+ badezimmer1()
+
+ if e == "flur":
+ flur()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ schlafzimmer()
+
+def wohnzimmer():
+ print("Du bist nun im Wohnzimmer.\n")
+
+ f = input("Wohin willst du?").lower()
+ lageplan()
+
+ if f == "flur":
+ flur()
+
+ if f == "küche":
+ kueche()
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ wohnzimmer()
+
+def badezimmer():
+ print("Du bist nun im Badezimmer.\n")
+
+ if "schlüssel" != inventory:
+
+ w = input("Willst du den Schlüssel aufheben?").lower()
+
+ if w == "ja":
+ inventory.append("schlüssel")
+
+ else:
+ print("ok")
+
+
+ e = input("Wohin willst du?").lower()
+ lageplan()
+
+ if e == "flur":
+ flur3()
+
+ if e == "schlafzimmer":
+ schlafzimmer()
+
+ else:
+
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ badezimmer()
+
+
+def badezimmer1():
+ besucht.append("ja")
+ print("Du öffnest die Türe zum Bad ganz leise.\n"
+ "Du hoffst, dass die schwarze Gestalt nichts gehört hat.\n"
+ "Etwas ängstlich betrittst du nun das Badezimmer.\n"
+ "Viel gibt es nicht zu sehen in diesem Badezimmer\n"
+ "Eine Toilette, ein Spiegel und eine Badewanne\n"
+ "Der Duschvorhang der Badewanne ist zu\n")
+
+ g = input("Willst du ihn öffnen?").lower()
+
+ if g == "ja":
+ schock()
+
+ if g == "nein":
+ badezimmer()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ badezimmer1()
+
+
+
+def schlafzimmer1():
+ print("\n"
+ "Du öffnest die Schlafzimmertüre langsam.\n"
+ "Die Türe aber knirscht und lässt sich nur schwer öffnen.\n"
+ "Nun betrittst du das alte und verlassene SChlafzimmer.\n"
+ "Du siehst dich etwas um.\n"
+ "Am Boden hinter dem Bett siehst du etwas.\n"
+ "Flecken viellei... HILFE!!!!!\n"
+ "Jemand schrie um Hilfe? Und die Flecken - es ist Blut!!\n")
+
+ a = input("Willst du flüchten oder dem Hilferuf folgen?").lower()
+
+ if a == "flüchten":
+
+ print("\n"
+ "Du entschliesst dich zu flüchten.\n"
+ "Du hast Todesangst\n")
+ Mord()
+
+ if a == "folgen":
+ wohnzimmer1()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ schlafzimmer1()
+
+
+def wohnzimmer1():
+
+ print("\n"
+ "Du gehst aufmerksam ins Wohnzimmer.\n"
+ "Du blickst umher.\n"
+ "Da links! Eine schwarze Gestalt steht im nächsten Zimmer!\n"
+ "Geschockt bleibst du stehen und planst dein weiteres Vorgehen.\n")
+
+ b = input("Willst du die Situation beobachten oder flüchten?").lower()
+
+ if b == "flüchten":
+ Mord()
+
+ if b == "beobachten":
+ print("\n"
+ "Schockiert erkennst du, dass die schwarze Gestalt ein Messer hat.\n"
+ "Sie lacht auf eine psychopathische Art und Weise und läuft umher.\n"
+ "Sucht sie etwas? Oder jemanden?\n"
+ "Mich vielleicht?\n"
+ "Es sieht so aus als würde sie im nächsten Raum verschwinden.\n")
+
+ time.sleep(5)
+ lageplan()
+
+ c = input("Wohin willst du?").lower()
+
+ if c == "flur":
+ flur()
+
+
+ if c == "küche":
+ kueche()
+
+
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ wohnzimmer1()
+
+ else:
+ print("Dieser Befgehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+ time.sleep(2)
+ wohnzimmer1()
+
+
+def treppe():
+ print("Du öffnest die Türe möglichst leise.\n"
+ "Zu deiner Erleichterung öffnet sich die Türe ruhig.\n"
+ "Vor dir siehst du eine Treppe.\n"
+ "Sie führt nach unten... in den Keller wahrscheinlich.\n")
+
+ k = input("Willst du den Keller betreten?")
+
+ if k == "ja":
+ keller1()
+
+
+ if k == "nein":
+ schlüssel = 1
+ flur3()
+
+
+ else:
+ print("Dieser Befehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen.\n")
+ treppe()
+
+def keller1():
+ print("Schleichend gehst du die dunkle, alte Treppe hinunter\n"
+ "Zu deinem Pech knirscht das alte Holz unter deinen Füssen\n"
+ "Unten angekommen siehst du dich etwas um.\n"
+ "Ein Schrank, ein altes Bett und viele alte Schachteln stehen herum.\n"
+ "Ein komischer Geruch kommt dir in die Nase...\n"
+ "...woher der wohl kommen mag?\n"
+ "Aus dem Schranz läuft etwas heraus...\n"
+ "...wegen der Dunkelheit erkennst du nicht wases ist.\n")
+
+ l = input("Willst du im Schrank nachschauen?").lower()
+
+ if l == "ja":
+ schrank1()
+
+ if l == "nein":
+ schrank2()
+
+
+def schrank2():
+ print(
+ "Du hörst plötzlich ein Lachen.\n"
+ "Die schwarze Gestalt!!!\n"
+ "Und du hast keine Möglichkeit zu flüchten!\n"
+ "Das knirschen der Treppen wird immer lauter.\n"
+ "Du musst dich verstecken. Schnell!!!\n")
+
+
+
+
+ time.sleep(3)
+
+ o = input("Wo willst du dich verstecken?\n"
+ "Hinter den Schachteln oder unter dem Bett?").lower()
+
+
+ if o == "bett":
+ bett()
+
+
+ if o == "schachteln":
+ schachteln()
+
+
+ else:
+ print("Diese Möglichkeit steht nicht zur Auswahl.\n"
+ "Bitte überprüfe deine Antwort nochmals.\n")
+ schrank2()
+
+
+
+def schrank1():
+
+ print("Du öffnest den Schrank.\n"
+ "AHHHHHH!! Eine Leiche!! Und Blut! Überall Blut!!\n"
+ "Als wäre das nicht schon genug, hörst du plötzlich ein Lachen\n"
+ "Die schwarze Gestalt!!!\n"
+ "Und du hast keine Möglichkeit zu flüchten!\n"
+ "Das knirschen der Treppen wird immer lauter.\n"
+ "Du musst dich verstecken. Schnell!!!\n")
+
+
+
+
+ time.sleep(3)
+
+ m = input("Wo willst du dich verstecken?\n"
+ "Im Schrank, hinter den Schachteln oder unter dem Bett?\n").lower()
+
+ if m == "schrank":
+ schrank()
+
+
+ if m == "bett":
+ bett()
+
+
+ if m == "schachteln":
+ schachteln()
+
+
+ else:
+ print("Diese Möglichkeit steht nicht zur Auswahl.\n"
+ "Bitte überprüfe deine Antwort nochmals.\n")
+ schrank1()
+
+
+def schrank():
+ print("Du hast entschieden dich im Schrank zu verstecken.\n"
+ "In dem Schrank in dem auch die Leiche ist.\n"
+ "Ob das wohl die Richtige entscheidung war?\n")
+ ende1()
+
+
+
+
+def bett():
+ print("Du hast dich für das Bett entschieden\n"
+ "Unter dem Bett liegt ein Teppich\n"
+ "Ob da wohl etwas darunter ist, dass versteckt werden muss?\n")
+ ende2()
+
+
+
+
+def schachteln():
+ print("Du hast dich für die Schachteln entschieden\n"
+ "Du machst dich so klein wie möglich und hoffst nicht entdeckt zu werden\n"
+ "Durch einen Spalt bei den Schachteln siehst du auf das Bett\n"
+ "Darunter fällt dir ein Teppich auf.\n"
+ "Es sieht aus als wäre darunter etwas versteckt.\n")
+ ende3()
+
+
+def ende1():
+
+ print("Du drückst dich an den Schrank und bist so leise wie nur möglich.\n"
+ "Du hörst wie die schwarze Gestalt immer und immer näher kommt.\n"
+ "Sie lacht laut und sucht dich überall.\n"
+ "Sie kommt näher zum Schrank mit dem Messer voran.\n"
+ "Dann bleibt sie stehen.\n"
+ "Langsam öffnet sie die Schranktür.\n"
+ "Du blickst ihr direkt in die Augen.\n"
+ "Du schreist aber sie zeigt keine Gnade und ersticht dich kaltblütig.\n")
+ gameover()
+
+
+
+
+def ende2():
+
+ print("Die schwarze Gestalt ist im Keller.\n"
+ "Du hast Todesangst. Sie sucht dich überall.\n"
+ "Du erinnerst dich an das Messer welches du im Badezimmer gefunden hast.\n")
+
+ n = input("Willst du mit dem Messer den Teppich aufschneiden?")
+
+ if n == "ja":
+ inventory.remove("messer")
+ flucht()
+
+ if n == "nein":
+ print("Du hast keine andere wahl. Schneide den Teppich auf!!!")
+ ende2()
+
+ else:
+ print("Antworte bitte mit ja oder nein.")
+ ende2()
+
+
+
+
+def ende3():
+
+ print("Du hörst wie die schwarze Gestalt den Keller betretet.\n"
+ "Voller Angst überlegst du wie du flüchten könntest.\n"
+ "Die schwarze Gestalt sucht dich überall.\n"
+ "Sie kommt langsam aber stetig immer näher zu den Schachteln.\n"
+ "Als die schwarze Gestalt einen kurzen Moment weg schaut,\n"
+ "läufst du so schnell du kannst zum Bett und versteckst dich dort\n")
+
+ ende2()
+
+
+
+def flucht():
+ print("Unter dem Teppich ist tatsächlich etwas.\n"
+ "Eine geheime Öffnung im Boden!! Vielleicht ein Weg der hier weg führt?\n"
+ "Du Öffnest die Falltüre und springst nach unten.\n"
+ "Tatsächlich! Es sieht aus wie ein langer Gang\n"
+ "Das Problem ist nur... es ist stock dunkel.\n")
+
+ o = input("Nimm deine Lampe und zünde sie an! (lampe nehmen)\n")
+
+ if o == "lampe nehmen":
+ inventory.remove("lampe")
+ print("Du siehst nun genug für deine Flucht!\n")
+ wegvonhier()
+
+ else:
+ print("Dieser Befehl kenne ich leider nicht :/\n"
+ "Bitte erneut versuchen.\n")
+
+
+def wegvonhier():
+ print("Hinter dir hörst du schonwieder das Lachen der schwarzen Gestalt.\n"
+ "Du rennst so schnell du kannst!\n"
+ "Es ist kalt und nass in diesem Tunnel aber dir bleibt nichts anderes übrig.\n"
+ "Hier! Eine Leiter!\n"
+ "Du steigst die Leiter nach oben und öffnest die Falltüre.\n"
+ "Die schwarze Gestalt kommt immer näher!\n"
+ "Du kletterst hinaus und schliesst die Türe wieder.\n")
+ glückwunsch()
+
+def glückwunsch():
+ print("Gratuliere!!! Du hast die Nacht überlebt und einen Ausweg aus dem Haus gefunden!\n"
+ "Du bist nun in einem Wald.\n"
+ "Nach langem umherirren hast du ein Dorf gefunden.\n"
+ "Die Leute dort waren sehr freundlich und haben dich zurück zu deinem Haus gebracht.\n"
+ "Zuhause hast du alles der Polizei erzählt.\n"
+ "Als die Polizei ankam war das Haus nicht mehr dort.\n"
+ "Ein Berg aus SChutt und Asche ist übrig geblieben.\n"
+ "Die schwarze Gestalt wurde bis heute nicht gefunden.\n")
+ abspann()
+
+
+
+
+
+def main():
+ cover()
+ regeln()
+ einfuehrung()
+ grundriss()
+ Eintreten()
+
+
+main()
\ No newline at end of file
diff --git a/TextAdventure/B737MAX Crash.py b/TextAdventure/B737MAX Crash.py
new file mode 100755
index 0000000..960d6e4
--- /dev/null
+++ b/TextAdventure/B737MAX Crash.py
@@ -0,0 +1,582 @@
+import time
+import random
+global stepscount
+stepscount = 0
+inventory = []
+done = []
+visited = []
+global goahead
+goahead = 0
+
+
+
+
+def cover():
+ print("""
+
+
+
+
+
+
+
+
+
+
+
+
+ ______ ______ ______ ______ _______ _______ _____
+( ___ \ / ___ \ / ___ \ / ___ \ ( )( ___ )|\ /| / ___ \
+| ( ) )\/ ) )\/ \ \\/ ) )| () () || ( ) |( \ / ) ( (___) )
+| (__/ / / / ___) / / / | || || || (___) | \ (_) / \ /
+| __ ( / / (___ ( / / | |(_)| || ___ | ) _ ( / ___ \
+| ( \ \ / / ) \ / / | | | || ( ) | / ( ) \ ( ( ) )
+| )___) ) / / /\___/ / / / | ) ( || ) ( |( / \ ) ( (___) )
+|/ \___/ \_/ \______/ \_/ |/ \||/ \||/ \| \_____/
+
+ _______ _______ _______ _______
+( ____ \( ____ )( ___ )( ____ \|\ /|
+| ( \/| ( )|| ( ) || ( \/| ) ( |
+| | | (____)|| (___) || (_____ | (___) |
+| | | __)| ___ |(_____ )| ___ |
+| | | (\ ( | ( ) | ) || ( ) |
+| (____/\| ) \ \__| ) ( |/\____) || ) ( |
+(_______/|/ \__/|/ \|\_______)|/ \|
+
+
+
+
+
+
+""")
+ time.sleep(2)
+ print("""
+DIES BASIERT AUF EINER WAHREN TATSACHE. DIE SPIELELEMENTE SIND VEREINFACHT UND TEILS
+UNREALISTISCH DARGESTELLT. WICHTIGE DETAILS WERDEN ZUR EINFACHEREN VERSTÄNDLICHKEIT
+WEGGELASSEN. DER ERMITTLUNGSPROZESS IST IN WIRKLICHKEIT EINE UNGEHEURLICH SCHWIERIGE
+AUFGABE UND WIRD HIER AUF EIN MÖGLICHST ÜBERSCHAUBARES MASS GEKÜRZT.
+
+""")
+ time.sleep(5)
+ go = 0
+ while go == 0:
+ a = userinput("Tippe folgendes ein, wenn du bereit bist: ok | ")
+ if a == "ok":
+ go = 1
+ else:
+ print("wrong, retry")
+ global start
+ start = time.time()
+
+
+
+def gameoverpossible():
+ global start
+ if "grounding" not in done:
+ current = time.time() - start
+ if current < 120:
+ gameover1()
+ elif current < 180 and current > 119:
+ gameover2()
+ elif current < 240 and current > 179:
+ gameover3()
+ elif current < 300 and current > 239:
+ gameover()
+ else:
+ current = time.time()
+
+def gameover1():
+ if random.randint(0,10) == 1:
+ gameover()
+ else:
+ current = time.time()
+
+def gameover2():
+ if random.randint(0,6) == 1:
+ gameover()
+ else:
+ current = time.time()
+
+def gameover3():
+ if random.randint(0,3) == 1:
+ gameover()
+ else:
+ current = time.time()
+
+def gameover():
+ global next
+ next = 0
+ global exit
+ exit = 0
+ print("""
+ NEW YORK TIMES
+
+ DIE KATASTROPHE
+ ---------------------------------
+Heute morgen gegen 7 Uhr ist eine Boeing 737 MAX 8 der United Airlines abgestürzt.
+Alle 178 Menschen an Bord der Maschine sind bei dem fast senkrechten Absturz der
+Maschine gestorben. Der Unfall ähnelt den beiden bisherigen Abstürzen von 737 MAX
+in Ethiopien und Indonesien in vielerlei Hinsicht. Auch hier war die Maschine
+senkrecht abgestürzt, auch hier wollten die Piloten umkehren und meldeten Probleme
+mit der Flugsteuerung. Die Ermittler dieses Falles werden sich morgen früh für ihre
+langsame Arbeit für den Tod der 178 Menschen verantworten, da sie kein Weltweites
+Flugverbot für die 737 MAX ausgesprochen hatte.
+ ---------------------------------
+
+Oh weh.
+Das wird einige Konsequenzen für dich nach sich ziehen.
+""")
+ time.sleep(4)
+ print("""
+
+
+Es ist der nächste Morgen. Du machst dich auf zum Gericht.
+Die Richter entziehen den Fall deiner Verantwortung und verurteilen dich zu
+lebenslänglicher Haft, aufgrund von fahrlässiger Tötung. Das ist das Ende deiner
+Karriere.
+""")
+
+ print("Punktezahl: 10000000000000000000000000000000000000000000000000000")
+
+
+
+def einfuehrung():
+ print("""Es ist Samstagmorgen... Urplötzlich stürzt eine fast brandneue Boeing 737MAX
+von Ethiopian Airlines ab. Die Welt ist schockiert, da dies bereits der zweite Absturz dieses
+Typs ist. Beides Mal waren fast brandneue Flugzeuge involviert. Beide Abstürze ähnelten sich
+massiv. Deine Aufgabe ist es nun, die Absturze zu klären.""")
+ print("""
+Als neu ernannter Ermittler musst du dir bereits jetzt eine wichtige Frage stellen:
+Solltest du ein weltweites Flugverbot für diesen Flugzeugtypen verhängen?
+Sowohl Boeing als auch die Fluggesellschaften werden sich dagegen sträuben.
+""")
+ i = userinput("Willst du das Flugverbot verhängen? (y/n)")
+ if i == "y":
+ print("""
+ NEW YORK TIMES
+
+ NTSB ERMITTLER VERHÄNGT FLUGVERBOT FÜR UNGLÜCKSFLIEGER
+ --------------------------------------------------------------
+Heute Morgen hat ein Sprecher des NTSB (National Transport and Safety Board verkündet,
+dass der leitende Ermittler ein Flugverbot für alle Flugzeuge der Boeing 737MAX-Klasse
+zu verhängen. Dies ist auf massive Proteste seitens der Fluggesellschaften und von Boeing
+gestossen. Jedoch: Viele Aviatikexperten befürworten den Entscheid des Ermittlers. Die
+Sicherheit der Passagiere muss um jeden Preis gewährleistet werden. Die einzige Möglichkeit
+dies zu gewährleisten ist, ein Flugverbot auszusprechen.
+""")
+ done.append("grounding")
+ elif i == "n":
+ print("""
+Die Wirtschaft ist wichtig, ein Pilotenfehler kann ja nicht ausgeschlossen werden.
+Ermitteln wir!
+
+""")
+ else:
+ print("wrong, retry")
+ einfuehrung()
+ time.sleep(4)
+
+def grundriss():
+ if "grounding" in done:
+ print("""
+
+_________________________________________________________________________________________________________
+
+Willkommen im Ermittlerbüro.
+Dies ist dein Arbeitsplatz an der Unfallstelle. Die Welt will Antworten und Boeing
+braucht sie, um das Flugzeug zu verbessern. Der Zeitdruck ist aber geringer, da keine
+weiteren Abstürze geschehen können.
+Hier kannst du alle Gegenstände, welche du auf der Unfallstelle finden kannst
+untersuchen, um die mögliche Unfallursache herauszufinden.
+""")
+ else:
+ print("""
+
+_________________________________________________________________________________________________________
+
+Willkommen im Ermittlerbüro.
+Dies ist dein Arbeitsplatz an der Unfallstelle. Du solltest dich so schnell wie
+möglich um diesen Fall kümmern, denn sonst könnte es zu weiteren Abstürzen kommen.
+Hier kannst du alle Gegenstände, welche du auf der Unfallstelle finden kannst
+untersuchen, um die mögliche Unfallursache herauszufinden.
+""")
+
+
+def abspann():
+ print("""
+
+DU HAST ES GESCHAFFT!
+ GLÜCKWUNSCH!
+
+ """)
+ global start
+ global stepscount
+ times = time.time() - start
+ points = times*2 + stepscount**2 - 110
+ if points < 0:
+ print("Deine Zeit: ",times)
+ print("\n\nDeine Punkte (Je geringer desto besser): 0")
+ print("\nDeine Anzahl Schritte (Je geringer desto besser):", stepscount)
+ else:
+ print("Deine Zeit: ",times)
+ print("\n\nDeine Punkte (Je geringer desto besser): ",points)
+ print("\nDeine Anzahl Schritte (Je geringer desto besser):", stepscount)
+ bewertung(points)
+
+def bewertung(punkte):
+ print("""
+ DEINE BEWERTUNG:""")
+ if punkte <= 0:
+ print(""" GOD """)
+ if punkte < 20:
+ print(""" A+ """)
+ elif punkte < 40:
+ print(""" A """)
+ elif punkte < 100:
+ print(""" B """)
+ elif punkte < 200:
+ print(""" C """)
+ elif punkte < 301:
+ print(""" D """)
+ elif punkte > 300:
+ print(""" D- """)
+
+
+def userinput(question):
+ return input(question).lower()
+
+def makedone(item):
+ inventory.remove(item)
+ done.append(item)
+
+def eb():
+ global goahead
+ global stepscount
+ stepscount += 1
+ print("""Du befindest dich jetzt im Ermittlerbüro.
+""")
+ while len(inventory) > 0:
+ stepscount += 1
+ if "blackbox" in inventory:
+ makedone("blackbox")
+ print("""Da du ja jetzt die Blackbox des Flugzeugs gefunden hast,
+kannst du sie hier im Ermittlerbüro aufmachen und die Flugdaten auslesen.
+Dies dauert jedoch eine gewisse Zeit. Du öffnest ihn und hoffst, dass einer
+deiner Spezialisten die Daten retten kann.""")
+ time.sleep(7)
+ print("""Dein Spezialist hat es geschafft! Die Daten konten wiederhergestellt werden!
+Du siehst eine Auffälligkeit in den Daten der Flughöhe und der vertikalen Geschwindigkeit.
+Dies deutet auf massive technische Probleme hin. Auch die Daten des Anstellwinkelsensors 1,
+sind auffällig: Er hatte die ganze Zeit denselben Anstellwinkel angezeigt.
+""")
+ if "anstellwinkelsensor" in inventory:
+ print("""Glücklicherweise hast du ihn bereits auf dem Trümmerfeld entdeckt.
+Du untersuchst ihn nun.""")
+ goahead = 1
+ elif "anstellwinkelsensor" in done:
+ print("""Du hast ihn ja bereits untersucht. """)
+ goahead = 1
+ else:
+ print("""Du solltest dich vielleicht nach dem Sensor umsehen.""")
+ elif "anstellwinkelsensor" in inventory:
+ makedone("anstellwinkelsensor")
+ print("""Da du ja zuvor den Anstellwinkelsensor des Flugzeugs gefunden hast,
+kannst du ihn jetzt auf Schäden überprüfen. Du untersuchst die Ströme, welche der
+Sensor bei Bewegung ausgibst und machst eine Entdeckung:
+ER FUNKTIONIERT NICHT!
+Logischerweise könnte er auch durch den Aufprall beschädigt sein, """)
+ if "blackbox" in done:
+ print("""aber die Blackbox bestätigt ja den Ausfall des Sensors.
+Du bist der Ursache auf der Spur. Glückwunsch!""")
+ goahead = 1
+ inventory.clear()
+ else:
+ print("""du solltest deshalb die Blackbox finden, um den Ausfall zu
+bestätigen.
+""")
+ print("\n")
+ elif "turbine" in inventory:
+ print("""Du hast eine der beiden Turbinen in das Büro transportieren lassen.
+Als mögliche Absturzursache hast du Triebwerksversagen im Verdacht. Beim Betrachten
+der Triebwerke erkennst du aber an der Verformung der Schaufeln und dem Dreck
+in der Turbine selbst, also im Kompressor, dass sie voll funktionstüchtig war.
+Somit kann ein Absturz durch Triebwerksversagen ausgeschlossen werden.
+Denn ein modernes Flugzeug kann auch mit nur einem Triebwerk problemlos fliegen.""")
+ makedone("turbine")
+ elif "zeugen" in inventory:
+ makedone("zeugen")
+ print("""Du hast ja auch bereits die Zeugen befragt. Du schaust dir deine
+Notizen lange an, kannst aber nichts erkennen, was dir für den Fall helfen könnte.
+Du verwirfst die Aussagen als nicht aussagekräftig.""")
+ time.sleep(5)
+ if goahead == 1:
+ global exit
+ exit = 1
+ stepscount += 1
+ print("""Du wendest dich nun den Pilotenakten zu. Der Kapitän hatte beachtliche
+8000 Flugstunden und soweit du erkennen magst, auch keine bekannten Probleme. Auch die
+(kurze) Karriere des Copiloten war makellos, er hatte jedoch nur 200 Flugstunden.
+Die Piloten hatten beim Kontakt mit dem Tower Probleme gemeldet und zur Umkehr
+gebeten. Dies bestätigte auch der Stimmenrekorder. Deine Aufmerksamkeit fällt auf
+das als Manouvering Caracteristics Augumentation System, oder kurz MCAS, welches eigentlich
+einen Strömungsabriss verhindern sollte, aber, aufgrund der Architektur der 737-Familie,
+nur mit einem der redundanten Anstellwinkelsensoren verbunden war.""")
+ time.sleep(10)
+ print("""Des weiteren:
+Zwei Sensoren sind einer zu wenig, denn falls jetzt einer ausfallen sollte, welcher
+sollte verwendet werden? Das MCAS hatte hier schlicht weg keine Chance, vernüftig
+zu handeln und hatte das Flugzeug in einen Sturzflug gezwungen, da der Anstellwinkelsensor
+einen zu hohen Anstellwinkel gemeldet hatte. Das Flugzeug war jedoch gar nicht in jener Lage und
+die Piloten kämpften vergeblich gegen das System, welches sich nicht abschalten liess.
+Denn durch die grösseren und Effizienteren Triebwerke (LEAP 1A) der 737MAX, mussten diese
+weiter vorne und höher unter dem Flügel angebracht werden, um genügend Bodenfreiheit zu
+gewährleisten. Dies hatte dazu geführt, dass bei dem schon sehr alten Flugzeug das sogenannte
+Pitch-Up moment grösser wurde und somit die Nase des Flugzeugs in gewissen Fluglagen
+unkontrolliert nach oben gehen kann. Das MCAS sollte dies verhindern, denn diese Fluglage
+führt unweigerlich zu einem Strömungsabriss, bei welchem das Flugzeug sogesagt "vom Himmel
+fallen würde".""")
+ time.sleep(10)
+ if "grounding" in done:
+ stepscount -= 2
+ print("""
+Nachdem du ja glücklicherweise bereits bei Ermittlungsbeginn das Grounding des Typs andgeordnet hattest.
+Die Fluggesellschaften und Boeing hatten zwar nicht sehr positiv darauf reagiert, aber mit dem was
+du herausgefunden hattest, sind jetzt alle froh, dass du es getan hattest.
+Die 737 MAX war anschliessend bis im Dezember 2020 gegroundet und Boeing fuhr durch dieses Problem
+massive Verluste ein.
+""")
+ else:
+ stepscount += 10
+ print("""
+Alle sind schockiert, dass du nicht bereits bei Ermittlungsbeginn ein Grounding angeordnet hattest.
+Boeing und auch die Fluggesellschaften fanden es zwar erst besser, aber auch sie sind jetzt der Meinung,
+dass es besser gewesen wäre, wenn du bereits da ein Grounding angeordnet hättest. Deine Haltung davon ist
+zwar verständlich, aber du wirst trotzdem zur Verantwortung gezogen. Du musst eine Haftstrafe von einem
+Jahr absitzen, da du viele Personen in Gefahr gebracht hast. Trotzdem, der Fall ist geklärt.
+""")
+ return 0
+ else:
+ print("""Um etwas untersuchen zu können, musst du erst etwas in dein Inventar nehmen,
+dann hier zurückkehren. Gehe dazu hinaus auf die Unfallstelle.
+Auch da könnten sich wichtige Hinweise verstecken.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Flügel (f), zum Heck (h) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "f":
+ return 2
+ if i == "h":
+ return 3
+ if i == "z":
+ return 5
+
+def fl():
+ global stepscount
+ stepscount += 1
+ if "flügel" in visited:
+ print("""Du hast den Flügel bereits untersucht.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Heck (h), zum Büro (b) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "b":
+ return 1
+ if i == "h":
+ return 3
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 2
+ else:
+ print("""
+Der Flügel. Komplett zertrümmert. Er scheint in einem beinahe 90° Winkel
+aufgeschlagen zu sein. Du und dein Team finden eine der beiden Turbinen. Du lässt
+sie in dein Büro transportieren, um sie dort zu untersuchen. Du kannst entweder
+in dein Büro gehen oder weitersuchen.""")
+ i = userinput("Willst du zurück? (y/n)")
+ inventory.append("turbine")
+ visited.append("flügel")
+ time.sleep(2)
+ if i == 'y':
+ return 1
+ elif i == 'n':
+ print("""Du willst also weitersuchen.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Heck (h) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "h":
+ return 3
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 2
+
+
+
+def hk():
+ global stepscount
+ stepscount += 1
+ if "heck" in visited:
+ print("""Du hast das Heck bereits untersucht.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Flügel (f), zum Büro (b) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "b":
+ return 1
+ if i == "f":
+ return 2
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 3
+ else:
+ print("""
+Du entdeckst etwas, das wie das Seitenleitwerks des Flugzeugs aussehen könnte.
+Dein grösstes Ziel ist, die Blackbox zu finden. Du hebst Teile an, und plötzlich siehst du sie:
+Die Blackbox. Du hebst sie auf und lässt sie in dein Büro bringen. """)
+ inventory.append("blackbox")
+ time.sleep(1)
+ visited.append("heck")
+ i = userinput("Willst du zurück? (y/n)")
+ if i == 'y':
+ return 1
+ elif i == 'n':
+ print("""Du willst also weitersuchen.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Flügel (f) oder willst du Zeugen befragen (z)? ")
+ if i == "c":
+ return 4
+ if i == "f":
+ return 2
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 3
+
+
+
+def zg():
+ global stepscount
+ stepscount += 1
+ if "zeugen" in visited:
+ print("""Du hast die Zeugen bereits befragt.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Flügel (f), zum Büro (b) oder zum Heck (h)? ")
+ if i == "c":
+ return 4
+ if i == "b":
+ return 1
+ if i == "f":
+ return 2
+ if i == "h":
+ return 3
+ else:
+ print("wrong, retry")
+ return 5
+ else:
+ print("""
+Du machst dich auf den Weg in ein nahegelegenes Dorf, da du gehört hast, dass eine Person
+den Absturz gesehen hat.
+ - Hallo. Sie haben den Absturz mitverfolgt?
+ - Ja habe ich.
+ - Wollen sie uns etwas darüber erzählen?
+ - Ja klar. Also. Ich war gerade auf dem Weg nach Hause, als ich ein Flugzeug hörte. Es war lauter
+ als sonst, deshalb schaute ich auf. Etwas schien ganz und gar nicht gut, denn plötzlich kippte
+ es zur Seite weg und stürzte vom Himmel. Einfach so. Eine riesige Explosion erschütterte unser Dorf.
+ - Vielen Dank. Sie haben mir geholfen.
+
+ Du machst dich auf den Weg zurück zur Unfallstelle. Willst du dir direkt Gedanken über die
+ Aussagen machen? Dafür musst du ins Büro zurück. """)
+ inventory.append("zeugen")
+ time.sleep(1)
+ visited.append("zeugen")
+ i = userinput("Willst du zurück? (y/n)")
+ if i == 'y':
+ return 1
+ elif i == 'n':
+ print("""Du willst also weitersuchen.""")
+ i = userinput("Wo willst du hin? Zum Cockpit (c), zum Heck (h) oder zum Flügel (f)? ")
+ if i == "c":
+ return 4
+ if i == "h":
+ return 3
+ if i == "f":
+ return 2
+ else:
+ print("wrong, retry")
+ return 5
+
+
+
+def co():
+ global stepscount
+ stepscount += 1
+ if "cockpit" in visited:
+ print("""Du hast das Cockpit bereits untersucht.""")
+ i = userinput("Wo willst du hin? Zum Heck (h), zum Flügel (f), zum Büro (b) oder willst du Zeugen befragen (z)? ")
+ if i == "h":
+ return 3
+ if i == "b":
+ return 1
+ if i == "f":
+ return 2
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 4
+ else:
+ print("""
+Du näherst dich der Nase des Flugzeugs. Vorsichtig läufst du umher. Vor dir liegt ein Sensor.
+Er scheint defekt zu sein. Du hebst ihn auf und lässt ihn in dein Büro bringen.
+Du kannst zurück gehen und ihn untersuchen oder weitersuchen.""")
+ inventory.append("anstellwinkelsensor")
+ time.sleep(1)
+ visited.append("cockpit")
+ i = userinput("Willst du zurück? (y/n)")
+ if i == 'y':
+ return 1
+ elif i == 'n':
+ print("""Du willst also weitersuchen.""")
+ i = userinput("Wo willst du hin? Zum Flügel (f), zum Heck (h) oder willst du Zeugen befragen (z)? ")
+ if i == "f":
+ return 2
+ if i == "h":
+ return 3
+ if i == "z":
+ return 5
+ else:
+ print("wrong, retry")
+ return 4
+
+
+
+
+def main():
+ cover()
+ einfuehrung()
+ grundriss()
+ global next
+ global exit
+ next = 1
+ exit = 0
+ while next != 0:
+ if next == 1:
+ next = eb()
+ elif next == 2:
+ next = fl()
+ elif next == 3:
+ next = hk()
+ elif next == 4:
+ next = co()
+ elif next == 5:
+ next = zg()
+ else:
+ print("an error occured. restart. Exit Code:", next)
+ next = 0
+ exit = 0
+ gameoverpossible()
+ if exit == 1:
+ abspann()
+
+main()
\ No newline at end of file
diff --git a/TextAdventure/CRASH EINER B737MAX 8.docx b/TextAdventure/CRASH EINER B737MAX 8.docx
new file mode 100755
index 0000000..a3c0d43
Binary files /dev/null and b/TextAdventure/CRASH EINER B737MAX 8.docx differ
diff --git a/TextAdventure/FightDay TA.py b/TextAdventure/FightDay TA.py
new file mode 100755
index 0000000..e861441
--- /dev/null
+++ b/TextAdventure/FightDay TA.py
@@ -0,0 +1,612 @@
+import time
+import datetime
+from random import *
+from math import *
+from threading import Thread
+from turtle import *
+
+Zahl = randint(1,4)
+if Zahl == 4:
+ Objekt = "Kupferleitung"
+elif Zahl == 3:
+ Objekt = "Metallplatte"
+elif Zahl == 2:
+ Objekt = "Schwarzpulver"
+elif Zahl == 1:
+ Objekt = "rote Lampe"
+
+
+
+def cover():
+ print("\n \
+ ______ _ _ _ _____ \n \
+ | ___|(_) | | | | | __ \ \n \
+ | |__ _ __ _| |__ | |_ | | | | __ _ _ _ \n \
+ | __| | |/ _` | '_ \| __| | | | |/ _` | | | |\n \
+ | | | | (_| | | | | |_ | |__| | (_| | |_| |\n \
+ |_| |_|\__, |_| |_|\__| |_____/ \__,_|\__, |\n \
+ __/ | __/ |\n \
+ |___/ |___/ ")
+ time.sleep(3)
+
+def einfuehrung():
+ print("\n \n Es ist kurz nach Mittag.\n Du bist Teckniker beim Militär und mit deinen Kollegen in einem kompakten \
+Flugzeughangar des Militärs.\n \
+Plötzlich geht ein lauter Alarm los und du wirst von deinen Kollegen dazu aufgefordert, \n \
+ein Kampfflugzeug startklar zu machen.\n 'Geh und hole das Ersatzteil für den rechten Flügel!' \
+ruft dein Kollege.")
+ time.sleep(9)
+
+def grundriss():
+ print ("\n Links von dir ist das Büro deines Vorgesetzten, \n rechts sind weitere Räume mit Materialien \
+für die Techniker, \n vor dir steht das Kampfflugzeug.\n Du kannst die vier Himmelsrichtungen (Norden, Osten, \
+Süden, Westen) zur Steuerung verwenden.")
+ time.sleep(7)
+ print("Los gehts!")
+ time.sleep(1)
+ showHelp()
+ time.sleep(5)
+
+
+def Hangar():
+ print("\n Du befindest dich am hinteren Ende des Hangars.")
+ time.sleep(1)
+ action = getUserAction()
+ if action == 'o':
+ return 2
+ elif action == 'w':
+ return 3
+ elif action == 'egal':
+ print("\n Mir auch egal. Lass uns eingach sagen, dass du es geschafft hast.")
+ time.sleep(3)
+ elif action == 'n':
+ return 4
+ else:
+ handleStandardAction(action)
+ return 1
+
+
+
+def Objektraum():
+ print("\n Willkommen im Raum der Ersatzteile.")
+ time.sleep(1)
+ print("\n Du kannst nun einen von acht Gegenständen mitnehmen. \
+\n \t-Metallrohr \n \t-Kupferleitung \n \t-Metallplatte \n \t-Kupferrohr \n \t-Gewehrlauf \n \t-Schwarzpulver \
+\n \t-rote Lampe \n \t-blaue Lampe")
+ time.sleep(3)
+ objekt = input("Welches Objekt willst du mitnehmen? ")
+
+ if objekt == Objekt:
+ print("Gut...")
+ inventory.append(Objekt)
+ action = getUserAction()
+ while action != 'w':
+ handleStandardAction(action)
+ action = getUserAction()
+ return 1,1
+
+ elif objekt != 'Metallrohr' and objekt != 'Kupferleitung' and objekt != 'Metallplatte' and objekt != 'Kupferrohr' and objekt != 'Gewehrlauf' and objekt != 'Schwarzpulver' and objekt != 'rote Lampe' and objekt != 'blaue Lampe':
+ handleStandardAction(objekt)
+
+ print("\n Dies ist leider nicht das korrekte Objekt, versuch es noch einmal.")
+ Tipp = input("Willst du einen Tipp für das korrekte Objekt? ").lower()
+ if Tipp == 'ja':
+ print("\n Begebe dich in das Büro um Unterlagen zu den Ersatzteilen zu bekommen.")
+ time.sleep(2)
+
+
+ action = getUserAction()
+ while action != 'w':
+ handleStandardAction(action)
+ action = getUserAction()
+ return 1,0
+
+ else:
+ print("Okay")
+
+ action = getUserAction()
+ while action != 'w':
+ handleStandardAction(action)
+ action = getUserAction()
+ return 1,0
+
+
+def Büro():
+ print("\nWillkommen im Büro des Kommandanten.")
+ time.sleep(1)
+ print("Vor dir liegen 3 Dokumente: \n \t- 1.Ersatzteile F-16 Tiger\
+\n \t- 2. Ersatzteile F/A-18 Hornet \n \t- 3.Ersatzteile Saab Gripen \n Mehr Informationen über den \
+richtigen Flugzeugtypen kriegst du beim Flugzeug.")
+ time.sleep(2)
+ dokument = (input("\n Welches Dokument willst du anschauen?(Nr. des Dokumentes eingeben) "))
+
+ if (randint(1,3) > 2):
+ print("\n\nDeine Basis wurde von einer feindlichen Luft-Boden Rakete getroffen!!!")
+ time.sleep(2)
+ print("Der Raum füllt sich schnell mit Rauch.")
+ time.sleep(2)
+ print("Du musst schnellstmöglich in den \
+Hangar zum Feuerlöscher kommen.")
+ time.sleep(2)
+ print("Du hast nur noch 3 sekunden um aus dem Raum zu kommen!")
+ time.sleep(2)
+
+ now = datetime . datetime . now ()
+ midnight = now . replace ( hour =0 , minute =0 , second =0 , microsecond =0)
+ seconds1 = ( now - midnight ) . seconds
+
+ action = getUserAction()
+
+ while action != 'o':
+ now = datetime . datetime . now ()
+ midnight = now . replace ( hour =0 , minute =0 , second =0 , microsecond =0)
+ seconds2 = ( now - midnight ) . seconds
+ if ((seconds2 - seconds1)>3):
+ print("\nDu kannst dich nicht mehr retten und das Feuer verschlingt dich!")
+ time.sleep(1)
+ verloren()
+
+ else:
+ handleStandardAction(action)
+ action = getUserAction()
+
+ now = datetime . datetime . now ()
+ midnight = now . replace ( hour =0 , minute =0 , second =0 , microsecond =0)
+ seconds2 = ( now - midnight ) . seconds
+ if ((seconds2 - seconds1)>3):
+ verloren()
+ else:
+ print("\nDu schaffst es gerade noch aus dem Raum hinauszurennen.")
+ time.sleep(2)
+ print("Du packst den Feuerlöscher\n\
+und kannst das Büro rechtzeitig von den Flammen befreien.")
+ time.sleep(4)
+ return 1
+
+
+ while dokument != "1" and dokument != "2" and dokument != "3":
+ handleStandardAction(dokument)
+ print("Achte darauf, dass du nur die Zahl des Dokumentes eingibst.")
+ dokument = (input("\n Welches Dokument willst du anschauen?(Nr. des Dokumentes eingeben) "))
+
+
+ if dokument == '1':
+ print("\n Ersatzteile: rechter Flügel => Kupferleitung, linker Flügel => rote Lampe")
+ elif dokument == '2':
+ print("Ersatzteile: rechter Flügel => ",end="")
+ print(Objekt,end=", ")
+ print("linker Flügel => blaue Lampe")
+ elif dokument == '3':
+ print("\n Ersatzteile: rechter Flügel => rote Lampe, linker Flügel => Metallröhre")
+
+ action = getUserAction()
+
+ while action != 'o':
+ handleStandardAction(action)
+ action = getUserAction()
+ return 1
+
+def Kampfflugzeug(o):
+ print("\n Du befindest dich nun beim Kampfflugzeug F/A-18.")
+ time.sleep(1)
+ if o == 0 or o == 1:
+ action = input("Hast du das korrekte Ersatzteil dabei und willst es einbauen? ").lower()
+ if action == 'ja' and o == 1:
+ time.sleep(1.5)
+ inventory.remove(Objekt)
+ print("\nSuper, du hast das Flugzeug repariert!")
+ time.sleep(1)
+ print("Nun musst den Kampfjet zum Starten auf die Startbahn bringen.\nÖffne zuerst das Tor vor dir und \
+hole anschliessend den Pushback, welcher hinter dem Tor steht.")
+ time.sleep(2)
+ d = getUserAction()
+ while d != 'n' and d != 's' and d != 'o' and d != 'w':
+ handleStandardAction(d)
+ d = getUserAction()
+ if d == 'n':
+ return 5,2
+ elif d == 's':
+ return 1,2
+ elif action == 'o':
+ return 2,2
+ elif action == 'w':
+ return 3,2
+
+ elif action != 'ja' and action != 'nein':
+ handleStandardAction(action)
+
+ if o == 0:
+ print("\n Du hast das richtige Ersatzteil leider nicht dabei.\n Hol zuerst das richtige Ersatzteil im \
+Raum der Techniker.")
+ else:
+ Kampfflugzeug(o)
+ time.sleep(1)
+ action = getUserAction()
+
+ if action == 'o':
+ return 2,0
+ elif action == 'w':
+ return 3,0
+ elif action == 'egal':
+ print("\n Mir auch egal, lass uns einfach sagen du hast es geschafft.")
+ time.sleep(4)
+ elif action == 's':
+ return 1,0
+ else:
+ handleStandardAction(action)
+ return 4,0
+ else:
+ time.sleep(1)
+ action = getUserAction()
+ if action == 'o':
+ return 2,2
+ elif action == 'w':
+ return 3,2
+ elif action == 'egal':
+ print("\n Mir auch egal, lass uns einfach sagen, dass du es geschafft hast.")
+ time.sleep(4)
+ elif action == 's':
+ return 1,2
+ elif action == "n":
+ return 5,2
+ else:
+ handleStandardAction(action)
+ return 4,2
+
+def Tor():
+ print("\nDu befindest dich beim Tor. Gib den korrekten Code ein um es zu öffnen.\n \
+Den Code findest du in deinem Inventar")
+ time.sleep(1)
+ Code = input("Code:").lower()
+
+ if Code == '4934':
+ print("Sehr gut, das Tor öffnet sich.")
+ d = getUserAction()
+ while d != 's' and d != 'n':
+ handleStandardAction(d)
+ d = getUserAction()
+ if d == 's':
+ return 4
+ if d == 'n':
+ return 6
+ elif Code == "9768" or Code == "1234" or Code == "1482":
+ print("Dies ist leider nicht der korrekte Code.")
+ tipp = input("Willst du einen Tipp für den korrekten Code?")
+ if tipp == "ja":
+ print("Die erste Nummer des Codes ist die zweite Nachkommastelle von Pi")
+ time.sleep(3)
+ return 5
+ else:
+ return 5
+ else:
+ handleStandardAction(Code)
+ return 5
+
+
+def draussen():
+ print("\nDu stehst draussen vor dem Hangar.\n Du musst den Flieger nur noch mit dem Pushback auf die Startbahn bringen.")
+ time.sleep(1)
+ print("Geh nach Norden und anschliessen nach Westen um den Pushback zu holen und ihn an den Jet anzuschliessen.\n")
+ D = getUserAction()
+ while D != "n":
+ handleStandardAction(D)
+ D = getUserAction()
+
+ print("Gut")
+ time.sleep(0.5)
+
+ D = getUserAction()
+ while D != "w":
+ handleStandardAction(D)
+ D = getUserAction()
+
+ time.sleep(1)
+ return 7
+
+def Pushback():
+ print("\nDu bist beim Pushback angekommen und schliesst ihn an das Kampfflugzeug an.")
+ time.sleep(2)
+ print("Du steigst in den Pushback ein und musst ihn mit dem Flieger zum Anfang der Piste fahren.")
+ time.sleep(3)
+ print("Dein Zielort wird auf der Piste mit vier kleinen orangen Vierecken gekennzeichnet sein.")
+ time.sleep(5)
+ print("\nJetzt musst du mit den Rechts- Linkspfeilen deiner Tastatur den Pushback steuern.")
+ print("Wenn du den rechten Pfeil einmal drückst macht der Pushback eine Rechtskurve und umgekehrt.")
+ time.sleep(6)
+ print("Wenn sich kein neues Fenster automatisch öffnet,\n\
+musst du noch manuell unten in deiner Leiste auf das neue Programm draufklicken.")
+ time.sleep(3)
+ d = input("Bist du bereit?")
+ while d != "ja":
+ handleStandardAction(d)
+ d = input("Bist du bereit?")
+ onkey(golt,"Left")
+ onkey(gort,"Right")
+ listen()
+ ht()
+ pu()
+ speed(0)
+ width(3)
+ tracer(0)
+ sc=Screen()
+ sc.setup(1200,600)
+
+ a = -500
+ b = -300
+ c = True
+ f = 1
+ corx2 = 576
+ cory2 = 260
+
+ while c:
+ clear()
+ Startpunkt()
+ Piste()
+ Ende()
+ setpos(a,b)
+ pd()
+ drawCart()
+ pu()
+ fd(1.5)
+ rt(90)
+ a = xcor()
+ b = ycor()
+ if ((a > 566) and (a < 587)) and ((b > 250) and (b < 270)):
+ lt(90)
+ for i in range(130):
+ clear()
+ Startpunkt()
+ Piste()
+ setpos(corx2,cory2)
+ pd()
+ Jet()
+ pu()
+ lt(180)
+ setheading(towards(620,260))
+ backward(f)
+ f = f + 0.2
+ corx2 = xcor()
+ cory2 = ycor()
+ update()
+ time.sleep(1)
+ clear()
+ setpos(0,0)
+ if __name__ == '__main__':
+ Thread(target = abspann).start()
+ for i in range(10000):
+ a = random()
+ b = random()
+ c = random()
+ bgcolor(a, b, c)
+ color("Black")
+ write("\tNice \nDu hast es geschafft!!!",align = "center", font=("Castellar", 20, "normal"))
+ c = False
+ update()
+
+def Startpunkt():
+ color("black")
+ setpos(-500,-300)
+ fd(16)
+ lt(90)
+ fd(16)
+ for i in range(4):
+ pd()
+ begin_fill()
+ for i in range(4):
+ fd(6)
+ rt(90)
+ end_fill()
+ pu()
+ lt(90)
+ fd(32)
+
+def Ende():
+ width(1)
+ color("black","orange")
+ pu()
+ setpos(576,260)
+ fd(10)
+ lt(90)
+ fd(10)
+ for i in range(4):
+ pd()
+ begin_fill()
+ for i in range(4):
+ fd(5)
+ rt(90)
+ end_fill()
+ pu()
+ lt(90)
+ fd(20)
+ rt(90)
+ width(3)
+
+
+def drawCart():
+ rt(90)
+ color("black","gold")
+ begin_fill()
+ fd(12)
+ left(90)
+ fd(15)
+ left(90)
+ fd(8)
+ rt(90)
+ fd(5)
+ lt(90)
+ fd(8)
+ lt(90)
+ fd(5)
+ rt(90)
+ fd(8)
+ lt(90)
+ fd(15)
+ lt(90)
+ fd(12)
+ lt(90)
+ end_fill()
+ rt(90)
+ width(2)
+ color("black","silver")
+ begin_fill()
+ rt(60)
+ fd(17)
+ rt(120)
+ fd(5)
+ lt(120)
+ fd(30)
+ rt(120)
+ fd(15)
+ lt(90)
+ fd(3)
+ rt(90)
+ fd(6)
+ rt(90)
+ fd(3)
+ lt(90)
+ fd(15)
+ rt(120)
+ fd(30)
+ lt(120)
+ fd(6)
+ rt(120)
+ fd(17)
+ rt(60)
+ end_fill()
+ lt(90)
+
+def Jet():
+ width(2)
+ color("black","silver")
+ begin_fill()
+ rt(60)
+ fd(17)
+ rt(120)
+ fd(5)
+ lt(120)
+ fd(30)
+ rt(120)
+ fd(15)
+ lt(90)
+ fd(3)
+ rt(90)
+ fd(6)
+ rt(90)
+ fd(3)
+ lt(90)
+ fd(15)
+ rt(120)
+ fd(30)
+ lt(120)
+ fd(6)
+ rt(120)
+ fd(17)
+ rt(60)
+ end_fill()
+ lt(90)
+
+def Piste():
+ setpos(0,790)
+ width(10)
+ color("dimgray","gray")
+ begin_fill()
+ fd(600)
+ lt(90)
+ pd()
+ fd(600)
+ for i in range(3):
+ lt(90)
+ fd(1200)
+ lt(90)
+ fd(600)
+ rt(90)
+ pu()
+ backward(600)
+ end_fill()
+ width(3)
+
+
+def gort():
+ right(90)
+
+def golt():
+ left(90)
+
+
+def abspannturtle():
+ for i in range(10000):
+ a = random()
+ b = random()
+ c = random()
+ bgcolor(a, b, c)
+ color("Black")
+ write("\tNice \nDu hast es geschafft!!!",align = "center", font=("Castellar", 20, "normal"))
+
+def abspann():
+ print("\n \n \t Gratuliere!!! \n \t Du hast es geschafft, das Flugzeug korrekt zu reparieren\
+\n \t und auf die Startbahn zu bringen.\n \t THE END")
+ time.sleep(30)
+
+def verloren():
+ print("\n\n\t Du hast es leider nicht geschafft und bist gestorben. \n\t Versuch es nochmal!\n")
+ time.sleep(999)
+
+def showInventory():
+ time.sleep(0.5)
+ a = 0
+ for i in range(len(inventory)):
+ print("-",inventory[a])
+ a = a + 1
+
+def showHelp():
+ print("""\nnorden = n \tsüden = s
+osten = o \twesten = w
+show help = h \tshow inventory = i""")
+
+def getUserAction():
+ action = input("Wohin willst du gehen?").lower()
+ return action
+
+def handleStandardAction(action):
+ if action == 'i':
+ #inventar anzeigen:
+ showInventory()
+ elif action == 'h':
+ showHelp()
+ elif action in ['n','s','o','w']:
+ print("Da kannst du leider nicht lang")
+ else:
+ print("\nDas verstehe ich leider nicht")
+
+inventory = ["Code Tor Nr. 1: 9768","Code Tor Nr. 2: 1234","Code Tor Nr. 3: 4934", "Code Tor Nr. 4: 1482","Schraubenzieher","Messlatte"]
+
+def main():
+ cover()
+ einfuehrung()
+ grundriss()
+ next = 1
+ objekt = 0
+ while next != 0:
+ if next == 1:
+ next = Hangar()
+ elif next == 2:
+ next1 = Objektraum()
+ next = next1[0]
+ objekt = next1[1]
+ elif next == 3:
+ next = Büro()
+ elif next == 4:
+ next2 = Kampfflugzeug(objekt)
+ next = next2[0]
+ objekt = next2[1]
+ elif next == 5:
+ next = Tor()
+ elif next == 6:
+ next = draussen()
+ elif next == 7:
+ next = Pushback()
+ elif next == 10:
+ abspann()
+
+main()
+
diff --git a/TextAdventure/Mousechaser.py b/TextAdventure/Mousechaser.py
new file mode 100755
index 0000000..ead5981
--- /dev/null
+++ b/TextAdventure/Mousechaser.py
@@ -0,0 +1,18 @@
+import turtle
+class Main():
+ def __init__(self):
+ wn = turtle.Screen()
+ wn.setup(600, 600)
+ screen = wn.getcanvas()
+ self.t = turtle.Turtle()
+ self.x = 300
+ self.y = 300
+ screen.bind('', self.set_coords)
+ self.run()
+ def set_coords(self, event):
+ self.x = event.x
+ self.y = event.y
+ def run(self):
+ while True:
+ self.t.setposition(self.x-300, (self.y*-1)+300)
+m = Main()
\ No newline at end of file
diff --git a/TextAdventure/Other Chaser.py b/TextAdventure/Other Chaser.py
new file mode 100755
index 0000000..7c2a2a9
--- /dev/null
+++ b/TextAdventure/Other Chaser.py
@@ -0,0 +1,9 @@
+import turtle
+
+screen = turtle.Screen()
+
+def goto_loc(x, y):
+ turtle.goto(x, y)
+
+
+screen.onscreenclick(goto_loc,1)
\ No newline at end of file
diff --git a/TextAdventure/Spiel Schiff.py b/TextAdventure/Spiel Schiff.py
new file mode 100755
index 0000000..0f816c0
--- /dev/null
+++ b/TextAdventure/Spiel Schiff.py
@@ -0,0 +1,47 @@
+import turtle
+#import math
+import time
+
+screen = turtle.Screen()
+
+screen.setup(1280,720)
+
+turtle.speed(0)
+s1_t = turtle.Turtle()
+s1_main = turtle.Turtle()
+mouseaim = turtle.Turtle()
+
+
+s1_t.ht()
+s1_main.ht()
+mouseaim.pu()
+mouseaim.speed(0)
+
+
+#turtle.tracer(0)
+
+def turret():
+ screen.clear()
+ s1_t.dot(15)
+ s1_t.width(3)
+ s1_t.fd(20)
+ screen.update()
+ s1_t.home()
+ screen.onscreenclick(goto_loc,1)
+
+def body():
+ print("ok")
+
+
+def ship():
+ print("ok")
+
+def goto_loc(x, y):
+ mouseaim.goto(x, y)
+ s1_t.setheading(s1_t.towards(x, y))
+ turret()
+
+
+screen.onscreenclick(goto_loc,1)
+
+
diff --git a/TextAdventure/Text Adventure.py b/TextAdventure/Text Adventure.py
new file mode 100755
index 0000000..6646ac9
--- /dev/null
+++ b/TextAdventure/Text Adventure.py
@@ -0,0 +1,295 @@
+import time
+
+global bbs
+bbs = 0
+global location
+
+def cover():
+ print("""
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ______ ______ ______ ______ _______ _______ _____
+( ___ \ / ___ \ / ___ \ / ___ \ ( )( ___ )|\ /| / ___ \
+| ( ) )\/ ) )\/ \ \\/ ) )| () () || ( ) |( \ / ) ( (___) )
+| (__/ / / / ___) / / / | || || || (___) | \ (_) / \ /
+| __ ( / / (___ ( / / | |(_)| || ___ | ) _ ( / ___ \
+| ( \ \ / / ) \ / / | | | || ( ) | / ( ) \ ( ( ) )
+| )___) ) / / /\___/ / / / | ) ( || ) ( |( / \ ) ( (___) )
+|/ \___/ \_/ \______/ \_/ |/ \||/ \||/ \| \_____/
+
+ _______ _______ _______ _______
+( ____ \( ____ )( ___ )( ____ \|\ /|
+| ( \/| ( )|| ( ) || ( \/| ) ( |
+| | | (____)|| (___) || (_____ | (___) |
+| | | __)| ___ |(_____ )| ___ |
+| | | (\ ( | ( ) | ) || ( ) |
+| (____/\| ) \ \__| ) ( |/\____) || ) ( |
+(_______/|/ \__/|/ \|\_______)|/ \|
+
+
+
+
+
+
+""")
+ time.sleep(2)
+
+def einfuehrung():
+ print("Es ist der 10. März 2019. Ein warmer Wind weht über den Ort.\n\n Es ist genau 8 Uhr 44 Ortszeit. \n\n Plötzlich hörst du ein Heulen, ein Krachen, eine Explosion. \n Du rennst hin und siehst ein abgestürztes Flugzeug. ")
+ time.sleep(4)
+
+def grundriss():
+ print ("""Die Absturzstelle:
+ _________________________________
+ | |
+ | |
+ | Cockpit |
+ | |
+ | |
+ | Flügel + Trubinen |
+ | |
+ | |
+ | Heck mit Blackboxen |
+ | |
+ | |
+ | |
+ |_________________________________|
+ | |
+ | |
+ | Ermittlerbüro |
+ | |
+ | |
+ |_________________|
+
+
+ Deine Aufgabe ist es nun, herauszufinden, weshalb dies
+ Flugzeug abgestürzt ist und alle 157 Menschen an Board
+ von Ethiopian Airlines Flug 302 gestorben sind.
+ Ein wenig Hintergrund: Etwa 5 Monate zuvor, am 29. Oktober
+ 2018 ist eine Maschine desselben Typs in Indonesien nahezu
+ senkrecht abgestürzt und hat alle Menschen an Board in den
+ Tod gerissen. Anhand dessen, was du bereits aus der
+ Absturzstelle schliessen konntest, ist dasselbe auch hier
+ geschehen, das Flugzeug ist wie ein Stein vom Himmel gefallen.
+ (Für Hilfe schreibe ein "?" als Antwort auf die Fragen wohin)
+""")
+
+def abspann():
+ print("""
+Du machst dich, nachdem du all dies herausgefunden hast daran, einen Abschlussbericht zu schreiben.
+Diesen veröffentlichst du sobald du fertig bist. Boeing bessert das MCAS nach.
+Du bist stolz auf dich und gehst zufrieden nach Hause.
+""")
+ print("THE END")
+
+def eb_start():
+ print("""Willkommen im Ermittlerbüro.
+Entscheide dich jetzt, ob du hier etwas untersuchen willst,
+oder lieber das Gelände untersuchst.""")
+ a = input("Bleiben (b) oder weggehen (w)? ").lower()
+ if a == "b":
+ return 51
+ elif a == "w":
+ d = input("Wohin willst du gehen? (Heck (h), Flügel (f), Cockpit (c) ").lower()
+ if d == "h":
+ return 21
+ elif d == "f":
+ return 31
+ elif d == "c":
+ return 41
+ elif d == "?":
+ return 99
+ else:
+ print("unbekannt")
+
+def eb_inside():
+ global bbs
+ if bbs == 0:
+ print("""Hier im Ermittlerbüro kannst du Dinge, wie die Blackboxes untersuchen.
+Dafür musst du sie jedoch erst finden und bergen.
+Gehe dazu hinaus auf die Absturzstelle.
+Sie könnten wichtige Informationen enthalten.
+""")
+ d = input("Wohin willst du gehen? (Heck (h), Flügel (f), Cockpit (c) ").lower()
+ if d == "h":
+ return 25
+ elif d == "f":
+ return 35
+ elif d == "c":
+ return 45
+ elif d == "?":
+ return 99
+ else:
+ print("unbekannt")
+
+ elif bbs == 1:
+ print("""
+Du hälst die Blackboxes in den Händen, aber sie werden dir langsam zu schwer.
+Deshalb stellst du sie ab um deine Hände auszuruhen.
+Um die darin enthaltenen Flugdaten zu erhalten, musst du
+den Flugdatenschreiber und Stimmenrekorder aufschrauben.
+Also machst du dich daran.
+""")
+ time.sleep(8)
+ print("""Perfekt, der Datenschreiber ist offen. Er sieht ok aus, du gehst davon aus,
+dass du die Daten selber auswerten kannst. Um aber nicht warten zu müssen, falls der
+Stimmenrekoder schlechter aussieht, öffnest du auch ihn.
+""")
+ time.sleep(8)
+ print("""
+Du konntest die Schrauben nur schwerlich entfernen, da der Stimmenrekorder
+ziemlich stark beschädigt ist. Wie es aussieht muss er eingesendet werden, in ein
+Labor des NTSB (National Transport Safety Board) in Washington DC. Dies dauert
+eine Weile, aber zum Glück ist es einem deiner Mitarbeiter gelungen, folgende Daten
+aus dem Flugdatenschreiber zu bergen:
+
+Das Flugzeug konnte nach dem Start nicht stabil fliegen.
+Die Höhe schwankte ziemlich stark, die Stickinputs waren
+enorm. Es sieht danach aus, als kämpften die Piloten gegen etwas.
+Auch die Fluggeschwindigkeit schwankte extrem.
+Beide Anstellwinkelsensoren der Boeing lieferten andere Werte.
+
+Du bist verwirrt. Eigentlich sollten Flugzeuge nicht nur zwei Sensoren haben sondern 3.
+Du wirst hellhörig.
+
+""")
+ time.sleep(10)
+ print("""
+Mittlerweile sind die Daten aus Washington eingetroffen. Wie man das bereits in den
+Flugdaten erahnen konnte, kämpften die Piloten gegen etwas. Jetzt wird klar, das sie gegen
+ein System kämpften. Aber gegen welches.
+""")
+ d = input("Was willst du jetzt tun? Selber nachforschen (s) oder ein Flugzeug anschauen (f)? ").lower()
+ if d == "s":
+ print("Du versuchst es selber. Nach längerem überlegen fällt dir auf, dass es doch eine bessere Idee gewesen wäre, \n ein Flugzeug anzuschauen und tust dies auch")
+ return 100
+ elif d == "f":
+ return 100
+ elif d == "?":
+ return 99
+ else:
+ print("unbekannt")
+
+
+
+def flugzeug_see():
+ print("""
+Du kommst bei Southwest airlines an. Denn diese Airline ist eine der grössten Betreiberinnnen
+der Boeing 737MAX 8.
+ """)
+
+
+def he_eb():
+ print("Willkommen in Raum 2")
+ d = input("Wohin?").lower()
+ if d == 'sueden':
+ return 3
+ elif d == 'westen':
+ return 1
+ else:
+ print("Da kannst Du leider nicht lang.")
+ return 2
+
+def co_eb():
+ print("""
+
+Du läufst am Heck und den Flügeln vorbei, denn du willst ins Cockpit.
+Dort angekommen erlebst du eine grosse Entteuschung.
+Nichts nützliches ist vorhanden, alles ist verbrannt.
+""")
+ d = input("Wohin willst du jetzt gehen? (Heck (h), Flügel (f), Zurück (b) ").lower()
+ if d == "h":
+ return 2
+ elif d == "f":
+ return 3
+ elif d == "b":
+ return 1
+ elif d == "?":
+ return 99
+ else:
+ print("unbekannt")
+
+def he_ebi():
+ print("""
+Du läufst aus dem Ermittlerbüro zum Heck des Flugzeugs.
+""")
+ global bbs
+ if bbs == 0:
+ print("""
+Da du auf der Suche nach den Blackboxes bist, beginnst du damit, Metallstücke umherzuschieben,
+dass du sie möglicherweise finden kannst.
+""")
+ time.sleep(10)
+ bbses()
+ bbs = 1
+ else:
+ print("""
+Du hast diesen Bereich bereits untersucht und gehst zurück.
+""")
+ return 12
+
+def bbses():
+ print("""
+Plötzlich siehst du ein bischen Orange unter einem grossen Stück des Seitenleitwerkes
+hervorblitzen. Du rufst jemanden dazu. Ihr verschiebt das Stück und tatsächlich: Es
+ist der Flugdatenschreiber.
+
+ERFOLG FREIGESCHALTET: DER SCHREIBER
+
+Ihr sucht weiter, denn der Rekorder kann nicht weit sein. Und das ist er auch nicht.
+Du drehst ein weiteres Stück Metall, diesmal wahrscheinlich vom Seitenruder, um und da ist er.
+
+ERFOLG FREIGESCHALTET: DER REKORDER
+
+ERFOLG FREIGESCHALTET: BLACKBOX
+
+""")
+
+
+def main():
+ cover()
+ einfuehrung()
+ grundriss()
+ next = 10
+ while next != 0:
+ if next == 10:
+ next = eb_start()
+ elif next == 12:
+ next = he_done()
+ elif next == 21:
+ next = he_eb()
+ elif next == 25:
+ next = he_ebi()
+ elif next == 31:
+ next = fl_eb()
+ elif next == 35:
+ next = fl_ebi()
+ elif next == 41:
+ next = co_eb()
+ elif next == 45:
+ next = co_ebi()
+ elif next == 51:
+ next = eb_inside()
+ elif next == 99:
+ next = help()
+ elif next == 100:
+ next = flugzeug_see
+ location = next
+ abspann()
+
+main()
\ No newline at end of file
diff --git a/TextAdventure/The House.py b/TextAdventure/The House.py
new file mode 100755
index 0000000..9cd0419
--- /dev/null
+++ b/TextAdventure/The House.py
@@ -0,0 +1,754 @@
+import time
+global inventory
+inventory = []
+global besucht
+besucht = []
+global ausgeloest
+ausgeloest = []
+
+
+def cover():
+ print("""
+
+▄▄▄█████▓ ██░ ██ ▓█████ ██░ ██ ▒█████ █ ██ ██████ ▓█████
+▓ ██▒ ▓▒▓██░ ██▒▓█ ▀ ▓██░ ██▒▒██▒ ██▒ ██ ▓██▒▒██ ▒ ▓█ ▀
+▒ ▓██░ ▒░▒██▀▀██░▒███ ▒██▀▀██░▒██░ ██▒▓██ ▒██░░ ▓██▄ ▒███
+░ ▓██▓ ░ ░▓█ ░██ ▒▓█ ▄ ░▓█ ░██ ▒██ ██░▓▓█ ░██░ ▒ ██▒▒▓█ ▄
+ ▒██▒ ░ ░▓█▒░██▓░▒████▒ ░▓█▒░██▓░ ████▓▒░▒▒█████▓ ▒██████▒▒░▒████▒
+ ▒ ░░ ▒ ░░▒░▒░░ ▒░ ░ ▒ ░░▒░▒░ ▒░▒░▒░ ░▒▓▒ ▒ ▒ ▒ ▒▓▒ ▒ ░░░ ▒░ ░
+ ░ ▒ ░▒░ ░ ░ ░ ░ ▒ ░▒░ ░ ░ ▒ ▒░ ░░▒░ ░ ░ ░ ░▒ ░ ░ ░ ░ ░
+ ░ ░ ░░ ░ ░ ░ ░░ ░░ ░ ░ ▒ ░░░ ░ ░ ░ ░ ░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+
+
+
+---------------------------------------------------------------------
+
+ """)
+ time.sleep(3)
+
+def uinput(question):
+ return input(question).lower()
+
+def error():
+ print("Dieser Befehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen\n")
+
+def gameover():
+ print("""
+
+
+ ▄████ ▄▄▄ ███▄ ▄███▓▓█████ ▒█████ ██▒ █▓▓█████ ██▀███
+ ██▒ ▀█▒▒████▄ ▓██▒▀█▀ ██▒▓█ ▀ ▒██▒ ██▒▓██░ █▒▓█ ▀ ▓██ ▒ ██▒
+▒██░▄▄▄░▒██ ▀█▄ ▓██ ▓██░▒███ ▒██░ ██▒ ▓██ █▒░▒███ ▓██ ░▄█ ▒
+░▓█ ██▓░██▄▄▄▄██ ▒██ ▒██ ▒▓█ ▄ ▒██ ██░ ▒██ █░░▒▓█ ▄ ▒██▀▀█▄
+░▒▓███▀▒ ▓█ ▓██▒▒██▒ ░██▒░▒████▒ ░ ████▓▒░ ▒▀█░ ░▒████▒░██▓ ▒██▒
+ ░▒ ▒ ▒▒ ▓▒█░░ ▒░ ░ ░░░ ▒░ ░ ░ ▒░▒░▒░ ░ ▐░ ░░ ▒░ ░░ ▒▓ ░▒▓░
+ ░ ░ ▒ ▒▒ ░░ ░ ░ ░ ░ ░ ░ ▒ ▒░ ░ ░░ ░ ░ ░ ░▒ ░ ▒░
+░ ░ ░ ░ ▒ ░ ░ ░ ░ ░ ░ ▒ ░░ ░ ░░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░
+
+
+-------------------------------------------------------------------------
+""")
+
+def regeln():
+ print("Bevor wir starten, ein paar Anmerkungen.\n"
+ "Bitte alles was du schreibst IMMER in Kleibuchstaben verfassen.\n"
+ "Es wird immer MAXIMAL ein Wort benötigt.\n"
+ "Du hast einen Rucksack dabei, in dem du Dinge mitnehmen kannst.\n")
+
+ time.sleep(2)
+
+def visited(ort):
+ besucht.append(ort)
+
+def einfuehrung():
+ print("Es ist Freitag Nacht...\n"
+
+
+ "Du hast dich verlaufen und bist auf der Suche nach einer Unterkunft\n"
+ "für die kommende Nacht.\n"
+ "Du bist ganz auf dich alleine gestellt.\n"
+ "Wenn du nicht aufpasst, wirst du sterben.\n"
+ "Sei vorsichtig und überlege dir jede Entscheidung gut.\n"
+ "Es gibt kein Zurück!!\n"
+
+ "Du bist ganz alleine an einer abgelegenen Strasse.\n"
+ "Es stürmt und ist eiskalt.\n"
+ "Plötzlich kommst du zu einem alten Haus.\n"
+ "Es sieht unheimlich aus.\n")
+ time.sleep(5)
+
+def grundriss():
+ print ("""
+ DU BIST HIER
+ |
+ __________ ____|______ _______ ____
+ | | | | | |
+ |Wohnzimmer|____| Flur |____|Schlafzimmer|
+ | | | | | |
+ |__ _____ _| |__ ______ _| |___ ___ ____|
+ | |
+ | |
+ | |
+ ____|____ ________ __ ______|_____
+ | | | | | |
+ | Küche |____| Flur |____| Badezimmer |
+ | | | | | |
+ |__ _____ _| |__ ________| |_ __________|
+ |
+ |
+ |
+ _____|_ ____
+ | |
+ | Keller |
+ | |
+ |_________ __|
+
+
+
+""")
+ time.sleep(3)
+
+
+def lageplan():
+ print("""
+
+ _______ ___________ _______ ____
+ | | | | | |
+ |Wohnzimmer|____| Flur |____|Schlafzimmer|
+ | | | | | |
+ |__ _____ _| |__ ______ _| |___ ___ ____|
+ | |
+ | |
+ | |
+ ____|____ ________ __ ______|_____
+ | | | | | |
+ | Küche |____| Flur |____|Badezimmer |
+ | | | | | |
+ |__ _____ _| |__ ________| |_ __________|
+ |
+ |
+ |
+ _____|______
+ | |
+ | Keller |
+ | |
+ |____________|
+
+
+ """)
+
+def abspann():
+ print("""
+
+
+▄▄▄█████▓ ██░ ██ ▓█████ ▓█████ ███▄ █ ▓█████▄
+▓ ██▒ ▓▒▓██░ ██▒▓█ ▀ ▓█ ▀ ██ ▀█ █ ▒██▀ ██▌
+▒ ▓██░ ▒░▒██▀▀██░▒███ ▒███ ▓██ ▀█ ██▒░██ █▌
+░ ▓██▓ ░ ░▓█ ░██ ▒▓█ ▄ ▒▓█ ▄ ▓██▒ ▐▌██▒░▓█▄ ▌
+ ▒██▒ ░ ░▓█▒░██▓░▒████▒ ░▒████▒▒██░ ▓██░░▒████▓
+ ▒ ░░ ▒ ░░▒░▒░░ ▒░ ░ ░░ ▒░ ░░ ▒░ ▒ ▒ ▒▒▓ ▒
+ ░ ▒ ░▒░ ░ ░ ░ ░ ░ ░ ░░ ░░ ░ ▒░ ░ ▒ ▒
+ ░ ░ ░░ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░ ░ ░ ░ ░ ░ ░ ░ ░
+ ░
+-----------------------------------------------------
+
+
+""")
+
+def eintreten():
+ aktion = uinput('Willst Du eintreten oder weglaufen?')
+ if aktion == 'eintreten':
+ return 1
+
+ elif aktion == 'weglaufen':
+ print("\n"
+ "Du läufst davon voller Angst... \n"
+ "Doch schon nach kurzer Zeit wird dir bewusst...\n"
+ "Du musst zurück wenn du diese Nacht überleben willst.\n")
+ time.sleep(3)
+ eintreten()
+
+ else:
+ error()
+ time.sleep(2)
+ eintreten()
+
+def flur_1():
+ if "lampe" in inventory:
+ print("Du bist nun auf dem Flur.\n")
+ lageplan()
+ f = uinput("Wohin willst du?")
+ if f == "schlafzimmer":
+ return 4
+ elif f == "wohnzimmer":
+ return 3
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ return 1
+ else:
+ inventory.append("lampe")
+ print("\n"
+ "(Du findest eine Lampe und steckst sie in dein Inventar)\n"
+ "Du stehst auf einem Flur.\n"
+ "Das Haus sieht alt und verlassen aus.\n"
+ "Doch plötzlich hörst du etwas...\n"
+ "Schritte vielleicht?\n")
+ d = input("Willst du im Schlafzimmer oder im Wohnzimmer nachsehen?").lower()
+ if d == "schlafzimmer":
+ return 4
+ elif d == "wohnzimmer":
+ return 3
+ else:
+ error()
+ time.sleep(2)
+ inventory.remove("lampe")
+ return 1
+
+def flur_2():
+ if "flur2" in besucht:
+ print("Du bist nun auf dem Flur.\n")
+ if "schlüssel" in inventory:
+ if "tür" not in besucht:
+ q = uinput("Willst du die Türe öffnen?")
+ if q == "ja":
+ if "schlüssel" in inventory:
+ return 7
+ else:
+ print("Du brauchst einen Schlüssel um diese Türe zu öffnen.\n")
+ elif q == "nein":
+ time.sleep(3)
+ lageplan()
+ f = uinput("Wohin willst du?")
+ if f == "badezimmer":
+ return 6
+ elif f == "küche":
+ return 5
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ return 2
+ else:
+ besucht.remove("tür")
+ lageplan()
+ f = uinput("Wohin willst du?")
+ if f == "badezimmer":
+ return 6
+ elif f == "küche":
+ return 5
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ return 2
+ else:
+ lageplan()
+ f = uinput("Wohin willst du?")
+ if f == "badezimmer":
+ return 6
+ elif f == "küche":
+ return 5
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ return 2
+ else:
+ print("Du stehst erneut auf einem Flur...\n"
+ "Er sieht aber anderst aus als der beim Hauseingang.\n"
+ "Deutlich düsterer... und eine Tür die in einen anderen Raum führt.\n"
+ "In den Keller vielleicht?\n")
+ i = uinput("Willst du die Türe öffnen?")
+ if i == "nein":
+ visited("flur2")
+ visited("tür")
+ return 2
+ elif i == "ja":
+ if "schlüssel" in inventory:
+ inventory.remove("schlüssel")
+ return 7
+ else:
+ print("Die Türe scheint verschlossen zu sein.\n"
+ "Du brauchst einen Schlüssel um diesen Raum zu betreten.\n")
+ time.sleep(3)
+ lageplan()
+ j = uinput("Wohin willst du?")
+ if j == "badezimmer":
+ return 6
+ visited("flur2")
+ elif j == "küche":
+ return 5
+ visited("flur2")
+ else:
+ error()
+ time.sleep(2)
+ return 2
+ else:
+ error()
+ return 2
+
+def wohnzimmer():
+ if "wohnzimmer" in besucht:
+ print("Du bist nun im Wohnzimmer.\n")
+ f = input("Wohin willst du?").lower()
+ lageplan()
+ if f == "flur":
+ return 1
+ elif f == "küche":
+ return 5
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ return 3
+ else:
+ print("\n"
+ "Du gehst aufmerksam ins Wohnzimmer.\n"
+ "Du blickst umher.\n"
+ "Da links! Eine schwarze Gestalt steht im nächsten Zimmer!\n"
+ "Geschockt bleibst du stehen und planst dein weiteres Vorgehen.\n")
+ b = input("Willst du die Situation beobachten oder flüchten?").lower()
+ if b == "flüchten":
+ return 12
+ if b == "beobachten":
+ visited("wohnzimmer")
+ visited("schlafzimmer")
+ print("\n"
+ "Schockiert erkennst du, dass die schwarze Gestalt ein Messer hat.\n"
+ "Sie lacht auf eine psychopathische Art und Weise und läuft umher.\n"
+ "Sucht sie etwas? Oder jemanden?\n"
+ "Mich vielleicht?\n"
+ "Es sieht so aus als würde sie im nächsten Raum verschwinden.\n")
+ time.sleep(5)
+ lageplan()
+ c = uinput("Wohin willst du?")
+ if c == "flur":
+ return 1
+ elif c == "küche":
+ return 5
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ return 3
+ else:
+ error()
+ time.sleep(2)
+ return 3
+
+def schlafzimmer():
+ if "schlafzimmer" in besucht:
+ print("Du bist nun im Schlafzimmer.\n")
+ lageplan()
+ e = uinput("Wohin willst du?")
+ if e == "badezimmer":
+ return 6
+ elif e == "flur":
+ return 1
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ return 4
+ else:
+ print("\n"
+ "Du öffnest die Schlafzimmertüre langsam.\n"
+ "Die Türe aber knirscht und lässt sich nur schwer öffnen.\n"
+ "Nun betrittst du das alte und verlassene SChlafzimmer.\n"
+ "Du siehst dich etwas um.\n"
+ "Am Boden hinter dem Bett siehst du etwas.\n"
+ "Flecken viellei... HILFE!!!!!\n"
+ "Jemand schrie um Hilfe? Und die Flecken - es ist Blut!!\n")
+ a = uinput("Willst du flüchten oder dem Hilferuf folgen?")
+ if a == "flüchten":
+ print("\n"
+ "Du entschliesst dich zu flüchten.\n"
+ "Du hast Todesangst\n")
+ return 12
+ elif a == "folgen":
+ besucht.append("schlafzimmer")
+ return 3
+ else:
+ error()
+ time.sleep(2)
+ return 4
+
+def kueche():
+ if "küche" in besucht:
+ print("Du bist nun in der Küche.\n")
+ if "messer" not in inventory:
+ print("Das Messer, welches du vorhin entdeckt hast liegt noch immer da.\n")
+ p = uinput("Willst du das Messer aufheben? Es könnte sich später noch als Nützlich erweisen.")
+ if p == "ja":
+ inventory.append("messer")
+ print("Du steckst das Messer in dein Inventar")
+ elif p == "nein":
+ print("ok")
+ else:
+ error()
+ return 5
+ else:
+ time.sleep(0.1)
+ else:
+ visited("küche")
+ print("Du bist nun in der Küche.\n"
+ "Von der schwarzen Gestalt ist nichts zu sehen.\n"
+ "Auf der Ablage liegt ein Messer.\n")
+ time.sleep(2)
+ p = uinput("Willst du das Messer aufheben? Es könnte sich später noch als Nützlich erweisen.")
+ if p == "ja":
+ inventory.append("messer")
+ print("Du steckst das Messer in dein Inventar")
+ elif p == "nein":
+ print("ok")
+ else:
+ error()
+ return 5
+ time.sleep(2)
+ lageplan()
+ x = uinput("Wohin willst du?")
+ if x == "flur":
+ return 2
+ if x == "wohnzimmer":
+ return 3
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ return 5
+
+def badezimmer():
+ if "badezimmer" in besucht:
+ print("Du bist nun im Badezimmer.\n")
+ if "badevorhang" in besucht:
+ if "schlüssel" not in besucht:
+ if "schlüssel" not in inventory:
+ w = uinput("Willst du den Schlüssel aufheben?")
+ if w == "ja":
+ inventory.append("schlüssel")
+ else:
+ print("ok")
+ else:
+ besucht.remove("schlüssel")
+ else:
+ w = uinput("Willst du den Duschvorhang öffnen?")
+ visited("badevorhang")
+ if w == "ja":
+ return 14
+ elif w == "nein":
+ print("ok")
+ else:
+ error()
+ return 6
+ else:
+ print("Du öffnest die Türe zum Bad ganz leise.\n"
+ "Du hoffst, dass die schwarze Gestalt nichts gehört hat.\n"
+ "Etwas ängstlich betrittst du nun das Badezimmer.\n"
+ "Viel gibt es nicht zu sehen in diesem Badezimmer\n"
+ "Eine Toilette, ein Spiegel und eine Badewanne\n"
+ "Der Duschvorhang der Badewanne ist zu\n")
+ g = uinput("Willst du ihn öffnen?")
+ if g == "ja":
+ visited("badezimmer")
+ visited("badevorhang")
+ return 14
+ if g == "nein":
+ visited("badezimmer")
+ print("ok")
+ else:
+ error()
+ return 6
+ lageplan()
+ e = uinput("Wohin willst du?")
+ if e == "flur":
+ return 2
+ if e == "schlafzimmer":
+ return 4
+ else:
+ print("Du kannst diesen Raum nicht direkt betreten.\n")
+ return 6
+
+def treppe():
+ print("Du öffnest die Türe möglichst leise.\n"
+ "Zu deiner Erleichterung öffnet sich die Türe ruhig.\n"
+ "Vor dir siehst du eine Treppe.\n"
+ "Sie führt nach unten... in den Keller wahrscheinlich.\n")
+ k = uinput("Willst du den Keller betreten?")
+ if k == "ja":
+ return 8
+ elif k == "nein":
+# schlüssel = 1
+ return 2
+ else:
+ error()
+ return 7
+
+def keller():
+ print("Schleichend gehst du die dunkle, alte Treppe hinunter\n"
+ "Zu deinem Pech knirscht das alte Holz unter deinen Füssen\n"
+ "Unten angekommen siehst du dich etwas um.\n"
+ "Ein Schrank, ein altes Bett und viele alte Schachteln stehen herum.\n"
+ "Ein komischer Geruch kommt dir in die Nase...\n"
+ "...woher der wohl kommen mag?\n"
+ "Aus dem Schranz läuft etwas heraus...\n"
+ "...wegen der Dunkelheit erkennst du nicht wases ist.\n")
+ l = uinput("Willst du im Schrank nachschauen?")
+ if l == "ja":
+ return 9
+ elif l == "nein":
+ global origin
+ origin = 1
+ return 10
+ else:
+ error()
+ return 8
+
+def schrank():
+ print("Du öffnest den Schrank.\n"
+ "AHHHHHH!! Eine Leiche!! Und Blut! Überall Blut!!\n"
+ "Als wäre das nicht schon genug, hörst du plötzlich ein Lachen\n"
+ "Die schwarze Gestalt!!!\n"
+ "Und du hast keine Möglichkeit zu flüchten!\n"
+ "Das knirschen der Treppen wird immer lauter.\n"
+ "Du musst dich verstecken. Schnell!!!\n")
+ time.sleep(3)
+ global origin
+ origin = 2
+ return 10
+
+
+
+def verstecken():
+#v1------------------
+ global origin
+ global end_origin
+ if origin == 1:
+ print(
+ "Du hörst plötzlich ein Lachen.\n"
+ "Die schwarze Gestalt!!!\n"
+ "Und du hast keine Möglichkeit zu flüchten!\n"
+ "Das knirschen der Treppen wird immer lauter.\n"
+ "Du musst dich verstecken. Schnell!!!\n")
+ time.sleep(3)
+ o = uinput("Wo willst du dich verstecken?\n"
+ "Hinter den Schachteln oder unter dem Bett?")
+ if o == "bett":
+ end_origin = 2
+ return 11
+ elif o == "schachteln":
+ end_origin = 3
+ return 11
+ else:
+ print("Diese Möglichkeit steht nicht zur Auswahl.\n"
+ "Bitte überprüfe deine Antwort nochmals.\n")
+ return 10
+
+#v2---------------------
+ elif origin == 2:
+ m = input("Wo willst du dich verstecken?\n"
+ "Im Schrank, hinter den Schachteln oder unter dem Bett?\n").lower()
+ if m == "schrank":
+ end_origin = 1
+ return 11
+ elif m == "bett":
+ end_origin = 2
+ return 11
+ elif m == "schachteln":
+ end_origin = 3
+ return 11
+ else:
+ print("Diese Möglichkeit steht nicht zur Auswahl.\n"
+ "Bitte überprüfe deine Antwort nochmals.\n")
+ return 10
+ else:
+ return 100
+
+
+def ende():
+ global end_origin
+ if end_origin == 1:
+ print("Du hast entschieden dich im Schrank zu verstecken.\n"
+ "In dem Schrank in dem auch die Leiche ist.\n"
+ "Ob das wohl die richtige Entscheidung war?\n")
+ time.sleep(5)
+ print("Du drückst dich an den Schrank und bist so leise wie nur möglich.\n"
+ "Du hörst wie die schwarze Gestalt immer und immer näher kommt.\n"
+ "Sie lacht laut und sucht dich überall.\n"
+ "Sie kommt näher zum Schrank mit dem Messer voran.\n"
+ "Dann bleibt sie stehen.\n"
+ "Langsam öffnet sie die Schranktür.\n"
+ "Du blickst ihr direkt in die Augen.\n"
+ "Du schreist aber sie zeigt keine Gnade und ersticht dich kaltblütig.\n")
+ gameover()
+ return 0
+ elif end_origin == 2:
+ print("Du hast dich für das Bett entschieden\n"
+ "Unter dem Bett liegt ein Teppich\n"
+ "Ob da wohl etwas darunter ist, dass versteckt werden muss?\n")
+ print("Die schwarze Gestalt ist im Keller.\n"
+ "Du hast Todesangst. Sie sucht dich überall.\n")
+ if "messer" in inventory:
+ print("Du erinnerst dich an das Messer welches du im Badezimmer gefunden hast.\n")
+ n = uinput("Willst du mit dem Messer den Teppich aufschneiden?")
+ if n == "ja":
+ inventory.remove("messer")
+ return 13
+ if n == "nein":
+ print("Du hast keine andere wahl. Schneide den Teppich auf!!!")
+ return 11
+ else:
+ error()
+ return 11
+ else:
+ return 15
+ elif end_origin == 3:
+ print("Du hast dich für die Schachteln entschieden\n"
+ "Du machst dich so klein wie möglich und hoffst nicht entdeckt zu werden\n"
+ "Durch einen Spalt bei den Schachteln siehst du auf das Bett\n"
+ "Darunter fällt dir ein Teppich auf.\n"
+ "Es sieht aus als wäre darunter etwas versteckt.\n")
+ print("Du hörst wie die schwarze Gestalt den Keller betretet.\n"
+ "Voller Angst überlegst du wie du flüchten könntest.\n"
+ "Die schwarze Gestalt sucht dich überall.\n"
+ "Sie kommt langsam aber stetig immer näher zu den Schachteln.\n"
+ "Als die schwarze Gestalt einen kurzen Moment weg schaut,\n"
+ "läufst du so schnell du kannst zum Bett und versteckst dich dort\n")
+ if "messer" in inventory:
+ print("Du erinnerst dich an das Messer welches du im Badezimmer gefunden hast.\n")
+ n = uinput("Willst du mit dem Messer den Teppich aufschneiden?")
+ if n == "ja":
+ inventory.remove("messer")
+ return 13
+ if n == "nein":
+ print("Du hast keine andere wahl. Schneide den Teppich auf!!!")
+ return 2
+ else:
+ error()
+ return 11
+ else:
+ return 15
+ else:
+ return 99
+
+def mord():
+ print("\n"
+ "Du rennst so schnell du kannst zum Flur. \n"
+ "Du willst die Türe aufreissen und weglaufen.\n"
+ "Doch die Türe ist verschlossen!\n"
+ "Plötzlich spürst du das jemand hinter dir steht... \n"
+ "...du drehst langsam deinen Kopf\n"
+ "Die schwarze Gestalt steht hinter dir!\n"
+ "Sie ist voller Blut und lacht laut und bevor du reagieren kannst...\n"
+ "...sticht sie dir ein Messer kaltblütig in die Brust!\n")
+ time.sleep(5)
+ gameover()
+ return 0
+
+def flucht():
+ print("Unter dem Teppich ist tatsächlich etwas.\n"
+ "Eine geheime Öffnung im Boden!! Vielleicht ein Weg der hier weg führt?\n"
+ "Du Öffnest die Falltüre und springst nach unten.\n"
+ "Tatsächlich! Es sieht aus wie ein langer Gang\n"
+ "Das Problem ist nur... es ist stock dunkel.\n")
+ o = uinput("Nimm deine Lampe und zünde sie an! (lampe nehmen)\n")
+ if o == "lampe nehmen":
+ inventory.remove("lampe")
+ print("Du siehst nun genug für deine Flucht!\n")
+ print("Hinter dir hörst du schonwieder das Lachen der schwarzen Gestalt.\n"
+ "Du rennst so schnell du kannst!\n"
+ "Es ist kalt und nass in diesem Tunnel aber dir bleibt nichts anderes übrig.\n"
+ "Hier! Eine Leiter!\n"
+ "Du steigst die Leiter nach oben und öffnest die Falltüre.\n"
+ "Die schwarze Gestalt kommt immer näher!\n"
+ "Du kletterst hinaus und schliesst die Türe wieder.\n")
+ return 0
+ else:
+ error()
+ return 13
+
+def schock():
+ print("Du öffnest neugierig den Duschvorhang.\n"
+ "Die Badewanne.. sie.. sie ist.. voller Blut!\n"
+ "Du schreist und hast Angst. Du willst nur noch weg hier!\n"
+ "Doch nach kurzer Zeit fällt dir neben der Wanne etwas auf...\n"
+ "...ist das ein Schlüssel?")
+ h = uinput('Schlüssel aufheben oder liegen lassen?')
+ if h == "aufheben":
+ inventory.append("schlüssel")
+ print("Du hebst den Schlüssel auf.")
+ return 6
+ if h == "lassen":
+ visited("schlüssel")
+ return 6
+ else:
+ print("Dieser Befehl ist mir leider nicht bekannt :/\n"
+ "Bitte erneut versuchen.\n")
+ time.sleep(2)
+ return 14
+
+def mord_2():
+ print("Du hast kein Messer in deinem Rucksack.\n"
+ "Da du das Messer ohne Erfolg gesucht hast,\n"
+ "wurde die schwarze Gestalt auf dich aufmerksam.\n"
+ "Sie kommt immer näher in Richtung Bett und du hast\n"
+ "keine Möglichkeit mehr dich zu verstecken.\n"
+ "Die schwarze Gestalt zieht das Bett weg und sieht dir tief in die Augen.\n"
+ "Du schaust sie hilfeschreiend an aber das ist ihr egal.\n"
+ "Sie lacht laut los und sticht dir langsam mit dem Messer in die Brust.\n"
+ "Du verlierst das Bewusstsein und das letzte was du noch hörst,\n"
+ "ist das psychopathische Lachen.\n")
+ gameover()
+ return 0
+
+def glückwunsch():
+ print("Gratuliere!!! Du hast die Nacht überlebt und einen Ausweg aus dem Haus gefunden!\n"
+ "Du bist nun in einem Wald.\n"
+ "Nach langem umherirren hast du ein Dorf gefunden.\n"
+ "Die Leute dort waren sehr freundlich und haben dich zurück zu deinem Haus gebracht.\n"
+ "Zuhause hast du alles der Polizei erzählt.\n"
+ "Als die Polizei ankam war das Haus nicht mehr dort.\n"
+ "Ein Berg aus SChutt und Asche ist übrig geblieben.\n"
+ "Die schwarze Gestalt wurde bis heute nicht gefunden.\n")
+
+def main():
+ cover()
+ regeln()
+ einfuehrung()
+ grundriss()
+ eintreten()
+ next = 1
+ exit = 1
+ while next != 0:
+ if next == 1:
+ next = flur_1()
+ elif next == 2:
+ next = flur_2()
+ elif next == 3:
+ next = wohnzimmer()
+ elif next == 4:
+ next = schlafzimmer()
+ elif next == 5:
+ next = kueche()
+ elif next == 6:
+ next = badezimmer()
+ elif next == 7:
+ next = treppe()
+ elif next == 8:
+ next = keller()
+ elif next == 9:
+ next = schrank()
+ elif next == 10:
+ next = verstecken()
+ elif next == 11:
+ next = ende()
+ elif next == 12:
+ next = mord()
+ exit = 0
+ elif next == 13:
+ next = flucht()
+ elif next == 14:
+ next = schock()
+ elif next == 15:
+ next = mord_2()
+ exit = 0
+ else:
+ print("Es ist ein Fehler aufgetreten. Bitte Spiel neustarten. Exit code:", next)
+ next = 0
+ exit = 0
+ if exit == 1:
+ glückwunsch()
+ time.sleep(7)
+ abspann()
+
+main()
\ No newline at end of file