Exemplo n.º 1
0
    while server.in_game is False:
        conn, addr = server.s.accept()
        if conn not in [player._connection for player in server.players]:
            data = conn.recv(1024)
            player = Player(data.decode())
            player.set_connection(conn)
            server.players.append(player)
            server.broadcast(f'[*] {player} has joined the game')
            # Thread(target=client_thread, args=(player,)).start()
            if len(server.players) == player_count:
                server.in_game = True
                print('[*] Game start')

    game = Blackjack(server.players)

    game.deal()

    while server.in_game is True:

        for player in server.players:
            # JSON format to send data => {"text": text, "active": True/False}
            try:
                player._connection.sendall(
                    json.dumps({
                        "text": player.show_cards(),
                        "active": player == game.active_player()
                    }).encode())
            except IndexError:
                if game.winner is None:
                    game.winner = server.players[0]
                    for player in server.players: