minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java
branchibrwsr
changeset 124 533c2be1747c
parent 99 ae4e3694c2d3
parent 116 4dce5ea7e13a
child 138 f4d6b81c2f07
     1.1 --- a/minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java	Sun Mar 09 15:21:42 2014 +0100
     1.2 +++ b/minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java	Thu Mar 27 15:14:48 2014 +0100
     1.3 @@ -39,7 +39,7 @@
     1.4      @Property(name = "state", type = MinesModel.GameState.class),
     1.5      @Property(name = "rows", type = Row.class, array = true),
     1.6  })
     1.7 -final class MinesModel {
     1.8 +public final class MinesModel {
     1.9      enum GameState {
    1.10          IN_PROGRESS, WON, LOST;
    1.11      }
    1.12 @@ -231,7 +231,7 @@
    1.13          }
    1.14      }
    1.15      
    1.16 -    private static final AudioClip TOUCH = AudioClip.create("move.mp3");
    1.17 +    private static AudioClip TOUCH;
    1.18      @Function static void click(Mines model, Square data) {
    1.19          if (model.getState() != GameState.IN_PROGRESS) {
    1.20              return;
    1.21 @@ -243,6 +243,9 @@
    1.22                      showAllBombs(model, SquareType.EXPLOSION);
    1.23                      model.setState(GameState.LOST);
    1.24                  } else {
    1.25 +                    if (TOUCH == null) {
    1.26 +                        TOUCH = AudioClip.create("move.mp3");
    1.27 +                    }
    1.28                      TOUCH.play();
    1.29                      expandKnown(model, data);
    1.30                      model.computeMines();
    1.31 @@ -308,5 +311,12 @@
    1.32          Square sq = columns.get(x);
    1.33          return sq.isMine() ? 1 : 0;
    1.34      }
    1.35 -    
    1.36 +
    1.37 +    /**
    1.38 +     * Called when page is ready
    1.39 +     */
    1.40 +    public static void main(String... args) throws Exception {
    1.41 +        Mines m = new Mines();
    1.42 +        m.applyBindings();
    1.43 +    }
    1.44  }