float x=200,vx=1, y=100, vy = 1;
float xinimigo = 50, yinimigo=70;
int estado = 0;
void setup() {
size(300,300);
}
void draw() {
x = x + vx;
if(estado==0) { // VAGANDO
vagando();
if(dist(x,y,xinimigo,yinimigo)<50)
estado = 1;
}
if(estado==1) { // ATACANDO
atacando();
if(dist(x,y,xinimigo,yinimigo)<5) {
estado = 0;
xinimigo = random(width);
yinimigo = random(height);
}
}
background(0,0,255);
fill(0,255,0);
ellipse(x,y,20,20);
fill(255,0,0);
ellipse(xinimigo,yinimigo,20,20);
}
void atacando() {
y = y + vy;
if(x<xinimigo) {
vx = 1;
} else {
vx = -1;
}
if(y<yinimigo) {
vy = 1;
} else {
vy = -1;
}
}
void vagando() {
// Se bater nas laterais, volta!
if(x>width || x<0) {
vx = -vx;
}
}
float x=200,vx=1, y=100, vy = 1;
float xinimigo = 50, yinimigo=70;
int estado = 0;
void setup() {
size(300,300);
}
void draw() {
x = x + vx;
switch(estado) {
case 0:
vagando();
if(dist(x,y,xinimigo,yinimigo)<50)
estado = 1;
break;
case 1:
atacando();
if(dist(x,y,xinimigo,yinimigo)<5) {
estado = 0;
xinimigo = random(width);
yinimigo = random(height);
}
break;
}
background(0,0,255);
fill(0,255,0);
ellipse(x,y,20,20);
fill(255,0,0);
ellipse(xinimigo,yinimigo,20,20);
}
void atacando() {
y = y + vy;
if(x<xinimigo) {
vx = 1;
}
else {
vx = -1;
}
if(y<yinimigo) {
vy = 1;
}
else {
vy = -1;
}
}
void vagando() {
// Se bater nas laterais, volta!
if(x>width || x<0) {
vx = -vx;
}
}