xxxxxxxxxx
322
eyeX = 0;
eyeY = 0;
eyeDiam = 0;
let rockX, rockY, rockW, rockH = 0;
function setup() {
createCanvas(400, 600);
frameRate(5);
}
function draw() {
background(125, 199, 247);
//left hand
push();
fill(0, 78, 0);
rect(70, 218, 35, 30, 10);
line(78, 218, 78, 230);
line(86, 218, 86, 230);
line(95, 218, 95, 230);
line(88, 230, 105, 230);
line(88, 230, 88, 237);
line(88, 237, 100, 237);
pop();
//right hand
fill(0, 78, 0);
beginShape();
vertex(240, 300);
vertex(280, 300);
vertex(280, 325);
vertex(250, 325);
vertex(250, 310);
vertex(240, 310);
endShape(CLOSE);
push();
stroke(1);
line(272, 313, 272, 325);
line(265, 313, 265, 325);
line(258, 313, 258, 325);
pop();
//right arm
fill(0);
beginShape();
vertex(210, 205);
vertex(275, 205);
vertex(275, 300);
vertex(250, 300);
vertex(250, 235);
vertex(210, 235);
endShape(CLOSE);
//left arm
fill(0);
beginShape();
vertex(145, 205);
vertex(110, 205);
vertex(110, 275);
vertex(100, 275);
vertex(100, 245);
vertex(75, 245);
vertex(75, 300);
vertex(140, 300);
vertex(140, 235);
vertex(150, 235);
endShape(CLOSE);
//body
fill(0);
rect(145, 205, 85, 190);
//chest
fill(0, 78, 0);
triangle(175, 198, 205, 198, 190, 300);
//choker
push();
strokeWeight(2);
noFill();
arc(192, 205, 30, 20, TWO_PI, PI, CHORD);
pop();
//hat
fill(0, 230, 0);
arc(175, 115, 90, 90, PI, TWO_PI, CHORD);
//head white
push();
stroke(1);
fill(255);
beginShape();
curveVertex(145, 115);
curveVertex(145, 115);
curveVertex(160, 100);
curveVertex(175, 98);
curveVertex(185, 102);
curveVertex(195, 115);
curveVertex(195, 115);
curveVertex(215, 115);
curveVertex(215, 125);
curveVertex(215, 160);
curveVertex(205, 200);
curveVertex(200, 198);
curveVertex(175, 200);
curveVertex(175, 195);
curveVertex(172, 190);
curveVertex(170, 190);
curveVertex(118, 185);
curveVertex(110, 180);
curveVertex(118, 170);
curveVertex(140, 165);
curveVertex(140, 155);
curveVertex(95, 150);
curveVertex(92, 140);
curveVertex(97, 134);
curveVertex(105, 134);
curveVertex(140,130);
endShape(CLOSE);
pop();
//head green
push();
noStroke();
fill(0, 78, 0);
beginShape();
curveVertex(145, 130);
curveVertex(145, 130);
curveVertex(155, 125);
curveVertex(165, 135);
curveVertex(185, 125);
curveVertex(193, 130);
curveVertex(200, 130);
curveVertex(213, 130);
curveVertex(213, 160);
curveVertex(203, 200);
curveVertex(198, 198);
curveVertex(177, 200);
curveVertex(177, 195);
curveVertex(172, 190);
curveVertex(172, 190);
curveVertex(120, 185);
curveVertex(112, 180);
curveVertex(120, 170);
curveVertex(142, 165);
curveVertex(142, 155);
curveVertex(98, 150);
curveVertex(93, 140);
curveVertex(98, 135);
curveVertex(102, 135);
curveVertex(140,132);
endShape(CLOSE);
pop();
//eyes
drawEye(135, 110, 20);
drawEye(170, 120, 20);
//pupils
drawPupils(135, 110, 5);
drawPupils(170, 120, 5);
//neck
push();
fill(0, 78, 0);
noStroke();
arc(190, 198, 30, 30, TWO_PI, PI, CHORD);
pop();
//purple collar
push();
fill(128, 0, 128);
beginShape();
curveVertex(203, 200);
curveVertex(203, 200);
curveVertex(215, 210);
curveVertex(230, 210);
curveVertex(238, 209);
curveVertex(239, 209);
curveVertex(220, 230);
curveVertex(235, 250);
curveVertex(235, 250);
curveVertex(220, 265);
curveVertex(190, 300);
curveVertex(190, 295);
endShape(CLOSE);
pop();
push();
fill(128, 0, 128);
beginShape();
curveVertex(175, 200);
curveVertex(175, 200);
curveVertex(163, 210);
curveVertex(148, 210);
curveVertex(140, 209);
curveVertex(139, 209);
curveVertex(158, 230);
curveVertex(143, 250);
curveVertex(143, 250);
curveVertex(158, 265);
curveVertex(190, 300);
curveVertex(190, 295);
endShape(CLOSE);
pop();
//zipper line
push();
strokeWeight(2);
stroke(90);
line(190, 295, 190, 395);
pop();
//legs
drawRocket(162, 425, 20, 30);
drawRocket(192, 425, 20, 30);
fill(255, 65, 146);
arc(188, 395, 85, 75, TWO_PI, PI);
push();
fill(253, 249, 238);
beginShape();
curveVertex(158, 395);
curveVertex(158, 395);
curveVertex(218, 395);
curveVertex(218, 395);
curveVertex(219, 400);
curveVertex(220, 415);
curveVertex(215, 425);
curveVertex(188, 433);
curveVertex(161, 425);
curveVertex(156, 415);
endShape(CLOSE);
pop();
//fire Left
fill(255, 0, 0);
beginShape();
vertex(164, 460);
vertex(180, 460);
vertex(184, random(480, 482));
vertex(179, 475);
vertex(190, random(500, 502));
vertex(181, 495);
vertex(172, random(520, 522));
vertex(163, 495);
vertex(154, random(500, 502));
vertex(165, 475);
vertex(160, random(480, 482));
vertex(164, 460);
endShape();
fill(255, 165, 0);
beginShape();
vertex(167, 460);
vertex(177, 460);
vertex(180, random(470, 472));
vertex(175, 465);
vertex(182, random(490, 492));
vertex(176, 485);
vertex(172, random(500, 502));
vertex(168, 485);
vertex(162, random(490, 492));
vertex(169, 465);
vertex(164, random(470, 472));
vertex(167, 460);
endShape();
//fire right
fill(255, 0, 0);
beginShape();
vertex(194, 460);
vertex(210, 460);
vertex(214, random(480, 482));
vertex(209, 475);
vertex(220, random(500, 502));
vertex(211, 495);
vertex(202, random(520, 522));
vertex(193, 495);
vertex(184, random(500, 502));
vertex(195, 475);
vertex(190, random(480, 482));
vertex(194, 460);
endShape();
fill(255, 165, 0);
beginShape();
vertex(197, 460);
vertex(207, 460);
vertex(210, random(470, 472));
vertex(205, 465);
vertex(212, random(490, 492));
vertex(206, 485);
vertex(202, random(500, 502));
vertex(198, 485);
vertex(192, random(490, 492));
vertex(199, 465);
vertex(194, random(470, 472));
vertex(197, 460);
endShape();
}
function drawEye(eyeX, eyeY, eyeDiam){
fill(255,255,0);
stroke(1);
circle(eyeX, eyeY, eyeDiam);
}
function drawPupils(pupilX, pupilY, pupilDiam){
fill(0);
circle(pupilX, pupilY, pupilDiam);
}
function drawRocket(rockX, rockY, rockW, rockH){
fill(177);
rect(rockX, rockY, rockW, rockH);
}