changeset 1:a1f24a1a08d9

Add fridge and scrolling
author Radomir Dopieralski <sheep-devel@sheep.art.pl>
date Sat, 25 Aug 2012 19:01:52 +0200
parents 477669bc9733
children d64392b860dc
files deevo/__main__.py
diffstat 1 files changed, 21 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/deevo/__main__.py	Sat Aug 25 18:46:27 2012 +0200
+++ b/deevo/__main__.py	Sat Aug 25 19:01:52 2012 +0200
@@ -32,6 +32,7 @@
 
 class Sprite(pygame.sprite.Sprite):
     sheet_index = 0
+
     def __init__(self):
         super(Sprite, self).__init__()
         self.image = SHEET[self.sheet_index]
@@ -40,6 +41,7 @@
 
 class Shadow(Sprite):
     sheet_index = 2
+
     def __init__(self, whose, (ox, oy)):
         super(Shadow, self).__init__()
         self.image.set_alpha(64)
@@ -50,6 +52,18 @@
         self.rect.topleft = (self.whose.rect.x + self.ox,
                              self.whose.depth + self.oy)
 
+class Fridge(Sprite):
+    sheet_index = 4
+
+    def __init__(self, (x, y)):
+        super(Fridge, self).__init__()
+        self.rect.topleft = x, y
+        self.depth = y
+
+    def update(self):
+        if self.rect.right < 0:
+            self.rect.left = 800
+
 
 class Gunner(Sprite):
     sheet_index = 0
@@ -127,6 +141,7 @@
     shadows = pygame.sprite.RenderUpdates()
     gunner = Gunner()
     sprites.add(gunner)
+    sprites.add(Fridge((600, 10)))
     shadows.add(Shadow(gunner, (-16, 8)))
     while True:
         clock.tick(15)
@@ -137,6 +152,12 @@
         shadows.clear(screen, background)
         sprites.update()
         shadows.update()
+        if gunner.rect.right > 500:
+            dx = max(2, (gunner.rect.right-500)//4)
+            for sprite in sprites:
+                sprite.rect.right -= dx
+            for shadow in shadows:
+                shadow.rect.right -= dx
         dirty = shadows.draw(screen)
         dirty += sprites.draw(screen)
         pygame.display.update(dirty)