xxxxxxxxxx
111
var fly = [];
var hours = [];
var poop;
function setup() {
createCanvas(400, 400);
for (var i = 0; i < 60; i++){
fly[i] = [];
fly[i][0] = 1+int(random(10));
fly[i][1] = 1+int(random(10));
fly[i][2] = 1.5+random(3);
fly[i][3] = 40+random(40);
fly[i][4] = 20+random(40);
}
for (var i = 0; i < 24; i++){
hours[i] = [];
hours[i][0] = random(width);
hours[i][1] = random(300);
}
poop = -1;
textSize(width / 3);
textAlign(CENTER, CENTER);
noStroke();
}
function draw() {
var px =300; var py =100;
background(180,210,255);
var ground = 300;
fill(50,180,0);
rect(0,ground,width,height-ground);
plopX = 150;
for (var h = 0; h < hour(); h++){
fill(255,255,255,180);
x = hours[h][0];
y = hours[h][1];
hours[h][0] += 0.5;
if (hours[h][0] > width){
hours[h][0] = -20;
hours[h][1] = random(ground);
}
ellipse(x,y,100,50);
}
for (var g = 0; g < 5; g++){
var p = minute() - g;
px = plopX + g * 100 + 100 * second()/(60);
py = ground;
d = 50;
fill(150,100,0);
ellipse(px,py,50,15);
ellipse(px,py-10,40,15);
ellipse(px,py-20,20,15);
fill(255,255,255);
textSize(18);
text(p,px,py);
}
fill(0,0,0);
for (var i = 0; i < second(); i++){
d1 = fly[i][3];
d2 = fly[i][4];
px = plopX +100 * second()/(60);
py = ground - 50;
var fx = px+d1*sin(fly[i][0]*millis()/(1000*fly[i][2]));
var fy = py+d2*sin(fly[i][1]*millis()/(1000*fly[i][2]));
ellipse(fx,fy,2,2);
}
cy = 120;
ch = 100;
cw = 140;
if (poop == -1 && second() == 59){
poop = 0;
}
if (poop >= 0 && poop < 0.5){
poop+= deltaTime/1000;
fill(150,100,0);
ellipse(plopX-50+50*poop,cy+40,50,50);
}
if (poop >= 0.5){
poop+= deltaTime/1000;
fill(150,100,0);
newY = 0.5*((poop-0.5)*1000)^2;
ellipse(plopX-50+25,cy+40+newY,50,50);
if (cy+40+newY >= ground){
poop = -2;
}
}
if (poop == -2 && second() == 0){
poop = -1;
}
fill(245,245,220);
rect(0,cy,cw, ch);
stroke(245,245,220);
strokeWeight(10);
line(cw,cy+10,cw+50,cy+50);
noStroke();
rect(cw-30,cy+ch,20,ground-cy-ch+10);
fill(0);
arc(0+cw/2,cy,100,60,0,PI,PIE);
fill(250,180,200);
arc(0+cw/2,cy+ch,70,70,0,PI,PIE);
fill(0);
rect(cw-30,ground+10,20,20);
text(str(second()),10,10);
}