/*/////////////////////////////////////////////////// ** Bat Signal by Cheyenne Amil ** an interactive drawing in 96 shapes /*////////////////////////////////////////////////// void setup (){ // set up Canvas Size size(400,400); //Select the modes in how i will draw ellipses and rectangles (x,y,w,h) ellipseMode(CORNER); rectMode(CORNER); } void draw (){ // Dark blue background background (33,36,67); //**Drawing the cloudy sky above using 23 dull blue ellipses //Darker base of the cloud made up of 12 ellipses fill(49,88,129); //no outlines for all shapes noStroke(); ellipse(5,45,40,40); ellipse(35,45,50,50); ellipse(65,40,60,65); ellipse(90,45,70,75); ellipse(120,45,70,75); ellipse(160,50,70,65); ellipse(200,50,65,60); ellipse(235,45,70,70); ellipse(260,40,65,65); ellipse(280,45,60,65); ellipse(320,40,60,60); ellipse(350,40,50,40); //Bulk of the cloud made of 1 ellipse fill(58,98,154); ellipse(5,20,400,70); //Top of the cloud made up of 10 ellipses fill(58,98,154); ellipse(0,20,50,50); ellipse(10,5,40,40); ellipse(30,0,65,60); ellipse(90,-20,80,80); ellipse(160,-20,100,110); ellipse(245,0,55,40); ellipse(295,5,40,30); ellipse(330,10,30,30); ellipse(350,5,40,40); ellipse(380,30,30,30); //**These are the buildings in the background of different shades and layers as to add depth to a city scape. 10 shapes fill(108,85,113); rect(0,180,60,220); fill(96,75,100); rect(80,220,60,80); fill(96,75,100); rect(170,140,80,260); fill(124,93,131); rect(120,190,70,210); fill(81,61,85); rect(270,120,70,280); //this one is pointy fill(106,88,121); rect(330,180,60,220); triangle(330,180,390,180,360,140); fill(124,93,131); rect(280,200,60,200); fill(147,124,152); rect(220,300,90,100); fill(153,115,162); rect(370,280,30,120); //**Drawing windows with lights on on some of the buildings if(mousePressed){ //the city lights Dim when the BatSignal is Active fill(50,50,50,200-mouseY/2); rect(0,0,400,400); //Windows hint at the joker fill(32,36,32,200); rect(230,315,10,15); rect(290,315,10,15); fill(247,10,26,150); rect(230,350,10,15); rect(290,350,10,15); rect(230,385,10,15); rect(260,385,10,15); rect(290,385,10,15); //turns the buildings windows green to make the city joker themed fill(55,134,54,150); //Prints a line of text println("nananananananana"); println("HAHAHAHAHAHA"); } else{ //otherwise theyre yellow fill(230,230,56,150); rect(230,315,10,15); rect(290,315,10,15); rect(230,350,10,15); rect(290,350,10,15); rect(230,385,10,15); rect(260,385,10,15); rect(290,385,10,15); } //building on the far left, windows rect(10,190,10,15); rect(40,190,10,15); rect(10,215,10,15); rect(40,215,10,15); rect(10,240,10,15); rect(40,240,10,15); //2nd building from the left, windows rect(135,200,10,15); rect(165,200,10,15); rect(135,235,10,15); rect(165,235,10,15); rect(135,270,10,15); rect(165,270,10,15); rect(135,305,10,15); rect(165,305,10,15); rect(135,340,10,15); rect(165,340,10,15); rect(135,375,10,15); rect(165,375,10,15); //3rd set of windows rect(290,210,10,15); rect(320,210,10,15); rect(290,245,10,15); rect(320,245,10,15); rect(290,280,10,15); rect(320,280,10,15); rect(320,315,10,15); rect(320,350,10,15); rect(320,385,10,15); //front most building in background rect(260,315,10,15); rect(260,350,10,15); //Draw the bat signal light beam relative to the position of the mouse if (mousePressed){ //the Beam of light and the logo ellipse fill(255,255,0,150); ellipse(mouseX-50,mouseY-25,100,50); triangle(mouseX-50,mouseY,mouseX+50,mouseY,100,250); //Body of bat in the bat signal fill(28,27,31); triangle(mouseX-15,mouseY-10,mouseX-5,mouseY-10,mouseX-10,mouseY-20); triangle(mouseX+15,mouseY-10,mouseX+4,mouseY-10,mouseX+10,mouseY-20); triangle(mouseX-15,mouseY-10,mouseX+15,mouseY-10,mouseX,mouseY+25); //Wings of the bat in the bat signal triangle(mouseX-10,mouseY-10,mouseX-45,mouseY-10,mouseX-40,mouseY+15); triangle(mouseX,mouseY-10,mouseX-25,mouseY-5,mouseX-20,mouseY+15); triangle(mouseX+10,mouseY-10,mouseX+45,mouseY-10,mouseX+40,mouseY+15); triangle(mouseX,mouseY-10,mouseX+25,mouseY-5,mouseX+20,mouseY+15); } //**Draw the building that the bat signal will be on //drawing the back of the building fill(101,66,116); rect(0,280,120,220); //Top of building fill(125,83,127); rect(0,250,160,30); fill(101,66,116); rect(0,250,160,5); // this is the ledge //right wall of building fill(88,58,103); rect(120,280,40,220); triangle(120,280,160,250,160,280); //Windows on Building with bat signal if(mousePressed){ fill(245,250,8,200-mouseY/4); } else{ fill(245,250,8,100); } rect(50,320,50,60); fill(125,83,127); rect(50,370,50,10); //**Drawing the bat signal //Drawing front of light fill(114,130,134); ellipse((mouseX/50)+75,(mouseY/50)+210,50,50); //triangles for the base fill(123,134,137); triangle(70,270,130,270,100,250); fill(111,121,124); triangle(100,250,130,270,138,265); //Drawing back of light fill(133,159,165); ellipse(80,220,40,40); }