void setup() { //set the size of the window size(400, 400); frameRate(30); } void draw() { //hides cursor noCursor(); //remains static background (0, 38, 87); //(2+mouseY/6, 12+mouseX/3, 22+mouseX/2); //set Mode ellipseMode(CENTER); rectMode(CORNERS); noStroke(); /////////////////////////////////////////////////// //Sun fill (150,150,0); //(mouseX-21, mouseY-41, mouseY-119); //sun ball ellipse(30, 40, 120, 120); /////////////////////////////////////////////////// //City fill(50); rect(0, 320, 400, 400); //bottom block rect(0, 300, 90, 320); //left definition block rect(160, 310, 180, 320); // middle definition rect(220, 300, 310, 320); //right definition //buildings from left to right rect(0, 240, 40, 320); //left rect(50, 190, 90, 320); rect(120, 260, 160, 320); rect(180, 220, 220, 320); rect(260, 180, 300, 320); rect(310, 220, 350, 320); rect(370, 240, 400, 320); //right //windows from left to right fill (230); rect(10, 290, 20, 300); //left rect(20, 250, 30, 260); rect(60, 220, 70, 230); rect(70, 290, 80, 300); rect(130, 270, 140, 280); rect(140, 300, 150, 310); rect(190, 270, 200, 280); rect(200, 240, 210, 250); rect(270, 190, 280, 200); rect(280, 260, 290, 270); rect(320, 250, 330, 260); rect(330, 270, 340, 280); rect(380, 310, 390, 320); rect(390, 250, 400, 260); //right //road fill(30); rect(0, 360, 400, 400); //black road fill(150); rect(0, 377, 400, 380); //white stripe /////////////////////////////////////////////////// //UFO dome fill(200); ellipse(mouseX, mouseY-10, 40, 40); //dome fill(250); ellipse(mouseX-10, mouseY-20, 5, 10); //highlight //Alien fill(0, 150, 30, 240); ellipse(mouseX, mouseY-20, 10, 10); //head ellipse(mouseX, mouseY-10, 5, 10); //body //UFO body fill(0, 100, 100); ellipse(mouseX-30, mouseY, 20, 20); //left side of body ellipse(mouseX+30, mouseY, 20, 20); //right side of body rect(mouseX-30, mouseY-10, mouseX+30, mouseY+10); //main body //UFO body lights //lights change colour with mouse movement fill(mouseX, mouseY,0); ellipse(mouseX-30, mouseY, 5, 5); //left to right ellipse(mouseX-10, mouseY, 5, 5); ellipse(mouseX+10, mouseY, 5, 5); ellipse(mouseX+30, mouseY, 5, 5); } /////////////////////////////////////////////////// void mousePressed () { //beam of light flashes fill(170, 170, 0); triangle(mouseX, mouseY, mouseX+30, mouseY+40, mouseX-30, mouseY+40); } void keyPressed() { println("Bow before Zorg"); }