diff options
author | davesilver <nibor123@gmail.com> | 2010-07-13 21:31:01 (GMT) |
---|---|---|
committer | davesilver <nibor123@gmail.com> | 2010-07-13 21:31:01 (GMT) |
commit | d15907a2e1c7d8e1714c6140b8e93bdc98162a06 (patch) | |
tree | dc03ab7d09a07e40fe57fbc2ea1655fe52ed17e2 /DrawableObjectTests/DynamicDrawableObject.py | |
parent | 51e4c0c66ba5b24bce15b5f5baf2260bb22c795f (diff) |
I updated the functionality to account for bad user input.
Diffstat (limited to 'DrawableObjectTests/DynamicDrawableObject.py')
-rwxr-xr-x | DrawableObjectTests/DynamicDrawableObject.py | 76 |
1 files changed, 49 insertions, 27 deletions
diff --git a/DrawableObjectTests/DynamicDrawableObject.py b/DrawableObjectTests/DynamicDrawableObject.py index 351aea1..2dc2234 100755 --- a/DrawableObjectTests/DynamicDrawableObject.py +++ b/DrawableObjectTests/DynamicDrawableObject.py @@ -28,22 +28,34 @@ class DynamicDrawableObject(DrawableObject, pygame.sprite.Sprite): def updateAnimation(self, t, animName):
- timePassed = t - self._last_update
- if timePassed > self._delay:
-
- if self._frame < self.animations.get(animName)[0] or self._frame > self.animations.get(animName)[1]:
-
- self._frame = self.animations.get(animName)[0]
-
- frameChanges = int(timePassed/self._delay)
- self._frame += frameChanges
- while self._frame >= self.animations.get(animName)[1]:
-
- framesPast = self._frame - self.animations.get(animName)[1]
- self._frame = framesPast - 1 + self.animations.get(animName)[0]
-
- self.image = self._images[self._frame]
- self._last_update = t
+ cnt = 0
+ while cnt < len(animations):
+
+ if animations[cnt] == animName:
+
+ timePassed = t - self._last_update
+ if timePassed > self._delay:
+
+ if self._frame < self.animations.get(animName)[0] or self._frame > self.animations.get(animName)[1]:
+
+ self._frame = self.animations.get(animName)[0]
+ else:
+
+ self._frame += 1
+
+ frameChanges = int(timePassed/self._delay)
+ self._frame += frameChanges
+ while self._frame >= self.animations.get(animName)[1]:
+
+ framesPast = self._frame - self.animations.get(animName)[1]
+ self._frame = framesPast - 1 + self.animations.get(animName)[0]
+
+ self.image = self._images[self._frame]
+ self._last_update = t
+
+ cnt = len(animations)
+
+ cnt += 1
def nextFrame(self):
@@ -57,14 +69,24 @@ class DynamicDrawableObject(DrawableObject, pygame.sprite.Sprite): def nextAnimFrame(self, animName):
- if self._frame < self.animations[animName][0] or self._frame > self.animations[animName][1]:
-
- self._frame = self.animations[animName][0]
-
- self._frame += 1
- if self._frame > self.animations[animName][1]:
-
- framesPast = self._frame - self.animations[animName][1]
- self._frame = framesPast - 1 + self.animations[animName][0]
-
- self.image = self._images[self._frame]
+ cnt = 0
+ while cnt < len(animations):
+
+ if animations[cnt] == animName:
+
+ if self._frame < self.animations[animName][0] or self._frame > self.animations[animName][1]:
+
+ self._frame = self.animations[animName][0]
+ else:
+ self._frame += 1
+
+ if self._frame > self.animations[animName][1]:
+
+ framesPast = self._frame - self.animations[animName][1]
+ self._frame = framesPast - 1 + self.animations[animName][0]
+
+ self.image = self._images[self._frame]
+
+ cnt = len(anmiations)
+
+ cnt += 1
|