/*! jqueryanimatesprite - v1.3.5 - 2014-10-17
* http://blaiprat.github.io/jquery.animateSprite/
* Copyright (c) 2014 blai Pratdesaba; Licensed MIT */
(function(n,t,i){"use strict";var o=function(t){return this.each(function(){var u=n(this),r=u.data("animateSprite"),f=function(n){var i=u.css("background-image").replace(/url\((['"])?(.*?)\1\)/gi,"$2"),t=new Image;t.onload=function(){var i=t.width,r=t.height;n(i,r)};t.src=i};r||(u.data("animateSprite",{settings:n.extend({width:u.width(),height:u.height(),totalFrames:!1,columns:!1,fps:12,complete:function(){},loop:!1,autoplay:!0},t),currentFrame:0,controlAnimation:function(){var n=function(n,t){return n++,n>=t?this.settings.loop===!0?(n=0,r.controlTimer()):this.settings.complete():r.controlTimer(),n},t,f;if(this.settings.animations===i)u.animateSprite("frame",this.currentFrame),this.currentFrame=n.call(this,this.currentFrame,this.settings.totalFrames);else{if(this.currentAnimation===i)for(t in this.settings.animations){this.currentAnimation=this.settings.animations[t];break}f=this.currentAnimation[this.currentFrame];u.animateSprite("frame",f);this.currentFrame=n.call(this,this.currentFrame,this.currentAnimation.length)}},controlTimer:function(){var n=1e3/r.settings.fps;r.settings.duration!==i&&(n=r.settings.duration/r.settings.totalFrames);r.interval=setTimeout(function(){r.controlAnimation()},n)}}),r=u.data("animateSprite"),r.settings.columns?r.settings.autoplay&&r.controlTimer():f(function(n,t){if(r.settings.columns=Math.round(n/r.settings.width),!r.settings.totalFrames){var i=Math.round(t/r.settings.height);r.settings.totalFrames=r.settings.columns*i}r.settings.autoplay&&r.controlTimer()}))})},s=function(t){return this.each(function(){if(n(this).data("animateSprite")!==i){var u=n(this),r=u.data("animateSprite"),f=Math.floor(t/r.settings.columns),e=t%r.settings.columns;u.css("background-position",-r.settings.width*e+"px "+-r.settings.height*f+"px")}})},u=function(){return this.each(function(){var t=n(this),i=t.data("animateSprite");clearTimeout(i.interval)})},f=function(){return this.each(function(){var t=n(this),i=t.data("animateSprite");t.animateSprite("stopAnimation");i.controlTimer()})},e=function(){return this.each(function(){var t=n(this),i=t.data("animateSprite");t.animateSprite("stopAnimation");i.currentFrame=0;i.controlTimer()})},h=function(t){return this.each(function(){var r=n(this),i=r.data("animateSprite");"string"==typeof t?(r.animateSprite("stopAnimation"),i.settings.animations[t]!==i.currentAnimation&&(i.currentFrame=0,i.currentAnimation=i.settings.animations[t]),i.controlTimer()):(r.animateSprite("stopAnimation"),i.controlTimer())})},c=function(t){return this.each(function(){var i=n(this),r=i.data("animateSprite");r.settings.fps=t})},r={init:o,frame:s,stop:u,resume:f,restart:e,play:h,stopAnimation:u,resumeAnimation:f,restartAnimation:e,fps:c};n.fn.animateSprite=function(t){return r[t]?r[t].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof t&&t?(n.error("Method "+t+" does not exist on jQuery.animateSprite"),i):r.init.apply(this,arguments)}})(jQuery,window)