Index: client/Client/GameRender.cpp
===================================================================
--- client/Client/GameRender.cpp	(revision 1f6233ee7d55fd790b6369470627371d94bc998f)
+++ client/Client/GameRender.cpp	(revision 5b923076767a61d7f5790a8c4bfca4fa002edcb4)
@@ -74,5 +74,5 @@
       pos = mapToScreen(p->pos.toInt());
 
-      if (p->id == curPlayerId)
+      if (p->getId() == curPlayerId)
          al_draw_filled_circle(pos.x, pos.y, 14, al_map_rgb(0, 0, 0));
       
Index: client/Client/main.cpp
===================================================================
--- client/Client/main.cpp	(revision 1f6233ee7d55fd790b6369470627371d94bc998f)
+++ client/Client/main.cpp	(revision 5b923076767a61d7f5790a8c4bfca4fa002edcb4)
@@ -432,11 +432,13 @@
                   target = it->second;
                   cout << "set target" << endl;
-                  if (target->id != curPlayerId && target->team != curPlayer->team)
+                  if (target->getId() != curPlayerId && target->team != curPlayer->team)
                   {
                      cout << "Found valid target" << endl;
 
+                     unsigned int targetId = target->getId();
+
                      msgTo.type = MSG_TYPE_ATTACK;
                      memcpy(msgTo.buffer, &curPlayerId, 4);
-                     memcpy(msgTo.buffer+4, &target->id, 4);
+                     memcpy(msgTo.buffer+4, &targetId, 4);
 
                      msgProcessor.sendMessage(&msgTo, &server);
@@ -678,8 +680,8 @@
                   p->deserialize(msg.buffer);
 
-                  if (mapPlayers.find(p->id) != mapPlayers.end())
-                     delete mapPlayers[p->id];
-                  mapPlayers[p->id] = p;
-                  curPlayerId = p->id;
+                  if (mapPlayers.find(p->getId()) != mapPlayers.end())
+                     delete mapPlayers[p->getId()];
+                  mapPlayers[p->getId()] = p;
+                  curPlayerId = p->getId();
 
                   cout << "Got a valid login response with the player" << endl;
@@ -732,8 +734,8 @@
                   p.isDead = false;
 
-               if (mapPlayers.find(p.id) != mapPlayers.end())
-                  *(mapPlayers[p.id]) = p;
+               if (mapPlayers.find(p.getId()) != mapPlayers.end())
+                  *(mapPlayers[p.getId()]) = p;
                else
-                  mapPlayers[p.id] = new Player(p);
+                  mapPlayers[p.getId()] = new Player(p);
 
                break;
@@ -771,5 +773,5 @@
 
                Player* source = mapPlayers[id];
-               source->targetPlayer = targetID;
+               source->setTargetPlayer(targetID);
                source->isChasing = true;
 
@@ -953,8 +955,8 @@
                   p.isDead = false;
 
-               if (mapPlayers.find(p.id) != mapPlayers.end())
-                  *(mapPlayers[p.id]) = p;
+               if (mapPlayers.find(p.getId()) != mapPlayers.end())
+                  *(mapPlayers[p.getId()]) = p;
                else
-                  mapPlayers[p.id] = new Player(p);
+                  mapPlayers[p.getId()] = new Player(p);
 
                break;
@@ -966,4 +968,5 @@
                Player p("", "");
                p.deserialize(msg.buffer);
+               cout << "Deserialized player" << endl;
                p.timeLastUpdated = getCurrentMillis();
                p.isChasing = false;
@@ -973,10 +976,10 @@
                   p.isDead = false;
 
-               if (mapPlayers.find(p.id) != mapPlayers.end())
-                  *(mapPlayers[p.id]) = p;
+               if (mapPlayers.find(p.getId()) != mapPlayers.end())
+                  *(mapPlayers[p.getId()]) = p;
                else
-                  mapPlayers[p.id] = new Player(p);
-
-               game->addPlayer(mapPlayers[p.id]);
+                  mapPlayers[p.getId()] = new Player(p);
+
+               game->addPlayer(mapPlayers[p.getId()]);
 
                break;
@@ -1051,5 +1054,5 @@
                // need to check the target exists in the current game
                Player* source = game->getPlayers()[id];
-               source->targetPlayer = targetId;
+               source->setTargetPlayer(targetId);
                source->isChasing = true;
 
