public boolean move(int newX, int newY) {
      boolean movementOK = false;
        /*update graphics if wanted*/
      if (useGraphics) {
         picture.updateGraphics(); 
      }
      for (direction d : direction.values()) {
         if ((currentCell.locX() + d.xOffset()) == newX
                 && (currentCell.locY() + d.yOffset()) == newY
                 && currentCell.sI.features[d.index()] == feature.OPEN) {
            movementOK = true;
         }
      }
      if (movementOK) {
         currentCell.isCurrentCell(false);
         currentCell = floorPlan.getCell ( newX, newY );
      }
      currentCell.isCurrentCell(true);
      return movementOK;
   }