UNPKG

cdf

Version:

A library for creating oldschool demo-like animations with JavaScript

28 lines (23 loc) 762 B
var utils = require('utils'); var __animate_repeats = 1; // TODO: Rewrite var animate = function (callback, repeatsPerFrame, everyRealFrameCallback) { callback = callback.__animate || callback; repeatsPerFrame = repeatsPerFrame || 1; var frameNum = 0; var nextFrame = function () { __animate_repeats = repeatsPerFrame; var repeatNum = repeatsPerFrame; frameNum++; while(repeatNum--) { callback.call(window, frameNum * repeatsPerFrame + repeatsPerFrame - repeatNum, frameNum); } if(typeof everyRealFrameCallback === 'function') { everyRealFrameCallback.call(window, frameNum * repeatsPerFrame, frameNum); } utils.frame(nextFrame); __animate_repeats = 1; }; nextFrame(); }; module.exports = animate;