#pragma once #include #include #include "bettola/network/tcpsocket.h" #include "bettola/network/udpsocket.h" #include "network/message.h" #include "player.h" class Game { public: Player* add_player(BettolaLib::Network::TCPSocket* socket); void remove_player(unsigned int player_id); void handle_udp_message(const BettolaLib::Network::MessageHeader& header, const char* buffer, const sockaddr_in& from_addr); void broadcast_game_state(BettolaLib::Network::UDPSocket& udp_socket); Player* get_player_by_socket(const BettolaLib::Network::TCPSocket* socket); Player* get_player_by_id(unsigned int id); private: std::vector _players; };