diff --git a/minecraft-launcher-client/Launcher.cs b/minecraft-launcher-client/Launcher.cs index 78d1091..f5d79d4 100644 --- a/minecraft-launcher-client/Launcher.cs +++ b/minecraft-launcher-client/Launcher.cs @@ -122,38 +122,16 @@ internal static partial class Launcher RenderTab(tabs.Login); } break; - case ConsoleKey.P: - if (tabs.Current == tabs.Login) - { - tabs.Login = tabs.Login - .Remove(991, 20).Insert(991, "┏━━━━━━━━━━━━━━━━━━┓") - .Remove(1071, 20).Insert(1071, "┃ ┃") - .Remove(1151, 20).Insert(1151, "┗━━━━━━━━━━━━━━━━━━┛"); - RenderTab(tabs.Login); - var password = ReadString(33, 13, 15); - tabs.Login = tabs.Login - .Remove(991, 20).Insert(991, "┌──────────────────┐") - .Remove(1071, 20).Insert(1071, "│ │") - .Remove(1151, 20).Insert(1151, "└──────────────────┘"); - RenderTab(tabs.Login); - if (password.Length < 8) - throw new Exception("password length should be > 7 and < 17"); - password_hash = hasher.HashCycled(password.ToBytes(), 64); - tabs.Login = tabs.Login.Remove(1073, password.Length) - .Insert(1073, "*".Multiply(password.Length)); - RenderTab(tabs.Login); - } - break; case ConsoleKey.L: if (tabs.Current == tabs.Login) { RenderTab(tabs.Current); - if (username.Length < 5) throw new Exception("username is too short"); - if (password_hash.Length == 0) throw new Exception("pasword is null"); + if (username.Length < 2) throw new Exception("username is too short"); + // обновление клиента if (!offline) { - Connect(hasher.HashCycled(username.ToBytes(), password_hash, 64), "launcher"); + Connect("updater".ToBytes(), "updater"); //обновление файлов клиента Info.Log("b", "updating client..."); FSP.DownloadByManifest("download_if_not_exist", Directory.GetCurrent()); @@ -166,7 +144,6 @@ internal static partial class Launcher Info.Log("g", "client updated"); } - config.Save(); // запуск майнкрафта Info.Log("g", "launching minecraft"); LaunchGame(config.JavaPath, config.Username, config.UUID, @@ -175,28 +152,6 @@ internal static partial class Launcher Info.Log("b", "minecraft closed"); } break; - case ConsoleKey.R: - if (tabs.Current == tabs.Login && !offline) - { - RenderTab(tabs.Current); - if (username.Length < 5) throw new Exception("username is too short"); - if (password_hash.Length == 0) throw new Exception("pasword is null"); - Connect("updater".ToBytes(), "updater"); - mainSocket.SendPackage("register new user".ToBytes()); - mainSocket.GetAnswer("ready"); - mainSocket.SendPackage(hasher.HashCycled(username.ToBytes(), password_hash, 64)); - mainSocket.SendPackage(username.ToBytes()); - Thread.Sleep(300); - Console.Write("."); - Thread.Sleep(300); - Console.Write("."); - Thread.Sleep(300); - Console.Write("."); - Thread.Sleep(300); - Console.Write("."); - Info.Log("g", "registration request sent"); - } - break; case ConsoleKey.F2: tabs.Log = File.ReadAllText(Info.LogfileName); RenderTab(tabs.Log, 9999); diff --git a/minecraft-launcher-client/gui/login.gui b/minecraft-launcher-client/gui/login.gui index 48ff9ff..6345030 100644 --- a/minecraft-launcher-client/gui/login.gui +++ b/minecraft-launcher-client/gui/login.gui @@ -10,13 +10,13 @@ ┃ ┌──────────────────┐ ┃ ┃ [N] nickname:│ │ ┃ ┃ └──────────────────┘ ┃ -┃ ┌──────────────────┐ ┃ -┃ [P] password:│ │ ┃ -┃ └──────────────────┘ ┃ ┃ ┃ -┃ ┏━━━━━━━━━━━━━━━┓ ┏━━━━━━━━━━━━━━┓ ┃ -┃ ┃ [L] login ┃ ┃ [R] register ┃ ┃ -┃ ┗━━━━━━━━━━━━━━━┛ ┗━━━━━━━━━━━━━━┛ ┃ +┃ ┏━━━━━━━━━━━━━━━━┓ ┃ +┃ ┃ [L] login ┃ ┃ +┃ ┗━━━━━━━━━━━━━━━━┛ ┃ +┃ ┃ +┃ ┃ +┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ diff --git a/minecraft-launcher-client/gui/settings.gui b/minecraft-launcher-client/gui/settings.gui index d97b0b3..90b06e7 100644 --- a/minecraft-launcher-client/gui/settings.gui +++ b/minecraft-launcher-client/gui/settings.gui @@ -3,7 +3,7 @@ ┣━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━┻━━━━━━━━━━━━━━━┫ ┃ ┃ ┃ ┃ -┃ гыгыг ┃ +┃ ┃ ┃ ┃ ┃ я ещё не добавил настройки ┃ ┃ ┃ diff --git a/minecraft-launcher-server/Server.cs b/minecraft-launcher-server/Server.cs index 15cdf84..d61795e 100644 --- a/minecraft-launcher-server/Server.cs +++ b/minecraft-launcher-server/Server.cs @@ -83,62 +83,13 @@ static class Server switch (request) { case "requesting launcher update": - Info.Log("b", "updater requested launcher update"); + Info.Log("c","updater", "b", " requested launcher update"); fsp.UploadFile("share\\minecraft-launcher.exe"); break; - case "register new user": - Info.Log("b", "new user registration requested"); - handlerSocket.SendPackage("ready".ToBytes()); - var req = StringConverter.MergeToString( - hasher.HashCycled(handlerSocket.GetPackage(), 64).HashToString(), - ":\n{\n\tusername: \"", handlerSocket.GetPackage().BytesToString(), - "\";\n\tuuid: \"null\";\n};"); - var filepath = $"registration_requests\\{DateTime.Now.ToString(MyTimeFormat.ForFileNames)}.req"; - File.WriteAllText(filepath, req); - Info.Log("b", "text wrote to file <", "c", $"registration_requests\\{filepath}", "b", ">"); - break; - default: - throw new Exception("unknown request: " + request); - } - } - else Thread.Sleep(10); - } - } - // запрос от юзера - - if (TryFindUser(hash, out var user)) - { - Info.Log("b", "user is ", "c", user.name); - handlerSocket.SendPackage("launcher".ToBytes()); - // обработка запросов - while (true) - { - if (handlerSocket.Available >= 2) - { - var request = handlerSocket.GetPackage().BytesToString(); - switch (request) - { case "requesting file download": var file = handlerSocket.GetPackage().BytesToString(); - Info.Log("b", "user ", "c", user.name, "b", " requested file ", "c", file + ""); - if (file == "manifest.dtsod") - { - lock (manifestLocker) fsp.UploadFile("share\\manifest.dtsod"); - } - else fsp.UploadFile("share\\" + file); - break; - case "requesting uuid": - Info.Log("b", "user ", "c", user.name, "b", " requested uuid"); - handlerSocket.SendPackage(user.uuid.ToBytes()); - break; - case "excess files found": - Info.Log("b", "user ", "c", user.name, "b", " sent excess files list"); - fsp.DownloadFile($"excesses\\{user.name}-{DateTime.Now.ToString(MyTimeFormat.ForFileNames)}.txt"); - break; - case "sending launcher error": - Info.Log("y", "user ", "c", user.name, "y", "is sending error:"); - string error = handlerSocket.GetPackage().BytesToString(); - Info.Log("y", error + '\n'); + Info.Log("b", "user ", "c","updater", "b", " requested file ", "c", file + ""); + fsp.UploadFile($"share\\{file}"); break; default: throw new Exception("unknown request: " + request); @@ -186,18 +137,4 @@ static class Server +"\"];"); } } - - static bool TryFindUser(byte[] hash, out (string name, string uuid) user) - { - DtsodV23 usersdb = new(File.ReadAllText("users.dtsod")); - user = new(); - if (usersdb.ContainsKey(hash.HashToString())) - { - user.name = usersdb[hash.HashToString()]["username"]; - user.uuid = usersdb[hash.HashToString()]["uuid"]; - return true; - } - - return false; - } } \ No newline at end of file