!function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return t[r].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var n={};return e.m=t,e.c=n,e.p="",e(0)}([function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}var i=n(1),o=r(i),u=n(51),a=r(u),s=n(52),c=r(s),f=n(54),l=r(f),d=n(56),h=r(d),y=n(53),_={Game:o["default"],Entity:a["default"],Rect:l["default"],Vector2D:c["default"],Color:h["default"]},p={Input:{Keys:y.KeyConsts}};window.MomentumEngine={Classes:_,Consts:p}},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),o=r(i),u=n(14),a=r(u),s=n(15),c=r(s),f=n(19),l=r(f),d=n(44),h=r(d),y=n(51),_=r(y),p=n(53),v=r(p),m=function(t){function e(t){(0,a["default"])(this,e);var n=(0,l["default"])(this,(0,o["default"])(e).call(this));if(t=t||{},t.inputs=t.inputs||{},!t.canvas)throw new Error("MomentumEngine.Game must be constructed with a canvas");if(n.canvas=t.canvas,!t.width)throw new Error("MomentumEngine.Game must be constructed with canvas width");if(n.width=t.width,!t.height)throw new Error("MomentumEngine.Game must be constructed with canvas height");if(n.height=t.height,n.desiredFps=t.desiredFps||60,t.fixRatio){var r=window.devicePixelRatio,i=0;"undefined"!=typeof ejecta?i=1:(n.context=n.canvas.getContext("2d"),i=n.context.webkitBackingStorePixelRatio||n.context.mozBackingStorePixelRatio||n.context.msBackingStorePixelRatio||n.context.oBackingStorePixelRatio||n.context.backingStorePixelRatio||1),n.scale=r/i,n.canvas.width=n.width*n.scale,n.canvas.height=n.height*n.scale,n.canvas.style.width=n.width+"px",n.canvas.style.height=n.height+"px","undefined"!=typeof ejecta&&(n.context=n.canvas.getContext("2d")),n.context.scale(r,r)}else n.canvas.width=n.width,n.canvas.height=n.height,n.context=n.canvas.getContext("2d");return"undefined"!=typeof n.context.imageSmoothingEnabled&&(n.context.imageSmoothingEnabled=t.imageSmoothing||!1),n.lastFrameDelta=0,n.frameCounter=0,n.inputs={},t.inputs.keyboard&&(n.inputs.keyboard=new v["default"](n)),n._game=n,n._lastFrameTimestamp=0,n._wantPause=!0,n}return(0,h["default"])(e,t),(0,c["default"])(e,[{key:"start",value:function(){var t=this;if(!t._wantPause)return console.log("MomentumEngine.Game.start called, game instance is already started"),!1;t._wantPause=!1,t._wantPause=!1;var e=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(e){window.setTimeout(e,1e3/t.desiredFps)}}();t._lastFrameTimestamp=+new Date;var n=function r(){t.frameCounter++;var n=+new Date;t.lastFrameDelta=n-t._lastFrameTimestamp,t._lastFrameTimestamp=n,t.lastFrameDelta=Math.min(t.lastFrameDelta,1e3/t.desiredFps),t._wantPause||(t._updateEntity.bind(t),t._updateEntity(),t._renderEntity.bind(t),t._renderEntity(),e(r))};return n(),!0}},{key:"pause",value:function(){return this._wantPause?(console.log("MomentumEngine.Game.pause called, game instance is already paused"),!1):(this._wantPause=!0,!0)}}]),e}(_["default"]);e["default"]=m},function(t,e,n){t.exports={"default":n(3),__esModule:!0}},function(t,e,n){n(4),t.exports=n(10).Object.getPrototypeOf},function(t,e,n){var r=n(5);n(7)("getPrototypeOf",function(t){return function(e){return t(r(e))}})},function(t,e,n){var r=n(6);t.exports=function(t){return Object(r(t))}},function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},function(t,e,n){var r=n(8),i=n(10),o=n(13);t.exports=function(t,e){var n=(i.Object||{})[t]||Object[t],u={};u[t]=e(n),r(r.S+r.F*o(function(){n(1)}),"Object",u)}},function(t,e,n){var r=n(9),i=n(10),o=n(11),u="prototype",a=function(t,e,n){var s,c,f,l=t&a.F,d=t&a.G,h=t&a.S,y=t&a.P,_=t&a.B,p=t&a.W,v=d?i:i[e]||(i[e]={}),m=d?r:h?r[e]:(r[e]||{})[u];d&&(n=e);for(s in n)c=!l&&m&&s in m,c&&s in v||(f=c?m[s]:n[s],v[s]=d&&"function"!=typeof m[s]?n[s]:_&&c?o(f,r):p&&m[s]==f?function(t){var e=function(e){return this instanceof t?new t(e):t(e)};return e[u]=t[u],e}(f):y&&"function"==typeof f?o(Function.call,f):f,y&&((v[u]||(v[u]={}))[s]=f))};a.F=1,a.G=2,a.S=4,a.P=8,a.B=16,a.W=32,t.exports=a},function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(t,e){var n=t.exports={version:"1.2.6"};"number"==typeof __e&&(__e=n)},function(t,e,n){var r=n(12);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,i){return t.call(e,n,r,i)}}return function(){return t.apply(e,arguments)}}},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},function(t,e){"use strict";e.__esModule=!0,e["default"]=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var i=n(16),o=r(i);e["default"]=function(){function t(t,e){for(var n=0;ni;)U(t,n=r[i++],e[n]);return t},G=function(t,e){return void 0===e?P(t):B(P(t),e)},L=function(t){var e=O.call(this,t);return e||!o(this,t)||!o(D,t)||o(this,k)&&this[k][t]?e:!0},I=function(t,e){var n=b(t=g(t),e);return!n||!o(D,e)||o(t,k)&&t[k][e]||(n.enumerable=!0),n},K=function(t){for(var e,n=A(g(t)),r=[],i=0;n.length>i;)o(D,e=n[i++])||e==k||r.push(e);return r},z=function(t){for(var e,n=A(g(t)),r=[],i=0;n.length>i;)o(D,e=n[i++])&&r.push(D[e]);return r},W=function(t){if(void 0!==t&&!T(t)){for(var e,n,r=[t],i=1,o=arguments;o.length>i;)r.push(o[i++]);return e=r[1],"function"==typeof e&&(n=e),(n||!v(e))&&(e=function(t,e){return n&&(e=n.call(this,t,e)),T(e)?void 0:e}),r[1]=e,S.apply(M,r)}},q=c(function(){var t=E();return"[null]"!=S([t])||"{}"!=S({a:t})||"{}"!=S(Object(t))});F||(E=function(){if(T(this))throw TypeError("Symbol is not a constructor");return j(d(arguments.length>0?arguments[0]:void 0))},s(E.prototype,"toString",function(){return this._k}),T=function(t){return t instanceof E},r.create=G,r.isEnum=L,r.getDesc=I,r.setDesc=U,r.setDescs=B,r.getNames=_.get=K,r.getSymbols=z,u&&!n(42)&&s(N,"propertyIsEnumerable",L,!0));var J={"for":function(t){return o(R,t+="")?R[t]:R[t]=E(t)},keyFor:function(t){return y(R,t)},useSetter:function(){C=!0},useSimple:function(){C=!1}};r.each.call("hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),function(t){var e=h(t);J[t]=F?e:j(e)}),C=!0,a(a.G+a.W,{Symbol:E}),a(a.S,"Symbol",J),a(a.S+a.F*!F,"Object",{create:G,defineProperty:U,defineProperties:B,getOwnPropertyDescriptor:I,getOwnPropertyNames:K,getOwnPropertySymbols:z}),M&&a(a.S+a.F*(!F||q),"JSON",{stringify:W}),l(E,"Symbol"),l(Math,"Math",!0),l(i.JSON,"JSON",!0)},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){t.exports=!n(13)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,e,n){t.exports=n(27)},function(t,e,n){var r=n(18),i=n(28);t.exports=n(25)?function(t,e,n){return r.setDesc(t,e,i(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){var r=n(9),i="__core-js_shared__",o=r[i]||(r[i]={});t.exports=function(t){return o[t]||(o[t]={})}},function(t,e,n){var r=n(18).setDesc,i=n(24),o=n(31)("toStringTag");t.exports=function(t,e,n){t&&!i(t=n?t:t.prototype,o)&&r(t,o,{configurable:!0,value:e})}},function(t,e,n){var r=n(29)("wks"),i=n(32),o=n(9).Symbol;t.exports=function(t){return r[t]||(r[t]=o&&o[t]||(o||i)("Symbol."+t))}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},function(t,e,n){var r=n(18),i=n(34);t.exports=function(t,e){for(var n,o=i(t),u=r.getKeys(o),a=u.length,s=0;a>s;)if(o[n=u[s++]]===e)return n}},function(t,e,n){var r=n(35),i=n(6);t.exports=function(t){return r(i(t))}},function(t,e,n){var r=n(36);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e,n){var r=n(34),i=n(18).getNames,o={}.toString,u="object"==typeof window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],a=function(t){try{return i(t)}catch(e){return u.slice()}};t.exports.get=function(t){return u&&"[object Window]"==o.call(t)?a(t):i(r(t))}},function(t,e,n){var r=n(18);t.exports=function(t){var e=r.getKeys(t),n=r.getSymbols;if(n)for(var i,o=n(t),u=r.isEnum,a=0;o.length>a;)u.call(t,i=o[a++])&&e.push(i);return e}},function(t,e,n){var r=n(36);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,e,n){var r=n(41);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e){t.exports=!0},function(t,e){},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}e.__esModule=!0;var i=n(45),o=r(i),u=n(49),a=r(u),s=n(20),c=r(s);e["default"]=function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+("undefined"==typeof e?"undefined":(0,c["default"])(e)));t.prototype=(0,a["default"])(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(o["default"]?(0,o["default"])(t,e):t.__proto__=e)}},function(t,e,n){t.exports={"default":n(46),__esModule:!0}},function(t,e,n){n(47),t.exports=n(10).Object.setPrototypeOf},function(t,e,n){var r=n(8);r(r.S,"Object",{setPrototypeOf:n(48).set})},function(t,e,n){var r=n(18).getDesc,i=n(41),o=n(40),u=function(t,e){if(o(t),!i(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,i){try{i=n(11)(Function.call,r(Object.prototype,"__proto__").set,2),i(t,[]),e=!(t instanceof Array)}catch(o){e=!0}return function(t,n){return u(t,n),e?t.__proto__=n:i(t,n),t}}({},!1):void 0),check:u}},function(t,e,n){t.exports={"default":n(50),__esModule:!0}},function(t,e,n){var r=n(18);t.exports=function(t,e){return r.create(t,e)}},function(t,e,n){"use strict";function r(t){return t&&t.__esModule?t:{"default":t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(14),o=r(i),u=n(15),a=r(u),s=n(52),c=r(s),f=function(){function t(e,n){(0,o["default"])(this,t),this.pos=new c["default"](e||0,n||0),this.state={},this.children=[],this._calculatedPos=this.pos.clone(),this._lastCalculated=0,this._game=null,this._parent=null}return(0,a["default"])(t,[{key:"createChildEntity",value:function(){var e=new t;return e._updateGame(this._game),e._parent=this,this.children.push(e),e}},{key:"addChildEntity",value:function(t){return t._updateGame(this._game),t._parent=this,this.children.push(t),t}},{key:"detachChildEntity",value:function(t){}},{key:"_recalculatePos",value:function(){if(this._game&&this._lastCalculatede.pos.x&&t.pos.ye.pos.y}}]),t}();e["default"]=f},function(t,e,n){"use strict";function i(t){return t&&t.__esModule?t:{"default":t}}Object.defineProperty(e,"__esModule",{value:!0});var o=n(14),u=i(o),a=n(15),s=i(a),c=function(){function t(e,n,r,i){(0,u["default"])(this,t),this.r=e||0,this.g=n||0,this.b=r||0,this.a=i||1}return(0,s["default"])(t,[{key:"toString",value:function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.a+")"}},{key:"toHex",value:function(){return"#"+(r<<16|g<<8|b).toString(16)}}]),t}();e["default"]=c}]); //# sourceMappingURL=es5.js.map