Your browser does not support the canvas tag.

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

void draw() {
  background (216, 204, 162);

  //wall 
  stroke(0);
  fill(220);
  rectMode(CENTER);
  rect(200, 400, 400, 200);

  //wall
  stroke(0);
  fill(0);
  rectMode(CENTER);
  rect(100, 350, 1, 100);

  //wall
  stroke(0);
  fill(220);
  rectMode(CENTER);
  rect(200, 350, 1, 100);

  //wall
  stroke(0);
  fill(220);
  rectMode(CENTER);
  rect(300, 350, 1, 100);

  //wall
  stroke(0);
  fill(220);
  rectMode(CENTER);
  rect(50, 350, 1, 100);

  //wall
  stroke(0);
  fill(220);
  rectMode(CENTER);
  rect(150, 350, 1, 100);

  //wall
  stroke(0);
  fill(220);
  rectMode(CENTER);
  rect(250, 350, 1, 100);

  //wall
  stroke(0);
  fill(220);
  rectMode(CENTER);
  rect(350, 350, 1, 100);

  //wall
  stroke(0);
  fill(220);
  rectMode(CENTER);
  rect(200, 300, 400, 10);

  //window rim
  stroke(0);
  fill(255);
  rectMode(CENTER);
  rect(280, 90, 220, 170, 10);

  //window
  stroke(0);
  fill(80, 152, 227);
  rectMode(CENTER);
  rect(280, 90, 200, 150);

  //outside
  noStroke();
  fill(50, 185, 60);
  rectMode(CENTER);
  rect(280, 155, 200, 20);

  //sun
  noStroke();
  fill(237, 226, 10);
  ellipseMode(CENTER);
  ellipse(350, 50, 50, 50);

  //table 
  stroke(0);
  fill(70, 44, 29);
  rectMode(CENTER);
  rect(200, 401, 375, 30);

  //////bowl and water are transparent to mimic glass and water
  
  //water-transparent
  stroke(255);
  fill(0, 0, 255, 200);
  ellipseMode(CENTER);
  ellipse(200, 300, 175, 160);

  //rim pt.3
  rectMode(CENTER);
  fill (0, 0, 80, 0);
  rect(200, 213, 45, 18, 2);

  //fish bowl
  stroke(90);
  fill(0, 0, 255, 25);
  ellipseMode(CENTER);
  ellipse(200, 300, 200, 175);

  //rim
  ellipseMode(CENTER);
  fill(0, 0, 255, 25);
  ellipse(200, 204, 90, 20);

  //rim pt.2 
  ellipseMode(CENTER);
  fill(150);
  ellipse(200, 203, 45, 10);

  //rocks
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(200, 375, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(201, 370, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(208, 375, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(192, 375, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(186, 374, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(178, 373, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(170, 371.5, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(162, 367.5, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(155, 364, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(148, 360, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(154, 360, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(160, 360, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(168, 360, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(168, 365, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(176, 360, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(176, 365, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(184, 361, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(184, 367, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(192, 359, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(192, 365, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(194, 368, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(200, 362, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(208, 360, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(207, 365, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(215, 360, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(215, 365, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(213, 369, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(217, 373, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(222, 361, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(222, 367, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(223, 372, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(229, 360, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(229, 367, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(229, 371, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(237, 360, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(237, 367, 8, 8);
  ellipseMode(CENTER);
  fill(17, 149, 15);
  ellipse(245, 359, 8, 8);
  ellipseMode(CENTER);
  fill(189, 66, 227);
  ellipse(245, 363, 8, 8);
  ellipseMode(CENTER);
  fill(188, 83, 17);
  ellipse(250, 360, 8, 8);

  //purple fish
  //fin 1&2
  noStroke();
  fill(232, 47, 106);
  triangle(210, 280, 235+(mouseX/60), 270, 235+(mouseX/60), 290);
  noStroke();
  fill(232, 47, 106);
  triangle(190, 280, 165-(mouseX/60), 270, 165-(mouseX/60), 290);

  //TOP FIN
  // movement of fin
  noStroke();
  fill(232, 47, 106);
  triangle(195+(mouseX/50), 250, 205, 280, 195, 280);

  //body-gives secondary movement
  noStroke();
  fill(176, 122, 232);
  ellipse(200+(mouseX/200), 280, 50, 30); 

  //mouth
  stroke(0);
  noFill();
  arc(200, 284, 20, 10, 0, PI);

  /////eye 1
  // white of the eye
  stroke(0);
  fill(255);
  ellipse(192, 273, 15, 15);
  
  //EYE(PUPIL)
  noStroke();
  fill(0);
  ellipse(189+(mouseX/50), 270+(mouseY/50), 8, 8); //EYE(PUPIL)

  //eye 2
  // white of the eye
  stroke(0);
  fill(255);
  ellipse(209, 273, 15, 15);
  
  //EYE(PUPIL) 
  noStroke();
  fill(0);
  ellipse(206+(mouseX/50), 270+(mouseY/50), 8, 8); 


  //treat- eyes follow treat!
  stroke(0);
  fill (211, 152, 62);
  ellipse(mouseX, mouseY, 30, 10);

  //println(mouseX, mouseY);
}

//THE FISHY TALKS LOOOOL
void mousePressed() {
  println("FEED ME DAMMIT !!!");
}