def _getMissionsBlock(cls, operation):
        items = []
        completedQuests = operation.getCompletedQuests()
        completedQuestsIDs = set(completedQuests.keys())
        totalCount = operation.getQuestsCount()
        items.append(
            formatters.packTextBlockData(
                text=text_styles.concatStylesWithSpace(
                    text_styles.middleTitle(
                        TOOLTIPS.PERSONALMISSIONS_OPERATION_MISSIONS_TITLE),
                    _formatCompleteCount(len(completedQuests), totalCount),
                    text_styles.standard('/ %s' % totalCount)),
                padding=formatters.packPadding(top=8, left=17)))
        for vehicleType in VEHICLE_TYPES_ORDER:
            _, quests = operation.getChainByVehicleType(vehicleType)
            completedCount = len(completedQuestsIDs.intersection(
                quests.keys()))
            chainSize = operation.getChainSize()
            items.append(
                formatters.packTitleDescParameterWithIconBlockData(
                    title=text_styles.concatStylesWithSpace(
                        _formatCompleteCount(completedCount, chainSize),
                        text_styles.standard('/ %s' % chainSize)),
                    value=text_styles.main(MENU.classesShort(vehicleType)),
                    icon=getTypeSmallIconPath(vehicleType),
                    iconPadding=formatters.packPadding(top=3, left=10),
                    titlePadding=formatters.packPadding(left=10),
                    padding=formatters.packPadding(left=156, bottom=-9)))

        return formatters.packBuildUpBlockData(blocks=items,
                                               padding=formatters.packPadding(
                                                   top=-14, bottom=30),
                                               gap=10)
def makeVehicleVO(vehicle):
    return {'id': vehicle.intCD,
     'vehicleName': text_styles.main(vehicle.shortUserName),
     'smallVehicleIconPath': vehicle.iconSmall,
     'nationIconPath': getNationsFilterAssetPath(AVAILABLE_NAMES[vehicle.nationID]),
     'typeIconPath': getTypeSmallIconPath(vehicle.type, vehicle.isPremium),
     'level': vehicle.level,
     'isInHangar': vehicle.isInInventory}
def makeVehiclePopoverVO(vehicle):
    return {'dbID': vehicle.intCD,
     'level': vehicle.level,
     'shortUserName': vehicle.shortUserName,
     'smallIconPath': getSmallIconPath(vehicle.name),
     'nationID': vehicle.nationID,
     'type': vehicle.type,
     'typeIcon': getTypeSmallIconPath(vehicle.type, vehicle.isPremium),
     'inHangar': vehicle.isInInventory,
     'selected': False}
def _makeVehicleCmpVO(vehicle):
    return {
        'intCD': vehicle.intCD,
        'level': vehicle.level,
        'shortUserName': vehicle.shortUserName,
        'smallIconPath': getSmallIconPath(vehicle.name),
        'nationIcon': RES_ICONS.getFilterNation(vehicle.nationName),
        'typeIcon': getTypeSmallIconPath(vehicle.type, vehicle.isPremium),
        'nationID': vehicle.nationID,
        'type': vehicle.type
    }
Exemple #5
0
    def getTableData(self):
        result = []
        for item in self._sortVehicles():
            veh = item.discountName
            item = {'icon': _VEHICLE_NATION_ICON_PATH % nations.NAMES[veh.nationID],
             'additionalIcon': getTypeSmallIconPath(veh.type, veh.isPremium or veh.isElite),
             'title': ' '.join((i18n.makeString(TOOLTIPS.level(veh.level)), veh.shortUserName)),
             'discount': formatStrDiscount(item),
             'price': self._getPrice(veh, False)}
            result.append(item)

        return result
 def _makeVO(self, vehicleCD, index):
     vehicle = self.itemsCache.items.getItemByCD(vehicleCD)
     complectation = _ms(VEH_COMPARE.cartpopover_configurationtype(self.comparisonBasket.getVehicleAt(index).getConfigurationType()))
     basketLocked = self.comparisonBasket.isLocked
     return {'id': vehicleCD,
      'index': index,
      'vehicleName': text_styles.main(vehicle.shortUserName),
      'complectation': complectation,
      'nation': getNationsFilterAssetPath(AVAILABLE_NAMES[vehicle.nationID]),
      'level': vehicle.level,
      'typeStr': getTypeSmallIconPath(vehicle.type, vehicle.isPremium),
      'smallIconPath': vehicle.iconSmall,
      'removeBtnTooltip': VEH_COMPARE.CARTPOPOVER_REMOVELOCKEDBTN_TOOLTIP if basketLocked else VEH_COMPARE.CARTPOPOVER_REMOVEBTN_TOOLTIP,
      'removeBtnEnabled': not basketLocked}
 def __updateTradeOffVehicleBtnData(self):
     with self.viewModel.equipmentBlock.vehicleBtn.transaction(
     ) as vehicleBtnVm:
         isTradeIn = not self.__isRentVisible and self.__isTradeIn()
         vehicleBtnVm.setVisible(isTradeIn
                                 and self.__tradeOffVehicle is not None)
         if self.__isTradeIn() and self.__tradeOffVehicle is not None:
             vehicleBtnVm.setFlag(self.__tradeOffVehicle.nationName)
             vehicleBtnVm.setVehType(
                 getTypeSmallIconPath(self.__tradeOffVehicle.type,
                                      self.__tradeOffVehicle.isPremium))
             vehicleBtnVm.setVehLvl(
                 getLevelSmallIconPath(self.__tradeOffVehicle.level))
             vehicleBtnVm.setVehIcon(
                 getSmallIconPath(self.__tradeOffVehicle.name))
             vehicleBtnVm.setVehName(self.__tradeOffVehicle.shortUserName)
     return
Exemple #8
0
 def _getData(self):
     vehicle = g_currentPreviewVehicle.item
     if vehicle.isPremium:
         vehicleTitle = '{} {},'.format(
             _ms(MENU.header_vehicletype_elite(vehicle.type)),
             _ms(VEHICLE_PREVIEW.INFOPANEL_LEVEL,
                 level=_ms(MENU.header_level(vehicle.level))))
         vehicleName = makeHtmlString(
             'html_templates:lobby/vehicle_preview', 'vehicleNamePremium',
             {'name': vehicle.descriptor.type.shortUserString.upper()})
     else:
         vehicleTitle = '{} {},'.format(
             _ms(MENU.header_vehicletype(vehicle.type)),
             _ms(VEHICLE_PREVIEW.INFOPANEL_LEVEL,
                 level=_ms(MENU.header_level(vehicle.level))))
         vehicleName = makeHtmlString(
             'html_templates:lobby/vehicle_preview', 'vehicleNameRegular',
             {'name': vehicle.descriptor.type.shortUserString.upper()})
     if vehicle.isPremiumIGR:
         vehicleTitle = makeHtmlString('html_templates:igr/premium-vehicle',
                                       'name', {'vehicle': vehicleTitle})
     compareBtnEnabled, compareBtnTooltip = resolveStateTooltip(
         self.comparisonBasket, vehicle,
         VEH_COMPARE.STORE_COMPAREVEHICLEBTN_TOOLTIPS_ADDTOCOMPARE,
         VEH_COMPARE.STORE_COMPAREVEHICLEBTN_TOOLTIPS_DISABLED)
     result = {
         'closeBtnLabel': VEHICLE_PREVIEW.HEADER_CLOSEBTN_LABEL,
         'backBtnLabel': VEHICLE_PREVIEW.HEADER_BACKBTN_LABEL,
         'backBtnDescrLabel': self._getBackBtnLabel(),
         'showCloseBtn': _SHOW_CLOSE_BTN,
         'showBackButton': _SHOW_BACK_BTN,
         'vehicleTitle': vehicleTitle,
         'vehicleTypeIcon': getTypeSmallIconPath(vehicle.type,
                                                 vehicle.isElite),
         'nationFlagIcon': RES_ICONS.getFilterNation(vehicle.nationName),
         'vehicleName': vehicleName,
         'nationName': MENU.nations(vehicle.nationName),
         'compareBtnTooltip': compareBtnTooltip,
         'showCompareBtn': compareBtnEnabled,
         'listDesc': self.__getInfoPanelListDescription(vehicle),
         'isMultinational': vehicle.hasNationGroup
     }
     return result
Exemple #9
0
 def _makeVehicleVOAction(self, vehicle):
     if self._selectedVehicles:
         checkSelectedFunc = self._isSelected
     else:
         checkSelectedFunc = lambda vo: False
     vState, _ = vehicle.getState()
     return {
         'dbID':
         vehicle.intCD,
         'level':
         vehicle.level,
         'shortUserName':
         vehicle.shortUserName,
         'smallIconPath':
         getSmallIconPath(vehicle.name),
         'nationID':
         vehicle.nationID,
         'type':
         vehicle.type,
         'typeIcon':
         getTypeSmallIconPath(vehicle.type, vehicle.isPremium),
         'selected':
         checkSelectedFunc(vehicle),
         'inHangar':
         False,
         'isMultiSelect':
         self._isMultiSelect,
         'isReadyToFight':
         vehicle.isReadyToFight,
         'enabled':
         vehicle.isReadyToFight,
         'tooltip':
         makeTooltip('#tooltips:vehicleStatus/%s/header' % vState,
                     '#tooltips:vehicleStatus/body'),
         'state':
         convertState(vState)
     }
Exemple #10
0
    def _packBlocks(self, *args, **kwargs):
        items = super(RentVehicleAwardTooltipData, self)._packBlocks()
        blocks = list()
        blocks.append(
            formatters.packTextBlockData(
                text_styles.middleTitle(
                    TOOLTIPS.QUESTS_AWARDS_VEHICLERENT_HEADER),
                padding=formatters.packPadding(top=8)))
        blocks.append(
            formatters.packTextParameterWithIconBlockData(
                name=text_styles.premiumVehicleName(
                    TOOLTIPS.QUESTS_AWARDS_VEHICLERENT_EXPIRE),
                value='',
                icon=ICON_TEXT_FRAMES.RENTALS,
                padding=formatters.packPadding(left=-60),
                iconYOffset=3))
        vehiclesCount = 0
        for rentVehicleData in args:
            rentVehicleData = flashObject2Dict(rentVehicleData)
            vehicleName = rentVehicleData.get('vehicleName', '')
            vehicleType = rentVehicleData.get('vehicleType', '')
            isPremium = rentVehicleData.get('isPremium', True)
            rentLeftCount = 0
            rentTypeName = None
            for rentType in _RENT_TYPES:
                rentTypeValue = rentVehicleData.get(rentType, 0)
                if rentTypeValue > 0:
                    rentTypeName = rentType
                    rentLeftCount = rentTypeValue
                    break

            if isPremium:
                imgPaddings = formatters.packPadding(right=2)
            else:
                imgPaddings = formatters.packPadding(left=5, right=5, top=4)
            blocks.append(
                formatters.packImageTextBlockData(
                    title=text_styles.highlightText(vehicleName),
                    img=getTypeSmallIconPath(vehicleType, isPremium),
                    imgPadding=imgPaddings,
                    txtPadding=formatters.packPadding(left=2)))
            if rentTypeName is not None and rentLeftCount > 0:
                rentCountStr = text_styles.premiumVehicleName(rentLeftCount)
                rentLeftStr = _ms(TOOLTIPS.getRentLeftTypeLabel(rentTypeName),
                                  count=rentCountStr)
                blocks.append(
                    formatters.packTextBlockData(
                        text_styles.main(rentLeftStr),
                        padding=formatters.packPadding(left=28,
                                                       top=-8,
                                                       bottom=5)))
            vehiclesCount += 1
            if vehiclesCount >= _MAX_AWARDS_PER_TOOLTIP:
                count = len(args) - vehiclesCount
                if count > 0:
                    blocks.append(
                        formatters.packTextBlockData(
                            text_styles.main(
                                _ms(TOOLTIPS.QUESTS_AWARDS_ADDITIONAL_BOTTOM,
                                    count=count))))
                break

        items.append(
            formatters.packBuildUpBlockData(
                blocks, padding=formatters.packPadding(bottom=-12)))
        return items