View Javadoc

1   package de.jos.game.objects.buttons;
2   
3   import de.jos.game.objects.screen.AbstractGameObject;
4   import de.jos.game.objects.screen.Screen;
5   
6   public class PuzzleButton extends GameButton {
7   
8     /***
9      * Create an PuzzleButton at the position.
10     * 
11     * @param gameObject
12     * @param x
13     * @param y
14     */
15    public PuzzleButton(AbstractGameObject gameObject, int x, int y) {
16      super(gameObject.getString("menu.puzzle"), x, y, 0, 0, gameObject);
17      // callback registrieren
18      setButtonClickCallback(new PuzzleModeButtonClickCallback(gameObject));
19    }
20  
21    @Override
22    public Action getAction() {
23      return Action.PUZZLE_MODE;
24    }
25  
26    /***
27     * Callback fuer einen Button click.
28     * 
29     * @author root
30     * 
31     */
32    private static final class PuzzleModeButtonClickCallback implements ButtonClickCallback {
33  
34      AbstractGameObject gameObject = null;
35  
36      public PuzzleModeButtonClickCallback(AbstractGameObject gameObject) {
37        this.gameObject = gameObject;
38      }
39  
40      /***
41       * {@inheritDoc}
42       */
43      public void performClickAction() {
44        gameObject.setNextScreen(Screen.LEVEL);
45      }
46  
47    }
48  
49  }