Inherit from Robot or RobotSE to create a robot that can navigate through the course shown in the first picture below. Specifically, the bot should move around the walls until it gets to the Thing. Then it should pick the Thing up, return to the starting point, and drop the Thing. The catch is there can be any number of Walls located at any avenue along street 1. Also, the Thing at the end can be at any avenue. You can assume everything will always be on street 1 and the Thing will always be the last object on the street (i.e. it's always after the Walls). You can also assume the robot always starts in the same place ((1,0) facing East).
You should have different methods to:
Walk to the Thing, walking around Walls on the way
Walk around a wall
This method should be called as the robot is standing in front of the Wall and should terminate with the robot on the other side, facing the same direction
Return to the starting point
Again, use a method to walk around Walls as you come to them
You should also have a method, doCourse(), that calls these methods in the appropriate order and does other actions to do run the course as described earlier.
This picture shows how you should set up your City initially:
Remember, this is just a sample of where the Thing and Walls could be. To make sure your code works you should move and add or remove Walls, and move the Thing.
Create a main method where you create your City, instantiate your robot, and call doCourse().
The final situation should look like this:
DROPBOX YOUR .java FILES BEFORE 6:05PM (end of lab)! Don't wait until the last minute!