Exemplo n.º 1
0
  /**
   * Draws the objects
   *
   * @param batch
   * @param imageHandler
   */
  public void draw(SpriteBatch batch, ImageHandler imageHandler) {
    Gdx.gl.glClearColor(0, 0, 0, 1);
    Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
    batch.begin();

    if (gameStatus.equalsIgnoreCase(GameConstants.GAME_STATUS_INTRO)) {
      player1.drawWithOffset(batch, 0, -intro_player_offset);

      for (Enemy badGuy : enemies) {
        badGuy.drawWithOffset(batch, 0, intro_enemy_offset);
      }
    } else {
      player1.draw(batch);

      for (Enemy badGuy : enemies) {
        badGuy.draw(batch);
      }

      for (Projectile proj : projectiles) {
        proj.draw(batch);
      }

      for (Explosion exp : explosions) {
        exp.draw(batch);
      }
    }

    scoreText.draw(batch, Integer.toString(score), 10, 750, 4);

    if (gameStatus.equalsIgnoreCase(GameConstants.GAME_STATUS_PAUSED)) {
      pauseMenu.draw(batch);
    }

    if (gameStatus.equalsIgnoreCase(GameConstants.GAME_STATUS_GAME_OVER)) {
      gameOverMenu.draw(batch);
    }

    if (gameStatus.equalsIgnoreCase(GameConstants.GAME_STATUS_INTRO_START)) {
      int draw_x = 450;
      int draw_y = 200;
      int size = 8;
      for (Sprite img : startText) {
        img.setPosition(draw_x, draw_y);
        img.setSize((int) (img.getRegionWidth() * size), (int) (img.getRegionHeight() * size));
        img.draw(batch);
        draw_x += img.getRegionWidth() * size;
      }
    }
  }