changeset 111:0c1005c76c87

More worldify.
author Simon Cross <hodgestar@gmail.com>
date Sun, 11 Sep 2011 20:26:59 +0200
parents e6299eb296ce
children 62a705f4e876
files mamba/habitats/level.py mamba/snake.py mamba/widgets/level.py mamba/world.py
diffstat 4 files changed, 12 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/mamba/habitats/level.py	Sun Sep 11 20:17:53 2011 +0200
+++ b/mamba/habitats/level.py	Sun Sep 11 20:26:59 2011 +0200
@@ -5,7 +5,7 @@
 from mamba.constants import ESCAPE_KEYS
 from mamba.engine import Habitat, NewHabitatEvent
 from mamba.world import World
-from mamba.widgets.level import LevelWidget
+from mamba.widgets.level import GameWidget
 from mamba.snake import Snake
 from mamba.level import Level
 
@@ -14,10 +14,11 @@
     def __init__(self, level_name):
         super(LevelHabitat, self).__init__()
         level = Level(level_name)
-        level_widget = LevelWidget(level)
-        self.container.add(level_widget)
+        self.world = World(level)
+        game_widget = GameWidget(self.world)
+        self.container.add(game_widget)
         self.container.add_callback(KEYDOWN, self.keydown_event)
-        self.world = World(level)
+
         self.actions = self.create_action_map()
 
     def create_action_map(self):
--- a/mamba/snake.py	Sun Sep 11 20:17:53 2011 +0200
+++ b/mamba/snake.py	Sun Sep 11 20:26:59 2011 +0200
@@ -28,7 +28,7 @@
                 ]
 
     def draw(self, surface):
-        self.segment_sprites.draw(surface)
+        self.segment_group.draw(surface)
 
     def set_orientation(self, orientation):
         #self.orientation = orientation
--- a/mamba/widgets/level.py	Sun Sep 11 20:17:53 2011 +0200
+++ b/mamba/widgets/level.py	Sun Sep 11 20:26:59 2011 +0200
@@ -18,14 +18,12 @@
 
 
 class GameWidget(Widget):
-    def __init__(self, world, level, offset=(0, 0)):
+    def __init__(self, world, offset=(0, 0)):
         self.world = world
-        self.level = level
-        rect = Rect(offset, level.get_size())
+        rect = Rect(offset, world.get_size())
         super(GameWidget, self).__init__(rect)
 
     def draw(self, surface):
-        self.level.draw(surface)
         self.world.draw(surface)
 
     def event(self, ev):
--- a/mamba/world.py	Sun Sep 11 20:17:53 2011 +0200
+++ b/mamba/world.py	Sun Sep 11 20:26:59 2011 +0200
@@ -9,5 +9,9 @@
         tile_pos, orientation = level.get_entry()
         self.snake = Snake(tile_pos, orientation)
 
+    def get_size(self):
+        return self.level.get_size()
+
     def draw(self, surface):
+        self.level.draw(surface)
         self.snake.draw(surface)