-public class Behaviours{
- «FOR b : list»
- public static class «b.name»Behaviour extends BasicBehaviour {
- public «b.name»Behaviour(SensorCollector sensors, EV3LargeRegulatedMotor rightMotor,
- EV3LargeRegulatedMotor leftMotor, ColorMemory colors){
- super(sensors, rightMotor, leftMotor, colors);
- }
- «IF b.tc != null»
- @Override public boolean takeControl(){
- return «printExpression(b.tc)»;
- }
- «ENDIF»
-
- @Override public void action(){
- super.action();
- «FOR a : b.actions»
- «IF a.whichMotor != null»
- «IF a.acc > 0»
- «a.whichMotor.d.toString()»Motor.setAcceleration(«a.acc»);
- «a.whichMotor.d.toString()»Motor.setSpeed(«a.spd»);
- «ENDIF»
- «a.whichMotor.d.toString()»Motor.«a.dir.d.toString()»();
+public class «b.name»Behaviour extends BasicBehaviour {
+ public «b.name»Behaviour(SensorCollector sensors, RegulatedMotor rightMotor,
+ RegulatedMotor leftMotor, RegulatedMotor measMotor){
+ super(sensors, rightMotor, leftMotor, measMotor);
+ }
+ «IF b.tc != null»
+ @Override public boolean takeControl(){
+ return «printExpression(b.tc)»;
+ }
+ «ENDIF»
+
+ @Override public void action(){
+ System.out.println("Start: «b.name»");
+ super.action();
+ «FOR a : b.actions»
+ «IF a.whichMotor != null»
+ «IF a.acc > 0»
+ «a.whichMotor.d.toString()»Motor.setAcceleration(«a.acc»);
+ «a.whichMotor.d.toString()»Motor.setSpeed(«a.spd»);
+ «ENDIF»
+ «a.whichMotor.d.toString()»Motor.«a.moveDir.d.toString()»();
+ «ELSEIF a.time != null»
+ time = System.currentTimeMillis();
+ while(!suppressed«IF a.time.time > 0» && System.currentTimeMillis()-time<«a.time.time»«ENDIF»){
+ Thread.yield();
+ }
+ «ELSEIF a.turnType != null»
+ «IF a.acc > 0»
+ leftMotor.setAcceleration(«a.acc»);
+ leftMotor.setSpeed(«a.spd»);
+ rightMotor.setAcceleration(«a.acc»);
+ rightMotor.setSpeed(«a.spd»);
+ «ENDIF»
+ «IF a.turnType.turnDir != null»
+ «a.turnType.turnDir.d.toString()»Turn(«a.turnType.degrees»);