Upload code
This commit is contained in:
parent
71625e3e41
commit
07809d7d77
27
Animation/Animation_Simple.py
Executable file
27
Animation/Animation_Simple.py
Executable file
@ -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()
|
||||
|
26
Animation/Animation_dot.py
Executable file
26
Animation/Animation_dot.py
Executable file
@ -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()
|
||||
|
101
Animation/Animation_ship.py
Executable file
101
Animation/Animation_ship.py
Executable file
@ -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()
|
||||
|
32
Animation/Erde und Mond.py
Executable file
32
Animation/Erde und Mond.py
Executable file
@ -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()
|
||||
|
252
Animation/Main_hub.py
Executable file
252
Animation/Main_hub.py
Executable file
@ -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()
|
21
Animation/Viereck drehung.py
Executable file
21
Animation/Viereck drehung.py
Executable file
@ -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()
|
24
Animation/Wartesymbol.py
Executable file
24
Animation/Wartesymbol.py
Executable file
@ -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
|
BIN
Animation/earth.gif
Executable file
BIN
Animation/earth.gif
Executable file
Binary file not shown.
After Width: | Height: | Size: 2.0 KiB |
BIN
Animation/sun.gif
Executable file
BIN
Animation/sun.gif
Executable file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
3
ArrayOperations/Listenformatierung.py
Executable file
3
ArrayOperations/Listenformatierung.py
Executable file
@ -0,0 +1,3 @@
|
||||
inventory = ["Test", "Test2"]
|
||||
for item in inventory:
|
||||
print("*"+item)
|
347
Assembly/PC.dig
Executable file
347
Assembly/PC.dig
Executable file
@ -0,0 +1,347 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<circuit>
|
||||
<version>1</version>
|
||||
<attributes/>
|
||||
<visualElements>
|
||||
<visualElement>
|
||||
<elementName>Switch</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="620" y="440"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Switch</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="840" y="440"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>LightBulb</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="1"/>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="960" y="440"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>VDD</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="500" y="360"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Ground</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="1080" y="380"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Switch</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="620" y="560"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Switch</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="620" y="640"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>LightBulb</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="1"/>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="860" y="600"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>RelayDT</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="540" y="200"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>RelayDT</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>mirror</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="2"/>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="800" y="200"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="400" y="160"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Ground</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="660" y="100"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="2"/>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="980" y="160"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>LightBulb</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="1"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Color</string>
|
||||
<awt-color>
|
||||
<red>51</red>
|
||||
<green>51</green>
|
||||
<blue>255</blue>
|
||||
<alpha>255</alpha>
|
||||
</awt-color>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="660" y="200"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Ground</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="900" y="200"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>XOr</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="40" y="420"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="-60" y="420"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="-60" y="460"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>LED</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="180" y="440"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>PFET</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="260" y="800"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>NFET</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="260" y="900"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="120" y="860"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Ground</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="280" y="1000"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>VDD</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="280" y="740"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Out</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="380" y="860"/>
|
||||
</visualElement>
|
||||
</visualElements>
|
||||
<wires>
|
||||
<wire>
|
||||
<p1 x="500" y="560"/>
|
||||
<p2 x="620" y="560"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="660" y="560"/>
|
||||
<p2 x="740" y="560"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="500" y="640"/>
|
||||
<p2 x="620" y="640"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="660" y="640"/>
|
||||
<p2 x="740" y="640"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="580" y="160"/>
|
||||
<p2 x="660" y="160"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="400" y="160"/>
|
||||
<p2 x="460" y="160"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="800" y="160"/>
|
||||
<p2 x="980" y="160"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="660" y="160"/>
|
||||
<p2 x="760" y="160"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="160"/>
|
||||
<p2 x="540" y="160"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="220" y="800"/>
|
||||
<p2 x="260" y="800"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-60" y="420"/>
|
||||
<p2 x="40" y="420"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="660" y="440"/>
|
||||
<p2 x="840" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="880" y="440"/>
|
||||
<p2 x="960" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="500" y="440"/>
|
||||
<p2 x="620" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="1000" y="440"/>
|
||||
<p2 x="1080" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="100" y="440"/>
|
||||
<p2 x="180" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="740" y="600"/>
|
||||
<p2 x="860" y="600"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="900" y="600"/>
|
||||
<p2 x="1080" y="600"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="200"/>
|
||||
<p2 x="540" y="200"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="580" y="200"/>
|
||||
<p2 x="660" y="200"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="700" y="200"/>
|
||||
<p2 x="760" y="200"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="800" y="200"/>
|
||||
<p2 x="900" y="200"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-60" y="460"/>
|
||||
<p2 x="40" y="460"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="220" y="940"/>
|
||||
<p2 x="260" y="940"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="120" y="860"/>
|
||||
<p2 x="220" y="860"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="860"/>
|
||||
<p2 x="380" y="860"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="500" y="360"/>
|
||||
<p2 x="500" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="500" y="560"/>
|
||||
<p2 x="500" y="640"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="500" y="440"/>
|
||||
<p2 x="500" y="560"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="740" y="560"/>
|
||||
<p2 x="740" y="600"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="740" y="600"/>
|
||||
<p2 x="740" y="640"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="660" y="100"/>
|
||||
<p2 x="660" y="160"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="1080" y="380"/>
|
||||
<p2 x="1080" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="1080" y="440"/>
|
||||
<p2 x="1080" y="600"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="840"/>
|
||||
<p2 x="280" y="860"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="740"/>
|
||||
<p2 x="280" y="800"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="940"/>
|
||||
<p2 x="280" y="1000"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="280" y="860"/>
|
||||
<p2 x="280" y="900"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="160"/>
|
||||
<p2 x="460" y="200"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="220" y="800"/>
|
||||
<p2 x="220" y="860"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="220" y="860"/>
|
||||
<p2 x="220" y="940"/>
|
||||
</wire>
|
||||
</wires>
|
||||
<measurementOrdering/>
|
||||
</circuit>
|
391
Assembly/PC_2.dig
Executable file
391
Assembly/PC_2.dig
Executable file
@ -0,0 +1,391 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<circuit>
|
||||
<version>1</version>
|
||||
<attributes/>
|
||||
<visualElements>
|
||||
<visualElement>
|
||||
<elementName>PFET</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="660" y="280"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>NFET</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="660" y="380"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="520" y="340"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Ground</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="680" y="480"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>VDD</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="680" y="220"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Out</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="780" y="340"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Not</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="620" y="620"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="520" y="620"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Out1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="760" y="620"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Out2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-200" y="260"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>FGNFET</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="-340" y="300"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>PFET</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="-340" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>FGPFET</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="-440" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>FGNFET</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="-340" y="400"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-580" y="300"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-580" y="440"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>VDD</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="-320" y="60"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Ground</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="-320" y="520"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>NAnd</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-440" y="660"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Out3</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-240" y="680"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A3</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-560" y="620"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B3</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-560" y="760"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>NOr</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-440" y="900"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A4</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-560" y="860"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B4</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-560" y="1000"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Out4</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="-220" y="920"/>
|
||||
</visualElement>
|
||||
</visualElements>
|
||||
<wires>
|
||||
<wire>
|
||||
<p1 x="620" y="420"/>
|
||||
<p2 x="660" y="420"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-420" y="260"/>
|
||||
<p2 x="-320" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-320" y="260"/>
|
||||
<p2 x="-200" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-340" y="680"/>
|
||||
<p2 x="-240" y="680"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-560" y="1000"/>
|
||||
<p2 x="-440" y="1000"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="520" y="620"/>
|
||||
<p2 x="620" y="620"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="660" y="620"/>
|
||||
<p2 x="760" y="620"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-560" y="620"/>
|
||||
<p2 x="-480" y="620"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-580" y="300"/>
|
||||
<p2 x="-520" y="300"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="520" y="340"/>
|
||||
<p2 x="620" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="680" y="340"/>
|
||||
<p2 x="780" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-520" y="340"/>
|
||||
<p2 x="-340" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-520" y="180"/>
|
||||
<p2 x="-440" y="180"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-380" y="180"/>
|
||||
<p2 x="-340" y="180"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-480" y="660"/>
|
||||
<p2 x="-440" y="660"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="620" y="280"/>
|
||||
<p2 x="660" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-580" y="440"/>
|
||||
<p2 x="-380" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-380" y="440"/>
|
||||
<p2 x="-340" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-420" y="120"/>
|
||||
<p2 x="-320" y="120"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-560" y="760"/>
|
||||
<p2 x="-480" y="760"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-340" y="920"/>
|
||||
<p2 x="-220" y="920"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-480" y="700"/>
|
||||
<p2 x="-440" y="700"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-560" y="860"/>
|
||||
<p2 x="-440" y="860"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-420" y="220"/>
|
||||
<p2 x="-420" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-420" y="120"/>
|
||||
<p2 x="-420" y="180"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-520" y="180"/>
|
||||
<p2 x="-520" y="300"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-520" y="300"/>
|
||||
<p2 x="-520" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-440" y="940"/>
|
||||
<p2 x="-440" y="1000"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-440" y="860"/>
|
||||
<p2 x="-440" y="900"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="680" y="320"/>
|
||||
<p2 x="680" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="680" y="220"/>
|
||||
<p2 x="680" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="680" y="420"/>
|
||||
<p2 x="680" y="480"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="680" y="340"/>
|
||||
<p2 x="680" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-380" y="180"/>
|
||||
<p2 x="-380" y="440"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="620" y="280"/>
|
||||
<p2 x="620" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="620" y="340"/>
|
||||
<p2 x="620" y="420"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-320" y="220"/>
|
||||
<p2 x="-320" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-320" y="60"/>
|
||||
<p2 x="-320" y="120"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-320" y="440"/>
|
||||
<p2 x="-320" y="520"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-320" y="340"/>
|
||||
<p2 x="-320" y="400"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-320" y="120"/>
|
||||
<p2 x="-320" y="180"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-320" y="260"/>
|
||||
<p2 x="-320" y="300"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-480" y="620"/>
|
||||
<p2 x="-480" y="660"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="-480" y="700"/>
|
||||
<p2 x="-480" y="760"/>
|
||||
</wire>
|
||||
</wires>
|
||||
<measurementOrdering/>
|
||||
</circuit>
|
212
Assembly/PC_3.dig
Executable file
212
Assembly/PC_3.dig
Executable file
@ -0,0 +1,212 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<circuit>
|
||||
<version>1</version>
|
||||
<attributes/>
|
||||
<visualElements>
|
||||
<visualElement>
|
||||
<elementName>And</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="380" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>And</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="380" y="300"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Or</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="700" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Or</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="380" y="540"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>And</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="660" y="480"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Out1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="840" y="500"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Out2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="880" y="260"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="300" y="480"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="300" y="540"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>C1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="300" y="580"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="260" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="260" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>C2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="260" y="340"/>
|
||||
</visualElement>
|
||||
</visualElements>
|
||||
<wires>
|
||||
<wire>
|
||||
<p1 x="300" y="480"/>
|
||||
<p2 x="660" y="480"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="240"/>
|
||||
<p2 x="700" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="260" y="240"/>
|
||||
<p2 x="380" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="300" y="580"/>
|
||||
<p2 x="380" y="580"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="740" y="500"/>
|
||||
<p2 x="840" y="500"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="780" y="260"/>
|
||||
<p2 x="880" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="260" y="340"/>
|
||||
<p2 x="380" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="260" y="180"/>
|
||||
<p2 x="320" y="180"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="320" y="180"/>
|
||||
<p2 x="380" y="180"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="520"/>
|
||||
<p2 x="660" y="520"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="280"/>
|
||||
<p2 x="700" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="300" y="540"/>
|
||||
<p2 x="380" y="540"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="320" y="300"/>
|
||||
<p2 x="380" y="300"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="320" y="180"/>
|
||||
<p2 x="320" y="300"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="520"/>
|
||||
<p2 x="460" y="560"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="280"/>
|
||||
<p2 x="460" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="200"/>
|
||||
<p2 x="460" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="380" y="220"/>
|
||||
<p2 x="380" y="240"/>
|
||||
</wire>
|
||||
</wires>
|
||||
<measurementOrdering/>
|
||||
</circuit>
|
394
Assembly/Rechenwerk.dig
Executable file
394
Assembly/Rechenwerk.dig
Executable file
@ -0,0 +1,394 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<circuit>
|
||||
<version>1</version>
|
||||
<attributes/>
|
||||
<visualElements>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B0</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="1000" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Volladierer.dig</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="1040" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A0</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="960" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>LED</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>S0</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="1120" y="380"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="800" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Volladierer.dig</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="840" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="760" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>LED</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>S1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="920" y="380"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="600" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Volladierer.dig</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="640" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="560" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>LED</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>S2</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="720" y="380"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B3</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="400" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Volladierer.dig</elementName>
|
||||
<elementAttributes/>
|
||||
<pos x="440" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A3</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="360" y="180"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>LED</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>S3</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="520" y="380"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>LED</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>S4</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="320" y="380"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>I1</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="1000" y="280"/>
|
||||
</visualElement>
|
||||
</visualElements>
|
||||
<wires>
|
||||
<wire>
|
||||
<p1 x="1000" y="240"/>
|
||||
<p2 x="1040" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="1100" y="240"/>
|
||||
<p2 x="1120" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="800" y="240"/>
|
||||
<p2 x="840" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="900" y="240"/>
|
||||
<p2 x="920" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="600" y="240"/>
|
||||
<p2 x="640" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="700" y="240"/>
|
||||
<p2 x="720" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="400" y="240"/>
|
||||
<p2 x="440" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="500" y="240"/>
|
||||
<p2 x="520" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="440" y="320"/>
|
||||
<p2 x="740" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="820" y="320"/>
|
||||
<p2 x="1140" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="960" y="260"/>
|
||||
<p2 x="1040" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="760" y="260"/>
|
||||
<p2 x="840" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="560" y="260"/>
|
||||
<p2 x="640" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="360" y="260"/>
|
||||
<p2 x="440" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="500" y="260"/>
|
||||
<p2 x="540" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="900" y="260"/>
|
||||
<p2 x="940" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="700" y="260"/>
|
||||
<p2 x="740" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="1100" y="260"/>
|
||||
<p2 x="1140" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="320" y="340"/>
|
||||
<p2 x="540" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="620" y="340"/>
|
||||
<p2 x="940" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="620" y="280"/>
|
||||
<p2 x="640" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="820" y="280"/>
|
||||
<p2 x="840" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="1000" y="280"/>
|
||||
<p2 x="1040" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="960" y="180"/>
|
||||
<p2 x="960" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="1120" y="240"/>
|
||||
<p2 x="1120" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="800" y="180"/>
|
||||
<p2 x="800" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="320" y="340"/>
|
||||
<p2 x="320" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="740" y="260"/>
|
||||
<p2 x="740" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="1000" y="180"/>
|
||||
<p2 x="1000" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="360" y="180"/>
|
||||
<p2 x="360" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="520" y="240"/>
|
||||
<p2 x="520" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="620" y="280"/>
|
||||
<p2 x="620" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="940" y="260"/>
|
||||
<p2 x="940" y="340"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="560" y="180"/>
|
||||
<p2 x="560" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="720" y="240"/>
|
||||
<p2 x="720" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="400" y="180"/>
|
||||
<p2 x="400" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="820" y="280"/>
|
||||
<p2 x="820" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="1140" y="260"/>
|
||||
<p2 x="1140" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="760" y="180"/>
|
||||
<p2 x="760" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="920" y="240"/>
|
||||
<p2 x="920" y="380"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="600" y="180"/>
|
||||
<p2 x="600" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="440" y="280"/>
|
||||
<p2 x="440" y="320"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="540" y="260"/>
|
||||
<p2 x="540" y="340"/>
|
||||
</wire>
|
||||
</wires>
|
||||
<measurementOrdering/>
|
||||
</circuit>
|
210
Assembly/Volladierer.dig
Executable file
210
Assembly/Volladierer.dig
Executable file
@ -0,0 +1,210 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<circuit>
|
||||
<version>1</version>
|
||||
<attributes/>
|
||||
<visualElements>
|
||||
<visualElement>
|
||||
<elementName>XOr</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="580" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>And</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="480" y="360"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>And</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="820" y="360"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Or</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="600" y="520"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>XOr</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>wideShape</string>
|
||||
<boolean>true</boolean>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="900" y="220"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>A</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="340" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>B</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="340" y="280"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>In</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Cin</string>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="820" y="140"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>S</string>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="1040" y="240"/>
|
||||
</visualElement>
|
||||
<visualElement>
|
||||
<elementName>Out</elementName>
|
||||
<elementAttributes>
|
||||
<entry>
|
||||
<string>Label</string>
|
||||
<string>Cout</string>
|
||||
</entry>
|
||||
<entry>
|
||||
<string>rotation</string>
|
||||
<rotation rotation="3"/>
|
||||
</entry>
|
||||
</elementAttributes>
|
||||
<pos x="580" y="680"/>
|
||||
</visualElement>
|
||||
</visualElements>
|
||||
<wires>
|
||||
<wire>
|
||||
<p1 x="340" y="240"/>
|
||||
<p2 x="440" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="980" y="240"/>
|
||||
<p2 x="1040" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="440" y="240"/>
|
||||
<p2 x="580" y="240"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="500"/>
|
||||
<p2 x="560" y="500"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="600" y="500"/>
|
||||
<p2 x="800" y="500"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="660" y="260"/>
|
||||
<p2 x="780" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="780" y="260"/>
|
||||
<p2 x="900" y="260"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="340" y="280"/>
|
||||
<p2 x="480" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="480" y="280"/>
|
||||
<p2 x="580" y="280"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="820" y="220"/>
|
||||
<p2 x="900" y="220"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="480" y="280"/>
|
||||
<p2 x="480" y="360"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="560" y="500"/>
|
||||
<p2 x="560" y="520"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="800" y="440"/>
|
||||
<p2 x="800" y="500"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="820" y="140"/>
|
||||
<p2 x="820" y="220"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="820" y="220"/>
|
||||
<p2 x="820" y="360"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="580" y="600"/>
|
||||
<p2 x="580" y="680"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="440" y="240"/>
|
||||
<p2 x="440" y="360"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="600" y="500"/>
|
||||
<p2 x="600" y="520"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="460" y="440"/>
|
||||
<p2 x="460" y="500"/>
|
||||
</wire>
|
||||
<wire>
|
||||
<p1 x="780" y="260"/>
|
||||
<p2 x="780" y="360"/>
|
||||
</wire>
|
||||
</wires>
|
||||
<measurementOrdering/>
|
||||
</circuit>
|
10
C/Addierer.c
Executable file
10
C/Addierer.c
Executable file
@ -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);
|
||||
}
|
BIN
Concepts/TicTacToe_V2 Layout menu.docx
Executable file
BIN
Concepts/TicTacToe_V2 Layout menu.docx
Executable file
Binary file not shown.
BIN
Concepts/Zuweisungsnummer.docx
Executable file
BIN
Concepts/Zuweisungsnummer.docx
Executable file
Binary file not shown.
19
ExamStuff/Aufgabe 7 Prfg Spirale.py
Executable file
19
ExamStuff/Aufgabe 7 Prfg Spirale.py
Executable file
@ -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)
|
6
ExamStuff/Prüfung Testfile.py
Executable file
6
ExamStuff/Prüfung Testfile.py
Executable file
@ -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)
|
28
ExamStuff/prfg Aufgabe 8 Cross.py
Executable file
28
ExamStuff/prfg Aufgabe 8 Cross.py
Executable file
@ -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)
|
66
IO/Calculator.py
Executable file
66
IO/Calculator.py
Executable file
@ -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)
|
40
IO/Coinflip.py
Executable file
40
IO/Coinflip.py
Executable file
@ -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")
|
21
IO/Eingabe Umwandlung easy.py
Executable file
21
IO/Eingabe Umwandlung easy.py
Executable file
@ -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")
|
||||
|
||||
|
||||
|
111
IO/Frankengewinnspiel.py
Executable file
111
IO/Frankengewinnspiel.py
Executable file
@ -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()
|
39
IO/Idioms.py
Executable file
39
IO/Idioms.py
Executable file
@ -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")
|
13
IO/Input + outupt.py
Executable file
13
IO/Input + outupt.py
Executable file
@ -0,0 +1,13 @@
|
||||
import math
|
||||
|
||||
#Eingabe
|
||||
s = int(input("Seitenlänge: "))
|
||||
|
||||
|
||||
#Verarbeitung
|
||||
for i in range(s):
|
||||
print(s * "* ")
|
||||
|
||||
|
||||
|
||||
|
15
IO/Umwandlung Zahlensysteme.py
Executable file
15
IO/Umwandlung Zahlensysteme.py
Executable file
@ -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)
|
3
IO/Zeit des Lichts zur Erde.py
Executable file
3
IO/Zeit des Lichts zur Erde.py
Executable file
@ -0,0 +1,3 @@
|
||||
c = (1.4962375e8 / 2.99792458e5)/60
|
||||
|
||||
print(c)
|
10
IO/Zufall Not quite.py
Executable file
10
IO/Zufall Not quite.py
Executable file
@ -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)
|
125
RandomOtherStuff/Clock.py
Executable file
125
RandomOtherStuff/Clock.py
Executable file
@ -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()
|
6
RandomOtherStuff/Slicer.py
Executable file
6
RandomOtherStuff/Slicer.py
Executable file
@ -0,0 +1,6 @@
|
||||
data = "myprogram.exe"
|
||||
|
||||
datanew = data[:4]
|
||||
amount = len(datanew)
|
||||
amount //= 2
|
||||
print(datanew[amount])
|
21
RandomOtherStuff/Test.py
Executable file
21
RandomOtherStuff/Test.py
Executable file
@ -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()
|
4
RandomOtherStuff/Test_exe.py
Executable file
4
RandomOtherStuff/Test_exe.py
Executable file
@ -0,0 +1,4 @@
|
||||
from turtle import*
|
||||
import subprocess
|
||||
|
||||
subprocess.run(Kreis_zufall_pre.py)
|
15
RandomOtherStuff/Textverbinder.py
Executable file
15
RandomOtherStuff/Textverbinder.py
Executable file
@ -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
|
||||
|
||||
|
53
RandomOtherStuff/While_rekursion.py
Executable file
53
RandomOtherStuff/While_rekursion.py
Executable file
@ -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")
|
193
RandomOtherStuff/Wortraten spiel.py
Executable file
193
RandomOtherStuff/Wortraten spiel.py
Executable file
@ -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()
|
7
RandomOtherStuff/main.py
Executable file
7
RandomOtherStuff/main.py
Executable file
@ -0,0 +1,7 @@
|
||||
from turtle import *
|
||||
|
||||
for i in range(4):
|
||||
fd(100)
|
||||
right(90)
|
||||
|
||||
exitonclick()
|
BIN
RandomOtherStuff/testimage.gif
Executable file
BIN
RandomOtherStuff/testimage.gif
Executable file
Binary file not shown.
After Width: | Height: | Size: 5.9 MiB |
5
RandomOtherStuff/timetest.py
Executable file
5
RandomOtherStuff/timetest.py
Executable file
@ -0,0 +1,5 @@
|
||||
import time
|
||||
|
||||
print ("time.time(): %f " % time.time())
|
||||
print (time.localtime( time.time()))
|
||||
print (time.asctime( time.localtime(time.time())))
|
72
RandomTurtle/Binäruhr.py
Executable file
72
RandomTurtle/Binäruhr.py
Executable file
@ -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)
|
48
RandomTurtle/Digitale Uhr.py
Executable file
48
RandomTurtle/Digitale Uhr.py
Executable file
@ -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()
|
25
RandomTurtle/Dots.py
Executable file
25
RandomTurtle/Dots.py
Executable file
@ -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)
|
36
RandomTurtle/Eiskristall-Rekursion.py
Executable file
36
RandomTurtle/Eiskristall-Rekursion.py
Executable file
@ -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();
|
14
RandomTurtle/Halbkreis.py
Executable file
14
RandomTurtle/Halbkreis.py
Executable file
@ -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()
|
87
RandomTurtle/Huhn.py
Executable file
87
RandomTurtle/Huhn.py
Executable file
@ -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()
|
17
RandomTurtle/Kleeblatt.py
Executable file
17
RandomTurtle/Kleeblatt.py
Executable file
@ -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()
|
35
RandomTurtle/Kreis_zufall_pre.py
Executable file
35
RandomTurtle/Kreis_zufall_pre.py
Executable file
@ -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();
|
11
RandomTurtle/Progressbar.py
Executable file
11
RandomTurtle/Progressbar.py
Executable file
@ -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)
|
16
RandomTurtle/Striche.py
Executable file
16
RandomTurtle/Striche.py
Executable file
@ -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
|
||||
|
7
RandomTurtle/Test_while_rekursiojn.py
Executable file
7
RandomTurtle/Test_while_rekursiojn.py
Executable file
@ -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
|
187
RandomTurtle/TicTacToe.py
Executable file
187
RandomTurtle/TicTacToe.py
Executable file
@ -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!
|
||||
|
||||
""")
|
43
RandomTurtle/blume.py
Executable file
43
RandomTurtle/blume.py
Executable file
@ -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()
|
13
StringOperations/reverser.py
Executable file
13
StringOperations/reverser.py
Executable file
@ -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
|
||||
|
||||
|
577
TextAdventure/Adventure_Crash_neu.py
Executable file
577
TextAdventure/Adventure_Crash_neu.py
Executable file
@ -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()
|
871
TextAdventure/Adventure_Template (1).py
Executable file
871
TextAdventure/Adventure_Template (1).py
Executable file
@ -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()
|
871
TextAdventure/Adventure_Template (2).py
Executable file
871
TextAdventure/Adventure_Template (2).py
Executable file
@ -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()
|
820
TextAdventure/Adventure_Template.py
Executable file
820
TextAdventure/Adventure_Template.py
Executable file
@ -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()
|
582
TextAdventure/B737MAX Crash.py
Executable file
582
TextAdventure/B737MAX Crash.py
Executable file
@ -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()
|
BIN
TextAdventure/CRASH EINER B737MAX 8.docx
Executable file
BIN
TextAdventure/CRASH EINER B737MAX 8.docx
Executable file
Binary file not shown.
612
TextAdventure/FightDay TA.py
Executable file
612
TextAdventure/FightDay TA.py
Executable file
@ -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()
|
||||
|
18
TextAdventure/Mousechaser.py
Executable file
18
TextAdventure/Mousechaser.py
Executable file
@ -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('<Motion>', 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()
|
9
TextAdventure/Other Chaser.py
Executable file
9
TextAdventure/Other Chaser.py
Executable file
@ -0,0 +1,9 @@
|
||||
import turtle
|
||||
|
||||
screen = turtle.Screen()
|
||||
|
||||
def goto_loc(x, y):
|
||||
turtle.goto(x, y)
|
||||
|
||||
|
||||
screen.onscreenclick(goto_loc,1)
|
47
TextAdventure/Spiel Schiff.py
Executable file
47
TextAdventure/Spiel Schiff.py
Executable file
@ -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)
|
||||
|
||||
|
295
TextAdventure/Text Adventure.py
Executable file
295
TextAdventure/Text Adventure.py
Executable file
@ -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()
|
754
TextAdventure/The House.py
Executable file
754
TextAdventure/The House.py
Executable file
@ -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()
|
Loading…
x
Reference in New Issue
Block a user