Adding limitation for the number of spectators per game.

This commit is contained in:
lotodore
2013-09-30 23:36:32 +02:00
parent 6a3b13e753
commit c8739ccd47
+6 -1
View File
@@ -82,6 +82,7 @@ using namespace std;
#define SERVER_GAME_FORCED_TIMEOUT_FACTOR 60
#define SERVER_VOTE_KICK_TIMEOUT_SEC 30
#define SERVER_LOOP_DELAY_MSEC 50
#define SERVER_MAX_NUM_SPECTATORS_PER_GAME 100
// Helper functions
@@ -555,7 +556,11 @@ void
ServerGameStateInit::HandleNewSpectator(boost::shared_ptr<ServerGame> server, boost::shared_ptr<SessionData> session)
{
if (session && session->GetPlayerData()) {
AcceptNewSession(server, session, true);
if (server->GetSpectatorIdList().size() >= SERVER_MAX_NUM_SPECTATORS_PER_GAME) {
server->MoveSessionToLobby(session, NTF_NET_REMOVED_GAME_FULL);
} else {
AcceptNewSession(server, session, true);
}
}
}