@Override
	public void render(final Graphics g) {
		if (levelType == LEVEL_MID) {
			g.drawImage(ImageLoader.background_norm, 0, 0);
			g.drawImage(ImageLoader.shade_white, 0, 0);
		}
		if (levelType == LEVEL_COMPLEX) {
			g.drawImage(ImageLoader.background_complex, 0, 0);

			if (levelBlendTimeleft < 0 && !isWin)
				g.drawImage(ImageLoader.shade_white, 0, 0);

			if (isWin)
				g.drawImage(ImageLoader.shade_black, 0, 0);

		}

		world.render(g);
		player.render(g);


		g.setColor(Color.black);
		if (titelTimeleft > 0) {
			g.drawText("Level " + level, Canvas.WIDTH / 2 - 100, Canvas.HEIGHT / 2 - 150, Graphics.font_50);

			String desc = world.getDescription();
			g.drawText(desc, Canvas.WIDTH / 2 - 150, Canvas.HEIGHT / 2 + 10, Graphics.font_20);
		}
		if (levelBlendTimeleft >= -50)
			blend.renderLevelBlend(g);

		if (isWin && winTextTimeLeft < 0) {
			SoundEffect.setMuted(true);

			g.setColor(Color.white);
			g.drawText("The End", Canvas.WIDTH / 2 - 220, Canvas.HEIGHT / 2 + 50, Graphics.font_100);
			g.drawText("Thanks for playing!", Canvas.WIDTH / 2 - 120, Canvas.HEIGHT / 2 + 100, Graphics.font_20);
		}
	}