void setup (){ background(255); size(300,400); smooth(); } float theta = atan2(20,300); float l=280; void ball(float x,float y,int dir){ if(dir==0){float y1=y-20.0*x/300;fill(0); ellipse(x,y1-10,20,20);} if(dir==1){float y1=y-20.0*(300-x)/300;fill(0); ellipse(x,y1-10,20,20);} } void slope (float x, float y, int dir){ if(dir==0){line(x,y,l*cos(theta)+x,y-l*sin(theta));} if(dir==1){line(x+300,y,300-l*cos(theta)+x,y-l*sin(theta));} } int x=290;int n=0; void draw (){ background(255); frameRate(120); stroke(0); slope(0,400,0); slope(0,315,1); slope(0,230,0); slope(0,145,1); slope(0,60,0); if(n==0){ball(x,400,0); if(x>20){x=x-1;} if(x==20){n=1;}} if(n>0){ball(10,400,0);} if(n<1){ball(10,315,1);} if(n==1){ball(x,315,1); if(x<280){x=x+1;} if(x==280){n=2;}} if(n>1){ball(290,315,1);} if(n<2){ball(290,230,0);} if(n==2){ball(x,230,0); if(x>20){x=x-1;} if(x==20){n=3;}} if(n>2){ball(10,230,0);} if(n<3){ball(10,145,1);} if(n==3){ball(x,145,1); if(x<280){x=x+1;} if(x==280){n=4;}} if(n>3){ball(290,145,1);} if(n<4){ball(290,60,0);} if(n==4){ball(x,60,0); if(x>10){x=x-1;} if(x==10){n=5;}} if(n>4){ball(10,60,0);} if(n<1)line(20,400,0,280); if(n>=1)line(0,400,20,280); if(n<2)line(280,315,300,195); if(n>=2)line(300,315,280,195); if(n<3)line(20,230,0,110); if(n>=3)line(0,230,20,110); if(n<4)line(280,145,300,25); if(n>=4)line(300,145,280,25); if(n==5){noLoop();} } void mousePressed(){ n=0; x=290; loop();}