comparison pytouhou/game/sprite.py @ 432:d4874ebaa06e

Split ANMRunner.run_frame into Sprite.update.
author Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>
date Sat, 10 Aug 2013 15:18:44 +0200
parents 40d5f3083ebc
children 723a3e67a223
comparison
equal deleted inserted replaced
431:77c0e9a53795 432:d4874ebaa06e
98 if (self.angle != angle_base or self.force_rotation != force_rotation): 98 if (self.angle != angle_base or self.force_rotation != force_rotation):
99 self.angle = angle_base 99 self.angle = angle_base
100 self.force_rotation = force_rotation 100 self.force_rotation = force_rotation
101 self.changed = True 101 self.changed = True
102 102
103
104 def update(self):
105 self.frame += 1
106
107 if self.rotations_speed_3d != (0., 0., 0.):
108 ax, ay, az = self.rotations_3d
109 sax, say, saz = self.rotations_speed_3d
110 self.rotations_3d = ax + sax, ay + say, az + saz
111 self.changed = True
112 elif self.rotation_interpolator:
113 self.rotation_interpolator.update(self.frame)
114 self.rotations_3d = self.rotation_interpolator.values
115 self.changed = True
116
117 if self.scale_speed != (0., 0.):
118 rx, ry = self.rescale
119 rsx, rsy = self.scale_speed
120 self.rescale = rx + rsx, ry + rsy
121 self.changed = True
122
123 if self.fade_interpolator:
124 self.fade_interpolator.update(self.frame)
125 self.alpha = int(self.fade_interpolator.values[0])
126 self.changed = True
127
128 if self.scale_interpolator:
129 self.scale_interpolator.update(self.frame)
130 self.rescale = self.scale_interpolator.values
131 self.changed = True
132
133 if self.offset_interpolator:
134 self.offset_interpolator.update(self.frame)
135 self.dest_offset = self.offset_interpolator.values
136 self.changed = True
137
138 if self.color_interpolator:
139 self.color_interpolator.update(self.frame)
140 self.color = self.color_interpolator.values
141 self.changed = True