#ifndef GAMESERVER_H #define GAMESERVER_H #include #include "server/network/IServerListener.h" #include "server/commands/ICommandSource.h" #include "server/commands/CommandManager.h" #include "server/IGameServer.h" using namespace std; class GameServer : public IServerListener, public ICommandSource, public IGameServer { public: GameServer(); virtual ~GameServer(); void start(unsigned short port, unsigned short maxClients); void onFullServerClientConnect(int socket) override; void onClientConnect(int socket) override; void onClientPackage(int socket, Stream& in) override; void onClientDisconnect(int socket) override; void stop() override; bool isServer() const override; private: bool isRunning = false; CommandManager commandManager; }; #endif