All pastes #1845075 Raw Edit

Anonymous

public text v1 · immutable
#1845075 ·published 2010-03-18 21:55 UTC
rendered paste body
import becker.robots.*;

/**
	This application programs a Robot to pick up lights on a street and move them one block to the east.
*/
public class StreetRepaving
{
	public static void main(String[] args)
	{
		City vancouver = new City();
		Robot lightMover = new Robot(vancouver, 0, 2, Directions.EAST);
		
		// Here's where we create flashing lights on 2nd Street.
		// The last parameter turns the flashing light on.
		Flasher flash1 = new Flasher(vancouver, 1, 2, true);
		Flasher flash2 = new Flasher(vancouver, 2, 2, true);
	    Flasher flash3 = new Flasher(vancouver, 3, 2, true);
	    Flasher flash4 = new Flasher(vancouver, 4, 2, true);
		
		CityFrame frame = new CityFrame(vancouver);
		
		// Program the lightMover Robot to move the lights.  
		lightMover.move();
		int i = 0;
		loop1 : while (true)
		{
			if (lightMover.isBesideThing())
			{
				lightMover.pickThing();
				lightMover.move();
				if (lightMover.isBesideThing())
				{
				    while (lightMover.isBesideThing())
				    {
				        lightMover.putThing();
				        lightMover.pickThing();
				        lightMover.move();
	                    if (lightMover.countThingsInBackpack() == 1 && lightMover.getAvenue() == 5)
	                    {
	                        lightMover.putThing();
	                        break loop1;
	                    }
				    }
				}
				else
				{
				    lightMover.putThing();
				    if (lightMover.getAvenue() == 5)
				    {
				        break loop1; 
				    }
				    lightMover.move();
				}
			}
			else
			{
                if (lightMover.getAvenue() == 5)
                {
                    break loop1; 
                }
                if (lightMover.countThingsInBackpack() == 1)
                {
                    lightMover.putThing();
                }
				lightMover.move();
			}
		}
    }
}