start with ex2
[des2015.git] / mart / ev3 / ex2 / nl / ru / des / WandererBehaviour.java
1 package nl.ru.des;
2
3 import lejos.hardware.Sound;
4 import lejos.hardware.motor.EV3LargeRegulatedMotor;
5 import lejos.robotics.subsumption.Behavior;
6
7 public class WandererBehaviour implements Behavior {
8 private EV3LargeRegulatedMotor leftMotor, rightMotor;
9 private ColorSensor colorSensor;
10 private boolean suppressed;
11
12 public WandererBehaviour(ColorSensor colorSensor, EV3LargeRegulatedMotor leftMotor, EV3LargeRegulatedMotor rightMotor) {
13 this.leftMotor = leftMotor;
14 this.rightMotor = rightMotor;
15 this.colorSensor = colorSensor;
16 }
17
18 @Override
19 public boolean takeControl() {
20 return true;
21 }
22
23 @Override
24 public void action() {
25 suppressed = false;
26 leftMotor.setSpeed(300);
27 rightMotor.setSpeed(300);
28 leftMotor.forward();
29 rightMotor.forward();
30 while(!suppressed){
31 String current = colorSensor.getCurrentColor();
32 if(current == "Yellow" || current == "Blue" || current == "Red"){
33 Sound.beep();
34 }
35 Thread.yield();
36 }
37 leftMotor.stop(true);
38 rightMotor.stop(true);
39 }
40
41 @Override
42 public void suppress() {
43 suppressed = true;
44 }
45
46 }