diff --git a/MinecraftClient/MinecraftCom.cs b/MinecraftClient/MinecraftCom.cs index f8bb436f..eba92574 100644 --- a/MinecraftClient/MinecraftCom.cs +++ b/MinecraftClient/MinecraftCom.cs @@ -15,7 +15,7 @@ namespace MinecraftClient { #region Login to Minecraft.net, Obtaining a session ID - public enum LoginResult { Error, Success, WrongPassword, Blocked, AccountMigrated, NotPremium }; + public enum LoginResult { Error, Success, WrongPassword, Blocked, AccountMigrated, NotPremium, BadRequest }; /// /// Allows to login to a premium Minecraft account, and retrieve the session ID. @@ -32,11 +32,12 @@ namespace MinecraftClient Console.ForegroundColor = ConsoleColor.DarkGray; WebClient wClient = new WebClient(); Console.WriteLine("https://login.minecraft.net/?user=" + user + "&password=<******>&version=13"); - string result = wClient.DownloadString("https://login.minecraft.net/?user=" + user + "&password=" + pass + "&version=13"); + string result = Encoding.ASCII.GetString(wClient.UploadValues("https://login.minecraft.net/", new System.Collections.Specialized.NameValueCollection() { { "user", user }, { "password", pass }, { "version", "13" } } )); outdata = result; Console.WriteLine(result); Console.ForegroundColor = ConsoleColor.Gray; if (result == "Bad login") { return LoginResult.WrongPassword; } + if (result == "Bad request") { return LoginResult.BadRequest; } if (result == "User not premium") { return LoginResult.NotPremium; } if (result == "Too many failed logins") { return LoginResult.Blocked; } if (result == "Account migrated, use e-mail as username.") { return LoginResult.AccountMigrated; } diff --git a/MinecraftClient/Program.cs b/MinecraftClient/Program.cs index c81daa0e..b7c456f3 100644 --- a/MinecraftClient/Program.cs +++ b/MinecraftClient/Program.cs @@ -251,6 +251,7 @@ namespace MinecraftClient { case MinecraftCom.LoginResult.AccountMigrated: Console.WriteLine("Account migrated, use e-mail as username."); break; case MinecraftCom.LoginResult.Blocked: Console.WriteLine("Too many failed logins. Please try again later."); break; + case MinecraftCom.LoginResult.BadRequest: Console.WriteLine("Login attempt rejected: Bad request."); break; case MinecraftCom.LoginResult.WrongPassword: Console.WriteLine("Incorrect password."); break; case MinecraftCom.LoginResult.NotPremium: Console.WriteLine("User not premium."); break; case MinecraftCom.LoginResult.Error: Console.WriteLine("Network error."); break;