예제 #1
0
파일: level.py 프로젝트: beltsonata/PyPyPy
    def __init__(self, levelName, inputStr, tileSetsPath):
        TiledMapWrapper.__init__(self, inputStr, tileSetsPath)
        assert os.path.exists(tileSetsPath)
        self.playerLayer = None
        self.name = levelName 
        self.calculateLevelDimensions() 
        self.gravity = self.getMapGravity() 
        self.playerFacing = self.getPlayerStartingDir() 
        #~ self.extractLayerData() 
        #~ self.navMesh = maptools.MeshMaker.generateMesh(self)

        #~ self.parseObjectLayers()
        # for debugging:
        #~ self.renderCount = 0
        assert self.playerLayer
예제 #2
0
 def parseLevelToSimulator(levelName, inputStr, tileSetsPath):
     '''
     Parses the tmx file and returns a Simulator object.
     '''
     map = TiledMapWrapper(inputStr, tileSetsPath)
     print 'Parsed', levelName, '|', inputStr, '|', tileSetsPath
     
     gameLayers = TMXParser._createGameLayers(map)
     
     worldSize = CWorldSize(map.getWidth(), map.getHeight())
     gravity = int(map.getMapProperty(
         TMXParser.MAP_GRAVITY_PROPERTY, None))
     
     assert gravity, '%s' % (
         'Failed to parse map gravity.'
         ' Please ensure the "gravity" property is set in the'
         ' Tiled (tmx) file.')
     from simulator import WorldSimulator
     return WorldSimulator(
         levelName, gravity, worldSize, gameLayers, map.render)