def packTankman(tankman, isCountPermanentSkills=True): def vehicleIcon(vDescr, subtype=""): return _ICONS_MASK % {"type": "vehicle", "subtype": subtype, "unicName": vDescr.name.replace(":", "-")} nativeVehicleData = { "typeCompDescr": tankman.vehicleNativeDescr.type.compactDescr, "userName": Vehicle.getShortUserName(tankman.vehicleNativeDescr.type), "icon": vehicleIcon(tankman.vehicleNativeDescr), "iconContour": vehicleIcon(tankman.vehicleNativeDescr, "contour/"), } currentVehicleData = None if tankman.isInTank: currentVehicleData = { "inventoryID": tankman.vehicleInvID, "typeCompDescr": tankman.vehicleDescr.type.compactDescr, "userName": Vehicle.getShortUserName(tankman.vehicleDescr.type), "icon": vehicleIcon(tankman.vehicleDescr), "iconContour": vehicleIcon(tankman.vehicleDescr, "contour/"), } skills = [] tManFreeSkillsNum = tankman.descriptor.freeSkillsNumber startSkillNumber = 0 if isCountPermanentSkills else tManFreeSkillsNum tManSkills = tankman.skills for i in range(startSkillNumber, len(tManSkills)): skills.append(packTankmanSkill(tManSkills[i], isPermanent=True if i < tManFreeSkillsNum else False)) return { "strCD": cPickle.dumps(tankman.strCD), "inventoryID": tankman.invID, "nationID": tankman.nationID, "firstUserName": tankman.firstUserName, "lastUserName": tankman.lastUserName, "roleName": tankman.descriptor.role, "rankUserName": tankman.rankUserName, "roleUserName": tankman.roleUserName, "skills": skills, "efficiencyRoleLevel": tankman.efficiencyRoleLevel, "realRoleLevel": tankman.realRoleLevel, "roleLevel": tankman.roleLevel, "icon": { "big": Tankman.getBigIconPath(tankman.nationID, tankman.descriptor.iconID), "small": Tankman.getSmallIconPath(tankman.nationID, tankman.descriptor.iconID), "barracks": Tankman.getBarracksIconPath(tankman.nationID, tankman.descriptor.iconID), }, "iconRole": { "big": Tankman.getRoleBigIconPath(tankman.descriptor.role), "medium": Tankman.getRoleMediumIconPath(tankman.descriptor.role), "small": Tankman.getRoleSmallIconPath(tankman.descriptor.role), }, "iconRank": { "big": Tankman.getRankBigIconPath(tankman.nationID, tankman.descriptor.rankID), "small": Tankman.getRankSmallIconPath(tankman.nationID, tankman.descriptor.rankID), }, "isInTank": tankman.isInTank, "newSkillsCount": tankman.newSkillCount, "nativeVehicle": nativeVehicleData, "currentVehicle": currentVehicleData, }
def __makeTankmanVO(self, tman, avgBattles2NewSkill): prediction = '' if avgBattles2NewSkill > 0: prediction = _ms(BATTLE_RESULTS.COMMON_NEWSKILLPREDICTION, battles=BigWorld.wg_getIntegralFormat(avgBattles2NewSkill)) return {'title': _ms(BATTLE_RESULTS.COMMON_CREWMEMBER_NEWSKILL), 'description': self.__makeTankmanDescription(tman), 'tankmenIcon': Tankman.getSmallIconPath(tman.nationID, tman.descriptor.iconID), 'prediction': prediction, 'linkEvent': PROGRESS_ACTION.NEW_SKILL_UNLOCK_TYPE, 'linkId': tman.invID}
def packTankman(tankman, isCountPermanentSkills = True): def vehicleIcon(vDescr, subtype = ''): return _ICONS_MASK % {'type': 'vehicle', 'subtype': subtype, 'unicName': vDescr.name.replace(':', '-')} nativeVehicleData = {'typeCompDescr': tankman.vehicleNativeDescr.type.compactDescr, 'userName': Vehicle.getShortUserName(tankman.vehicleNativeDescr.type), 'icon': vehicleIcon(tankman.vehicleNativeDescr), 'iconContour': vehicleIcon(tankman.vehicleNativeDescr, 'contour/')} currentVehicleData = None if tankman.isInTank: currentVehicleData = {'inventoryID': tankman.vehicleInvID, 'typeCompDescr': tankman.vehicleDescr.type.compactDescr, 'userName': Vehicle.getShortUserName(tankman.vehicleDescr.type), 'icon': vehicleIcon(tankman.vehicleDescr), 'iconContour': vehicleIcon(tankman.vehicleDescr, 'contour/')} skills = [] tManFreeSkillsNum = tankman.descriptor.freeSkillsNumber startSkillNumber = 0 if isCountPermanentSkills else tManFreeSkillsNum tManSkills = tankman.skills for i in range(startSkillNumber, len(tManSkills)): skills.append(packTankmanSkill(tManSkills[i], isPermanent=True if i < tManFreeSkillsNum else False)) return {'strCD': cPickle.dumps(tankman.strCD), 'inventoryID': tankman.invID, 'nationID': tankman.nationID, 'firstUserName': tankman.firstUserName, 'lastUserName': tankman.lastUserName, 'roleName': tankman.descriptor.role, 'rankUserName': tankman.rankUserName, 'roleUserName': tankman.roleUserName, 'skills': skills, 'efficiencyRoleLevel': tankman.efficiencyRoleLevel, 'realRoleLevel': tankman.realRoleLevel, 'roleLevel': tankman.roleLevel, 'icon': {'big': Tankman.getBigIconPath(tankman.nationID, tankman.descriptor.iconID), 'small': Tankman.getSmallIconPath(tankman.nationID, tankman.descriptor.iconID), 'barracks': Tankman.getBarracksIconPath(tankman.nationID, tankman.descriptor.iconID)}, 'iconRole': {'big': Tankman.getRoleBigIconPath(tankman.descriptor.role), 'medium': Tankman.getRoleMediumIconPath(tankman.descriptor.role), 'small': Tankman.getRoleSmallIconPath(tankman.descriptor.role)}, 'iconRank': {'big': Tankman.getRankBigIconPath(tankman.nationID, tankman.descriptor.rankID), 'small': Tankman.getRankSmallIconPath(tankman.nationID, tankman.descriptor.rankID)}, 'isInTank': tankman.isInTank, 'newSkillsCount': tankman.newSkillCount, 'nativeVehicle': nativeVehicleData, 'currentVehicle': currentVehicleData}
def packTankman(tankman, isCountPermanentSkills = True): def vehicleIcon(vDescr, subtype = ''): return _ICONS_MASK % {'type': 'vehicle', 'subtype': subtype, 'unicName': vDescr.name.replace(':', '-')} nativeVehicleData = {'typeCompDescr': tankman.vehicleNativeDescr.type.compactDescr, 'userName': tankman.vehicleNativeDescr.type.shortUserString, 'icon': vehicleIcon(tankman.vehicleNativeDescr), 'iconContour': vehicleIcon(tankman.vehicleNativeDescr, 'contour/')} currentVehicleData = None if tankman.isInTank: currentVehicleData = {'inventoryID': tankman.vehicleInvID, 'typeCompDescr': tankman.vehicleDescr.type.compactDescr, 'userName': tankman.vehicleDescr.type.shortUserString, 'icon': vehicleIcon(tankman.vehicleDescr), 'iconContour': vehicleIcon(tankman.vehicleDescr, 'contour/')} skills = [] for skill in tankman.skills: if not (skill.name == 'brotherhood' and tankman.descriptor.isFemale and not isCountPermanentSkills): skills.append(packTankmanSkill(skill)) return {'strCD': cPickle.dumps(tankman.strCD), 'inventoryID': tankman.invID, 'nationID': tankman.nationID, 'firstUserName': tankman.firstUserName, 'lastUserName': tankman.lastUserName, 'roleName': tankman.descriptor.role, 'rankUserName': tankman.rankUserName, 'roleUserName': tankman.roleUserName, 'skills': skills, 'efficiencyRoleLevel': tankman.efficiencyRoleLevel, 'realRoleLevel': tankman.realRoleLevel, 'roleLevel': tankman.roleLevel, 'icon': {'big': Tankman.getBigIconPath(tankman.nationID, tankman.descriptor.iconID), 'small': Tankman.getSmallIconPath(tankman.nationID, tankman.descriptor.iconID), 'barracks': Tankman.getBarracksIconPath(tankman.nationID, tankman.descriptor.iconID)}, 'iconRole': {'big': Tankman.getRoleBigIconPath(tankman.descriptor.role), 'medium': Tankman.getRoleMediumIconPath(tankman.descriptor.role), 'small': Tankman.getRoleSmallIconPath(tankman.descriptor.role)}, 'iconRank': {'big': Tankman.getRankBigIconPath(tankman.nationID, tankman.descriptor.rankID), 'small': Tankman.getRankSmallIconPath(tankman.nationID, tankman.descriptor.rankID)}, 'isInTank': tankman.isInTank, 'newSkillsCount': tankman.newSkillCount, 'nativeVehicle': nativeVehicleData, 'currentVehicle': currentVehicleData}
def __makeTankmanVO(self, tman, avgBattles2NewSkill): prediction = '' if avgBattles2NewSkill > 0: prediction = _ms(BATTLE_RESULTS.COMMON_NEWSKILLPREDICTION, battles=backport.getIntegralFormat(avgBattles2NewSkill)) data = {'title': _ms(BATTLE_RESULTS.COMMON_CREWMEMBER_NEWSKILL), 'prediction': prediction, 'linkEvent': PROGRESS_ACTION.NEW_SKILL_UNLOCK_TYPE, 'linkId': tman.invID} if tman.skinID != NO_CREW_SKIN_ID and self.lobbyContext.getServerSettings().isCrewSkinsEnabled(): skinItem = self.itemsCache.items.getCrewSkin(tman.skinID) data['tankmenIcon'] = getCrewSkinIconSmall(skinItem.getIconID()) fullTankmanName = localizedFullName(skinItem) else: data['tankmenIcon'] = Tankman.getSmallIconPath(tman.nationID, tman.descriptor.iconID) fullTankmanName = tman.fullUserName data['description'] = self.__makeTankmanDescription(tman.roleUserName, fullTankmanName) return data
def packTankman(tankman, isCountPermanentSkills=True): def vehicleIcon(vDescr, subtype=''): return _ICONS_MASK % { 'type': 'vehicle', 'subtype': subtype, 'unicName': vDescr.name.replace(':', '-') } nativeVehicleData = { 'typeCompDescr': tankman.vehicleNativeDescr.type.compactDescr, 'userName': Vehicle.getShortUserName(tankman.vehicleNativeDescr.type), 'icon': vehicleIcon(tankman.vehicleNativeDescr), 'iconContour': vehicleIcon(tankman.vehicleNativeDescr, 'contour/') } currentVehicleData = None if tankman.isInTank: currentVehicleData = { 'inventoryID': tankman.vehicleInvID, 'typeCompDescr': tankman.vehicleDescr.type.compactDescr, 'userName': Vehicle.getShortUserName(tankman.vehicleDescr.type), 'icon': vehicleIcon(tankman.vehicleDescr), 'iconContour': vehicleIcon(tankman.vehicleDescr, 'contour/') } skills = [] tManFreeSkillsNum = tankman.descriptor.freeSkillsNumber startSkillNumber = 0 if isCountPermanentSkills else tManFreeSkillsNum tManSkills = tankman.skills for i in range(startSkillNumber, len(tManSkills)): skills.append( packTankmanSkill( tManSkills[i], isPermanent=True if i < tManFreeSkillsNum else False)) return { 'strCD': cPickle.dumps(tankman.strCD), 'inventoryID': tankman.invID, 'nationID': tankman.nationID, 'firstUserName': tankman.firstUserName, 'lastUserName': tankman.lastUserName, 'roleName': tankman.descriptor.role, 'rankUserName': tankman.rankUserName, 'roleUserName': tankman.roleUserName, 'skills': skills, 'efficiencyRoleLevel': tankman.efficiencyRoleLevel, 'realRoleLevel': tankman.realRoleLevel, 'roleLevel': tankman.roleLevel, 'icon': { 'big': Tankman.getBigIconPath(tankman.nationID, tankman.descriptor.iconID), 'small': Tankman.getSmallIconPath(tankman.nationID, tankman.descriptor.iconID), 'barracks': Tankman.getBarracksIconPath(tankman.nationID, tankman.descriptor.iconID) }, 'iconRole': { 'big': Tankman.getRoleBigIconPath(tankman.descriptor.role), 'medium': Tankman.getRoleMediumIconPath(tankman.descriptor.role), 'small': Tankman.getRoleSmallIconPath(tankman.descriptor.role) }, 'iconRank': { 'big': Tankman.getRankBigIconPath(tankman.nationID, tankman.descriptor.rankID), 'small': Tankman.getRankSmallIconPath(tankman.nationID, tankman.descriptor.rankID) }, 'isInTank': tankman.isInTank, 'newSkillsCount': tankman.newSkillCount, 'nativeVehicle': nativeVehicleData, 'currentVehicle': currentVehicleData }