public class MovementLogic
{
    public static final int ROUTINE_A = 0;
    public static final int ROUTINE_B = 1;
    public static final int ROUTINE_C = 2;
    public static final int ROUTINE_D = 3;

    public MovementLogic (Map theMap)
    {
        _theMap = theMap;
    }

    public void createMovementFunctions ()
    {

    }

    public void createMovementRoutine ()
    {
        
    }

    private void createPath ()
    {
        Coordinate start = _theMap.findStartingPoint();

        if (start != null)
        {

        }
        else
            System.out.println("Robot not found!");
    }

    private Map _theMap;
}
@@ -195,16 +195,114 @@
 D = 3;%0A%0A
+    public static final String MOVE_LEFT = %22L%22;%0A    public static final String MOVE_RIGHT = %22R%22;%0A%0A
     publ
@@ -482,32 +482,87 @@
         %0A    %7D%0A%0A
+    /*%0A     * Create path using only L and R.%0A     */%0A%0A
     private void
@@ -605,16 +605,41 @@
 ate 
-start = 
+currentPosition = new Coordinate(
 _the
@@ -661,18 +661,27 @@
 gPoint()
+)
 ;%0A
+        
 %0A       
@@ -689,13 +689,23 @@
 if (
-start
+currentPosition
  != 
@@ -716,24 +716,36 @@
 )%0A        %7B%0A
+            
 %0A        %7D%0A 
@@ -811,24 +811,127 @@
 !%22);%0A    %7D%0A%0A
+    private Coordinate rightMove (Coordinate coord)%0A    %7B%0A        return new Coordinate(coord.)%0A    %7D%0A%0A
     private 

Update MovementLogic.java