def __init__(self, obj, time_seconds, tween_type=Tweener().LINEAR): super(FadeOut,self).__init__() self.obj = obj self.time_seconds = time_seconds self.tweener = Tweener() self.tween_type = tween_type self.tween = None
def before_first_update(self, dt): self.tweener = Tweener() delta_x = self.final_x - self.pos.x delta_y = self.final_y - self.pos.y if self.relative: self.tweener.addTween(self.pos, x=self.final_x, y=self.final_y, tweenTime=self.t, tweenType=self.tween_type) else: self.tweener.addTween(self.pos, x=delta_x, y=delta_y, tweenTime=self.t, tweenType=self.tween_type)
class To(Animation): def __init__(self, position, x, y, t, tween_type=Tweener.LINEAR, relative=False): super(To, self).__init__() self.pos = position self.final_x = x self.final_y = y self.tween_type = tween_type self.relative = relative self.t = t def before_first_update(self, dt): self.tweener = Tweener() delta_x = self.final_x - self.pos.x delta_y = self.final_y - self.pos.y if self.relative: self.tweener.addTween(self.pos, x=self.final_x, y=self.final_y, tweenTime=self.t, tweenType=self.tween_type) else: self.tweener.addTween(self.pos, x=delta_x, y=delta_y, tweenTime=self.t, tweenType=self.tween_type) def do_update(self,dt): if self.tweener: self.tweener.update(dt) if not self.tweener.has_tweens(): self.done()