Ejemplo n.º 1
0
def buildBattleRoyalePages(headerTitle, mapGeometryName):
    pages = []
    mapResourceName = 'c_' + replaceHyphenToUnderscore(mapGeometryName)
    imagePath = R.images.gui.maps.icons.battleHelp.battleRoyale.dyn(
        mapResourceName)
    if not imagePath.isValid():
        raise SoftException(
            'No icons found for map {}'.format(mapGeometryName))
    _addPage(
        pages, headerTitle,
        backport.text(
            R.strings.ingame_help.detailsHelp.battleRoyale.radar.title()),
        text_styles.mainBig(
            backport.text(R.strings.ingame_help.detailsHelp.battleRoyale.radar.
                          description())), [],
        backport.image(imagePath.br_radar()))
    _addPage(
        pages, headerTitle,
        backport.text(
            R.strings.ingame_help.detailsHelp.battleRoyale.zone.title()),
        text_styles.mainBig(
            backport.text(R.strings.ingame_help.detailsHelp.battleRoyale.zone.
                          description())), [],
        backport.image(imagePath.br_zone()))
    _addPage(
        pages, headerTitle,
        backport.text(R.strings.ingame_help.detailsHelp.battleRoyale.
                      sectorVision.title()),
        text_styles.mainBig(
            backport.text(R.strings.ingame_help.detailsHelp.battleRoyale.
                          sectorVision.description())), [],
        backport.image(imagePath.br_sector()))
    _addPage(
        pages, headerTitle,
        backport.text(
            R.strings.ingame_help.detailsHelp.battleRoyale.airDrop.title()),
        text_styles.mainBig(
            backport.text(R.strings.ingame_help.detailsHelp.battleRoyale.
                          airDrop.description())), [],
        backport.image(imagePath.br_airdrop()))
    _addPage(
        pages, headerTitle,
        backport.text(
            R.strings.ingame_help.detailsHelp.battleRoyale.upgrade.title()),
        text_styles.mainBig(
            backport.text(R.strings.ingame_help.detailsHelp.battleRoyale.
                          upgrade.description())), [],
        backport.image(imagePath.br_tree()))
    _addPage(
        pages, headerTitle,
        backport.text(R.strings.ingame_help.detailsHelp.battleRoyale.
                      uniqueAbilities.title()),
        text_styles.mainBig(
            backport.text(R.strings.ingame_help.detailsHelp.battleRoyale.
                          uniqueAbilities.description())), [],
        backport.image(imagePath.br_unique_abilities()))
    return pages
Ejemplo n.º 2
0
 def getTitleParameters(self):
     if not self.__linkedParameters:
         return []
     sourceQuestionId = self.__linkedParameters.fromQuestion
     answerResIds = [
         _STR_PATH.response.num('_'.join(
             (sourceQuestionId, replaceHyphenToUnderscore(answer))))()
         for answer in self.__linkedParameters.answers if answer in
         self._mapboxCtrl.surveyManager.getSelectedAnswers(sourceQuestionId)
     ]
     return [resId for resId in answerResIds if resId != R.invalid()]
Ejemplo n.º 3
0
 def __fillSlotByVehicle(self, slotVm, vehicle):
     nation = vehicle.name.split(':')[0]
     slotVm.setVehicleIcon(
         R.images.gui.maps.shop.vehicles.c_360x270.dyn(
             replaceHyphenToUnderscore(getNationLessName(vehicle.name)))())
     slotVm.setVehicleName(vehicle.shortUserName)
     slotVm.setNationIcon(
         R.images.gui.maps.icons.flags.c_362x362.dyn(nation)())
     slotVm.setVehicleLevel(int2roman(vehicle.level))
     slotVm.setVehicleType(vehicle.type)
     slotVm.setVehicleTypeIcon(
         R.images.gui.maps.icons.vehicleTypes.white.dyn(
             replaceHyphenToUnderscore(vehicle.type))())
     nySlot = self.__nyController.getVehicleBranch().getSlotForVehicle(
         vehicle.invID)
     if nySlot is not None:
         bonusType, value = nySlot.getSlotBonus()
         slotVm.bonus.setBonusType(bonusType)
         slotVm.bonus.setBonusValue(value * PERCENT)
     return
Ejemplo n.º 4
0
 def getImage(self):
     if self.__guiParameters.useMapId:
         return '%s_%s' % (self.__guiParameters.image,
                           self._mapboxCtrl.surveyManager.getMapId())
     else:
         if self.__guiParameters.useLinkedParams:
             sourceQuestionId = self.getLinkedQuestionId()
             if sourceQuestionId:
                 choice = first(
                     self._mapboxCtrl.surveyManager.getSelectedAnswers(
                         sourceQuestionId))
                 return '%s_%s' % (self.__guiParameters.image,
                                   replaceHyphenToUnderscore(choice))
         return self.__guiParameters.image if self.__guiParameters is not None else ''
Ejemplo n.º 5
0
 def find(self):
     foundTip = self._findRandomTip()
     if foundTip is not None:
         foundTip.markWatched()
         tipData = foundTip.getData()
         geometryName = replaceHyphenToUnderscore(
             self._arenaVisitor.getArenaType().geometryName)
         geomertyIconResId = _tryGetTipIconRes('_'.join(
             (foundTip.getTipId(), geometryName)))
         if geomertyIconResId != R.invalid():
             tipData = _TipData(tipData.status, tipData.body,
                                geomertyIconResId)
         return tipData
     else:
         return _TipData(R.invalid(), R.invalid(), R.invalid())
Ejemplo n.º 6
0
    def _updateMembers(self):
        platoonCtrl = self.__platoonCtrl
        slots = platoonCtrl.getPlatoonSlotsData()
        searching = platoonCtrl.isInSearch()
        isWTREnabled = self._getWTRStatus()
        accID = BigWorld.player().id
        estimatedTime = self.__getEstimatedTimeInQueue()
        with self.viewModel.transaction() as model:
            slotModelArray = model.getSlots()
            slotModelArray.clear()
            slotCount = 0
            for it in slots:
                playerData = it.get('player', {})
                slot = SlotModel()
                slot.setIsEmpty(not bool(playerData))
                if playerData:
                    slot.player.commonData.setName(playerData.get('userName', ''))
                    slot.player.commonData.setColor('#DE1E7E')
                    slot.player.setIsReady(playerData.get('readyState', False))
                    slot.player.setAccID(str(playerData.get('dbID', None)))
                    slot.player.setIsCommander(playerData.get('isCommander', False))
                    slot.player.setIsCurrentUser(accID == playerData.get('accID', None))
                    slot.player.commonData.setClanTag(playerData.get('clanAbbrev', ''))
                    slot.player.setIsPrem(it.get('hasPremiumAccount', False))
                    slot.player.commonData.setRating(playerData.get('accountWTR', '') if isWTREnabled else '')
                    badgeIconPath = playerData.get('badgeVisualVO', {}).get('icon', '')
                    slot.player.commonData.setBadgeID(Badge.getBadgeIDFromIconPath(badgeIconPath))
                    playerStatus = it.get('playerStatus', PLAYER_GUI_STATUS.NORMAL)
                    slot.setIsInBattle(playerStatus == PLAYER_GUI_STATUS.BATTLE)
                    slot.setBattleType(self._battleType)
                    if playerStatus == PLAYER_GUI_STATUS.BATTLE:
                        slot.setInfoText(backport.text(R.strings.platoon.members.card.inBattle()))
                    elif playerStatus != PLAYER_GUI_STATUS.READY:
                        slot.setInfoText(backport.text(R.strings.platoon.members.card.notReady()))
                    isAdditionalMsgVisible = it.get('isVisibleAdtMsg', False)
                    if isAdditionalMsgVisible:
                        additionalMsg = it.get('additionalMsg', '')
                        slot.setInfoText(additionalMsg)
                    isOffline = playerData.get('isOffline', False)
                    if isOffline:
                        slot.setInfoText(backport.text(R.strings.platoon.members.card.connectionLost()))
                    colors = playerData.get('colors', [])
                    if len(colors) > 1:
                        slot.player.commonData.setColor('#' + '{0:06X}'.format(colors[1 if isOffline else 0]))
                    tags = playerData.get('tags', [])
                    slot.player.voice.setIsMutedByUser(USER_TAG.MUTED in tags)
                    slot.player.setIsIgnored(USER_TAG.IGNORED in tags)
                    vehicle = it.get('selectedVehicle', {})
                    if vehicle:
                        vehicleItem = self.__itemsCache.items.getItemByCD(vehicle.get('intCD', 0))
                        slot.player.vehicle.setIsPremium(self._getIsVehiclePremium(vehicleItem))
                        slot.player.vehicle.setName(vehicleItem.shortUserName)
                        slot.player.vehicle.setTechName(replaceHyphenToUnderscore(removeNationFromTechName(vehicleItem.name)))
                        slot.player.vehicle.setTier(vehicleItem.level if self._SHOW_VEHICLE_TIER else 0)
                        slot.player.vehicle.setType(vehicleItem.type)
                        slot.player.vehicle.setNation(vehicleItem.nationName)
                else:
                    slot.setIsSearching(searching)
                    slot.setInfoText(backport.text(R.strings.platoon.members.card.empty()))
                    slot.setEstimatedTime(estimatedTime)
                    slotLabelHtml = it.get('slotLabel', '')
                    if slotLabelHtml:
                        self.__convertSlotLabelData(slot.getSlotLabelElements(), slotLabelHtml)
                slot.setSlotId(slotCount)
                slotCount += 1
                slotModelArray.addViewModel(slot)

            slotModelArray.invalidate()
            self._updateButtons()
            self._updateHeader()
        return
Ejemplo n.º 7
0
 def _convert(self, record, reusable):
     geometryName = replaceHyphenToUnderscore(
         reusable.common.arenaType.getGeometryName())
     return backport.text(R.strings.arenas.num(geometryName).name())
 def _packBlocks(self, vehicleCD=None):
     items = super(EpicSkillSlotSetupInfoTooltip, self)._packBlocks()
     vehicle = g_currentVehicle.item
     vType = replaceHyphenToUnderscore(
         vehicle.type if vehicle else VEHICLE_CLASS_NAME.HEAVY_TANK)
     resourceID = R.strings.epic_battle.tooltips.slotSetupInfo
     items.append(
         formatters.packImageTextBlockData(
             title=text_styles.highTitle(
                 backport.text(resourceID.title.dyn(vType)())),
             desc=text_styles.main(backport.text(resourceID.subtitle())),
             img=backport.image(
                 R.images.gui.maps.icons.vehicleTypes.large.dyn(vType)()),
             imgPadding=formatters.packPadding(left=-15, top=-10),
             txtOffset=56,
             padding=formatters.packPadding(top=5, bottom=-5)))
     blocks = []
     blocks.append(
         formatters.packTextBlockData(text=text_styles.middleTitle(
             backport.text(resourceID.scheme())),
                                      padding=formatters.packPadding(
                                          left=58, bottom=20)))
     blocks.append(
         formatters.packImageBlockData(
             img=backport.image(
                 R.images.gui.maps.icons.epicBattles.tooltips.battleAbility.
                 dyn(vType)()),
             align=BLOCKS_TOOLTIP_TYPES.ALIGN_CENTER))
     items.append(
         formatters.packBuildUpBlockData(
             blocks,
             linkage=BLOCKS_TOOLTIP_TYPES.
             TOOLTIP_BUILDUP_BLOCK_WHITE_BG_LINKAGE,
             padding=formatters.packPadding(bottom=10)))
     blocks = []
     desc = text_styles.neutral(
         backport.text(resourceID.open.title(),
                       desc=text_styles.main(
                           backport.text(resourceID.open.desc()))))
     blocks.append(
         formatters.packImageTextBlockData(
             desc=desc,
             img=backport.image(R.images.gui.maps.icons.epicBattles.
                                tooltips.battleAbility.open()),
             txtAlign=BLOCKS_TOOLTIP_TYPES.ALIGN_CENTER,
             txtOffset=20,
             imgPadding=formatters.packPadding(top=-10, left=-10),
             padding=formatters.packPadding(top=4)))
     desc = text_styles.neutral(
         backport.text(resourceID.upgrade.title(),
                       desc=text_styles.main(
                           backport.text(resourceID.upgrade.desc()))))
     blocks.append(
         formatters.packImageTextBlockData(
             desc=desc,
             img=backport.image(R.images.gui.maps.icons.epicBattles.
                                tooltips.battleAbility.upgrade()),
             txtAlign=BLOCKS_TOOLTIP_TYPES.ALIGN_CENTER,
             txtOffset=20,
             imgPadding=formatters.packPadding(top=-10, left=-10),
             padding=formatters.packPadding(top=0)))
     items.append(formatters.packBuildUpBlockData(blocks))
     return items