Beispiel #1
0
 def __init__(self, strCompactDescr, inventoryID = -1, vehicle = None, proxy = None):
     """
     Ctor.
     
     @param strCompactDescr: string compact descriptor
     @param inventoryID: tankman's inventory id
     @param vehicle: tankman's vehicle where it has been seat
     @param proxy: instance of ItemsRequester
     """
     GUIItem.__init__(self, proxy)
     HasStrCD.__init__(self, strCompactDescr)
     self.__descriptor = None
     self.invID = inventoryID
     self.nationID = self.descriptor.nationID
     self.itemTypeID = vehicles._TANKMAN
     self.itemTypeName = ITEM_TYPE_NAMES[self.itemTypeID]
     self.combinedRoles = (self.descriptor.role,)
     self.vehicleNativeDescr = vehicles.VehicleDescr(typeID=(self.nationID, self.descriptor.vehicleTypeID))
     self.vehicleInvID = -1
     self.vehicleDescr = None
     self.vehicleBonuses = dict()
     self.vehicleSlotIdx = -1
     if vehicle is not None:
         self.vehicleInvID = vehicle.invID
         self.vehicleDescr = vehicle.descriptor
         self.vehicleBonuses = dict(vehicle.bonuses)
         self.vehicleSlotIdx = vehicle.crewIndices.get(inventoryID, -1)
         crewRoles = self.vehicleDescr.type.crewRoles
         if -1 < self.vehicleSlotIdx < len(crewRoles):
             self.combinedRoles = crewRoles[self.vehicleSlotIdx]
     self.skills = self._buildSkills(proxy)
     self.skillsMap = self._buildSkillsMap()
     if proxy is not None:
         pass
     self.__cmp__ = TankmenComparator()
Beispiel #2
0
 def __init__(self, strCompactDescr, inventoryID=-1, vehicle=None, dismissedAt=None, proxy=None):
     GUIItem.__init__(self, proxy)
     HasStrCD.__init__(self, strCompactDescr)
     self.__descriptor = None
     self.invID = inventoryID
     self.nationID = self.descriptor.nationID
     self.itemTypeID = GUI_ITEM_TYPE.TANKMAN
     self.itemTypeName = ITEM_TYPE_NAMES[self.itemTypeID]
     self.combinedRoles = (self.descriptor.role,)
     self.dismissedAt = dismissedAt
     self.isDismissed = self.dismissedAt is not None
     self.vehicleNativeDescr = vehicles.VehicleDescr(typeID=(self.nationID, self.descriptor.vehicleTypeID))
     self.vehicleInvID = -1
     self.vehicleDescr = None
     self.vehicleBonuses = dict()
     self.vehicleSlotIdx = -1
     if vehicle is not None:
         self.vehicleInvID = vehicle.invID
         self.vehicleDescr = vehicle.descriptor
         self.vehicleBonuses = dict(vehicle.bonuses)
         self.vehicleSlotIdx = vehicle.crewIndices.get(inventoryID, -1)
         crewRoles = self.vehicleDescr.type.crewRoles
         if -1 < self.vehicleSlotIdx < len(crewRoles):
             self.combinedRoles = crewRoles[self.vehicleSlotIdx]
     self.skills = self._buildSkills(proxy)
     self.skillsMap = self._buildSkillsMap()
     if proxy is not None:
         pass
     self.__cmp__ = TankmenComparator()
     return
Beispiel #3
0
 def __init__(self,
              strCompactDescr,
              inventoryID=-1,
              vehicle=None,
              proxy=None):
     GUIItem.__init__(self, proxy)
     HasStrCD.__init__(self, strCompactDescr)
     self.__descriptor = None
     self.invID = inventoryID
     self.nationID = self.descriptor.nationID
     self.itemTypeID = vehicles._TANKMAN
     self.itemTypeName = ITEM_TYPE_NAMES[self.itemTypeID]
     self.combinedRoles = (self.descriptor.role, )
     self.vehicleNativeDescr = vehicles.VehicleDescr(
         typeID=(self.nationID, self.descriptor.vehicleTypeID))
     self.vehicleInvID = -1
     self.vehicleDescr = None
     self.vehicleBonuses = dict()
     self.vehicleSlotIdx = -1
     if vehicle is not None:
         self.vehicleInvID = vehicle.invID
         self.vehicleDescr = vehicle.descriptor
         self.vehicleBonuses = dict(vehicle.bonuses)
         self.vehicleSlotIdx = vehicle.crewIndices.get(inventoryID, -1)
         crewRoles = self.vehicleDescr.type.crewRoles
         if -1 < self.vehicleSlotIdx < len(crewRoles):
             self.combinedRoles = crewRoles[self.vehicleSlotIdx]
     self.skills = self._buildSkills(proxy)
     self.skillsMap = self._buildSkillsMap()
     if proxy is not None:
         pass
     self.__cmp__ = TankmenComparator()
Beispiel #4
0
 def __init__(self,
              strCompactDescr,
              inventoryID=-1,
              vehicle=None,
              proxy=None):
     """
     Ctor.
     
     @param strCompactDescr: string compact descriptor
     @param inventoryID: tankman's inventory id
     @param vehicle: tankman's vehicle where it has been seat
     @param proxy: instance of ItemsRequester
     """
     GUIItem.__init__(self, proxy)
     HasStrCD.__init__(self, strCompactDescr)
     self.__descriptor = None
     self.invID = inventoryID
     self.nationID = self.descriptor.nationID
     self.itemTypeID = vehicles._TANKMAN
     self.itemTypeName = ITEM_TYPE_NAMES[self.itemTypeID]
     self.combinedRoles = (self.descriptor.role, )
     self.vehicleNativeDescr = vehicles.VehicleDescr(
         typeID=(self.nationID, self.descriptor.vehicleTypeID))
     self.vehicleInvID = -1
     self.vehicleDescr = None
     self.vehicleBonuses = dict()
     self.vehicleSlotIdx = -1
     if vehicle is not None:
         self.vehicleInvID = vehicle.invID
         self.vehicleDescr = vehicle.descriptor
         self.vehicleBonuses = dict(vehicle.bonuses)
         self.vehicleSlotIdx = vehicle.crewIndices.get(inventoryID, -1)
         crewRoles = self.vehicleDescr.type.crewRoles
         if -1 < self.vehicleSlotIdx < len(crewRoles):
             self.combinedRoles = crewRoles[self.vehicleSlotIdx]
     self.skills = self._buildSkills(proxy)
     self.skillsMap = self._buildSkillsMap()
     if proxy is not None:
         pass
     return
Beispiel #5
0
 def toDict(self):
     result = GUIItem.toDict(self)
     roleIcon = 'noImage.png'
     if self.roleType in tankmen.getSkillsConfig():
         roleIcon = tankmen.getSkillsConfig()[self.roleType]['icon']
     result.update({'name': self.name,
      'level': self.level,
      'userName': self.userName,
      'description': self.description,
      'shortDescription': self.shortDescription,
      'icon': {'big': '%s/%s' % (self.ICON_PATH_BIG, self.icon),
               'small': '%s/%s' % (self.ICON_PATH_SMALL, self.icon),
               'role': '%s/%s' % (Tankman.ROLE_ICON_PATH_SMALL, roleIcon)},
      'isActive': self.isActive,
      'isEnable': self.isEnable,
      'roleType': self.roleType,
      'isPerk': self.isPerk})
     return result
Beispiel #6
0
    def toDict(self):
        result = GUIItem.toDict(self)

        def vehicleIcon(vDescr, subtype = ''):
            return _ICONS_MASK % {'type': 'vehicle',
             'subtype': subtype,
             'unicName': vDescr.name.replace(':', '-')}

        nativeVehicleData = {'typeCompDescr': self.vehicleNativeDescr.type.compactDescr,
         'userName': self.vehicleNativeDescr.type.shortUserString,
         'icon': vehicleIcon(self.vehicleNativeDescr),
         'iconContour': vehicleIcon(self.vehicleNativeDescr, 'contour/')}
        currentVehicleData = None
        if self.isInTank:
            currentVehicleData = {'inventoryID': self.vehicleInvID,
             'typeCompDescr': self.vehicleDescr.type.compactDescr,
             'userName': self.vehicleDescr.type.shortUserString,
             'icon': vehicleIcon(self.vehicleDescr),
             'iconContour': vehicleIcon(self.vehicleDescr, 'contour/')}
        result.update({'strCD': pickle.dumps(self.strCD),
         'inventoryID': self.invID,
         'nationID': self.nationID,
         'firstUserName': self.firstUserName,
         'lastUserName': self.lastUserName,
         'roleName': self.descriptor.role,
         'rankUserName': self.rankUserName,
         'roleUserName': self.roleUserName,
         'skills': [ g_itemSerializer.pack(skill) for skill in self.skills ],
         'efficiencyRoleLevel': self.efficiencyRoleLevel,
         'realRoleLevel': self.realRoleLevel,
         'roleLevel': self.roleLevel,
         'icon': {'big': '%s/%s' % (self.PORTRAIT_ICON_PATH_BIG, self.icon),
                  'small': '%s/%s' % (self.PORTRAIT_ICON_PATH_SMALL, self.icon),
                  'barracks': '%s/%s' % (self.PORTRAIT_ICON_PATH_BARRACKS, self.icon)},
         'iconRole': {'big': '%s/%s' % (self.ROLE_ICON_PATH_BIG, self.iconRole),
                      'small': '%s/%s' % (self.ROLE_ICON_PATH_SMALL, self.iconRole)},
         'iconRank': {'big': '%s/%s' % (self.RANK_ICON_PATH_BIG, self.iconRank),
                      'small': '%s/%s' % (self.RANK_ICON_PATH_SMALL, self.iconRank)},
         'isInTank': self.isInTank,
         'newSkillsCount': self.newSkillCount,
         'nativeVehicle': nativeVehicleData,
         'currentVehicle': currentVehicleData})
        return result
Beispiel #7
0
 def toDict(self):
     result = GUIItem.toDict(self)
     roleIcon = 'noImage.png'
     if self.roleType in tankmen.getSkillsConfig():
         roleIcon = tankmen.getSkillsConfig()[self.roleType]['icon']
     result.update({
         'name': self.name,
         'level': self.level,
         'userName': self.userName,
         'description': self.description,
         'shortDescription': self.shortDescription,
         'icon': {
             'big': '%s/%s' % (self.ICON_PATH_BIG, self.icon),
             'small': '%s/%s' % (self.ICON_PATH_SMALL, self.icon),
             'role': '%s/%s' % (Tankman.ROLE_ICON_PATH_SMALL, roleIcon)
         },
         'isActive': self.isActive,
         'isEnable': self.isEnable,
         'roleType': self.roleType,
         'isPerk': self.isPerk
     })
     return result
Beispiel #8
0
 def fromDict(self, d):
     GUIItem.fromDict(self, d)
     self.level = d.get('level', 0)
     self.isActive = d.get('isActive', True)
Beispiel #9
0
 def fromDict(self, d):
     GUIItem.fromDict(self, d)
Beispiel #10
0
    def toDict(self):
        result = GUIItem.toDict(self)

        def vehicleIcon(vDescr, subtype=''):
            return _ICONS_MASK % {
                'type': 'vehicle',
                'subtype': subtype,
                'unicName': vDescr.name.replace(':', '-')
            }

        nativeVehicleData = {
            'typeCompDescr': self.vehicleNativeDescr.type.compactDescr,
            'userName': self.vehicleNativeDescr.type.shortUserString,
            'icon': vehicleIcon(self.vehicleNativeDescr),
            'iconContour': vehicleIcon(self.vehicleNativeDescr, 'contour/')
        }
        currentVehicleData = None
        if self.isInTank:
            currentVehicleData = {
                'inventoryID': self.vehicleInvID,
                'typeCompDescr': self.vehicleDescr.type.compactDescr,
                'userName': self.vehicleDescr.type.shortUserString,
                'icon': vehicleIcon(self.vehicleDescr),
                'iconContour': vehicleIcon(self.vehicleDescr, 'contour/')
            }
        result.update({
            'strCD':
            pickle.dumps(self.strCD),
            'inventoryID':
            self.invID,
            'nationID':
            self.nationID,
            'firstUserName':
            self.firstUserName,
            'lastUserName':
            self.lastUserName,
            'roleName':
            self.descriptor.role,
            'rankUserName':
            self.rankUserName,
            'roleUserName':
            self.roleUserName,
            'skills': [g_itemSerializer.pack(skill) for skill in self.skills],
            'efficiencyRoleLevel':
            self.efficiencyRoleLevel,
            'realRoleLevel':
            self.realRoleLevel,
            'roleLevel':
            self.roleLevel,
            'icon': {
                'big': '%s/%s' % (self.PORTRAIT_ICON_PATH_BIG, self.icon),
                'small': '%s/%s' % (self.PORTRAIT_ICON_PATH_SMALL, self.icon),
                'barracks':
                '%s/%s' % (self.PORTRAIT_ICON_PATH_BARRACKS, self.icon)
            },
            'iconRole': {
                'big': '%s/%s' % (self.ROLE_ICON_PATH_BIG, self.iconRole),
                'small': '%s/%s' % (self.ROLE_ICON_PATH_SMALL, self.iconRole)
            },
            'iconRank': {
                'big': '%s/%s' % (self.RANK_ICON_PATH_BIG, self.iconRank),
                'small': '%s/%s' % (self.RANK_ICON_PATH_SMALL, self.iconRank)
            },
            'isInTank':
            self.isInTank,
            'newSkillsCount':
            self.newSkillCount,
            'nativeVehicle':
            nativeVehicleData,
            'currentVehicle':
            currentVehicleData
        })
        return result
Beispiel #11
0
 def fromDict(self, d):
     GUIItem.fromDict(self, d)
     self.level = d.get('level', 0)
     self.isActive = d.get('isActive', True)
Beispiel #12
0
 def fromDict(self, d):
     GUIItem.fromDict(self, d)