예제 #1
0
    def load(self):
        self.maps = []
        self.colorMasks = []
        self.travelMasks = []
        mapslst = Globals.MapsPaths
        loader = AssetLoader()
        for threetup in mapslst:
            self.maps.append(loader.getMap(threetup[0]))
            self.colorMasks.append(loader.getMap(threetup[1]))
            self.travelMasks.append(loader.getMap(threetup[2]))

        self.entrances = ([], [])
        self.areaInfo = {}
        areaConfig = loader.getConfig(Globals.AreasConfigPath)
        for area in areaConfig:
            entranceList = areaConfig[area]['entrances']
            mapId = areaConfig[area]['mapId']
            for entrance in entranceList:
                roomId = entrance['roomId']
                r = entrance['r']
                c = entrance['c']
                # self.entrances has two lists, one per world, with tuples formatted as
                #  [0] int row of tile with entrance
                #  [1] int col of tile with entrance
                #  [2] string area id
                #  [3] string room id
                self.entrances[mapId].append((r, c, area, roomId))
                # self.areaInfo maps area id -> (string title, string subtitle)
                self.areaInfo[area] = (areaConfig[area]['name'], areaConfig[area]['subtitle'] \
                    if 'subtitle' in areaConfig[area] else '')
예제 #2
0
 def __init__(self, width, height):
     super().__init__(width, height)
     mapslst = Globals.MapsPaths
     loader = AssetLoader()
     self.maps = []
     self.colorMasks = []
     self.travelMasks = []
     # TODO move to a load method
     for threetup in mapslst:
         self.maps.append(loader.getMap(threetup[0]).splitlines())
         self.colorMasks.append(loader.getMap(threetup[1]).splitlines())
         self.travelMasks.append(loader.getMap(threetup[2]).splitlines())
예제 #3
0
    def load(self):
        self.mapCursor = [0, 0]

        loader = AssetLoader()
        self.maps = {}
        self.mapsData = {}
        areasConfig = loader.getConfig(Globals.AreasConfigPath)
        for area in areasConfig:
            self.maps[area] = loader.getMap(areasConfig[area]['inAreaMap'])
            self.mapsData[area] = {}
            roomsConfig = loader.getConfig(areasConfig[area]['roomsConfig'])
            for room in roomsConfig:
                # mapsData maps string area id * string room id ->
                # [0] string readable name of room
                # [1] string description of room
                # [2] int row number of room's tile on map
                # [3] int col number of room's tile on map
                # [4] string conditional if conditions must be fulfilled to show room, else None
                self.mapsData[area][room] = (
                    roomsConfig[room]['mapName'] if 'mapName' in roomsConfig[room] \
                        else roomsConfig[room]['name'],
                    roomsConfig[room]['description'],
                    roomsConfig[room]['r'],
                    roomsConfig[room]['c'],
                    roomsConfig[room]['showIf'] if 'showIf' in roomsConfig[room] else None,
                )
예제 #4
0
    def load(self):
        self.maps = []
        self.colorMasks = []
        self.travelMasks = []
        mapslst = Globals.MapsPaths
        loader = AssetLoader()
        for threetup in mapslst:
            self.maps.append(loader.getMap(threetup[0]))
            self.colorMasks.append(loader.getMap(threetup[1]))
            self.travelMasks.append(loader.getMap(threetup[2]))

        self.entrances = ([], [])
        areaConfig = loader.getConfig(Globals.AreasConfigPath)
        for area in areaConfig:
            entranceList = areaConfig[area]['entrances']
            mapId = areaConfig[area]['mapId']
            for entrance in entranceList:
                roomId = entrance['roomId']
                r = entrance['r']
                c = entrance['c']
                self.entrances[mapId].append((r, c, area, roomId))
예제 #5
0
 def load(self):
     artslst = Globals.InAreaPaths
     loader = AssetLoader()
     self.maps = []
     self.details = []
     self.names = []
     for element in artslst:
         self.maps.append(loader.getMap(element[0]))
         self.details.append(
             loader.getConfig(os.path.join('rooms', element[1])))
     for item in self.details[0]:
         self.names.append(item)