Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/DrawableObjectTests/DynamicDrawableObject.py
diff options
context:
space:
mode:
authordavesilver <nibor123@gmail.com>2010-07-13 21:31:01 (GMT)
committer davesilver <nibor123@gmail.com>2010-07-13 21:31:01 (GMT)
commitd15907a2e1c7d8e1714c6140b8e93bdc98162a06 (patch)
treedc03ab7d09a07e40fe57fbc2ea1655fe52ed17e2 /DrawableObjectTests/DynamicDrawableObject.py
parent51e4c0c66ba5b24bce15b5f5baf2260bb22c795f (diff)
I updated the functionality to account for bad user input.
Diffstat (limited to 'DrawableObjectTests/DynamicDrawableObject.py')
-rwxr-xr-xDrawableObjectTests/DynamicDrawableObject.py76
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