@Override
  public void render(GameContainer container, Graphics graphics) throws SlickException {
    gameMapRenderer.render();
    gameMap.getItemsOnMap().forEach(i -> i.render());
    players.forEach(Player::renderGlass);
    players.forEach(Player::render);

    int position = 10;
    final int offset = 30;
    int x_offset = 0;

    graphics.setFont(menufont);
    for (Player p : players) {
      if (p.getControls().isUseGamepad() ? container.getInput().isButtonPressed(p.getControls().getStatusButton() - 1,
          p.getControls().getGamepadNumber()) : container.getInput().isKeyDown(p.getControls().getStatusButton())) {
        position = 10;
        graphics.drawString(p.getType().getName(), 20 + x_offset, position += offset);
        graphics.drawString("charges: " + p.getCrashCharges(), 20 + x_offset, position += offset);
        graphics.drawString("bricks: " + p.getBricks(), 20 + x_offset, position += offset);
        x_offset += 300;
      }
    }

    if (winner != null) {
      graphics.setFont(new TrueTypeFont(new java.awt.Font("Arial", java.awt.Font.BOLD, 48), true));
      graphics.drawString(winner.getType().getName() + " WON!", app.getWidth() / 2 - 150, app.getHeight() / 2 - 100);
    }
  }