implement map overview

This commit is contained in:
Yannik Schmidt
2020-10-14 00:25:40 +02:00
parent 868346ad90
commit c3bb6f0e04
6 changed files with 128 additions and 0 deletions

45
MapSummary.py Normal file
View File

@@ -0,0 +1,45 @@
import json
import datetime
import player
import datetime
class MapSummary:
def __init__(self, rounds):
'''Create a map MapSummary from a Round-Array'''
self.securityWins = 0
self.insurgentWins = 0
self.times = []
self.predictions = []
self.totalGames = 0
self.confidence = []
self.mapName = None
for r in rounds:
self.mapName = r.mapName
self.totalGames += 1
if r.winnerSideString == "Insurgent":
self.insurgentWins += 1
else:
self.securityWins += 1
self.predictions += [r.numericPrediction]
self.confidence += [r.confidence]
self.times += [r.duration]
self.insurgentWinPercent = ""
self.securityWinPercent = ""
self.ratingSystemDeviation = "-"
self.averageTime = ""
try:
self.insurgentWinPercent = self.insurgentWins / self.totalGames*100
self.securityWinPercent = self.securityWins / self.totalGames*100
predictionPercision = 1 - sum(self.predictions)/len(self.predictions)
confidenceAverage = sum(self.confidence) / len(self.confidence)
averageSeconds = sum([t.total_seconds() for t in self.times]) / len(self.times)
self.averageTime = datetime.timedelta(seconds=int(averageSeconds))
self.ratingSystemDeviation = predictionPercision*100 - confidenceAverage
except ZeroDivisionError:
pass