summaryrefslogtreecommitdiff
path: root/js/snow.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/snow.js')
-rw-r--r--js/snow.js115
1 files changed, 0 insertions, 115 deletions
diff --git a/js/snow.js b/js/snow.js
deleted file mode 100644
index 174b321..0000000
--- a/js/snow.js
+++ /dev/null
@@ -1,115 +0,0 @@
-var canvas = document.querySelector('.snow'),
- ctx = canvas.getContext('2d'),
- windowW = window.innerWidth,
- windowH = window.innerHeight,
- numFlakes = 125,
- flakes = [];
-
-if (screen.width < 768) {
- numFlakes = 50;
-} // If Mobile
-
-function Flake(x, y) {
- var maxWeight = 5,
- maxSpeed = 1.2;
-
- if (screen.width < 768) {
- maxSpeed = 1;
- } // If Mobile
-
- this.x = x;
- this.y = y;
- this.r = randomBetween(0, 1);
- this.a = randomBetween(0, Math.PI);
- this.aStep = 0.01;
-
- this.weight = randomBetween(2, maxWeight);
- this.alpha = (this.weight / maxWeight);
- this.speed = (this.weight / maxWeight) * maxSpeed;
-
- this.update = function () {
- this.x += Math.cos(this.a) * this.r;
- this.a += this.aStep;
-
- this.y += this.speed;
- }
-}
-
-function init() {
- var i = numFlakes,
- flake,
- x,
- y;
-
- while (i--) {
- x = randomBetween(0, windowW, true);
- y = randomBetween(0, windowH, true);
-
- flake = new Flake(x, y);
- flakes.push(flake);
- }
-
- scaleCanvas();
- loop();
-}
-
-function scaleCanvas() {
- canvas.width = windowW;
- canvas.height = windowH;
-}
-
-function loop() {
- var i = flakes.length,
- z,
- dist,
- flakeA,
- flakeB;
-
- // clear canvas
- ctx.save();
- ctx.setTransform(1, 0, 0, 1, 0, 0);
- ctx.clearRect(0, 0, windowW, windowH);
- ctx.restore();
-
- // loop of hell
- while (i--) {
-
- flakeA = flakes[i];
- flakeA.update();
-
-
- /*for (z = 0; z < flakes.length; z++) { flakeB=flakes[z]; if (flakeA !==flakeB && distanceBetween(flakeA,
- flakeB) < 150) { ctx.beginPath(); ctx.moveTo(flakeA.x, flakeA.y); ctx.lineTo(flakeB.x, flakeB.y);
- ctx.strokeStyle='#444444' ; ctx.stroke(); ctx.closePath(); } }*/
-
- ctx.beginPath();
- ctx.arc(flakeA.x, flakeA.y, flakeA.weight, 0, 2 * Math.PI, false);
- ctx.fillStyle = 'rgba(255, 255, 255, ' + flakeA.alpha + ')';
- ctx.fill();
-
- if (flakeA.y >= windowH) {
- flakeA.y = -flakeA.weight;
- }
- }
-
- requestAnimationFrame(loop);
-}
-
-function randomBetween(min, max, round) {
- var num = Math.random() * (max - min + 1) + min;
-
- if (round) {
- return Math.floor(num);
- } else {
- return num;
- }
-}
-
-function distanceBetween(vector1, vector2) {
- var dx = vector2.x - vector1.x,
- dy = vector2.y - vector1.y;
-
- return Math.sqrt(dx * dx + dy * dy);
-}
-
-init();