1 package de.jos.game.actions.cleanup; 2 3 import de.jos.game.actions.ActionScrollInOut; 4 import de.jos.game.logic.AbstractGameBoard; 5 import de.jos.game.logic.InfiniteGameLogic; 6 7 public class CleanupActionScore extends AbstractCleanupAction { 8 9 private int scoreToAdd = 0; 10 11 public CleanupActionScore(AbstractGameBoard board, int score) { 12 super(board); 13 setResourceContainer(board.getResourceContainer()); 14 scoreToAdd = score; 15 } 16 17 public void cleanup() { 18 getGameBoard().getActionContainer().getActionStatistics().updateScore(scoreToAdd); 19 20 int newScore = getGameBoard().getActionContainer().getActionStatistics().getScore(); 21 if (newScore >= getGameBoard().getLevel().getLevelAdvanceScore().intValue()) { 22 ActionScrollInOut actionScroll = new ActionScrollInOut(); 23 actionScroll.setResourceContainer(getGameBoard().getResourceContainer()); 24 actionScroll.setText1(getString("text.scroller.levelAdvancement", "!")); 25 actionScroll.setText2(getString("text.scroller.newCombinations", ": " + 1)); 26 actionScroll.setNextLevelNewColor(getGameBoard().getLevel().getNextLevelNewColor()); 27 actionScroll.init(); 28 29 CleanupActionLevelAdvancement cleanupLevelAdvancement = new CleanupActionLevelAdvancement(getGameBoard(), 30 (InfiniteGameLogic) getGameBoard().getGameLogic()); 31 cleanupLevelAdvancement.setResourceContainer(getResourceContainer()); 32 actionScroll.setCleanupAction(cleanupLevelAdvancement); 33 34 getNewSpecialEventList().add(actionScroll); 35 } 36 } 37 38 }