Index: server/server.cpp
===================================================================
--- server/server.cpp	(revision 6e66ffdf57ffae5c067c3c8b3e2101b2e7d49e5e)
+++ server/server.cpp	(revision 5f868c00086f84264d3338e38f380b246cafe046)
@@ -98,6 +98,16 @@
    // add some items to the map. They will be sent out
    // to players when they login
-   // m->addObject(x*25+12, y*25+12, OBJECT_BLUE_FLAG);
-   // m->addObject(x*25+12, y*25+12, OBJECT_RED_FLAG);
+   for (int y=0; y<gameMap->height; y++) {
+      for (int x=0; x<gameMap->width; x++) {
+         switch (gameMap->getStructure(x, y)) {
+            case WorldMap::STRUCTURE_BLUE_FLAG:
+               gameMap->addObject(WorldMap::OBJECT_BLUE_FLAG, x*25+12, y*25+12);
+               break;
+            case WorldMap::STRUCTURE_RED_FLAG:
+               gameMap->addObject(WorldMap::OBJECT_RED_FLAG, x*25+12, y*25+12);
+               break;
+         }
+      }
+   }
 
    sock = socket(AF_INET, SOCK_DGRAM, 0);
@@ -259,5 +269,18 @@
 
                cout << "sending info about " << it->second.name  << endl;
-               cout << "sending ind " << it->second.id  << endl;
+               cout << "sending id " << it->second.id  << endl;
+               if ( sendMessage(&serverMsg, sock, &from) < 0 )
+                  error("sendMessage");
+            }
+
+            // tell the new player about all map objects
+            // (currently just the flags)
+            serverMsg.type = MSG_TYPE_OBJECT;
+            vector<WorldMap::Object> vctObjects = gameMap->getObjects();
+            vector<WorldMap::Object>::iterator itObjects;
+            cout << "sending items" << endl;
+            for (itObjects = vctObjects.begin(); itObjects != vctObjects.end(); itObjects++) {
+               itObjects->serialize(serverMsg.buffer);
+               cout << "sending item id " << itObjects->id  << endl;
                if ( sendMessage(&serverMsg, sock, &from) < 0 )
                   error("sendMessage");
