network_server.c
changeset 2944 7c392e7b51c6
parent 2882 54af2e527411
child 2952 6a26eeda9679
child 9945 10025bb0aff2
--- a/network_server.c	Tue Jan 31 20:05:44 2006 +0000
+++ b/network_server.c	Tue Jan 31 22:16:15 2006 +0000
@@ -74,12 +74,7 @@
 	Player *player;
 	Packet *p;
 
-	byte active = 0;
-
-	FOR_ALL_PLAYERS(player) {
-		if (player->is_active)
-			active++;
-	}
+	byte active = ActivePlayerCount();
 
 	if (active == 0) {
 		Packet *p = NetworkSend_Init(PACKET_SERVER_COMPANY_INFO);
@@ -214,15 +209,12 @@
 
 	Packet *p;
 	const NetworkClientState *new_cs;
-	const NetworkClientInfo *ci = DEREF_CLIENT_INFO(cs);
 
 	// Invalid packet when status is AUTH or higher
 	if (cs->status >= STATUS_AUTH) return;
 
 	cs->status = STATUS_AUTH;
 	_network_game_info.clients_on++;
-	/* increment spectator; defer company addition for when player is actually created */
-	if (ci->client_playas == OWNER_SPECTATOR) _network_game_info.spectators_on++;
 
 	p = NetworkSend_Init(PACKET_SERVER_WELCOME);
 	NetworkSend_uint16(p, cs->index);
@@ -615,13 +607,13 @@
 	// join another company does not affect these values
 	switch (playas) {
 		case 0: /* New company */
-			if (_network_game_info.companies_on >= _network_game_info.companies_max) {
+			if (ActivePlayerCount() >= _network_game_info.companies_max) {
 				SEND_COMMAND(PACKET_SERVER_ERROR)(cs, NETWORK_ERROR_FULL);
 				return;
 			}
 			break;
 		case OWNER_SPECTATOR: /* Spectator */
-			if (_network_game_info.spectators_on >= _network_game_info.spectators_max) {
+			if (NetworkSpectatorCount() >= _network_game_info.spectators_max) {
 				SEND_COMMAND(PACKET_SERVER_ERROR)(cs, NETWORK_ERROR_FULL);
 				return;
 			}