added gracefull shutdown
[des2015.git] / dsl / runtime / src / nl / ru / des / BasicBehaviour.java
index 2de5ab3..455cbe2 100644 (file)
@@ -29,13 +29,14 @@ public abstract class BasicBehaviour implements Behavior{
                leftMotor.setAcceleration(Constants.acceleration);
                rightMotor.stop(true);
                leftMotor.stop(true);
+               measMotor.stop(true);
        }
 
        protected void measureLake(){
                long time = System.currentTimeMillis();
                rightMotor.backward();
                leftMotor.backward();
-               while(System.currentTimeMillis()-time<500){
+               while(System.currentTimeMillis()-time < 250){
                        Thread.yield();
                }
                
@@ -61,8 +62,32 @@ public abstract class BasicBehaviour implements Behavior{
                        Thread.yield();
                }
                measMotor.stop(true);
-               reset();
-               rightTurn(45);
+               
+               turnRandom(30, 45);
+       }
+       
+       protected void measureRock(){
+               long time = System.currentTimeMillis();
+               rightMotor.forward();
+               leftMotor.forward();
+               while(System.currentTimeMillis()-time<1500){
+                       Thread.yield();
+               }
+               
+               rightMotor.stop(true);
+               leftMotor.stop(true);
+               
+               measMotor.backward();
+               while(!suppressed && !measMotor.isStalled()){
+                       Thread.yield();
+               }
+               measMotor.forward();
+               while(!suppressed && !measMotor.isStalled()){
+                       Thread.yield();
+               }
+               measMotor.stop(true);
+               
+               turnRandom(30, 45);
        }
        
        protected void turnRandom(int from, int to){