コード例 #1
0
ファイル: Play.java プロジェクト: prabn9/conect_move_it
  @SuppressWarnings("unchecked")
  public void init() {

    paint = new Paint(Paint.ANTI_ALIAS_FLAG);

    this.rows = board.rows;
    this.cols = board.cols;

    gridPoints = board.gridPoints;
    balls = (HashMap<Point, Integer>) board.ball.clone();
    boardStatus = board.boardStatus;
    ballPosition = new HashMap<Point, Point>();
    canBallMove = new HashMap<Point, Boolean>();
    newPoints = new HashMap<Point, Integer>();

    gridSize = board.gridSize;
    trigger = new String();
    isMoving = false;
    upTriggred = true;

    gameEnd = false;

    // hints
    view.totalHintsLeft = view.savedState.getInt("totalHintsLeft", 10);
    hint = new Hint(this);
    hint.hints = board.hints;

    state = new GameState(this);

    view.buttonAction.mbRedo.disable();
    view.buttonAction.mbUndo.disable();
  }
コード例 #2
0
ファイル: Play.java プロジェクト: prabn9/conect_move_it
  void dialog_click_up(int x, int y) {

    if (mdCompleted.active) { // level complete show dialogue box

      if (mdCompleted.checkIn(x, y)) {
        if (mdCompleted.inTouch1) { // restart level
          mdCompleted.inTouch1 = false;
          mdCompleted.active = false;

          view.board.reset(view.currentLevel);
          resetPlay();
          view.buttonAction.enableAll();

        } else { // play next level
          mdCompleted.inTouch2 = false;
          mdCompleted.active = false;

          if (view.currentLevel == view.maxLevel) {

            view.gameMode = GameMode.SELECTPACK;
          } else if (view.currentLevel
              < view.maxLevel) { // level // < max or game over:: out of movers
            view.currentLevel++;
            view.board.reset(view.currentLevel);
            resetPlay();
            view.buttonAction.enableAll();
          }
        }
      }
    }
  } // end of dialog_click_up
コード例 #3
0
ファイル: Play.java プロジェクト: prabn9/conect_move_it
  public void setMessageHintsAndMoves() {

    mdCompleted.active = true;
    // game ends
    if (view.savedState.getInt("hintGained_" + view.pack + "_level_" + view.currentLevel, 0) == 0) {
      // add hint

      view.editor.putInt("hintGained_" + view.pack + "_level_" + view.currentLevel, 1);
      view.editor.commit();

      if (moves
          <= view.savedState.getInt(
              "bestMove_level_" + view.currentLevel + "_pack_" + view.pack, board.bestMove)) {

        if (view.savedState.getInt("statusMove" + view.pack + "_" + view.currentLevel, 0) != 2) {
          view.editor.putInt("statusMove" + view.pack + "_" + view.currentLevel, 2);
          view.editor.commit();
        }

        view.editor.putInt("bestMove_level_" + view.currentLevel + "_pack_" + view.pack, moves);
        view.totalHintsLeft += 2;
        view.editor.putInt("totalHintsLeft", view.totalHintsLeft);
        view.editor.putInt("pack" + view.pack + "_level" + view.currentLevel + "moves", moves);
        view.editor.putString(view.pack + "level" + view.currentLevel, moves + "");
        view.editor.commit();
        // show dialog after game is completed in best time plus 2 hints

        if (view.currentLevel < view.maxLevel) {
          mdCompleted.set(
              endGame[0],
              new String[] {
                endGame[2],
                view.context.getResources().getString(R.string.in_the_best_move_and_got_2_hints)
              },
              new String[] {nextLevelPlayAgain[1], nextLevelPlayAgain[0]});
        } else {
          mdCompleted.set(
              endGame[0],
              new String[] {
                endGame[2],
                view.context.getResources().getString(R.string.in_the_best_move_and_got_2_hints)
              },
              new String[] {playAgainQuit[0], playAgainQuit[1]});
        }
      } else {
        if (view.savedState.getInt("statusMove" + view.pack + "_" + view.currentLevel, 0) < 1) {
          view.editor.putInt("statusMove" + view.pack + "_" + view.currentLevel, 1);
          view.editor.commit();
        }

        view.totalHintsLeft++;
        view.editor.putInt("totalHintsLeft", view.totalHintsLeft);
        view.editor.putInt("pack" + view.pack + "_level" + view.currentLevel + "moves", moves);
        view.editor.putString(view.pack + "level" + view.currentLevel, moves + "");
        view.editor.commit();

        // set total moves in the dialog box plus 1 hint
        String countMove_hint1 =
            view.context.getResources().getString(R.string.countMove_moves_and_got_1_hint);
        countMove_hint1 = countMove_hint1.replace("{COUNT_MOVES}", moves + "");

        // show dialog box after game completion

        if (view.currentLevel < view.maxLevel) {
          mdCompleted.set(
              view.context.getResources().getString(R.string.Perfect),
              new String[] {
                view.context.getResources().getString(R.string.You_completed_the_level),
                countMove_hint1
              },
              new String[] {nextLevelPlayAgain[1], nextLevelPlayAgain[0]});
        } else {
          mdCompleted.set(
              endGame[0],
              new String[] {
                view.context.getResources().getString(R.string.You_completed_the_level),
                countMove_hint1
              },
              new String[] {playAgainQuit[0], playAgainQuit[1]});
        }
      }

    } else {
      // hint already added
      if (moves
          <= view.savedState.getInt(
              "bestMove_level_" + view.currentLevel + "_pack_" + view.pack, board.bestMove)) {

        if (view.savedState.getInt("statusMove" + view.pack + "_" + view.currentLevel, 0) != 2) {
          view.editor.putInt("statusMove" + view.pack + "_" + view.currentLevel, 2);
          view.editor.commit();
        }

        view.editor.putInt("bestMove_level_" + view.currentLevel + "_pack_" + view.pack, moves);
        view.editor.putInt("pack" + view.pack + "_level" + view.currentLevel + "moves", moves);
        view.editor.putString(view.pack + "level" + view.currentLevel, moves + "");
        view.editor.commit();

        // show dialog after game is completed in best time but no hints

        if (view.currentLevel < view.maxLevel) {
          mdCompleted.set(
              endGame[0],
              new String[] {
                endGame[2], view.context.getResources().getString(R.string.in_the_best_move)
              },
              new String[] {nextLevelPlayAgain[1], nextLevelPlayAgain[0]});
        } else {
          mdCompleted.set(
              endGame[0],
              new String[] {
                endGame[2], view.context.getResources().getString(R.string.in_the_best_move)
              },
              new String[] {playAgainQuit[0], playAgainQuit[1]});
        }

      } else {

        // set total moves in the dialog box in random time
        String countMoves = view.context.getResources().getString(R.string.in_countMove_moves);
        countMoves = countMoves.replace("{COUNT_MOVES}", moves + "");

        if (view.savedState.getInt("statusMove" + view.pack + "_" + view.currentLevel, 0) < 1) {
          view.editor.putInt("statusMove" + view.pack + "_" + view.currentLevel, 1);
          view.editor.commit();
        }

        if (moves
            <= view.savedState.getInt(
                "pack" + view.pack + "_level" + view.currentLevel + "moves", moves)) {

          view.editor.putInt("pack" + view.pack + "_level" + view.currentLevel + "moves", moves);
          view.editor.putString(view.pack + "level" + view.currentLevel, moves + "");
          view.editor.commit();
        }

        if (view.currentLevel < view.maxLevel) {
          mdCompleted.set(
              view.context.getResources().getString(R.string.Perfect),
              new String[] {
                view.context.getResources().getString(R.string.You_completed_the_level), countMoves
              },
              new String[] {nextLevelPlayAgain[1], nextLevelPlayAgain[0]});

        } else {
          mdCompleted.set(
              endGame[0],
              new String[] {
                view.context.getResources().getString(R.string.You_completed_the_level), countMoves
              },
              new String[] {playAgainQuit[0], playAgainQuit[1]});
        }
      }
    }
  }