changeset 178:74f8d8cbc51d

Longer, speedier mamba.
author Simon Cross <hodgestar@gmail.com>
date Wed, 14 Sep 2011 01:54:21 +0200
parents e0573297b17c
children 79fdae806ca5
files mamba/snake.py
diffstat 1 files changed, 6 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/mamba/snake.py	Wed Sep 14 01:45:41 2011 +0200
+++ b/mamba/snake.py	Wed Sep 14 01:54:21 2011 +0200
@@ -15,12 +15,10 @@
     def __init__(self, tile_pos, orientation):
         self.segments = self.create_segments(tile_pos, orientation)
         self.segment_group = Group()
-        self.segment_group.add(*self.segments)
+        self.segment_group.add(*reversed(self.segments))
         self.set_orientation(orientation)
-        self.speed = 60.0  # pixel / s
+        self.speed = 120.0  # pixel / s
         self.frac_ds = 0.0
-        self.segments = self.create_segments(tile_pos, orientation)
-        self.segment_group = Group(reversed(self.segments))
 
     head = property(fget=lambda self: self.segments[0])
     tail = property(fget=lambda self: self.segments[-1])
@@ -28,10 +26,10 @@
     def create_segments(self, tile_pos, orientation):
         tx, ty = tile_pos
         dx, dy = orientation
-        return [Head((tx, ty)),
-                Body((tx + dx, ty + dy)),
-                Tail((tx + 2 * dx, ty + 2 * dy)),
-                ]
+        segments = []
+        for cls in [Head] + [Body] * 10 + [Tail]:
+            segments.append(cls((tx, ty)))
+        return segments
 
     def draw(self, surface):
         self.segment_group.draw(surface)