public void paintComponent(Graphics g)
	{
		super.paintComponents(g);
		Graphics2D g2 = (Graphics2D) g;
		g2.scale(world.getZoomFactor(), world.getZoomFactor());
		g2.translate(300, 150);
		Font font = new Font("Serif", Font.BOLD, 60);
		g2.setFont(font);
		FontRenderContext frc = g2.getFontRenderContext();
		for (int id = 0; id < s.length; id++)
		{
			if (select == id)
			{
				GradientPaint p = new GradientPaint(0, 0, new Color(0xff, 0x5f, 0), 300, 0, new Color(0, 0x5f, 0xff));
				g2.setPaint(p);
			}
			else
			{
				GradientPaint p = new GradientPaint(0, 0, Color.LIGHT_GRAY, 300, 0, Color.DARK_GRAY);
				g2.setPaint(p);
			}
			g2.fill(shapes.get(id));
			g2.setColor(Color.BLACK);
			g2.draw(shapes.get(id));
			g2.translate(20, 50);
			GlyphVector gv = null;
			if (id == 0 && frame.previousMap != null)
				gv = font.createGlyphVector(frc, "Continue");
			else
				gv = font.createGlyphVector(frc, s[id]);
			Shape glyph = gv.getOutline(0, 0);

			g2.draw(glyph);
			g2.translate(-20, 30);
		}
		if (frame.isEditorEnabled())
		{
			Rectangle2D option = new Rectangle2D.Double(0, -480, 300, 60);
			if (select == 5)
			{
				GradientPaint p = new GradientPaint(0, 0, new Color(0xff, 0x5f, 0), 300, 0, new Color(0, 0x5f, 0xff));
				g2.setPaint(p);
			}
			else
			{
				GradientPaint p = new GradientPaint(0, 0, Color.LIGHT_GRAY, 300, 0, Color.DARK_GRAY);
				g2.setPaint(p);
			}
			g2.fill(option);
			g2.setColor(Color.BLACK);
			g2.draw(option);
			font = new Font("Serif", Font.BOLD, 50);
			GlyphVector gv2 = font.createGlyphVector(frc, editor);
			Shape glyph = gv2.getOutline(20, -435);
			g2.draw(glyph);
		}
	}