This is an old revision of the document!
Olivia's crazy dog
let x, y;
function setup() {
createCanvas(1800, 780);
x = width;
y = height / 2;
}
class Dog {
constructor (fColor1, fColor2, nColor, eColor1, eColor2, Ecolor1, Ecolor2, Bcolor, bColor, tColor, rColor, lColor1, lColor2, lColor3,fcolor,fcolor2, x, y)
{
this.faceColor1 = fColor1;
this.faceColor2 = fColor2;
this.noseColor = nColor;
this.eyeColor1 = eColor1;
this.eyeColor2 = eColor2;
this.earColor1 = Ecolor1;
this.earColor2 = Ecolor2;
this.bodyColor = Bcolor;
this.bellyColor = bColor;
this.tailColor = tColor;
this.rotateColor = rColor;
this.legColor1 = lColor1;
this.legColor2 = lColor2;
this.legColor3 = lColor3;
this.flowerColor = fcolor;
this.flowerColor2 = fcolor2;
this.x = x;
this.y = y;
}
draw () {
//ear
fill(color(this.earColor1));
arc(this.x+70, this.y+565, 20, 20, 30, PI + QUARTER_PI, PIE);
fill(color(this.earColor2));
square(this.x+100, this.y+553, 20, 20, 15, 10, 5);
//legs
fill(color(this.rotateColor));
rect(this.x+90, this.y+640, 15, 55, 5);
fill(color(this.legColor1));
rect(this.x+98, this.y+640, 15, 55, 5);
fill(color(this.legColor2));
rect(this.x+160, this.y+640, 15, 55, 5);
fill(color(this.legColor3));
rect(this.x+170, this.y+640, 15, 55, 5);
//body
fill(color(this.bodyColor));
rect(this.x+90 , this.y+610, 100, 55, 20);
fill(color(this.bellyColor));
rect(this.x+115 , this.y+650, 60, 15, 20);
fill(color(this.tailColor));
ellipse(this.x+185 , this.y+590, 10, 55);
//face
fill(color(this.faceColor1));
circle(this.x+94 ,this.y+590, 50);
fill(color(this.faceColor2));
circle(this.x+94, this.y+600, 20);
//nose
fill(color(this.noseColor));
circle(this.x+94, this.y+595, 10);
//eyes
fill(color(this.eyeColor1));
circle(this.x+105 , this.y+585, 10);
fill(color(this.eyeColor1));
circle(this.x+80, this.y+585, 10);
fill(color(this.eyeColor2));
circle(this.x+105, this.y+583, 5);
fill(color(this.eyeColor2));
circle(this.x+80, this.y+583, 5);
//flower
fill(color(this.flowerColor));
circle(this.x+20, this.y+670, frameCount %10);
fill(color(this.flowerColor));
circle(this.x+30, this.y+675, frameCount %10);
fill(color(this.flowerColor));
circle(this.x+10, this.y+675, frameCount %10);
fill(color(this.flowerColor));
circle(this.x+25, this.y+685, frameCount %10);
fill(color(this.flowerColor));
circle(this.x+14, this.y+685, frameCount %10);
fill(color(this.flowerColor));
fill(color(this.flowerColor2));
circle(this.x+20, this.y+678, frameCount %10);
}
}
function dogArray (n) {
let outputArray = [];
for (let i = 0; i < n ; i++) {
outputArray.push(new Dog ("red", "lightblue", "green", Math.random()*255, "pink", Math.random()*255, "purple", "yellow", "orange", Math.random()*255, "lightpink", "blue", "lightgreen", Math.random()*255, "pink", "yellow", 10+(i*250), 20))
}
return outputArray
}
let myDogs = dogArray(15);
//console.log(myDogs);
class Background {
constructor(gColor, Scolor, cColor, x, y)
{
this.groundColor = gColor;
this.sunColor = Scolor;
this.cloudColor = cColor;
this.x = x;
this.y = y;
}
draw (){
//here
noStroke();
fill(color(this.groundColor));
rect(x+this.x+0, this.y+700, 400, 80);
//sun
fill(color(this.sunColor));
circle(x+this.x+70, this.y+70, 120);
fill(color(this.cloudColor));
//cloud
circle(x+this.x+20, this.y+240, 70);
fill(color(this.cloudColor));
circle(x+this.x+40, this.y+250, 70);
fill(color(this.cloudColor));
circle(x+this.x+5, this.y+260, 70);
fill(color(this.cloudColor));
circle(x+this.x+30, this.y+270, 70);
fill(color(this.cloudColor));
circle(x+this.x+60, this.y+250, 70);
strokeWeight(2);
x = x - 1;
if (x < 0) {
x = width;
}
}}
function BackgroundArray (n) {
let outputArray = [];
for (let i = 0; i < n ; i++) {
outputArray.push(new Background ("green", "yellow", "white", 0+(i*200), 10))
}
return outputArray
}
let myBackground = BackgroundArray(15);
//console.log(myBackground);
function draw () {
background("lightblue");
//let Background1 = new Background ("green", "yellow", "white", 20, 10);
//Background1.draw();
for(let i = 0; i < myBackground.length ; i++){
myBackground[i].draw()
//let Dog1 = new Dog (10+(i*100), 20+(i*100), "red", "lightblue", "green", Math.random()*255, "pink", Math.random()*255, "purple", "yellow", "orange", Math.random()*255, "lightpink", "blue", "lightgreen", Math.random()*255, 10, 20);
//Dog1.draw();
for(let i = 0; i < myDogs.length ; i++){
myDogs[i].draw()
}
}}