Your browser does not support the canvas tag.

previous        Show / Hide Source        Download        next
void setup() {
  
  size(400,400);
}

//-BACKGROUND-//

void draw() {
  background(255);
  
//ground
fill(14,75,32);
quad(0,276,400,276,400,400,0,400);

//sky
fill(0,0,0);
quad(400,0,0,0,0,276,400,276);

//moon
fill(195,195,195);
ellipse(100,100,100,100);

//moon craters
fill(148,148,148);
ellipse(120,120,25,25);

fill(148,148,148);
ellipse(97,125,15,15);

fill(148,148,148);
ellipse(80,70,20,20);

fill(148,148,148);
ellipse(95,95,10,10);

fill(148,148,148);
ellipse(65,115,15,15);

fill(148,148,148);
ellipse(125,80,30,30);

fill(148,148,148);
ellipse(80,123,10,10);

//-PUMPKIN BODY-//

//interior
fill(189,75,0);
triangle(105,151,315,151,210,165);
fill(255,153,85,mouseY/400.0*255);
triangle(105,151,315,151,210,165);

//top right of pumpkin
fill(255,107,9);
stroke(255,127,39,0);
quad(210,131+mouseY/60,282,121+mouseY/60,315,145+mouseY/60,210,159+mouseY/60);

//top left of pumpkin
fill(255,127,39);
quad(210,131+mouseY/60,138,121+mouseY/60,105,145+mouseY/60,210,159+mouseY/60);

//middle right of pumpkin
fill(255,107,9);
quad(210,165,315,151,328,205,210,205);

//middle left of pumpkin
fill(255,127,39);
quad(210,165,105,151,88,205,210,205);

//bottom right of pumpkin
fill(255,107,9);
quad(210,205,328,205,287,306,210,301);

//bottom left of pumpkin
fill(255,127,39);
quad(210,205,88,205,133,306,210,301);

//-PUMPKIN STEM-//

//bottom left base of stem
fill(123,77,51);
quad(210,131+mouseY/60,210,121+mouseY/60,178,121+mouseY/60,174,126+mouseY/60);

//bottom right base of stem
fill(95,58,39);
quad(210,131+mouseY/60,210,121+mouseY/60,242,121+mouseY/60,246,126+mouseY/60);

//top left base of stem
fill(123,77,51);
quad(210,121+mouseY/60,210,104+mouseY/60,192,104+mouseY/60,178,121+mouseY/60);

//top right base of stem
fill(95,58,39);
quad(210,121+mouseY/60,210,104+mouseY/60,228,104+mouseY/60,242,121+mouseY/60);

//middle of stem
fill(123,77,51);
quad(192,104+mouseY/60,228,104+mouseY/60,228,64+mouseY/60,204,64+mouseY/60);

//top of stem
fill(123,77,51);
quad(205,64+mouseY/60,228,64+mouseY/60,228,50+mouseY/60,216,50+mouseY/60);

//-PUMPKIN FACIAL FEATURES-//

//left eyebrow
fill(0,0,0);
quad(128,171,128,156,160,171,160,186);

fill(255,153,85,mouseY/400.0*255);
quad(128,171,128,156,160,171,160,186);

//right eyebrow
fill(0,0,0);
quad(290,156,258,171,258,186,290,171);

fill(255,153,85,mouseY/400.0*255);
quad(290,156,258,171,258,186,290,171);

//left eye hole
fill(0,0,0);
triangle(148,186,128,216,168,216);
fill(255,153,85,mouseY/400.0*255);
triangle(148,186,128,216,168,216);

//right eye hole
fill(0,0,0);
triangle(270,186,250,216,290,216);
fill(255,153,85,mouseY/400.0*255);
triangle(270,186,250,216,290,216);

//nose
fill(0,0,0);
triangle(210,216,192,246,228,246);
fill(255,153,85,mouseY/400.0*255);
triangle(210,216,192,246,228,246);

//right side of mouth
fill(0,0,0);
quad(210,280,298,272,258,288,210,294);
fill(255,153,85,mouseY/400.0*255);
quad(210,280,298,272,258,288,210,294);

//left side of mouth
fill(0,0,0);
quad(210,280,120,272,160,288,210,294);
fill(255,153,85,mouseY/400.0*255);
quad(210,280,120,272,160,288,210,294);

//left eye
fill(255,201,14,mouseY/400.0*255);
ellipse(146+(mouseX/50),200+(mouseY/50),10,10);

//right eye
fill(255,201,14,mouseY/400.0*255);
ellipse(266+(mouseX/50),200+(mouseY/50),10,10);

//println(mouseX,mouseY);
}