From f4f75358879a8e55463bb3a90138815d3278c7b7 Mon Sep 17 00:00:00 2001 From: u80864958 Date: Wed, 11 Dec 2024 10:07:05 +0100 Subject: [PATCH] working version --- .gitignore | 2 +- .idea/.gitignore | 3 - .../inspectionProfiles/profiles_settings.xml | 6 - .idea/lous-thing.iml | 15 -- .idea/misc.xml | 7 - .idea/modules.xml | 8 - .timer.toml | 3 + Abenteuer.py | 169 ++++++----------- BetterUtils.py | 173 ++++++++++++++++++ Texte.py | 88 +++++++-- Toolbox.py | 147 ++++++++------- colors.py | 18 -- main.py | 29 --- pyvenv.cfg | 5 - user.py | 21 --- 15 files changed, 388 insertions(+), 306 deletions(-) delete mode 100644 .idea/.gitignore delete mode 100644 .idea/inspectionProfiles/profiles_settings.xml delete mode 100644 .idea/lous-thing.iml delete mode 100644 .idea/misc.xml delete mode 100644 .idea/modules.xml create mode 100644 .timer.toml create mode 100644 BetterUtils.py delete mode 100644 colors.py delete mode 100644 main.py delete mode 100644 pyvenv.cfg delete mode 100644 user.py diff --git a/.gitignore b/.gitignore index 0cf8983..8b38a66 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,7 @@ __pycache__/ # C extensions *.so - +.idea # Distribution / packaging .Python build/ diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 26d3352..0000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml deleted file mode 100644 index 105ce2d..0000000 --- a/.idea/inspectionProfiles/profiles_settings.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - \ No newline at end of file diff --git a/.idea/lous-thing.iml b/.idea/lous-thing.iml deleted file mode 100644 index 5fdd65b..0000000 --- a/.idea/lous-thing.iml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml deleted file mode 100644 index fe31b11..0000000 --- a/.idea/misc.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index a21658e..0000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.timer.toml b/.timer.toml new file mode 100644 index 0000000..30685c3 --- /dev/null +++ b/.timer.toml @@ -0,0 +1,3 @@ +## dates and their corresponding seconds been here :) +[24-12-11] +u80864958_at_u80864958 = 8231 diff --git a/Abenteuer.py b/Abenteuer.py index 8808150..4a7822b 100644 --- a/Abenteuer.py +++ b/Abenteuer.py @@ -1,110 +1,59 @@ -##################### -# Autor:in: Taina Sophia Kreuzer -##################### - -from Toolbox import * -from Texte import * - -print() -print() -print() -print(disclaimer) -print () -print(einstieg) - -name= input(fragename) -spieler = Wesen(name) -ausrüstung= [akten, handy] -print (inventar1+name+inventar2) -zeigeListe(ausrüstung) -print(ziel1) -answer=input(frage1) - -pressForward() - -if (answer==ja): - print(aufzählunggrid) -elif (answer== nein): - print(gut) -print() -print(start) -print(indiz1) - -pressForward() - -verdächtigter1=input(vorraussetungantwort1) -if(verdächtigter1==lösungv1): - print(anfang) -else: - print (DNN) - verdächtigter1=input(vorraussetungantwort1) - if(verdächtigter1==lösungv1): - print(gut) - else: - print (DNN) - verdächtigter1=input(vorraussetungantwort1) - if(verdächtigter1==lösungv1): - print(endlich) - else: - print (DNN) - verdächtigter1=input(vorraussetungantwort1) - if (verdächtigter1==lösungv1): - print (wurdezeit) - else: - print(nötigertipp) - antworttipp1=input(nochmal2) - if(antworttipp1==lösungv1): - print(gedauert) - else: - AbenteuerAbbrechen() - -pressForward() - -print(texträtsel1) -print(rätsel1) -antwort1= input(WBI) -wiederholung= 1 -while (antwort1!=lösung1): - print (falsch) - if (wiederholung==2): - print(rätsel1tipp1) - if (wiederholung==4): - print(rätsel1tipp2) - antwort1= input(WBI) - wiederholung= wiederholung +1 -print (klopfen) -print (totobüro) - -pressForward() - -print(texträtsel2) -print(rätsel2) -antwort2= input(WBI) -while (antwort2!=lösung2): - print (falsch) - antwort1= input(WBI) -print(vasseurtext) - -pressForward() - -print(nächsterlead) -guess= input(letzteverdächtigte) -while (guess!=lösung3): - print (nöperson) - antwort1= input(guess) -print(belohung) - -pressForward() - -print (rätsel3) -antwort3= input(WBI) -while (antwort3!=lösung4): - print (nochmal) - antwort1= input(WBI) -print(ende) - -pressForward() - -print(theend) -print(theend2) -print(theend3) \ No newline at end of file +import Texte as t +import Toolbox as tb +import BetterUtils as u + +print(t.welcome_message) + +# setup Characters +user = u.User() +interest = u.RomanticInterest(user.preference, u.generateAge(user.age)) + +# meet interest +t.meet_cute() +tb.pressForward() +interest.introduce() +tb.pressForward() +print(t.situation_head_over_heels) +tb.pressForward() + +# First choice +print(t.ask_what_you_do) +action = u.wähleAusListe([ + t.action_throw_book, + t.action_introduce_self, + t.action_ask_age, +]) + +user.do_action(action) +tb.pressForward() +interest.react_to(action) + + +## Second choice +print(t.ask_what_you_do) +action = u.wähleAusListe([ + t.action_dance, + t.action_ask_for_number, + t.action_tell_compliment, +]) +user.do_action(action) +tb.pressForward() +interest.react_to(action) + +# Third Choice +print(t.ask_what_you_do) +action = u.wähleAusListe([ + t.action_invite_to_date, + t.action_hug_out_of_blue, + t.action_send_dickpic, +]) + +user.do_action(action) +tb.pressForward() +interest.react_to(action) + +u.showStats(interest) +if interest.is_won(): + print(t.won_message) +else: + print(t.loose_message) diff --git a/BetterUtils.py b/BetterUtils.py new file mode 100644 index 0000000..70bad2a --- /dev/null +++ b/BetterUtils.py @@ -0,0 +1,173 @@ +import time +import random +import math +import Toolbox as tb +import Texte as t + +# Colorize, made with help from Niklas +MAGENTA = "\033[35m" +BLUE = "\033[34m" +RESET = "\033[0m" # called to return to standard terminal text color + + +def blue(s): + return BLUE + s + RESET + + +def magenta(s): + return MAGENTA + s + RESET + + +def wähleAusListe(listeDerOptionen): + """Lässt Benutzer*innen eine Option aus einer Liste auswählen und gibt die gewählte Option zurück.""" + auswahl = tb.wähleAusListe(listeDerOptionen) + return listeDerOptionen[auswahl - 1] + + +def askUser(question): + while True: + answer = input(question + " ") + if answer != "": + return answer + + +# generate Age using Wää formula +def askUserInt(question): + while True: + try: + return int(askUser(question + " ")) + except: + print(t.err_not_a_number) + + +def generateAge(interest_age): + min = int((interest_age / 2) + 7) + max = int((interest_age - 7) * 2) + print(min) + print(max) + return tb.randomInRange(min, max) + + +def showStats(intrest): + print("You got " + str(intrest.rom_points) + " of "+str(intrest.rom_goals)+" rom points") + + +class RomanticInterest: + def __init__(self, gender, age): + self.name = random.choice(t.names.get(gender, t.names[t.gender_other])) + self.gender = gender + self.age = age + self.rom_goals = 200 + self.rom_points = 50 + + def introduce(self): + print(magenta("oh...")) + print(magenta("Hallo du!")) + time.sleep(0.7) + print(magenta("Mein name ist " + self.name + ".")) + time.sleep(0.5) + + ## only print pronouns if nonbinary otherwise clear from name + if self.gender == t.gender_other: + print("Und BTW meine Pronomen sind: they/them.") + + def react_to(self, action): + """ + call this function to react to a action defined in texte + """ + # first choice + if action == t.action_ask_age: + print(magenta("Ich bin " + str(self.age) + " jahre alt!")) + self.rom_points -= 20 + elif action == t.action_throw_book: + print(magenta(t.situation_get_hurt_bad)) + self.rom_points -= 100 + elif action == t.action_introduce_self: + print(magenta("Hallo du")) + self.rom_points += 50 + # second choice + elif action == t.action_dance: + print(magenta(t.situation_wierd_cute)) + self.rom_points += 50 + elif action == t.action_ask_for_number: + ## It depends on achieved rompoints + if self.rom_points > 100: + print(magenta(t.situation_accept)) + self.rom_points += 50 + elif self.rom_points > 0: + print(magenta(t.situation_decline_friendly)) + else: + print(magenta(t.situation_decline_agressive)) + self.rom_points -= 100 + elif action == t.action_tell_compliment: + print(magenta(t.situation_recieve_compliment)) + self.rom_points += 100 + # third choice + elif action == t.action_invite_to_date: + ## It depends on achieved rompoints + if self.rom_points > 150: + print(magenta(t.situation_accept)) + self.rom_points += 100 + elif self.rom_points > 50: + print(magenta(t.situation_decline_friendly)) + else: + print(magenta(t.situation_decline_agressive)) + self.rom_points -= 100 + elif action == t.action_hug_out_of_blue: + ## It depends on achieved rompoints + if self.rom_points > 100: + print(magenta(t.situation_hug_back)) + self.rom_points += 100 + elif self.rom_points > 50: + print(magenta(t.situation_stand_akward)) + self.rom_points -= 20 + else: + print(magenta(t.situation_react_to_inapropriate)) + self.rom_points -= 100 + + self.rom_points -= 10000 + print(magenta(t.situation_react_to_inapropriate)) + elif action == t.action_send_dickpic: + self.rom_points -= 10000 + print(magenta(t.situation_react_to_inapropriate)) + + def is_won(self): + return self.rom_points > self.rom_goals + + +class User: + def __init__(self): + self.name = askUser(t.ask_name) + self.age = askUserInt(t.ask_age) + print(t.ask_sexual_preference) + self.preference = wähleAusListe([ + t.gender_male, + t.gender_female, + t.gender_other, + ]) + + def __str__(self): + return self.name + str(self.age) + self.preference + + def do_action(self, action): + # first choice + if action == t.action_ask_age: + print(blue(t.ask_age)) + elif action == t.action_throw_book: + print(blue(t.situation_throw_book)) + elif action == t.action_introduce_self: + print(blue("Hallo")) + # Second Choice + elif action == t.action_dance: + print(blue(t.situation_dance)) + elif action == t.action_ask_for_number: + print(blue(t.situation_ask_for_number)) + elif action == t.action_tell_compliment: + print(blue(t.situation_tell_compliment)) + # Third choice + elif action == t.action_invite_to_date: + print(blue(t.situation_ask_for_date)) + elif action == t.action_hug_out_of_blue: + print(blue(t.situation_hug)) + elif action == t.action_send_dickpic: + print(blue(t.situation_send_dickpic)) diff --git a/Texte.py b/Texte.py index 9648688..f58349a 100644 --- a/Texte.py +++ b/Texte.py @@ -3,39 +3,96 @@ Hier können Sie Ihre Texte aufschreiben. Das hat den Vorteil, dass der Code Ihres Abenteuers übersichtlicher wird. Verwenden Sie selbsterklärende Variablennamen. """ + import time -welcome_message="Willkommen in Delulu-World!!\nDie virtuelle Welt der Wahnhaften." +welcome_message = "Willkommen in Deloulou-World!!\nDie virtuelle Welt der Wahnhaften." +won_message = "Du hast es geschafft" +loose_message = "Du hast leider verloren" + +ask_name = "Was ist dein Name?" +ask_age = "Wie alt bist du?" +ask_sexual_preference = "Was ist deine Preferenza?" +ask_what_you_do = "Was machst du?" +ask_for_date = "Willst du vielleicht mit mir, naja mal was machen?" -ask_name="Was ist dein Name?" -ask_age="Was alter?" -ask_sexual_preference="was du bums?" -ask_what_you_do="Was mchst du?" def meet_cute(): - print(""" + print(""" Du bist in einer öffentlichen Bibliothek. Du hast einen Haufen Bücher, den dir deine Sicht verdeckt, also siehst du die Person die dir entgegen kommt nicht. """) - time.sleep(1.5) - print("WUUUUMMMMMMSSS") - -situation_head_over_heels=""" + time.sleep(1.5) + print("WUUUUMMMMMMSSS") + + +situation_head_over_heels = """ Dir fehlen die Worte. Noch nie ist dir eine solch atemberaubende Person ins Leben getreten. Schnell, deine Traumperson wartet auf eine Antwort! """ - situation_throw_book = """ Du wirfst dein Buch!!! """ +situation_dance = """ +Du kramst aus deiner Tasche dein Telefon und Stellst musik an: +"I like to move it move it" +"I like to move it move it..." + +Zu diesen wundersamen Klängen bewegst du dich selbst schwungvoll. +""" +situation_send_dickpic = """ +Du begiebst dich auf die Toilete und Klick! Schon hast du das Photo gemacht +und Schwups, schon gesendet. +""" +situation_tell_compliment = """ +Du liest "Rosenkranz und Güldenstern"? +Da hat ja mal jemand Geschmack! +""" +situation_ask_for_number = """ +Darf ich fragen was deine Telefon nummer ist? +""" +situation_ask_for_date = """ +Mochtest du vielleicht, naja mal eventuell was mit mir unternehmen?" +""" + +situation_wierd_cute = """ +Hehe, Okey? Das hat noch nie jemand für mich gemacht, aber somewhat cute. +""" +situation_hug = """ +*Du setzt einen Fuss nach vorne und umarmst dein Gegenüber.* +""" +situation_hug_back = """ +Aww *Dein Gegenüber umarmt dich auch. +""" + +situation_stand_akward = """ +*Deinem Gegenüber ist es sichtlich unangenehm* +""" + + +situation_recieve_compliment = "Oh, *streicht sich durch's haar * Merci <3" situation_get_hurt_bad = "Aua, was soll das!?!" +situation_react_to_inapropriate = "WTF, DU SCHWEIN, VERZIEHDICH!!!!!" +situation_decline_agressive = "Nein, damit hättest du auch noch warten können!" +situation_decline_friendly = "Lieber nicht." +situation_accept = "Ou ja, das würde mich freuen." + action_throw_book = "Werfe dein buch nach der Person." action_introduce_self = "Stelle dich selbst vor." action_ask_age = "Wie alt bist du?" -gender_male="Mänlich" -gender_female="Weiblich" -gender_other="Nonbinär" +action_dance = "Führe einen lustigen tanz auf." +action_ask_for_number = "Frage nach der Telefon nummer." +action_tell_compliment = "Mache ein Kompliment" + +action_invite_to_date = "Frage die Person, ob sie etwas mit dir unternehmen möchte." +action_hug_out_of_blue = "Umarme dein Gegenüber." +action_send_dickpic = "Schicke ein unanständiges bild ;)" + + +gender_male = "Mänlich" +gender_female = "Weiblich" +gender_other = "Nonbinär" names = { gender_male: ["Hans", "Peter", "Mika", "Ueli"], @@ -43,4 +100,5 @@ names = { gender_other: ["Kim", "Sky", "Raven"], } -err_not_a_number="Bitte gib nummere" \ No newline at end of file +err_not_a_number = "Bitte eine nummer eingeben." + diff --git a/Toolbox.py b/Toolbox.py index 27bfea7..92db179 100644 --- a/Toolbox.py +++ b/Toolbox.py @@ -1,8 +1,3 @@ -import time -from colors import MAGENTA, BLUE, RESET - -from Texte import * - """" Hier finden Sie Funktionen, die Sie für Ihr eigenes Abenteuer nutzen können. Die Funktionen sind auch auf OneNote dokumentiert. @@ -10,59 +5,55 @@ Die Funktionen sind auch auf OneNote dokumentiert. import random - -def randomInRange(untergrenze, obergrenze): +def randomInRange (untergrenze,obergrenze): """Generiert einen zufälligen Wert innerhalb vorgegebener Grenzen""" - return random.randint(untergrenze, obergrenze) + return random.randint(untergrenze,obergrenze) +def randomItem (): + """Wählt einen zufälligen Gegenstand aus einer vordefinierten Liste aus.""" + möglicheGegenstände = ["holzpflocksichere Weste","Anti-Knoblauch-Spray","Noten-Booster","Nachsitz-Stellvertreter*in","Gummibärli mit veganer Gelatine","Hausaufgaben-Weg!-Zauber","Sportunterricht-Schwänz-Ausreden-Generator","Dauer-Abo für Programmier-Lern-Videos","nasse-Schwämme-Kanone, unsichtbar für Lehrsonen","vom-Bett-direkt-ins-Schulzimmer-Beamer","Hausaufgaben-Butler","langweilige Informatik-Lektion (äusserst selten!!!)","Monster-Lexikon","Friedens-Panzer","privater Mensa-Tisch mit unendlich Dessert","ewige Jugend","Mute-Schalter für Erwachsene","Thermo-Mix","Lösungen für alle Prüfungen ever","1 Tonne Kaugummi mit Salat-Geschmack","solarbetriebenes Karton-Uboot","Übersetzungsgerät Katzen->Menschen","Hausstaub","Ersatz-Schuebändel","sehr effizientes Reinigungsmittel","Buch 1001 lustige Mathe-Rätsel","10-bändige Enzyklopädie des schweizerdeutschen Humors","3-zinkige Gabel","Löffel mit eingebautem Lautsprecher","Staubsauger, der dich versteht","personalisierbares WC-Papier","Velo mit Gartenschlauch-Anschluss","Laserschwert-Schärfer","Pickel-Erzeugungs-Crème","elegante Wanderschuhe","interstellare Raumfähre für Würmer","Bücherwurm-Komposter","nimmermüdes Murmeltier","Regenbogen produzierende Sonnenbrille","Sichtbarmachende Unsichtbarkeitsbrille","Pflanzenwachstums-Beschleunigungs-Spray","Gedankenlesende Haarbürste","Selbstreinigendes Geschirr","Automatischer Unterrichts-Versteher","Unzerbrechliche Seifenblase","Universale Fernbedienung für alles","Portabler Schwarzes Loch Müllschlucker"] + return random.choice(möglicheGegenstände) -def testeObInListe(liste, ding): +def testeObInListe (liste, ding): """Überprüft, ob ein Element in einer Liste vorhanden ist und gibt entsprechend Rückmeldung""" if ding in liste: return True - else: - print("Leider existiert", ding, "nicht - jedenfalls nicht hier...") + else: + print("Leider existiert",ding,"nicht - jedenfalls nicht hier...") return False - -def zeigeListe(listeDerOptionen): +def zeigeListe (listeDerOptionen): """Zeigt eine Liste von Optionen nummeriert an.""" for i, element in enumerate(listeDerOptionen): - print(f"{i + 1}. {element}") - + print(f"{i+1}. {element}") def wähleAusListe(listeDerOptionen): """Lässt Benutzer*innen eine Option aus einer Liste auswählen und gibt die gewählte Option zurück.""" zeigeListe(listeDerOptionen) - + # Eingabe der gewünschten Option durch den Nutzer auswahl = int(input("Für welche Option entscheiden Sie sich?")) - + # Überprüfung, ob die eingegebene Option wählbar ist if auswahl < 1 or auswahl > len(listeDerOptionen): print("Ungültige Auswahl. Bitte versuchen Sie es erneut.") return wähleAusListe(listeDerOptionen) else: - # return element not number - return listeDerOptionen[auswahl - 1] - + return auswahl def pressForward(): """Hält das Ausführend des Programms an, bis der Benutzer eine Taste drückt.""" - input("\n-----------Drücke eine beliebige Taste fürs Weiterfahren.-----------") + input("\n-----------Drücken Sie eine beliebige Taste fürs Weiterfahren.-----------") - -# Why Pascal case??? def AbenteuerAbbrechen(): """Beendet das Abenteuer vorzeitig und bricht die Ausführung des Programms ab.""" print("Das Spiel ist leider zu Ende.") exit() - def AbenteuerEnde(): """Markiert das erfolgreiche Ende des Abenteuers.""" print("Nach zahlreichen Strapazen haben Sie es geschafft!") - pressForward() + pressForward() print("Sie sind rechtzeitig in die heutige Informatik-Lektion gekommen!") pressForward() print("Mit einem seligen Lächeln geben Sie sich den spannenden Inhalten hin :-)") @@ -70,54 +61,74 @@ def AbenteuerEnde(): print("::::::::::::::::THE END::::::::::::::::") -def blue(s): - return BLUE + s + RESET +class Wesen (): + def __init__(self, name): + self.name = name + self.lebenspunkte = 100 + self.kraft = randomInRange(3,6) # randomisierte Kraft zur Instanziierung, um Spielablauf weniger berechenbar zu gestalten + self.besitz = self.besitz = [randomItem()] + def stelltSichVor(self): + """Stellt das Wesen vor und zeigt dessen Besitz.""" + print("Name:\t\t",self.name) + print("Folgendes ist im Besitz von ",self.name,":") + zeigeListe(self.besitz) # Aufruf einer weiteren Funktion (zeigeListe) + pressForward() + + def bekommtEtwas (self, beschreibung): + """Fügt der Besitzliste des Wesens ein neues Item hinzu.""" + self.besitz.append(beschreibung) + print(self.name,"besitzt jetzt",beschreibung) -def magenta(s): - return MAGENTA + s + RESET + def gibtEtwasAn (self, nehmer, beschreibung): + """Ermöglicht die Übergabe von Gegenständen zwischen zwei Wesen.""" + print(self.name,"gibt",beschreibung,"an",nehmer.name) + if testeObInListe (self.besitz,beschreibung)==False: + print("\nOh",self.name,"hat gar kein",beschreibung,":-(") + else: + nehmer.bekommtEtwas(beschreibung) + self.besitz.remove(beschreibung) + pressForward() + def kämpftMit (self, anderesWesen, anzahlRunden): + """Lässt zwei Wesen über eine bestimmte Anzahl von Runden miteinander kämpfen.""" + print("\n",self.name,"und",anderesWesen.name,"kämpfen!") -def askUser(question): - while True: - answer = input(question + " ") - if answer != "": - return answer + # Hier werden 4 Funktionen innerhalb einer Funktion definiert. + # Das ist dann sinnvoll, wenn diese Funktion nirgends sonst verwendet werden. + # Falls später z.B. der Verlierer dem Gewinner einen Gegenstand gibt, kann das unkompliziert ergänzt werden - ohne den übrigen Code zu verändern. + def kämpfen (fig1, fig2): # fig1=verteidiger, fig2= angreifer + if testeObBeideLeben(self, anderesWesen): + angriffsstärke = randomInRange(1,10) * fig2.kraft + print(fig2.name,"greift",fig1.name,"mit",angriffsstärke,"an.") + fig1.lebenspunkte=fig1.lebenspunkte-angriffsstärke + statusbericht(fig1) + def statusbericht (wesen): + print("Lebenspunkte von",wesen.name,":\t",wesen.lebenspunkte) -def askUserInt(question): - while True: - try: - return int(askUser(question + " ")) - except: - print(err_not_a_number) + def kampfBeenden(self): + print("\nDer Kampf zwischen",self.name,"und",anderesWesen.name,"ist zu Ende.") + if self.lebenspunkte > anderesWesen.lebenspunkte: + print(self.name,"hat gewonnen!") + else: + print(self.name,"hat verloren.") + + def testeObBeideLeben(self, anderesWesen): + if self.lebenspunkte > 0 and anderesWesen.lebenspunkte > 0: + return True -class RomanticInterest(): - def __init__(self, gender): - self.name = random.choice(names.get(gender, names[gender_other])) - self.gender = gender - self.rom_goals = 200 - self.rom_points = 50 - - def introduce(self): - print(magenta("oh...")) - print(magenta("Hallo du!")) - time.sleep(0.7) - print(magenta("Mein name ist " + self.name + ".")) - time.sleep(0.5) - - ## only print pronouns if nonbinary otherwise clear from name - if self.gender == gender_other: - print("Und BTW meine Pronomen sind: they/them.") - - def react_to(self, action): - if action == action_ask_age: - print(magenta("Ich bin 17 jahre alt!")) - self.rom_points -= 20 - elif action == action_throw_book: - print(magenta(situation_get_hurt_bad)) - self.rom_points -= 100 - elif action == action_introduce_self: - print(magenta("Hallo du")) - self.rom_points += 50 + # Es folgt nun in den nächsten Zeilen der eigentliche Kampf. + # Durch die Verwendung von Funktionen wird es sehr übersichtlich! + statusbericht(self) + statusbericht(anderesWesen) + rundenZähler = 1 + anzahlRunden +=1 + while (rundenZähler