Index: client/Client/main.cpp
===================================================================
--- client/Client/main.cpp	(revision 635ad9bc611245f979f31a3cb8536a7cd912cc7a)
+++ client/Client/main.cpp	(revision 68d94de7bbe815d1c0be9b36199a2411f78823b3)
@@ -130,5 +130,4 @@
 
 MessageProcessor msgProcessor;
-ofstream outputLog;
 
 int main(int argc, char **argv)
@@ -141,4 +140,6 @@
    map<unsigned int, Projectile> mapProjectiles;
    unsigned int curPlayerId = -1;
+   ofstream outputLog;
+
    int scoreBlue, scoreRed;
 
@@ -341,4 +342,6 @@
    memcpy((char *)&server.sin_addr, (char *)hp->h_addr, hp->h_length);
    server.sin_port = htons(atoi(argv[2]));
+
+   msgProcessor = MessageProcessor(sock, &outputLog);
 
    al_start_timer(timer);
@@ -370,5 +373,5 @@
                   msgTo.type = MSG_TYPE_PICKUP_FLAG;
                   memcpy(msgTo.buffer, &curPlayerId, 4);
-                  msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+                  msgProcessor.sendMessage(&msgTo, &server);
                }
                break;
@@ -391,5 +394,5 @@
                         msgTo.type = MSG_TYPE_DROP_FLAG;
                         memcpy(msgTo.buffer, &curPlayerId, 4);
-                        msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+                        msgProcessor.sendMessage(&msgTo, &server);
                      }
                   }
@@ -414,5 +417,5 @@
                   memcpy(msgTo.buffer+8, &pos.y, 4);
 
-                  msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+                  msgProcessor.sendMessage(&msgTo, &server);
                }
                else
@@ -449,5 +452,5 @@
                      memcpy(msgTo.buffer+4, &target->id, 4);
 
-                     msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+                     msgProcessor.sendMessage(&msgTo, &server);
                   }
                }
@@ -456,5 +459,5 @@
       }
 
-      if (msgProcessor.receiveMessage(&msgFrom, sock, &from, &outputLog) >= 0)
+      if (msgProcessor.receiveMessage(&msgFrom, &from) >= 0)
          processMessage(msgFrom, state, chatConsole, gameMap, mapPlayers, mapProjectiles, curPlayerId, scoreBlue, scoreRed);
 
@@ -463,6 +466,5 @@
          redraw = false;
 
-         msgProcessor.resendUnackedMessages(sock, &outputLog);
-         //msgProcessor.cleanAckedMessages(&outputLog);
+         msgProcessor.resendUnackedMessages();
 
          if (debugging && wndCurrent == wndGame)
@@ -981,5 +983,5 @@
                strcpy(msgTo.buffer, gameName.c_str());
 
-               msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+               msgProcessor.sendMessage(&msgTo, &server);
 
                break;
@@ -1362,5 +1364,5 @@
    memcpy(msgTo.buffer+username.size()+password.size()+2, &playerClass, 4);
 
-   msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+   msgProcessor.sendMessage(&msgTo, &server);
 }
 
@@ -1379,5 +1381,5 @@
    strcpy(msgTo.buffer+username.size()+1, strPassword.c_str());
 
-   msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+   msgProcessor.sendMessage(&msgTo, &server);
 
    state = STATE_LOBBY;
@@ -1404,5 +1406,5 @@
    strcpy(msgTo.buffer, username.c_str());
 
-   msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+   msgProcessor.sendMessage(&msgTo, &server);
 }
 
@@ -1420,5 +1422,5 @@
    strcpy(msgTo.buffer, msg.c_str());
 
-   msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+   msgProcessor.sendMessage(&msgTo, &server);
 }
 
@@ -1438,5 +1440,5 @@
    strcpy(msgTo.buffer, msg.c_str());
 
-   msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+   msgProcessor.sendMessage(&msgTo, &server);
 }
 
@@ -1453,5 +1455,5 @@
    strcpy(msgTo.buffer, msg.c_str());
 
-   msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+   msgProcessor.sendMessage(&msgTo, &server);
 }
 
@@ -1467,5 +1469,5 @@
    msgTo.type = MSG_TYPE_LEAVE_GAME;
 
-   msgProcessor.sendMessage(&msgTo, sock, &server, &outputLog);
+   msgProcessor.sendMessage(&msgTo, &server);
 }
 
