View Javadoc

1   package de.jos.game.actions.cleanup;
2   
3   import java.util.List;
4   
5   import org.apache.commons.logging.Log;
6   import org.apache.commons.logging.LogFactory;
7   
8   import de.jos.game.actions.ActionFadeBullets;
9   import de.jos.game.logic.AbstractGameBoard;
10  import de.jos.game.objects.Bullet;
11  
12  public class CleanupActionBulletMovingPuzzle extends CleanupActionAbstractBulletMoving {
13  
14    private static Log log = LogFactory.getLog(CleanupActionBulletMovingPuzzle.class);
15  
16    public CleanupActionBulletMovingPuzzle(AbstractGameBoard board, Bullet bullet) {
17      super(board, bullet);
18    }
19  
20    public void cleanupSpecific(List<Bullet> dissolveBulletList) {
21      if (dissolveBulletList != null) {
22        System.out.println("three in a row found");
23        log.debug("three in a row found !!!");
24  
25        // bullets vom board entfernen und in neue action einbringen
26        for (Bullet tmpBullet : dissolveBulletList) {
27          getGameBoard().removeBullet(tmpBullet.getBoardX(), tmpBullet.getBoardY());
28        }
29  
30        // create new action
31        ActionFadeBullets actionDissolveBullets = new ActionFadeBullets(Bullet.State.DISSOLVING);
32        actionDissolveBullets.setResourceContainer(getGameBoard().getResourceContainer());
33        actionDissolveBullets.getBulletList().addAll(dissolveBulletList);
34        actionDissolveBullets.init();
35  
36        // add action to the new special event list
37        getNewSpecialEventList().add(actionDissolveBullets);
38      }
39    }
40  
41  }