comparison gamelib/tiles.py @ 303:e12d99215b74

Fix up data module unix-to-local path fixing. Fix similar problems in tile importing.
author Simon Cross <hodgestar@gmail.com>
date Sat, 05 Sep 2009 17:35:17 +0000
parents e694aa7731ed
children a8a7ada27fa2
comparison
equal deleted inserted replaced
302:01c1682dc250 303:e12d99215b74
1 """Extension to pgu's tilevid.""" 1 """Extension to pgu's tilevid."""
2 2
3 from pgu import tilevid, vid 3 from pgu import tilevid, vid
4 import os 4 import os
5 import data
5 import imagecache 6 import imagecache
6 7
7 class TileMap(object): 8 class TileMap(object):
8 """Helper class for describing all the game tiles.""" 9 """Helper class for describing all the game tiles."""
9 10
76 tilevid.Tilevid.__init__(self) 77 tilevid.Tilevid.__init__(self)
77 self.sprites = FarmSprites() 78 self.sprites = FarmSprites()
78 79
79 def png_folder_load_tiles(self, path): 80 def png_folder_load_tiles(self, path):
80 """Load tiles from a folder of PNG files.""" 81 """Load tiles from a folder of PNG files."""
81 for dirpath, dirnames, filenames in os.walk(path): 82 full_path = data.filepath(path)
82 abstract_dirpath = "/".join(dirpath.split(os.path.sep)) 83 for dirpath, dirnames, filenames in os.walk(full_path):
84 relative_path = dirpath[len(full_path):]
85 relative_path = "/".join(relative_path.split(os.path.sep))
83 for filename in filenames: 86 for filename in filenames:
84 image_name = abstract_dirpath + "/" + filename 87 image_name = "/".join([path, relative_path, filename])
85 for tile_no in TILE_MAP.tiles_for_image(filename): 88 for tile_no in TILE_MAP.tiles_for_image(filename):
86 tile_name = TILE_MAP[tile_no] 89 tile_name = TILE_MAP[tile_no]
87 self.tiles[tile_no] = FarmTile(tile_no, tile_name, image_name) 90 self.tiles[tile_no] = FarmTile(tile_no, tile_name, image_name)
88 91
89 def sun(self, sun_on): 92 def sun(self, sun_on):