public void render(Screen screen){
		screen.setOffset(xScroll, yScroll);
		int x0 = xScroll / 32;
		int x1 = (xScroll + screen.width + 32) / 32;
		int y0 = yScroll / 32;
		int y1 = (yScroll + screen.height + 32) / 32;
		for(int y = y0; y < y1; y++){
			for(int x = x0; x < x1; x++){
				//Render the background tiles.
				int col = -1;			
				if(x == tileX && y == tileY && !tileValid) col = 0xffb2626;
				getTile(x, y).render(x, y, col, screen);
				if(!checkBounds(x, y)) continue;

			}
		}

		if(selection != 5) screen.render((tileX * 32) - xScroll, (tileY * 32) - yScroll, 0, 1, 32, 1, SpriteSheet.gui);
		else{
			screen.render(((tileX - spawnerRadius) * 32) - xScroll, ((tileY - spawnerRadius) * 32) - yScroll, 0, 2, 16, 2, SpriteSheet.gui);
			screen.render(((tileX + spawnerRadius) * 32) - xScroll, ((tileY - spawnerRadius) * 32) - yScroll, 1, 2, 16, 2, SpriteSheet.gui);
			screen.render(((tileX + spawnerRadius) * 32) - xScroll, ((tileY + spawnerRadius) * 32) - yScroll, 1, 3, 16, 2, SpriteSheet.gui);
			screen.render(((tileX - spawnerRadius) * 32) - xScroll, ((tileY + spawnerRadius) * 32) - yScroll, 0, 3, 16, 2, SpriteSheet.gui);
		}
		
		//TODO: Render a selection row of possible tiles to draw with.
		font.render("Selection: " + selection, 10, 200, 0xffffff, 1, true, screen);
		font.render("Traps: " + minTraps + "-" + maxTraps, 10, 220, 0xffffff, 1, true, screen);
		font.render("Spawners: " + minSpawners + "-" + maxSpawners, 10, 240, 0xffffff, 1, true, screen);
		
		int col1 = 0xff7DA845;
		if(traps.size() < minTraps) col1 = 0xffB32020;
		font.render("(" + traps.size() + ")", 200, 220, col1, 1, true, screen);
		int col2 = 0xff7DA845;
		if(spawners.size() < minSpawners) col2 = 0xffB32020;
		font.render("(" + spawners.size() + ")", 220, 240, col2, 1, true, screen);
		
		screen.render(50, 10, 2, 3, 16, 4, SpriteSheet.gui);
		screen.render(150, 10, 1, 0, 32, 2, SpriteSheet.textures);
		screen.render(250, 10, 0, 0, 32, 2, SpriteSheet.textures);
		screen.render(350, 10, 0, 1, 32, 2, SpriteSheet.textures);
		screen.render(450, 10, 3, 0, 32, 2, SpriteSheet.textures);
		screen.render(550, 10, 4, 2, 16, 4, SpriteSheet.gui);
		
		font.render("Clear", 47, 80, 0xffffff, 1, true, screen);
		font.render("Floor", 146, 80, 0xffffff, 1, true, screen);
		font.render("Wall", 253, 80, 0xffffff, 1, true, screen);
		font.render("Trap", 352, 80, 0xffffff, 1, true, screen);
		font.render("Door", 453, 80, 0xffffff, 1, true, screen);
		font.render("Spawner", 532, 80, 0xffffff, 1, true, screen);
		
		screen.render(50 + (100 * (selection)), 10, 0, 1, 32, 2, SpriteSheet.gui);
		
		font.render(tileX + "," + tileY, 600, 70, 0xffffff, 1, true, screen);
		
		if(saved) font.render("SAVED: Result pasted to clipboard.", 300, 300, 0xffffff, 1, true, screen);
	}