xxxxxxxxxx
152
let fireCol;
let firesize;
let scaleX, scaleY;
function setup() {
createCanvas(400, 400);
angleMode(DEGREES);
fireCol = 0;
firesize = 0;
}
function draw() {
background(153,204,153);
scaleX = mouseX/200;
scaleY = mouseY/200;
if(mouseX > width) {
scaleX = width/200;
}
if(mouseY > height) {
scaleY = height/200;
}
scale(scaleX, scaleY);
noStroke();
//head
fill(mouseX,mouseY,200);
ellipse(110, 180, 50, 40);
//mouth
fill(153,204,153);
triangle(115, 185, 135, 180, 135, 190);
//tail
fill(mouseX,mouseY,200);
ellipse(45, 230, 60, 50);
//tail curve
fill(153,204,153);
ellipse(30, 210, 60, 50);
//Top Spike
fill(mouseX,mouseY,200);
triangle(60, 180, 70, 200, 100, 200);
//Mid Spike
fill(mouseX,mouseY,200);
triangle(50, 190, 60, 210, 120, 220);
//Bottom Spike
fill(mouseX,mouseY,200);
triangle(40, 205, 60, 230, 100, 215);
//arms
fill(mouseX,mouseY,200);
ellipse(105, 220, 35, 30);
//arm curve
fill(153,204,153);
ellipse(110, 225, 35, 30);
//hand
fill(mouseX,mouseY,200);
ellipse(119, 211, 3, 3);
//body
push();
fill(mouseX,mouseY,200);
translate(width/2, height/2);
rotate(35);
ellipse(-90, 80, 50, 70);
pop();
//legs
fill(mouseX,mouseY,200);
ellipse(80, 250, 15, 20);
//feet
fill(mouseX,mouseY,200);
ellipse(86, 260, 20, 5);
//eye
push();
strokeWeight(1);
stroke(51);
fill(255);
ellipse(110, 175, 10, 10);
pop();
//eyeball
push();
strokeWeight(1);
stroke(51);
fill(0);
ellipse(110, 175, 3, 3);
pop();
//eyebrow
push();
strokeWeight(1);
stroke(51);
fill(0);
translate(width / 2, height / 2);
rotate(215)
rect(85, -28, 10, 3, 20);
pop();
//fire1
push();
translate(width/2, height/2);
fill(255, 0+fireCol, 0);
triangle(-80, -15, -50+firesize, -20-firesize, -50+firesize, -10+firesize);
//fire2
fill(255, 0+fireCol, 0);
triangle(-55, -15, -30+firesize, -30-firesize, -30+firesize, 0+firesize);
//fire3
fill(255, 0+fireCol, 0);
triangle(-45, -15, 0+firesize, -40-firesize, 0+firesize, 10+firesize);
//fire4
fill(255, 0+fireCol, 0);
triangle(-15, -15, 30+firesize, -50-firesize, 30+firesize, 20+firesize);
//smallfire1
fill(255, 100+fireCol, 0);
triangle(-55, -15, -35+firesize, -20-firesize, -35+firesize, -10+firesize);
//smallfire2
fill(255, 100+fireCol, 0);
triangle(-40, -15, -5+firesize, -30-firesize, -5+firesize, 0+firesize);
//smallfire3
fill(255, 100+fireCol, 0);
triangle(-25, -15, 25+firesize, -35-firesize, 25+firesize, 5+firesize);
pop();
}
function keyPressed(){
firesize = random(0,50);
}
function mousePressed(){
fireCol = random(0,100);
}