Index: server/server.cpp
===================================================================
--- server/server.cpp	(revision c991530c5271231502040caa8dace1bf5dc5486f)
+++ server/server.cpp	(revision 8826eed86fc0b8ccfd70b3be2d1960c9fd4c4e7d)
@@ -7,5 +7,4 @@
 #include <fstream>
 #include <cstring>
-#include <cmath>
 
 #include <vector>
@@ -336,8 +335,4 @@
             cout << "new player id: " << p->getId() << endl;
             p->setAddr(from);
-            p->currentGame = NULL;
-
-            // choose a random team (either 0 or 1)
-            p->team = rand() % 2;
 
             serverMsg.type = MSG_TYPE_PLAYER;
@@ -696,6 +691,4 @@
 
          Player* p = findPlayerByAddr(mapPlayers, from);
-         p->team = rand() % 2; // choose a random team (either 0 or 1)
-         p->currentGame = g;
 
          // tell the new player about all map objects
@@ -723,11 +716,13 @@
          msgProcessor.sendMessage(&serverMsg, &from);
 
+
+         map<unsigned int, Player*>& oldPlayers = g->getPlayers();
+         g->addPlayer(p);
+
          // send info to other players
          serverMsg.type = MSG_TYPE_PLAYER_JOIN_GAME;
          p->serialize(serverMsg.buffer);
          cout << "Should be broadcasting the message" << endl;
-         msgProcessor.broadcastMessage(serverMsg, g->getPlayers());
-
-         g->addPlayer(p);
+         msgProcessor.broadcastMessage(serverMsg, oldPlayers);
 
 
@@ -735,5 +730,4 @@
          cout << "Sending other players to new player" << endl;
          serverMsg.type = MSG_TYPE_PLAYER_JOIN_GAME;
-
          
          map<unsigned int, Player*>& allPlayers = g->getPlayers();
@@ -747,4 +741,5 @@
             msgProcessor.sendMessage(&serverMsg, &from);
          }
+
 
          int numPlayers = g->getNumPlayers();
