void setup() { size(400,400); noStroke(); } void draw() { background(0,255-mouseY,255); //stars ellipseMode(CENTER); fill(255,255,0,mouseY); ellipse(100,130,5,5); ellipse(200,100,6,6); ellipse(240,150,5,5); ellipse(50,120,2,2); ellipse(180,110,5,5); ellipse(150,170,5,5); ellipse(330,120,3,3); ellipse(300,110,5,5); ellipse(370,170,5,5); ellipse(210,80,5,5); ellipse(200,150,4,4); ellipse(20,60,5,5); ellipse(330,30,5,5); //mountain 3 fill(205-mouseY,205-mouseY,143-mouseY); beginShape(); vertex(-100+mouseX/7,250); vertex(40+mouseX/7,280); vertex(140+mouseX/7,240); vertex(260+mouseX/7,250); vertex(330+mouseX/7,220); vertex(430+mouseX/7,250); vertex(430+mouseX/7,600); vertex(-100+mouseX/7,600); endShape(); //mountain 2 fill(223-mouseY,223-mouseY,100-mouseY); beginShape(); vertex(-80+mouseX/5,300); vertex(20+mouseX/5,206); vertex(120+mouseX/5,270); vertex(240+mouseX/5,230); vertex(500+mouseX/5,400); vertex(500+mouseX/5,600); vertex(-500+mouseX/5,600); endShape(); //mountain 1 fill(255-mouseY,255-mouseY,0); beginShape(); vertex(180+mouseX/3,240); vertex(220+mouseX/3,230); vertex(320+mouseX/3,260); vertex(380+mouseX/3,280); vertex(440+mouseX/3,200); vertex(500+mouseX/3,280); vertex(500+mouseX/3,600); vertex(-180+mouseX/3,600); vertex(-180+mouseX/3,320); endShape(); //clouds 1 rectMode(CENTER); fill(255,100); rect(20+mouseX/3,80,200,50,50); rect(350+mouseX/3,100,200,50,50); //clouds 2 fill(255,100); rect(-40+mouseX/5,130,100,30,50); rect(350+mouseX/5,150,100,25,50); rect(200+mouseX/5,140,100,20,50); //clouds 3 fill(255,100); rect(20+mouseX/7,190,100,10,50); rect(400+mouseX/7,200,100,15,50); rect(200+mouseX/7,180,100,10,50); rectMode(CORNER); //beak fill(255-mouseY,200-mouseY,0); rect(-(tan(frameCount*0.005) * 500) + 14,65,10,5,50); //body fill(200-mouseY,200-mouseY,200-mouseY); rect(-(tan(frameCount*0.005) * 500) + 20,60,23,13,50); //eyes fill(0+mouseY,0,0); rect(-(tan(frameCount*0.005) * 500) + 22,63,5,5,50); //wing fill(255-mouseY,255-mouseY,255-mouseY); translate(-(tan(frameCount*0.005) * 500) + 10,0); rotate(sin(frameCount*0.5) / 16); translate((tan(frameCount*0.005) * 500) + 10,0); rect(-(tan(frameCount*0.005) * 500) + 10,60,20,10,50); }