view mamba/level.py @ 11:447311ee028c

Remove relative import.
author Simon Cross <hodgestar@gmail.com>
date Sun, 11 Sep 2011 13:05:26 +0200
parents 66ae99f6903e
children f76c3f033772
line wrap: on
line source

"""
Level for our shiny game.
"""

from mamba.data import load_file, load_image


TILE_MAP = {
    '.': 'empty',
    'a': 'randomtile',
    }


class Tileset(object):
    def __init__(self, tileset_name):
        self.name = tileset_name
        self.tiles = {}

    def load_tiles(self):
        for k, v in TILE_MAP.items():
            if v == 'empty':
                img = None
            else:
                img = load_image('tiles/%s/%s.png' % (self.name, v))
            self.tiles[k] = img

    def __getitem__(self, key):
        return self.tiles[key]


class Level(object):
    def __init__(self, level_name):
        self.level_name = level_name
        self.load_level_data()

    def load_level_data(self):
        """
        This file format it potentially yucky.
        """
        level_data = load_file('levels/%s.txt' % (self.level_name,))
        self.tileset_name = level_data.readline()
        self.tiles = Tileset(self.tileset_name)
        tiles_ascii = level_data.readlines()
        print "Tileset:", self.tileset_name
        print "Tiles:", tiles_ascii