Sumocode
Sumocode
#include<Wire.h>
DURATION= pulseIn(ECHOPIN,HIGH);
return(DISTANCE);
float DISTANCE; {
int LINER = 1;
Serial.begin(9600); {
Wire.begin(); STOP();
PBOT.BEGIN(); delay(200);
pinMode(TRIGPIN,OUTPUT); LOOKING_FOR_OPPONENT();
pinMode(ECHOPIN,INPUT); delay(200);
} break; }
break; } delay(500);
{ PBOT.SERVO(1, 160);
STOP(); delay(500);
delay(500);
GO_FORWARD_SLOW(); {
} STOP();
LINER = 1; GO = true;
if(OPPONENT_ON_RIGHT <=
MAX_DISTANCE_DETECTION && GO == true){
PBOT.SERVO(1, 90); //SERVO TURNS 90 DEGREES
AFTER THE CONDITION WAS FINISHED SPIN_RIGHT();
delay(450);
} ATTACK();
delay(500);
/*---------------------------*/ GO = false;
void LOOKING_FOR_OPPONENT () }
{ /*---------------------------*/
delay(450);
ATTACK(); void SPIN_LEFT()
delay(500); {
} PBOT.DIRECTION(MOTOR_A,MOTOR_REV);
/*---------------------------*/ PBOT.DIRECTION(MOTOR_B,MOTOR_FWD);
} {
/*---------------------------*/ LINER=0;
void GO_FORWARD_SLOW() }
{ if(LINER == 0){
PBOT.DIRECTION(MOTOR_BOTH,MOTOR_FWD); GO_BACKWARD();
} SPIN_LEFT();
/*---------------------------*/ delay(500);
{ STOP();
PBOT.DIRECTION(MOTOR_BOTH,MOTOR_REV); }
/*---------------------------*/ }
PBOT.DIRECTION(MOTOR_BOTH,MOTOR_REV);
PBOT.SPEED(MOTOR_BOTH, FULL_STOP);
/*---------------------------*/