"""Render a level"""
-import json
-
from pgzero.constants import keys
+from ..loaders.levelloader import levels
from .base import Scene, ChangeSceneEvent
+from .constants import TILE_SIZE
class LevelScene(Scene):
""" Level scene. """
-
def __init__(self, level_name):
- self._level_name = level_name
+ self._level_data = levels.load(level_name)
+ self._tiles = self._level_data['tiles']
def draw(self, screen):
screen.clear()
- screen.draw.text("This is level {}".format(self._level_name), (200, 100))
+ for tile in self._tiles:
+ pos = tile['pos']
+ pos = [pos[0] * TILE_SIZE, pos[1] * TILE_SIZE]
+ if 'image' not in tile:
+ # Skip broken tiles for now
+ continue
+ screen.blit(tile['image'], pos)
def on_key_down(self, key, mod, unicode):
if key == keys.ESCAPE: