import nl.ru.des.sensors.SensorCollector;
public abstract class BasicBehaviour implements Behavior{
- protected boolean suppressed;
+ protected int suppressed;
protected RegulatedMotor leftMotor, rightMotor, measMotor;
protected SensorCollector sensors;
protected long time;
leftMotor.setAcceleration(Constants.acceleration);
rightMotor.stop(true);
leftMotor.stop(true);
+ suppressed = 0;
}
protected void rockMeasure(){
}
protected void rightTurn(int angle){
-
+ float init = sensors.gyro();
+ rightMotor.backward();
+ leftMotor.forward();
+
+ while(suppressed != 2 && sensors.gyro()-90>init){
+ Thread.yield();
+ }
}
protected void leftTurn(int angle){
-
+ float init = sensors.gyro();
+ leftMotor.backward();
+ rightMotor.forward();
+ while(suppressed != 2 && sensors.gyro()+90<init){
+ Thread.yield();
+ }
}
@Override
public void action() {
- suppressed = false;
+ suppressed = 1;
}
@Override
public void suppress() {
- suppressed = true;
+ suppressed = 2;
}
- @Override
- public boolean takeControl() {
+ @Override public boolean takeControl(){
return true;
}
}