var snowing = true; noStroke(); var xPos = 200; var snow = []; var snowflake = function() { this.x = mouseX + random(-70, 70); this.y = mouseY; this.ySpeed = random(1, 3); this.xSpeed = random(-0.5, 0.5); this.size = random(5, 15); }; var cloudsRCool = function() { ellipse(xPos, 30, 100, 80); ellipse(xPos, 100, 100, 100); ellipse(xPos - 100, 30, 100, 100); ellipse(xPos - 131, 100, 69, 69); ellipse(xPos - 80, 69, 60, 60); xPos += 4; if(xPos > 500) { xPos = -100; } }; var drawBackground = function() { fill(); background(129, 154, 253); ellipse(100, 400, 400, 150); ellipse(300, 400, 400, 100); }; var drawCloud = function() { fill(); ellipse(mouseX, mouseY, 120, 120); ellipse(mouseX - 20, mouseY, 120, 100); ellipse(mouseX + 20, mouseY, 120, 100); ellipse(mouseX + 30, mouseY + 20, 120, 100); ellipse(mouseX - 30, mouseY + 20, 150, 50); }; var sun = function() { fill(255, 255, 0); ellipse(20, 30, 200, 200); }; var drawSnow = function() { if(snow.length < 200) { snow.push(new snowflake()); } for(var i = 0; i < snow.length; i++) { ellipse(snow[i].x, snow[i].y, snow[i].size, snow[i].size); snow[i].x += snow[i].xSpeed; snow[i].y += snow[i].ySpeed; if(snow[i].y > 400) { snow[i] = new snowflake(); } } }; var draw = function() { if(snowing) { drawBackground(); sun(); drawCloud(); drawSnow(); cloudsRCool(); } }; var mouseClicked = function() { snowing = !snowing; };