public static bool OnDisconnectStatic(DisconnectReason reason, string message) { AutoRelog bot = new AutoRelog(Settings.AutoRelog_Delay, Settings.AutoRelog_Retries); bot.Initialize(); return(bot.OnDisconnect(reason, message)); }
public static bool OnDisconnectStatic(DisconnectReason reason, string message) { if (Settings.AutoRelog_Enabled) { AutoRelog bot = new AutoRelog(Settings.AutoRelog_Delay, Settings.AutoRelog_Retries); return(bot.OnDisconnect(reason, message)); } return(false); }
public static bool OnDisconnectStatic(DisconnectReason reason, string message) { if (Settings.AutoRelog_Enabled) { AutoRelog bot = new AutoRelog(Settings.AutoRelog_Delay, Settings.AutoRelog_Retries); return bot.OnDisconnect(reason, message); } return false; }
/// <summary> /// Start a new Client /// </summary> private static void InitializeClient() { ProtocolHandler.LoginResult result; Settings.Username = Settings.Login; string sessionID = ""; string UUID = ""; if (Settings.Password == "-") { ConsoleIO.WriteLineFormatted("§8You chose to run in offline mode."); result = ProtocolHandler.LoginResult.Success; sessionID = "0"; } else { Console.WriteLine("Connecting to Minecraft.net..."); result = ProtocolHandler.GetLogin(ref Settings.Username, Settings.Password, ref sessionID, ref UUID); } if (result == ProtocolHandler.LoginResult.Success) { if (Settings.ConsoleTitle != "") Console.Title = Settings.expandVars(Settings.ConsoleTitle); if (Settings.playerHeadAsIcon) ConsoleIcon.setPlayerIconAsync(Settings.Username); Console.WriteLine("Success. (session ID: " + sessionID + ')'); if (Settings.ServerIP == "") { Console.Write("Server IP : "); Settings.setServerIP(Console.ReadLine()); } //Get server version int protocolversion = 0; if (Settings.ServerVersion != "" && Settings.ServerVersion.ToLower() != "auto") { protocolversion = Protocol.ProtocolHandler.MCVer2ProtocolVersion(Settings.ServerVersion); if (protocolversion != 0) { ConsoleIO.WriteLineFormatted("§8Using Minecraft version " + Settings.ServerVersion + " (protocol v" + protocolversion + ')'); } else ConsoleIO.WriteLineFormatted("§8Unknown or not supported MC version '" + Settings.ServerVersion + "'.\nSwitching to autodetection mode."); } if (protocolversion == 0) { Console.WriteLine("Retrieving Server Info..."); if (!ProtocolHandler.GetServerInfo(Settings.ServerIP, Settings.ServerPort, ref protocolversion)) { Console.WriteLine("Failed to ping this IP."); if (Settings.AutoRelog_Enabled) { ChatBots.AutoRelog bot = new ChatBots.AutoRelog(Settings.AutoRelog_Delay, Settings.AutoRelog_Retries); if (!bot.OnDisconnect(ChatBot.DisconnectReason.ConnectionLost, "Failed to ping this IP.")) { OfflineCommandPrompt(); } } else OfflineCommandPrompt(); return; } } if (protocolversion != 0) { try { //Start the main TCP client if (Settings.SingleCommand != "") { Client = new McTcpClient(Settings.Username, UUID, sessionID, Settings.ServerIP, Settings.ServerPort, protocolversion, Settings.SingleCommand); } else Client = new McTcpClient(Settings.Username, UUID, sessionID, protocolversion, Settings.ServerIP, Settings.ServerPort); } catch (NotSupportedException) { Console.WriteLine("Cannot connect to the server : This version is not supported !"); OfflineCommandPrompt(); } } else { Console.WriteLine("Failed to determine server version."); OfflineCommandPrompt(); } } else { Console.ForegroundColor = ConsoleColor.Gray; Console.Write("Connection failed : "); switch (result) { case ProtocolHandler.LoginResult.AccountMigrated: Console.WriteLine("Account migrated, use e-mail as username."); break; case ProtocolHandler.LoginResult.ServiceUnavailable: Console.WriteLine("Login servers are unavailable. Please try again later."); break; case ProtocolHandler.LoginResult.WrongPassword: Console.WriteLine("Incorrect password."); break; case ProtocolHandler.LoginResult.NotPremium: Console.WriteLine("User not premium."); break; case ProtocolHandler.LoginResult.OtherError: Console.WriteLine("Network error."); break; case ProtocolHandler.LoginResult.SSLError: Console.WriteLine("SSL Error."); if (isUsingMono) { ConsoleIO.WriteLineFormatted("§8It appears that you are using Mono to run this program." + '\n' + "The first time, you have to import HTTPS certificates using:" + '\n' + "mozroots --import --ask-remove"); return; } break; } while (Console.KeyAvailable) { Console.ReadKey(false); } if (Settings.SingleCommand == "") { OfflineCommandPrompt(); } } }
/// <summary> /// Start a new Client /// </summary> private static void InitializeClient() { ProtocolHandler.LoginResult result; Settings.Username = Settings.Login; string sessionID = ""; string UUID = ""; if (Settings.Password == "-") { ConsoleIO.WriteLineFormatted("§8You chose to run in offline mode."); result = ProtocolHandler.LoginResult.Success; sessionID = "0"; } else { Console.WriteLine("Connecting to Minecraft.net..."); result = ProtocolHandler.GetLogin(ref Settings.Username, Settings.Password, ref sessionID, ref UUID); } if (result == ProtocolHandler.LoginResult.Success) { if (Settings.ConsoleTitle != "") { Console.Title = Settings.expandVars(Settings.ConsoleTitle); } if (Settings.playerHeadAsIcon) { ConsoleIcon.setPlayerIconAsync(Settings.Username); } Console.WriteLine("Success. (session ID: " + sessionID + ')'); if (Settings.ServerIP == "") { Console.Write("Server IP : "); Settings.setServerIP(Console.ReadLine()); } //Get server version int protocolversion = 0; if (Settings.ServerVersion != "" && Settings.ServerVersion.ToLower() != "auto") { protocolversion = Protocol.ProtocolHandler.MCVer2ProtocolVersion(Settings.ServerVersion); if (protocolversion != 0) { ConsoleIO.WriteLineFormatted("§8Using Minecraft version " + Settings.ServerVersion + " (protocol v" + protocolversion + ')'); } else { ConsoleIO.WriteLineFormatted("§8Unknown or not supported MC version '" + Settings.ServerVersion + "'.\nSwitching to autodetection mode."); } } if (protocolversion == 0) { Console.WriteLine("Retrieving Server Info..."); if (!ProtocolHandler.GetServerInfo(Settings.ServerIP, Settings.ServerPort, ref protocolversion)) { Console.WriteLine("Failed to ping this IP."); if (Settings.AutoRelog_Enabled) { ChatBots.AutoRelog bot = new ChatBots.AutoRelog(Settings.AutoRelog_Delay, Settings.AutoRelog_Retries); if (!bot.OnDisconnect(ChatBot.DisconnectReason.ConnectionLost, "Failed to ping this IP.")) { OfflineCommandPrompt(); } } else { OfflineCommandPrompt(); } return; } } if (protocolversion != 0) { try { //Start the main TCP client if (Settings.SingleCommand != "") { Client = new McTcpClient(Settings.Username, UUID, sessionID, Settings.ServerIP, Settings.ServerPort, protocolversion, Settings.SingleCommand); } else { Client = new McTcpClient(Settings.Username, UUID, sessionID, protocolversion, Settings.ServerIP, Settings.ServerPort); } } catch (NotSupportedException) { Console.WriteLine("Cannot connect to the server : This version is not supported !"); OfflineCommandPrompt(); } } else { Console.WriteLine("Failed to determine server version."); OfflineCommandPrompt(); } } else { Console.ForegroundColor = ConsoleColor.Gray; Console.Write("Connection failed : "); switch (result) { case ProtocolHandler.LoginResult.AccountMigrated: Console.WriteLine("Account migrated, use e-mail as username."); break; case ProtocolHandler.LoginResult.ServiceUnavailable: Console.WriteLine("Login servers are unavailable. Please try again later."); break; case ProtocolHandler.LoginResult.WrongPassword: Console.WriteLine("Incorrect password."); break; case ProtocolHandler.LoginResult.NotPremium: Console.WriteLine("User not premium."); break; case ProtocolHandler.LoginResult.OtherError: Console.WriteLine("Network error."); break; case ProtocolHandler.LoginResult.SSLError: Console.WriteLine("SSL Error."); if (isUsingMono) { ConsoleIO.WriteLineFormatted("§8It appears that you are using Mono to run this program." + '\n' + "The first time, you have to import HTTPS certificates using:" + '\n' + "mozroots --import --ask-remove"); return; } break; } while (Console.KeyAvailable) { Console.ReadKey(false); } if (Settings.SingleCommand == "") { OfflineCommandPrompt(); } } }