Referenzen Problem
Verfasst: Montag 5. Juni 2006, 14:24
Code: Alles auswählen
import pygame
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((320, 240))
screen.fill((0,255,0))
square = pygame.Surface((10,10))
square.fill((0,0,255))
rect = pygame.Rect((0,0),square.get_size())
screen.blit(square, rect)
pygame.display.flip()
clock = pygame.time.Clock()
interpolators = {}
class interpolator:
def __init__(self):
pass
def update(self):
pass
class int_pos(interpolator):
def __init__(self, pos1, pos2, time):
interpolator.__init__(self)
self.time = time
self.pos1 = pos1
self.pos2 = pos2
self.etime = 0.0
def update(self):
self.etime += clock.get_time()
if self.etime > self.time:
return None
else:
return self.pos1 * ((self.etime - self.time)/self.time) + self.pos2 * (self.etime/self.time)
def update_interpolators():
a = []
for i in interpolators:
value = i.update()
if value is not None:
interpolators[i] = i.update()
else:
a.append(i)
for i in a:
del interpolators[i]
interpolators.update({int_pos(0, 100, 5000): rect.centerx})
while 1:
clock.tick(20)
update_interpolators()
print rect.centerx
screen.fill((0,255,0))
screen.blit(square, rect)
pygame.display.flip()
Weiß jemand Abhilfe?