ich habe ein Skript geschrieben wo noch Fehler drinne sind ich aber nicht weiss warum.
Auf die Verwendung des Skriptes wollte ich nicht detailliert eingehen, da die meisten wahrscheinlich noch nicht einmal von Rollenspiel und DSA gehört haben.
Mein Tool besteht aus zwei Python Dateien, die Hauptdatei und dem Modul Meditation.
Als Fehler bekomme ich Zeile 14(in der "hauptdatei.py") die Meldung Object not call able.
Wäre schön wenn einer mir sagen könnte was ich falsch gemacht habe.
Hier die "hauptdatei.py":
Code: Alles auswählen
#!/usr/bin/python
#Author:Markus Feldmann
import meditation
LE=28
LEMAX=LE
AE=46
AEMAX=AE
MU=13
IN=13
CH=13
KO=11
OBJ_MEDITATION=meditation.meditation()
OBJ_MEDITATION.speicher_stack_mit_allen_Werten(LE, LEMAX, AE, AEMAX, MU, IN, CH, KO)
Veraenderte_Werte=OBJ_MEDITATION.frage_den_benutzer()
print "Sie haben: \n", \
" LE= ",Veraenderte_Werte[0],"\n" \
" AE= ",Veraenderte_Werte[1],"\n"
Code: Alles auswählen
###Author:Markus Feldmann
class meditation:
def __init__(self):
self.erzeuge_stack_mit_allen_Attributen()
def erzeuge_stack_mit_allen_Attributen(self):
self.stack_Attribute=[0, 0, 0, 0, 0, 0, 0, 0]
def speicher_stack_mit_allen_Werten(self, LEalt, LEMAX, AEalt, AEMAX, MU, IN, CH, KO):
self.stack_Attribute=[LEalt, LEMAX, AEalt, AEMAX, MU, IN, CH, KO]
def frage_den_benutzer(self):
LEalt=self.stack_Attribute[0]
LEMAX=self.stack_Attribute[1]
AEalt=self.stack_Attribute[2]
AEMAX=self.stack_Attribute[3]
MU=self.stack_Attribute[4]
IN=self.stack_Attribute[5]
CH=self.stack_Attribute[6]
KO=self.stack_Attribute[7]
while 1:
print "**********************************************"
print "Es wird eine Astrale Meditation durchgefuehrt!"
print "**********************************************"
LEneu=LEalt
AEneu=AEalt-1
LEUMSETZEN=0
PROBAUSGLEICH=int(round(MU/2))
INPROB = int(raw_input("Bitte wuerfel IN-Probe: "))
CHPROB = int(raw_input("Bitte wuerfel CH-Probe: "))
KOPROB = int(raw_input("Bitte wuerfel KO-Probe: "))
if INPROB < IN:
pass
else:
PROBAUSGLEICH=PROBAUSGLEICH-abs(IN-INPROB)
if CHPROB < CH:
pass
else:
PROBAUSGLEICH=PROBAUSGLEICH-abs(CH-CHPROB)
if KOPROB < KO:
pass
else:
PROBAUSGLEICH=PROBAUSGLEICH-abs(KO-KOPROB)
if (PROBAUSGLEICH >= 0):
print "Probe geschafft! :-)\n", \
"Sie haben zur Zeit,\n", \
" LE=",LEneu," von",LEMAX,"\n" \
" AE=",AEneu," von",AEMAX,"\n"
LEUMSETZEN = int(raw_input("Wieviel Le umsetzen? : "))
if LEUMSETZEN>=LEneu:
print "Wollen Sie Harakierie begehen? Idiot!\n"
AEneu=AEneu+1
elif (AEneu+LEUMSETZEN)<=AEMAX:
LEneu=LEneu-LEUMSETZEN
AEneu=AEneu+LEUMSETZEN
print " LE=",LEneu
print " AE=",AEneu,"\n"
elif ((AEneu+LEUMSETZEN)<=AEMAX) and (LEUMSETZEN>LEneu):
print "Soviel Le haben Sie nicht mehr!\n"
AEneu=AEneu+1
elif ((AEneu+LEUMSETZEN)>AEMAX):
print "Sie wuerden mehr AE erhalten als ihr Max-Ae.Geht nicht!\n"
AEneu=AEneu+1
else:
print "Error: Unbekannte Bedingung bei LEUMSETZEN=...\n"
AEneu=AEneu+1
if (PROBAUSGLEICH < 0):
print "Probe vergeigt!"
print "Sie haben noch," \
" AE=",AEneu,"\n"
else:
print "Error: Variable PROBAUSGLEICH undefiniert.\n"
LEalt=LEneu
AEalt=AEneu
return [LEalt, AEalt]