Exemplo n.º 1
0
 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);
 }
Exemplo n.º 2
0
        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);
            }
        }