Пример #1
0
 private boolean canMoveBoxAt(PositionSwitcher movement, Box box) {
   if (box != null) {
     Position newBoxPos = movement.change(box.getPosition());
     return isEmpty(newBoxPos);
   }
   return false;
 }
Пример #2
0
  public void movePlayer(PositionSwitcher movement) {
    Position newPlayerPos = movement.change(player.getPosition());
    Box box = boxIn(newPlayerPos);
    if (canMoveBoxAt(movement, box)) {
      box.move(movement);
      player.move(movement);

    } else if (isEmpty(newPlayerPos)) {
      player.move(movement);
    }
  }