Skip to content

Commit

Permalink
Background animation: offset for large screens / cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
RobinLinus committed Dec 20, 2020
1 parent b40c5f2 commit c6fb889
Showing 1 changed file with 11 additions and 16 deletions.
27 changes: 11 additions & 16 deletions client/scripts/ui.js
Original file line number Diff line number Diff line change
Expand Up @@ -546,29 +546,24 @@ window.addEventListener('beforeinstallprompt', e => {

// Background Animation
Events.on('load', () => {
var requestAnimFrame = (function() {
return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame ||
function(callback) {
window.setTimeout(callback, 1000 / 60);
};
})();
var c = document.createElement('canvas');
let c = document.createElement('canvas');
document.body.appendChild(c);
var style = c.style;
let style = c.style;
style.width = '100%';
style.position = 'absolute';
style.zIndex = -1;
style.top = 0;
style.left = 0;
var ctx = c.getContext('2d');
var x0, y0, w, h, dw;
let ctx = c.getContext('2d');
let x0, y0, w, h, dw;

function init() {
w = window.innerWidth;
h = window.innerHeight;
c.width = w;
c.height = h;
var offset = h > 380 ? 100 : 65;
let offset = h > 380 ? 100 : 65;
offset = h > 800 ? 116 : h;
x0 = w / 2;
y0 = h - offset;
dw = Math.max(w, h, 1000) / 13;
Expand All @@ -578,28 +573,28 @@ Events.on('load', () => {

function drawCicrle(radius) {
ctx.beginPath();
var color = Math.round(255 * (1 - radius / Math.max(w, h)));
let color = Math.round(255 * (1 - radius / Math.max(w, h)));
ctx.strokeStyle = 'rgba(' + color + ',' + color + ',' + color + ',0.1)';
ctx.arc(x0, y0, radius, 0, 2 * Math.PI);
ctx.stroke();
ctx.lineWidth = 2;
}

var step = 0;
let step = 0;

function drawCircles() {
ctx.clearRect(0, 0, w, h);
for (var i = 0; i < 8; i++) {
for (let i = 0; i < 8; i++) {
drawCicrle(dw * i + step % dw);
}
step += 1;
}

var loading = true;
let loading = true;

function animate() {
if (loading || step % dw < dw - 5) {
requestAnimFrame(function() {
requestAnimationFrame(function() {
drawCircles();
animate();
});
Expand Down

0 comments on commit c6fb889

Please sign in to comment.