changeset 501:ed752233f1aa

Clamp distance moved per update to shorter side of tile.
author Simon Cross <hodgestar@gmail.com>
date Sat, 17 Sep 2011 23:41:01 +0200
parents 5fdeb338848e
children 243b6f6ced3b
files mamba/snake.py
diffstat 1 files changed, 4 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/mamba/snake.py	Sat Sep 17 23:32:21 2011 +0200
+++ b/mamba/snake.py	Sat Sep 17 23:41:01 2011 +0200
@@ -17,6 +17,9 @@
 
 class Snake(object):
 
+    # don't move more than one tile at once
+    MAX_DISTANCE = min(TILE_SIZE)
+
     def __init__(self, tile_pos, orientation):
         load_sound('crash', 'crash.ogg')
         self.segments = self.create_segments(tile_pos, orientation)
@@ -69,6 +72,7 @@
 
     def update(self, dt, world):
         ds = dt * self.speed + self.frac_ds
+        ds = min(ds, self.MAX_DISTANCE)
         ds, self.frac_ds = divmod(ds, 1)
         ds = int(ds)
         tile_state = self.head.get_tile_state()