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(); } }