private static void Build_Connection_Message_Samples( List< CNetworkMessage > message_list )
		{
			message_list.Add( new CClientHelloRequest( "SomeLoginName" ) );
			message_list.Add( new CClientHelloResponse( EMessageRequestID.Start, new CPersistentPlayerData( (EPersistenceID) 1, "PlayerName" ) ) );
			message_list.Add( new CConnectionDroppedMessage( EConnectRefusalReason.Name_Already_Connected ) );
			message_list.Add( new CDisconnectRequestMessage() );
			message_list.Add( new CDisconnectResultMessage( EDisconnectReason.Client_Request_Quit ) );
			message_list.Add( new CPingMessage() );

			CQueryPlayerInfoRequest query_info_request = new CQueryPlayerInfoRequest();
			for ( int i = 0; i < 5; i++ )
			{
				query_info_request.Add_Player( (EPersistenceID) i );
			}
			message_list.Add( query_info_request );

			CQueryPlayerInfoResponse query_info_response = new CQueryPlayerInfoResponse( EMessageRequestID.Start );
			for ( int i = 0; i < 5; i++ )
			{
				query_info_response.Add_Player_Info( new CPlayerInfo( (EPersistenceID) i, "SomePlayer" + i.ToString() ) );
			}
			message_list.Add( query_info_response );
		}
        private void On_Query_Player_Info_Request( CQueryPlayerInfoRequest request, ESessionID source_session )
        {
            CQueryPlayerInfoResponse response = new CQueryPlayerInfoResponse( request.RequestID );
            foreach ( var id in request.IDs )
            {
                CConnectedPlayer player = Get_Active_Player_By_Persistence_ID( id );
                if ( player != null )
                {
                    CPlayerInfo player_info = new CPlayerInfo( id );
                    player_info.Name = player.Name;

                    response.Add_Player_Info( player_info );
                }
            }

            Send_Message( response, source_session );
        }
 private void On_Query_Player_Info_Response( CQueryPlayerInfoResponse response )
 {
     foreach ( var response_info in response.Infos )
     {
         CClientPlayerInfo player_info = Get_Player_Info( response_info.PersistenceID );
         if ( player_info != null )
         {
             player_info.On_Player_Info( response_info );
         }
     }
 }