private void writeClient(Client client) { if (client.netStream.DataAvailable) { RequestObject info = new RequestObject(); string message = client.Read(); Console.WriteLine(message); try { info = JsonConvert.DeserializeObject <RequestObject>(message); } catch (Exception ex) { } switch (info.Module) { case "Auth": new Authorization(clients).Dispacher(client, info); break; case "Lobby": new Lobby().Dispacher(client, info, clients.clientsList); break; case "HandShake": var handShake = new HandShake(clients, rooms); handShake.Dispacher(client, info); break; case "Game": new Game(rooms).Dispacher(client, info); break; } } }
private void StartDispacher() { while (true) { for (int i = 0; i < clients.clientsList.Count; i++) { if (clients.clientsList[i].netStream.DataAvailable) { string message = clients.clientsList[i].Read(); RequestObject info = new RequestObject(); try { info = JsonConvert.DeserializeObject <RequestObject>(message); } catch (Exception) { } switch (info.Module) { case "Auth": Authorization auth = new Authorization(clients); auth.Dispacher(clients.clientsList[i], info); break; case "Lobby": Lobby lobby = new Lobby(); lobby.Dispacher(clients.clientsList[i], info, clients.clientsList); break; case "HandShake": HandShake handShake = new HandShake(clients, rooms); handShake.Dispacher(clients.clientsList[i], info); break; case "Game": game.Dispacher(clients.clientsList[i], info); break; } } } } }