Objekte automatisch erstellen
Verfasst: Dienstag 8. März 2022, 13:29
Liebe Python-Forum-Community,
vorweg: ich habe leider die Regeln nicht lesen können, da die Seite derzeit scheinbar nicht erreichbar ist und möchte daher im Vorfeld um Nachsicht bitten.
Ich habe bereits einige Threads durchgesehen, bin jedoch zu meinem Problem nicht fündig geworden. Falls ich einfach etwas übersehen habe, bin ich dankbar für einen Link zum entsprechenden Thread.
Ich habe vor ein Konsolenspiel zu schreiben, in dem man zu Beginn eine Abfrage hat wie viele Mitspieler an dem Spiel teilnehmen wollen. Die Spieler werden Reihum würfeln und dem Würfelergebnis (per randint erzeugt) erhalten sie einen Effekt bzw. Item etc. .
Ich habe mir überlegt ein Modul "Spiel.py" als Hauptprogramm zu erstellen und ein Modul "spieler.py" in dem die Funktion Spieler zu findne ist sowie ein Modul "wergerbnis" für die Funktionen der einzelnen Würfelergebnisse.
Im Hauptprogramm möchte ich mit dem folgenden Code beginnen:
Unter spieler.Spieler befindet sich die Klasse Spieler, in der ich den Bauplan für die Spieler definiert habe:
Leider habe ich einen kleinen Knoten im Kopf. Wie kann ich die Spieler unterscheiden? Ich sehe momentan keine Möglichkeit den 1., 2. oder 3. Spieler im Programm anzusprechen um z.B. eine Änderung des entsprechenden Spielerstatus vorzunehmen oder einem bestimmten Spieler etwas ins Inventar hinzuzufügen.
In meinen Gedanken habe ich irgendetwas übersehen. Bislang möchte ich, dass folgendes passiert, damit ich den "i_" Spieler als Objekt aufrufen kann:
[/code]
Vielleicht hat jemand von euch eine Idee, wo mein Fehler liegt und wie ich das möglicherweise beheben könnte.
Viele Grüße
Smarrel
vorweg: ich habe leider die Regeln nicht lesen können, da die Seite derzeit scheinbar nicht erreichbar ist und möchte daher im Vorfeld um Nachsicht bitten.
Ich habe bereits einige Threads durchgesehen, bin jedoch zu meinem Problem nicht fündig geworden. Falls ich einfach etwas übersehen habe, bin ich dankbar für einen Link zum entsprechenden Thread.
Ich habe vor ein Konsolenspiel zu schreiben, in dem man zu Beginn eine Abfrage hat wie viele Mitspieler an dem Spiel teilnehmen wollen. Die Spieler werden Reihum würfeln und dem Würfelergebnis (per randint erzeugt) erhalten sie einen Effekt bzw. Item etc. .
Ich habe mir überlegt ein Modul "Spiel.py" als Hauptprogramm zu erstellen und ein Modul "spieler.py" in dem die Funktion Spieler zu findne ist sowie ein Modul "wergerbnis" für die Funktionen der einzelnen Würfelergebnisse.
Im Hauptprogramm möchte ich mit dem folgenden Code beginnen:
Code: Alles auswählen
print("Hallo! Wie viele Spieler wollen mitspielen?")
mitspielerzahl = int(Eingabe_Spielerzahl())
print ("Mitspielerzahl: ", mitspielerzahl)
for i in range (1, mitspielerzahl+1):
spieler.Spieler()
Code: Alles auswählen
class Spieler:
def __init__(self):
self.nummer = int
self.inventar = []
self.status = 3 # Status des Spielers: 1 = tod , 2 = bewusstlos , 3 = lebendig
self.score = 0
def statuscheck(self):
if self.status == 1:
return ("tot")
elif self.status == 2:
return ("bewusstlos")
elif self.status == 3:
return ("lebendig")
def score(self):
return self.score
def print_inventory(self):
print("Inventory: ")
for item in self.inventar:
print('* ' + str(item))
In meinen Gedanken habe ich irgendetwas übersehen. Bislang möchte ich, dass folgendes passiert, damit ich den "i_" Spieler als Objekt aufrufen kann:
Code: Alles auswählen
for i in range (1, mitspielerzahl+1):
[i][b]i_[/b][/i]spieler.Spieler()
Vielleicht hat jemand von euch eine Idee, wo mein Fehler liegt und wie ich das möglicherweise beheben könnte.
Viele Grüße
Smarrel