private boolean moveToParts() throws GameActionException {
    if (castleMove.getTarget() == null || round - lastMove < 3) {
      return false;
    }

    Direction toMove = castleMove.getNextDirToTarget();
    if (castleMove.canMove(toMove)) {
      move(toMove);
      return true;
    }
    return false;
  }