示例#1
0
        public static string FullName(this IPlayerDto player)
        {
            string fullName = player.FirstName;

            if (!string.IsNullOrEmpty(player.MiddleName))
            {
                fullName += $" {player.MiddleName}";
            }
            fullName += $" {player.LastName}";
            return(fullName);
        }
示例#2
0
        public async Task UpdatePlayerScore(IPlayerDto playerDto, ulong score)
        {
            var rankList = State.LeaderBoardPlayerList;

            for (var node = rankList.First; node != null; node = node.Next)
            {
                if (node.Value.PlayerId == playerDto.PlayerId)
                {
                    node.Value.Score = score;
                    break;
                }
            }

            rankList.AddLast(new RankingPlayerInfo
            {
                PlayerId   = playerDto.PlayerId,
                PlayerName = playerDto.PlayerName,
                Score      = score
            });

            State.LeaderBoardPlayerList = new LinkedList <RankingPlayerInfo>(rankList.OrderByDescending(i => i.Score));
            await WriteStateAsync();
        }