Ich hab folgendes programmiert:
Code: Alles auswählen
import threading as th
import sys
############################################################################## VORBEREITUNG ########################################################################################################################################
sys.setrecursionlimit(90000)
screen=Screen()
turtle=Turtle()
screen.setup(1200,640)
turtle.begin_poly()
turtle.fd(5)
turtle.end_poly()
new=turtle.get_poly()
screen.register_shape("Schuss",new)
speicher=set()
############################################################################## VORBEREITUNG ########################################################################################################################################
#######SchussKlasse
class Schuss(th.Thread,Turtle):
def __init__(self,speicher,instanz):
self.instanz=instanz
th.Thread.__init__(self)
Turtle.__init__(self)
self.speicher=speicher
self.speicher.add(self)
print(self.speicher)
self.pu()
self.shape("Schuss")
self.leben=False
self.speed(0)
self.start()
def spawn(self,instanz):
self.ht() # verstecke Turtle
self.goto(instanz.pos())
self.setheading(instanz.heading())
self.st() # Turtle wird sichtbar
def streckeVor(self):
self.leben=True
self.speed(3)
for i in range(100):
self.fd(1) # Turtle geht um 1 Pixel vor, for schleife deswegen, weil ich nach jedem schuss später noch eine K
# Kollisionsabfragen machen will
def run(self):
self.spawn(self.instanz)
self.streckeVor()
class Spielfigur(Turtle):
def __init__(self,spieler,screen,speicher):
Turtle.__init__(self)
self.speicher=speicher
self.speicher.add(self)
self.screen=screen
self.pu()
print(self,"spawnt an Punkt",self.pos())
if spieler==True:
self.interactive()
def pos_(self):
self.x0=self.xcor()-11
self.y0=self.ycor()-11
self.x1=self.xcor()+11
self.y1=self.ycor()+11
return ((self.x0,self.y0),(self.x1,self.y1))
def fd_(self,distance=1):
self.fd(distance)
self.pos_()
print(self.pos_())
def lt_(self,degree=90):
self.lt(degree)
self.pos_()
print(self.pos_())
def rt_(self,degree=90):
self.rt(degree)
self.pos_()
print(self.pos_())
def bk_(self,distance=1):
self.bk(distance)
self.pos_()
print(self.pos_())
def schuss(self):
schuss=Schuss(self.speicher,self)
def interactive(self):
self.screen.onkeypress(self.fd_,"w")
self.screen.onkeypress(self.bk_,"s")
self.screen.onkeypress(self.rt_,"d")
self.screen.onkeypress(self.lt_,"a")
self.screen.onkeypress(self.schuss,"space")
screen=Screen()
screen.listen()
a=Spielfigur(True,screen,speicher)
Was soll ich machen, damit es funzt? Könnt ihr mir das sagen?? Und was hat es mit dieser Fehlermeldung auf sich