private void CreateLobby() { connector.Start(); while (!this.isStarted) { if (connector.Clients.Count < CountOfPlayers) { connector.Send("hi", connector.SenderDefaultEndPoint); for (int i = 0; i < connector.AllMessages.Count;) { string[] message = Encoding.UTF8.GetString(connector.AllMessages[0].Message).Split(' '); if (message[0] == "new") { connector.Send("+new", connector.AllMessages[0].Address); connector.Clients.Add(connector.AllMessages[0].Address); Console.WriteLine("К серверу добавлен новый клиент:" + connector.AllMessages[0].Address); } connector.AllMessages.RemoveAt(0); } } else { Game.isReadyToStart = true; connector.AllMessages.Clear(); break; } Thread.Sleep(500); } Console.WriteLine("Лобби собрано"); }
public async void GetServers(Socket socket, string command) { try { DbConnect dbClient = new DbConnect(); string json = command + '§' + await GetServers() + '±'; Connector.Send(socket, json); } catch { Console.WriteLine("Db Error"); Connector.Send(socket, command + '§' + "Error±"); } }
public async void UnwearCommand(Socket socket, string command, string json) { try { DbConnect dbClient = new DbConnect(); string jsonResult = command + '§' + await UnwearCommandResult(json, socket) + '±'; // TODO добавить authToken Connector.Send(socket, jsonResult); } catch { Console.WriteLine("DB Error"); Connector.Send(socket, command + '§' + "{\"result\":\"ERROR\",\"description\":\"error\"}±"); } }