/**
 * <code>Main4</code> contains the main method for exercise 2.4.  The
 * main method is fully implemented.  Do not make any changes to the
 * code.
 */

public class Main4 {
    /**
     * Creates a maze of 7*7 rooms and tries to move a SimpleRobot from
     * room (0, 6) to toom (5, 0).
     * @param args is ignored.
     */

    public static void main(String[] args) {
	Maze m = new Maze(7, 7);
	m.connectRooms(0, 0, 0, 6);
	m.connectRooms(1, 0, 1, 6);
	m.connectRooms(2, 0, 2, 6);
	m.connectRooms(3, 0, 3, 2);
	m.connectRooms(3, 3, 3, 6);
	m.connectRooms(4, 0, 4, 1);
	m.connectRooms(4, 4, 4, 5);
	m.connectRooms(6, 1, 6, 4);
	m.connectRooms(5, 2, 5, 3);
	m.connectRooms(6, 5, 6, 6);
	m.connectRooms(0, 0, 1, 0);
	m.connectRooms(1, 6, 2, 6);
	m.connectRooms(2, 0, 3, 0);
	m.connectRooms(3, 2, 5, 2);
	m.connectRooms(3, 3, 5, 3);
	m.connectRooms(3, 6, 6, 6);
	m.connectRooms(4, 0, 6, 0);
	m.connectRooms(4, 1, 6, 1);
	m.connectRooms(4, 4, 6, 4);
	m.connectRooms(4, 5, 6, 5);
	m.print();

	SmartRobot robot = new SmartRobot(0);
	robot.setRoom(m.getRoom(0, 6));

	m.print();
	System.out.println(robot);

	robot.solve(m, m.getRoom(6, 0));

	m.print();
	System.out.println(robot);
    }
}
