def _getHeaderData(self, data): return (PUtils.packLditItemData( BigWorld.wg_getIntegralFormat(data.getBattlesCount()), FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLESCOUNT_LABEL, TOOLTIPS. FORTIFICATION_CLANSTATS_PERIODDEFENCE_BATTLES_BATTLESCOUNT, 'battles40x32.png', PUtils.createToolTipData([ BigWorld.wg_getIntegralFormat(data.getWinsCount()), BigWorld.wg_getIntegralFormat(data.getLossesCount()) ])), PUtils.packLditItemData( PUtils.getFormattedWinsEfficiency(data), FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_WINS_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_WINS_TOOLTIP, 'wins40x32.png'), PUtils.packLditItemData( PUtils.formatEfficiency( self.__resourceLossCount, lambda: float(self.__resourceCaptureCount) / self. __resourceLossCount), FORTIFICATIONS. CLANSTATS_PARAMS_PERIODDEFENCE_AVGDEFRES_LABEL, FORTIFICATIONS. CLANSTATS_PARAMS_PERIODDEFENCE_AVGDEFRES_TOOLTIP, 'defresRatio40x32.png'))
def __updateDefenceData(self): dossier = self.fortCtrl.getFort().getFortDossier() stats = dossier.getBattlesStats() ms = i18n.makeString resourceLossCount = stats.getResourceLossCount() defenceCount = stats.getDefenceCount() atackCount = stats.getAttackCount() sucessDefenceCount = stats.getSuccessDefenceCount() sucessAtackCount = stats.getSuccessAttackCount() resourceCaptureCount = stats.getResourceCaptureCount() resourcesProvitValue = resourceCaptureCount - resourceLossCount resourcesProfitStr = BigWorld.wg_getIntegralFormat(resourcesProvitValue) if resourcesProvitValue > 0: resourcesProfitStr = '+' + resourcesProfitStr attackEfficiencyValue = ProfileUtils.formatEfficiency(atackCount, lambda : float(sucessAtackCount) / atackCount) defEfficiencyValue = ProfileUtils.formatEfficiency(defenceCount, lambda : float(sucessDefenceCount) / defenceCount) self.__data.update({'periodBattles': ProfileUtils.packLditItemData(BigWorld.wg_getIntegralFormat(stats.getBattlesCount()), FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLESCOUNT_LABEL, TOOLTIPS.FORTIFICATION_CLANSTATS_PERIODDEFENCE_BATTLES_BATTLESCOUNT, 'battles40x32.png', ProfileUtils.createToolTipData([BigWorld.wg_getIntegralFormat(stats.getWinsCount()), BigWorld.wg_getIntegralFormat(stats.getLossesCount())])), 'periodWins': ProfileUtils.packLditItemData(ProfileUtils.getFormattedWinsEfficiency(stats), FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_WINS_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_WINS_TOOLTIP, 'wins40x32.png'), 'periodAvgDefres': ProfileUtils.packLditItemData(ProfileUtils.formatEfficiency(resourceLossCount, lambda : float(resourceCaptureCount) / resourceLossCount), FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_AVGDEFRES_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_AVGDEFRES_TOOLTIP, 'defresRatio40x32.png'), 'periodBattlesStats': [{'value': self.__getMiddleTitleText(BigWorld.wg_getIntegralFormat(stats.getEnemyBaseCaptureCount())), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLES_COUNTCAPTUREDCOMMANDCENTRES_LABEL)}, {'value': self.__getMiddleTitleText(BigWorld.wg_getIntegralFormat(stats.getCaptureEnemyBuildingTotalCount())), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLES_COUNTPLUNDEREDENEMYBUILDINGS_LABEL)}, {'value': self.__getMiddleTitleText(BigWorld.wg_getIntegralFormat(stats.getLossOwnBuildingTotalCount())), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLES_COUNTPLUNDEREDALLYBUILDINGS_LABEL)}, {'value': self.__getMiddleTitleText(attackEfficiencyValue), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLES_EFFICIENCYOFATTACK), 'ttLabel': TOOLTIPS.FORTIFICATION_CLANSTATS_PERIODDEFENCE_BATTLES_EFFICIENCYOFATTACK, 'ttBodyParams': {'countAtack': BigWorld.wg_getIntegralFormat(sucessAtackCount), 'countTotalAtack': BigWorld.wg_getIntegralFormat(atackCount)}, 'enabled': attackEfficiencyValue != -1}, {'value': self.__getMiddleTitleText(defEfficiencyValue), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLES_EFFICIENCYOFDEFENCE), 'ttLabel': TOOLTIPS.FORTIFICATION_CLANSTATS_PERIODDEFENCE_BATTLES_EFFICIENCYOFDEFENCE, 'ttBodyParams': {'countDefences': BigWorld.wg_getIntegralFormat(sucessDefenceCount), 'countTotalDefences': BigWorld.wg_getIntegralFormat(defenceCount)}, 'enabled': defEfficiencyValue != -1}], 'periodDefresStats': [{'value': self.__getFormattedDefresValue(BigWorld.wg_getIntegralFormat(resourceCaptureCount)), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLES_COUNTPROMRES_LABEL)}, {'value': self.__getFormattedDefresValue(BigWorld.wg_getIntegralFormat(resourceLossCount)), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLES_LOSTPROMRES_LABEL)}, {'value': self.__getFormattedDefresValue(resourcesProfitStr), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLES_PROFIT_LABEL)}]})
def _getHeaderData(self, data): return (PUtils.getTotalBattlesHeaderParam( data, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_BATTLESCOUNT_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_BATTLESCOUNT_TOOLTIP), PUtils.packLditItemData( PUtils.getFormattedWinsEfficiency(data), FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_WINS_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_WINS_TOOLTIP, 'wins40x32.png'), PUtils.packLditItemData( PUtils.formatEfficiency(data.getBattlesCount(), data.getAvgLoot), FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_AVGDEFRES_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_AVGDEFRES_TOOLTIP, 'avgDefes40x32.png'))
def __updateSortieData(self): ms = i18n.makeString dossier = self.fortCtrl.getFort().getFortDossier() sortiesStats = dossier.getSortiesStats() totalRes = sortiesStats.getLoot() defresValueStr = str(BigWorld.wg_getIntegralFormat(totalRes)) + ' ' formattedDefresValue = ''.join((text_styles.defRes(defresValueStr), icons.nut())) middleBattlesCount = BigWorld.wg_getIntegralFormat(sortiesStats.getMiddleBattlesCount()) championshipBattlesCount = BigWorld.wg_getIntegralFormat(sortiesStats.getChampionBattlesCount()) absoluteBattlesCount = BigWorld.wg_getIntegralFormat(sortiesStats.getAbsoluteBattlesCount()) self.__data.update({'clanName': g_clanCache.clanTag, 'sortieBattlesCount': ProfileUtils.getTotalBattlesHeaderParam(sortiesStats, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_BATTLESCOUNT_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_BATTLESCOUNT_TOOLTIP), 'sortieWins': ProfileUtils.packLditItemData(ProfileUtils.getFormattedWinsEfficiency(sortiesStats), FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_WINS_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_WINS_TOOLTIP, 'wins40x32.png'), 'sortieAvgDefres': ProfileUtils.packLditItemData(ProfileUtils.formatEfficiency(sortiesStats.getBattlesCount(), sortiesStats.getAvgLoot), FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_AVGDEFRES_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_AVGDEFRES_TOOLTIP, 'avgDefes40x32.png'), 'sortieBattlesStats': [{'value': self.__getMiddleTitleText(middleBattlesCount), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_BATTLES_MIDDLEBATTLESCOUNT_LABEL)}, {'value': self.__getMiddleTitleText(championshipBattlesCount), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_BATTLES_CHAMPIONBATTLESCOUNT_LABEL)}, {'value': self.__getMiddleTitleText(absoluteBattlesCount), 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_BATTLES_ABSOLUTEBATTLESCOUNT_LABEL)}], 'sortieDefresStats': [{'value': formattedDefresValue, 'label': ms(FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_DEFRES_LOOTINSORTIES_LABEL)}]})
def _getDetailedData(self, stats): defenceCount = stats.getDefenceCount() atackCount = stats.getAttackCount() sucessDefenceCount = stats.getSuccessDefenceCount() sucessAtackCount = stats.getSuccessAttackCount() resourceCaptureCount = stats.getResourceCaptureCount() resourceLossCount = stats.getResourceLossCount() resourcesProfitValue = resourceCaptureCount - resourceLossCount return PUtils.getLabelDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_HEADER, [SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_COUNTCAPTUREDCOMMANDCENTRES, BigWorld.wg_getIntegralFormat(stats.getEnemyBaseCaptureCount()), CL.SECTION_FORT_TOOLTIPS_COUNTCAPTUREDCOMMANDCENTRES), SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_COUNTPLUNDEREDENEMYBUILDINGS, BigWorld.wg_getIntegralFormat(stats.getCaptureEnemyBuildingTotalCount()), CL.SECTION_FORT_TOOLTIPS_COUNTPLUNDEREDENEMYBUILDINGS), SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_COUNTPLUNDEREDALLYBUILDINGS, BigWorld.wg_getIntegralFormat(stats.getLossOwnBuildingTotalCount()), CL.SECTION_FORT_TOOLTIPS_COUNTPLUNDEREDALLYBUILDINGS), None, SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_EFFICIENCYOFATTACK, PUtils.formatEfficiency(atackCount, lambda : float(sucessAtackCount) / atackCount), CL.SECTION_FORT_TOOLTIPS_EFFICIENCYOFATTACK, PUtils.createToolTipData([BigWorld.wg_getIntegralFormat(sucessAtackCount), BigWorld.wg_getIntegralFormat(atackCount)])), SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_EFFICIENCYOFDEFENCE, PUtils.formatEfficiency(defenceCount, lambda : float(sucessDefenceCount) / defenceCount), CL.SECTION_FORT_TOOLTIPS_EFFICIENCYOFDEFENCE, PUtils.createToolTipData([BigWorld.wg_getIntegralFormat(sucessDefenceCount), BigWorld.wg_getIntegralFormat(defenceCount)])), None, SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_COUNTPROMRES, _resourceParam(BigWorld.wg_getIntegralFormat(resourceCaptureCount)), CL.SECTION_FORT_TOOLTIPS_COUNTPROMRES), SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_LOSTPROMRES, _resourceParam(BigWorld.wg_getIntegralFormat(resourceLossCount)), CL.SECTION_FORT_TOOLTIPS_LOSTPROMRES), SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_PROFIT, _resourceParam(BigWorld.wg_getIntegralFormat(resourcesProfitValue)), CL.SECTION_FORT_TOOLTIPS_PROFIT), None, SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_CHEMPIONLVLBATTLES, BigWorld.wg_getIntegralFormat(self.__fbBattlesCountAbs), CL.SECTION_FORT_TOOLTIPS_CHEMPIONLVLBATTLES), SUtils.getDetailedDataObject(CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_ABSOLUTELVLBATTLES, BigWorld.wg_getIntegralFormat(self.__fbBattlesCountChemp), CL.SECTION_FORT_TOOLTIPS_ABSOLUTELVLBATTLES)])
def _getHeaderData(self, data): return (PUtils.packLditItemData(BigWorld.wg_getIntegralFormat(data.getBattlesCount()), FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_BATTLESCOUNT_LABEL, TOOLTIPS.FORTIFICATION_CLANSTATS_PERIODDEFENCE_BATTLES_BATTLESCOUNT, 'battles40x32.png', PUtils.createToolTipData([BigWorld.wg_getIntegralFormat(data.getWinsCount()), BigWorld.wg_getIntegralFormat(data.getLossesCount())])), PUtils.packLditItemData(PUtils.getFormattedWinsEfficiency(data), FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_WINS_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_WINS_TOOLTIP, 'wins40x32.png'), PUtils.packLditItemData(PUtils.formatEfficiency(self.__resourceLossCount, lambda : float(self.__resourceCaptureCount) / self.__resourceLossCount), FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_AVGDEFRES_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_PERIODDEFENCE_AVGDEFRES_TOOLTIP, 'defresRatio40x32.png'))
def _getHeaderData(self, data): return (PUtils.getTotalBattlesHeaderParam(data, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_BATTLESCOUNT_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_BATTLESCOUNT_TOOLTIP), PUtils.packLditItemData(PUtils.getFormattedWinsEfficiency(data), FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_WINS_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_WINS_TOOLTIP, 'wins40x32.png'), PUtils.packLditItemData(PUtils.formatEfficiency(data.getBattlesCount(), data.getAvgLoot), FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_AVGDEFRES_LABEL, FORTIFICATIONS.CLANSTATS_PARAMS_SORTIE_AVGDEFRES_TOOLTIP, 'avgDefes40x32.png'))
def _getDetailedData(self, stats): defenceCount = stats.getDefenceCount() atackCount = stats.getAttackCount() sucessDefenceCount = stats.getSuccessDefenceCount() sucessAtackCount = stats.getSuccessAttackCount() resourceCaptureCount = stats.getResourceCaptureCount() resourceLossCount = stats.getResourceLossCount() resourcesProfitValue = resourceCaptureCount - resourceLossCount return PUtils.getLabelDataObject( CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_HEADER, [ SUtils.getDetailedDataObject( CL. SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_COUNTCAPTUREDCOMMANDCENTRES, BigWorld.wg_getIntegralFormat( stats.getEnemyBaseCaptureCount()), CL.SECTION_FORT_TOOLTIPS_COUNTCAPTUREDCOMMANDCENTRES), SUtils.getDetailedDataObject( CL. SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_COUNTPLUNDEREDENEMYBUILDINGS, BigWorld.wg_getIntegralFormat( stats.getCaptureEnemyBuildingTotalCount()), CL.SECTION_FORT_TOOLTIPS_COUNTPLUNDEREDENEMYBUILDINGS), SUtils.getDetailedDataObject( CL. SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_COUNTPLUNDEREDALLYBUILDINGS, BigWorld.wg_getIntegralFormat( stats.getLossOwnBuildingTotalCount()), CL.SECTION_FORT_TOOLTIPS_COUNTPLUNDEREDALLYBUILDINGS), None, SUtils.getDetailedDataObject( CL. SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_EFFICIENCYOFATTACK, PUtils.formatEfficiency( atackCount, lambda: float(sucessAtackCount) / atackCount), CL.SECTION_FORT_TOOLTIPS_EFFICIENCYOFATTACK, PUtils.createToolTipData([ BigWorld.wg_getIntegralFormat(sucessAtackCount), BigWorld.wg_getIntegralFormat(atackCount) ])), SUtils.getDetailedDataObject( CL. SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_EFFICIENCYOFDEFENCE, PUtils.formatEfficiency( defenceCount, lambda: float(sucessDefenceCount) / defenceCount), CL.SECTION_FORT_TOOLTIPS_EFFICIENCYOFDEFENCE, PUtils.createToolTipData([ BigWorld.wg_getIntegralFormat(sucessDefenceCount), BigWorld.wg_getIntegralFormat(defenceCount) ])), None, SUtils.getDetailedDataObject( CL. SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_COUNTPROMRES, _resourceParam( BigWorld.wg_getIntegralFormat(resourceCaptureCount)), CL.SECTION_FORT_TOOLTIPS_COUNTPROMRES), SUtils.getDetailedDataObject( CL. SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_LOSTPROMRES, _resourceParam( BigWorld.wg_getIntegralFormat(resourceLossCount)), CL.SECTION_FORT_TOOLTIPS_LOSTPROMRES), SUtils.getDetailedDataObject( CL.SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_PROFIT, _resourceParam( BigWorld.wg_getIntegralFormat(resourcesProfitValue)), CL.SECTION_FORT_TOOLTIPS_PROFIT), None, SUtils.getDetailedDataObject( CL. SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_CHEMPIONLVLBATTLES, BigWorld.wg_getIntegralFormat(self.__fbBattlesCountAbs), CL.SECTION_FORT_TOOLTIPS_CHEMPIONLVLBATTLES), SUtils.getDetailedDataObject( CL. SECTION_FORT_VIEW_STATISTICS_BATTLES_DETAILED_ABSOLUTELVLBATTLES, BigWorld.wg_getIntegralFormat(self.__fbBattlesCountChemp), CL.SECTION_FORT_TOOLTIPS_ABSOLUTELVLBATTLES) ])