diff nagslang/screens/area.py @ 50:94d47bfcc7bb

Approximate levels and walls
author Neil Muller <drnlmuller@gmail.com>
date Sun, 01 Sep 2013 18:28:33 +0200
parents 82036437ebf6
children b55f1783eb6e
line wrap: on
line diff
--- a/nagslang/screens/area.py	Sun Sep 01 18:26:15 2013 +0200
+++ b/nagslang/screens/area.py	Sun Sep 01 18:28:33 2013 +0200
@@ -5,6 +5,7 @@
 import pymunk.pygame_util
 
 from nagslang.screens.base import Screen
+from nagslang.level import Level
 from nagslang.events import ScreenChange
 
 
@@ -83,14 +84,16 @@
 
     def setup(self):
         self.keys = ControlKeys()
+        self._level = Level(self.name)
+        self._level.load()
         self.add_walls()
         self.add_protagonist()
 
     def add_walls(self):
         self.walls = []
         body = pymunk.Body()
-        body.position = (400, 300)
-        corners = [(-200, -150), (-200, 150), (200, 150), (200, -150)]
+        body.position = (0, -300)
+        corners = self._level.get_walls()
         corner = corners[-1]
         for next_corner in corners:
             wall = pymunk.Segment(body, corner, next_corner, 50)
@@ -112,8 +115,10 @@
         self.keys.handle_event(ev)
 
     def render(self, surface):
-        surface.fill(pygame.color.Color(0, 0, 0))
-        pymunk.pygame_util.draw(surface, *self.walls)
+        #surface.fill(pygame.color.Color(0, 0, 0))
+        background = self._level.get_background()
+        surface.blit(background, (0, 0))
+        #pymunk.pygame_util.draw(surface, *self.walls)
         self.protagonist.render(surface)
 
     def tick_protagonist(self):