예제 #1
0
 def __getIconPath(self, size, shortIconName=False):
     iconPostfix = self.getIconPostfix()
     if shortIconName:
         iconPath = 'badge_%s' % iconPostfix
     else:
         iconPath = getBadgeIconPath(size, iconPostfix)
     return iconPath
예제 #2
0
    def __makeReasonInfo(self, deathInfo):
        colors = deathInfo['colors']
        if self.__isColorBlind:
            color = colors[1]
        else:
            color = colors[0]
        names = {'device': '',
         'entity': '',
         'killer': '',
         'color': color}
        entityID = deathInfo['killerVehicle']
        if entityID:
            context = self.sessionProvider.getCtx()
            vInfoVO = context.getArenaDP().getVehicleInfo(entityID)
            badgeID = vInfoVO.ranked.selectedBadge
            icon = ''
            if badgeID > 0:
                icon = icons.makeImageTag(settings.getBadgeIconPath(settings.BADGES_ICONS.X24, badgeID), 24, 24, -5, 0)
            names['killer'] = '{0}{1}'.format(icon, context.getPlayerFullName(entityID, showVehShortName=False))
        device = deathInfo['device']
        if device:
            names['device'] = device
        reason = ''
        try:
            reason = deathInfo['text'] % names
        except TypeError:
            LOG_CURRENT_EXCEPTION()

        return reason
예제 #3
0
    def getRankedAwardVOs(self,
                          iconSize='small',
                          withCounts=False,
                          withKey=False):
        """
        Here we're supporting bonuses only that allowed in ranked battles
        """
        result = []
        badgesIconSizes = {'big': BADGES_ICONS.X80, 'small': BADGES_ICONS.X48}
        for (block, record), value in self.getRecords().iteritems():
            if _isBadge(block):
                header = i18n.makeString(BADGE.badgeName(record))
                body = i18n.makeString(BADGE.badgeDescriptor(record))
                note = i18n.makeString(BADGE.BADGE_NOTE)
                badgeVO = {
                    'imgSource':
                    getBadgeIconPath(badgesIconSizes[iconSize], record),
                    'label':
                    '',
                    'tooltip':
                    makeTooltip(header, body, note)
                }
                if withKey:
                    badgeVO['itemKey'] = BADGE.badgeName(record)
                if withCounts:
                    badgeVO['count'] = 1
                result.append(badgeVO)

        return result
예제 #4
0
 def __updateBadge(self):
     selectedBages = self.itemsCache.items.ranked.badges
     badge = None
     if selectedBages:
         badge = settings.getBadgeIconPath(settings.BADGES_ICONS.X24,
                                           selectedBages[0])
     self.as_setBadgeIconS(badge)
     return
def _wrapBadgeAward(title, badgeID, imageSize):
    return {
        'title': title,
        'icon': getBadgeIconPath(imageSize, badgeID),
        'tooltip': {
            'isSpecial': True,
            'specialAlias': TOOLTIPS_CONSTANTS.BADGE,
            'specialArgs': [badgeID]
        }
    }
예제 #6
0
 def onSelectBadge(self, badgeID):
     badgeID = str(badgeID)
     if badgeID == _EMPTY_BADGE_ID:
         self.rankedController.selectBadge(None)
         self.as_setSelectedBadgeImgS('')
     elif badgeID in RANKED_BADGES_BLOCK_LAYOUT:
         self.rankedController.selectBadge(badgeID)
         self.as_setSelectedBadgeImgS(
             settings.getBadgeIconPath(settings.BADGES_ICONS.X24, badgeID))
     else:
         LOG_WARNING('Attempt to select unknown badge {}.\nFrom {}'.format(
             badgeID, RANKED_BADGES_BLOCK_LAYOUT))
     return
예제 #7
0
def _makeBadgeVO(badgeID, enabled, selected):
    return {
        'id':
        int(badgeID),
        'icon':
        settings.getBadgeIconPath(settings.BADGES_ICONS.X80, badgeID)
        if badgeID != _EMPTY_BADGE_ID else '',
        'title':
        text_styles.stats(BADGE.badgeName(badgeID)),
        'description':
        text_styles.main(BADGE.badgeDescriptor(badgeID)),
        'enabled':
        enabled,
        'selected':
        selected
    }
예제 #8
0
 def __syncUserInfo(self):
     selectedBages = self.itemsCache.items.ranked.badges
     badge = selectedBages[0] if selectedBages else 'default'
     title = text_styles.middleTitle(
         MENU.HEADER_ACCOUNT_POPOVER_BOOSTERS_BLOCKTITLE
     ) + ' ' + icons.info()
     userVO = {
         'userData':
         self.__userData,
         'isTeamKiller':
         self.itemsCache.items.stats.isTeamKiller,
         'boostersBlockTitle':
         title,
         'boostersBlockTitleTooltip':
         TOOLTIPS.HEADER_ACCOUNTPOPOVER_BOOSTERSTITLE,
         'badgeIcon':
         settings.getBadgeIconPath(settings.BADGES_ICONS.X48, badge)
     }
     self.as_setDataS(userVO)
예제 #9
0
 def __getCommonAwardsVOs(self,
                          block,
                          record,
                          iconSize='small',
                          withCounts=False):
     badgesIconSizes = {'big': BADGES_ICONS.X80, 'small': BADGES_ICONS.X48}
     if _isBadge(block):
         header = i18n.makeString(BADGE.badgeName(record))
         body = i18n.makeString(BADGE.badgeDescriptor(record))
         note = i18n.makeString(BADGE.BADGE_NOTE)
         badgeVO = {
             'imgSource': getBadgeIconPath(badgesIconSizes[iconSize],
                                           record),
             'label': '',
             'tooltip': makeTooltip(header, body, note)
         }
         if withCounts:
             badgeVO['count'] = 1
         return badgeVO
     else:
         return None
예제 #10
0
 def getSmallIcon(self):
     return getBadgeIconPath(BADGES_ICONS.X48, self.badgeID)
예제 #11
0
 def getBigIcon(self):
     return getBadgeIconPath(BADGES_ICONS.X80, self.badgeID)
예제 #12
0
 def getHugeIcon(self):
     return getBadgeIconPath(BADGES_ICONS.X220, self.badgeID)
    def __getAwards(self):
        vehicleBonuses = []
        badgesBonuses = []
        hasTankCamo = False
        hasNationCamo = False
        mainAwards = []
        addAwards = []
        for q in self.__quests.itervalues():
            for b in q.getBonuses('vehicles'):
                for vehicle, _ in b.getVehicles():
                    vehicleBonuses.append(vehicle)

            for b in q.getBonuses('dossier'):
                for badge in b.getBadges():
                    badgesBonuses.append(badge)

            if q.getBonuses('customizations'):
                hasTankCamo = True
            for b in q.getBonuses('tokens'):
                for token in b.getTokens():
                    if token.endswith(':camouflage'):
                        hasNationCamo = True

        for vehicle in vehicleBonuses:
            LOG_DEBUG('## vehicle, vehicle.name, result', vehicle,
                      vehicle.name,
                      vehicle.name.split(':')[-1])
            mainAwards.append({
                'title':
                '',
                'icon':
                getPersonalMissionVehicleAwardImage(
                    ICONS_SIZES.X550,
                    vehicle.name.split(':')[-1]),
                'tooltip': {
                    'isSpecial': True,
                    'specialAlias': TOOLTIPS_CONSTANTS.AWARD_VEHICLE,
                    'specialArgs': [vehicle.intCD]
                }
            })

        for badge in sorted(badgesBonuses):
            addAwards.append({
                'title':
                badge.getUserName(),
                'icon':
                getBadgeIconPath(ICONS_SIZES.X110, badge.badgeID),
                'tooltip': {
                    'isSpecial': True,
                    'specialAlias': TOOLTIPS_CONSTANTS.BADGE,
                    'specialArgs': [badge.badgeID]
                }
            })

        if hasTankCamo and hasNationCamo:
            addAwards.append({
                'title': '',
                'icon': RES_ICONS.
                MAPS_ICONS_PERSONALMISSIONS_AWARDS_110X110_CAMOUFLAGE,
                'tooltip': {
                    'tooltip':
                    makeTooltip(
                        TOOLTIPS.PERSONALMISSIONS_AWARDS_CAMOUFLAGEALL_HEADER,
                        TOOLTIPS.PERSONALMISSIONS_AWARDS_CAMOUFLAGEALL_BODY)
                }
            })
        elif hasTankCamo:
            addAwards.append({
                'title': '',
                'icon': RES_ICONS.
                MAPS_ICONS_PERSONALMISSIONS_AWARDS_110X110_CAMOUFLAGE,
                'tooltip': {
                    'tooltip':
                    makeTooltip(
                        TOOLTIPS.PERSONALMISSIONS_AWARDS_CAMOUFLAGEONLY_HEADER,
                        TOOLTIPS.PERSONALMISSIONS_AWARDS_CAMOUFLAGEONLY_BODY)
                }
            })
        elif hasNationCamo:
            addAwards.append({
                'title': '',
                'icon': RES_ICONS.
                MAPS_ICONS_PERSONALMISSIONS_AWARDS_110X110_CAMOUFLAGE,
                'tooltip': {
                    'tooltip':
                    makeTooltip(
                        TOOLTIPS.
                        PERSONALMISSIONS_AWARDS_CAMOUFLAGENATION_HEADER,
                        TOOLTIPS.PERSONALMISSIONS_AWARDS_CAMOUFLAGENATION_BODY)
                }
            })
        return (mainAwards, addAwards)
 def onSelectBadge(self, badgeID):
     self.__selectBadges((badgeID, ))
     self.as_setSelectedBadgeImgS(
         settings.getBadgeIconPath(settings.BADGES_ICONS.X48, badgeID))
예제 #15
0
 def getBigIconById(cls, badgeID):
     return getBadgeIconPath(BADGES_ICONS.X80, badgeID)
예제 #16
0
 def getSmallIconById(cls, badgeID):
     return getBadgeIconPath(BADGES_ICONS.X48, badgeID)
예제 #17
0
 def getThumbnailIcon(self):
     return getBadgeIconPath(BADGES_ICONS.X24, self.badgeID)
예제 #18
0
 def getIconX110(self):
     return getBadgeIconPath(BADGES_ICONS.X110, self.badgeID)
def makeBadgeIcon(badge):
    return settings.getBadgeIconPath(settings.BADGES_ICONS.X24, badge)
예제 #20
0
 def getSuffixSmallIconByID(cls, badgeID):
     return getBadgeIconPath(BADGES_ICONS.X32, badgeID)