Example #1
0
	function turnOffTime() {
		var date = new Date();

		// Midnight
		date.setHours(0);
		date.setMinutes(0);
		date.setSeconds(0);
		date.setMilliseconds(0);

		// Next midnight
		date.setDate(date.getDate() + 1);

		// Switch off between 1 and 2 AM
		return new Date(date.valueOf() + (1 + random()) * (1000 * 60 * 60));
	}
Example #2
0
var GifAnimation = module.exports = function(matrix) {

	var _index = random(3, 1013);
	var _animations = [runRain, runPerlin, runRain, runGif, runRain, runGif, runRain, runGif];

	function runPerlin(priority) {
		matrix.emit('perlin', {mode:3, priority:priority, duration:60});
	};

	function runRain(priority) {
		matrix.emit('rain', {priority:priority, duration:180});
	};

	function runGif(priority) {
		matrix.emit('animation', {priority:priority, duration:120, name:random(['tree','pacman','pong','boat','fireplace','reduction', 'bubbles', 'crystal', 'dancer', 'haze', 'orbit', 'robot-factory'])});
	}

	function runAnimation(animation, priority) {
		animation(priority);
	}

	this.run = function(priority) {

		return new Promise(function(resolve, reject) {

			// Move on to next
			_index = (_index + 1)  % _animations.length;

			// Run it
			runAnimation(_animations[_index]);

			// Finish
			resolve();
		});

	}
};
Example #3
0
	function runGif(priority) {
		matrix.emit('animation', {priority:priority, duration:120, name:random(['tree','pacman','pong','boat','fireplace','reduction', 'bubbles', 'crystal', 'dancer', 'haze', 'orbit', 'robot-factory'])});
	}