Beispiel #1
0
  private void gameWon() {

    // We have met, so stop the game and change level.

    // Pause for a second
    if (gameStatus == Game.GAMESTATUS_PLAYING) {
      gameStatus = GAMESTATUS_WON;
      lasttime = System.currentTimeMillis();

      GUIGame.WinStrings.change();

      Score.addScore(100000);

      if (!Physics.hearts) {
        Physics.spawnHeart(this.getRule().getPosition().x, this.getRule().getPosition().y, 50);
        Physics.spawnHeart(
            this.getRulette().getPosition().x, this.getRulette().getPosition().y, 50);
      }

      rule.setDead(true);
      Physics.world.destroyBody(rule.getBody());

      rulette.setDead(true);
      Physics.world.destroyBody(rulette.getBody());

      Physics.hearts = true;

      Sound.playSound(R.sound.effects.win);
    }

    long timetaken = System.currentTimeMillis() - lasttime;
    if (timetaken < levelTransitionTime) {
      return;
    }

    // Change level
    loadLevel(++currentLevel);

    // Reset time
    lasttime = 0l;

    Physics.hearts = false;
  }