Upload code

This commit is contained in:
2025-01-20 19:40:14 +01:00
parent 71625e3e41
commit 07809d7d77
66 changed files with 8917 additions and 0 deletions

View 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()

View 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()

View 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()

View 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
View 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()

Binary file not shown.

612
TextAdventure/FightDay TA.py Executable file
View 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
View 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
View 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
View 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
View 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
View 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()