xxxxxxxxxx
98
// Vivianna Mo
// CODE! Fall 2021 - Assignment 4
// Kirby 3.0
function setup() {
createCanvas(500, 500);
frameRate(60);
}
function draw() {
background(119, 159, 191);
noStroke();
translate(mouseX / 2, 150);
scale(0.7);
kirbyFeet(150, 390, 120, 90);
kirbyArms(100, 260, 90, 100);
kirbyBody(250, 250, 300);
kirbyEyes(210, 200, 30, 70);
kirbyMouth();
kirbyBlush(190, 255, 50, 25);
if(mouseIsPressed) {
angryKirby();
}
}
function kirbyFeet(x, y, sizeX, sizeY) {
fill(245, 59, 111);
ellipse(150, 390, 120, 90);
ellipse(345, 390, 120, 90);
ellipse(x, y, sizeX, sizeY);
ellipse(x + 195, y, sizeX, sizeY);
}
function kirbyArms(x, y, sizeX, sizeY) {
fill(245, 176, 189);
ellipse(x, y, sizeX, sizeY);
ellipse(x + 300, y, sizeX, sizeY);
}
function kirbyBody(x, y, diameter) {
fill(255, 184, 197);
circle(x, y, diameter);
}
function kirbyEyes(x, y, sizeX, sizeY) {
fill(3, 161, 252);
stroke(1);
strokeWeight(5);
ellipse(x, y, sizeX, sizeY);
ellipse(x + 80, y, sizeX, sizeY);
noStroke();
fill(0);
ellipse(x, y - 10, sizeX, sizeY - 20);
ellipse(x + 80, y - 10, sizeX, sizeY - 20);
fill(255);
ellipse(x, y - 15, sizeX - 7, sizeY - 35);
ellipse(x + 80, y - 15, sizeX - 7, sizeY - 35);
}
function kirbyMouth() {
fill(190, 0, 0);
arc(250, 230, 40, 65, 0, PI, CHORD);
fill(255, 0, 0);
ellipse(250, 253, 25, 20);
}
function kirbyBlush(x, y, sizeX, sizeY) {
fill(250, 132, 165);
ellipse(x, y, sizeX, sizeY);
ellipse(x + 120, y, sizeX, sizeY);
}
function angryKirby() {
background(92, 16, 10);
kirbyFeet(150, 390, 120, 90);
kirbyArms(100, 260, 90, 100);
kirbyBody(250, 250, 300);
kirbyEyes(210, 200, 30, 70);
angryFace();
}
function angryFace() {
fill(0);
stroke(1);
strokeWeight(3);
line(235, 240, 265, 240);
strokeWeight(10);
// rotate(PI / 2);
line(185, 145, 240, 190)
line(265, 190, 310, 145);
}