Your browser does not support the canvas tag.

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

void draw() {
  background(0);
  
  // Background Pillars
  fill(70);
  rect(40,260,20,100);
  fill(70);
  rect(100,260,20,100);
  fill(70);
  rect(160,260,20,100);
  fill(70);
  rect(220,260,20,100);
  fill(70);
  rect(280,260,20,100);
  fill(70);
  rect(340,260,20,100);
  
  //Floor
  fill(70);
  rect(0,360,400,40);
  
  //Left Window
  fill(40);
  rect(20,40,120,20);
  fill(40);
  rect(20,140,120,20);
  fill(30);
  rect(20,60,20,80);
  fill(30);
  rect(120,60,20,80);
  fill(mouseX,0,mouseY);
  rect(40,60,80,80);
  stroke(0);
  line(80,60,80,140);
  stroke(0);
  line(40,100,120,100);
  
  //Right Window
  fill(40);
  rect(260,40,120,20);
  fill(40);
  rect(260,140,120,20);
  fill(30);
  rect(260,60,20,80);
  fill(30);
  rect(360,60,20,80);
  fill(mouseX,0,mouseY);
  rect(280,60,80,80);
  stroke(0);
  line(320,60,320,140);
  stroke(0);
  line(280,100,360,100);
  
  //Spikes
  fill(140);
  triangle(220,360,230,340,240,360);
  fill(140);
  triangle(240,360,250,340,260,360);
  fill(140);
  triangle(260,360,270,340,280,360);
  
  //Door
  noStroke();
  fill(130,82,1);
  ellipse(340,320,40,40);
  fill(130,82,1);
  rect(320,320,40,40);
  fill(0);
  ellipse(330,335,5,5);
  
  //Background Eyes
  fill(255,0,255);
  ellipse(170,190,20,55);
  ellipse(230,190,20,55);
  fill(0);
  ellipse(170,150,60,40);
  ellipse(230,150,60,40);
  
  //Moving Eyes
  fill(255,255,0);
  ellipse(mouseX/1.5-40,mouseY/4,15,25);
  ellipse(mouseX/1.5,mouseY/4,15,25);
  fill(0);
  ellipse(pmouseX/1.5-40,pmouseY/4,10,11);
  ellipse(pmouseX/1.5,pmouseY/4,10,11);
  fill(255);
  ellipse(pmouseX/1.5-40,pmouseY/4,7,8);
  ellipse(pmouseX/1.5,pmouseY/4,7,8);
  
  //Moving Eyes Escape/Invisible
  fill(0);
  rect(0,0,400,40);
  
  //Boo's Body
  fill(255);
  ellipse(mouseX,mouseY,50,50);
  
   //Boo's Arms
  noStroke();
  fill(255);
  ellipse(pmouseX-25,pmouseY+5,30,10);
  ellipse(pmouseX+25,pmouseY+5,30,10);
  
  //Boo's Tail
  ellipse(pmouseX+15,pmouseY+13,20,20);
   
   //Boo's Mouth
  noStroke();
  fill(255,0,0);
  ellipse(mouseX-4,mouseY+6,25,20);
  fill(255);
  ellipse(mouseX-4,mouseY,25,10);
  
  //Boo's Teeth
  fill(255);
  triangle(mouseX-15,mouseY+2,mouseX-10,mouseY+10,mouseX-10,mouseY+2);
  triangle(mouseX+4,mouseY+2,mouseX+4,mouseY+10,mouseX+9,mouseY+2);
  
  //Boo's Eyes
  fill(0);
  ellipse(mouseX-15,mouseY-8,10,15);
  fill(0);
  ellipse(mouseX+5,mouseY-8,10,15);
  fill(255);
  ellipse(mouseX-17,mouseY-10,4,7);
  fill(255);
  ellipse(mouseX+3,mouseY-10,4,7);
  stroke(0);
  line(mouseX-15,mouseY-20,mouseX-10,mouseY-10);
  stroke(0);
  line(mouseX-10,mouseY-10,mouseX-6,mouseY-18);
  stroke(0);
  line(mouseX-6,mouseY-18,mouseX-2,mouseY-10);
  stroke(0);
  line(mouseX-2,mouseY-10,mouseX+5,mouseY-20);
}

void mousePressed() {
  println("Get me outta here!");
  
  //King Boo's Body
  noStroke();
  fill(255);
  ellipse(200,200,200,200);
  
  //King Boo's Arms
  fill(255);
  ellipse(110,240,50,50);
  ellipse(290,240,50,50);
  
  //King Boo's Mouth
  fill(255,0,0);
  ellipse(200,220,100,100);
  fill(255);
  rect(140,150,120,60);
  fill(255);
  ellipse(200,210,150,40);
  
  //King Boo's Tongue
  fill(75,0,130);
  ellipse(200,280,40,60);
  fill(255,0,0);
  triangle(190,240,200,260,210,240);
  stroke(0);
  strokeWeight(3);
  line(200,260,200,280);
  
  //King Boo's Teeth
  strokeWeight(1);
  stroke(0);
  noStroke();
  fill(255);
  triangle(160,210,170,250,180,210);
  triangle(180,210,190,245,200,210);
  triangle(200,210,210,245,220,210);
  triangle(220,210,230,250,240,210);
  
  //King Boo's Eyes
  fill(0);
  ellipse(170,190,70,60);
  ellipse(230,190,70,60);
  fill(255,0,255);
  ellipse(170,190,20,55);
  ellipse(230,190,20,55);
  fill(255);
  ellipse(170,150,60,40);
  ellipse(230,150,60,40);
  
  //King Boo's Crown
  fill(255,255,0);
  ellipse(200,100,40,40);
  rect(180,90,40,10);
  triangle(180,90,180,70,200,90);
  triangle(180,90,200,60,220,90);
  triangle(200,90,220,70,220,90);
}