public Game(ClientObject client1, ClientObject client2, ServerObject server, string idGame) { player1 = client1; player1.numinGame = 1; player2 = client2; player2.numinGame = 2; this.server = server; this.idGame = idGame; //добавить в БД информацию что пользователи в игре server.SetInGame(player1.GetName()); server.SetInGame(player2.GetName()); server.AddGame(player1.GetName(), player2.GetName(), idGame); }
protected internal void RemoveConnection(string id) { // получаем по id закрытое подключение ClientObject client = clients.FirstOrDefault(c => c.Id == id); if (client != null) { Game g = games.FirstOrDefault(c => c.player1 == client || c.player2 == client); if (g != null) { ClientObject opon = g.player1 == client ? g.player2 : g.player1; if (opon != null) { CallBack("opex", opon); RemoveInGame(opon.GetName()); games.Remove(g); DeleteGame(g.idGame); g = null; } } } // и удаляем его из списка подключений if (client != null) { clients.Remove(client); } }