changeset 151:06be025c821c

Use midbottom, rather than bottomleft, when changing fox frames
author Neil Muller <drnlmuller@gmail.com>
date Tue, 05 Apr 2011 20:17:08 +0200
parents a5ca417ee39a
children 60138b935bc0
files skaapsteker/sprites/player.py
diffstat 1 files changed, 5 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/skaapsteker/sprites/player.py	Tue Apr 05 19:50:46 2011 +0200
+++ b/skaapsteker/sprites/player.py	Tue Apr 05 20:17:08 2011 +0200
@@ -40,12 +40,12 @@
         if self._animation_frame >= len(images):
             self._animation_frame = 0.0
         if self.rect:
-            cur_pos = self.collide_rect.bottomleft
+            cur_pos = self.collide_rect.midbottom
         else:
             cur_pos = (0, 0)
         cand_image = images[int(self._animation_frame)]
         cand_collide_rect = cand_image.get_bounding_rect(1)
-        cand_collide_rect.bottomleft = cur_pos
+        cand_collide_rect.midbottom = cur_pos
         if cand_collide_rect.collidelist(self._recent_collisions) != -1 \
                 and self.collide_rect.collidelist(self._recent_collisions) == -1:
             # We introduce a new collision, so don't update the image
@@ -53,9 +53,9 @@
         self.image = images[int(self._animation_frame)]
         self.collide_rect = self.image.get_bounding_rect(1)
         self.rect = self.image.get_rect()
-        self.rect_offset = self.rect.left - self.collide_rect.left, self.rect.bottom - self.collide_rect.bottom
-        self.collide_rect.bottomleft = cur_pos
-        self.rect.bottomleft = cur_pos[0] + self.rect_offset[0], cur_pos[1] + self.rect_offset[1]
+        self.rect_offset = self.rect.centerx - self.collide_rect.centerx, self.rect.bottom - self.collide_rect.bottom
+        self.collide_rect.midbottom = cur_pos
+        self.rect.midbottom = cur_pos[0] + self.rect_offset[0], cur_pos[1] + self.rect_offset[1]
         self.init_pos()
 
     def update(self):