//_________Moon passing over the Earth___________\\
//_________________________________________________\\
//_________________Ashwin Kamath_____________________\\
//_____________________________________________________\\
//_____________________991439289_________________________\\
//_________________________________________________________\\
//***********************************************************\\
void setup()
{
//Set canvas size to 400X400
size(400,400);
}
void draw()
{
//Set framerate to 60
frameRate(60);
//Draw Space. Adds a glare effect to the screen when mouse cursor is moved across the screen.
background(constrain(mouseX,0,40));
{
//Planet in the distance
noStroke();
fill(225,30,0,140);
ellipse(300+mouseX/30,120+mouseX/30,25,25);
fill(225,30,0,230);
ellipse(300+mouseX/30,120+mouseX/30,20,20);
fill(225,160,0,230);
ellipse(294+mouseX/30,120+mouseX/30,2,2);
fill(225,160,0,230);
ellipse(300+mouseX/30,125+mouseX/30,4,2);
fill(225,160,0,230);
ellipse(300+mouseX/30,115+mouseX/30,8,2);
fill(240,0,0,150);
ellipse(300+mouseX/30,120+mouseX/30,70,8);
}
{
//Stars
fill(255);
ellipse(50+mouseX/12, 100+mouseX/16,random(0,5), random(0,5));
fill(255);
ellipse(150+mouseX/12, 60+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(75+mouseX/12, 180+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(120+mouseX/12, 50+mouseX/12,random(0,3), random(0,3));
fill(255);
ellipse(300+mouseX/12, 140+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(170+mouseX/12, 120+mouseX/12,random(0,3), random(0,3));
fill(255);
ellipse(240+mouseX/12, 260+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(175+mouseX/12, 280-mouseX/12,random(0,3), random(0,3));
fill(255);
ellipse(320+mouseX/12, 153+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(340-mouseX/12, 343+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(190+mouseX/12, 170+mouseX/12,random(0,2), random(0,3));
fill(255);
ellipse(347+mouseX/12, 268-mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(200+mouseX/12, mouseX/12,random(0,3), random(0,3));
fill(255);
ellipse(300+mouseX/18, mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(280+mouseX/12, 343+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(190+mouseX/14, 270+mouseX/14,random(0,3), random(0,3));
fill(255);
ellipse(347+mouseX, 268+mouseX/14,random(0,5), random(0,5));
fill(255);
ellipse(300+mouseX/2, 150,random(0,5), random(0,5));
//Add static stars
fill(255);
ellipse(20, 50,random(0,5), random(0,5));
fill(255);
ellipse(340, 220,random(0,5), random(0,5));
fill(255);
ellipse(120+mouseX/14, 170+mouseX/16,random(0,5), random(0,5));
fill(255);
ellipse(250+mouseX/16, mouseX/18,random(0,5), random(0,5));
fill(255);
ellipse(100+mouseX/12, 200+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(190+mouseX/12, 170+mouseX/12,random(0,2), random(0,3));
fill(255);
ellipse(347+mouseX/12, 268+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(340-mouseX/12, 343+mouseX/12,random(0,5), random(0,5));
fill(255);
ellipse(50+mouseX/12, 170+mouseX/12,random(0,2), random(0,3));
fill(255);
ellipse(57+mouseX/12, 268-mouseX/12,random(0,5), random(0,5));
}
{
//Draw Space station
fill(140);
rect(140+pmouseX/6,100+pmouseX/4,6,18);
fill(140);
rect(150+pmouseX/6,100+pmouseX/4,6,18);
fill(200,80,0);
rect(140+pmouseX/6,120+pmouseX/4,6,18);
fill(200,80,0);
rect(150+pmouseX/6,120+pmouseX/4,6,18);
fill(140);
rect(190+pmouseX/6,100+pmouseX/4,6,18);
fill(140);
rect(180+pmouseX/6,100+pmouseX/4,6,18);
fill(200,80,0);
rect(190+pmouseX/6,120+pmouseX/4,6,18);
fill(200,80,0);
rect(180+pmouseX/6,120+pmouseX/4,6,18);
fill(110);
rect (145+pmouseX/6,118+pmouseX/4,45,2);
fill(220);
rect (162+pmouseX/6,110+pmouseX/4,12,10);
fill(150);
rect (162+pmouseX/6,110+pmouseX/4,6,5);
}
{
//Planet Earth before mouse click------> Normal state
fill(255,255,255,random(45,50));
ellipse(400+mouseX/18,400+mouseY/18,890,490);
fill(255,255,255,190);
ellipse(400+mouseX/18,400+mouseY/18,870,470);
fill(0,0,220);
ellipse(400+mouseX/18,400+mouseY/18,860,460);
fill(0,200,0);
rect(200+mouseX/18,200+mouseY/18,100,75,100);
fill(0,200,0);
rect(250+mouseX/18,210+mouseY/18,120,90,100);
fill(0,200,0);
rect(140+mouseX/18,250+mouseY/18,100,85,100);
fill(0,200,0);
ellipse(200+mouseX/18,260+mouseY/18,100,75);
fill(0,200,0);
ellipse(240+mouseX/18,320+mouseY/18,100,75);
fill(0,200,0);
rect(20+mouseX/18,340+mouseY/18,120,90,100);
fill(0,200,0);
ellipse(50+mouseX/18,340+mouseY/18,100,45);
fill(0,200,0);
ellipse(80+mouseX/18,330+mouseY/18,100,45);
fill(0,200,0);
rect(360+mouseX/18,360+mouseY/18,120,90,100);
fill(0,200,0);
ellipse(350+mouseX/18,360+mouseY/18,100,75);
fill(255,255,255,120);
ellipse(400+mouseX/18,400+mouseY/18,950,550);
}
{
//Moon
//Shadow of the moon..opacity increases as the mouse cursor moves across the screen
fill(10,10,10,mouseX);
ellipse(mouseX+60,constrain(mouseY+60,360,400),mouseX+20,mouseX+20);
//Draw moon.
fill(255);
ellipse(mouseX,mouseY,mouseX+20,mouseX+20);
}
}
// Destruction of the Earth!
void mousePressed()
{
frameRate(5);
fill(255,255,255,random(45,50));
ellipse(400+mouseX/18,400+mouseY/18,890,490);
fill(255,255,255,190);
ellipse(400+mouseX/18,400+mouseY/18,870,470);
fill(255,0,0);
ellipse(400+mouseX/18,400+mouseY/18,860,460);
fill(200,200,0);
rect(200+mouseX/18,200+mouseY/18,100,75,100);
fill(200,200,0);
rect(250+mouseX/18,210+mouseY/18,120,90,100);
fill(200,200,0);
rect(140+mouseX/18,250+mouseY/18,100,85,100);
fill(200,200,0);
ellipse(200+mouseX/18,260+mouseY/18,100,75);
fill(200,200,0);
ellipse(240+mouseX/18,320+mouseY/18,100,75);
fill(200,200,0);
rect(20+mouseX/18,340+mouseY/18,120,90,100);
fill(200,200,0);
ellipse(50+mouseX/18,340+mouseY/18,100,45);
fill(200,200,0);
ellipse(80+mouseX/18,330+mouseY/18,100,45);
fill(200,200,0);
rect(360+mouseX/18,360+mouseY/18,120,90,100);
fill(200,200,0);
ellipse(350+mouseX/18,360+mouseY/18,100,75);
fill(255,200,0,120);
ellipse(400+mouseX/18,400+mouseY/18,950,550);
//Print a message
println("BOOM!");
}