public void render(int xScroll, int yScroll, Screen screen) {
		screen.setOffset(xScroll, yScroll);
		x0 = xScroll >> 4;
		x1 = (xScroll + screen.width + 16) >> 4;
		y0 = yScroll >> 4;
		y1 = (yScroll + screen.height + 16) >> 4;
		if (SpriteSheet.levelBackground == null) SpriteSheet.levelBackground = new SpriteSheet(BackgroundImage, 315, 315);
		else {
			screen.renderSheet((int) Math.floor(backgroundPOSX1), 0, SpriteSheet.levelBackground, false);
			screen.renderSheet((int) Math.floor(backgroundPOSX2), 0, SpriteSheet.levelBackground, false);
		}

		for (int y = y0; y < y1; y++) {
			for (int x = x0; x < x1; x++) {
				if (getTile(x, y) != Tile.skyTile) getTile(x, y).render(y, x, screen);
			}
		}
		for (int i = 0; i < players.size(); i++) {
			players.get(i).render(screen);
		}

		if (layers == 2) {
			for (int y = y0; y < y1; y++) {
				for (int x = x0; x < x1; x++) {
					if (getTileTop(x, y) != Tile.blank) getTileTop(x, y).render(y, x, screen);
				}
			}
		}
	}