Index: server/server.cpp
===================================================================
--- server/server.cpp	(revision 95d7add6df1adfdcec277b580d3914bcd0a2e3d3)
+++ server/server.cpp	(revision cf057294ce2ede368610b13485ab93d710bd774f)
@@ -718,5 +718,6 @@
 
          map<unsigned int, Player*>& oldPlayers = g->getPlayers();
-         g->addPlayer(p);
+         g->addPlayer(p, true);
+         p->team = -1;
 
          // send info to other players
@@ -752,4 +753,17 @@
          break;
       }
+      case MSG_TYPE_JOIN_TEAM:
+      {
+         cout << "Received a JOIN_TEAM message" << endl;
+
+         Player* p = findPlayerByAddr(mapPlayers, from);
+         map<unsigned int, Player*> players = p->currentGame->getPlayers();
+
+         memcpy(&(p->team), clientMsg.buffer, 4);
+
+         serverMsg.type = MSG_TYPE_PLAYER;
+         p->serialize(serverMsg.buffer);
+         msgProcessor.broadcastMessage(serverMsg, players);
+      }
       default:
       {
