ACR_ServerCommunicator.ACR_ServerCommunicator.ListOnlineUsers C# (CSharp) Method

ListOnlineUsers() private method

Send a textural description of the online player list to player on the local server.
private ListOnlineUsers ( uint PlayerObject ) : void
PlayerObject uint Supplies the player object id for the /// player to send the player list to.
return void
        private void ListOnlineUsers(uint PlayerObject)
        {
            GetDatabase().ACR_IncrementStatistic("LIST_ONLINE_USERS");

            lock (WorldManager)
            {
                var OnlineServers = from S in WorldManager.Servers
                                    where S.Online &&
                                    S.Characters.Count > 0
                                    select S;
                StringBuilder Message = new StringBuilder();
                int UserCount = 0;

                foreach (GameServer Server in OnlineServers)
                    UserCount += Server.Characters.Count;

                Message.AppendFormat("{0} users on {1} servers:", UserCount, OnlineServers.Count<GameServer>());

                foreach (GameServer Server in OnlineServers)
                {
                    Message.AppendFormat("\n-- Server {0} --", Server.ServerName);

                    foreach (GameCharacter Character in Server.Characters)
                    {
                        Message.AppendFormat("\n{2}{0} ({1})", Character.CharacterName, Character.Player.PlayerName, Character.Player.IsDM ? "<c=#99CCFF>[DM] </c>" : "");
                    }
                }

                SendMessageToPC(PlayerObject, Message.ToString());
            }
        }
ACR_ServerCommunicator