# HG changeset patch # User Emmanuel Gil Peyrot # Date 1326637346 -3600 # Node ID cb329dca4758b42c079e562a4f637944e7eda540 # Parent d3ba32a9096e77da031cf3b6e0f42f74716ff3d3 Use the correct behaviour for flag 1 in bullet. diff --git a/pytouhou/game/bullet.py b/pytouhou/game/bullet.py --- a/pytouhou/game/bullet.py +++ b/pytouhou/game/bullet.py @@ -114,11 +114,13 @@ class Bullet(object): def launch(self): self._launched = True - self.update = self.update_full self.set_anim() if self.flags & 1: self.speed_interpolator = Interpolator((self.speed + 5.,), 0, (self.speed,), 16) + self.update = self.update_speed + else: + self.update = self.update_full def collide(self): @@ -173,6 +175,18 @@ class Bullet(object): self.y += dy + def update_speed(self): + if self.speed_interpolator: + self.speed_interpolator.update(self.frame) + self.speed, = self.speed_interpolator.values + dx, dy = cos(self.angle) * self.speed, sin(self.angle) * self.speed + self.x, self.y = self.x + dx, self.y + dy + self.frame += 1 + else: + self.update = self.update_full + self.update() + + def update_full(self): sprite = self._sprite