#include #include "server/GameServer.h" #include "server/network/Server.h" void GameServer::start(uint16_t port, uint16_t maxClients) { std::cout << port << std::endl; Server server(port, maxClients, *this); if(!server.isRunning()) { return; } while(serverCommands.isRunning()) { std::cout << "> "; std::string command; std::getline(std::cin, command, '\n'); commandManager.execute(serverCommands, command); } } void GameServer::onFullServerClientConnect(int socket) const { Stream answer; answer.write("Sorry, the server is full"); answer.sendToSocket(socket); } void GameServer::onClientConnect(int socket) const { std::cout << socket << " has connected" << std::endl; Stream answer; answer.write("Welcome to the server."); answer.sendToSocket(socket); } void GameServer::onClientPackage(int socket, Stream& in) const { std::string s = ""; while(in.hasData()) { char c; in.read(&c, 1); s = c + s; } Stream answer; answer.write(s.data(), s.length()); answer.sendToSocket(socket); } void GameServer::onClientDisconnect(int socket) const { std::cout << socket << " has disconnected" << std::endl; Stream answer; answer.write("Bye."); answer.sendToSocket(socket); }