float bubbleY = 400;
void setup () {
// set screen size
size (400, 400);
// draw ellipse from corner
ellipseMode (CORNER);
rectMode (CORNER);
}
void draw () {
// change background to white
background (96, 132, 173);
// window
noStroke ();
fill (198, 143, 183);
rect (40, 20, 150, 150);
fill (232, 183, 105);
ellipse(50, 30, 60, 60);
//window frame
stroke(225);
strokeWeight(10);
noFill ();
rect (40, 20, 150, 150);
noStroke ();
fill (225);
rect (40, 100, 150, 10);
// pug ears
noStroke();
fill (55, 49, 46);
ellipse (50, 70 + (mouseY * 0.03), 120, 100);
ellipse (230, 70 + (mouseY * 0.03), 120, 100);
triangle (50, 70 + (mouseY * 0.03), 50, 180 + (mouseY * 0.03), 130, 70 + (mouseY * 0.03));
triangle (270, 70 + (mouseY * 0.03), 360, 70 + (mouseY * 0.03), 360, 180 + (mouseY * 0.03));
//pug head
noStroke();
fill (202, 183, 168);
ellipse (80 + (mouseX * 0.01), 80 + (mouseY * 0.01), 240, 240);
ellipse (70 + (mouseX * 0.02), 170 + (mouseY * 0.02), 70, 100);
ellipse (260 + (mouseX * 0.02), 170 + (mouseY * 0.02), 70, 100);
// pug eye socket
noStroke ();
fill (163, 135, 128);
ellipse (90 + (mouseX * 0.02), 120 + (mouseY * 0.02), 100, 80);
ellipse (210 + (mouseX * 0.02), 120 + (mouseY * 0.02), 100, 80);
// pug eye ball
noStroke ();
fill (121, 64, 51);
ellipse (100 + (mouseX * 0.05), 150 + (mouseY * 0.05), 40, 40);
ellipse (260 + (mouseX * 0.05), 150 + (mouseY * 0.05), 40, 40);
noStroke ();
fill (47, 37, 35);
ellipse (100 + (mouseX * 0.05), 160 + (mouseY * 0.05), 30, 30);
ellipse (270 + (mouseX * 0.05), 160 + (mouseY * 0.05), 30, 30);
noStroke ();
fill (255);
ellipse (120 + (mouseX * 0.05), 160 + (mouseY * 0.05), 20, 20);
ellipse (260 + (mouseX * 0.05), 160 + (mouseY * 0.05), 20, 20);
// pug eyebrows
noStroke ();
fill (63, 50, 48);
ellipse (110 + (mouseX * 0.03), 110 + (mouseY * 0.03), 60, 30);
ellipse (230 + (mouseX * 0.03), 110 + (mouseY * 0.03), 60, 30);
// pug snout and tounge
noStroke ();
fill (75, 60, 57);
ellipse (130 + (mouseX * 0.05), 180 + (mouseY * 0.05), 140, 100);
fill (215, 159, 159);
ellipse (170 + (mouseX * 0.05), 230 + (mouseY * 0.05), 60, 40);
fill (111, 77, 77);
ellipse (199 + (mouseX * 0.05), 240 + (mouseY * 0.05), 2, 20);
fill (91, 76, 72);
ellipse (121 + (mouseX * 0.05), 180 + (mouseY * 0.05), 80, 80);
ellipse (199 + (mouseX * 0.05), 180 + (mouseY * 0.05), 80, 80);
fill (55, 49, 46);
ellipse (160 + (mouseX * 0.05), 210 + (mouseY * 0.05), 10, 10);
ellipse (160 + (mouseX * 0.05), 240 + (mouseY * 0.05), 10, 10);
ellipse (140 + (mouseX * 0.05), 225 + (mouseY * 0.05), 10, 10);
ellipse (230 + (mouseX * 0.05), 210 + (mouseY * 0.05), 10, 10);
ellipse (230 + (mouseX * 0.05), 240 + (mouseY * 0.05), 10, 10);
ellipse (250 + (mouseX * 0.05), 225 + (mouseY * 0.05), 10, 10);
// pug nose
noStroke ();
fill (55, 49, 46);
ellipse (170 + (mouseX * 0.05), 170 + (mouseY * 0.05), 60, 40);
noStroke();
fill (255, 255, 255, 180);
ellipse (190 + (mouseX * 0.05), 175 + (mouseY * 0.05), 20, 10);
// bubbles
bubbleY = bubbleY - 0.5;
noStroke ();
fill (178, 205, 224, 200);
ellipse (0, bubbleY, 50, 50);
ellipse (50, bubbleY + 350, 50, 50);
ellipse (100, bubbleY - 50, 50, 50);
ellipse (150, bubbleY + 400, 50, 50);
ellipse (200, bubbleY - 100, 50, 50);
ellipse (250, bubbleY + 200, 50, 50);
ellipse (300, bubbleY - 20, 50, 50);
ellipse (350, bubbleY + 200, 50, 50);
ellipse (120, bubbleY + 150, 50, 50);
ellipse (210, bubbleY + 220, 50, 50);
// soapy water
noStroke ();
fill (126, 174, 228);
ellipse (160, 300, 110, 110);
ellipse (80, 290, 120, 120);
ellipse (-20, 280, 150, 150);
ellipse (225, 290, 150, 150);
ellipse (320, 300, 110, 110);
ellipse (120, 380, 100, 100);
// brush
noStroke ();
fill (230, 219, 191);
ellipse (mouseX, mouseY, 120, 60);
fill (115, 72, 66);
ellipse (mouseX-10, mouseY-10, 140, 40);
fill (178, 205, 224, 200);
ellipse (mouseX-10, mouseY+30, 30, 30);
ellipse (mouseX+10, mouseY+40, 20, 20);
ellipse (mouseX+20, mouseY+40, 25, 25);
ellipse (mouseX+40, mouseY+40, 30, 30);
ellipse (mouseX+60, mouseY+40, 25, 25);
ellipse (mouseX+80, mouseY+35, 30, 30);
ellipse (mouseX+105, mouseY+35, 15, 15);
ellipse (mouseX+110, mouseY+30, 20, 20);
}
// speak when mouse clicked
void mousePressed () {
println ("I'm a dirty boy, make me clean!");
}