Ejemplo n.º 1
0
 /**
  * Метод, объединящий движение героев игры.
  *
  * <p>Для движения привидений используется метод Move(), а для движения Пакмана move() или
  * demoMove, в зависимости от режима игры, т.е. значения переменной demo.
  *
  * @throws FileNotFoundException
  * @throws InterruptedException
  */
 public void move() throws FileNotFoundException, InterruptedException {
   if (!demo && !replay) { // обычный режим игры
     if (!pause) {
       pacman.setDemo(false);
       pacman.setReplay(false);
       for (int i = 0; i < ghostNum; i++) ghost[i].Move();
       pacman.move();
       repaint();
     }
   } else if (demo) { // автоматический режим
     pacman.setDemo(true);
     for (int i = 0; i < ghostNum; i++) ghost[i].Move();
     pacman.demoMove();
     repaint();
   } else if (replay) { // повтор игры
     pacman.setReplay(true);
     for (int i = 0; i < ghostNum; i++) ghost[i].notationMove();
     // ghost[i].Move();
     pacman.notationMove();
     if (pacman.collision()) {
       pacman.lives--;
       continueLevel();
     }
     repaint();
   }
 }