diff mamba/widgets/game.py @ 186:275f0be6946c

Reincarnating Snakes
author Neil Muller <drnlmuller@gmail.com>
date Wed, 14 Sep 2011 16:28:03 +0200
parents 119c0fb758c2
children 926710da8854
line wrap: on
line diff
--- a/mamba/widgets/game.py	Wed Sep 14 16:26:52 2011 +0200
+++ b/mamba/widgets/game.py	Wed Sep 14 16:28:03 2011 +0200
@@ -5,6 +5,7 @@
 
 from mamba.widgets.base import Widget
 from mamba.snake import Snake
+from mamba.engine import SnakeDiedEvent
 
 
 class GameWidget(Widget):
@@ -28,7 +29,15 @@
             func, args = self.actions[ev.key]
             func(*args)
             return True
+        elif SnakeDiedEvent.matches(ev):
+            self.snake_died()
+            return True
 
     def draw(self, surface):
         self.world.update()
         self.world.draw(surface)
+
+    def snake_died(self):
+        # Restart
+        self.world.restart()
+        self.actions = self.create_action_map()