예제 #1
0
def _getPeriodAdditionalInfo(arenaDP, period, additionalInfo):
    if period == ARENA_PERIOD.AFTERBATTLE:
        winnerTeam, finishReason = additionalInfo
        return _PeriodAdditionalInfo(
            WinStatus.fromWinnerTeam(winnerTeam,
                                     arenaDP.isAllyTeam(winnerTeam)),
            winnerTeam, finishReason)
    else:
        return None
예제 #2
0
 def _convert(self, value, reusable):
     playerRank = reusable.personal.avatar.extensionInfo.get(
         'playerRank', {}).get('rank', 0)
     if self.__sessionProvider.getCtx().extractLastArenaWinStatus(
     ) is not None:
         winStatus = WinStatus.WIN if playerRank == _THE_BEST_RANK else WinStatus.LOSE
         self.__sessionProvider.getCtx().setLastArenaWinStatus(
             WinStatus(winStatus))
     return playerRank
 def setRecord(self, result, reusable):
     teamResult = reusable.getPersonalTeamResult()
     team = reusable.getPersonalTeam()
     winnerIfDraw = reusable.personal.avatar.winnerIfDraw
     if teamResult == _TEAM_RESULT.DRAW and winnerIfDraw:
         if team == winnerIfDraw:
             teamResult = _TEAM_RESULT.WIN
             winStatus = WinStatus.WIN
         else:
             teamResult = _TEAM_RESULT.DEFEAT
             winStatus = WinStatus.LOSE
         sessionCtx = self.sessionProvider.getCtx()
         if sessionCtx.extractLastArenaWinStatus() is not None:
             sessionCtx.setLastArenaWinStatus(WinStatus(winStatus))
     self.finishReasonLabel = makeEpicBattleFinishResultLabel(reusable.common.finishReason, teamResult)
     self.shortResultLabel = teamResult
     self.fullResultLabel = toUpper(backport.text(R.strings.menu.finalStatistic.commonStats.resultlabel.dyn(teamResult)()))
     return
 def setRecord(self, result, reusable):
     teamResult = reusable.getPersonalTeamResult()
     team = reusable.getPersonalTeam()
     winnerIfDraw = reusable.personal.avatar.winnerIfDraw
     if teamResult == _TEAM_RESULT.DRAW and winnerIfDraw:
         if team == winnerIfDraw:
             teamResult = _TEAM_RESULT.WIN
             winStatus = WinStatus.WIN
         else:
             teamResult = _TEAM_RESULT.DEFEAT
             winStatus = WinStatus.LOSE
         sessionCtx = self.sessionProvider.getCtx()
         if sessionCtx.extractLastArenaWinStatus() is not None:
             sessionCtx.setLastArenaWinStatus(WinStatus(winStatus))
     self.finishReasonLabel = makeEpicBattleFinishResultLabel(
         reusable.common.finishReason, teamResult)
     self.shortResultLabel = teamResult
     self.fullResultLabel = _FULL_RESULT_LABEL.format(teamResult)
     return
예제 #5
0
def _getPeriodAdditionalInfo(arenaDP, period, additionalInfo):
    if period == ARENA_PERIOD.AFTERBATTLE:
        winnerTeam, finishReason = additionalInfo
        return _PeriodAdditionalInfo(WinStatus.fromWinnerTeam(winnerTeam, arenaDP.isAllyTeam(winnerTeam)), winnerTeam, finishReason)
    else:
        return None