Fix: stats and marks queries

This commit is contained in:
Grail Finder
2025-07-11 21:19:16 +03:00
parent f01fc12510
commit acf1386c73
7 changed files with 16 additions and 13 deletions

View File

@ -46,20 +46,20 @@ func updateStatsOnGameOver(ctx context.Context, room *models.Room) {
if player.Role == models.UserRoleMime {
stats.PlayedAsMime++
if stats.PlayedAsMime > 0 {
gamesWonAsMime := stats.MimeWinrate * float64(stats.PlayedAsMime-1)
gamesWonAsMime := stats.MimeWinrate * float32(stats.PlayedAsMime-1)
if player.Team == room.TeamWon {
gamesWonAsMime++
}
stats.MimeWinrate = gamesWonAsMime / float64(stats.PlayedAsMime)
stats.MimeWinrate = gamesWonAsMime / float32(stats.PlayedAsMime)
}
} else if player.Role == models.UserRoleGuesser {
stats.PlayedAsGuesser++
if stats.PlayedAsGuesser > 0 {
gamesWonAsGuesser := stats.GuesserWinrate * float64(stats.PlayedAsGuesser-1)
gamesWonAsGuesser := stats.GuesserWinrate * float32(stats.PlayedAsGuesser-1)
if player.Team == room.TeamWon {
gamesWonAsGuesser++
}
stats.GuesserWinrate = gamesWonAsGuesser / float64(stats.PlayedAsGuesser)
stats.GuesserWinrate = gamesWonAsGuesser / float32(stats.PlayedAsGuesser)
}
}