This commit is contained in:
ORelio 2015-08-21 16:56:51 +02:00
commit c1d2cbd84c
2 changed files with 14 additions and 14 deletions

View file

@ -45,22 +45,18 @@ namespace MinecraftClient
public static string ReadPassword() public static string ReadPassword()
{ {
string password = ""; StringBuilder password = new StringBuilder();
ConsoleKeyInfo k = new ConsoleKeyInfo();
while (k.Key != ConsoleKey.Enter) ConsoleKeyInfo k;
while ((k = Console.ReadKey(true)).Key != ConsoleKey.Enter)
{ {
k = Console.ReadKey(true);
switch (k.Key) switch (k.Key)
{ {
case ConsoleKey.Enter:
Console.Write('\n');
return password;
case ConsoleKey.Backspace: case ConsoleKey.Backspace:
if (password.Length > 0) if (password.Length > 0)
{ {
Console.Write("\b \b"); Console.Write("\b \b");
password = password.Substring(0, password.Length - 1); password.Remove(password.Length - 1, 1);
} }
break; break;
@ -79,12 +75,14 @@ namespace MinecraftClient
if (k.KeyChar != 0) if (k.KeyChar != 0)
{ {
Console.Write('*'); Console.Write('*');
password += k.KeyChar; password.Append(k.KeyChar);
} }
break; break;
} }
} }
return password;
Console.WriteLine();
return password.ToString();
} }
/// <summary> /// <summary>

View file

@ -285,16 +285,18 @@ namespace MinecraftClient.Protocol
StringBuilder result = new StringBuilder(); StringBuilder result = new StringBuilder();
foreach (char c in text) foreach (char c in text)
{ {
if (char.IsLetterOrDigit(c)) if ((c >= '0' && c <= '9') ||
(c >= 'a' && c <= 'z') ||
(c >= 'A' && c <= 'Z'))
{ {
result.Append(c); result.Append(c);
} }
else else
{ {
result.Append("\\u"); result.AppendFormat(@"\u{0:x4}", (int)c);
result.Append(((int)c).ToString("x4"));
} }
} }
return result.ToString(); return result.ToString();
} }
} }