public void draw(Graphics2D g2) {
		AffineTransform tx = new AffineTransform();
		tx.translate(-(xMovement / maxXMovement * GamePanel.WIDTH), 0);
		g2.setTransform(tx);
		g2.drawImage(background, 0, 0, GamePanel.WIDTH, GamePanel.HEIGHT, null);
		g2.drawImage(background, GamePanel.WIDTH * 2, 0, -GamePanel.WIDTH, GamePanel.HEIGHT, null);
		tx = new AffineTransform();
		tx.translate(-xMovement, -yMovement);
		g2.setTransform(tx);
		int xStart = (int) (xMovement / level.getTileSize());
		int yStart = (int) (yMovement / level.getTileSize());
		int xEnd = xStart + GamePanel.WIDTH / level.getTileSize() + 1;
		int yEnd = yStart + GamePanel.HEIGHT / level.getTileSize() + 1;
		level.draw(g2, xStart, yStart, xEnd, yEnd);
		for (int i = 0; i < items.size(); i++) {
			items.get(i).draw(g2);
		}
		player.draw(g2);
		g2.setTransform(new AffineTransform());

		g2.drawImage(itemImage, 5, 5, clock.getWidth(), clock.getHeight(), null);
		g2.drawString(collectedItems + " / " + itemCount, itemImage.getWidth() + 10, itemImage.getHeight() / 2 + 10);
		g2.drawImage(clock, 5, itemImage.getHeight() + 10, clock.getWidth(), clock.getHeight(), null);
		long currentTime = System.currentTimeMillis() - startTime;
		if (!hasWinn) {
			zehner = (int) (currentTime / 1000) / 60;
			einer = (int) (currentTime / 1000) % 60;
		}
		String strEiner = einer + "";
		if (einer < 10) {
			strEiner = "0" + einer;
		}
		g2.drawString(zehner + ":" + strEiner, clock.getWidth() + 10, clock.getHeight() / 2 + clock.getHeight() + 15);
	}