comparison nagslang/level.py @ 431:fef028d65451

Cache tiling of the background
author Neil Muller <drnlmuller@gmail.com>
date Sat, 07 Sep 2013 13:52:16 +0200
parents 1a85044f81a8
children 8cd9828828c0
comparison
equal deleted inserted replaced
430:c0264b247326 431:fef028d65451
38 self.world = world 38 self.world = world
39 self.world.level_state.setdefault(name, {}) 39 self.world.level_state.setdefault(name, {})
40 self.basetile = 'tiles/floor.png' 40 self.basetile = 'tiles/floor.png'
41 self._tile_image = None 41 self._tile_image = None
42 self._surface = None 42 self._surface = None
43 self._base_surface = None
43 self._exterior = False 44 self._exterior = False
44 self._glue = puzzle.PuzzleGlue() 45 self._glue = puzzle.PuzzleGlue()
45 self.drawables = [] 46 self.drawables = []
46 self.overlay_drawables = [] 47 self.overlay_drawables = []
47 self._game_objects = [] 48 self._game_objects = []
235 if self._tile_image is None: 236 if self._tile_image is None:
236 self._tile_image = resources.get_image(self.basetile) 237 self._tile_image = resources.get_image(self.basetile)
237 if self._surface is not None and not force: 238 if self._surface is not None and not force:
238 # We assume we don't change 239 # We assume we don't change
239 return self._surface 240 return self._surface
240 self._surface = tile_surface((self.x, self.y), self._tile_image) 241 if self._base_surface is None:
242 self._base_surface = tile_surface((self.x, self.y), self._tile_image)
243 self._surface = self._base_surface.copy()
241 return self._surface 244 return self._surface