public void FollowPlayer(int NPCID) {
        int follow = npcs[NPCID].followPlayer;
	int playerX = server.playerHandler.players[follow].absX;
	int playerY = server.playerHandler.players[follow].absY;
        npcs[NPCID].RandomWalk = false;
    if(server.playerHandler.players[follow] != null)
     {
      if(playerY < npcs[NPCID].absY) {
      npcs[NPCID].moveX = GetMove(npcs[NPCID].absX, playerX);
      npcs[NPCID].moveY = GetMove(npcs[NPCID].absY, playerY+1);
      }
      else if(playerY > npcs[NPCID].absY) {
      npcs[NPCID].moveX = GetMove(npcs[NPCID].absX, playerX);
      npcs[NPCID].moveY = GetMove(npcs[NPCID].absY, playerY-1);
      }
      else if(playerX < npcs[NPCID].absX) {
      npcs[NPCID].moveX = GetMove(npcs[NPCID].absX, playerX+1);
      npcs[NPCID].moveY = GetMove(npcs[NPCID].absY, playerY);
      }
      else if(playerX > npcs[NPCID].absX) {
      npcs[NPCID].moveX = GetMove(npcs[NPCID].absX, playerX-1);
      npcs[NPCID].moveY = GetMove(npcs[NPCID].absY, playerY);
      }
      npcs[NPCID].getNextNPCMovement();                                              
      npcs[NPCID].updateRequired = true;
     }
    }