Mercurial > touhou
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 |