Habe ein kleines Spiel geschrieben welches Kreise zeichnet, die immer größer werden bis sie schließlich verschwinden.
Hier die Klasse der Kreise:
Code: Alles auswählen
kreisnummer = 1
kreise={}
class Kreis():
def __init__(self,x ,y, kreisnummer):
self.mittelpunkt = (x,y)
self.kreisnummer = kreisnummer
self.age = 1
self.color = (255,0,0) #red (r,g,b)
self.maxage = 50
def check(self):
self.age += 1
if self.age >= self.maxage:
return self.kreisnummer
else:
return None
neue Kreise entstehen nach Mausklick, und die Kreise werden in einem Directory verwaltet:
Code: Alles auswählen
while True:
for event in pygame.event.get():
if event.type == MOUSEBUTTONDOWN:
print event.pos
kreisnummer += 1
kreise[kreisnummer] = Kreis(event.pos[0], event.pos[1], kreisnummer)
Anschließend wird über diese Liste iteriert und alle "zu alten" Kreise im Directory werden gelöscht. Die verbliebenen Kreise werden gezeichnet:
Code: Alles auswählen
killnummern = []
for einKreis in kreise:
if kreise[einKreis].check() != None:
killnummern.append(kreise[einKreis].check())
for nummer in killnummern:
kreise.pop(nummer)
for einKreis in kreise:
pygame.draw.circle(screen, kreise[einKreis].color, kreise[einKreis].mittelpunkt, kreise[einKreis].age, 1)
mfg,
-Horst