Your browser does not support the canvas tag.

previous        Show / Hide Source        Download        next
//Tyler Tam
//991476113
void setup(){
size(400,400); 

//Makes the background Greyish
 
}
void draw(){    //Re-cycles through this, but not "Void setup" ie. Everything in this part will change
frameRate(45);
colorMode(RGB,255,255,255);
background(50);
        //Background Clouds
        fill(60);//60
        stroke(30);//30
        strokeWeight(3);
        arc(mouseX/10,23,100,50,0+QUARTER_PI,PI-QUARTER_PI); 
        arc(mouseX/10+72,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        arc(mouseX/10+144,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        arc(mouseX/10+216,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        arc(mouseX/10+288,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        arc(mouseX/10+360,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        rectMode(CENTER);
        noStroke();
        rect(200,0,420,80);
        
  //The Mountains Behind Jolteon
  colorMode(RGB,255,255,255);
  fill(20);
  stroke(20);
  strokeWeight(2);
  triangle(20,240,-40,360,40,340);
  triangle(60,220,0,340,120,360);
  quad(100,220,70,240,70,400, 140,340);
  triangle(320,220,260,340,380,340);
  quad(360,180,340,200,280,380,380,320);
  triangle(400,200,340,320,400,400);
  rectMode(CORNERS);
  rect(0,300,400,400);

    //Drawing Jolteon
      //Jolteons shaded leg and stomach
      colorMode(HSB,360,100,100);
      fill(50,100,80);
      stroke(50,100,80);
      quad(150,200,140,250,155,250,170,190);
      quad(140,250,135,275,145,275,155,250);
      colorMode(RGB,255,255,255);
      fill(255,215,0);
      stroke(255,215,0);
      quad(135,275,122,283,120,290,140,290);
      triangle(135,275,140,290,155,250);
    
      //Back Shaded Leg
      colorMode(HSB,360,100,100);
      fill(50,100,80);
      stroke(50,100,80);
      ellipse(220,240,30,30);
        //The grey part to cut out the shadedleg
        colorMode(RGB,255,255,255);
        fill(50);
        noStroke();
        ellipse(235,235,30,30);
      colorMode(HSB,360,100,100);
      fill(50,100,80);
      quad(210,250,205,270,222,280,235,250);
      quad(200,280,190,290,220,290,220,270);
    
      //Jolteon's torso and legs
      colorMode(RGB,255,255,255);
      fill(255,215,0);
      stroke(255,215,0);
      ellipse(178,220,56,40);
      quad(160,170,190,230,220,235,220,190);
      quad(220,190,220,235,245,240,265,180);
    
      //His forward back leg
      ellipse(258,230,40,40);
        //The grey part to cut out leg
        fill(50);
        noStroke();
        ellipse(279,223,40,40);
      fill(255,215,0);
      stroke(255,215,0);
      quad(260,250,270,270,280,280,274,243);
      quad(270,270,260,290,275,290,280,280);
      quad(250,290,260,282,280,280,275,290);
    
      colorMode(HSB,360,100,100);
      fill(50,100,80);
      stroke(50,100,80);
      curve(200,300,160,200,165,238,400,100);
      //curve(300,400,170,210,198,236,600,50);
     
      //front leg
      colorMode(RGB,255,255,255);
      stroke(255,215,0);
      fill(255,215,0);
      quad(183,220,215,290,225,290,210,230);
      quad(220,290,240,290,230,280,215,275);
     
      //His mane (The white triangles)
      colorMode(RGB,255,255,255);
      stroke(200);
      fill(200);
    
      triangle(140,185,130,195,145,190);
      triangle(145,190,140,210,170,190);
      triangle(150,200,140,240,170,190);
      stroke(255);
      fill(255);
      triangle(150,190,164,240,170,200);
      triangle(160,200,175,235,175,190);
      triangle(170,200,190,230,180,190);
      triangle(170,200,210,215,180,180);
      triangle(180,190,210,190,180,170);
      triangle(180,180,210,175,180,170);
      //More shaded white
      stroke(200);
      fill(200);
      triangle(150,190,158,220,170,190);
      //The pointy parts of his head
      colorMode(HSB,360,100,100);
      fill(50,100,90);
      stroke(50,100,90);
      triangle(140,170,130,170,140,180);
      triangle(140,180,130,185,150,190);
      triangle(145,190,135,200,155,190);
        colorMode(RGB,255,255,255);
      fill(255,215,0);
      stroke(255,215,0);
      triangle(150,190,160,200,170,190);
      triangle(160,190,170,200,180,190);
      
    
      //Jolteon's Head
      colorMode(HSB,360,100,100);
      fill(50,100,95);
      stroke(50,100,95);
      triangle(160,150,160,120,175,150);
      colorMode(RGB,255,255,255);
      fill(255,215,0);
      stroke(255,215,0);
      strokeWeight(2);
      triangle(100,150, 135,150,140,170);
      rectMode(CORNERS);
      rect(150,150,180,170);
      rect(140,160,170,190);
      triangle(135,150,140,170,150,160);
      triangle(150,160,140,140,150,150);
      triangle(150,150,150,140,160,150);
      triangle(160,150,155,140,165,150);
      ellipseMode(CENTER);
      ellipse(175,160,40,26);
      quad(170,190,150,180,200,155,205,160);  
      quad(205,160,150,160,150,190,185,190);
      //Black Nose
      colorMode(RGB,255,255,255);
      fill(0);
      noStroke();
      triangle(198,157,201,159,202,155);  
      //Shades in paart of the head
      colorMode(HSB,360,100,100);
      fill(50,100,90);
      stroke(50,100,90);
      triangle(136,170,150,190,139,191);
      
      //The Black part of his ears
      colorMode(RGB,255,255,255);
      fill(0);
      quad(104,152,135,152,148,160,140,168);
      
      //The pointy parts of his tail
      colorMode(RGB,255,255,255);
      stroke(255,215,0);
      fill(255,215,0);
      triangle(240,210,280,230,250,200);
      triangle(285,217,250,212,250,197);
      triangle(290,205,250,190,240,205);
      triangle(290,190,240,205,240,190);
      triangle(290,175,220,200,260,200);
      triangle(287,150,215,200,250,200);
      
    
    //The continuous drawing things. (His eye, Thunder, and the Clouds)
    
     //His eye
        //BlackPart
        noStroke();
        fill(0);
        quad(150,165,163,178,175,175,170,155);
        //The White Part
        fill(255);
        noStroke();
        ellipse(168,164,7,7);
        //The brown part
        colorMode(HSB,360,100,100);
        fill(24,100,65);
        ellipse(155,169,10,8);
        //Black Outline for the eye
        stroke(0);
        noFill();
        quad(148,165,163,173,172,170,168,159);
        
        //Eyelid
        colorMode(RGB,255,255,255);
        noFill();
        strokeWeight(7);
        stroke(255,215,0);
        quad(140,165,163,177,178,173,170,153);
      //His mouth
      colorMode(HSB,360,100,100);
      fill(340,100,61);
      noStroke();
      quad(202,165,180,170,170,190,185,190);
      //Tongue
      colorMode(RGB,255,255,255);
      fill(255,0,0);
      quad(170,190,183,190,180,180,175,180);
      
  //The ground under Jolten
    colorMode(HSB, 360,100,100);
    noStroke();
    fill(24,100,77);
    stroke(24,100,77);
    strokeWeight(1.6);
    quad(400,320,290,290,120,280,380,370);
    triangle(90,270,100,310,380,370);
    quad(100,310,130,340,150,400,380,370);
    triangle(150,400,400,400,380,370);
    triangle(400,320,380,370,400,400);
   
  //The interactive rain
     colorMode(RGB,255,255,255);
     strokeWeight(4);
     stroke(0,190,255,99);
     line(50+sin(mouseX)*50,60+sin(mouseX)*50,55+sin(mouseX)*50,70+sin(mouseX)*50);
     //line(50+sin(mouseX)*50,60+sin(mouseY)*100,55+sin(mouseX)*50,70+sin(mouseY)*100);
     //line(80+sin(mouseX)*50,90+sin(mouseY)*100,85+sin(mouseX)*50,100+sin(mouseY)*100);
     line(80+sin(mouseX)*50,90+sin(mouseY)*100,85+sin(mouseX)*50,100+sin(mouseY)*100);
     line(200+sin(mouseX)*50,90+sin(mouseY)*100,205+sin(mouseX)*50,100+sin(mouseY)*100);
     line(190+sin(mouseX)*50,200+sin(mouseY)*100,195+sin(mouseX)*50,210+sin(mouseY)*100);
     line(60+sin(mouseX)*50,300+sin(mouseY)*100,65+sin(mouseX)*50,310+sin(mouseY)*100);
     line(250+sin(mouseX)*50,250+sin(mouseY)*100,255+sin(mouseX)*50,260+sin(mouseY)*100);
     line(300+sin(mouseX)*50,70+sin(mouseY)*100,305+sin(mouseX)*50,80+sin(mouseY)*100);
     line(120+sin(mouseX)*50,200+sin(mouseY)*100,125+sin(mouseX)*50,210+sin(mouseY)*100);
     line(150+sin(mouseX)*50,310+sin(mouseY)*100,155+sin(mouseX)*50,320+sin(mouseY)*100);
     line(300+sin(mouseX)*50,200+sin(mouseY)*100,305+sin(mouseX)*50,210+sin(mouseY)*100);
     line(320+sin(mouseX)*50,330+sin(mouseY)*100,325+sin(mouseX)*50,340+sin(mouseY)*100);
     line(20+sin(mouseX)*50,190+sin(mouseY)*100,25+sin(mouseX)*50,200+sin(mouseY)*100);


 
}
//When the mouse is pressed, the lightning
void mousePressed(){
  frameRate(5);
  //THe yellow lightning
  colorMode(HSB,360,100,100);
  stroke(52,93,100);
  strokeWeight(2);
  fill(52,93,100);
  quad(50,20,90,20,80,80,40,80);
  quad(40,80,80,80,90,140,50,140);
  quad(50,140,90,140,80,200,40,200);
  quad(40,200,80,200,90,260,50,260);
  quad(90,260,50,260,40,320,80,320);
  quad(40,320,80,320,90,360,50,360);
  quad(50,360,90,360,80,400,40,400);
  
  fill(0,0,100);
  stroke(0,0,100);
  quad(60,20,80,20,70,80,50,80);
  quad(50,80,70,80,80,140,60,140);
  quad(60,140,80,140,70,200,50,200);
  quad(50,200,70,200,80,260,60,260);
  quad(80,260,60,260,50,320,70,320);
  quad(50,320,70,320,80,360,60,360);
  quad(60,360,80,360,70,400,50,400);
  
  //The second lightning
  colorMode(HSB,360,100,100);
  stroke(52,93,100);
  strokeWeight(2);
  fill(52,93,100);
  quad(340,20,380,20,390,80,350,80);
  quad(350,80,390,80,380,140,340,140);
  quad(340,140,380,140,390,200,350,200);
  quad(350,200,390,200,380,260,340,260);
  quad(340,260,380,260,390,320,350,320);
  quad(350,320,390,320,380,360,340,360);
  quad(340,360,380,360,390,400,350,400);
  
  colorMode(RGB,255,255,255);
  stroke(255);
  fill(255);
  quad(350,20,370,20,380,80,360,80);
  quad(360,80,380,80,370,140,350,140);
  quad(350,140,370,140,380,200,360,200);
  quad(360,200,380,200,370,260,350,260);
  quad(350,260,370,260,380,320,360,320);
  quad(360,320,380,320,370,360,350,360);
  quad(350,360,370,360,380,400,360,400);
  
          //Background Clouds
        fill(60);//60
        stroke(30);//30
        strokeWeight(3);
        arc(mouseX/10,23,100,50,0+QUARTER_PI,PI-QUARTER_PI); 
        arc(mouseX/10+72,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        arc(mouseX/10+144,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        arc(mouseX/10+216,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        arc(mouseX/10+288,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        arc(mouseX/10+360,23,100,50,0+QUARTER_PI,PI-QUARTER_PI);
        rectMode(CENTER);
        noStroke();
        rect(200,0,420,80);
  
}