Your browser does not support the canvas tag.

previous        Show / Hide Source        Download        next
//RECLAIMER
void setup() {
  rectMode(CORNERS);

  size(400, 400);
  noStroke();
  background(255);
}

void draw() {

  //skybox night
  fill(45, 51, 91);
  rect(0, 0, 400, 67);
  fill(64, 67, 115);
  rect(0, 67, 400, 134);
  fill(165, 111, 166);
  rect(0, 134, 400, 211);
  //stars
  fill(255);
  ellipse(60, 100, 5, 5);
  ellipse(40, 40, 5, 5);
  ellipse(160, 100, 5, 5);
  ellipse(260, 60, 5, 5);
  ellipse(70, 170, 5, 5);
  ellipse(300, 150, 5, 5);

  //skybox day
  fill(249, 137, 143, 255-mouseY+50);
  rect(0, 0, 400, 67);
  fill(255, 144, 176, 255-mouseY+50);
  rect(0, 67, 400, 134);
  fill(255, 188, 188, 255-mouseY+50);
  rect(0, 134, 400, 211);

  //overcast
  fill(80, 80, 80, -mouseX+100);
  rect(0, 0, 400, 67);
  fill(130, 130, 130, -mouseX+100);
  rect(0, 67, 400, 134);
  fill(210, 210, 210, -mouseX+100);
  rect(0, 134, 400, 211);

  //sun
  fill(255, 247, 136);
  ellipse(80, mouseY*2+50, 80, 80);

  //moon

  fill(255, 228, 217);
  ellipse(80, mouseY-320, 80, 80);

  //fourth hill
  fill(182, 220, 220);
  rect(120, 160, 450, 400, 50);
  rect(140, 220, 200, 280, 25);

  //third hill
  fill(122, 191, 191);
  rect(-50, 200, 140, 370, 50);
  rect(140, 240, 190, 300);

  //lake
  fill(128, 255, 255);
  rect(140, 280, 380, 340, 25);
  rect(100, 300, 150, 380);

  //third hill colour cover
  fill(122, 191, 191);
  arc(130, 300, 20, 20, radians(0), radians(90));
  rect(50, 300, 130, 310);

  //fourth hill colour cover
  fill(182, 220, 220);
  rect(140, 220, 250, 280, 25);

  //first hill
  fill(2, 58, 64);
  rect(280, 260, 400, 400);
  rect(0, 340, 280, 400);
  arc(280, 360, 200, 200, radians(180), radians(270));

  //second hill
  fill(3, 89, 89);
  rect(0, 327, 145, 367);
  arc(145, 327, 80, 80, radians(0), radians(90));
  rect(0, 300, 100, 360);
  arc(100, 330, 60, 60, radians(270), radians(360));

  //man
  fill(48, 96, 119);
  rect(283, 193, 293, 230);//head
  triangle(280, 210, 300, 210, 280, 230);//chest
  triangle(280, 235, 300, 235, 280, 205);//waist
  triangle(280, 235, 280, 260, 290, 235);//Rleg
  triangle(290, 235, 300, 260, 300, 235);//Lleg
  fill(119, 173, 200);
  triangle(280, 205, 280, 230, 290, 205);//Larm
  triangle(290, 205, 300, 230, 300, 205);//Rarm
  fill(127, 126, 108);
  rect(280, 205, 300, 215);//cloak

  //clouds right
  fill(206, 225, 240);
  rect(mouseX/1.5+140, 40, mouseX/1.5+240, 80, 50);
  rect(mouseX/2+200, 10, mouseX/2+450, 100, 50);
  rect(mouseX+170, 90, mouseX+400, 120, 50);

  //cloude left
  rect(-mouseX+100, 90, -mouseX+140, 70, 25);
  rect(-mouseX/2-30, 40, -mouseX/2+60, 100, 50);
  rect(-mouseX*1.5-40, 110, -mouseX*1.5+150, 130, 50);

  //hill tree top
  fill(3, 89, 89);
  triangle(320, 200, 480, 200, 460, -200);
  fill(130, 117, 123);//bark colour
  rect(380, 200, 400, 280);
  triangle(360, 300, 400, 280, 380, 280);
}