xxxxxxxxxx
int n = 100;
float buttonX, buttonY, buttonW, buttonH, ballW;
float [] SpeedY = new float [n];
float [] SpeedX = new float [n];
float [] Ypos = new float [n];
float [] Xpos = new float [n];
boolean buttonclick = false;
void setup (){
size (500 , 500);
buttonX = width/2-80;
buttonY = height/2;
buttonW = 160;
buttonH = 40;
ballW = 10;
for (int i = 0; i < Ypos.length; i++) {
Ypos[i] = random (height);
SpeedY[i] = 2;
}
for (int i = 0; i < Xpos.length; i++) {
Xpos[i] = random (width);
SpeedX[i] = 2;
}
}
void draw (){
background (#FFC6F8);
if (buttonclick == true){
background (#6FFFF2);
} else {
buttonclick = false;{
fill (255);
ellipse (250 , 100 , 50 , 50);
}
}
fill(#FFFF86);
rect (buttonX, buttonY, buttonW, buttonH);
for (int i = 0; i < Ypos.length; i++) {
fill (#C6E6FF);
ellipse (Xpos[i], Ypos[i], ballW, ballW);
Ypos[i] = Ypos[i] + SpeedY[i];
Xpos[i] = Xpos[i] + SpeedX[i];
if ((Xpos[i] > buttonX-ballW)
&& (Xpos[i] < buttonX+buttonW+ballW)
&& (Ypos[i] > buttonY-ballW)
&& (Ypos[i] < buttonY+buttonH+ballW)) {
buttonclick = !buttonclick;
if ( ( Ypos[i] < buttonY) || ( Ypos[i] > buttonY+buttonH)) {
SpeedY[i] = SpeedY[i] * -1;
} else if ((Xpos[i] < buttonX) || (Xpos[i] > buttonX+buttonW)) {
SpeedX[i] = SpeedX[i] * -1;
}
}
if (( Ypos[i]>height) || ( Ypos[i]<0)) {
SpeedY[i] = SpeedY[i] * -1;
}
if ((Xpos[i]>width) || (Xpos[i]<0)) {
SpeedX[i] = SpeedX[i] * -1;
}
}
}