import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class RoadStripe extends JComponent
{
	int lcv = 0;
	
	public RoadStripe()
	{
		class UpdateStripe implements ActionListener
		{
			public void actionPerformed(ActionEvent e)
			{
				lcv++;
				if(lcv > 500)
				{
				lcv = -100;
				}
				repaint();
			}
		}
		
		Timer timer = new Timer(10, new UpdateStripe());
		timer.start();
	}
	public void paintComponent(Graphics g)
		
	{   int xpoints[] = {100, 530, 580, 50};
        int ypoints[] = {0, 0, 500, 500};
        int npoints = 4;
        int cxpoints[] = {160, 180, 190, 150};
        int cypoints[] = {200, 200, 350, 350};
        int cnpoints = 4;
    
    g.fillPolygon(xpoints, ypoints, npoints);
		g.setColor(Color.green);
		g.fillRect(0,0,9000,6000);
		g.setColor(new Color(130,60,40));
		g.fillRect(0,0,500,6000);
		g.setColor(new Color(150,150,150));
		g.fillPolygon(xpoints,ypoints,npoints);
		g.setColor(Color.white);
		g.fillRect(140,210,60,10);
		g.fillRect(120,320,90,10);
		g.fillRect(160,350,5,10);
		g.fillRect(180,350,5,10);
		g.setColor(Color.black);
		g.fillRect(200,200,10,30);
		g.fillRect(130,200,10,30);
		g.fillRect(200,310,20,30);
		g.fillRect(120,310,20,30);
		g.setColor(Color.red);
		g.fillPolygon(cxpoints,cypoints,cnpoints);
		g.setColor(Color.white);
		g.setFont( new Font( "Comic Sans MS", Font.BOLD, 18 ) );
        g.drawString("GT",158,340);
        g.setColor(Color.blue);
		g.fillOval(160,300,20,20);
		g.setColor(Color.white);
		for(int i=-500;i<=1000;i=i+100){
		  g.fillRect(300,lcv+i,20,60);
		  		}
		
	}
	public static void main(String[] args)
	{
		JFrame frame = new JFrame("Here is Your Road Test");
		frame.setSize(900,500);
		RoadStripe test = new RoadStripe();
		frame.getContentPane().add(test);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setVisible(true);
		
	}
}