public virtual net.minecraft.src.EntityPlayerMP Login(net.minecraft.src.NetLoginHandler
                                                              netloginhandler, string s)
        {
            if (bannedPlayers.Contains(s.Trim().ToLower()))
            {
                netloginhandler.KickUser("You are banned from this server!");
                return(null);
            }
            if (!IsAllowedToLogin(s))
            {
                netloginhandler.KickUser("You are not white-listed on this server!");
                return(null);
            }
            string s1 = netloginhandler.netManager.GetRemoteAddress().ToString();

            s1 = s1.Substring(s1.IndexOf("/") + 1);
            s1 = s1.Substring(0, s1.IndexOf(":"));
            if (bannedIPs.Contains(s1))
            {
                netloginhandler.KickUser("Your IP address is banned from this server!");
                return(null);
            }
            if (playerEntities.Count >= maxPlayers)
            {
                netloginhandler.KickUser("The server is full!");
                return(null);
            }
            for (int i = 0; i < playerEntities.Count; i++)
            {
                net.minecraft.src.EntityPlayerMP entityplayermp = (net.minecraft.src.EntityPlayerMP
                                                                   )playerEntities[i];
                if (entityplayermp.username.Equals(s, System.StringComparison.OrdinalIgnoreCase))
                {
                    entityplayermp.netServerHandler.KickPlayer("You logged in from another location");
                }
            }
            return(new net.minecraft.src.EntityPlayerMP(mcServer, mcServer.GetWorldServer(0)
                                                        , s, new net.minecraft.src.ItemInWorldManager(mcServer.GetWorldServer(0))));
        }
 public virtual void HandleNetworkListenThread()
 {
     for (int i = 0; i < pendingConnections.Count; i++)
     {
         net.minecraft.src.NetLoginHandler netloginhandler = (net.minecraft.src.NetLoginHandler)pendingConnections[i];
         try
         {
             netloginhandler.TryLogin();
         }
         catch (System.Exception exception)
         {
             netloginhandler.KickUser("Internal server error");
             logger.Warning((new java.lang.StringBuilder()).Append("Failed to handle packet: ").Append(exception).ToString());
             logger.Log(exception.ToString());
         }
         if (netloginhandler.finishedProcessing)
         {
             pendingConnections.RemoveAt(i--);
         }
         netloginhandler.netManager.InterruptThreads();
     }
     for (int j = 0; j < playerList.Count; j++)
     {
         net.minecraft.src.NetServerHandler netserverhandler = (net.minecraft.src.NetServerHandler)playerList[j];
         try
         {
             netserverhandler.HandlePackets();
         }
         catch (System.Exception exception1)
         {
             logger.Warning((new java.lang.StringBuilder()).Append("Failed to handle packet: ").Append(exception1).ToString());
             logger.Log(exception1.ToString());
             netserverhandler.KickPlayer("Internal server error");
         }
         if (netserverhandler.disconnected)
         {
             playerList.RemoveAt(j--);
         }
         netserverhandler.netManager.InterruptThreads();
     }
 }