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
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
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