private async Task <UserTrueskillRating> GetOrAddRating(ulong userId)
        {
            var rating = await _ratings.GetRating(userId);

            if (rating.HasValue)
            {
                return(rating.Value);
            }

            rating = new UserTrueskillRating(userId, uint.MaxValue, new TrueskillRating(_gameInfo.DefaultRating.Mean, _gameInfo.DefaultRating.StandardDeviation));
            await _ratings.SetRating(userId, rating.Value.Rating.Mean, rating.Value.Rating.StdDev);

            return(rating.Value);
        }
示例#2
0
 private async ValueTask <string> FormatRankInfo(UserTrueskillRating rating)
 {
     return(await FormatRankInfo(new KeyValuePair <ulong, Rating>(rating.UserId, new Rating(rating.Rating.Mean, rating.Rating.StdDev))));
 }
 private static Rating Convert(UserTrueskillRating rating)
 {
     return(new Rating(rating.Rating.Mean, rating.Rating.StdDev));
 }