Mercurial > mamba
changeset 37:9a0ae29c7f5e
Tiles *and* things.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Sun, 11 Sep 2011 14:49:07 +0200 |
parents | 908c9d5597f9 |
children | 047273a63054 |
files | data/levels/dev.txt mamba/level.py |
diffstat | 2 files changed, 25 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/data/levels/dev.txt Sun Sep 11 14:46:58 2011 +0200 +++ b/data/levels/dev.txt Sun Sep 11 14:49:07 2011 +0200 @@ -1,11 +1,11 @@ dev -aaaaaaaaaa -a........a -a........a -a........a -a........a -a........a -a........a -a........a -a........a -aaaaaaaaaa +XXXXXXXXXX +X........X +X........X +X........X +X........X +X........X +X...a....X +X........X +X........X +XXXXXXXXXX
--- a/mamba/level.py Sun Sep 11 14:46:58 2011 +0200 +++ b/mamba/level.py Sun Sep 11 14:49:07 2011 +0200 @@ -9,11 +9,6 @@ TILE_SIZE = (20, 20) -TILE_MAP = { - '.': None, - 'a': 'randomtile', - } - def tile_sizify(pos): ts_x, ts_y = TILE_SIZE @@ -33,6 +28,16 @@ self.rect = self.image.get_rect().move(tile_sizify(tile_pos)) +TILE_MAP = { + '.': None, + 'X': 'randomtile', + } + +THING_MAP = { + 'a': (TileSprite, 'tiles/dev/randomtile.png'), + } + + class Tileset(object): def __init__(self, tileset_name): self.name = tileset_name @@ -43,10 +48,13 @@ for k, v in TILE_MAP.items(): if v: v = 'tiles/%s/%s.png' % (self.name, v) - self.tiles[k] = v + self.tiles[k] = (TileSprite, (v,)) + for k, v in THING_MAP.items(): + self.tiles[k] = (v[0], v[1:]) def __getitem__(self, key): - return TileSprite(self.tiles[key]) + cls, args = self.tiles[key] + return cls(*args) def get_tile(self, key, tile_pos): tile = self[key] @@ -70,8 +78,6 @@ self.tiles = [[self.tileset.get_tile(tile, (x, y)) for x, tile in enumerate(row.strip())] for y, row in enumerate(tiles_ascii)] - print "Tileset:", self.tileset.name - print "Tiles:", tiles_ascii def get_size(self): return tile_sizify((len(self.tiles[0]), len(self.tiles)))