Mercurial > mamba
changeset 163:41e8d4ce3af2
TileSprites are less magic.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Tue, 13 Sep 2011 23:49:33 +0200 |
parents | 7fbbe27120a9 |
children | a904c1c55f92 |
files | mamba/level.py mamba/sprites.py |
diffstat | 2 files changed, 10 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/mamba/level.py Tue Sep 13 23:24:20 2011 +0200 +++ b/mamba/level.py Tue Sep 13 23:49:33 2011 +0200 @@ -35,7 +35,7 @@ } THING_MAP = { - 'a': mktile(sprites.BaseSprite, image_name='red'), + 'a': mktile(sprites.TileSprite, image_name='red'), } @@ -46,7 +46,7 @@ def load_tiles(self): self.tiles = {} - self.floor = sprites.TileSprite(tileset=self.name, + self.floor = sprites.TileSprite('.', tileset=self.name, image_name='floor').image for name, value in TILE_MAP.items(): if value is not None:
--- a/mamba/sprites.py Tue Sep 13 23:24:20 2011 +0200 +++ b/mamba/sprites.py Tue Sep 13 23:49:33 2011 +0200 @@ -82,11 +82,8 @@ variants_class = InvariantSpriteImageVariants variants = None - def __init__(self, tile_char=None, tileset=None, image_name=None, - mutators=(), solid=False): + def __init__(self, tileset=None, image_name=None, mutators=()): super(BaseSprite, self).__init__() - self.tile_char = tile_char - self.solid = solid if tileset is not None: self.tileset = tileset if image_name is not None: @@ -109,16 +106,17 @@ def use_variant(self, *args): self.image = self.load_image(*self.get_variant(*args)) + +class TileSprite(BaseSprite): + def __init__(self, tile_char, solid=False, **kw): + super(TileSprite, self).__init__(**kw) + self.tile_char = tile_char + self.solid = solid + def get_solid(self, snake_mutations): return self.solid -class TileSprite(BaseSprite): - def __init__(self, tileset, **kw): - kw['tileset'] = tileset - super(TileSprite, self).__init__(**kw) - - class SingleImageTileSprite(TileSprite): image_name = None # subclasses will override this