angry-pixel 1.2.16 → 1.2.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.cjs.js +1 -1
- package/lib/index.cjs.js.map +1 -1
- package/lib/index.d.ts +0 -4
- package/lib/index.esm.js +1 -1
- package/lib/index.esm.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/package.dev.json +2 -6
- package/package.json +2 -6
package/lib/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../../../packages/math/lib/index.esm.js","../../../packages/core/lib/index.esm.js","../../../packages/input/lib/index.esm.js","../../../packages/2d-physics/lib/index.esm.js"],"sourcesContent":["var t=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,i){return t.set(e.x+i.x,e.y+i.y),t},t.subtract=function(t,e,i){return t.set(e.x-i.x,e.y-i.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,i){return t.set(e.x*i,e.y*i),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}(),e=function(){function e(e,i,n,o){this._position=new t,this._center=new t,this._width=0,this._height=0,this.set(e,i,n,o)}return Object.defineProperty(e.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),e.prototype.set=function(t,e,i,n){this._position.set(t,e),this._width=i,this._height=n},e.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},e.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},e.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},e.prototype.contains=function(i){return i instanceof e?i.x1<=this.x1&&i.x>=this.x&&i.y1<=this.y1&&i.y>=this.y:i instanceof t&&!(i.x<this.x||i.y<this.y||i.x>=this.x1||i.y>=this.y1)},e}(),i=function(t,e,i){return Math.min(i,Math.max(e,t))},n=function(t,e){return Math.round(Math.random()*(e-t))+t},o=function(t,e,i){return void 0===i&&(i=2),r(Math.random()*(e-t)+t,i)},r=function(t,e){return Math.round(t*Math.pow(10,e))/Math.pow(10,e)},s=function(t,e,i){void 0===i&&(i=1);for(var n=[],o=t;o<=e;o+=i)n.push(o);return n},u=function(t,e,i){return t>=e&&t<=i},h=function(){function e(e,i){void 0===e&&(e=null),void 0===i&&(i=null),this._degrees=0,this._radians=0,this._direction=new t,e?this.radians=e:i&&(this.degrees=i)}return Object.defineProperty(e.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),e.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))},e}();export{e as Rectangle,h as Rotation,t as Vector2,u as between,i as clamp,r as fixedRound,o as randomFloat,n as randomInt,s as range};\n//# sourceMappingURL=index.esm.js.map\n","var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},t(e,i)};function e(e,i){if(\"function\"!=typeof i&&null!==i)throw new TypeError(\"Class extends value \"+String(i)+\" is not a constructor or null\");function n(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}var i,n=function(){return n=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t},n.apply(this,arguments)};function r(t,e,i){if(i||2===arguments.length)for(var n,r=0,o=e.length;r<o;r++)!n&&r in e||(n||(n=Array.prototype.slice.call(e,0,r)),n[r]=e[r]);return t.concat(n||Array.prototype.slice.call(e))}\"function\"==typeof SuppressedError&&SuppressedError,function(t){t[t.Init=0]=\"Init\",t[t.Start=1]=\"Start\",t[t.Update=2]=\"Update\",t[t.UpdateEngine=3]=\"UpdateEngine\",t[t.UpdateCollider=4]=\"UpdateCollider\",t[t.UpdatePhysics=5]=\"UpdatePhysics\",t[t.UpdateTransform=6]=\"UpdateTransform\",t[t.UpdatePreRender=7]=\"UpdatePreRender\",t[t.UpdateCamera=8]=\"UpdateCamera\",t[t.UpdateRender=9]=\"UpdateRender\",t[t.Destroy=10]=\"Destroy\",t[t.StopGame=11]=\"StopGame\"}(i||(i={}));var o,s,a,h=function(){function t(t,e,n,r,o,s,a){this.timeManager=t,this.physicsManager=e,this.renderManager=n,this.inputManager=r,this.gameObjectManager=o,this.sceneManager=s,this.canvasColor=a,this.running=!1,this.gameLoopAccumulator=0,this.gameObjects=[],this.components=[],this.changingScene=!1,this.sceneEvents=[i.Start,i.Update,i.StopGame],this.gameObjectEvents=[i.Start,i.Update]}return t.prototype.start=function(){this.startLoop(!0)},t.prototype.pause=function(){this.running=!1},t.prototype.resume=function(){this.startLoop(!1)},t.prototype.stop=function(){this.running=!1,this.dispatchFrameEvent(i.StopGame),this.physicsManager.clear(),this.renderManager.clearScreen(this.canvasColor)},t.prototype.startLoop=function(t){this.running||(this.running=!0,t&&this.sceneManager.loadOpeningScene(),this.requestAnimationLoop(window.performance.now()),this.timeManager.gameFramerate!==this.timeManager.physicsFramerate&&this.asyncPhysicsLoop())},t.prototype.requestAnimationLoop=function(t){var e=this;this.running&&(this.timeManager.updateForBrowser(.001*t),this.sceneManager.pendingSceneToload()&&(this.sceneManager.loadPendingScene(),this.changingScene=!1),this.gameLoopAccumulator+=this.timeManager.browserDeltaTime,this.gameLoopAccumulator>=this.timeManager.minGameDeltatime&&(this.gameLogicIteration(.001*t),this.gameLoopAccumulator-=this.timeManager.minGameDeltatime),this.renderIteration(),this.sceneManager.pendingSceneToload()&&(this.changingScene=!0,this.sceneManager.unloadCurrentScene()),window.requestAnimationFrame((function(t){return e.requestAnimationLoop(t)})))},t.prototype.gameLogicIteration=function(t){this.timeManager.updateForGame(t),this.load(),this.dispatchFrameEvent(i.Start),this.inputManager.update(),this.dispatchFrameEvent(i.Update),this.dispatchFrameEvent(i.UpdateEngine),this.dispatchFrameEvent(i.UpdateTransform),this.timeManager.gameFramerate===this.timeManager.physicsFramerate&&(this.timeManager.updateForPhysics(t),this.physicsIteration()),this.dispatchFrameEvent(i.UpdatePreRender)},t.prototype.renderIteration=function(){this.dispatchFrameEvent(i.UpdatePreRender),this.dispatchFrameEvent(i.UpdateCamera),this.dispatchFrameEvent(i.UpdateRender),this.renderManager.clearScreen(this.canvasColor),this.renderManager.render(),this.renderManager.clearData()},t.prototype.physicsIteration=function(){this.timeManager.timeScale<=0||this.changingScene||(this.dispatchFrameEvent(i.UpdatePhysics),this.dispatchFrameEvent(i.UpdateCollider),this.dispatchFrameEvent(i.UpdateTransform),this.physicsManager.resolve(this.timeManager.physicsDeltaTime))},t.prototype.asyncPhysicsLoop=function(){var t=this;this.physicsIntervalId=window.setInterval((function(){if(!t.running)return window.clearInterval(t.physicsIntervalId);t.timeManager.updateForPhysics(.001*window.performance.now()),document.hidden||t.physicsIteration()}),1e3/this.timeManager.physicsFramerate)},t.prototype.load=function(){var t=this;this.loadedScene=this.sceneManager.getLoadedScene(),this.gameObjects=this.gameObjectManager.findGameObjects().filter((function(t){return t.active})),this.components=[],this.gameObjects.forEach((function(e){return e.getComponents().filter((function(t){return t.active})).forEach((function(e){return t.components.push(e)}))}))},t.prototype.dispatchFrameEvent=function(t){this.sceneEvents.includes(t)&&this.loadedScene.dispatch(t),this.gameObjectEvents.includes(t)&&this.gameObjects.forEach((function(e){e.active&&e.dispatch(t)})),this.components.forEach((function(e){e.active&&e.dispatch(t)}))},t}(),c=function(){function t(t){this.updateEvent=i.Update,this.started=!1,this.container=t,this.gameConfig=this.container.getConstant(\"GameConfig\"),this.gameConfig.headless||(this.assetManager=this.container.getSingleton(\"AssetManager\"),this.domManager=this.container.getSingleton(\"DomManager\"),this.inputManager=this.container.getSingleton(\"InputManager\"),this.renderManager=this.container.getSingleton(\"RenderManager\")),this.gameObjectManager=this.container.getSingleton(\"GameObjectManager\"),this.physicsManager=this.container.getSingleton(\"PhysicsManager\"),this.sceneManager=this.container.getSingleton(\"SceneManager\"),this.timeManager=this.container.getSingleton(\"TimeManager\")}return t.prototype.dispatch=function(t,e){t===i.Init&&this.init?this.init(e):t!==i.Start||this.started?t===this.updateEvent&&this.started&&this.update?this.update():t===i.Destroy?(this.onDestroy&&this.onDestroy(),this._destroy()):t===i.StopGame&&(this.onDestroy&&this.onDestroy(),this._stopGame()):(this.start&&this.start(),this.started=!0)},t.prototype.addGameObject=function(t,e,i){return\"string\"==typeof e&&(i=e,e={}),this.gameObjectManager.addGameObject(t,e,void 0,i)},t.prototype.findGameObjects=function(t){return t?this.gameObjectManager.findGameObjects(t):this.gameObjectManager.findGameObjects()},t.prototype.findGameObject=function(t){return this.gameObjectManager.findGameObject(t)},t.prototype.findGameObjectsByTag=function(t){return this.gameObjectManager.findGameObjectsByTag(t)},t.prototype.destroyGameObject=function(t){this.gameObjectManager.destroyGameObject(t)},t}(),l=function(t){function i(e,i,n){void 0===n&&(n=\"\");var r=t.call(this,e)||this;return r.allowMultiple=!0,r._active=!0,r.gameObject=i,r.name=n,r}return e(i,t),Object.defineProperty(i.prototype,\"active\",{get:function(){return this._active},set:function(t){this._active!==t&&(this._active=t,this.onActiveChange())},enumerable:!1,configurable:!0}),i.prototype.onActiveChange=function(){},i.prototype.getCurrentScene=function(){return this.sceneManager.getLoadedScene()},i.prototype.getGameObject=function(){return this.gameObject},i.prototype.getComponents=function(t){return t?this.gameObject.getComponents(t):this.gameObject.getComponents()},i.prototype.getComponent=function(t){return this.gameObject.getComponent(t)},i.prototype.hasComponent=function(t){return this.gameObject.hasComponent(t)},i.prototype.removeComponent=function(t){this.gameObject.removeComponent(t)},i.prototype._destroy=function(){var t=this;Object.keys(this).forEach((function(e){return delete t[e]}))},i.prototype._stopGame=function(){},i}(c),u=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=i.UpdateEngine,e}return e(n,t),n}(l),p=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=i.UpdateCollider,e}return e(n,t),n}(l),d=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=i.UpdatePhysics,e}return e(n,t),n}(l),f=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=i.UpdateTransform,e}return e(n,t),n}(l),g=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=i.UpdatePreRender,e}return e(n,t),n}(l),m=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=i.UpdateCamera,e}return e(n,t),n}(l),y=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=i.UpdateRender,e}return e(n,t),n}(l);!function(t){t[t.Polygon=0]=\"Polygon\",t[t.Circumference=1]=\"Circumference\",t[t.Line=2]=\"Line\"}(o||(o={})),function(t){t[t.WorldSpace=0]=\"WorldSpace\",t[t.ViewPort=1]=\"ViewPort\"}(s||(s={})),function(t){t[t.Sprite=0]=\"Sprite\",t[t.Text=1]=\"Text\",t[t.Tilemap=2]=\"Tilemap\",t[t.Mask=3]=\"Mask\",t[t.Geometric=4]=\"Geometric\",t[t.Video=5]=\"Video\"}(a||(a={}));var v=function(){function t(t){this.gl=t,this.viewport={x:0,x1:0,y:0,y1:0},this.object={x:0,x1:0,y:0,y1:0}}return t.prototype.setViewport=function(t,e){var i=t.position,n=t.zoom;e===s.WorldSpace?(this.viewport.x=i.x-this.gl.canvas.width/n/2,this.viewport.x1=i.x+this.gl.canvas.width/n/2,this.viewport.y=i.y-this.gl.canvas.height/n/2,this.viewport.y1=i.y+this.gl.canvas.height/n/2):(this.viewport.x=-this.gl.canvas.width/2,this.viewport.x1=this.gl.canvas.width/2,this.viewport.y=-this.gl.canvas.height/2,this.viewport.y1=this.gl.canvas.height/2)},t.prototype.setObjectForResizeable=function(t){var e=t.position,i=t.width,n=t.height,r=t.rotation,o=void 0===r?0:r,s=Math.abs(Math.sin(o)),a=Math.abs(Math.cos(o)),h=s*n+a*i,c=s*i+a*n;this.object.x=e.x-h/2,this.object.x1=e.x+h/2,this.object.y=e.y-c/2,this.object.y1=e.y+c/2},t.prototype.setObjectForText=function(t){var e=t.position,i=t.text,n=t.fontSize,r=t.lineSeparation,o=t.letterSpacing,s=t.rotation,a=i.split(\"\\n\").reduce((function(t,e){return Math.max(t,e.length)}),0)*(n+(null!=o?o:0))*2,h=i.split(\"\\n\").length*(n+(null!=r?r:0));this.setObjectForResizeable({position:e,width:a,height:h,rotation:s})},t.prototype.setObjectForGeometric=function(t){var e=this,i=t.position,n=t.vertexModel,r=t.shape,s=t.radius;r===o.Circumference?(this.object.x=i.x-s,this.object.y=i.y-s,this.object.x1=i.x+s,this.object.y1=i.y+s):(this.object.x=Number.MAX_SAFE_INTEGER,this.object.y=Number.MAX_SAFE_INTEGER,this.object.x1=Number.MIN_SAFE_INTEGER,this.object.y1=Number.MIN_SAFE_INTEGER,n.forEach((function(t){e.object.x=Math.min(t.x+i.x,e.object.x),e.object.y=Math.min(t.y+i.y,e.object.y),e.object.x1=Math.max(t.x+i.x,e.object.x1),e.object.y1=Math.max(t.y+i.y,e.object.y1)})))},t.prototype.setObjectForTilemap=function(t){t.tilemap.height=Math.ceil(t.tiles.length/t.tilemap.width),this.setObjectForResizeable({position:t.renderPosition,width:t.tilemap.width*t.tilemap.tileWidth,height:t.tilemap.height*t.tilemap.tileHeight,rotation:t.rotation})},t.prototype.applyCullingInTiles=function(t){var e=this,i=t.tiles,n=t.tilemap,r=n.width,o=n.tileWidth,s=n.tileHeight;t.culledTiles=i.map((function(t,i){return e.viewport.x1>=e.object.x+i%r*o&&e.viewport.x<=e.object.x+i%r*o+o&&e.viewport.y1>=e.object.y1-((i/r|0)*s+s)&&e.viewport.y<=e.object.y1-(i/r|0)*s?t:0}))},t.prototype.isInViewPort=function(t,e){switch(this.setViewport(e,t.location),t.type){case a.Video:case a.Mask:case a.Sprite:this.setObjectForResizeable(t);break;case a.Geometric:this.setObjectForGeometric(t);break;case a.Text:this.setObjectForText(t);break;case a.Tilemap:this.setObjectForTilemap(t)}return this.viewport.x1>=this.object.x&&this.viewport.x<=this.object.x1&&this.viewport.y1>=this.object.y&&this.viewport.y<=this.object.y1},t.prototype.applyCulling=function(t,e){var i=this;return e.filter((function(e){return!!i.isInViewPort(e,t)&&(e.type===a.Tilemap&&i.applyCullingInTiles(e),!0)}))},t}(),x=function(){return x=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t},x.apply(this,arguments)};function b(t,e,i){if(i||2===arguments.length)for(var n,r=0,o=e.length;r<o;r++)!n&&r in e||(n||(n=Array.prototype.slice.call(e,0,r)),n[r]=e[r]);return t.concat(n||Array.prototype.slice.call(e))}\"function\"==typeof SuppressedError&&SuppressedError;var M,_=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,i){return t.set(e.x+i.x,e.y+i.y),t},t.subtract=function(t,e,i){return t.set(e.x-i.x,e.y-i.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,i){return t.set(e.x*i,e.y*i),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}();!function(){function t(t,e,i,n){this._position=new _,this._center=new _,this._width=0,this._height=0,this.set(t,e,i,n)}Object.defineProperty(t.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e,i,n){this._position.set(t,e),this._width=i,this._height=n},t.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},t.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},t.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},t.prototype.contains=function(e){return e instanceof t?e.x1<=this.x1&&e.x>=this.x&&e.y1<=this.y1&&e.y>=this.y:e instanceof _&&!(e.x<this.x||e.y<this.y||e.x>=this.x1||e.y>=this.y1)}}(),function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this._degrees=0,this._radians=0,this._direction=new _,t?this.radians=t:e&&(this.degrees=e)}Object.defineProperty(t.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),t.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))}}(),function(t){t[t.Center=0]=\"Center\",t[t.RightUp=1]=\"RightUp\",t[t.RightDown=2]=\"RightDown\",t[t.RightCenter=3]=\"RightCenter\"}(M||(M={}));var w,C=function(){function t(t,e){this.webglManager=t,this.cullingManager=e,this.renderData=[],this.cameraData=[]}return t.prototype.addRenderData=function(t){this.renderData.push(t)},t.prototype.addCameraData=function(t){this.cameraData.push(t)},t.prototype.render=function(){var t=this;this.cameraData.sort((function(t,e){return t.depth-e.depth})).forEach((function(e){return t.renderByCamera(e)}))},t.prototype.renderByCamera=function(t){var e=this;this.cullingManager.applyCulling(t,this.renderData.filter((function(e){return t.layers.includes(e.layer)})).sort((function(e,i){return t.layers.indexOf(e.layer)-t.layers.indexOf(i.layer)})).map((function(t){return t.type===a.Tilemap?function(t){var e=x(x({},t),{culledTiles:[],tilemap:x(x({},t.tilemap),{height:Math.ceil(t.tiles.length/t.tilemap.width),realWidth:t.tilemap.width*t.tilemap.tileWidth,realHeight:0}),renderPosition:new _});return e.tilemap.realHeight=e.tilemap.height*e.tilemap.tileHeight,function(t){t.renderPosition.set(t.position.x+(t.orientation!==M.Center?t.tilemap.realWidth/2:0),t.position.y+(t.orientation===M.RightDown?-t.tilemap.realHeight/2:t.orientation===M.RightUp?t.tilemap.realHeight/2:0))}(e),e}(t):t}))).forEach((function(i){return e.webglManager.render(i,t)}))},t.prototype.clearData=function(){this.renderData=[],this.cameraData=[]},t.prototype.clearScreen=function(t){this.webglManager.clearCanvas(t)},t.prototype.preloadTexture=function(t){this.webglManager.createTexture(t)},t}();!function(t){t.LegacyWebGL=\"webgl\",t.WebGL2=\"webgl2\"}(w||(w={}));var j=function(){function t(t){if(this.canvas=t,this.contextVersion=this.getContextVersion(),!this.contextVersion)throw new Error(\"Your browser does not support WebGL.\");this.gl=this.canvas.getContext(this.contextVersion)}return t.prototype.getContextVersion=function(){return null!==this.canvas.getContext(w.WebGL2)?w.WebGL2:null!==this.canvas.getContext(w.LegacyWebGL)?w.LegacyWebGL:void 0},t}(),O=function(){function t(){this.fontAtlas=new Map}return t.prototype.hasFontAtlas=function(t){return this.fontAtlas.has(this.symbol(t))},t.prototype.getFontAtlas=function(t){return this.fontAtlas.get(this.symbol(t))},t.prototype.getOrCreate=function(t,e,i){var n;return null!==(n=this.getFontAtlas(e))&&void 0!==n?n:this.create(t,e,i)},t.prototype.create=function(t,e,i){this.bitmapSize=i,this.chars=[];for(var n=0;n<t.length;n+=2)for(var r=t[n];r<=t[n+1];r++)this.chars.push(String.fromCharCode(r));var o=this.renderAtlas(e instanceof FontFace?e.family:e);return this.fontAtlas.set(this.symbol(e),o),o},t.prototype.symbol=function(t){return Symbol.for(t instanceof FontFace?t.family:t)},t.prototype.renderAtlas=function(t){var e=new P(t,this.bitmapSize,Math.ceil(Math.sqrt(this.chars.length))),i=e.canvas.getContext(\"2d\");i.clearRect(0,0,e.canvas.width,e.canvas.height),i.textBaseline=\"top\",i.fillStyle=\"#000\",i.font=\"\".concat(this.bitmapSize,\"px \").concat(t);for(var n=0,r=0,o=0;o<this.chars.length;o++)i.fillText(this.chars[o],n,r),e.glyphs.set(this.chars[o],{id:o,width:i.measureText(this.chars[o]).width}),(n+=this.bitmapSize)>e.canvas.width-this.bitmapSize&&(n=0,r+=this.bitmapSize);return e},t}(),P=function(t,e,i){this.fontFaceFamily=t,this.bitmapFontSize=e,this.gridSize=i,this.canvas=document.createElement(\"canvas\"),this.glyphs=new Map,this.canvas.width=this.gridSize*this.bitmapFontSize,this.canvas.height=this.canvas.width},R=function(){function t(t,e){this.gl=t,this.shaderLoader=e}return t.prototype.create=function(t,e){var i=this.gl.createProgram(),n=this.shaderLoader.load(this.gl.VERTEX_SHADER,t),r=this.shaderLoader.load(this.gl.FRAGMENT_SHADER,e);this.gl.attachShader(i,n),this.gl.attachShader(i,r),this.gl.linkProgram(i);var o=this.gl.LINK_STATUS;if(!this.gl.getProgramParameter(i,o)){var s=this.gl.getProgramInfoLog(i);throw this.gl.deleteProgram(i),new Error(\"Unable to initialize the Program: \".concat(s))}return i},t}(),A=function(){function t(t,e,i){this.gl=t,this.contextVersion=e,this.programFactory=i}return t.prototype.loadProgram=function(){this.program=this.contextVersion===w.WebGL2?this.programFactory.create(\"#version 300 es\\n\\nin vec4 positionCoords;\\nin vec2 textureCoords;\\n\\nout vec2 texCoords;\\n\\nuniform mat4 projectionMatrix;\\nuniform mat4 modelMatrix;\\nuniform mat4 textureMatrix;\\n\\nvoid main()\\n{\\n gl_Position = projectionMatrix * modelMatrix * positionCoords;\\n texCoords = (textureMatrix * vec4(textureCoords, 0, 1)).xy;\\n}\",\"#version 300 es\\nprecision highp float;\\n\\nout vec4 fragColor;\\n\\nin vec2 texCoords;\\n\\nuniform int u_renderTexture;\\nuniform sampler2D u_texImage;\\nuniform vec4 u_solidColor;\\n\\nuniform int u_useTintColor;\\nuniform vec4 u_tintColor;\\n\\nuniform int u_useMaskColor;\\nuniform vec4 u_maskColor;\\nuniform float u_maskColorMix;\\n\\nuniform float u_alpha;\\n\\nvoid main()\\n{\\n if (u_renderTexture == 1) {\\n vec4 texColor = texture(u_texImage, texCoords);\\n\\n if (texColor.a < 0.0001) {\\n discard;\\n }\\n\\n if (u_useTintColor == 1) {\\n texColor = u_tintColor * texColor;\\n }\\n\\n if (u_useMaskColor == 1) {\\n texColor = mix(texColor, u_maskColor, clamp(u_maskColorMix, 0.0, 1.0));\\n }\\n\\n fragColor = vec4(texColor.rgb, u_alpha * texColor.a); \\n } else {\\n fragColor = vec4(u_solidColor.rgb, u_alpha);\\n }\\n}\"):this.programFactory.create(\"precision mediump float;\\n\\nattribute vec2 positionCoords;\\nattribute vec2 textureCoords;\\n\\nvarying vec2 texCoords;\\n\\nuniform mat4 projectionMatrix;\\nuniform mat4 modelMatrix;\\nuniform mat4 textureMatrix;\\n\\nvoid main()\\n{\\n gl_Position = projectionMatrix * modelMatrix * vec4(positionCoords, 0, 1);\\n texCoords = (textureMatrix * vec4(textureCoords, 0, 1)).xy;\\n}\",\"precision mediump float;\\n\\nvarying vec2 texCoords;\\n\\nuniform int u_renderTexture;\\nuniform sampler2D u_texImage;\\nuniform vec4 u_solidColor;\\n\\nuniform int u_useTintColor;\\nuniform vec4 u_tintColor;\\n\\nuniform int u_useMaskColor;\\nuniform vec4 u_maskColor;\\nuniform float u_maskColorMix;\\n\\nuniform float u_alpha;\\n\\nvoid main()\\n{\\n if (u_renderTexture == 1) {\\n vec4 texColor = texture2D(u_texImage, texCoords);\\n\\n if (texColor.a < 0.0001) {\\n discard;\\n }\\n\\n if (u_useTintColor == 1) {\\n texColor = u_tintColor * texColor;\\n }\\n\\n if (u_useMaskColor == 1) {\\n texColor = mix(texColor, u_maskColor, clamp(u_maskColorMix, 0.0, 1.0));\\n }\\n\\n gl_FragColor = vec4(texColor.rgb, u_alpha * texColor.a);\\n } else {\\n gl_FragColor = vec4(u_solidColor.rgb, u_alpha);\\n }\\n}\"),this.positionBuffer=this.gl.createBuffer(),this.textureBuffer=this.gl.createBuffer(),this.positionCoordsAttr=this.gl.getAttribLocation(this.program,\"positionCoords\"),this.texCoordsAttr=this.gl.getAttribLocation(this.program,\"textureCoords\"),this.modelMatrixUniform=this.gl.getUniformLocation(this.program,\"modelMatrix\"),this.projectionMatrixUniform=this.gl.getUniformLocation(this.program,\"projectionMatrix\"),this.textureMatrixUniform=this.gl.getUniformLocation(this.program,\"textureMatrix\"),this.renderTextureUniform=this.gl.getUniformLocation(this.program,\"u_renderTexture\"),this.textureUniform=this.gl.getUniformLocation(this.program,\"u_texImage\"),this.solidColorUniform=this.gl.getUniformLocation(this.program,\"u_solidColor\"),this.useTintColorUniform=this.gl.getUniformLocation(this.program,\"u_useTintColor\"),this.tintColorUniform=this.gl.getUniformLocation(this.program,\"u_tintColor\"),this.useMaskColorUniform=this.gl.getUniformLocation(this.program,\"u_useMaskColor\"),this.maskColorUniform=this.gl.getUniformLocation(this.program,\"u_maskColor\"),this.maskColorMixUniform=this.gl.getUniformLocation(this.program,\"u_maskColorMix\"),this.alphaUniform=this.gl.getUniformLocation(this.program,\"u_alpha\"),this.gl.useProgram(this.program),this.gl.blendFunc(this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA),this.gl.enableVertexAttribArray(this.positionCoordsAttr),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.positionBuffer),this.gl.vertexAttribPointer(this.positionCoordsAttr,2,this.gl.FLOAT,!1,0,0),this.gl.enableVertexAttribArray(this.texCoordsAttr),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.textureBuffer),this.gl.vertexAttribPointer(this.texCoordsAttr,2,this.gl.FLOAT,!1,0,0)},t}(),S=function(){function t(t){this.gl=t}return t.prototype.load=function(t,e){var i=this.gl.createShader(t);this.gl.shaderSource(i,e),this.gl.compileShader(i);var n=this.gl.COMPILE_STATUS;if(!this.gl.getShaderParameter(i,n)){var r=this.gl.getShaderInfoLog(i);throw this.gl.deleteShader(i),new Error(\"Unable to initialize the shader program: \".concat(r))}return i},t}(),E=\"undefined\"!=typeof Float32Array?Float32Array:Array;function T(){var t=new E(16);return E!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t}function D(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function F(t,e,i){var n,r,o,s,a,h,c,l,u,p,d,f,g=i[0],m=i[1],y=i[2];return e===t?(t[12]=e[0]*g+e[4]*m+e[8]*y+e[12],t[13]=e[1]*g+e[5]*m+e[9]*y+e[13],t[14]=e[2]*g+e[6]*m+e[10]*y+e[14],t[15]=e[3]*g+e[7]*m+e[11]*y+e[15]):(n=e[0],r=e[1],o=e[2],s=e[3],a=e[4],h=e[5],c=e[6],l=e[7],u=e[8],p=e[9],d=e[10],f=e[11],t[0]=n,t[1]=r,t[2]=o,t[3]=s,t[4]=a,t[5]=h,t[6]=c,t[7]=l,t[8]=u,t[9]=p,t[10]=d,t[11]=f,t[12]=n*g+a*m+u*y+e[12],t[13]=r*g+h*m+p*y+e[13],t[14]=o*g+c*m+d*y+e[14],t[15]=s*g+l*m+f*y+e[15]),t}function B(t,e,i){var n=i[0],r=i[1],o=i[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*o,t[9]=e[9]*o,t[10]=e[10]*o,t[11]=e[11]*o,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function U(t,e,i){var n=Math.sin(i),r=Math.cos(i),o=e[0],s=e[1],a=e[2],h=e[3],c=e[4],l=e[5],u=e[6],p=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*r+c*n,t[1]=s*r+l*n,t[2]=a*r+u*n,t[3]=h*r+p*n,t[4]=c*r-o*n,t[5]=l*r-s*n,t[6]=u*r-a*n,t[7]=p*r-h*n,t}Math.hypot||(Math.hypot=function(){for(var t=0,e=arguments.length;e--;)t+=arguments[e]*arguments[e];return Math.sqrt(t)});var I,L=function(t){var e=/^#?([a-f\\d]{2})?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(t);return e?{r:parseInt(e[2],16)/256,g:parseInt(e[3],16)/256,b:parseInt(e[4],16)/256,a:void 0!==e[1]?parseInt(e[1],16)/256:1}:null},V=function(t,e,i,n){var r,o;(function(t,e,i,n,r,o,s){var a=1/(e-i),h=1/(n-r),c=1/(o-s);t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*h,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+i)*a,t[13]=(r+n)*h,t[14]=(s+o)*c,t[15]=1})(t=D(t),-e.canvas.width/2,e.canvas.width/2,-e.canvas.height/2,e.canvas.height/2,-1,1),n===s.WorldSpace&&(B(t,t,[null!==(r=i.zoom)&&void 0!==r?r:1,null!==(o=i.zoom)&&void 0!==o?o:1,1]),F(t,t,[-i.position.x,-i.position.y,0]))},k=function(){function t(t,e){this.gl=t,this.programManager=e,this.vertices=new Map,this.lastVertices=null,this.projectionMatrix=T(),this.modelMatrix=T(),this.textureMatrix=T();var i=2*Math.PI/60;this.circumferenceVertices=new Float32Array(function(t,e,i){void 0===i&&(i=1);for(var n=[],r=1;r<=60;r+=i)n.push(r);return n}(0,0,1).reduce((function(t,e){return b(b([],t,!0),[Math.cos(e*i),Math.sin(e*i)],!1)}),[]))}return t.prototype.render=function(t,e,i){switch(t.shape){case o.Polygon:this.renderLines(t,e,this.gl.LINE_LOOP,i);break;case o.Line:this.renderLines(t,e,this.gl.LINES,i);break;case o.Circumference:this.renderCircumference(t,e)}},t.prototype.renderLines=function(t,e,i,n){var r,o=this.generateVerticesKey(t.vertexModel);!1===this.vertices.has(o)&&this.vertices.set(o,new Float32Array(this.generatePolygonVertices(t.vertexModel)));var s=this.vertices.get(o);this.lastVertices===o&&n===a.Geometric||(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,s,this.gl.DYNAMIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,s,this.gl.DYNAMIC_DRAW)),this.lastVertices=o,this.modelMatrix=D(this.modelMatrix),F(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),U(this.modelMatrix,this.modelMatrix,null!==(r=t.rotation)&&void 0!==r?r:0),V(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.uniform1i(this.programManager.renderTextureUniform,0);var h=L(t.color),c=h.r,l=h.g,u=h.b,p=h.a;this.gl.uniform4f(this.programManager.solidColorUniform,c,l,u,p),this.gl.uniform1f(this.programManager.alphaUniform,1),this.gl.drawArrays(i,0,s.length/2)},t.prototype.generateVerticesKey=function(t){return Symbol.for(t.reduce((function(t,e){return\"\".concat(t).concat(e.x).concat(e.y)}),t.length.toString()))},t.prototype.generatePolygonVertices=function(t){for(var e=[],i=0;i<t.length;i++)e.push(t[i].x,t[i].y);return e},t.prototype.renderCircumference=function(t,e){this.lastVertices=null,this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.circumferenceVertices,this.gl.DYNAMIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.circumferenceVertices,this.gl.DYNAMIC_DRAW),this.modelMatrix=D(this.modelMatrix),F(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),B(this.modelMatrix,this.modelMatrix,[t.radius,t.radius,1]),V(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.uniform1i(this.programManager.renderTextureUniform,0);var i=L(t.color),n=i.r,r=i.g,o=i.b,s=i.a;this.gl.uniform4f(this.programManager.solidColorUniform,n,r,o,s),this.gl.uniform1f(this.programManager.alphaUniform,1),this.gl.drawArrays(this.gl.LINE_LOOP,0,this.circumferenceVertices.length/2)},t}();!function(t){t[t.Rectangle=0]=\"Rectangle\",t[t.Circumference=1]=\"Circumference\"}(I||(I={}));var G,W=function(){function t(t,e){this.gl=t,this.programManager=e,this.type=a.Mask,this.rectangleVertices=new Float32Array([-.5,-.5,-.5,.5,.5,-.5,.5,-.5,-.5,.5,.5,.5]),this.projectionMatrix=T(),this.modelMatrix=T(),this.textureMatrix=T();for(var i=2*Math.PI/60,n=[0,0],r=0;r<=60;r++)n.push(Math.cos(r*i),Math.sin(r*i));this.circumferenceVertices=new Float32Array(n)}return t.prototype.render=function(t,e,i){var n,r;i===a.Mask&&this.lastShape===t.shape||(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,t.shape===I.Rectangle?this.rectangleVertices:this.circumferenceVertices,this.gl.STATIC_DRAW)),this.modelMatrix=D(this.modelMatrix),F(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),U(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),B(this.modelMatrix,this.modelMatrix,t.shape===I.Rectangle?[t.width,t.height,1]:[t.radius,t.radius,1]),V(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),t.alpha>=0&&t.alpha<1?this.gl.enable(this.gl.BLEND):this.gl.disable(this.gl.BLEND),this.gl.uniform1i(this.programManager.renderTextureUniform,0);var o=L(t.color),s=o.r,h=o.g,c=o.b,l=o.a;this.gl.uniform4f(this.programManager.solidColorUniform,s,h,c,l),this.gl.uniform1f(this.programManager.alphaUniform,null!==(r=t.alpha)&&void 0!==r?r:1),t.shape===I.Rectangle?this.gl.drawArrays(this.gl.TRIANGLES,0,6):this.gl.drawArrays(this.gl.TRIANGLE_FAN,0,this.circumferenceVertices.length/2),this.lastShape=t.shape},t}(),H=function(){function t(t,e,i){this.gl=t,this.programManager=e,this.textureManager=i,this.lastTexture=null,this.projectionMatrix=T(),this.modelMatrix=T(),this.textureMatrix=T(),this.posVertices=new Float32Array([-.5,-.5,-.5,.5,.5,-.5,.5,-.5,-.5,.5,.5,.5]),this.texVertices=new Float32Array([0,1,0,0,1,1,1,1,0,0,1,0])}return t.prototype.render=function(t,e,i){var n,r,o,s;i!==t.type&&(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.posVertices,this.gl.STATIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.texVertices,this.gl.STATIC_DRAW)),this.modelMatrix=D(this.modelMatrix),F(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),U(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),B(this.modelMatrix,this.modelMatrix,[t.width*(t.flipHorizontal?-1:1),t.height*(t.flipVertical?-1:1),1]),this.textureMatrix=D(this.textureMatrix),t.slice&&(F(this.textureMatrix,this.textureMatrix,[t.slice.x/t.image.naturalWidth,t.slice.y/t.image.naturalHeight,0]),B(this.textureMatrix,this.textureMatrix,[t.slice.width/t.image.naturalWidth,t.slice.height/t.image.naturalHeight,1])),V(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.enable(this.gl.BLEND);var a=this.textureManager.getOrCreateTextureFromImage(t.image,t.smooth);if(this.lastTexture===a&&i===t.type||(this.gl.bindTexture(this.gl.TEXTURE_2D,a),this.gl.uniform1i(this.programManager.textureUniform,0),this.lastTexture=a),this.gl.uniform1i(this.programManager.renderTextureUniform,1),this.gl.uniform1f(this.programManager.alphaUniform,null!==(r=t.alpha)&&void 0!==r?r:1),this.gl.uniform1i(this.programManager.useTintColorUniform,t.tintColor?1:0),t.tintColor){var h=L(t.tintColor),c=h.r,l=h.g,u=h.b,p=h.a;this.gl.uniform4f(this.programManager.tintColorUniform,c,l,u,p)}if(this.gl.uniform1i(this.programManager.useMaskColorUniform,t.maskColor?1:0),t.maskColor){var d=L(t.maskColor);c=d.r,l=d.g,u=d.b,this.gl.uniform4f(this.programManager.maskColorUniform,c,l,u,null!==(o=t.alpha)&&void 0!==o?o:1),this.gl.uniform1f(this.programManager.maskColorMixUniform,null!==(s=t.maskColorMix)&&void 0!==s?s:1)}this.gl.drawArrays(this.gl.TRIANGLES,0,6)},t}();!function(t){t[t.Center=0]=\"Center\",t[t.RightUp=1]=\"RightUp\",t[t.RightDown=2]=\"RightDown\",t[t.RightCenter=3]=\"RightCenter\"}(G||(G={}));var z=new _,N=new _,Y=[32,126,161,255],X=G.Center,q=function(){function t(t,e,i,n){this.gl=t,this.programManager=e,this.textureManager=i,this.fontAtlasFactory=n,this.type=a.Text,this.posVertices=[],this.texVertices=[],this.lastTexture=null,this.textSize=new _,this.modelPosition=new _,this.projectionMatrix=T(),this.modelMatrix=T(),this.textureMatrix=T()}return t.prototype.render=function(t,e,i){var n;if(!t.text)throw new Error(\"Nothing to render\");this.setDefaultValues(t);var r=this.fontAtlasFactory.getOrCreate(t.bitmap.charRanges,t.font,t.bitmap.fontSize);this.generateTextVertices(r,t),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,new Float32Array(this.posVertices),this.gl.DYNAMIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,new Float32Array(this.texVertices),this.gl.DYNAMIC_DRAW),this.modelMatrix=D(this.modelMatrix),this.setPositionFromOrientation(t),F(this.modelMatrix,this.modelMatrix,[this.modelPosition.x,this.modelPosition.y,0]),U(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),B(this.modelMatrix,this.modelMatrix,[t.fontSize,t.fontSize,1]),this.textureMatrix=D(this.textureMatrix),V(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),t.alpha<1?this.gl.enable(this.gl.BLEND):this.gl.disable(this.gl.BLEND);var o=this.textureManager.getOrCreateTextureFromCanvas(\"FontFamily:\"+r.fontFaceFamily,r.canvas,t.smooth);this.lastTexture===o&&i===a.Text||(this.gl.bindTexture(this.gl.TEXTURE_2D,o),this.gl.uniform1i(this.programManager.textureUniform,0),this.lastTexture=o),this.gl.uniform1i(this.programManager.useTintColorUniform,0),this.gl.uniform1i(this.programManager.renderTextureUniform,1),this.gl.uniform1f(this.programManager.alphaUniform,t.alpha);var s=L(t.color),h=s.r,c=s.g,l=s.b,u=s.a;this.gl.uniform4f(this.programManager.maskColorUniform,h,c,l,u),this.gl.uniform1f(this.programManager.maskColorMixUniform,1),this.gl.uniform1i(this.programManager.useMaskColorUniform,1),this.gl.drawArrays(this.gl.TRIANGLES,0,this.posVertices.length/2)},t.prototype.setDefaultValues=function(t){var e,i,n,r,o,s,a,h,c,l;t.bitmap?(t.bitmap.margin=null!==(e=t.bitmap.margin)&&void 0!==e?e:z,t.bitmap.spacing=null!==(i=t.bitmap.spacing)&&void 0!==i?i:N,t.bitmap.fontSize=null!==(n=t.bitmap.fontSize)&&void 0!==n?n:64,t.bitmap.charRanges=null!==(r=t.bitmap.charRanges)&&void 0!==r?r:Y):t.bitmap={margin:z,spacing:N,fontSize:64,charRanges:Y},t.color=null!==(o=t.color)&&void 0!==o?o:\"#000000\",t.letterSpacing=null!==(s=t.letterSpacing)&&void 0!==s?s:0,t.lineSeparation=null!==(a=t.lineSeparation)&&void 0!==a?a:0,t.alpha=null!==(h=t.alpha)&&void 0!==h?h:1,t.orientation=null!==(c=t.orientation)&&void 0!==c?c:X,t.rotation=null!==(l=t.rotation)&&void 0!==l?l:0},t.prototype.generateTextVertices=function(t,e){var i=e.text,n=e.fontSize,r=e.bitmap,o=e.letterSpacing,s=e.lineSeparation;this.posVertices=[],this.texVertices=[];var a=0,h=0,c=0;o/=n,s/=n;for(var l=0;l<i.length;l++){var u=i[l];if(\"\\n\"!==u){var p=t.glyphs.get(u);if(p){var d=p.width/t.bitmapFontSize;this.posVertices.push(a,h-1,a+d,h-1,a,h,a,h,a+d,h-1,a+d,h);var f=p.id%t.gridSize*t.bitmapFontSize,g=(p.id/t.gridSize|0)*t.bitmapFontSize,m=(f+r.margin.x)/t.canvas.width,y=(g+r.margin.y)/t.canvas.width,v=(f+p.width+r.spacing.x)/t.canvas.width,x=(g+t.bitmapFontSize+r.spacing.y)/t.canvas.width;this.texVertices.push(m,x,v,x,m,y,m,y,v,x,v,y),a+=d+o}}else c=Math.max(c,a),a=0,h-=1+s}this.textSize.set(Math.max(c,a)*n,Math.abs(h-1)*n)},t.prototype.setPositionFromOrientation=function(t){this.modelPosition.set(t.position.x+(t.orientation===G.Center?-this.textSize.x/2:0),t.position.y+(t.orientation===G.Center||t.orientation===G.RightCenter?this.textSize.y/2:t.orientation===G.RightUp?this.textSize.y:0))},t}(),K=function(){function t(t,e,i){this.gl=t,this.programManager=e,this.textureManager=i,this.posVertices=[],this.texVertices=[],this.lastTexture=null,this.tileset={width:0,tileWidth:0,tileHeight:0,texMargin:new _,texSpacing:new _,texWidth:0,texHeight:0,texCorrection:new _},this.projectionMatrix=T(),this.modelMatrix=T(),this.textureMatrix=T()}return t.prototype.render=function(t,e,i){var n,r,o,s;if(0===t.culledTiles.reduce((function(t,e){return t+e}),0))throw new Error(\"Nothing to render\");if(this.processTileset(t),this.generateVertices(t),0===this.posVertices.length)throw new Error(\"Nothing to render\");this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,new Float32Array(this.posVertices),this.gl.DYNAMIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,new Float32Array(this.texVertices),this.gl.DYNAMIC_DRAW),this.modelMatrix=D(this.modelMatrix),F(this.modelMatrix,this.modelMatrix,[t.renderPosition.x,t.renderPosition.y,0]),U(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),B(this.modelMatrix,this.modelMatrix,[t.tilemap.tileWidth*(t.flipHorizontal?-1:1),t.tilemap.tileHeight*(t.flipVertical?-1:1),1]),this.textureMatrix=D(this.textureMatrix),B(this.textureMatrix,this.textureMatrix,[this.tileset.tileWidth/t.tileset.image.naturalWidth,this.tileset.tileHeight/t.tileset.image.naturalHeight,1]),V(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.enable(this.gl.BLEND);var h=this.textureManager.getOrCreateTextureFromImage(t.tileset.image,t.smooth);if(this.lastTexture===h&&i===a.Tilemap||(this.gl.bindTexture(this.gl.TEXTURE_2D,h),this.gl.uniform1i(this.programManager.textureUniform,0),this.lastTexture=h),this.gl.uniform1i(this.programManager.renderTextureUniform,1),this.gl.uniform1f(this.programManager.alphaUniform,null!==(r=t.alpha)&&void 0!==r?r:1),this.gl.uniform1i(this.programManager.useTintColorUniform,t.tintColor?1:0),t.tintColor){var c=L(t.tintColor),l=c.r,u=c.g,p=c.b,d=c.a;this.gl.uniform4f(this.programManager.tintColorUniform,l,u,p,d)}if(this.gl.uniform1i(this.programManager.useMaskColorUniform,t.maskColor?1:0),t.maskColor){var f=L(t.maskColor);l=f.r,u=f.g,p=f.b,this.gl.uniform4f(this.programManager.maskColorUniform,l,u,p,null!==(o=t.alpha)&&void 0!==o?o:1),this.gl.uniform1f(this.programManager.maskColorMixUniform,null!==(s=t.maskColorMix)&&void 0!==s?s:1)}this.gl.drawArrays(this.gl.TRIANGLES,0,this.posVertices.length/2)},t.prototype.processTileset=function(t){var e,i,n,r,o,s,a,h=t.tileset;h.margin=null!==(e=h.margin)&&void 0!==e?e:new _,h.spacing=null!==(i=h.spacing)&&void 0!==i?i:new _,h.correction=null!==(n=h.correction)&&void 0!==n?n:new _,this.tileset.width=h.width,this.tileset.tileWidth=h.tileWidth+(null!==(r=h.margin.x)&&void 0!==r?r:0)+(null!==(o=h.spacing.x)&&void 0!==o?o:0),this.tileset.tileHeight=h.tileHeight+(null!==(s=h.margin.y)&&void 0!==s?s:0)+(null!==(a=h.spacing.y)&&void 0!==a?a:0),this.tileset.texMargin.set(h.margin.x/this.tileset.tileWidth,h.margin.y/this.tileset.tileHeight),this.tileset.texSpacing.set(h.spacing.x/this.tileset.tileWidth,h.spacing.y/this.tileset.tileHeight),this.tileset.texCorrection.set(h.correction.x/this.tileset.tileWidth,h.correction.y/this.tileset.tileHeight),this.tileset.texWidth=1-this.tileset.texMargin.x-this.tileset.texSpacing.x-2*this.tileset.texCorrection.x,this.tileset.texHeight=1-this.tileset.texMargin.y-this.tileset.texSpacing.y-2*this.tileset.texCorrection.y},t.prototype.generateVertices=function(t){var e=this,i=t.culledTiles,n=t.tilemap;this.posVertices=[],this.texVertices=[];var r=Math.floor(i.length/n.width);i.forEach((function(t,i){if(0!==t){var o=i%n.width-n.width/2,s=r/2-Math.floor(i/n.width);e.posVertices.push(o,s-1,o+1,s-1,o,s,o,s,o+1,s-1,o+1,s);var a=(t-1)%e.tileset.width+e.tileset.texMargin.x+e.tileset.texCorrection.x,h=Math.floor((t-1)/e.tileset.width)+e.tileset.texMargin.y+e.tileset.texCorrection.y;e.texVertices.push(a,h+e.tileset.texHeight,a+e.tileset.texWidth,h+e.tileset.texHeight,a,h,a,h,a+e.tileset.texWidth,h+e.tileset.texHeight,a+e.tileset.texWidth,h)}}))},t}(),Q=function(){function t(t,e,i){this.gl=t,this.programManager=e,this.textureManager=i,this.lastTexture=null,this.projectionMatrix=T(),this.modelMatrix=T(),this.textureMatrix=T(),this.posVertices=new Float32Array([-.5,-.5,-.5,.5,.5,-.5,.5,-.5,-.5,.5,.5,.5]),this.texVertices=new Float32Array([0,1,0,0,1,1,1,1,0,0,1,0])}return t.prototype.render=function(t,e,i){var n,r,o,s;i!==t.type&&(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.posVertices,this.gl.STATIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.texVertices,this.gl.STATIC_DRAW)),this.modelMatrix=D(this.modelMatrix),F(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),U(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),B(this.modelMatrix,this.modelMatrix,[t.width*(t.flipHorizontal?-1:1),t.height*(t.flipVertical?-1:1),1]),this.textureMatrix=D(this.textureMatrix),t.slice&&(F(this.textureMatrix,this.textureMatrix,[t.slice.x/t.video.videoWidth,t.slice.y/t.video.videoHeight,0]),B(this.textureMatrix,this.textureMatrix,[t.slice.width/t.video.videoWidth,t.slice.height/t.video.videoHeight,1])),V(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.enable(this.gl.BLEND);var a=this.textureManager.getOrCreateTextureFromVideo(t.video);if(this.lastTexture===a&&i===t.type||(this.gl.bindTexture(this.gl.TEXTURE_2D,a),this.gl.uniform1i(this.programManager.textureUniform,0),this.lastTexture=a),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,this.gl.RGBA,this.gl.UNSIGNED_BYTE,t.video),this.gl.uniform1i(this.programManager.renderTextureUniform,1),this.gl.uniform1f(this.programManager.alphaUniform,null!==(r=t.alpha)&&void 0!==r?r:1),this.gl.uniform1i(this.programManager.useTintColorUniform,t.tintColor?1:0),t.tintColor){var h=L(t.tintColor),c=h.r,l=h.g,u=h.b,p=h.a;this.gl.uniform4f(this.programManager.tintColorUniform,c,l,u,p)}if(this.gl.uniform1i(this.programManager.useMaskColorUniform,t.maskColor?1:0),t.maskColor){var d=L(t.maskColor);c=d.r,l=d.g,u=d.b,this.gl.uniform4f(this.programManager.maskColorUniform,c,l,u,null!==(o=t.alpha)&&void 0!==o?o:1),this.gl.uniform1f(this.programManager.maskColorMixUniform,null!==(s=t.maskColorMix)&&void 0!==s?s:1)}this.gl.drawArrays(this.gl.TRIANGLES,0,6)},t}(),$=function(){function t(t){this.gl=t}return t.prototype.createFromImage=function(t,e,i){var n=this;return void 0===e&&(e=!0),void 0===i&&(i=null),i=null!=i?i:this.gl.createTexture(),t.naturalWidth?this.createFromSource(t,i,e):t.addEventListener(\"load\",(function(){return n.createFromSource(t,i,e)})),i},t.prototype.createFromCanvas=function(t,e,i){return void 0===e&&(e=!0),void 0===i&&(i=null),i=null!=i?i:this.gl.createTexture(),this.createFromSource(t,i,e),i},t.prototype.createPixelTexture=function(){var t=this.gl.createTexture();return this.gl.bindTexture(this.gl.TEXTURE_2D,t),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,1,1,0,this.gl.RGBA,this.gl.UNSIGNED_BYTE,new Uint8Array([0,0,0,255])),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR),this.gl.bindTexture(this.gl.TEXTURE_2D,null),t},t.prototype.createFromSource=function(t,e,i){void 0===i&&(i=!0),this.gl.bindTexture(this.gl.TEXTURE_2D,e),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,this.gl.RGBA,this.gl.UNSIGNED_BYTE,t),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),!1===i?(this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.NEAREST),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.NEAREST)):(this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR)),this.gl.bindTexture(this.gl.TEXTURE_2D,null)},t}(),J=function(){function t(t){this.textureFactory=t,this.textures=new Map}return t.prototype.getOrCreateTextureFromImage=function(t,e){var i;return void 0===e&&(e=!0),null!==(i=this.textures.get(Symbol.for(t.src)))&&void 0!==i?i:this.createTextureFromImage(t,e)},t.prototype.createTextureFromImage=function(t,e){void 0===e&&(e=!0);var i=this.textureFactory.createFromImage(t,e);return this.textures.set(Symbol.for(t.src),i),i},t.prototype.getOrCreateTextureFromCanvas=function(t,e,i){var n;return void 0===i&&(i=!0),null!==(n=this.textures.get(Symbol.for(t)))&&void 0!==n?n:this.createTextureFromCanvas(t,e,i)},t.prototype.createTextureFromCanvas=function(t,e,i){void 0===i&&(i=!0);var n=this.textureFactory.createFromCanvas(e,i);return this.textures.set(Symbol.for(t),n),n},t.prototype.getOrCreateTextureFromVideo=function(t){var e;return null!==(e=this.textures.get(Symbol.for(t.src)))&&void 0!==e?e:this.createTextureFromVideo(t)},t.prototype.createTextureFromVideo=function(t){var e=this.textureFactory.createPixelTexture();return this.textures.set(Symbol.for(t.src),e),e},t}(),Z=function(){function t(t,e,i,n){this.gl=t,this.textureManager=i,this.renderers=n,e.loadProgram()}return t.prototype.render=function(t,e){try{this.renderers.get(t.type).render(t,e,this.lastRender),this.lastRender=t.type}catch(t){return}},t.prototype.clearCanvas=function(t){var e=L(t);this.gl.clearColor(e.r,e.g,e.b,e.a),this.gl.clear(this.gl.COLOR_BUFFER_BIT)},t.prototype.createTexture=function(t,e){void 0===e&&(e=!1),this.textureManager.createTextureFromImage(t,e)},t}(),tt=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,i){return t.set(e.x+i.x,e.y+i.y),t},t.subtract=function(t,e,i){return t.set(e.x-i.x,e.y-i.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,i){return t.set(e.x*i,e.y*i),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}(),et=function(){function t(t,e,i,n){this._position=new tt,this._center=new tt,this._width=0,this._height=0,this.set(t,e,i,n)}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e,i,n){this._position.set(t,e),this._width=i,this._height=n},t.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},t.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},t.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},t.prototype.contains=function(e){return e instanceof t?e.x1<=this.x1&&e.x>=this.x&&e.y1<=this.y1&&e.y>=this.y:e instanceof tt&&!(e.x<this.x||e.y<this.y||e.x>=this.x1||e.y>=this.y1)},t}(),it=function(t,e,i){return Math.min(i,Math.max(e,t))};!function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this._degrees=0,this._radians=0,this._direction=new tt,t?this.radians=t:e&&(this.degrees=e)}Object.defineProperty(t.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),t.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))}}();var nt,rt=function(){function t(){}return t.prototype.create=function(t){var e=t.shape,i=t.layer,n=t.updateCollisions,r=t.physics,o=t.position,s=t.rotation,a=t.group,h=t.onCollision;return{id:0,active:!0,layer:i,shape:e,updateCollisions:n,physics:r,position:null!=o?o:new tt,rotation:null!=s?s:0,group:a,onCollision:h}},t}(),ot=function(){function t(t,e){void 0===e&&(e=0),this.area=new et(0,0,0,0),this.depth=0,this.items=[],this.children=[],this.depth=e,this.resize(t)}return t.prototype.resize=function(t){this.clear(),this.area.copy(t)},t.prototype.clear=function(){this.items=[],this.children.forEach((function(t){return t.clear()})),this.children=[]},t.prototype.insert=function(t,e){0===this.children.length&&this.items.length>16&&this.depth<8&&this.split(),this.children.length>0?this.insertItemIntoChildren(t,e):this.items.push([t,e])},t.prototype.split=function(){var e=this,i=this.area.width/2,n=this.area.height/2;this.children=[new et(this.area.x,this.area.y,i,n),new et(this.area.x,this.area.y+n,i,n),new et(this.area.x+i,this.area.y+n,i,n),new et(this.area.x+i,this.area.y,i,n)].map((function(i){return new t(i,e.depth+1)})),this.items.forEach((function(t){return e.insertItemIntoChildren(t[0],t[1])})),this.items=[]},t.prototype.insertItemIntoChildren=function(t,e){this.getChildrenForArea(e).forEach((function(i){return i.insert(t,e)}))},t.prototype.retrieve=function(t){var e=[];return this.children.length>0?this.getChildrenForArea(t).forEach((function(i){return e.push.apply(e,i.retrieve(t))})):this.items.forEach((function(t){return e.push(t[0])})),e},t.prototype.getChildrenForArea=function(t){var e=[];return t.x<=this.area.center.x&&t.y<=this.area.center.y&&e.push(this.children[0]),t.x<=this.area.center.x&&t.y1>=this.area.center.y&&e.push(this.children[1]),t.x1>=this.area.center.x&&t.y1>=this.area.center.y&&e.push(this.children[2]),t.x1>=this.area.center.x&&t.y<=this.area.center.y&&e.push(this.children[3]),e},t}(),st=function(t,e,i,n){return Math.min((t-e)/i|0,n-1)},at=function(){function t(t){this.coordinates={x0:0,x1:0,y0:0,y1:0},this._subdivisions=1,this.resize(t)}return Object.defineProperty(t.prototype,\"subdivisions\",{get:function(){return this._subdivisions},set:function(t){this._subdivisions=it(t,1,20)},enumerable:!1,configurable:!0}),t.prototype.resize=function(t){this.area=t,this.cellWidth=Math.ceil(t.width/this._subdivisions),this.cellHeight=Math.ceil(t.height/this._subdivisions),this.itemsInCells=[];for(var e=0;e<this._subdivisions;e++){this.itemsInCells[e]=[];for(var i=0;i<this._subdivisions;i++)this.itemsInCells[e][i]=[]}},t.prototype.clear=function(){for(var t=0;t<this._subdivisions;t++)for(var e=0;e<this._subdivisions;e++)this.itemsInCells[t][e]=[]},t.prototype.insert=function(t,e){this.updateCoordinates(e);for(var i=this.coordinates.x0;i<=this.coordinates.x1;i++)for(var n=this.coordinates.y0;n<=this.coordinates.y1;n++)this.itemsInCells[i][n].push(t)},t.prototype.retrieve=function(t){var e=[];this.updateCoordinates(t);for(var i=this.coordinates.x0;i<=this.coordinates.x1;i++)for(var n=this.coordinates.y0;n<=this.coordinates.y1;n++)this.itemsInCells[i][n].forEach((function(t){return e.includes(t)?null:e.push(t)}));return e},t.prototype.updateCoordinates=function(t){this.coordinates.x0=st(t.x,this.area.x,this.cellWidth,this._subdivisions),this.coordinates.x1=st(t.x1,this.area.x,this.cellWidth,this._subdivisions),this.coordinates.y0=st(t.y,this.area.y,this.cellHeight,this._subdivisions),this.coordinates.y1=st(t.y1,this.area.y,this.cellHeight,this._subdivisions)},t}();!function(t){t[t.QuadTree=0]=\"QuadTree\",t[t.SpartialGrid=1]=\"SpartialGrid\"}(nt||(nt={}));var ht,ct=function(){function t(t,e,i,n){this.collisions=[],this.lastCollidersAmount=0,this.minArea=new tt,this.maxArea=new tt,this.newArea=new et(0,0,0,0),this.method=t,this.colliders=[],this.activeColliders=[],this.collisionMatrix=n,this.setupBroadPhaseResolver(null!=e?e:nt.QuadTree,i)}return t.prototype.setupBroadPhaseResolver=function(t,e){this.collisionArea=null!=e?e:new et(0,0,0,0),this.fixedCollisionArea=!!e,t===nt.SpartialGrid?this.broadPhaseResolver=new at(this.collisionArea):this.broadPhaseResolver=new ot(this.collisionArea)},t.prototype.addCollider=function(t){t.id=this.colliders.length,this.colliders.push(t)},t.prototype.getCollider=function(t){return this.colliders[t]},t.prototype.removeCollider=function(t){this.colliders.splice(t.id,1),this.colliders.forEach((function(t,e){return t.id=e}))},t.prototype.clearColliders=function(){this.colliders=[]},t.prototype.getCollisionsForCollider=function(t){return t.active?this.collisions.filter((function(e){return e.localCollider.id===t.id})):[]},t.prototype.getCollisionsForColliderAndLayer=function(t,e){return t.active?this.collisions.filter((function(i){return i.localCollider.id===t.id&&i.remoteCollider.layer===e})):[]},t.prototype.refreshCollisionsForCollider=function(t){this.colliders[t.id]&&t.active&&(this.collisions=this.collisions.filter((function(e){return e.localCollider.id!==t.id&&e.remoteCollider.id!==t.id})),this.updateShape(t),this.narrowPhase(t,this.broadPhase(t)))},t.prototype.resolve=function(){var t=this;this.collisions=[],0!==this.colliders.length&&(this.activeColliders=this.colliders.filter((function(t){return t.active})),this.broadPhaseResolver.clear(),this.activeColliders.forEach((function(e){t.updateShape(e)})),!1===this.fixedCollisionArea&&(this.updateNewArea(),!1===this.newArea.equals(this.collisionArea)&&(this.collisionArea.copy(this.newArea),this.broadPhaseResolver.resize(this.collisionArea))),this.checkForSpartialGridResize(),this.activeColliders.forEach((function(e){var i=e.id,n=e.shape.boundingBox;return t.broadPhaseResolver.insert(i,n)})),this.updateCollisions())},t.prototype.updateShape=function(t){t.shape.position=t.position,t.shape.rotation=t.rotation,t.shape.update()},t.prototype.updateNewArea=function(){var t=this;this.activeColliders.forEach((function(e){var i=e.shape.boundingBox;t.minArea.set(Math.min(i.x,t.minArea.x),Math.min(i.y,t.minArea.y)),t.maxArea.set(Math.max(i.x1,t.maxArea.x),Math.max(i.y1,t.maxArea.y))})),this.newArea.set(this.minArea.x,this.minArea.y,this.maxArea.x-this.minArea.x,this.maxArea.y-this.minArea.y)},t.prototype.checkForSpartialGridResize=function(){this.broadPhaseResolver instanceof at&&this.lastCollidersAmount!==this.activeColliders.length&&(this.broadPhaseResolver.subdivisions=1+(this.activeColliders.length/10|0),this.broadPhaseResolver.resize(this.collisionArea),this.lastCollidersAmount=this.activeColliders.length)},t.prototype.updateCollisions=function(){var t=this;this.activeColliders.filter((function(t){return t.updateCollisions})).forEach((function(e){return t.narrowPhase(e,t.broadPhase(e))}))},t.prototype.broadPhase=function(t){var e=this;return this.collisionMatrix?this.broadPhaseResolver.retrieve(t.shape.boundingBox).map((function(t){return e.colliders[t]})).filter((function(t){return t.active})).filter((function(i){return e.collisionMatrix.some((function(e){return e[0]===t.layer&&e[1]===i.layer||e[1]===t.layer&&e[0]===i.layer}))})):this.broadPhaseResolver.retrieve(t.shape.boundingBox).map((function(t){return e.colliders[t]})).filter((function(t){return t.active}))},t.prototype.narrowPhase=function(t,e){var i=this;e.filter((function(e){return!(t.group&&e.group&&e.group===t.group||t.id===e.id)})).forEach((function(e){if(!i.isResolved(t,e)){var n=i.method.getCollisionResolution(t.shape,e.shape);null!==n&&(i.collisions.push({localCollider:t,remoteCollider:e,resolution:n},{localCollider:e,remoteCollider:t,resolution:{direction:n.displacementDirection,displacementDirection:n.direction,penetration:n.penetration}}),t.onCollision&&t.onCollision(n))}}))},t.prototype.isResolved=function(t,e){for(var i=0,n=this.collisions;i<n.length;i++){var r=n[i];if(r.localCollider.id===t.id&&r.remoteCollider.id===e.id)return!0}return!1},t}();!function(t){t[t.Polygon=0]=\"Polygon\",t[t.Circumference=1]=\"Circumference\",t[t.Line=2]=\"Line\"}(ht||(ht={}));var lt,ut=function(){function t(t,e,i){this.AABBResolver=t,this.circumferenceAABBResolver=e,this.circumferenceResolver=i}return t.prototype.getCollisionResolution=function(t,e){return t.type===ht.Polygon&&e.type===ht.Polygon?this.AABBResolver.resolve(t,e):t.type===ht.Circumference&&e.type===ht.Polygon?this.circumferenceAABBResolver.resolve(t,e):t.type===ht.Polygon&&e.type===ht.Circumference?this.circumferenceAABBResolver.resolve(e,t,!0):t.type===ht.Circumference&&e.type===ht.Circumference?this.circumferenceResolver.resolve(t,e):null},t}();!function(t){t[t.AABB=0]=\"AABB\",t[t.SAT=1]=\"SAT\"}(lt||(lt={}));var pt=function(){function t(t,e){this.circumferenceResolver=t,this.satResolver=e}return t.prototype.getCollisionResolution=function(t,e){return t.type===ht.Circumference&&e.type===ht.Circumference?this.circumferenceResolver.resolve(t,e):this.satResolver.resolve(t,e)},t}(),dt=function(){function t(){this.direction=new tt,this.displacementDirection=new tt}return t.prototype.resolve=function(t,e){var i=t.boundingBox,n=e.boundingBox;return this.overlapX=Math.min(i.x1,n.x1)-Math.max(i.x,n.x),this.overlapY=Math.min(i.y1,n.y1)-Math.max(i.y,n.y),this.overlapX<0||this.overlapY<0?null:(this.checkOverlapForLines(i,n),this.direction.set(Math.sign(n.center.x-i.center.x),Math.sign(n.center.y-i.center.y)),this.preventContainment(i,n),this.overlapY<this.overlapX?(this.minOverlap=this.overlapY,this.displacementDirection.set(0,-this.direction.y)):(this.minOverlap=this.overlapX,this.displacementDirection.set(-this.direction.x,this.overlapY===this.overlapX?-this.direction.y:0)),tt.unit(this.displacementDirection,this.displacementDirection),{direction:tt.scale(new tt,this.displacementDirection,-1),displacementDirection:this.displacementDirection.clone(),penetration:this.minOverlap})},t.prototype.checkOverlapForLines=function(t,e){0!==t.width&&0!==e.width||0!==this.overlapX||(this.overlapX=Math.min(Math.abs(t.x-e.x),Math.abs(t.x1-e.x1))),0!==t.height&&0!==e.height||0!==this.overlapY||(this.overlapY=Math.min(Math.abs(t.y-e.y),Math.abs(t.y1-e.y1)))},t.prototype.preventContainment=function(t,e){if(this.overlapY>0&&(t.y1>e.y1&&t.y<e.y||t.y1<e.y1&&t.y>e.y)){var i=Math.abs(t.y-e.y),n=Math.abs(t.y1-e.y1);this.overlapY+=i<n?i:n}this.overlapX>0&&(t.x1>e.x1&&t.x<e.x||t.x1<e.x1&&t.x>e.x)&&(i=Math.abs(t.x-e.x),n=Math.abs(t.x1-e.x1),this.overlapX+=i<n?i:n)},t}(),ft=function(){function t(){this.closestPoint=new tt,this.distance=new tt,this.direction=new tt}return t.prototype.resolve=function(t,e,i){return void 0===i&&(i=!1),this.closestPoint.set(it(t.position.x,e.boundingBox.x,e.boundingBox.x1),it(t.position.y,e.boundingBox.y,e.boundingBox.y1)),tt.subtract(this.distance,this.closestPoint,t.position),this.distance.magnitude>t.radius?null:(tt.unit(this.direction,this.distance),{direction:i?tt.scale(new tt,this.direction,-1):this.direction.clone(),displacementDirection:i?this.direction.clone():tt.scale(new tt,this.direction,-1),penetration:t.radius-this.distance.magnitude})},t}(),gt=function(){function t(){this.distance=new tt,this.direction=new tt}return t.prototype.resolve=function(t,e){return tt.subtract(this.distance,e.position,t.position),this.distance.magnitude>t.radius+e.radius?null:(tt.unit(this.direction,this.distance),{direction:this.direction.clone(),displacementDirection:tt.scale(new tt,this.direction,-1),penetration:t.radius+e.radius-this.distance.magnitude})},t}(),mt=function(t,e){return mt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},mt(t,e)};function yt(t,e,i){if(i||2===arguments.length)for(var n,r=0,o=e.length;r<o;r++)!n&&r in e||(n||(n=Array.prototype.slice.call(e,0,r)),n[r]=e[r]);return t.concat(n||Array.prototype.slice.call(e))}\"function\"==typeof SuppressedError&&SuppressedError;var vt,xt=function(){function t(){this.projA={min:0,max:0},this.projB={min:0,max:0},this.smallestAxis=new tt,this.distance=new tt(1/0,1/0),this.cache=new tt}return t.prototype.resolve=function(t,e){var i=this;this.minOverlap=1/0,t.type===ht.Circumference?this.setCircumferenceAxis(t,e):e.type===ht.Circumference&&this.setCircumferenceAxis(e,t),this.axes=yt([],t.projectionAxes,!0),e.projectionAxes.forEach((function(t){return i.axes.some((function(e){return e.equals(t)}))?null:i.axes.push(t)}));for(var n=0;n<this.axes.length;n++){if(t.type===ht.Circumference?this.setCircumferenceVertices(t,this.axes[n]):e.type===ht.Circumference&&this.setCircumferenceVertices(e,this.axes[n]),this.projectShapeOntoAxis(this.projA,t,this.axes[n]),this.projectShapeOntoAxis(this.projB,e,this.axes[n]),this.currentOverlap=Math.min(this.projA.max,this.projB.max)-Math.max(this.projA.min,this.projB.min),this.currentOverlap<0)return null;if(this.invertAxis=!0,this.projA.max>this.projB.max&&this.projA.min<this.projB.min||this.projA.max<this.projB.max&&this.projA.min>this.projB.min){var r=Math.abs(this.projA.min-this.projB.min),o=Math.abs(this.projA.max-this.projB.max);r<o?this.currentOverlap+=r:(this.currentOverlap+=o,tt.scale(this.axes[n],this.axes[n],-1),this.invertAxis=!1)}this.currentOverlap<this.minOverlap&&(this.minOverlap=this.currentOverlap,this.smallestAxis.copy(this.axes[n]),this.invertAxis&&this.projA.max<this.projB.max&&tt.scale(this.smallestAxis,this.axes[n],-1))}return{direction:tt.scale(new tt,this.smallestAxis,-1),displacementDirection:this.smallestAxis.clone(),penetration:this.minOverlap}},t.prototype.projectShapeOntoAxis=function(t,e,i){return t.min=1/0,t.max=-1/0,e.vertices.forEach((function(e){t.min=Math.min(tt.dot(i,e),t.min),t.max=Math.max(tt.dot(i,e),t.max)})),t},t.prototype.setCircumferenceAxis=function(t,e){var i=this;this.distance.set(1/0,1/0),e.vertices.forEach((function(e){tt.subtract(i.cache,e,t.position),i.cache.magnitude<i.distance.magnitude&&i.distance.copy(i.cache)})),tt.unit(t.projectionAxes[0],this.distance)},t.prototype.setCircumferenceVertices=function(t,e){tt.add(t.vertices[0],t.position,tt.scale(this.cache,tt.unit(this.cache,e),-t.radius)),tt.add(t.vertices[1],t.position,tt.scale(this.cache,tt.unit(this.cache,e),t.radius))},t}(),bt=function(){function t(t,e,i,n){this.collisionManager=t,this.colliderFactory=e,this.rigidBodyManager=i,this.rigidBodyFactory=n}return t.prototype.addCollider=function(t){var e=this.colliderFactory.create(t);return this.collisionManager.addCollider(e),e},t.prototype.removeCollider=function(t){this.collisionManager.removeCollider(t)},t.prototype.getCollisionsForCollider=function(t){return this.collisionManager.getCollisionsForCollider(t)},t.prototype.getCollisionsForColliderAndLayer=function(t,e){return this.collisionManager.getCollisionsForColliderAndLayer(t,e)},t.prototype.addRigidBody=function(t){var e=this.rigidBodyFactory.create(t);return this.rigidBodyManager.addRigidBody(e),e},t.prototype.removeRigidBody=function(t){this.rigidBodyManager.removeRigidBody(t)},t.prototype.resolve=function(t){this.collisionManager.resolve(),this.rigidBodyManager.resolve(t)},t.prototype.clear=function(){this.collisionManager.clearColliders(),this.rigidBodyManager.clearRigidBodies()},t}(),Mt=function(){function t(){}return t.prototype.create=function(t){var e=t.colliderIds,i=t.type,n=t.gravity,r=t.position,o=t.velocity,s=t.onResolve;if(0===e.length)throw new Error(\"RigidBody needs at least one collider\");return{active:!0,colliderIds:e,type:i,gravity:null!=n?n:0,position:null!=r?r:new tt,velocity:null!=o?o:new tt,onResolve:s}},t}();!function(t){t[t.Static=0]=\"Static\",t[t.Dynamic=1]=\"Dynamic\",t[t.Kinematic=2]=\"Kinematic\"}(vt||(vt={}));var _t=[\"x\",\"y\"],wt=function(){function t(t){this.collisionManager=t,this.rigidBodies=[],this.activeRigidBodies=[],this.colliders=[],this.velocity=new tt,this.displacement=new tt,this.cacheDisplacement=0}return t.prototype.addRigidBody=function(t){this.rigidBodies.push(t)},t.prototype.removeRigidBody=function(t){var e=this.rigidBodies.indexOf(t);e>=0&&this.rigidBodies.splice(e,1)},t.prototype.clearRigidBodies=function(){this.rigidBodies=[]},t.prototype.resolve=function(t){var e=this;this.activeRigidBodies=this.rigidBodies.filter((function(t){return t.active})),this.colliders=this.activeRigidBodies.reduce((function(t,e){return yt(yt([],t,!0),e.colliderIds,!0)}),[]),this.activeRigidBodies.forEach((function(i){i.type===vt.Dynamic?e.dynamicUpdate(i,t):i.type===vt.Kinematic&&e.kinematicUpdate(i,t),i.onResolve&&i.onResolve(i)}))},t.prototype.dynamicUpdate=function(t,e){var i=this;this.applyGravity(t,e),_t.forEach((function(n){i.applyVelocity(t,e,n),i.obtainDisplacement(t,n),i.applyReposition(t,n)}))},t.prototype.kinematicUpdate=function(t,e){var i=this;tt.add(t.position,t.position,tt.scale(this.velocity,t.velocity,e)),t.colliderIds.map((function(t){return i.collisionManager.getCollider(t)})).forEach((function(t){tt.add(t.position,t.position,i.velocity),i.collisionManager.refreshCollisionsForCollider(t)}))},t.prototype.applyGravity=function(t,e){t.gravity>0&&(t.velocity.y-=t.gravity*e)},t.prototype.applyVelocity=function(t,e,i){var n=this;this.velocity[i]=t.velocity[i]*e,0!==this.velocity[i]&&(t.position[i]+=this.velocity[i],t.colliderIds.map((function(t){return n.collisionManager.getCollider(t)})).forEach((function(t){t.position[i]+=n.velocity[i],n.collisionManager.refreshCollisionsForCollider(t)})))},t.prototype.obtainDisplacement=function(t,e){var i=this;this.displacement[e]=0,this.getCollisions(t).forEach((function(t){i.cacheDisplacement=t.resolution.displacementDirection[e]*t.resolution.penetration,i.displacement[e]=Math.abs(i.displacement[e])>Math.abs(i.cacheDisplacement)?i.displacement[e]:i.cacheDisplacement}))},t.prototype.applyReposition=function(t,e){var i=this;0!==this.displacement[e]&&(t.position[e]+=this.displacement[e],t.colliderIds.map((function(t){return i.collisionManager.getCollider(t)})).forEach((function(t){t.position[e]+=i.displacement[e],i.collisionManager.refreshCollisionsForCollider(t)})),Math.sign(this.displacement[e])!==Math.sign(t.velocity[e])&&(t.velocity[e]=0))},t.prototype.getCollisions=function(t){var e=this;return t.colliderIds.map((function(t){return e.collisionManager.getCollider(t)})).filter((function(t){return t.active&&t.physics})).reduce((function(t,i){return t.push.apply(t,e.collisionManager.getCollisionsForCollider(i).filter((function(t){return t.remoteCollider.physics&&e.colliders.includes(t.remoteCollider.id)}))),t}),[])},t}(),Ct=function(){function t(t){this.radius=t,this.type=ht.Circumference,this.boundingBox=new et(0,0,0,0),this.vertices=[new tt,new tt],this.projectionAxes=[new tt],this._position=new tt}return Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),t.prototype.update=function(){this.updateBoundingBox()},t.prototype.updateBoundingBox=function(){this.boundingBox.set(this.position.x-this.radius,this.position.y-this.radius,2*this.radius,2*this.radius)},t}(),jt=function(){function t(t){this.vertexModel=t,this.type=ht.Polygon,this.vertices=[new tt,new tt],this.projectionAxes=[new tt],this.boundingBox=new et(0,0,0,0),this.rotation=0,this._position=new tt}return t.prototype.update=function(){this.updateVertices(),this.updateBoundingBox(),this.updateProjectionAxes()},Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),t.prototype.updateVertices=function(){for(var t=0;t<this.vertexModel.length;t++)this.vertices[t].set(this.vertexModel[t].x*Math.cos(this.rotation)-this.vertexModel[t].y*Math.sin(this.rotation)+this._position.x,this.vertexModel[t].x*Math.sin(this.rotation)+this.vertexModel[t].y*Math.cos(this.rotation)+this._position.y)},t.prototype.updateBoundingBox=function(){this.boundingBox.x=Math.min(this.vertices[0].x,this.vertices[1].x),this.boundingBox.y=Math.min(this.vertices[0].y,this.vertices[1].y),this.boundingBox.width=Math.max(this.vertices[0].x,this.vertices[1].x)-this.boundingBox.x,this.boundingBox.height=Math.max(this.vertices[0].y,this.vertices[1].y)-this.boundingBox.y},t.prototype.updateProjectionAxes=function(){tt.normal(this.projectionAxes[0],tt.subtract(this.projectionAxes[0],this.vertices[1],this.vertices[0]))},t}(),Ot=function(){function t(t){this.vertexModel=t,this.type=ht.Polygon,this.vertices=[],this.boundingBox=new et(0,0,0,0),this.rotation=0,this._projectionAxes=[],this._position=new tt,this.boxMinX=Number.MAX_SAFE_INTEGER,this.boxMinY=Number.MAX_SAFE_INTEGER,this.boxMaxX=-Number.MAX_SAFE_INTEGER,this.boxMaxY=-Number.MAX_SAFE_INTEGER;for(var e=0;e<this.vertexModel.length;e++)this.vertices.push(new tt),this._projectionAxes.push(new tt)}return Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"projectionAxes\",{get:function(){return this._projectionAxes},enumerable:!1,configurable:!0}),t.prototype.update=function(){this.updateVertices(),this.updateBoundingBox(),this.updateProjectionAxes()},t.prototype.updateVertices=function(){for(var t=0;t<this.vertexModel.length;t++)this.vertices[t].set(this.vertexModel[t].x*Math.cos(this.rotation)-this.vertexModel[t].y*Math.sin(this.rotation)+this._position.x,this.vertexModel[t].x*Math.sin(this.rotation)+this.vertexModel[t].y*Math.cos(this.rotation)+this._position.y)},t.prototype.updateBoundingBox=function(){var t=this;this.boxMinX=this.vertices[0].x,this.boxMinY=this.vertices[0].y,this.boxMaxX=this.vertices[0].x,this.boxMaxY=this.vertices[0].y,this.vertices.forEach((function(e){t.boxMinX=Math.min(e.x,t.boxMinX),t.boxMinY=Math.min(e.y,t.boxMinY),t.boxMaxX=Math.max(e.x,t.boxMaxX),t.boxMaxY=Math.max(e.y,t.boxMaxY)})),this.boundingBox.set(this.boxMinX,this.boxMinY,this.boxMaxX-this.boxMinX,this.boxMaxY-this.boxMinY)},t.prototype.updateProjectionAxes=function(){for(var t,e=0;e<this.vertices.length;e++)tt.normal(this._projectionAxes[e],tt.subtract(this._projectionAxes[e],null!==(t=this.vertices[e+1])&&void 0!==t?t:this.vertices[0],this.vertices[e]))},t}(),Pt=function(t){function e(e,i){var n=t.call(this,[new tt(-e/2,-i/2),new tt(-e/2,i/2),new tt(e/2,i/2),new tt(e/2,-i/2)])||this;return n.width=e,n.height=i,n._projectionAxes=[new tt,new tt],n}return function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Class extends value \"+String(e)+\" is not a constructor or null\");function i(){this.constructor=t}mt(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(e,t),e.prototype.updateSize=function(t,e){this.width=t,this.height=e,this.vertexModel[0].set(-t/2,-e/2),this.vertexModel[1].set(-t/2,e/2),this.vertexModel[2].set(t/2,e/2),this.vertexModel[3].set(t/2,-e/2)},e.prototype.updateProjectionAxes=function(){tt.unit(this.projectionAxes[0],tt.subtract(this.projectionAxes[0],this.vertices[1],this.vertices[0])),tt.normal(this.projectionAxes[1],this.projectionAxes[0])},e}(Ot),Rt=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,i){return t.set(e.x+i.x,e.y+i.y),t},t.subtract=function(t,e,i){return t.set(e.x-i.x,e.y-i.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,i){return t.set(e.x*i,e.y*i),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}();!function(){function t(t,e,i,n){this._position=new Rt,this._center=new Rt,this._width=0,this._height=0,this.set(t,e,i,n)}Object.defineProperty(t.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e,i,n){this._position.set(t,e),this._width=i,this._height=n},t.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},t.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},t.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},t.prototype.contains=function(e){return e instanceof t?e.x1<=this.x1&&e.x>=this.x&&e.y1<=this.y1&&e.y>=this.y:e instanceof Rt&&!(e.x<this.x||e.y<this.y||e.x>=this.x1||e.y>=this.y1)}}(),function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this._degrees=0,this._radians=0,this._direction=new Rt,t?this.radians=t:e&&(this.degrees=e)}Object.defineProperty(t.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),t.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))}}();var At,St=function(){function t(){var t=this;this.gamepads=new Map,this.eventHandler=function(e){\"gamepadconnected\"===e.type?t.gamepadConnected(e.gamepad):\"gamepaddisconnected\"===e.type&&t.gamepadDisconected(e.gamepad)},window.addEventListener(\"gamepadconnected\",this.eventHandler),window.addEventListener(\"gamepaddisconnected\",this.eventHandler)}return t.prototype.getGamepad=function(t){var e;return null!==(e=this.gamepads.get(t))&&void 0!==e?e:null},t.prototype.getGamepads=function(){return Array.from(this.gamepads.values())},t.prototype.gamepadConnected=function(t){this.gamepads.set(t.index,new Et),this.gamepads.get(t.index).updateFromGamepad(t)},t.prototype.gamepadDisconected=function(t){this.gamepads.delete(t.index)},t.prototype.update=function(){for(var t=0,e=this.getGamepadsFromBrowser();t<e.length;t++){var i=e[t];null!==i&&(!1===this.gamepads.has(i.index)?this.gamepadConnected(i):this.gamepads.get(i.index).updateFromGamepad(i))}},t.prototype.getGamepadsFromBrowser=function(){return navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads?navigator.webkitGetGamepads:[]},t}(),Et=function(){function t(){this.buttons=new Map,this.axes=new Map,this._dpadAxes=new Rt,this._leftStickAxes=new Rt,this._rightStickAxes=new Rt,this._vibrating=!1}return t.prototype.updateFromGamepad=function(t){var e=this;this._gamepad=t,t.buttons.forEach((function(t,i){return e.buttons.set(i,t.pressed)})),t.axes.forEach((function(t,i){return e.axes.set(i,t)}))},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._gamepad.id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"connected\",{get:function(){return this._gamepad.connected},enumerable:!1,configurable:!0}),t.prototype.getButtonPressed=function(t){return this.buttons.get(t)},t.prototype.getAxis=function(t){return this.axes.get(t)},Object.defineProperty(t.prototype,\"dpadAxes\",{get:function(){return this._dpadAxes.set(this.dpadRight?1:this.dpadLeft?-1:0,this.dpadUp?1:this.dpadDown?-1:0),this._dpadAxes},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftStickAxes\",{get:function(){return this._leftStickAxes.set(this.leftStickHorizontal,this.leftStickVertical),this._leftStickAxes},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightStickAxes\",{get:function(){return this._rightStickAxes.set(this.rightStickHorizontal,this.rightStickVertical),this._rightStickAxes},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dpadUp\",{get:function(){var t;return null!==(t=this.buttons.get(12))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dpadDown\",{get:function(){var t;return null!==(t=this.buttons.get(13))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dpadLeft\",{get:function(){var t;return null!==(t=this.buttons.get(14))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dpadRight\",{get:function(){var t;return null!==(t=this.buttons.get(15))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"bottomFace\",{get:function(){var t;return null!==(t=this.buttons.get(0))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightFace\",{get:function(){var t;return null!==(t=this.buttons.get(1))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftFace\",{get:function(){var t;return null!==(t=this.buttons.get(2))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"topFace\",{get:function(){var t;return null!==(t=this.buttons.get(3))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftShoulder\",{get:function(){var t;return null!==(t=this.buttons.get(4))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightShoulder\",{get:function(){var t;return null!==(t=this.buttons.get(5))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftTrigger\",{get:function(){var t;return null!==(t=this.buttons.get(6))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightTrigger\",{get:function(){var t;return null!==(t=this.buttons.get(7))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"back\",{get:function(){var t;return null!==(t=this.buttons.get(8))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"start\",{get:function(){var t;return null!==(t=this.buttons.get(9))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftStickButton\",{get:function(){var t;return null!==(t=this.buttons.get(10))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightStickButton\",{get:function(){var t;return null!==(t=this.buttons.get(11))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftStickHorizontal\",{get:function(){var t;return null!==(t=this.axes.get(0))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftStickVertical\",{get:function(){var t;return null!==(t=-this.axes.get(1))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightStickHorizontal\",{get:function(){var t;return null!==(t=this.axes.get(2))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightStickVertical\",{get:function(){var t;return null!==(t=-this.axes.get(3))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"anyButtonPressed\",{get:function(){var t;return null!==(t=Array.from(this.buttons.values()).find((function(t){return t})))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"vibrating\",{get:function(){return this._vibrating},enumerable:!1,configurable:!0}),t.prototype.vibrate=function(t,e,i,n){var r=this;void 0===t&&(t=200),void 0===e&&(e=.2),void 0===i&&(i=.2),void 0===n&&(n=0),this._gamepad.vibrationActuator&&(this._vibrating=!0,this._gamepad.vibrationActuator.playEffect(this._gamepad.vibrationActuator.type,{duration:t,weakMagnitude:e,strongMagnitude:i,startDelay:n}).catch((function(){return r._vibrating=!1})).finally((function(){return r._vibrating=!1})))},t}(),Tt=function(){function t(t,e,i,n){this.mouse=t,this.keyboard=e,this.gamepad=i,this.touch=n}return t.prototype.update=function(){this.mouse.update(),this.gamepad.update()},t}(),Dt=function(){function t(t){var e=this;this.pressedKeys=[],this.keyMap=new Map,this.eventHandler=function(t){if(\"keydown\"===t.type&&(e.keyMap.set(t.code,!0),e.pressedKeys.includes(t.code)||e.pressedKeys.push(t.code)),\"keyup\"===t.type){e.keyMap.set(t.code,!1);var i=e.pressedKeys.indexOf(t.code);-1!==i&&e.pressedKeys.splice(i,1)}},t.addEventListener(\"keydown\",this.eventHandler),t.addEventListener(\"keyup\",this.eventHandler)}return t.prototype.isPressed=function(t){var e;return null!==(e=this.keyMap.get(t))&&void 0!==e&&e},t.prototype.orPressed=function(t){var e=this;return t.reduce((function(t,i){var n;return t||null!==(n=e.keyMap.get(i))&&void 0!==n&&n}),!1)},t.prototype.andPressed=function(t){var e=this;return t.reduce((function(t,i){var n;return t&&null!==(n=e.keyMap.get(i))&&void 0!==n&&n}),!0)},t.prototype.isPressedReturn=function(t,e,i){return this.keyMap.get(t)?e:i},t.prototype.orPressedReturn=function(t,e,i){var n=this;return t.reduce((function(t,e){var i;return t||null!==(i=n.keyMap.get(e))&&void 0!==i&&i}),!1)?e:i},t.prototype.andPressedReturn=function(t,e,i){var n=this;return t.reduce((function(t,e){var i;return t&&null!==(i=n.keyMap.get(e))&&void 0!==i&&i}),!0)?e:i},t}(),Ft=function(){function t(t){this._leftButtonPressed=!1,this._scrollButtonPressed=!1,this._rightButtonPressed=!1,this._positionInViewport=new Rt,this._hasMoved=!1,this._wheelScroll=new Rt,this.lastPositionInViewport=new Rt,this.canvas=t,this.setup()}return Object.defineProperty(t.prototype,\"leftButtonPressed\",{get:function(){return this._leftButtonPressed},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"scrollButtonPressed\",{get:function(){return this._scrollButtonPressed},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightButtonPressed\",{get:function(){return this._rightButtonPressed},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"positionInViewport\",{get:function(){return this._positionInViewport},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"hasMoved\",{get:function(){return this._hasMoved},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"wheelScroll\",{get:function(){return this._wheelScroll},enumerable:!1,configurable:!0}),t.prototype.update=function(){!1===this._positionInViewport.equals(this.lastPositionInViewport)?(this._hasMoved=!0,this.lastPositionInViewport.copy(this._positionInViewport)):this._hasMoved=!1,this.wheelEvent?(this._wheelScroll.set(this.wheelEvent.deltaX,this.wheelEvent.deltaY),this.wheelEvent=void 0):this._wheelScroll.set(0,0)},t.prototype.setup=function(){var t=this;this.canvas.addEventListener(\"mousemove\",(function(e){return t.updatePosition(e)})),this.canvas.addEventListener(\"mousedown\",(function(e){return t.updateButtonDown(e)})),this.canvas.addEventListener(\"mouseup\",(function(e){return t.updateButtonUp(e)})),this.canvas.addEventListener(\"wheel\",(function(e){return t.handleWheelEvent(e)}))},t.prototype.updateButtonDown=function(t){this.canvas.focus(),t.preventDefault(),t.stopPropagation(),this._leftButtonPressed=0===t.button,this._scrollButtonPressed=1===t.button,this._rightButtonPressed=2===t.button},t.prototype.updateButtonUp=function(t){t.preventDefault(),t.stopPropagation(),this._leftButtonPressed=0!==t.button&&this._leftButtonPressed,this._scrollButtonPressed=1!==t.button&&this._scrollButtonPressed,this._rightButtonPressed=2!==t.button&&this._rightButtonPressed},t.prototype.updatePosition=function(t){t.preventDefault(),t.stopPropagation(),this._positionInViewport.set(t.offsetX/(this.canvas.clientWidth/this.canvas.width)-this.canvas.width/2,-t.offsetY/(this.canvas.clientHeight/this.canvas.height)+this.canvas.height/2)},t.prototype.handleWheelEvent=function(t){t.preventDefault(),t.stopPropagation(),this.wheelEvent=t},t}(),Bt=function(){function t(t){var e=this;this._touching=!1,this._interactions=[],this.eventHandler=function(t){\"touchstart\"===t.type&&(e._touching=!0,e.updatePosition(t)),\"touchmove\"===t.type&&e.updatePosition(t),\"touchend\"!==t.type&&\"touchcancel\"!==t.type||(e._touching=!1)},this.canvas=t,this.canvas.addEventListener(\"touchstart\",this.eventHandler),this.canvas.addEventListener(\"touchend\",this.eventHandler),this.canvas.addEventListener(\"touchcancel\",this.eventHandler),this.canvas.addEventListener(\"touchmove\",this.eventHandler)}return Object.defineProperty(t.prototype,\"touching\",{get:function(){return this._touching},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"interactions\",{get:function(){return this._interactions},enumerable:!1,configurable:!0}),t.prototype.updatePosition=function(t){if(t.preventDefault(),t.stopPropagation(),this._interactions=[],0!==t.targetTouches.length)for(var e=0;e<t.targetTouches.length;e++)this._interactions[e]={positionInViewport:new Rt((t.targetTouches[e].clientX-this.canvas.offsetLeft)/(this.canvas.clientWidth/this.canvas.width)-this.canvas.width/2,-(t.targetTouches[e].clientY-this.canvas.offsetTop)/(this.canvas.clientHeight/this.canvas.height)+this.canvas.height/2),radius:new Rt(t.targetTouches[e].radiusX,t.targetTouches[e].radiusY)}},t}();!function(t){t.Image=\"Image\",t.Audio=\"Audio\",t.Font=\"Font\",t.Video=\"Video\"}(At||(At={}));var Ut,It=function(){function t(t){this.renderManager=t,this.assets=[]}return t.prototype.getAssetsLoaded=function(){return this.assets.reduce((function(t,e){return t&&e.loaded}),!0)},t.prototype.loadImage=function(t,e){var i=this;void 0===e&&(e=!1);var n=new Image;n.crossOrigin=\"\",n.src=t;var r=this.createAsset(t,At.Image,n),o=function(){e&&i.renderManager.preloadTexture(n),r.loaded=!0};return n.naturalWidth?o():n.addEventListener(\"load\",o),n},t.prototype.loadAudio=function(t){var e=new Audio;e.src=t;var i=this.createAsset(t,At.Audio,e);return e.duration?i.loaded=!0:e.addEventListener(\"canplaythrough\",(function(){return i.loaded=!0})),e},t.prototype.loadFont=function(t,e){var i=new FontFace(t,\"url(\".concat(e,\")\")),n=this.createAsset(e,At.Font,i);return n.family=t,i.load().then((function(t){document.fonts.add(t),n.loaded=!0})),i},t.prototype.loadVideo=function(t){var e=document.createElement(\"video\");e.playsInline=!0,e.src=t;var i=this.createAsset(t,At.Video,e);return e.duration?i.loaded=!0:e.addEventListener(\"canplaythrough\",(function(){return i.loaded=!0})),e},t.prototype.getImage=function(t){var e;return null===(e=this.assets.find((function(e){return e.type===At.Image&&e.url===t})))||void 0===e?void 0:e.element},t.prototype.getAudio=function(t){var e;return null===(e=this.assets.find((function(e){return e.type===At.Audio&&e.url===t})))||void 0===e?void 0:e.element},t.prototype.getFont=function(t){var e;return null===(e=this.assets.find((function(e){return e.type===At.Font&&e.family===t})))||void 0===e?void 0:e.element},t.prototype.getVideo=function(t){var e;return null===(e=this.assets.find((function(e){return e.type===At.Video&&e.url===t})))||void 0===e?void 0:e.element},t.prototype.createAsset=function(t,e,i){var n={type:e,url:t,element:i,loaded:!1};return this.assets.push(n),n},t}(),Lt=function(t){function i(e){var i=t.call(this,e)||this;return i.name=\"AngryPixelException\",i}return e(i,t),i}(Error),Vt=function(){function t(t,e,i){if(this._canvas=null,!t)throw new Lt(\"containerNode cannot be empty or null.\");this.containerNode=t,this.gameWidth=e,this.gameHeight=i,this.setupCanvas()}return Object.defineProperty(t.prototype,\"canvas\",{get:function(){return this._canvas},enumerable:!1,configurable:!0}),t.prototype.setupCanvas=function(){this._canvas=document.createElement(\"canvas\"),this._canvas.id=\"angryPixelGameCanvas\",this._canvas.width=Math.floor(this.gameWidth),this._canvas.height=Math.floor(this.gameHeight),this.canvas.tabIndex=0,this._canvas.addEventListener(\"contextmenu\",(function(t){return t.preventDefault()})),this.containerNode.appendChild(this._canvas),this.canvas.focus()},t}(),kt=function(){function t(t){this.container=t,this.gameObjects=[],this.lastId=0}return t.prototype.addGameObject=function(t,e,n,r){var o=new t(this.container,++this.lastId,r,n);return this.gameObjects.push(o),o.dispatch(i.Init,e),o},t.prototype.findGameObjects=function(t){return t?this.gameObjects.filter((function(e){return e instanceof t})):r([],this.gameObjects,!0)},t.prototype.findGameObjectById=function(t){return this.gameObjects.find((function(e){return e.id===t}))},t.prototype.findGameObject=function(t){return\"string\"==typeof t?this.gameObjects.find((function(e){return e.name===t})):this.gameObjects.find((function(e){return e instanceof t}))},t.prototype.findGameObjectsByParent=function(t){return this.gameObjects.filter((function(e){return e.parent===t}))},t.prototype.findGameObjectByParent=function(t,e){return\"string\"==typeof e?this.gameObjects.find((function(i){return i.name===e&&i.parent===t})):this.gameObjects.find((function(i){return i instanceof e&&i.parent===t}))},t.prototype.findGameObjectsByTag=function(t){return this.gameObjects.filter((function(e){return e.tag===t}))},t.prototype.destroyAllGameObjects=function(t){var e=this;void 0===t&&(t=!1),this.gameObjects.filter((function(e){return t||!e.keep})).forEach((function(t){return e.destroy(t,!1)}))},t.prototype.destroyGameObject=function(t){this.destroy(t,!0)},t.prototype.destroy=function(t,e){var n=this.gameObjects.indexOf(t);if(-1!==n){var r=this.gameObjects.splice(n,1)[0];e&&this.destroyChildren(r),r.dispatch(i.Destroy)}},t.prototype.destroyChildren=function(t){var e=this;this.findGameObjectsByParent(t).forEach((function(t){return e.destroyGameObject(t)}))},t}(),Gt=function(){function t(t,e,n,r){this.timeManager=t,this.physicsManager=e,this.gameObjectManager=n,this.sceneManager=r,this.running=!1,this.gameObjects=[],this.components=[],this.changingScene=!1,this.sceneEvents=[i.Start,i.Update,i.StopGame],this.gameObjectEvents=[i.Start,i.Update]}return t.prototype.start=function(){this.startLoop(!0)},t.prototype.pause=function(){this.running=!1},t.prototype.resume=function(){this.startLoop(!1)},t.prototype.stop=function(){this.running=!1,this.dispatchFrameEvent(i.StopGame),this.physicsManager.clear()},t.prototype.startLoop=function(t){this.running||(this.running=!0,t&&this.sceneManager.loadOpeningScene(),this.asyncGameLoop(),this.timeManager.gameFramerate!==this.timeManager.physicsFramerate&&this.asyncPhysicsLoop())},t.prototype.gameLogicIteration=function(t){this.timeManager.updateForGame(t),this.sceneManager.pendingSceneToload()&&(this.sceneManager.loadPendingScene(),this.changingScene=!1),this.load(),this.dispatchFrameEvent(i.Start),this.dispatchFrameEvent(i.Update),this.dispatchFrameEvent(i.UpdateEngine),this.dispatchFrameEvent(i.UpdateTransform),this.timeManager.gameFramerate===this.timeManager.physicsFramerate&&(this.timeManager.updateForPhysics(t),this.physicsIteration()),this.sceneManager.pendingSceneToload()&&(this.changingScene=!0,this.sceneManager.unloadCurrentScene())},t.prototype.physicsIteration=function(){this.timeManager.timeScale<=0||this.changingScene||(this.dispatchFrameEvent(i.UpdatePhysics),this.dispatchFrameEvent(i.UpdateCollider),this.dispatchFrameEvent(i.UpdateTransform),this.physicsManager.resolve(this.timeManager.physicsDeltaTime))},t.prototype.asyncGameLoop=function(){var t=this;this.gameInterval=setInterval((function(){if(!t.running)return clearInterval(t.gameInterval);t.gameLogicIteration(process.uptime())}),1e3/this.timeManager.gameFramerate)},t.prototype.asyncPhysicsLoop=function(){var t=this;this.physicsInterval=setInterval((function(){if(!t.running)return clearInterval(t.physicsInterval);t.timeManager.updateForPhysics(process.uptime()),t.physicsIteration()}),1e3/this.timeManager.physicsFramerate)},t.prototype.load=function(){var t=this;this.loadedScene=this.sceneManager.getLoadedScene(),this.gameObjects=this.gameObjectManager.findGameObjects().filter((function(t){return t.active})),this.components=[],this.gameObjects.forEach((function(e){return e.getComponents().filter((function(t){return t.active})).forEach((function(e){return t.components.push(e)}))}))},t.prototype.dispatchFrameEvent=function(t){this.sceneEvents.includes(t)&&this.loadedScene.dispatch(t),this.gameObjectEvents.includes(t)&&this.gameObjects.forEach((function(e){e.active&&e.dispatch(t)})),this.components.forEach((function(e){e.active&&e.dispatch(t)}))},t}(),Wt=function(){function t(t,e){this.container=t,this.renderManager=e,this.scenes=new Map,this.sceneNamePendingToLoad=null}return t.prototype.addScene=function(t,e,n,r){var o=this;if(void 0===r&&(r=!1),this.scenes.has(e))throw new Lt(\"There is already a scene with the name '\".concat(e,\"'\"));this.scenes.set(e,(function(){var r=new t(o.container,e,o.container.getConstant(\"Game\"));return o.currentScene=r,r.dispatch(i.Init,n),r})),!r&&this.openingSceneName||(this.openingSceneName=e)},t.prototype.loadScene=function(t){if(!1===this.scenes.has(t))throw new Lt(\"Scene with name \".concat(t,\" does not exists\"));this.sceneNamePendingToLoad=t},t.prototype.getLoadedScene=function(){return this.currentScene},t.prototype.loadOpeningScene=function(){if(null===this.openingSceneName)throw new Lt(\"There is no opening scene\");this.scenes.get(this.openingSceneName)()},t.prototype.pendingSceneToload=function(){return null!==this.sceneNamePendingToLoad},t.prototype.loadPendingScene=function(){this.sceneNamePendingToLoad&&(this.scenes.get(this.sceneNamePendingToLoad)(),this.sceneNamePendingToLoad=null)},t.prototype.unloadCurrentScene=function(){this.currentScene&&(this.currentScene.dispatch(i.Destroy),this.currentScene=void 0)},t}(),Ht=[60,120,180,240],zt=function(){function t(t){if(this.minGameDeltatime=0,this.minPhysicsDeltaTime=0,this.gameFramerate=60,this.physicsFramerate=180,this.timeScale=1,this.browserDeltaTime=0,this.unscaledDeltaTime=0,this.unscaledPhysicsDeltaTime=0,this.maxDeltaTime=1/30,this.thenForGame=0,this.thenForPhysics=0,this.thenForBrowser=0,!Ht.includes(t))throw new Lt(\"Invalid Physics frame rate. Allowed: [\".concat(Ht.join(\", \"),\"]\"));this.physicsFramerate=t,this.minGameDeltatime=parseFloat((1/this.gameFramerate).toFixed(6)),this.minPhysicsDeltaTime=parseFloat((1/this.physicsFramerate).toFixed(6))}return Object.defineProperty(t.prototype,\"deltaTime\",{get:function(){return this.unscaledDeltaTime*this.timeScale},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"physicsDeltaTime\",{get:function(){return this.unscaledPhysicsDeltaTime*this.timeScale},enumerable:!1,configurable:!0}),t.prototype.updateForGame=function(t){this.unscaledDeltaTime=Math.min(Math.max(this.minGameDeltatime,t-this.thenForGame),this.maxDeltaTime),this.thenForGame=t},t.prototype.updateForBrowser=function(t){this.browserDeltaTime=Math.min(Math.max(0,t-this.thenForBrowser),this.maxDeltaTime),this.thenForBrowser=t},t.prototype.updateForPhysics=function(t){this.unscaledPhysicsDeltaTime=Math.min(Math.max(0,t-this.thenForPhysics),this.maxDeltaTime),this.thenForPhysics=t},t}(),Nt=function(t,e){if(t.addConstant(\"GameConfig\",e),t.add(\"TimeManager\",(function(){return new zt(e.physicsFramerate)})),t.add(\"GameObjectManager\",(function(){return new kt(t)})),t.add(\"PhysicsManager\",(function(){return function(t){var e=void 0===t?{}:t,i=e.collisionArea,n=e.collisionMatrix,r=e.collisionMethod,o=e.collisionBroadPhaseMethod,s=new gt,a=r===lt.AABB?new ut(new dt,new ft,s):new pt(s,new xt),h=new ct(a,o,i,n),c=new rt,l=new wt(h),u=new Mt;return new bt(h,c,l,u)}(e.collisions)})),e.headless)t.add(\"IterationManager\",(function(){return new Gt(t.getSingleton(\"TimeManager\"),t.getSingleton(\"PhysicsManager\"),t.getSingleton(\"GameObjectManager\"),t.getSingleton(\"SceneManager\"))}));else{t.add(\"DomManager\",(function(){return new Vt(e.containerNode,e.gameWidth,e.gameHeight)}));var i=t.getSingleton(\"DomManager\").canvas;t.add(\"RenderManager\",(function(){return function(t){var e=new j(t),i=e.gl,n=e.contextVersion,r=new A(i,n,new R(i,new S(i))),o=new J(new $(i)),s=new Z(i,r,o,new Map([[a.Sprite,new H(i,r,o)],[a.Text,new q(i,r,o,new O)],[a.Tilemap,new K(i,r,o)],[a.Geometric,new k(i,r)],[a.Mask,new W(i,r)],[a.Video,new Q(i,r,o)]]));return new C(s,new v(i))}(i)})),t.add(\"InputManager\",(function(){return function(t){return new Tt(new Ft(t),new Dt(t),new St,new Bt(t))}(i)})),t.add(\"AssetManager\",(function(){return new It(t.getSingleton(\"RenderManager\"))})),t.add(\"IterationManager\",(function(){return new h(t.getSingleton(\"TimeManager\"),t.getSingleton(\"PhysicsManager\"),t.getSingleton(\"RenderManager\"),t.getSingleton(\"InputManager\"),t.getSingleton(\"GameObjectManager\"),t.getSingleton(\"SceneManager\"),e.canvasColor)}))}t.add(\"SceneManager\",(function(){return new Wt(t,e.headless?void 0:t.getSingleton(\"RenderManager\"))}))},Yt=function(){function t(){this.instances=new Map,this.constructors=new Map,this.constants=new Map}return t.prototype.add=function(t,e){if(this.constructors.has(t))throw new Lt(\"There is already an object constructor with the name \".concat(t));this.constructors.set(t,e)},t.prototype.getSingleton=function(t){if(!1===this.constructors.has(t))throw new Lt(\"Invalid object constructor name: \".concat(t));return!1===this.instances.has(t)&&this.instances.set(t,this.constructors.get(t)()),this.instances.get(t)},t.prototype.getTranscient=function(t){if(!1===this.constructors.has(t))throw new Lt(\"Invalid object constructor name: \".concat(t));return this.constructors.get(t)()},t.prototype.addConstant=function(t,e){if(this.constants.has(t))throw new Lt(\"There is already a constant value with the name \".concat(t));this.constants.set(t,e)},t.prototype.getConstant=function(t){if(!1===this.constants.has(t))throw new Lt(\"Invalid constant name: \".concat(t));return this.constants.get(t)},t}(),Xt=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,i){return t.set(e.x+i.x,e.y+i.y),t},t.subtract=function(t,e,i){return t.set(e.x-i.x,e.y-i.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,i){return t.set(e.x*i,e.y*i),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}(),qt=function(){function t(t,e,i,n){this._position=new Xt,this._center=new Xt,this._width=0,this._height=0,this.set(t,e,i,n)}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e,i,n){this._position.set(t,e),this._width=i,this._height=n},t.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},t.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},t.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},t.prototype.contains=function(e){return e instanceof t?e.x1<=this.x1&&e.x>=this.x&&e.y1<=this.y1&&e.y>=this.y:e instanceof Xt&&!(e.x<this.x||e.y<this.y||e.x>=this.x1||e.y>=this.y1)},t}(),Kt=function(t,e,i){return t>=e&&t<=i},Qt=function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this._degrees=0,this._radians=0,this._direction=new Xt,t?this.radians=t:e&&(this.degrees=e)}return Object.defineProperty(t.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),t.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))},t}(),$t={containerNode:void 0,gameWidth:320,gameHeight:180,debugEnabled:!1,canvasColor:\"#000000\",physicsFramerate:180,headless:!1,spriteDefaultScale:new Xt(1,1),collisions:{collisionMethod:lt.SAT,collisionBroadPhaseMethod:nt.SpartialGrid}},Jt=function(){function t(t){this._config=n(n({},$t),t),this._config.collisions=n(n({},$t.collisions),t.collisions),this.container=new Yt,this.container.addConstant(\"Game\",this),this.setupManagers()}return t.prototype.setupManagers=function(){Nt(this.container,this._config),this.sceneManager=this.container.getSingleton(\"SceneManager\"),this.iterationManager=this.container.getSingleton(\"IterationManager\")},Object.defineProperty(t.prototype,\"config\",{get:function(){return this._config},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"running\",{get:function(){return this.iterationManager.running},enumerable:!1,configurable:!0}),t.prototype.addScene=function(t,e,i,n){this.sceneManager.addScene(t,e,\"object\"==typeof i?i:void 0,\"boolean\"==typeof i?i:null!=n&&n)},t.prototype.run=function(){this.iterationManager.start()},t.prototype.stop=function(){this.iterationManager.stop()},t.prototype.pause=function(){this.iterationManager.pause()},t.prototype.resume=function(){this.iterationManager.resume()},t}(),Zt=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.allowMultiple=!1,e.parentScale=!0,e.parentRotation=!0,e._position=new Xt,e._scale=new Xt(1,1),e._rotation=new Qt,e._innerPosition=new Xt,e._parent=null,e.cache=new Xt,e.lastParentRadians=0,e.lastPosition=new Xt,e.scaledInnerPosition=new Xt,e}return e(i,t),Object.defineProperty(i.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"scale\",{get:function(){return this._scale},set:function(t){this._scale.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"rotation\",{get:function(){return this._rotation},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"direction\",{get:function(){return this._rotation.direction},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"innerPosition\",{get:function(){return this._innerPosition},set:function(t){this._innerPosition.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"parent\",{get:function(){return this._parent},set:function(t){this._parent=t,null!==this._parent&&Xt.subtract(this._innerPosition,this._position,this._parent.position)},enumerable:!1,configurable:!0}),i.prototype.update=function(){null!==this._parent&&this.setPositionFromParent(),this.lastPosition.copy(this._position)},i.prototype.setPositionFromParent=function(){this._innerPosition.magnitude>0?(0!==this._parent.rotation.radians&&this.lastParentRadians!==this._parent.rotation.radians&&(this.translateInnerPosition(),this.lastParentRadians=this._parent.rotation.radians),this.parentScale?(this.updateScaledInnerPosition(),Xt.add(this._position,this._parent.position,this.scaledInnerPosition)):Xt.add(this._position,this._parent.position,this._innerPosition)):this._position.copy(this._parent.position),this._rotation.radians=this.parentRotation?this._parent.rotation.radians+this._rotation.radians:this._rotation.radians,this.parentScale&&this._scale.copy(this.parent._scale)},i.prototype.translateInnerPosition=function(){var t=Math.atan2(this._innerPosition.y,this._innerPosition.x)+(this._parent.rotation.radians-this.lastParentRadians);this.cache.set(Math.cos(t),Math.sin(t)),Xt.scale(this._innerPosition,this.cache,this._innerPosition.magnitude)},i.prototype.updateScaledInnerPosition=function(){this.scaledInnerPosition.set(this._innerPosition.x*this._parent.scale.x,this._innerPosition.y*this._parent.scale.y)},i}(f),te=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.renderer=null,e.colliders=[],e.physics=!0,e.activateColliders=!1,e}return e(i,t),i.prototype.update=function(){this.activateColliders&&(this.colliders.forEach((function(t){return t.active=!0})),this.activateColliders=!1),this.updateRealSize(),this.updatePosition(),this.updateColliders()},i.prototype.collidesWithLayer=function(t){for(var e=0,i=this.colliders;e<i.length;e++){var n=i[e];if(this.physicsManager.getCollisionsForColliderAndLayer(n,t).length>0)return!0}return!1},i.prototype.collidesWithLayers=function(t,e){void 0===e&&(e=\"or\");for(var i=0,n=0,r=this.colliders;n<r.length;n++)for(var o=r[n],s=0,a=this.physicsManager.getCollisionsForCollider(o);s<a.length;s++){var h=a[s];if(t.includes(h.remoteCollider.layer)){if(\"or\"===e)return!0;i++}}return\"and\"===e&&i===t.length},i.prototype.getCollisionWithLayer=function(t){for(var e=0,i=this.colliders;e<i.length;e++){var n=i[e],r=this.physicsManager.getCollisionsForColliderAndLayer(n,t);if(r.length>0)return this.createCollisionData(r[0])}return null},i.prototype.getCollisionsWithLayer=function(t){for(var e=this,i=[],n=0,r=this.colliders;n<r.length;n++){var o=r[n];this.physicsManager.getCollisionsForColliderAndLayer(o,t).forEach((function(t){return i.push(e.createCollisionData(t))}))}return i},i.prototype.getCollisionsWithLayers=function(t){for(var e=[],i=0,n=this.colliders;i<n.length;i++)for(var r=n[i],o=0,s=this.physicsManager.getCollisionsForCollider(r);o<s.length;o++){var a=s[o];t.includes(a.remoteCollider.layer)&&e.push(this.createCollisionData(a))}return e},i.prototype.createCollisionData=function(t){return{gameObject:this.gameObjectManager.findGameObjectById(Number(t.remoteCollider.group)),collider:t.remoteCollider,resolution:t.resolution,getGameObject:function(){return this.gameObject},localCollider:t.localCollider}},i.prototype.onActiveChange=function(){var t=this;this.renderer&&(this.renderer.active=this.active),this.active?this.activateColliders=!0:this.colliders.forEach((function(e){return e.active=t.active}))},i.prototype.onDestroy=function(){var t=this;this.colliders.forEach((function(e){return t.physicsManager.removeCollider(e)}))},i}(p),ee=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.allowMultiple=!1,e}return e(i,t),Object.defineProperty(i.prototype,\"velocity\",{get:function(){return this.rigidBody.velocity},set:function(t){this.rigidBody.velocity.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"gravity\",{get:function(){return this.rigidBody.gravity},set:function(t){this.rigidBody.gravity=Math.abs(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"rigidBodyType\",{get:function(){return this.rigidBody.type},enumerable:!1,configurable:!0}),i.prototype.init=function(t){var e,i=t.rigidBodyType,n=t.gravity;if(0===this.getColliderIds().length)throw new Lt(\"RigidBody needs at least one Collider with physics\");this.rigidBody=this.physicsManager.addRigidBody({type:i,colliderIds:this.getColliderIds(),gravity:null!==(e=Math.abs(n))&&void 0!==e?e:0,velocity:new Xt,position:new Xt})},i.prototype.update=function(){if(0===this.getColliderIds().length)throw new Lt(\"RigidBody needs at least one Collider with physics\");this.rigidBody.colliderIds=this.getColliderIds(),this.rigidBody.position=this.gameObject.transform.parent?this.gameObject.transform.innerPosition:this.gameObject.transform.position},i.prototype.getColliderIds=function(){return this.gameObject.getComponents().filter((function(t){return t instanceof te&&t.physics})).reduce((function(t,e){return r(r([],t,!0),e.colliders.map((function(t){return t.id})),!0)}),[])},i.prototype.onActiveChange=function(){this.rigidBody.active=this.active},i.prototype.onDestroy=function(){this.physicsManager.removeRigidBody(this.rigidBody)},i}(u),ie=\"Default\",ne=function(t){function n(e,i,n,r){void 0===n&&(n=\"\"),void 0===r&&(r=null);var o=t.call(this,e)||this;return o.layer=\"Default\",o.ui=!1,o.keep=!1,o._parent=null,o._active=!0,o.components=[],o.activeComponentsCache=[],o.activeChildrenCache=[],o.id=i,o.name=n,o.addComponent(Zt),r&&(o.transform.position=r.transform.position,o.parent=r),o}return e(n,t),Object.defineProperty(n.prototype,\"active\",{get:function(){return this._active},set:function(t){this._active!==t&&(this._active=t,this.updateComponentsActiveStatus(),this.updateChildrenActiveStatus(),this.onActiveChange())},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,\"parent\",{get:function(){return this._parent},set:function(t){this._parent=t,this.transform.parent=null!==t?t.transform:null},enumerable:!1,configurable:!0}),n.prototype.updateComponentsActiveStatus=function(){var t=this;!1===this.active&&(this.activeComponentsCache=this.components.filter((function(t){return t.active}))),this.activeComponentsCache.forEach((function(e){return e.active=t.active})),!0===this.active&&(this.activeComponentsCache=[])},n.prototype.updateChildrenActiveStatus=function(){var t=this;!1===this.active&&(this.activeChildrenCache=this.getChildren().filter((function(t){return t.active}))),this.activeChildrenCache.forEach((function(e){return e.active=t.active})),!0===this.active&&(this.activeChildrenCache=[])},Object.defineProperty(n.prototype,\"transform\",{get:function(){return this.getComponent(Zt)},enumerable:!1,configurable:!0}),Object.defineProperty(n.prototype,\"rigidBody\",{get:function(){return this.getComponent(ee)},enumerable:!1,configurable:!0}),n.prototype.onActiveChange=function(){},n.prototype.getCurrentScene=function(){return this.sceneManager.getLoadedScene()},n.prototype.addComponent=function(t,e,n){var r=\"string\"==typeof e?void 0:e,o=\"string\"==typeof e?e:n,s=new t(this.container,this,o);return this.checkMultipleComponent(s,t),this.components.push(s),s.dispatch(i.Init,r),s},n.prototype.checkMultipleComponent=function(t,e){if(!1===t.allowMultiple&&this.hasComponent(e))throw new Lt(\"GameObject only allows one component of type \".concat(e.name))},n.prototype.getComponents=function(t){return t?this.components.filter((function(e){return e instanceof t})):this.components},n.prototype.getComponent=function(t){return\"string\"==typeof t?this.components.find((function(e){return e.name===t})):this.components.find((function(e){return e instanceof t}))},n.prototype.hasComponent=function(t){return\"string\"==typeof t?this.components.some((function(e){return e.name===t})):this.components.some((function(e){return e instanceof t}))},n.prototype.removeComponent=function(t){var e=this.components.indexOf(t);-1!==e&&this.components.splice(e,1)[0].dispatch(i.Destroy)},n.prototype.addChild=function(t,e,i){var n=this.gameObjectManager.addGameObject(t,e,this,i);return n.transform.innerPosition.set(0,0),n.transform.position.copy(this.transform.position),n},n.prototype.getChildren=function(){return this.gameObjectManager.findGameObjectsByParent(this)},n.prototype.getChild=function(t){return this.gameObjectManager.findGameObjectByParent(this,t)},n.prototype.destroyChildren=function(){var t=this;this.gameObjectManager.findGameObjectsByParent(this).forEach((function(e){return t.gameObjectManager.destroyGameObject(e)}))},n.prototype._destroy=function(){var t=this;this.destroyComponents(),Object.keys(this).forEach((function(e){return delete t[e]}))},n.prototype.destroyComponents=function(){for(var t=0;t<this.components.length;t++)this.components[t].dispatch(i.Destroy),delete this.components[t];this.components=[]},n.prototype._stopGame=function(){},n}(c),re=[\"Default\"],oe=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.allowMultiple=!1,e.viewportRect=new qt(0,0,0,0),e.worldSpaceRect=new qt(0,0,0,0),e.depth=0,e.layers=re,e._zoom=1,e}return e(i,t),Object.defineProperty(i.prototype,\"zoom\",{get:function(){return this._zoom},set:function(t){if(this.zoom<=0)throw new Lt(\"zoom must be greather than 0\");this._zoom=t},enumerable:!1,configurable:!0}),i.prototype.addLayer=function(t){this.layers.push(t)},i.prototype.init=function(){this.canvas=this.domManager.canvas,this.cameraData={position:new Xt,layers:[],depth:1}},i.prototype.update=function(){this.updateViewportRect(),this.updateWorldSpaceRect(),this.updateCameraData()},i.prototype.updateViewportRect=function(){this.viewportRect.x=-this.canvas.width/2,this.viewportRect.y=-this.canvas.height/2,this.viewportRect.width=this.canvas.width,this.viewportRect.height=this.canvas.height},i.prototype.updateWorldSpaceRect=function(){this.worldSpaceRect.x=(this.gameObject.transform.position.x-this.viewportRect.width/2)/this._zoom,this.worldSpaceRect.y=(this.gameObject.transform.position.y-this.viewportRect.height/2)/this._zoom,this.worldSpaceRect.width=this.viewportRect.width/this._zoom,this.worldSpaceRect.height=this.viewportRect.height/this._zoom},i.prototype.updateCameraData=function(){this.cameraData.position.copy(this.gameObject.transform.position),this.cameraData.depth=this.depth,this.cameraData.layers=this.layers,this.cameraData.zoom=this._zoom,this.renderManager.addCameraData(this.cameraData)},i}(m),se=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return e(i,t),i.prototype.init=function(){this.transform.position.set(0,0),this.camera=this.addComponent(oe)},Object.defineProperty(i.prototype,\"layers\",{get:function(){return this.camera.layers},set:function(t){this.camera.layers=t},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"depth\",{get:function(){return this.camera.depth},set:function(t){this.camera.depth=t},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"zoom\",{get:function(){return this.camera.zoom},set:function(t){this.camera.zoom=t},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"worldSpaceRect\",{get:function(){return this.camera.worldSpaceRect},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"viewportRect\",{get:function(){return this.camera.viewportRect},enumerable:!1,configurable:!0}),i.prototype.addLayer=function(t){this.camera.layers.push(t)},i}(ne),ae=function(t){function i(e,i,n){var r=t.call(this,e)||this;return r.name=i,r.game=n,r.game.config.headless||r.addGameObject(se),r}return e(i,t),Object.defineProperty(i.prototype,\"gameCamera\",{get:function(){return this.findGameObject(se)},enumerable:!1,configurable:!0}),i.prototype._destroy=function(){var t=this;this.gameObjectManager.destroyAllGameObjects(!1),Object.keys(this).forEach((function(e){return delete t[e]}))},i.prototype._stopGame=function(){var t=this;this.gameObjectManager.destroyAllGameObjects(!0),Object.keys(this).forEach((function(e){return delete t[e]}))},i}(c),he=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.debug=!1,e.offsetX=0,e.offsetY=0,e.scaledVertexModel=[],e.scaledOffset=new Xt,e.scaledPosition=new Xt,e.finalRotation=0,e.innerPosition=new Xt,e}return e(i,t),i.prototype.init=function(t){var e,i,n,r,o,s;if(this.gameConfig.collisions.collisionMethod!==lt.SAT)throw new Lt(\"Polygon Colliders need SAT collision method.\");if(t.vertexModel.length<3)throw new Lt(\"Polygon Collider needs at least 3 vertices.\");this.debug=(null!==(e=t.debug)&&void 0!==e?e:this.debug)&&this.gameConfig.debugEnabled,this.vertexModel=t.vertexModel,this.offsetX=null!==(i=t.offsetX)&&void 0!==i?i:this.offsetX,this.offsetY=null!==(n=t.offsetY)&&void 0!==n?n:this.offsetY,this.physics=null!==(r=t.physics)&&void 0!==r?r:this.physics,this.rotation=null!==(o=t.rotation)&&void 0!==o?o:new Qt,this.layer=t.layer;for(var a=0;a<this.vertexModel.length;a++)this.scaledVertexModel.push(new Xt);this.colliders.push(this.physicsManager.addCollider({layer:null!==(s=this.layer)&&void 0!==s?s:this.gameObject.layer,position:this.gameObject.transform.position.clone(),rotation:this.rotation.radians,shape:new Ot(this.scaledVertexModel),updateCollisions:!0,physics:this.physics,group:this.gameObject.id.toString()})),this.debug&&(this.renderer=this.gameObject.addComponent(ce,{collider:this.colliders[0]}))},i.prototype.updateRealSize=function(){var t=this;this.vertexModel.forEach((function(e,i){return t.scaledVertexModel[i].set(e.x*t.gameObject.transform.scale.x,e.y*t.gameObject.transform.scale.y)})),this.scaledOffset.x=this.offsetX*this.gameObject.transform.scale.x,this.scaledOffset.y=this.offsetY*this.gameObject.transform.scale.y,this.finalRotation=this.gameObject.transform.rotation.radians+this.rotation.radians},i.prototype.updatePosition=function(){Xt.add(this.scaledPosition,this.gameObject.transform.position,this.scaledOffset),0!==this.gameObject.transform.rotation.radians&&this.translate()},i.prototype.translate=function(){Xt.subtract(this.innerPosition,this.scaledPosition,this.gameObject.transform.position);var t=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.scaledPosition.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(t),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(t))},i.prototype.updateColliders=function(){var t;this.colliders[0].layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.colliders[0].position.copy(this.scaledPosition),this.colliders[0].rotation=this.finalRotation,this.colliders[0].shape.vertexModel=this.scaledVertexModel},i}(te),ce=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return e(i,t),i.prototype.init=function(t){var e=t.collider;this.renderData={type:a.Geometric,location:s.WorldSpace,layer:this.gameObject.layer,position:new Xt,shape:o.Polygon,color:\"#00FF00\"},this.collider=e},i.prototype.update=function(){this.renderData.layer=this.gameObject.layer,this.renderData.position.copy(this.collider.position),this.renderData.rotation=this.collider.shape.rotation,this.renderData.vertexModel=this.collider.shape.vertexModel,this.renderManager.addRenderData(this.renderData)},i}(y),le=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.debug=!1,e.offsetX=0,e.offsetY=0,e.realWidth=0,e.realHeight=0,e.realOffset=new Xt,e.realPosition=new Xt,e.realRotation=0,e.applyRotation=e.gameConfig.collisions.collisionMethod===lt.SAT,e.innerPosition=new Xt,e}return e(i,t),i.prototype.init=function(t){var e,i,n,r,o,s;this.width=t.width,this.height=t.height,this.offsetX=null!==(e=t.offsetX)&&void 0!==e?e:this.offsetX,this.offsetY=null!==(i=t.offsetY)&&void 0!==i?i:this.offsetY,this.physics=null!==(n=t.physics)&&void 0!==n?n:this.physics,this.debug=(null!==(r=t.debug)&&void 0!==r?r:this.debug)&&this.gameConfig.debugEnabled,this.rotation=null!==(o=t.rotation)&&void 0!==o?o:new Qt,this.layer=t.layer,this.colliders.push(this.physicsManager.addCollider({layer:null!==(s=this.layer)&&void 0!==s?s:this.gameObject.layer,position:this.gameObject.transform.position.clone(),rotation:this.rotation.radians,shape:new Pt(this.realWidth,this.realHeight),updateCollisions:!0,physics:this.physics,group:this.gameObject.id.toString()})),this.debug&&(this.renderer=this.gameObject.addComponent(ce,{collider:this.colliders[0]}))},i.prototype.updateRealSize=function(){this.realWidth=this.width*Math.abs(this.gameObject.transform.scale.x),this.realHeight=this.height*Math.abs(this.gameObject.transform.scale.y),this.realOffset.x=this.offsetX*this.gameObject.transform.scale.x,this.realOffset.y=this.offsetY*this.gameObject.transform.scale.y,this.realRotation=this.applyRotation?this.gameObject.transform.rotation.radians+this.rotation.radians:0},i.prototype.updatePosition=function(){Xt.add(this.realPosition,this.gameObject.transform.position,this.realOffset),0!==this.gameObject.transform.rotation.radians&&this.translate()},i.prototype.translate=function(){Xt.subtract(this.innerPosition,this.realPosition,this.gameObject.transform.position);var t=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.realPosition.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(t),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(t))},i.prototype.updateColliders=function(){var t;this.colliders[0].layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.colliders[0].position.copy(this.realPosition),this.colliders[0].rotation=this.realRotation,this.colliders[0].shape.updateSize(this.realWidth,this.realHeight)},i}(te),ue=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.debug=!1,e.offsetX=0,e.offsetY=0,e.realRadius=0,e.realOffset=new Xt,e.realPosition=new Xt,e.innerPosition=new Xt,e}return e(i,t),i.prototype.init=function(t){var e,i,n,r,o;this.radius=t.radius,this.offsetX=null!==(e=t.offsetX)&&void 0!==e?e:this.offsetX,this.offsetY=null!==(i=t.offsetY)&&void 0!==i?i:this.offsetY,this.physics=null!==(n=t.physics)&&void 0!==n?n:this.physics,this.debug=(null!==(r=t.debug)&&void 0!==r?r:this.debug)&&this.gameConfig.debugEnabled,this.layer=t.layer,this.colliders.push(this.physicsManager.addCollider({layer:null!==(o=this.layer)&&void 0!==o?o:this.gameObject.layer,position:this.gameObject.transform.position.clone(),shape:new Ct(this.radius),updateCollisions:!0,physics:this.physics,group:this.gameObject.id.toString()})),this.debug&&(this.renderer=this.gameObject.addComponent(pe,{collider:this.colliders[0]}))},i.prototype.updateRealSize=function(){this.realRadius=this.radius*Math.max(Math.abs(this.gameObject.transform.scale.x),Math.abs(this.gameObject.transform.scale.y)),this.realOffset.x=this.offsetX*this.gameObject.transform.scale.x,this.realOffset.y=this.offsetY*this.gameObject.transform.scale.y},i.prototype.updatePosition=function(){Xt.add(this.realPosition,this.gameObject.transform.position,this.realOffset),0!==this.gameObject.transform.rotation.radians&&this.translate()},i.prototype.translate=function(){Xt.subtract(this.innerPosition,this.realPosition,this.gameObject.transform.position);var t=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.realPosition.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(t),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(t))},i.prototype.updateColliders=function(){var t;this.colliders[0].layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.colliders[0].position.copy(this.realPosition),this.colliders[0].shape.radius=this.realRadius},i}(te),pe=function(t){function i(){return null!==t&&t.apply(this,arguments)||this}return e(i,t),i.prototype.init=function(t){var e=t.collider;this.renderData={type:a.Geometric,location:s.WorldSpace,layer:this.gameObject.layer,position:new Xt,shape:o.Circumference,color:\"#00FF00\"},this.collider=e},i.prototype.update=function(){this.renderData.layer=this.gameObject.layer,this.renderData.position.copy(this.collider.position),this.renderData.radius=this.collider.shape.radius,this.renderManager.addRenderData(this.renderData)},i}(y),de=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.debug=!1,e.position=new Xt,e}return e(i,t),i.prototype.init=function(t){var e,i;this.tilemapRenderer=t.tilemapRenderer,this.layer=t.layer,this.debug=(null!==(e=t.debug)&&void 0!==e?e:this.debug)&&this.gameConfig.debugEnabled,this.physics=!0,this.composite=null!==(i=t.composite)&&void 0!==i&&i,this.scaledTileWidth=this.tilemapRenderer.tileWidth*this.gameObject.transform.scale.x,this.scaledTileHeight=this.tilemapRenderer.tileHeight*this.gameObject.transform.scale.y,this.scaledWidth=this.tilemapRenderer.width*this.scaledTileWidth,this.scaledHeight=this.tilemapRenderer.height*this.scaledTileHeight,this.position.set(this.gameObject.transform.position.x-this.scaledWidth/2,this.gameObject.transform.position.y+this.scaledHeight/2),this.composite?this.useLineColliders():this.useBoxColliders(),this.debug&&(this.renderer=this.gameObject.addComponent(fe,{colliders:this.colliders}))},i.prototype.useBoxColliders=function(){var t=this;this.tilemapRenderer.tiles.forEach((function(e,i){var n;t.needsCollider(e,i)&&t.colliders.push(t.physicsManager.addCollider({layer:null!==(n=t.layer)&&void 0!==n?n:t.gameObject.layer,position:new Xt(t.position.x+(i%t.tilemapRenderer.width+.5)*t.scaledTileWidth,t.position.y-(Math.floor(i/t.tilemapRenderer.width)+.5)*t.scaledTileHeight),shape:new Pt(t.scaledTileWidth,t.scaledTileHeight),updateCollisions:!1,physics:t.physics,group:t.gameObject.id.toString()}))}))},i.prototype.needsCollider=function(t,e){var i=this;return 0!==t&&this.getNeighbors(e).some((function(t){return!t||!i.tilemapRenderer.tiles[t]||0===i.tilemapRenderer.tiles[t]}))},i.prototype.useLineColliders=function(){var t,e,i=this,n=[],r=[];this.tilemapRenderer.tiles.forEach((function(t,e){if(0!==t){var o=e%i.tilemapRenderer.width,s=Math.floor(e/i.tilemapRenderer.width);n[s]||(n[s]=[]),n[s+1]||(n[s+1]=[]),r[s]||(r[s]=[]),r[s+1]||(r[s+1]=[]);var a=i.getNeighbors(e);i.hasTile(a[0])||(n[s][o]=!0),i.hasTile(a[2])||(n[s+1][o]=!0),i.hasTile(a[1])||(r[s][o]=!0),i.hasTile(a[3])||(r[s][o+1]=!0)}}));for(var o=0;o<n.length;o++)if(n[o])for(var s=0;s<n[o].length;s++)!t||!e||o===e.y&&n[o][s]||(this.addLineCollider(t,e),t=void 0,e=void 0),n[o][s]&&(t||(t=new Xt(s,o)),e=new Xt(s+1,o));t&&e&&this.addLineCollider(t,e),t=void 0,e=void 0;for(s=0;s<=this.tilemapRenderer.width;s++)for(o=0;o<r.length;o++)r[o]&&(!t||!e||s===e.x&&r[o][s]||(this.addLineCollider(t,e),t=void 0,e=void 0),r[o][s]&&(t||(t=new Xt(s,o)),e=new Xt(s,o+1)));t&&e&&this.addLineCollider(t,e)},i.prototype.hasTile=function(t){return void 0!==t&&this.tilemapRenderer.tiles[t]&&this.tilemapRenderer.tiles[t]>0},i.prototype.addLineCollider=function(t,e){var i,n=this.physicsManager.addCollider({layer:null!==(i=this.layer)&&void 0!==i?i:this.gameObject.layer,position:this.position.clone(),shape:new jt([new Xt(t.x*this.scaledTileWidth,t.y*-this.scaledTileHeight),new Xt(e.x*this.scaledTileWidth,e.y*-this.scaledTileHeight)]),updateCollisions:!1,physics:this.physics,group:this.gameObject.id.toString()});this.colliders.push(n)},i.prototype.getNeighbors=function(t){return[t-this.tilemapRenderer.width>=0?t-this.tilemapRenderer.width:void 0,t%this.tilemapRenderer.width>0?t-1:void 0,t+this.tilemapRenderer.width<=this.tilemapRenderer.width*this.tilemapRenderer.height?t+this.tilemapRenderer.width:void 0,t%this.tilemapRenderer.width<this.tilemapRenderer.width-1?t+1:void 0]},i.prototype.updateRealSize=function(){},i.prototype.updatePosition=function(){},i.prototype.updateColliders=function(){var t=this;this.colliders.forEach((function(e){var i;return e.layer=null!==(i=t.layer)&&void 0!==i?i:t.gameObject.layer}))},i}(te),fe=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.renderData=[],e.colliders=[],e}return e(i,t),i.prototype.init=function(t){var e=this,i=t.colliders;this.colliders=i,this.colliders.forEach((function(t,i){e.renderData[i]={type:a.Geometric,layer:e.gameObject.layer,location:s.WorldSpace,position:new Xt,shape:o.Polygon,color:\"#00FF00\"}}))},i.prototype.update=function(){var t=this;this.colliders.forEach((function(e,i){t.renderData[i].layer=t.gameObject.layer,t.renderData[i].position.copy(e.shape.position),t.renderData[i].rotation=e.rotation,t.renderData[i].vertexModel=e.shape.vertexModel,t.renderManager.addRenderData(t.renderData[i])}))},i}(y),ge=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.debug=!1,e.offsetX=0,e.offsetY=0,e.scaledVertexModel=[],e.scaledOffset=new Xt,e.scaledPosition=new Xt,e.finalRotation=0,e.innerPosition=new Xt,e}return e(i,t),i.prototype.init=function(t){var e,i,n,r,o,s;if(this.gameConfig.collisions.collisionMethod!==lt.SAT)throw new Lt(\"Edge Colliders need SAT collision method.\");if(t.vertexModel.length<2)throw new Lt(\"Edge Collider needs at least 2 vertices.\");this.debug=(null!==(e=t.debug)&&void 0!==e?e:this.debug)&&this.gameConfig.debugEnabled,this.vertexModel=t.vertexModel,this.offsetX=null!==(i=t.offsetX)&&void 0!==i?i:this.offsetX,this.offsetY=null!==(n=t.offsetY)&&void 0!==n?n:this.offsetY,this.physics=null!==(r=t.physics)&&void 0!==r?r:this.physics,this.rotation=null!==(o=t.rotation)&&void 0!==o?o:new Qt,this.layer=t.layer;for(var a=0;a<this.vertexModel.length;a++)this.scaledVertexModel.push(new Xt);for(a=0;a<this.scaledVertexModel.length-1;a++)this.colliders.push(this.physicsManager.addCollider({layer:null!==(s=this.layer)&&void 0!==s?s:this.gameObject.layer,position:this.gameObject.transform.position.clone(),rotation:this.rotation.radians,shape:new jt([this.scaledVertexModel[a],this.scaledVertexModel[a+1]]),updateCollisions:!0,physics:this.physics,group:this.gameObject.id.toString()}));this.debug&&(this.renderer=this.gameObject.addComponent(me,{colliders:this.colliders}))},i.prototype.updateRealSize=function(){var t=this;this.vertexModel.forEach((function(e,i){return t.scaledVertexModel[i].set(e.x*t.gameObject.transform.scale.x,e.y*t.gameObject.transform.scale.y)})),this.scaledOffset.x=this.offsetX*this.gameObject.transform.scale.x,this.scaledOffset.y=this.offsetY*this.gameObject.transform.scale.y,this.finalRotation=this.gameObject.transform.rotation.radians+this.rotation.radians},i.prototype.updatePosition=function(){Xt.add(this.scaledPosition,this.gameObject.transform.position,this.scaledOffset),0!==this.gameObject.transform.rotation.radians&&this.translate()},i.prototype.translate=function(){Xt.subtract(this.innerPosition,this.scaledPosition,this.gameObject.transform.position);var t=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.scaledPosition.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(t),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(t))},i.prototype.updateColliders=function(){for(var t,e=0;e<this.scaledVertexModel.length-1;e++)this.colliders[e].layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.colliders[e].position.copy(this.scaledPosition),this.colliders[e].rotation=this.finalRotation,this.colliders[e].shape.vertexModel=[this.scaledVertexModel[e],this.scaledVertexModel[e+1]]},i}(te),me=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.renderData=[],e.colliders=[],e}return e(i,t),i.prototype.init=function(t){var e=this,i=t.colliders;this.colliders=i,this.colliders.forEach((function(t,i){e.renderData[i]={type:a.Geometric,layer:e.gameObject.layer,location:s.WorldSpace,position:new Xt,shape:o.Line,color:\"#00FF00\"}}))},i.prototype.update=function(){var t=this;this.colliders.forEach((function(e,i){t.renderData[i].layer=t.gameObject.layer,t.renderData[i].position=e.position,t.renderData[i].rotation=e.rotation,t.renderData[i].vertexModel=e.shape.vertexModel,t.renderManager.addRenderData(t.renderData[i])}))},i}(y),ye=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.renderData=[],e.innerPosition=new Xt,e.cachePosition=new Xt,e.cacheRenderPosition=new Xt,e.scaledOffset=new Xt,e.cacheScale=new Xt,e}return e(i,t),i.prototype.init=function(t){var e,i,n,r,o,s,a,h,c;void 0===t&&(t={}),this.sprite=t.sprite,this.offset=null!==(e=t.offset)&&void 0!==e?e:new Xt,this.rotation=null!==(i=t.rotation)&&void 0!==i?i:new Qt,this.flipHorizontal=null!==(n=t.flipHorizontal)&&void 0!==n&&n,this.flipVertical=null!==(r=t.flipVertical)&&void 0!==r&&r,this.opacity=null!==(o=t.opacity)&&void 0!==o?o:1,this._tiled=null!==(s=t.tiled)&&void 0!==s?s:new Xt(1,1),this.maskColor=t.maskColor,this.maskColorMix=null!==(a=t.maskColorMix)&&void 0!==a?a:0,this.tintColor=t.tintColor,this.layer=t.layer,this.scale=null!==(c=null!==(h=t.scale)&&void 0!==h?h:this.gameConfig.spriteDefaultScale.clone())&&void 0!==c?c:new Xt(1,1),this.width=t.width,this.height=t.height},Object.defineProperty(i.prototype,\"tiled\",{get:function(){return this._tiled},set:function(t){if(t.x%1!=0||t.y%1!=0)throw new Lt(\"SpriteRenderer.tiled: Vector2 components must be integers\");this._tiled.set(t.x,t.y)},enumerable:!1,configurable:!0}),i.prototype.update=function(){if(this.sprite&&!0===this.sprite.loaded){this.cacheScale.set(this.scale.x*this.gameObject.transform.scale.x,this.scale.y*this.gameObject.transform.scale.y),this.updateRenderDataArray();for(var t=0,e=0;e<this._tiled.x;e++)for(var i=0;i<this._tiled.y;i++)this.updateRenderData(t,e,i),t++}},i.prototype.updateRenderDataArray=function(){if(this.renderData.length!==this._tiled.x*this._tiled.y){this.renderData=[];for(var t=0;t<this._tiled.x*this._tiled.y;t++)this.renderData[t]={type:a.Sprite,location:s.WorldSpace,layer:\"\",position:new Xt,image:this.sprite.image,width:0,height:0}}},i.prototype.updateRenderData=function(t,e,i){var n,r,o;this.renderData[t].location=this.gameObject.ui?s.ViewPort:s.WorldSpace,this.renderData[t].layer=null!==(n=this.layer)&&void 0!==n?n:this.gameObject.layer,this.renderData[t].image=this.sprite.image,this.renderData[t].width=(null!==(r=this.width)&&void 0!==r?r:this.sprite.width)*Math.abs(this.cacheScale.x),this.renderData[t].height=(null!==(o=this.height)&&void 0!==o?o:this.sprite.height)*Math.abs(this.cacheScale.y),this.renderData[t].slice=this.sprite.slice,this.renderData[t].flipHorizontal=this.flipHorizontal!==this.cacheScale.x<0,this.renderData[t].flipVertical=this.flipVertical!==this.cacheScale.y<0,this.renderData[t].rotation=this.gameObject.transform.rotation.radians+this.rotation.radians,this.renderData[t].smooth=this.sprite.smooth,this.renderData[t].alpha=this.opacity,this.renderData[t].maskColor=this.maskColor,this.renderData[t].maskColorMix=this.maskColorMix,this.renderData[t].tintColor=this.tintColor,this.calculateRenderPosition(t,e,i),this.renderManager.addRenderData(this.renderData[t])},i.prototype.calculateRenderPosition=function(t,e,i){this.scaledOffset.set(this.offset.x*this.gameObject.transform.scale.x,this.offset.y*this.gameObject.transform.scale.y),Xt.add(this.cachePosition,this.gameObject.transform.position,this.scaledOffset),this.cacheRenderPosition.set(this.renderData[t].width/2*(this._tiled.x-1),this.renderData[t].height/2*(this._tiled.y-1)),Xt.subtract(this.cachePosition,this.cachePosition,this.cacheRenderPosition),this.cacheRenderPosition.set(e*this.renderData[t].width,i*this.renderData[t].height),Xt.add(this.renderData[t].position,this.cachePosition,this.cacheRenderPosition),0!==this.gameObject.transform.rotation.radians&&this.translateRenderPosition(t)},i.prototype.translateRenderPosition=function(t){Xt.subtract(this.innerPosition,this.renderData[t].position,this.gameObject.transform.position);var e=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.renderData[t].position.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(e),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(e))},i}(y),ve=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.lastFrameText=\"\",e}return e(i,t),i.prototype.init=function(t){var e,i,n,r,o,s,a,h,c,l,u,p,d;if(this.text=null!==(e=t.text)&&void 0!==e?e:\"\",this.font=null!==(i=t.font)&&void 0!==i?i:\"Sans\",this.fontSize=null!==(n=t.fontSize)&&void 0!==n?n:12,this.width=null!==(r=t.width)&&void 0!==r?r:100,this.height=null!==(o=t.height)&&void 0!==o?o:100,this.offset=null!==(s=t.offset)&&void 0!==s?s:new Xt,this.color=null!==(a=t.color)&&void 0!==a?a:\"#000000\",this.charRanges=null!==(h=t.charRanges)&&void 0!==h?h:[32,126,161,255],this.lineSeparation=null!==(c=t.lineSeparation)&&void 0!==c?c:0,this.letterSpacing=null!==(l=t.letterSpacing)&&void 0!==l?l:0,this.smooth=null!==(u=t.smooth)&&void 0!==u&&u,this.rotation=null!==(p=t.rotation)&&void 0!==p?p:new Qt,this.opacity=null!==(d=t.opacity)&&void 0!==d?d:1,this.orientation=t.orientation,this.bitmapMargin=t.bitmapMargin,this.bitmapSpacing=t.bitmapSpacing,this.charRanges.length%2!=0)throw new Lt(\"TextRenderer.charRanges must be a 2 column matrix\");if(this.lineSeparation%2!=0)throw new Lt(\"TextRenderer.lineSeparation must be multiple of 2\")},i.prototype.start=function(){this.renderData={type:a.Text,location:s.WorldSpace,position:new Xt,layer:this.gameObject.layer,text:\"\",font:this.font,fontSize:this.fontSize,bitmap:{charRanges:this.charRanges,margin:this.bitmapMargin,spacing:this.bitmapSpacing},smooth:this.smooth}},i.prototype.update=function(){var t,e;this.text&&(this.renderData.layer=this.gameObject.layer,this.renderData.location=this.gameObject.ui?s.ViewPort:s.WorldSpace,this.renderData.text=this.text!==this.lastFrameText?this.crop():this.renderData.text,this.renderData.fontSize=this.fontSize,this.renderData.color=this.color,this.renderData.orientation=this.orientation,this.renderData.lineSeparation=this.lineSeparation,this.renderData.letterSpacing=this.letterSpacing,this.renderData.rotation=null!==(e=this.gameObject.transform.rotation.radians+(null===(t=this.rotation)||void 0===t?void 0:t.radians))&&void 0!==e?e:0,this.renderData.alpha=this.opacity,Xt.add(this.renderData.position,this.gameObject.transform.position,this.offset),this.renderManager.addRenderData(this.renderData),this.lastFrameText=this.text)},i.prototype.crop=function(){var t=this;if(this.fontSize>this.height)return\"\";for(var e=[],i=0,n=0,r=this.text.split(\"\\n\");n<r.length;n++)for(var o=r[n].split(\" \").reduce((function(e,i){var n=e[e.length-1]+(e[e.length-1].length>0?\" \":\"\")+i;return n.length*(t.fontSize+t.letterSpacing)>t.width?e.push(i):e[e.length-1]=n,e}),[\"\"]),s=0,a=o;s<a.length;s++){var h=a[s];if((i+=this.fontSize+this.lineSeparation)>this.height)return e.join(\"\\n\");e.push(h)}return e.join(\"\\n\")},i}(y),xe=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.offset=new Xt,e.rotation=new Qt,e.opacity=1,e.innerPosition=new Xt,e.scaledOffset=new Xt,e}return e(i,t),i.prototype.init=function(t){var e,i,n,r,o,h,c;this.shape=t.shape,this.color=t.color,this.width=null!==(e=t.width)&&void 0!==e?e:0,this.height=null!==(i=t.height)&&void 0!==i?i:0,this.radius=null!==(n=t.radius)&&void 0!==n?n:0,this.offset=null!==(r=t.offset)&&void 0!==r?r:this.offset,this.rotation=null!==(o=t.rotation)&&void 0!==o?o:this.rotation,this.opacity=null!==(h=t.opacity)&&void 0!==h?h:this.opacity,this.layer=t.layer,this.renderData={type:a.Mask,layer:null!==(c=this.layer)&&void 0!==c?c:this.gameObject.layer,location:this.gameObject.ui?s.ViewPort:s.WorldSpace,position:new Xt,width:0,height:0,radius:0,color:\"\",shape:this.shape}},i.prototype.update=function(){var t;this.renderData.location=this.gameObject.ui?s.ViewPort:s.WorldSpace,this.renderData.layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.renderData.shape=this.shape,this.renderData.width=this.width*Math.abs(this.gameObject.transform.scale.x),this.renderData.height=this.height*Math.abs(this.gameObject.transform.scale.y),this.renderData.color=this.color,this.renderData.rotation=this.gameObject.transform.rotation.radians+this.rotation.radians,this.renderData.alpha=this.opacity,this.renderData.radius=this.radius*Math.abs(Math.max(this.gameObject.transform.scale.x,this.gameObject.transform.scale.y)),this.calculateRenderPosition(),this.renderManager.addRenderData(this.renderData)},i.prototype.calculateRenderPosition=function(){this.scaledOffset.set(this.offset.x*this.gameObject.transform.scale.x,this.offset.y*this.gameObject.transform.scale.y),Xt.add(this.renderData.position,this.gameObject.transform.position,this.scaledOffset),0!==this.gameObject.transform.rotation.radians&&this.translateRenderPosition()},i.prototype.translateRenderPosition=function(){Xt.subtract(this.innerPosition,this.renderData.position,this.gameObject.transform.position);var t=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.renderData.position.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(t),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(t))},i}(y),be=[\"click\",\"contextmenu\",\"auxclick\",\"dblclick\",\"mousedown\",\"mouseup\",\"pointerup\",\"touchend\",\"keydown\",\"keyup\"],Me=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.innerPosition=new Xt,e.scaledOffset=new Xt,e._playing=!1,e._paused=!1,e.videoEventHandler=function(t){\"ended\"===t.type&&(e._playing=!1,e.video.removeEventListener(\"ended\",e.videoEventHandler))},e.userInputEventHandler=function(){be.forEach((function(t){window.removeEventListener(t,e.userInputEventHandler)})),e.video&&e._playing&&e.video.play()},e}return e(i,t),Object.defineProperty(i.prototype,\"volume\",{get:function(){return this._volume},set:function(t){this._volume=t,this.video&&(this.video.volume=t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"loop\",{get:function(){return this._loop},set:function(t){this._loop=t,this.video&&(this.video.loop=t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"playing\",{get:function(){return this._playing},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"paused\",{get:function(){return this._paused},enumerable:!1,configurable:!0}),i.prototype.init=function(t){var e,i,n,r,o,h,c,l,u,p;this.video=t.video,this.width=null!==(e=t.width)&&void 0!==e?e:this.video.videoWidth,this.height=null!==(i=t.height)&&void 0!==i?i:this.video.videoHeight,this.offset=null!==(n=t.offset)&&void 0!==n?n:new Xt,this.rotation=null!==(r=t.rotation)&&void 0!==r?r:new Qt,this.flipHorizontal=null!==(o=t.flipHorizontal)&&void 0!==o&&o,this.flipVertical=null!==(h=t.flipVertical)&&void 0!==h&&h,this.opacity=null!==(c=t.opacity)&&void 0!==c?c:1,this.maskColor=t.maskColor,this.maskColorMix=null!==(l=t.maskColorMix)&&void 0!==l?l:0,this.tintColor=t.tintColor,this.layer=t.layer,this.slice=t.slice,this._volume=null!==(u=t.volume)&&void 0!==u?u:1,this._loop=null!==(p=t.loop)&&void 0!==p&&p,this.renderData={type:a.Video,location:s.WorldSpace,layer:\"\",position:new Xt,video:this.video,width:this.width,height:this.height}},i.prototype.play=function(){var t=this;if((this.video||!this.video.duration)&&(!this._playing||!1!==this._paused)){if(this._paused)return this._paused=!1,void this.video.play();this.video.loop=this._loop,this.video.volume=this._volume,this.video.addEventListener(\"ended\",this.videoEventHandler),this._playing=!0;var e=this.video.play();void 0!==e&&e.catch((function(){be.forEach((function(e){return window.addEventListener(e,t.userInputEventHandler)}))}))}},i.prototype.stop=function(){this._playing&&(this.video.pause(),this.video.currentTime=0,this.video.removeEventListener(\"ended\",this.videoEventHandler),this._playing=!1,this._paused=!1)},i.prototype.pause=function(){this._playing&&!1===this._paused&&(this.video.pause(),this._paused=!0)},i.prototype.update=function(){var t;this.video&&this.video.duration&&(this.renderData.location=this.gameObject.ui?s.ViewPort:s.WorldSpace,this.renderData.layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.renderData.video=this.video,this.renderData.width=this.width*Math.abs(this.gameObject.transform.scale.x),this.renderData.height=this.height*Math.abs(this.gameObject.transform.scale.y),this.renderData.slice=this.slice,this.renderData.flipHorizontal=this.flipHorizontal!==this.gameObject.transform.scale.x<0,this.renderData.flipVertical=this.flipVertical!==this.gameObject.transform.scale.y<0,this.renderData.rotation=this.gameObject.transform.rotation.radians+this.rotation.radians,this.renderData.alpha=this.opacity,this.renderData.maskColor=this.maskColor,this.renderData.maskColorMix=this.maskColorMix,this.renderData.tintColor=this.tintColor,this.calculateRenderPosition(),this.renderManager.addRenderData(this.renderData))},i.prototype.calculateRenderPosition=function(){this.scaledOffset.set(this.offset.x*this.gameObject.transform.scale.x,this.offset.y*this.gameObject.transform.scale.y),Xt.add(this.renderData.position,this.gameObject.transform.position,this.scaledOffset),0!==this.gameObject.transform.rotation.radians&&this.translateRenderPosition()},i.prototype.translateRenderPosition=function(){Xt.subtract(this.innerPosition,this.renderData.position,this.gameObject.transform.position);var t=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.renderData.position.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(t),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(t))},i.prototype.onActiveChange=function(){!1===this.active&&this.stop()},i.prototype.onDestroy=function(){this.stop()},i}(y),_e=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.tiles=[],e.infinite=!1,e.tilesetTileIds=[],e.chunks=[],e.scaledTileWidth=0,e.scaledTileHeight=0,e.renderData=[],e}return e(i,t),i.prototype.init=function(t){var e=this,i=t.tiledData,n=t.tilemapLayer,r=t.tileset,o=t.tileWidth,s=t.tileHeight,a=t.layer,h=t.smooth;if(this.tiledData=i,this.tileset=r,this.tileWidth=null!=o?o:this.tileset.tileWidth*this.gameConfig.spriteDefaultScale.x,this.tileHeight=null!=s?s:this.tileset.tileHeight*this.gameConfig.spriteDefaultScale.y,this.layer=a,this.smooth=null!=h&&h,this.tiledLayer=this.tiledData.layers.find((function(t){return t.name===n})),!this.tiledLayer)throw new Lt(\"Invalid tilemap layer\");this.width=0,this.height=0,this.tiledData.layers.forEach((function(t){e.width=Math.max(e.width,t.width),e.height=Math.max(e.height,t.height)})),this.processTilemap()},i.prototype.update=function(){var t=this;this.updateRenderData(),this.renderData.forEach((function(e){return t.renderManager.addRenderData(e)}))},i.prototype.processTilemap=function(){var t=this;!0===this.tiledLayer.visible&&(this.opacity=this.tiledLayer.opacity,this.tintColor=this.tiledLayer.tintcolor,this.tiledData.infinite?(this.infinite=!0,this.tiledLayer.chunks.sort((function(t,e){return t.x-e.x})).sort((function(t,e){return t.y-e.y})).forEach((function(e){return t.processChunk(e)}))):this.processFixedLayer()),this.updateRenderData(),this.tilesetTileIds=[]},i.prototype.processFixedLayer=function(){var t,e=this;this.tiles=this.tiledLayer.data.map((function(t){return e.getTilesetTileId(t)})),this.renderData.push({type:a.Tilemap,layer:null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,location:this.gameObject.ui?s.ViewPort:s.WorldSpace,position:new Xt,tileset:this.tileset,tilemap:{width:this.width,tileWidth:this.tileWidth,tileHeight:this.tileHeight},tiles:this.tiles,orientation:M.Center,smooth:this.smooth})},i.prototype.processChunk=function(t){var e,i=this,n={type:a.Tilemap,layer:null!==(e=this.layer)&&void 0!==e?e:this.gameObject.layer,location:this.gameObject.ui?s.ViewPort:s.WorldSpace,position:new Xt,tileset:this.tileset,tilemap:{width:t.width,tileWidth:this.tileWidth,tileHeight:this.tileHeight},tiles:t.data.map((function(t){return i.getTilesetTileId(t)})),orientation:M.Center,smooth:this.smooth};n.tiles.forEach((function(e,n){i.tiles[i.width*(t.y+Math.floor(n/t.width))+t.x+n%t.width]=e})),this.renderData.push(n),this.chunks.push(t)},i.prototype.getTilesetTileId=function(t){return this.tilesetTileIds[t]||(this.tilesetTileIds[t]=this.tiledData.tilesets.reduce((function(e,i){return t>=i.firstgid?t-i.firstgid+1:e}),0)),this.tilesetTileIds[t]},i.prototype.updateRenderData=function(){var t=this;this.scaledTileWidth=this.tileWidth*this.gameObject.transform.scale.x,this.scaledTileHeight=this.tileHeight*this.gameObject.transform.scale.y,this.realWidth=this.width*this.scaledTileWidth,this.realHeight=this.height*this.scaledTileHeight,this.renderData.forEach((function(e,i){var n;if(e.layer=null!==(n=t.layer)&&void 0!==n?n:t.gameObject.layer,t.infinite){var r=t.chunks[i];e.position.set(t.gameObject.transform.position.x-t.realWidth/2+(r.x+r.width/2)*t.scaledTileWidth,t.gameObject.transform.position.y+t.realHeight/2-(r.y+r.height/2)*t.scaledTileHeight)}else e.position.copy(t.gameObject.transform.position);e.tilemap.tileWidth=t.scaledTileWidth,e.tilemap.tileHeight=t.scaledTileHeight,e.tintColor=t.tintColor,e.alpha=t.opacity}))},i}(y),we=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.tiles=[],e.scaledTileWidth=0,e.scaledTileHeight=0,e}return e(i,t),i.prototype.init=function(t){var e,i=this,n=t.tiles,r=t.tileset,o=t.tileWidth,h=t.tileHeight,c=t.width,l=t.layer,u=t.opacity,p=t.tintColor,d=t.smooth;n.split(\"\\n\").forEach((function(t){t.split(\",\").forEach((function(t){return t.trim().length>0?i.tiles.push(Number(t)):null}))})),this.tileset=r,this.width=c,this.tileWidth=null!=o?o:this.tileset.tileWidth*this.gameConfig.spriteDefaultScale.x,this.tileHeight=null!=h?h:this.tileset.tileHeight*this.gameConfig.spriteDefaultScale.y,this.layer=l,this.height=Math.ceil(this.tiles.length/this.width),this.opacity=u,this.tintColor=p,this.renderData={type:a.Tilemap,layer:null!==(e=this.layer)&&void 0!==e?e:this.gameObject.layer,location:this.gameObject.ui?s.ViewPort:s.WorldSpace,position:new Xt,tileset:this.tileset,tilemap:{width:this.width,tileWidth:this.tileWidth,tileHeight:this.tileHeight},tiles:this.tiles,orientation:M.Center,smooth:d},this.updateRenderData()},i.prototype.update=function(){this.updateRenderData(),this.renderManager.addRenderData(this.renderData)},i.prototype.updateRenderData=function(){var t;this.scaledTileWidth=this.tileWidth*this.gameObject.transform.scale.x,this.scaledTileHeight=this.tileHeight*this.gameObject.transform.scale.y,this.realWidth=this.width*this.scaledTileWidth,this.realHeight=this.height*this.scaledTileHeight,this.renderData.layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.renderData.position.copy(this.gameObject.transform.position),this.renderData.tintColor=this.tintColor,this.renderData.alpha=this.opacity,this.renderData.tilemap.tileWidth=this.scaledTileWidth,this.renderData.tilemap.tileHeight=this.scaledTileHeight},i}(y),Ce=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.spriteRenderer=null,e.animations=new Map,e.currentAnimation=null,e.paused=!1,e}return e(i,t),i.prototype.init=function(t){var e=t.spriteRenderer;this.spriteRenderer=e},i.prototype.update=function(){null===this.currentAnimation||this.paused||(this.currentAnimation.playFrame(this.timeManager.deltaTime),!0===this.currentAnimation.restarted&&!1===this.currentAnimation.loop?this.currentAnimation=null:this.spriteRenderer.sprite=this.currentAnimation.sprite)},i.prototype.addAnimation=function(t,e,i){return void 0===e&&(e=\"default\"),t.framerate=null!=i?i:t.framerate,this.animations.set(e,new je(t)),this},i.prototype.playAnimation=function(t){if(void 0===t&&(t=\"default\"),!1!==this.active){if(!1===this.animations.has(t))throw new Lt(\"Animation with name \".concat(t,\" does not exist.\"));this.stopAnimation(),this.currentAnimation=this.animations.get(t)}},i.prototype.pause=function(){this.paused=!0},i.prototype.resume=function(){this.paused=!1},i.prototype.stopAnimation=function(){null!==this.currentAnimation&&(this.currentAnimation.reset(),this.currentAnimation=null,this.paused=!1)},i.prototype.isPlayingAnimation=function(t){return void 0===t&&(t=\"default\"),null!==this.currentAnimation&&this.animations.get(t)&&this.animations.get(t)===this.currentAnimation},i.prototype.isPaused=function(){return this.paused},i}(u),je=function(){function t(t){this._sprite=null,this._restarted=!1,this.currentFrame=0,this.frameTime=0,this._animation=t}return Object.defineProperty(t.prototype,\"sprite\",{get:function(){return this._sprite},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"restarted\",{get:function(){return this._restarted},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"loop\",{get:function(){return this._animation.loop},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"animation\",{get:function(){return this._animation},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.currentFrame=0,this.frameTime=0,this._restarted=!0},t.prototype.playFrame=function(t){this._restarted=!1,this.frameTime>=1/this._animation.framerate&&(this.frameTime=0,this.currentFrame=this.currentFrame+1===this._animation.sprites.length?0:this.currentFrame+1,this._restarted=0===this.currentFrame),this._sprite=this._animation.sprites[this.currentFrame],this.frameTime+=t},t}(),Oe=[\"click\",\"contextmenu\",\"auxclick\",\"dblclick\",\"mousedown\",\"mouseup\",\"pointerup\",\"touchend\",\"keydown\",\"keyup\"],Pe=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.allowMultiple=!1,e.tracks=[],e.audioSourceCache=new Map,e._playing=!1,e._paused=!1,e.audioEventHandler=function(t){\"ended\"===t.type&&(e._playing=!1,e._audioSource.removeEventListener(\"ended\",e.audioEventHandler))},e.userInputEventHandler=function(){Oe.forEach((function(t){window.removeEventListener(t,e.userInputEventHandler)})),e.audioContext.resume(),e._audioSource&&e._playing&&e._audioSource.play()},e}return e(i,t),Object.defineProperty(i.prototype,\"audioSource\",{get:function(){return this._audioSource},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"volume\",{get:function(){return this._volume},set:function(t){this._volume=t,this._audioSource&&(this._audioSource.volume=t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"loop\",{get:function(){return this._loop},set:function(t){this._loop=t,this._audioSource&&(this._audioSource.loop=t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"playing\",{get:function(){return this._playing},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"paused\",{get:function(){return this._paused},enumerable:!1,configurable:!0}),i.prototype.init=function(t){var e=this,i=void 0===t?{}:t,n=i.loop,r=i.volume;this.audioContext=new AudioContext,\"running\"!==this.audioContext.state&&Oe.forEach((function(t){return window.addEventListener(t,e.userInputEventHandler)})),this._volume=null!=r?r:1,this._loop=null!=n&&n},i.prototype.playClip=function(t,e){t.currentTime>0&&(t.currentTime=0),t.volume=null!=e?e:this._volume,t.play()},i.prototype.addAudioSource=function(t,e){void 0===e&&(e=\"default\");var i=t.cloneNode();this.audioSourceCache.set(e,i);var n=this.audioContext.createMediaElementSource(i);n.connect(this.audioContext.destination),this.tracks.push(n)},i.prototype.loadAudioSource=function(t,e,i){this.stop(),this._audioSource=this.audioSourceCache.get(t),this._loop=null!=e?e:this._loop,this._volume=null!=i?i:this._volume},i.prototype.play=function(){if(this._audioSource&&(!this._playing||!1!==this._paused)){if(this._paused)return this._paused=!1,void this._audioSource.play();this._audioSource.volume=this._volume,this._audioSource.loop=this._loop,this._audioSource.addEventListener(\"ended\",this.audioEventHandler),this._playing=!0,\"running\"===this.audioContext.state&&this._audioSource.play()}},i.prototype.stop=function(){this._playing&&(this._audioSource.pause(),this._audioSource.currentTime=0,this._audioSource.removeEventListener(\"ended\",this.audioEventHandler),this._playing=!1,this._paused=!1)},i.prototype.pause=function(){this._playing&&!1===this._paused&&(this._audioSource.pause(),this._paused=!0)},i.prototype.onActiveChange=function(){!1===this.active&&this.stop()},i.prototype.onDestroy=function(){this.stop(),this.audioContext.close()},i}(u),Re=function(){function t(t){var e,i=this;this._width=null,this._height=null,this._loaded=!1,this.image=t.image,this.smooth=null!==(e=t.smooth)&&void 0!==e&&e,this.slice=t.slice,this.slice&&(this._width=this.slice.width,this._height=this.slice.height);var n=function(){var t,e;i._width=null!==(t=i._width)&&void 0!==t?t:i.image.naturalWidth,i._height=null!==(e=i._height)&&void 0!==e?e:i.image.naturalHeight,i._loaded=!0};this.image.naturalWidth?n():this.image.addEventListener(\"load\",(function(){return n()}))}return Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"loaded\",{get:function(){return this._loaded},enumerable:!1,configurable:!0}),t}();!function(t){t[t.Rectangle=0]=\"Rectangle\",t[t.Circumference=1]=\"Circumference\"}(Ut||(Ut={}));var Ae=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.allowMultiple=!1,e.width=100,e.height=100,e.radius=50,e.touchEnabled=!0,e.offset=new Xt,e.pressed=!1,e.mouse=e.inputManager.mouse,e.touch=e.inputManager.touch,e.position=new Xt,e.distance=new Xt,e.pressedLastFrame=!1,e.scaled={width:0,height:0,radius:0,offset:new Xt},e}return e(i,t),i.prototype.init=function(t){var e=t.type,i=t.height,n=t.radius,r=t.touchEnabled,o=t.width,s=t.offset;this.type=e,this.width=null!=o?o:this.width,this.height=null!=i?i:this.height,this.radius=null!=n?n:this.radius,this.touchEnabled=null!=r?r:this.touchEnabled,this.offset=null!=s?s:this.offset},i.prototype.update=function(){this.scale(),Xt.add(this.position,this.gameObject.transform.position,this.scaled.offset),this.pressedLastFrame=this.pressed,this.pressed=!1,this.mouse.leftButtonPressed&&(this.resolveMouseAndRectangle(),this.resolveMouseAndCircumference()),this.touchEnabled&&this.touch.touching&&(this.resolveTouchAndRectangle(),this.resolveTouchAndCircumference()),this.onClick&&!this.pressedLastFrame&&this.pressed&&this.onClick(),this.onPressed&&this.pressed&&this.onPressed()},i.prototype.scale=function(){this.scaled.width=this.width*this.gameObject.transform.scale.x,this.scaled.height=this.width*this.gameObject.transform.scale.y,this.scaled.offset.x=this.offset.x*this.gameObject.transform.scale.x,this.scaled.offset.y=this.offset.y*this.gameObject.transform.scale.y,this.scaled.radius=this.radius*Math.max(Math.abs(this.gameObject.transform.scale.x),Math.abs(this.gameObject.transform.scale.y))},i.prototype.resolveMouseAndRectangle=function(){this.type===Ut.Rectangle&&(this.pressed=Kt(this.mouse.positionInViewport.x,this.position.x-this.scaled.width/2,this.position.x+this.scaled.width/2)&&Kt(this.mouse.positionInViewport.y,this.position.y-this.scaled.height/2,this.position.y+this.scaled.height/2))},i.prototype.resolveMouseAndCircumference=function(){this.type===Ut.Circumference&&(Xt.subtract(this.distance,this.position,this.mouse.positionInViewport),this.pressed=this.distance.magnitude<=this.scaled.radius)},i.prototype.resolveTouchAndRectangle=function(){if(this.type===Ut.Rectangle)for(var t=0,e=this.touch.interactions;t<e.length;t++){var i=e[t],n=i.positionInViewport,r=i.radius;if(this.pressed)return;this.pressed=this.position.x+this.scaled.width/2>=n.x-r.x&&this.position.x-this.scaled.width/2<=n.x+r.x&&this.position.y+this.scaled.height/2>=n.y-r.y&&this.position.y-this.scaled.height/2<=n.y+r.y}},i.prototype.resolveTouchAndCircumference=function(){if(this.type===Ut.Circumference)for(var t=0,e=this.touch.interactions;t<e.length;t++){var i=e[t],n=i.positionInViewport,r=i.radius;if(this.pressed)return;Xt.subtract(this.distance,this.position,n),this.pressed=this.distance.magnitude<=this.scaled.radius+Math.max(r.x,r.y)}},i}(u),Se=function(t){function i(){var e=null!==t&&t.apply(this,arguments)||this;return e.mousePressed=!1,e.position=new Xt,e}return e(i,t),i.prototype.start=function(){this.camera=this.getCurrentScene().gameCamera},i.prototype.update=function(){this.inputManager.mouse.leftButtonPressed&&!1===this.mousePressed&&(Xt.round(this.position,Xt.add(this.position,this.camera.transform.position,Xt.scale(this.position,this.inputManager.mouse.positionInViewport,1/this.camera.zoom))),console.log(\"Space position: {x: \".concat(this.position.x,\", y: \").concat(this.position.y,\"}\"))),this.mousePressed=this.inputManager.mouse.leftButtonPressed},i}(ne);export{Ce as Animator,Pe as AudioPlayer,ue as BallCollider,le as BoxCollider,Ae as Button,Ut as ButtonType,oe as Camera,l as Component,ge as EdgeCollider,Jt as Game,se as GameCamera,ne as GameObject,ie as LAYER_DEFAULT,xe as MaskRenderer,I as MaskShape,d as PhysicsComponent,he as PolygonCollider,ce as PolygonColliderRenderer,g as PreRenderComponent,ee as RigidBody,vt as RigidBodyType,ae as Scene,Se as SpacePointer,Re as Sprite,ye as SpriteRenderer,G as TextOrientation,ve as TextRenderer,_e as TiledTilemapRenderer,de as TilemapCollider,we as TilemapRenderer,Zt as Transform,Me as VideoRenderer};\n//# sourceMappingURL=index.esm.js.map\n","var t=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,n){return t.set(e.x+n.x,e.y+n.y),t},t.subtract=function(t,e,n){return t.set(e.x-n.x,e.y-n.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,n){return t.set(e.x*n,e.y*n),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}();!function(){function e(e,n,i,r){this._position=new t,this._center=new t,this._width=0,this._height=0,this.set(e,n,i,r)}Object.defineProperty(e.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),e.prototype.set=function(t,e,n,i){this._position.set(t,e),this._width=n,this._height=i},e.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},e.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},e.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},e.prototype.contains=function(n){return n instanceof e?n.x1<=this.x1&&n.x>=this.x&&n.y1<=this.y1&&n.y>=this.y:n instanceof t&&!(n.x<this.x||n.y<this.y||n.x>=this.x1||n.y>=this.y1)}}(),function(){function e(e,n){void 0===e&&(e=null),void 0===n&&(n=null),this._degrees=0,this._radians=0,this._direction=new t,e?this.radians=e:n&&(this.degrees=n)}Object.defineProperty(e.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),e.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))}}();var e=function(){function t(){var t=this;this.gamepads=new Map,this.eventHandler=function(e){\"gamepadconnected\"===e.type?t.gamepadConnected(e.gamepad):\"gamepaddisconnected\"===e.type&&t.gamepadDisconected(e.gamepad)},window.addEventListener(\"gamepadconnected\",this.eventHandler),window.addEventListener(\"gamepaddisconnected\",this.eventHandler)}return t.prototype.getGamepad=function(t){var e;return null!==(e=this.gamepads.get(t))&&void 0!==e?e:null},t.prototype.getGamepads=function(){return Array.from(this.gamepads.values())},t.prototype.gamepadConnected=function(t){this.gamepads.set(t.index,new n),this.gamepads.get(t.index).updateFromGamepad(t)},t.prototype.gamepadDisconected=function(t){this.gamepads.delete(t.index)},t.prototype.update=function(){for(var t=0,e=this.getGamepadsFromBrowser();t<e.length;t++){var n=e[t];null!==n&&(!1===this.gamepads.has(n.index)?this.gamepadConnected(n):this.gamepads.get(n.index).updateFromGamepad(n))}},t.prototype.getGamepadsFromBrowser=function(){return navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads?navigator.webkitGetGamepads:[]},t}(),n=function(){function e(){this.buttons=new Map,this.axes=new Map,this._dpadAxes=new t,this._leftStickAxes=new t,this._rightStickAxes=new t,this._vibrating=!1}return e.prototype.updateFromGamepad=function(t){var e=this;this._gamepad=t,t.buttons.forEach((function(t,n){return e.buttons.set(n,t.pressed)})),t.axes.forEach((function(t,n){return e.axes.set(n,t)}))},Object.defineProperty(e.prototype,\"id\",{get:function(){return this._gamepad.id},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"connected\",{get:function(){return this._gamepad.connected},enumerable:!1,configurable:!0}),e.prototype.getButtonPressed=function(t){return this.buttons.get(t)},e.prototype.getAxis=function(t){return this.axes.get(t)},Object.defineProperty(e.prototype,\"dpadAxes\",{get:function(){return this._dpadAxes.set(this.dpadRight?1:this.dpadLeft?-1:0,this.dpadUp?1:this.dpadDown?-1:0),this._dpadAxes},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"leftStickAxes\",{get:function(){return this._leftStickAxes.set(this.leftStickHorizontal,this.leftStickVertical),this._leftStickAxes},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rightStickAxes\",{get:function(){return this._rightStickAxes.set(this.rightStickHorizontal,this.rightStickVertical),this._rightStickAxes},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"dpadUp\",{get:function(){var t;return null!==(t=this.buttons.get(12))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"dpadDown\",{get:function(){var t;return null!==(t=this.buttons.get(13))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"dpadLeft\",{get:function(){var t;return null!==(t=this.buttons.get(14))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"dpadRight\",{get:function(){var t;return null!==(t=this.buttons.get(15))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"bottomFace\",{get:function(){var t;return null!==(t=this.buttons.get(0))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rightFace\",{get:function(){var t;return null!==(t=this.buttons.get(1))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"leftFace\",{get:function(){var t;return null!==(t=this.buttons.get(2))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"topFace\",{get:function(){var t;return null!==(t=this.buttons.get(3))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"leftShoulder\",{get:function(){var t;return null!==(t=this.buttons.get(4))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rightShoulder\",{get:function(){var t;return null!==(t=this.buttons.get(5))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"leftTrigger\",{get:function(){var t;return null!==(t=this.buttons.get(6))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rightTrigger\",{get:function(){var t;return null!==(t=this.buttons.get(7))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"back\",{get:function(){var t;return null!==(t=this.buttons.get(8))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"start\",{get:function(){var t;return null!==(t=this.buttons.get(9))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"leftStickButton\",{get:function(){var t;return null!==(t=this.buttons.get(10))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rightStickButton\",{get:function(){var t;return null!==(t=this.buttons.get(11))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"leftStickHorizontal\",{get:function(){var t;return null!==(t=this.axes.get(0))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"leftStickVertical\",{get:function(){var t;return null!==(t=-this.axes.get(1))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rightStickHorizontal\",{get:function(){var t;return null!==(t=this.axes.get(2))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rightStickVertical\",{get:function(){var t;return null!==(t=-this.axes.get(3))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"anyButtonPressed\",{get:function(){var t;return null!==(t=Array.from(this.buttons.values()).find((function(t){return t})))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"vibrating\",{get:function(){return this._vibrating},enumerable:!1,configurable:!0}),e.prototype.vibrate=function(t,e,n,i){var r=this;void 0===t&&(t=200),void 0===e&&(e=.2),void 0===n&&(n=.2),void 0===i&&(i=0),this._gamepad.vibrationActuator&&(this._vibrating=!0,this._gamepad.vibrationActuator.playEffect(this._gamepad.vibrationActuator.type,{duration:t,weakMagnitude:e,strongMagnitude:n,startDelay:i}).catch((function(){return r._vibrating=!1})).finally((function(){return r._vibrating=!1})))},e}(),i=function(){function t(t,e,n,i){this.mouse=t,this.keyboard=e,this.gamepad=n,this.touch=i}return t.prototype.update=function(){this.mouse.update(),this.gamepad.update()},t}(),r=function(){function t(t){var e=this;this.pressedKeys=[],this.keyMap=new Map,this.eventHandler=function(t){if(\"keydown\"===t.type&&(e.keyMap.set(t.code,!0),e.pressedKeys.includes(t.code)||e.pressedKeys.push(t.code)),\"keyup\"===t.type){e.keyMap.set(t.code,!1);var n=e.pressedKeys.indexOf(t.code);-1!==n&&e.pressedKeys.splice(n,1)}},t.addEventListener(\"keydown\",this.eventHandler),t.addEventListener(\"keyup\",this.eventHandler)}return t.prototype.isPressed=function(t){var e;return null!==(e=this.keyMap.get(t))&&void 0!==e&&e},t.prototype.orPressed=function(t){var e=this;return t.reduce((function(t,n){var i;return t||null!==(i=e.keyMap.get(n))&&void 0!==i&&i}),!1)},t.prototype.andPressed=function(t){var e=this;return t.reduce((function(t,n){var i;return t&&null!==(i=e.keyMap.get(n))&&void 0!==i&&i}),!0)},t.prototype.isPressedReturn=function(t,e,n){return this.keyMap.get(t)?e:n},t.prototype.orPressedReturn=function(t,e,n){var i=this;return t.reduce((function(t,e){var n;return t||null!==(n=i.keyMap.get(e))&&void 0!==n&&n}),!1)?e:n},t.prototype.andPressedReturn=function(t,e,n){var i=this;return t.reduce((function(t,e){var n;return t&&null!==(n=i.keyMap.get(e))&&void 0!==n&&n}),!0)?e:n},t}(),o=function(){function e(e){this._leftButtonPressed=!1,this._scrollButtonPressed=!1,this._rightButtonPressed=!1,this._positionInViewport=new t,this._hasMoved=!1,this._wheelScroll=new t,this.lastPositionInViewport=new t,this.canvas=e,this.setup()}return Object.defineProperty(e.prototype,\"leftButtonPressed\",{get:function(){return this._leftButtonPressed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"scrollButtonPressed\",{get:function(){return this._scrollButtonPressed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rightButtonPressed\",{get:function(){return this._rightButtonPressed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"positionInViewport\",{get:function(){return this._positionInViewport},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"hasMoved\",{get:function(){return this._hasMoved},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"wheelScroll\",{get:function(){return this._wheelScroll},enumerable:!1,configurable:!0}),e.prototype.update=function(){!1===this._positionInViewport.equals(this.lastPositionInViewport)?(this._hasMoved=!0,this.lastPositionInViewport.copy(this._positionInViewport)):this._hasMoved=!1,this.wheelEvent?(this._wheelScroll.set(this.wheelEvent.deltaX,this.wheelEvent.deltaY),this.wheelEvent=void 0):this._wheelScroll.set(0,0)},e.prototype.setup=function(){var t=this;this.canvas.addEventListener(\"mousemove\",(function(e){return t.updatePosition(e)})),this.canvas.addEventListener(\"mousedown\",(function(e){return t.updateButtonDown(e)})),this.canvas.addEventListener(\"mouseup\",(function(e){return t.updateButtonUp(e)})),this.canvas.addEventListener(\"wheel\",(function(e){return t.handleWheelEvent(e)}))},e.prototype.updateButtonDown=function(t){this.canvas.focus(),t.preventDefault(),t.stopPropagation(),this._leftButtonPressed=0===t.button,this._scrollButtonPressed=1===t.button,this._rightButtonPressed=2===t.button},e.prototype.updateButtonUp=function(t){t.preventDefault(),t.stopPropagation(),this._leftButtonPressed=0!==t.button&&this._leftButtonPressed,this._scrollButtonPressed=1!==t.button&&this._scrollButtonPressed,this._rightButtonPressed=2!==t.button&&this._rightButtonPressed},e.prototype.updatePosition=function(t){t.preventDefault(),t.stopPropagation(),this._positionInViewport.set(t.offsetX/(this.canvas.clientWidth/this.canvas.width)-this.canvas.width/2,-t.offsetY/(this.canvas.clientHeight/this.canvas.height)+this.canvas.height/2)},e.prototype.handleWheelEvent=function(t){t.preventDefault(),t.stopPropagation(),this.wheelEvent=t},e}(),s=function(){function e(t){var e=this;this._touching=!1,this._interactions=[],this.eventHandler=function(t){\"touchstart\"===t.type&&(e._touching=!0,e.updatePosition(t)),\"touchmove\"===t.type&&e.updatePosition(t),\"touchend\"!==t.type&&\"touchcancel\"!==t.type||(e._touching=!1)},this.canvas=t,this.canvas.addEventListener(\"touchstart\",this.eventHandler),this.canvas.addEventListener(\"touchend\",this.eventHandler),this.canvas.addEventListener(\"touchcancel\",this.eventHandler),this.canvas.addEventListener(\"touchmove\",this.eventHandler)}return Object.defineProperty(e.prototype,\"touching\",{get:function(){return this._touching},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"interactions\",{get:function(){return this._interactions},enumerable:!1,configurable:!0}),e.prototype.updatePosition=function(e){if(e.preventDefault(),e.stopPropagation(),this._interactions=[],0!==e.targetTouches.length)for(var n=0;n<e.targetTouches.length;n++)this._interactions[n]={positionInViewport:new t((e.targetTouches[n].clientX-this.canvas.offsetLeft)/(this.canvas.clientWidth/this.canvas.width)-this.canvas.width/2,-(e.targetTouches[n].clientY-this.canvas.offsetTop)/(this.canvas.clientHeight/this.canvas.height)+this.canvas.height/2),radius:new t(e.targetTouches[n].radiusX,e.targetTouches[n].radiusY)}},e}(),u=function(t){return new i(new o(t),new r(t),new e,new s(t))};export{e as GamepadController,n as GamepadData,r as KeyboardController,o as MouseController,s as TouchController,u as inputManagerFactory};\n//# sourceMappingURL=index.esm.js.map\n","var t=function(){function t(t,i){void 0===t&&(t=0),void 0===i&&(i=0),this._x=t,this._y=i}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,i){this._x=t,this._y=i},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,i,e){return t.set(i.x+e.x,i.y+e.y),t},t.subtract=function(t,i,e){return t.set(i.x-e.x,i.y-e.y),t},t.unit=function(t,i){return 0===i.magnitude?t.set(0,0):t.set(i.x/i.magnitude,i.y/i.magnitude),t},t.normal=function(t,i){return t.set(-i.y,i.x),this.unit(t,t)},t.scale=function(t,i,e){return t.set(i.x*e,i.y*e),t},t.dot=function(t,i){return t.x*i.x+t.y*i.y},t.cross=function(t,i){return t.x*i.y-t.y*i.x},t.round=function(t,i){return t.set(Math.round(i.x),Math.round(i.y)),t},t}(),i=function(){function i(i,e,o,n){this._position=new t,this._center=new t,this._width=0,this._height=0,this.set(i,e,o,n)}return Object.defineProperty(i.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),i.prototype.set=function(t,i,e,o){this._position.set(t,i),this._width=e,this._height=o},i.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},i.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},i.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},i.prototype.contains=function(e){return e instanceof i?e.x1<=this.x1&&e.x>=this.x&&e.y1<=this.y1&&e.y>=this.y:e instanceof t&&!(e.x<this.x||e.y<this.y||e.x>=this.x1||e.y>=this.y1)},i}(),e=function(t,i,e){return Math.min(e,Math.max(i,t))};!function(){function i(i,e){void 0===i&&(i=null),void 0===e&&(e=null),this._degrees=0,this._radians=0,this._direction=new t,i?this.radians=i:e&&(this.degrees=e)}Object.defineProperty(i.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),i.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))}}();var o,n=function(){function i(){}return i.prototype.create=function(i){var e=i.shape,o=i.layer,n=i.updateCollisions,s=i.physics,r=i.position,h=i.rotation,a=i.group,c=i.onCollision;return{id:0,active:!0,layer:o,shape:e,updateCollisions:n,physics:s,position:null!=r?r:new t,rotation:null!=h?h:0,group:a,onCollision:c}},i}(),s=function(){function t(t,e){void 0===e&&(e=0),this.area=new i(0,0,0,0),this.depth=0,this.items=[],this.children=[],this.depth=e,this.resize(t)}return t.prototype.resize=function(t){this.clear(),this.area.copy(t)},t.prototype.clear=function(){this.items=[],this.children.forEach((function(t){return t.clear()})),this.children=[]},t.prototype.insert=function(t,i){0===this.children.length&&this.items.length>16&&this.depth<8&&this.split(),this.children.length>0?this.insertItemIntoChildren(t,i):this.items.push([t,i])},t.prototype.split=function(){var e=this,o=this.area.width/2,n=this.area.height/2;this.children=[new i(this.area.x,this.area.y,o,n),new i(this.area.x,this.area.y+n,o,n),new i(this.area.x+o,this.area.y+n,o,n),new i(this.area.x+o,this.area.y,o,n)].map((function(i){return new t(i,e.depth+1)})),this.items.forEach((function(t){return e.insertItemIntoChildren(t[0],t[1])})),this.items=[]},t.prototype.insertItemIntoChildren=function(t,i){this.getChildrenForArea(i).forEach((function(e){return e.insert(t,i)}))},t.prototype.retrieve=function(t){var i=[];return this.children.length>0?this.getChildrenForArea(t).forEach((function(e){return i.push.apply(i,e.retrieve(t))})):this.items.forEach((function(t){return i.push(t[0])})),i},t.prototype.getChildrenForArea=function(t){var i=[];return t.x<=this.area.center.x&&t.y<=this.area.center.y&&i.push(this.children[0]),t.x<=this.area.center.x&&t.y1>=this.area.center.y&&i.push(this.children[1]),t.x1>=this.area.center.x&&t.y1>=this.area.center.y&&i.push(this.children[2]),t.x1>=this.area.center.x&&t.y<=this.area.center.y&&i.push(this.children[3]),i},t}(),r=function(t,i,e,o){return Math.min((t-i)/e|0,o-1)},h=function(){function t(t){this.coordinates={x0:0,x1:0,y0:0,y1:0},this._subdivisions=1,this.resize(t)}return Object.defineProperty(t.prototype,\"subdivisions\",{get:function(){return this._subdivisions},set:function(t){this._subdivisions=e(t,1,20)},enumerable:!1,configurable:!0}),t.prototype.resize=function(t){this.area=t,this.cellWidth=Math.ceil(t.width/this._subdivisions),this.cellHeight=Math.ceil(t.height/this._subdivisions),this.itemsInCells=[];for(var i=0;i<this._subdivisions;i++){this.itemsInCells[i]=[];for(var e=0;e<this._subdivisions;e++)this.itemsInCells[i][e]=[]}},t.prototype.clear=function(){for(var t=0;t<this._subdivisions;t++)for(var i=0;i<this._subdivisions;i++)this.itemsInCells[t][i]=[]},t.prototype.insert=function(t,i){this.updateCoordinates(i);for(var e=this.coordinates.x0;e<=this.coordinates.x1;e++)for(var o=this.coordinates.y0;o<=this.coordinates.y1;o++)this.itemsInCells[e][o].push(t)},t.prototype.retrieve=function(t){var i=[];this.updateCoordinates(t);for(var e=this.coordinates.x0;e<=this.coordinates.x1;e++)for(var o=this.coordinates.y0;o<=this.coordinates.y1;o++)this.itemsInCells[e][o].forEach((function(t){return i.includes(t)?null:i.push(t)}));return i},t.prototype.updateCoordinates=function(t){this.coordinates.x0=r(t.x,this.area.x,this.cellWidth,this._subdivisions),this.coordinates.x1=r(t.x1,this.area.x,this.cellWidth,this._subdivisions),this.coordinates.y0=r(t.y,this.area.y,this.cellHeight,this._subdivisions),this.coordinates.y1=r(t.y1,this.area.y,this.cellHeight,this._subdivisions)},t}();!function(t){t[t.QuadTree=0]=\"QuadTree\",t[t.SpartialGrid=1]=\"SpartialGrid\"}(o||(o={}));var a,c=function(){function e(e,n,s,r){this.collisions=[],this.lastCollidersAmount=0,this.minArea=new t,this.maxArea=new t,this.newArea=new i(0,0,0,0),this.method=e,this.colliders=[],this.activeColliders=[],this.collisionMatrix=r,this.setupBroadPhaseResolver(null!=n?n:o.QuadTree,s)}return e.prototype.setupBroadPhaseResolver=function(t,e){this.collisionArea=null!=e?e:new i(0,0,0,0),this.fixedCollisionArea=!!e,t===o.SpartialGrid?this.broadPhaseResolver=new h(this.collisionArea):this.broadPhaseResolver=new s(this.collisionArea)},e.prototype.addCollider=function(t){t.id=this.colliders.length,this.colliders.push(t)},e.prototype.getCollider=function(t){return this.colliders[t]},e.prototype.removeCollider=function(t){this.colliders.splice(t.id,1),this.colliders.forEach((function(t,i){return t.id=i}))},e.prototype.clearColliders=function(){this.colliders=[]},e.prototype.getCollisionsForCollider=function(t){return t.active?this.collisions.filter((function(i){return i.localCollider.id===t.id})):[]},e.prototype.getCollisionsForColliderAndLayer=function(t,i){return t.active?this.collisions.filter((function(e){return e.localCollider.id===t.id&&e.remoteCollider.layer===i})):[]},e.prototype.refreshCollisionsForCollider=function(t){this.colliders[t.id]&&t.active&&(this.collisions=this.collisions.filter((function(i){return i.localCollider.id!==t.id&&i.remoteCollider.id!==t.id})),this.updateShape(t),this.narrowPhase(t,this.broadPhase(t)))},e.prototype.resolve=function(){var t=this;this.collisions=[],0!==this.colliders.length&&(this.activeColliders=this.colliders.filter((function(t){return t.active})),this.broadPhaseResolver.clear(),this.activeColliders.forEach((function(i){t.updateShape(i)})),!1===this.fixedCollisionArea&&(this.updateNewArea(),!1===this.newArea.equals(this.collisionArea)&&(this.collisionArea.copy(this.newArea),this.broadPhaseResolver.resize(this.collisionArea))),this.checkForSpartialGridResize(),this.activeColliders.forEach((function(i){var e=i.id,o=i.shape.boundingBox;return t.broadPhaseResolver.insert(e,o)})),this.updateCollisions())},e.prototype.updateShape=function(t){t.shape.position=t.position,t.shape.rotation=t.rotation,t.shape.update()},e.prototype.updateNewArea=function(){var t=this;this.activeColliders.forEach((function(i){var e=i.shape.boundingBox;t.minArea.set(Math.min(e.x,t.minArea.x),Math.min(e.y,t.minArea.y)),t.maxArea.set(Math.max(e.x1,t.maxArea.x),Math.max(e.y1,t.maxArea.y))})),this.newArea.set(this.minArea.x,this.minArea.y,this.maxArea.x-this.minArea.x,this.maxArea.y-this.minArea.y)},e.prototype.checkForSpartialGridResize=function(){this.broadPhaseResolver instanceof h&&this.lastCollidersAmount!==this.activeColliders.length&&(this.broadPhaseResolver.subdivisions=1+(this.activeColliders.length/10|0),this.broadPhaseResolver.resize(this.collisionArea),this.lastCollidersAmount=this.activeColliders.length)},e.prototype.updateCollisions=function(){var t=this;this.activeColliders.filter((function(t){return t.updateCollisions})).forEach((function(i){return t.narrowPhase(i,t.broadPhase(i))}))},e.prototype.broadPhase=function(t){var i=this;return this.collisionMatrix?this.broadPhaseResolver.retrieve(t.shape.boundingBox).map((function(t){return i.colliders[t]})).filter((function(t){return t.active})).filter((function(e){return i.collisionMatrix.some((function(i){return i[0]===t.layer&&i[1]===e.layer||i[1]===t.layer&&i[0]===e.layer}))})):this.broadPhaseResolver.retrieve(t.shape.boundingBox).map((function(t){return i.colliders[t]})).filter((function(t){return t.active}))},e.prototype.narrowPhase=function(t,i){var e=this;i.filter((function(i){return!(t.group&&i.group&&i.group===t.group||t.id===i.id)})).forEach((function(i){if(!e.isResolved(t,i)){var o=e.method.getCollisionResolution(t.shape,i.shape);null!==o&&(e.collisions.push({localCollider:t,remoteCollider:i,resolution:o},{localCollider:i,remoteCollider:t,resolution:{direction:o.displacementDirection,displacementDirection:o.direction,penetration:o.penetration}}),t.onCollision&&t.onCollision(o))}}))},e.prototype.isResolved=function(t,i){for(var e=0,o=this.collisions;e<o.length;e++){var n=o[e];if(n.localCollider.id===t.id&&n.remoteCollider.id===i.id)return!0}return!1},e}();!function(t){t[t.Polygon=0]=\"Polygon\",t[t.Circumference=1]=\"Circumference\",t[t.Line=2]=\"Line\"}(a||(a={}));var l,u=function(){function t(t,i,e){this.AABBResolver=t,this.circumferenceAABBResolver=i,this.circumferenceResolver=e}return t.prototype.getCollisionResolution=function(t,i){return t.type===a.Polygon&&i.type===a.Polygon?this.AABBResolver.resolve(t,i):t.type===a.Circumference&&i.type===a.Polygon?this.circumferenceAABBResolver.resolve(t,i):t.type===a.Polygon&&i.type===a.Circumference?this.circumferenceAABBResolver.resolve(i,t,!0):t.type===a.Circumference&&i.type===a.Circumference?this.circumferenceResolver.resolve(t,i):null},t}();!function(t){t[t.AABB=0]=\"AABB\",t[t.SAT=1]=\"SAT\"}(l||(l={}));var p=function(){function t(t,i){this.circumferenceResolver=t,this.satResolver=i}return t.prototype.getCollisionResolution=function(t,i){return t.type===a.Circumference&&i.type===a.Circumference?this.circumferenceResolver.resolve(t,i):this.satResolver.resolve(t,i)},t}(),d=function(){function i(){this.direction=new t,this.displacementDirection=new t}return i.prototype.resolve=function(i,e){var o=i.boundingBox,n=e.boundingBox;return this.overlapX=Math.min(o.x1,n.x1)-Math.max(o.x,n.x),this.overlapY=Math.min(o.y1,n.y1)-Math.max(o.y,n.y),this.overlapX<0||this.overlapY<0?null:(this.checkOverlapForLines(o,n),this.direction.set(Math.sign(n.center.x-o.center.x),Math.sign(n.center.y-o.center.y)),this.preventContainment(o,n),this.overlapY<this.overlapX?(this.minOverlap=this.overlapY,this.displacementDirection.set(0,-this.direction.y)):(this.minOverlap=this.overlapX,this.displacementDirection.set(-this.direction.x,this.overlapY===this.overlapX?-this.direction.y:0)),t.unit(this.displacementDirection,this.displacementDirection),{direction:t.scale(new t,this.displacementDirection,-1),displacementDirection:this.displacementDirection.clone(),penetration:this.minOverlap})},i.prototype.checkOverlapForLines=function(t,i){0!==t.width&&0!==i.width||0!==this.overlapX||(this.overlapX=Math.min(Math.abs(t.x-i.x),Math.abs(t.x1-i.x1))),0!==t.height&&0!==i.height||0!==this.overlapY||(this.overlapY=Math.min(Math.abs(t.y-i.y),Math.abs(t.y1-i.y1)))},i.prototype.preventContainment=function(t,i){if(this.overlapY>0&&(t.y1>i.y1&&t.y<i.y||t.y1<i.y1&&t.y>i.y)){var e=Math.abs(t.y-i.y),o=Math.abs(t.y1-i.y1);this.overlapY+=e<o?e:o}if(this.overlapX>0&&(t.x1>i.x1&&t.x<i.x||t.x1<i.x1&&t.x>i.x)){e=Math.abs(t.x-i.x),o=Math.abs(t.x1-i.x1);this.overlapX+=e<o?e:o}},i}(),f=function(){function i(){this.closestPoint=new t,this.distance=new t,this.direction=new t}return i.prototype.resolve=function(i,o,n){return void 0===n&&(n=!1),this.closestPoint.set(e(i.position.x,o.boundingBox.x,o.boundingBox.x1),e(i.position.y,o.boundingBox.y,o.boundingBox.y1)),t.subtract(this.distance,this.closestPoint,i.position),this.distance.magnitude>i.radius?null:(t.unit(this.direction,this.distance),{direction:n?t.scale(new t,this.direction,-1):this.direction.clone(),displacementDirection:n?this.direction.clone():t.scale(new t,this.direction,-1),penetration:i.radius-this.distance.magnitude})},i}(),y=function(){function i(){this.distance=new t,this.direction=new t}return i.prototype.resolve=function(i,e){return t.subtract(this.distance,e.position,i.position),this.distance.magnitude>i.radius+e.radius?null:(t.unit(this.direction,this.distance),{direction:this.direction.clone(),displacementDirection:t.scale(new t,this.direction,-1),penetration:i.radius+e.radius-this.distance.magnitude})},i}(),x=function(t,i){return x=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)Object.prototype.hasOwnProperty.call(i,e)&&(t[e]=i[e])},x(t,i)};function v(t,i,e){if(e||2===arguments.length)for(var o,n=0,s=i.length;n<s;n++)!o&&n in i||(o||(o=Array.prototype.slice.call(i,0,n)),o[n]=i[n]);return t.concat(o||Array.prototype.slice.call(i))}\"function\"==typeof SuppressedError&&SuppressedError;var m,g=function(){function i(){this.projA={min:0,max:0},this.projB={min:0,max:0},this.smallestAxis=new t,this.distance=new t(1/0,1/0),this.cache=new t}return i.prototype.resolve=function(i,e){var o=this;this.minOverlap=1/0,i.type===a.Circumference?this.setCircumferenceAxis(i,e):e.type===a.Circumference&&this.setCircumferenceAxis(e,i),this.axes=v([],i.projectionAxes,!0),e.projectionAxes.forEach((function(t){return o.axes.some((function(i){return i.equals(t)}))?null:o.axes.push(t)}));for(var n=0;n<this.axes.length;n++){if(i.type===a.Circumference?this.setCircumferenceVertices(i,this.axes[n]):e.type===a.Circumference&&this.setCircumferenceVertices(e,this.axes[n]),this.projectShapeOntoAxis(this.projA,i,this.axes[n]),this.projectShapeOntoAxis(this.projB,e,this.axes[n]),this.currentOverlap=Math.min(this.projA.max,this.projB.max)-Math.max(this.projA.min,this.projB.min),this.currentOverlap<0)return null;if(this.invertAxis=!0,this.projA.max>this.projB.max&&this.projA.min<this.projB.min||this.projA.max<this.projB.max&&this.projA.min>this.projB.min){var s=Math.abs(this.projA.min-this.projB.min),r=Math.abs(this.projA.max-this.projB.max);s<r?this.currentOverlap+=s:(this.currentOverlap+=r,t.scale(this.axes[n],this.axes[n],-1),this.invertAxis=!1)}this.currentOverlap<this.minOverlap&&(this.minOverlap=this.currentOverlap,this.smallestAxis.copy(this.axes[n]),this.invertAxis&&this.projA.max<this.projB.max&&t.scale(this.smallestAxis,this.axes[n],-1))}return{direction:t.scale(new t,this.smallestAxis,-1),displacementDirection:this.smallestAxis.clone(),penetration:this.minOverlap}},i.prototype.projectShapeOntoAxis=function(i,e,o){return i.min=1/0,i.max=-1/0,e.vertices.forEach((function(e){i.min=Math.min(t.dot(o,e),i.min),i.max=Math.max(t.dot(o,e),i.max)})),i},i.prototype.setCircumferenceAxis=function(i,e){var o=this;this.distance.set(1/0,1/0),e.vertices.forEach((function(e){t.subtract(o.cache,e,i.position),o.cache.magnitude<o.distance.magnitude&&o.distance.copy(o.cache)})),t.unit(i.projectionAxes[0],this.distance)},i.prototype.setCircumferenceVertices=function(i,e){t.add(i.vertices[0],i.position,t.scale(this.cache,t.unit(this.cache,e),-i.radius)),t.add(i.vertices[1],i.position,t.scale(this.cache,t.unit(this.cache,e),i.radius))},i}(),b=function(){function t(t,i,e,o){this.collisionManager=t,this.colliderFactory=i,this.rigidBodyManager=e,this.rigidBodyFactory=o}return t.prototype.addCollider=function(t){var i=this.colliderFactory.create(t);return this.collisionManager.addCollider(i),i},t.prototype.removeCollider=function(t){this.collisionManager.removeCollider(t)},t.prototype.getCollisionsForCollider=function(t){return this.collisionManager.getCollisionsForCollider(t)},t.prototype.getCollisionsForColliderAndLayer=function(t,i){return this.collisionManager.getCollisionsForColliderAndLayer(t,i)},t.prototype.addRigidBody=function(t){var i=this.rigidBodyFactory.create(t);return this.rigidBodyManager.addRigidBody(i),i},t.prototype.removeRigidBody=function(t){this.rigidBodyManager.removeRigidBody(t)},t.prototype.resolve=function(t){this.collisionManager.resolve(),this.rigidBodyManager.resolve(t)},t.prototype.clear=function(){this.collisionManager.clearColliders(),this.rigidBodyManager.clearRigidBodies()},t}(),M=function(){function i(){}return i.prototype.create=function(i){var e=i.colliderIds,o=i.type,n=i.gravity,s=i.position,r=i.velocity,h=i.onResolve;if(0===e.length)throw new Error(\"RigidBody needs at least one collider\");return{active:!0,colliderIds:e,type:o,gravity:null!=n?n:0,position:null!=s?s:new t,velocity:null!=r?r:new t,onResolve:h}},i}();!function(t){t[t.Static=0]=\"Static\",t[t.Dynamic=1]=\"Dynamic\",t[t.Kinematic=2]=\"Kinematic\"}(m||(m={}));var A=[\"x\",\"y\"],C=function(){function i(i){this.collisionManager=i,this.rigidBodies=[],this.activeRigidBodies=[],this.colliders=[],this.velocity=new t,this.displacement=new t,this.cacheDisplacement=0}return i.prototype.addRigidBody=function(t){this.rigidBodies.push(t)},i.prototype.removeRigidBody=function(t){var i=this.rigidBodies.indexOf(t);i>=0&&this.rigidBodies.splice(i,1)},i.prototype.clearRigidBodies=function(){this.rigidBodies=[]},i.prototype.resolve=function(t){var i=this;this.activeRigidBodies=this.rigidBodies.filter((function(t){return t.active})),this.colliders=this.activeRigidBodies.reduce((function(t,i){return v(v([],t,!0),i.colliderIds,!0)}),[]),this.activeRigidBodies.forEach((function(e){e.type===m.Dynamic?i.dynamicUpdate(e,t):e.type===m.Kinematic&&i.kinematicUpdate(e,t),e.onResolve&&e.onResolve(e)}))},i.prototype.dynamicUpdate=function(t,i){var e=this;this.applyGravity(t,i),A.forEach((function(o){e.applyVelocity(t,i,o),e.obtainDisplacement(t,o),e.applyReposition(t,o)}))},i.prototype.kinematicUpdate=function(i,e){var o=this;t.add(i.position,i.position,t.scale(this.velocity,i.velocity,e)),i.colliderIds.map((function(t){return o.collisionManager.getCollider(t)})).forEach((function(i){t.add(i.position,i.position,o.velocity),o.collisionManager.refreshCollisionsForCollider(i)}))},i.prototype.applyGravity=function(t,i){t.gravity>0&&(t.velocity.y-=t.gravity*i)},i.prototype.applyVelocity=function(t,i,e){var o=this;this.velocity[e]=t.velocity[e]*i,0!==this.velocity[e]&&(t.position[e]+=this.velocity[e],t.colliderIds.map((function(t){return o.collisionManager.getCollider(t)})).forEach((function(t){t.position[e]+=o.velocity[e],o.collisionManager.refreshCollisionsForCollider(t)})))},i.prototype.obtainDisplacement=function(t,i){var e=this;this.displacement[i]=0,this.getCollisions(t).forEach((function(t){e.cacheDisplacement=t.resolution.displacementDirection[i]*t.resolution.penetration,e.displacement[i]=Math.abs(e.displacement[i])>Math.abs(e.cacheDisplacement)?e.displacement[i]:e.cacheDisplacement}))},i.prototype.applyReposition=function(t,i){var e=this;0!==this.displacement[i]&&(t.position[i]+=this.displacement[i],t.colliderIds.map((function(t){return e.collisionManager.getCollider(t)})).forEach((function(t){t.position[i]+=e.displacement[i],e.collisionManager.refreshCollisionsForCollider(t)})),Math.sign(this.displacement[i])!==Math.sign(t.velocity[i])&&(t.velocity[i]=0))},i.prototype.getCollisions=function(t){var i=this;return t.colliderIds.map((function(t){return i.collisionManager.getCollider(t)})).filter((function(t){return t.active&&t.physics})).reduce((function(t,e){return t.push.apply(t,i.collisionManager.getCollisionsForCollider(e).filter((function(t){return t.remoteCollider.physics&&i.colliders.includes(t.remoteCollider.id)}))),t}),[])},i}(),_=function(){function e(e){this.radius=e,this.type=a.Circumference,this.boundingBox=new i(0,0,0,0),this.vertices=[new t,new t],this.projectionAxes=[new t],this._position=new t}return Object.defineProperty(e.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),e.prototype.update=function(){this.updateBoundingBox()},e.prototype.updateBoundingBox=function(){this.boundingBox.set(this.position.x-this.radius,this.position.y-this.radius,2*this.radius,2*this.radius)},e}(),w=function(){function e(e){this.vertexModel=e,this.type=a.Polygon,this.vertices=[new t,new t],this.projectionAxes=[new t],this.boundingBox=new i(0,0,0,0),this.rotation=0,this._position=new t}return e.prototype.update=function(){this.updateVertices(),this.updateBoundingBox(),this.updateProjectionAxes()},Object.defineProperty(e.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),e.prototype.updateVertices=function(){for(var t=0;t<this.vertexModel.length;t++)this.vertices[t].set(this.vertexModel[t].x*Math.cos(this.rotation)-this.vertexModel[t].y*Math.sin(this.rotation)+this._position.x,this.vertexModel[t].x*Math.sin(this.rotation)+this.vertexModel[t].y*Math.cos(this.rotation)+this._position.y)},e.prototype.updateBoundingBox=function(){this.boundingBox.x=Math.min(this.vertices[0].x,this.vertices[1].x),this.boundingBox.y=Math.min(this.vertices[0].y,this.vertices[1].y),this.boundingBox.width=Math.max(this.vertices[0].x,this.vertices[1].x)-this.boundingBox.x,this.boundingBox.height=Math.max(this.vertices[0].y,this.vertices[1].y)-this.boundingBox.y},e.prototype.updateProjectionAxes=function(){t.normal(this.projectionAxes[0],t.subtract(this.projectionAxes[0],this.vertices[1],this.vertices[0]))},e}(),B=function(){function e(e){this.vertexModel=e,this.type=a.Polygon,this.vertices=[],this.boundingBox=new i(0,0,0,0),this.rotation=0,this._projectionAxes=[],this._position=new t,this.boxMinX=Number.MAX_SAFE_INTEGER,this.boxMinY=Number.MAX_SAFE_INTEGER,this.boxMaxX=-Number.MAX_SAFE_INTEGER,this.boxMaxY=-Number.MAX_SAFE_INTEGER;for(var o=0;o<this.vertexModel.length;o++)this.vertices.push(new t),this._projectionAxes.push(new t)}return Object.defineProperty(e.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"projectionAxes\",{get:function(){return this._projectionAxes},enumerable:!1,configurable:!0}),e.prototype.update=function(){this.updateVertices(),this.updateBoundingBox(),this.updateProjectionAxes()},e.prototype.updateVertices=function(){for(var t=0;t<this.vertexModel.length;t++)this.vertices[t].set(this.vertexModel[t].x*Math.cos(this.rotation)-this.vertexModel[t].y*Math.sin(this.rotation)+this._position.x,this.vertexModel[t].x*Math.sin(this.rotation)+this.vertexModel[t].y*Math.cos(this.rotation)+this._position.y)},e.prototype.updateBoundingBox=function(){var t=this;this.boxMinX=this.vertices[0].x,this.boxMinY=this.vertices[0].y,this.boxMaxX=this.vertices[0].x,this.boxMaxY=this.vertices[0].y,this.vertices.forEach((function(i){t.boxMinX=Math.min(i.x,t.boxMinX),t.boxMinY=Math.min(i.y,t.boxMinY),t.boxMaxX=Math.max(i.x,t.boxMaxX),t.boxMaxY=Math.max(i.y,t.boxMaxY)})),this.boundingBox.set(this.boxMinX,this.boxMinY,this.boxMaxX-this.boxMinX,this.boxMaxY-this.boxMinY)},e.prototype.updateProjectionAxes=function(){for(var i,e=0;e<this.vertices.length;e++)t.normal(this._projectionAxes[e],t.subtract(this._projectionAxes[e],null!==(i=this.vertices[e+1])&&void 0!==i?i:this.vertices[0],this.vertices[e]))},e}(),j=function(i){function e(e,o){var n=i.call(this,[new t(-e/2,-o/2),new t(-e/2,o/2),new t(e/2,o/2),new t(e/2,-o/2)])||this;return n.width=e,n.height=o,n._projectionAxes=[new t,new t],n}return function(t,i){if(\"function\"!=typeof i&&null!==i)throw new TypeError(\"Class extends value \"+String(i)+\" is not a constructor or null\");function e(){this.constructor=t}x(t,i),t.prototype=null===i?Object.create(i):(e.prototype=i.prototype,new e)}(e,i),e.prototype.updateSize=function(t,i){this.width=t,this.height=i,this.vertexModel[0].set(-t/2,-i/2),this.vertexModel[1].set(-t/2,i/2),this.vertexModel[2].set(t/2,i/2),this.vertexModel[3].set(t/2,-i/2)},e.prototype.updateProjectionAxes=function(){t.unit(this.projectionAxes[0],t.subtract(this.projectionAxes[0],this.vertices[1],this.vertices[0])),t.normal(this.projectionAxes[1],this.projectionAxes[0])},e}(B),P=function(t){var i=void 0===t?{}:t,e=i.collisionArea,o=i.collisionMatrix,s=i.collisionMethod,r=i.collisionBroadPhaseMethod,h=new y,a=s===l.AABB?new u(new d,new f,h):new p(h,new g),x=new c(a,r,e,o),v=new n,m=new C(x),A=new M;return new b(x,v,m,A)};export{o as BroadPhaseMethods,_ as Circumference,l as CollisionMethods,w as Line,B as Polygon,j as Rectangle,m as RigidBodyType,P as physicsManagerFactory};\n//# sourceMappingURL=index.esm.js.map\n"],"names":["t","e","this","_x","_y","Object","defineProperty","prototype","get","set","enumerable","configurable","Math","sqrt","pow","_direction","unit","copy","x","y","equals","clone","distance","add","i","subtract","magnitude","normal","scale","dot","cross","round","n","o","_position","_center","_width","_height","width","height","position","overlaps","x1","y1","contains","min","max","random","r","s","push","u","h","_degrees","_radians","radians","degrees","PI","updateDirection","cos","sin","setPrototypeOf","__proto__","Array","hasOwnProperty","call","TypeError","String","constructor","create","assign","arguments","length","apply","slice","concat","SuppressedError","Init","Start","Update","UpdateEngine","UpdateCollider","UpdatePhysics","UpdateTransform","UpdatePreRender","UpdateCamera","UpdateRender","Destroy","StopGame","a","timeManager","physicsManager","renderManager","inputManager","gameObjectManager","sceneManager","canvasColor","running","gameLoopAccumulator","gameObjects","components","changingScene","sceneEvents","gameObjectEvents","start","startLoop","pause","resume","stop","dispatchFrameEvent","clear","clearScreen","loadOpeningScene","requestAnimationLoop","window","performance","now","gameFramerate","physicsFramerate","asyncPhysicsLoop","updateForBrowser","pendingSceneToload","loadPendingScene","browserDeltaTime","minGameDeltatime","gameLogicIteration","renderIteration","unloadCurrentScene","requestAnimationFrame","updateForGame","load","update","updateForPhysics","physicsIteration","render","clearData","timeScale","resolve","physicsDeltaTime","physicsIntervalId","setInterval","clearInterval","document","hidden","loadedScene","getLoadedScene","findGameObjects","filter","active","forEach","getComponents","includes","dispatch","c","updateEvent","started","container","gameConfig","getConstant","headless","assetManager","getSingleton","domManager","init","onDestroy","_destroy","_stopGame","addGameObject","findGameObject","findGameObjectsByTag","destroyGameObject","l","allowMultiple","_active","gameObject","name","onActiveChange","getCurrentScene","getGameObject","getComponent","hasComponent","removeComponent","keys","p","d","f","g","m","Polygon","Circumference","Line","WorldSpace","ViewPort","Sprite","Text","Tilemap","Mask","Geometric","Video","v","gl","viewport","object","setViewport","zoom","canvas","setObjectForResizeable","rotation","abs","setObjectForText","text","fontSize","lineSeparation","letterSpacing","split","reduce","setObjectForGeometric","vertexModel","shape","radius","Number","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","setObjectForTilemap","tilemap","ceil","tiles","renderPosition","tileWidth","tileHeight","applyCullingInTiles","culledTiles","map","isInViewPort","location","type","applyCulling","b","M","_","Center","RightUp","RightDown","RightCenter","w","C","webglManager","cullingManager","renderData","cameraData","addRenderData","addCameraData","sort","depth","renderByCamera","layers","layer","indexOf","realWidth","realHeight","orientation","clearCanvas","preloadTexture","createTexture","LegacyWebGL","WebGL2","j","contextVersion","getContextVersion","Error","getContext","O","fontAtlas","Map","hasFontAtlas","has","symbol","getFontAtlas","getOrCreate","bitmapSize","chars","fromCharCode","renderAtlas","FontFace","family","Symbol","for","P","clearRect","textBaseline","fillStyle","font","fillText","glyphs","id","measureText","fontFaceFamily","bitmapFontSize","gridSize","createElement","R","shaderLoader","createProgram","VERTEX_SHADER","FRAGMENT_SHADER","attachShader","linkProgram","LINK_STATUS","getProgramParameter","getProgramInfoLog","deleteProgram","A","programFactory","loadProgram","program","positionBuffer","createBuffer","textureBuffer","positionCoordsAttr","getAttribLocation","texCoordsAttr","modelMatrixUniform","getUniformLocation","projectionMatrixUniform","textureMatrixUniform","renderTextureUniform","textureUniform","solidColorUniform","useTintColorUniform","tintColorUniform","useMaskColorUniform","maskColorUniform","maskColorMixUniform","alphaUniform","useProgram","blendFunc","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","enableVertexAttribArray","bindBuffer","ARRAY_BUFFER","vertexAttribPointer","FLOAT","S","createShader","shaderSource","compileShader","COMPILE_STATUS","getShaderParameter","getShaderInfoLog","deleteShader","E","Float32Array","T","D","F","B","U","hypot","I","L","exec","parseInt","V","k","programManager","vertices","lastVertices","projectionMatrix","modelMatrix","textureMatrix","circumferenceVertices","renderLines","LINE_LOOP","LINES","renderCircumference","generateVerticesKey","generatePolygonVertices","bufferData","DYNAMIC_DRAW","uniformMatrix4fv","uniform1i","color","uniform4f","uniform1f","drawArrays","toString","Rectangle","G","W","rectangleVertices","lastShape","STATIC_DRAW","alpha","enable","BLEND","disable","TRIANGLES","TRIANGLE_FAN","H","textureManager","lastTexture","posVertices","texVertices","flipHorizontal","flipVertical","image","naturalWidth","naturalHeight","getOrCreateTextureFromImage","smooth","bindTexture","TEXTURE_2D","tintColor","maskColor","maskColorMix","z","N","Y","X","q","fontAtlasFactory","textSize","modelPosition","setDefaultValues","bitmap","charRanges","generateTextVertices","setPositionFromOrientation","getOrCreateTextureFromCanvas","margin","spacing","K","tileset","texMargin","texSpacing","texWidth","texHeight","texCorrection","processTileset","generateVertices","correction","floor","Q","video","videoWidth","videoHeight","getOrCreateTextureFromVideo","texImage2D","RGBA","UNSIGNED_BYTE","$","createFromImage","createFromSource","addEventListener","createFromCanvas","createPixelTexture","Uint8Array","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","TEXTURE_MIN_FILTER","LINEAR","TEXTURE_MAG_FILTER","NEAREST","J","textureFactory","textures","src","createTextureFromImage","createTextureFromCanvas","createTextureFromVideo","Z","renderers","lastRender","clearColor","COLOR_BUFFER_BIT","tt","et","it","nt","rt","updateCollisions","physics","group","onCollision","ot","area","items","children","resize","insert","insertItemIntoChildren","getChildrenForArea","retrieve","center","st","at","coordinates","x0","y0","_subdivisions","cellWidth","cellHeight","itemsInCells","updateCoordinates","QuadTree","SpartialGrid","ht","ct","collisions","lastCollidersAmount","minArea","maxArea","newArea","method","colliders","activeColliders","collisionMatrix","setupBroadPhaseResolver","collisionArea","fixedCollisionArea","broadPhaseResolver","addCollider","getCollider","removeCollider","splice","clearColliders","getCollisionsForCollider","localCollider","getCollisionsForColliderAndLayer","remoteCollider","refreshCollisionsForCollider","updateShape","narrowPhase","broadPhase","updateNewArea","checkForSpartialGridResize","boundingBox","subdivisions","some","isResolved","getCollisionResolution","resolution","direction","displacementDirection","penetration","lt","ut","AABBResolver","circumferenceAABBResolver","circumferenceResolver","AABB","SAT","pt","satResolver","dt","overlapX","overlapY","checkOverlapForLines","sign","preventContainment","minOverlap","ft","closestPoint","gt","mt","yt","vt","xt","projA","projB","smallestAxis","cache","setCircumferenceAxis","axes","projectionAxes","setCircumferenceVertices","projectShapeOntoAxis","currentOverlap","invertAxis","bt","collisionManager","colliderFactory","rigidBodyManager","rigidBodyFactory","addRigidBody","removeRigidBody","clearRigidBodies","Mt","colliderIds","gravity","velocity","onResolve","Static","Dynamic","Kinematic","_t","wt","rigidBodies","activeRigidBodies","displacement","cacheDisplacement","dynamicUpdate","kinematicUpdate","applyGravity","applyVelocity","obtainDisplacement","applyReposition","getCollisions","Ct","updateBoundingBox","jt","updateVertices","updateProjectionAxes","Ot","_projectionAxes","boxMinX","boxMinY","boxMaxX","boxMaxY","Pt","updateSize","Rt","At","St","gamepads","eventHandler","gamepadConnected","gamepad","gamepadDisconected","getGamepad","getGamepads","from","values","index","Et","updateFromGamepad","delete","getGamepadsFromBrowser","navigator","webkitGetGamepads","buttons","_dpadAxes","_leftStickAxes","_rightStickAxes","_vibrating","_gamepad","pressed","connected","getButtonPressed","getAxis","dpadRight","dpadLeft","dpadUp","dpadDown","leftStickHorizontal","leftStickVertical","rightStickHorizontal","rightStickVertical","find","vibrate","vibrationActuator","playEffect","duration","weakMagnitude","strongMagnitude","startDelay","catch","finally","Tt","mouse","keyboard","touch","Dt","pressedKeys","keyMap","code","isPressed","orPressed","andPressed","isPressedReturn","orPressedReturn","andPressedReturn","Ft","_leftButtonPressed","_scrollButtonPressed","_rightButtonPressed","_positionInViewport","_hasMoved","_wheelScroll","lastPositionInViewport","setup","wheelEvent","deltaX","deltaY","updatePosition","updateButtonDown","updateButtonUp","handleWheelEvent","focus","preventDefault","stopPropagation","button","offsetX","clientWidth","offsetY","clientHeight","Bt","_touching","_interactions","targetTouches","positionInViewport","clientX","offsetLeft","clientY","offsetTop","radiusX","radiusY","Image","Audio","Font","Ut","It","assets","getAssetsLoaded","loaded","loadImage","crossOrigin","createAsset","loadAudio","loadFont","then","fonts","loadVideo","playsInline","getImage","url","element","getAudio","getFont","getVideo","Lt","Vt","_canvas","containerNode","gameWidth","gameHeight","setupCanvas","tabIndex","appendChild","kt","lastId","findGameObjectById","findGameObjectsByParent","parent","findGameObjectByParent","tag","destroyAllGameObjects","keep","destroy","destroyChildren","Gt","asyncGameLoop","gameInterval","process","uptime","physicsInterval","Wt","scenes","sceneNamePendingToLoad","addScene","currentScene","openingSceneName","loadScene","Ht","zt","minPhysicsDeltaTime","unscaledDeltaTime","unscaledPhysicsDeltaTime","maxDeltaTime","thenForGame","thenForPhysics","thenForBrowser","join","parseFloat","toFixed","Yt","instances","constructors","constants","getTranscient","addConstant","Xt","qt","Kt","Qt","$t","debugEnabled","spriteDefaultScale","collisionMethod","collisionBroadPhaseMethod","Jt","_config","setupManagers","Nt","iterationManager","run","Zt","parentScale","parentRotation","_scale","_rotation","_innerPosition","_parent","lastParentRadians","lastPosition","scaledInnerPosition","setPositionFromParent","translateInnerPosition","updateScaledInnerPosition","atan2","te","renderer","activateColliders","updateRealSize","updateColliders","collidesWithLayer","collidesWithLayers","getCollisionWithLayer","createCollisionData","getCollisionsWithLayer","getCollisionsWithLayers","collider","ee","rigidBody","rigidBodyType","getColliderIds","transform","innerPosition","ie","ne","ui","activeComponentsCache","activeChildrenCache","addComponent","updateComponentsActiveStatus","updateChildrenActiveStatus","getChildren","checkMultipleComponent","addChild","getChild","destroyComponents","re","oe","viewportRect","worldSpaceRect","_zoom","addLayer","updateViewportRect","updateWorldSpaceRect","updateCameraData","se","camera","ae","game","config","he","debug","scaledVertexModel","scaledOffset","scaledPosition","finalRotation","ce","translate","le","realOffset","realPosition","realRotation","applyRotation","ue","realRadius","pe","de","tilemapRenderer","composite","scaledTileWidth","scaledTileHeight","scaledWidth","scaledHeight","useLineColliders","useBoxColliders","fe","needsCollider","getNeighbors","hasTile","addLineCollider","ge","me","ye","cachePosition","cacheRenderPosition","cacheScale","sprite","offset","opacity","_tiled","tiled","updateRenderDataArray","updateRenderData","calculateRenderPosition","translateRenderPosition","ve","lastFrameText","bitmapMargin","bitmapSpacing","crop","xe","be","Me","_playing","_paused","videoEventHandler","removeEventListener","userInputEventHandler","play","_volume","volume","_loop","loop","currentTime","_e","infinite","tilesetTileIds","chunks","tiledData","tilemapLayer","tiledLayer","processTilemap","visible","tintcolor","processChunk","processFixedLayer","data","getTilesetTileId","tilesets","firstgid","we","trim","Ce","spriteRenderer","animations","currentAnimation","paused","playFrame","deltaTime","restarted","addAnimation","framerate","je","playAnimation","stopAnimation","reset","isPlayingAnimation","isPaused","_sprite","_restarted","currentFrame","frameTime","_animation","sprites","Oe","Pe","tracks","audioSourceCache","audioEventHandler","_audioSource","audioContext","AudioContext","state","playClip","addAudioSource","cloneNode","createMediaElementSource","connect","destination","loadAudioSource","close","Re","_loaded","Ae","touchEnabled","pressedLastFrame","scaled","leftButtonPressed","resolveMouseAndRectangle","resolveMouseAndCircumference","touching","resolveTouchAndRectangle","resolveTouchAndCircumference","onClick","onPressed","interactions","Se","mousePressed","gameCamera","console","log"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../packages/core/lib/index.esm.js"],"sourcesContent":["var t=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,i){return t.set(e.x+i.x,e.y+i.y),t},t.subtract=function(t,e,i){return t.set(e.x-i.x,e.y-i.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,i){return t.set(e.x*i,e.y*i),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}(),e=function(){function e(e,i,n,r){this._position=new t,this._center=new t,this._width=0,this._height=0,this.set(e,i,n,r)}return Object.defineProperty(e.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),e.prototype.set=function(t,e,i,n){this._position.set(t,e),this._width=i,this._height=n},e.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},e.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},e.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},e.prototype.contains=function(i){return i instanceof e?i.x1<=this.x1&&i.x>=this.x&&i.y1<=this.y1&&i.y>=this.y:i instanceof t&&!(i.x<this.x||i.y<this.y||i.x>=this.x1||i.y>=this.y1)},e}(),i=function(t,e,i){return Math.min(i,Math.max(e,t))},n=function(t,e){return Math.round(Math.random()*(e-t))+t},r=function(t,e,i){return void 0===i&&(i=2),o(Math.random()*(e-t)+t,i)},o=function(t,e){return Math.round(t*Math.pow(10,e))/Math.pow(10,e)},s=function(t,e,i){void 0===i&&(i=1);for(var n=[],r=t;r<=e;r+=i)n.push(r);return n},a=function(t,e,i){return t>=e&&t<=i},h=function(){function e(e,i){void 0===e&&(e=null),void 0===i&&(i=null),this._degrees=0,this._radians=0,this._direction=new t,e?this.radians=e:i&&(this.degrees=i)}return Object.defineProperty(e.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),e.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))},e}(),c=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,i){return t.set(e.x+i.x,e.y+i.y),t},t.subtract=function(t,e,i){return t.set(e.x-i.x,e.y-i.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,i){return t.set(e.x*i,e.y*i),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}();!function(){function t(t,e,i,n){this._position=new c,this._center=new c,this._width=0,this._height=0,this.set(t,e,i,n)}Object.defineProperty(t.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e,i,n){this._position.set(t,e),this._width=i,this._height=n},t.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},t.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},t.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},t.prototype.contains=function(e){return e instanceof t?e.x1<=this.x1&&e.x>=this.x&&e.y1<=this.y1&&e.y>=this.y:e instanceof c&&!(e.x<this.x||e.y<this.y||e.x>=this.x1||e.y>=this.y1)}}(),function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this._degrees=0,this._radians=0,this._direction=new c,t?this.radians=t:e&&(this.degrees=e)}Object.defineProperty(t.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),t.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))}}();var l=function(){function t(){var t=this;this.gamepads=new Map,this.eventHandler=function(e){\"gamepadconnected\"===e.type?t.gamepadConnected(e.gamepad):\"gamepaddisconnected\"===e.type&&t.gamepadDisconected(e.gamepad)},window.addEventListener(\"gamepadconnected\",this.eventHandler),window.addEventListener(\"gamepaddisconnected\",this.eventHandler)}return t.prototype.getGamepad=function(t){var e;return null!==(e=this.gamepads.get(t))&&void 0!==e?e:null},t.prototype.getGamepads=function(){return Array.from(this.gamepads.values())},t.prototype.gamepadConnected=function(t){this.gamepads.set(t.index,new u),this.gamepads.get(t.index).updateFromGamepad(t)},t.prototype.gamepadDisconected=function(t){this.gamepads.delete(t.index)},t.prototype.update=function(){for(var t=0,e=this.getGamepadsFromBrowser();t<e.length;t++){var i=e[t];null!==i&&(!1===this.gamepads.has(i.index)?this.gamepadConnected(i):this.gamepads.get(i.index).updateFromGamepad(i))}},t.prototype.getGamepadsFromBrowser=function(){return navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads?navigator.webkitGetGamepads:[]},t}(),u=function(){function t(){this.buttons=new Map,this.axes=new Map,this._dpadAxes=new c,this._leftStickAxes=new c,this._rightStickAxes=new c,this._vibrating=!1}return t.prototype.updateFromGamepad=function(t){var e=this;this._gamepad=t,t.buttons.forEach((function(t,i){return e.buttons.set(i,t.pressed)})),t.axes.forEach((function(t,i){return e.axes.set(i,t)}))},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._gamepad.id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"connected\",{get:function(){return this._gamepad.connected},enumerable:!1,configurable:!0}),t.prototype.getButtonPressed=function(t){return this.buttons.get(t)},t.prototype.getAxis=function(t){return this.axes.get(t)},Object.defineProperty(t.prototype,\"dpadAxes\",{get:function(){return this._dpadAxes.set(this.dpadRight?1:this.dpadLeft?-1:0,this.dpadUp?1:this.dpadDown?-1:0),this._dpadAxes},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftStickAxes\",{get:function(){return this._leftStickAxes.set(this.leftStickHorizontal,this.leftStickVertical),this._leftStickAxes},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightStickAxes\",{get:function(){return this._rightStickAxes.set(this.rightStickHorizontal,this.rightStickVertical),this._rightStickAxes},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dpadUp\",{get:function(){var t;return null!==(t=this.buttons.get(12))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dpadDown\",{get:function(){var t;return null!==(t=this.buttons.get(13))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dpadLeft\",{get:function(){var t;return null!==(t=this.buttons.get(14))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dpadRight\",{get:function(){var t;return null!==(t=this.buttons.get(15))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"bottomFace\",{get:function(){var t;return null!==(t=this.buttons.get(0))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightFace\",{get:function(){var t;return null!==(t=this.buttons.get(1))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftFace\",{get:function(){var t;return null!==(t=this.buttons.get(2))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"topFace\",{get:function(){var t;return null!==(t=this.buttons.get(3))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftShoulder\",{get:function(){var t;return null!==(t=this.buttons.get(4))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightShoulder\",{get:function(){var t;return null!==(t=this.buttons.get(5))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftTrigger\",{get:function(){var t;return null!==(t=this.buttons.get(6))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightTrigger\",{get:function(){var t;return null!==(t=this.buttons.get(7))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"back\",{get:function(){var t;return null!==(t=this.buttons.get(8))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"start\",{get:function(){var t;return null!==(t=this.buttons.get(9))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftStickButton\",{get:function(){var t;return null!==(t=this.buttons.get(10))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightStickButton\",{get:function(){var t;return null!==(t=this.buttons.get(11))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftStickHorizontal\",{get:function(){var t;return null!==(t=this.axes.get(0))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"leftStickVertical\",{get:function(){var t;return null!==(t=-this.axes.get(1))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightStickHorizontal\",{get:function(){var t;return null!==(t=this.axes.get(2))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightStickVertical\",{get:function(){var t;return null!==(t=-this.axes.get(3))&&void 0!==t?t:0},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"anyButtonPressed\",{get:function(){var t;return null!==(t=Array.from(this.buttons.values()).find((function(t){return t})))&&void 0!==t&&t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"vibrating\",{get:function(){return this._vibrating},enumerable:!1,configurable:!0}),t.prototype.vibrate=function(t,e,i,n){var r=this;void 0===t&&(t=200),void 0===e&&(e=.2),void 0===i&&(i=.2),void 0===n&&(n=0),this._gamepad.vibrationActuator&&(this._vibrating=!0,this._gamepad.vibrationActuator.playEffect(this._gamepad.vibrationActuator.type,{duration:t,weakMagnitude:e,strongMagnitude:i,startDelay:n}).catch((function(){return r._vibrating=!1})).finally((function(){return r._vibrating=!1})))},t}(),p=function(){function t(t,e,i,n){this.mouse=t,this.keyboard=e,this.gamepad=i,this.touch=n}return t.prototype.update=function(){this.mouse.update(),this.gamepad.update()},t}(),d=function(){function t(t){var e=this;this.pressedKeys=[],this.keyMap=new Map,this.eventHandler=function(t){if(\"keydown\"===t.type&&(e.keyMap.set(t.code,!0),e.pressedKeys.includes(t.code)||e.pressedKeys.push(t.code)),\"keyup\"===t.type){e.keyMap.set(t.code,!1);var i=e.pressedKeys.indexOf(t.code);-1!==i&&e.pressedKeys.splice(i,1)}},t.addEventListener(\"keydown\",this.eventHandler),t.addEventListener(\"keyup\",this.eventHandler)}return t.prototype.isPressed=function(t){var e;return null!==(e=this.keyMap.get(t))&&void 0!==e&&e},t.prototype.orPressed=function(t){var e=this;return t.reduce((function(t,i){var n;return t||null!==(n=e.keyMap.get(i))&&void 0!==n&&n}),!1)},t.prototype.andPressed=function(t){var e=this;return t.reduce((function(t,i){var n;return t&&null!==(n=e.keyMap.get(i))&&void 0!==n&&n}),!0)},t.prototype.isPressedReturn=function(t,e,i){return this.keyMap.get(t)?e:i},t.prototype.orPressedReturn=function(t,e,i){var n=this;return t.reduce((function(t,e){var i;return t||null!==(i=n.keyMap.get(e))&&void 0!==i&&i}),!1)?e:i},t.prototype.andPressedReturn=function(t,e,i){var n=this;return t.reduce((function(t,e){var i;return t&&null!==(i=n.keyMap.get(e))&&void 0!==i&&i}),!0)?e:i},t}(),f=function(){function t(t){this._leftButtonPressed=!1,this._scrollButtonPressed=!1,this._rightButtonPressed=!1,this._positionInViewport=new c,this._hasMoved=!1,this._wheelScroll=new c,this.lastPositionInViewport=new c,this.canvas=t,this.setup()}return Object.defineProperty(t.prototype,\"leftButtonPressed\",{get:function(){return this._leftButtonPressed},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"scrollButtonPressed\",{get:function(){return this._scrollButtonPressed},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rightButtonPressed\",{get:function(){return this._rightButtonPressed},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"positionInViewport\",{get:function(){return this._positionInViewport},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"hasMoved\",{get:function(){return this._hasMoved},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"wheelScroll\",{get:function(){return this._wheelScroll},enumerable:!1,configurable:!0}),t.prototype.update=function(){!1===this._positionInViewport.equals(this.lastPositionInViewport)?(this._hasMoved=!0,this.lastPositionInViewport.copy(this._positionInViewport)):this._hasMoved=!1,this.wheelEvent?(this._wheelScroll.set(this.wheelEvent.deltaX,this.wheelEvent.deltaY),this.wheelEvent=void 0):this._wheelScroll.set(0,0)},t.prototype.setup=function(){var t=this;this.canvas.addEventListener(\"mousemove\",(function(e){return t.updatePosition(e)})),this.canvas.addEventListener(\"mousedown\",(function(e){return t.updateButtonDown(e)})),this.canvas.addEventListener(\"mouseup\",(function(e){return t.updateButtonUp(e)})),this.canvas.addEventListener(\"wheel\",(function(e){return t.handleWheelEvent(e)}))},t.prototype.updateButtonDown=function(t){this.canvas.focus(),t.preventDefault(),t.stopPropagation(),this._leftButtonPressed=0===t.button,this._scrollButtonPressed=1===t.button,this._rightButtonPressed=2===t.button},t.prototype.updateButtonUp=function(t){t.preventDefault(),t.stopPropagation(),this._leftButtonPressed=0!==t.button&&this._leftButtonPressed,this._scrollButtonPressed=1!==t.button&&this._scrollButtonPressed,this._rightButtonPressed=2!==t.button&&this._rightButtonPressed},t.prototype.updatePosition=function(t){t.preventDefault(),t.stopPropagation(),this._positionInViewport.set(t.offsetX/(this.canvas.clientWidth/this.canvas.width)-this.canvas.width/2,-t.offsetY/(this.canvas.clientHeight/this.canvas.height)+this.canvas.height/2)},t.prototype.handleWheelEvent=function(t){t.preventDefault(),t.stopPropagation(),this.wheelEvent=t},t}(),g=function(){function t(t){var e=this;this._touching=!1,this._interactions=[],this.eventHandler=function(t){\"touchstart\"===t.type&&(e._touching=!0,e.updatePosition(t)),\"touchmove\"===t.type&&e.updatePosition(t),\"touchend\"!==t.type&&\"touchcancel\"!==t.type||(e._touching=!1)},this.canvas=t,this.canvas.addEventListener(\"touchstart\",this.eventHandler),this.canvas.addEventListener(\"touchend\",this.eventHandler),this.canvas.addEventListener(\"touchcancel\",this.eventHandler),this.canvas.addEventListener(\"touchmove\",this.eventHandler)}return Object.defineProperty(t.prototype,\"touching\",{get:function(){return this._touching},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"interactions\",{get:function(){return this._interactions},enumerable:!1,configurable:!0}),t.prototype.updatePosition=function(t){if(t.preventDefault(),t.stopPropagation(),this._interactions=[],0!==t.targetTouches.length)for(var e=0;e<t.targetTouches.length;e++)this._interactions[e]={positionInViewport:new c((t.targetTouches[e].clientX-this.canvas.offsetLeft)/(this.canvas.clientWidth/this.canvas.width)-this.canvas.width/2,-(t.targetTouches[e].clientY-this.canvas.offsetTop)/(this.canvas.clientHeight/this.canvas.height)+this.canvas.height/2),radius:new c(t.targetTouches[e].radiusX,t.targetTouches[e].radiusY)}},t}(),m=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,i){return t.set(e.x+i.x,e.y+i.y),t},t.subtract=function(t,e,i){return t.set(e.x-i.x,e.y-i.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,i){return t.set(e.x*i,e.y*i),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}(),y=function(){function t(t,e,i,n){this._position=new m,this._center=new m,this._width=0,this._height=0,this.set(t,e,i,n)}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e,i,n){this._position.set(t,e),this._width=i,this._height=n},t.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},t.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},t.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},t.prototype.contains=function(e){return e instanceof t?e.x1<=this.x1&&e.x>=this.x&&e.y1<=this.y1&&e.y>=this.y:e instanceof m&&!(e.x<this.x||e.y<this.y||e.x>=this.x1||e.y>=this.y1)},t}(),v=function(t,e,i){return Math.min(i,Math.max(e,t))};!function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this._degrees=0,this._radians=0,this._direction=new m,t?this.radians=t:e&&(this.degrees=e)}Object.defineProperty(t.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),t.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))}}();var x,b=function(){function t(){}return t.prototype.create=function(t){var e=t.shape,i=t.layer,n=t.updateCollisions,r=t.physics,o=t.position,s=t.rotation,a=t.group,h=t.onCollision;return{id:0,active:!0,layer:i,shape:e,updateCollisions:n,physics:r,position:null!=o?o:new m,rotation:null!=s?s:0,group:a,onCollision:h}},t}(),M=function(){function t(t,e){void 0===e&&(e=0),this.area=new y(0,0,0,0),this.depth=0,this.items=[],this.children=[],this.depth=e,this.resize(t)}return t.prototype.resize=function(t){this.clear(),this.area.copy(t)},t.prototype.clear=function(){this.items=[],this.children.forEach((function(t){return t.clear()})),this.children=[]},t.prototype.insert=function(t,e){0===this.children.length&&this.items.length>16&&this.depth<8&&this.split(),this.children.length>0?this.insertItemIntoChildren(t,e):this.items.push([t,e])},t.prototype.split=function(){var e=this,i=this.area.width/2,n=this.area.height/2;this.children=[new y(this.area.x,this.area.y,i,n),new y(this.area.x,this.area.y+n,i,n),new y(this.area.x+i,this.area.y+n,i,n),new y(this.area.x+i,this.area.y,i,n)].map((function(i){return new t(i,e.depth+1)})),this.items.forEach((function(t){return e.insertItemIntoChildren(t[0],t[1])})),this.items=[]},t.prototype.insertItemIntoChildren=function(t,e){this.getChildrenForArea(e).forEach((function(i){return i.insert(t,e)}))},t.prototype.retrieve=function(t){var e=[];return this.children.length>0?this.getChildrenForArea(t).forEach((function(i){return e.push.apply(e,i.retrieve(t))})):this.items.forEach((function(t){return e.push(t[0])})),e},t.prototype.getChildrenForArea=function(t){var e=[];return t.x<=this.area.center.x&&t.y<=this.area.center.y&&e.push(this.children[0]),t.x<=this.area.center.x&&t.y1>=this.area.center.y&&e.push(this.children[1]),t.x1>=this.area.center.x&&t.y1>=this.area.center.y&&e.push(this.children[2]),t.x1>=this.area.center.x&&t.y<=this.area.center.y&&e.push(this.children[3]),e},t}(),_=function(t,e,i,n){return Math.min((t-e)/i|0,n-1)},w=function(){function t(t){this.coordinates={x0:0,x1:0,y0:0,y1:0},this._subdivisions=1,this.resize(t)}return Object.defineProperty(t.prototype,\"subdivisions\",{get:function(){return this._subdivisions},set:function(t){this._subdivisions=v(t,1,20)},enumerable:!1,configurable:!0}),t.prototype.resize=function(t){this.area=t,this.cellWidth=Math.ceil(t.width/this._subdivisions),this.cellHeight=Math.ceil(t.height/this._subdivisions),this.itemsInCells=[];for(var e=0;e<this._subdivisions;e++){this.itemsInCells[e]=[];for(var i=0;i<this._subdivisions;i++)this.itemsInCells[e][i]=[]}},t.prototype.clear=function(){for(var t=0;t<this._subdivisions;t++)for(var e=0;e<this._subdivisions;e++)this.itemsInCells[t][e]=[]},t.prototype.insert=function(t,e){this.updateCoordinates(e);for(var i=this.coordinates.x0;i<=this.coordinates.x1;i++)for(var n=this.coordinates.y0;n<=this.coordinates.y1;n++)this.itemsInCells[i][n].push(t)},t.prototype.retrieve=function(t){var e=[];this.updateCoordinates(t);for(var i=this.coordinates.x0;i<=this.coordinates.x1;i++)for(var n=this.coordinates.y0;n<=this.coordinates.y1;n++)this.itemsInCells[i][n].forEach((function(t){return e.includes(t)?null:e.push(t)}));return e},t.prototype.updateCoordinates=function(t){this.coordinates.x0=_(t.x,this.area.x,this.cellWidth,this._subdivisions),this.coordinates.x1=_(t.x1,this.area.x,this.cellWidth,this._subdivisions),this.coordinates.y0=_(t.y,this.area.y,this.cellHeight,this._subdivisions),this.coordinates.y1=_(t.y1,this.area.y,this.cellHeight,this._subdivisions)},t}();!function(t){t[t.QuadTree=0]=\"QuadTree\",t[t.SpartialGrid=1]=\"SpartialGrid\"}(x||(x={}));var C,j=function(){function t(t,e,i,n){this.collisions=[],this.lastCollidersAmount=0,this.minArea=new m,this.maxArea=new m,this.newArea=new y(0,0,0,0),this.method=t,this.colliders=[],this.activeColliders=[],this.collisionMatrix=n,this.setupBroadPhaseResolver(null!=e?e:x.QuadTree,i)}return t.prototype.setupBroadPhaseResolver=function(t,e){this.collisionArea=null!=e?e:new y(0,0,0,0),this.fixedCollisionArea=!!e,t===x.SpartialGrid?this.broadPhaseResolver=new w(this.collisionArea):this.broadPhaseResolver=new M(this.collisionArea)},t.prototype.addCollider=function(t){t.id=this.colliders.length,this.colliders.push(t)},t.prototype.getCollider=function(t){return this.colliders[t]},t.prototype.removeCollider=function(t){this.colliders.splice(t.id,1),this.colliders.forEach((function(t,e){return t.id=e}))},t.prototype.clearColliders=function(){this.colliders=[]},t.prototype.getCollisionsForCollider=function(t){return t.active?this.collisions.filter((function(e){return e.localCollider.id===t.id})):[]},t.prototype.getCollisionsForColliderAndLayer=function(t,e){return t.active?this.collisions.filter((function(i){return i.localCollider.id===t.id&&i.remoteCollider.layer===e})):[]},t.prototype.refreshCollisionsForCollider=function(t){this.colliders[t.id]&&t.active&&(this.collisions=this.collisions.filter((function(e){return e.localCollider.id!==t.id&&e.remoteCollider.id!==t.id})),this.updateShape(t),this.narrowPhase(t,this.broadPhase(t)))},t.prototype.resolve=function(){var t=this;this.collisions=[],0!==this.colliders.length&&(this.activeColliders=this.colliders.filter((function(t){return t.active})),this.broadPhaseResolver.clear(),this.activeColliders.forEach((function(e){t.updateShape(e)})),!1===this.fixedCollisionArea&&(this.updateNewArea(),!1===this.newArea.equals(this.collisionArea)&&(this.collisionArea.copy(this.newArea),this.broadPhaseResolver.resize(this.collisionArea))),this.checkForSpartialGridResize(),this.activeColliders.forEach((function(e){var i=e.id,n=e.shape.boundingBox;return t.broadPhaseResolver.insert(i,n)})),this.updateCollisions())},t.prototype.updateShape=function(t){t.shape.position=t.position,t.shape.rotation=t.rotation,t.shape.update()},t.prototype.updateNewArea=function(){var t=this;this.activeColliders.forEach((function(e){var i=e.shape.boundingBox;t.minArea.set(Math.min(i.x,t.minArea.x),Math.min(i.y,t.minArea.y)),t.maxArea.set(Math.max(i.x1,t.maxArea.x),Math.max(i.y1,t.maxArea.y))})),this.newArea.set(this.minArea.x,this.minArea.y,this.maxArea.x-this.minArea.x,this.maxArea.y-this.minArea.y)},t.prototype.checkForSpartialGridResize=function(){this.broadPhaseResolver instanceof w&&this.lastCollidersAmount!==this.activeColliders.length&&(this.broadPhaseResolver.subdivisions=1+(this.activeColliders.length/10|0),this.broadPhaseResolver.resize(this.collisionArea),this.lastCollidersAmount=this.activeColliders.length)},t.prototype.updateCollisions=function(){var t=this;this.activeColliders.filter((function(t){return t.updateCollisions})).forEach((function(e){return t.narrowPhase(e,t.broadPhase(e))}))},t.prototype.broadPhase=function(t){var e=this;return this.collisionMatrix?this.broadPhaseResolver.retrieve(t.shape.boundingBox).map((function(t){return e.colliders[t]})).filter((function(t){return t.active})).filter((function(i){return e.collisionMatrix.some((function(e){return e[0]===t.layer&&e[1]===i.layer||e[1]===t.layer&&e[0]===i.layer}))})):this.broadPhaseResolver.retrieve(t.shape.boundingBox).map((function(t){return e.colliders[t]})).filter((function(t){return t.active}))},t.prototype.narrowPhase=function(t,e){var i=this;e.filter((function(e){return!(t.group&&e.group&&e.group===t.group||t.id===e.id)})).forEach((function(e){if(!i.isResolved(t,e)){var n=i.method.getCollisionResolution(t.shape,e.shape);null!==n&&(i.collisions.push({localCollider:t,remoteCollider:e,resolution:n},{localCollider:e,remoteCollider:t,resolution:{direction:n.displacementDirection,displacementDirection:n.direction,penetration:n.penetration}}),t.onCollision&&t.onCollision(n))}}))},t.prototype.isResolved=function(t,e){for(var i=0,n=this.collisions;i<n.length;i++){var r=n[i];if(r.localCollider.id===t.id&&r.remoteCollider.id===e.id)return!0}return!1},t}();!function(t){t[t.Polygon=0]=\"Polygon\",t[t.Circumference=1]=\"Circumference\",t[t.Line=2]=\"Line\"}(C||(C={}));var O,P=function(){function t(t,e,i){this.AABBResolver=t,this.circumferenceAABBResolver=e,this.circumferenceResolver=i}return t.prototype.getCollisionResolution=function(t,e){return t.type===C.Polygon&&e.type===C.Polygon?this.AABBResolver.resolve(t,e):t.type===C.Circumference&&e.type===C.Polygon?this.circumferenceAABBResolver.resolve(t,e):t.type===C.Polygon&&e.type===C.Circumference?this.circumferenceAABBResolver.resolve(e,t,!0):t.type===C.Circumference&&e.type===C.Circumference?this.circumferenceResolver.resolve(t,e):null},t}();!function(t){t[t.AABB=0]=\"AABB\",t[t.SAT=1]=\"SAT\"}(O||(O={}));var R=function(){function t(t,e){this.circumferenceResolver=t,this.satResolver=e}return t.prototype.getCollisionResolution=function(t,e){return t.type===C.Circumference&&e.type===C.Circumference?this.circumferenceResolver.resolve(t,e):this.satResolver.resolve(t,e)},t}(),A=function(){function t(){this.direction=new m,this.displacementDirection=new m}return t.prototype.resolve=function(t,e){var i=t.boundingBox,n=e.boundingBox;return this.overlapX=Math.min(i.x1,n.x1)-Math.max(i.x,n.x),this.overlapY=Math.min(i.y1,n.y1)-Math.max(i.y,n.y),this.overlapX<0||this.overlapY<0?null:(this.checkOverlapForLines(i,n),this.direction.set(Math.sign(n.center.x-i.center.x),Math.sign(n.center.y-i.center.y)),this.preventContainment(i,n),this.overlapY<this.overlapX?(this.minOverlap=this.overlapY,this.displacementDirection.set(0,-this.direction.y)):(this.minOverlap=this.overlapX,this.displacementDirection.set(-this.direction.x,this.overlapY===this.overlapX?-this.direction.y:0)),m.unit(this.displacementDirection,this.displacementDirection),{direction:m.scale(new m,this.displacementDirection,-1),displacementDirection:this.displacementDirection.clone(),penetration:this.minOverlap})},t.prototype.checkOverlapForLines=function(t,e){0!==t.width&&0!==e.width||0!==this.overlapX||(this.overlapX=Math.min(Math.abs(t.x-e.x),Math.abs(t.x1-e.x1))),0!==t.height&&0!==e.height||0!==this.overlapY||(this.overlapY=Math.min(Math.abs(t.y-e.y),Math.abs(t.y1-e.y1)))},t.prototype.preventContainment=function(t,e){if(this.overlapY>0&&(t.y1>e.y1&&t.y<e.y||t.y1<e.y1&&t.y>e.y)){var i=Math.abs(t.y-e.y),n=Math.abs(t.y1-e.y1);this.overlapY+=i<n?i:n}this.overlapX>0&&(t.x1>e.x1&&t.x<e.x||t.x1<e.x1&&t.x>e.x)&&(i=Math.abs(t.x-e.x),n=Math.abs(t.x1-e.x1),this.overlapX+=i<n?i:n)},t}(),S=function(){function t(){this.closestPoint=new m,this.distance=new m,this.direction=new m}return t.prototype.resolve=function(t,e,i){return void 0===i&&(i=!1),this.closestPoint.set(v(t.position.x,e.boundingBox.x,e.boundingBox.x1),v(t.position.y,e.boundingBox.y,e.boundingBox.y1)),m.subtract(this.distance,this.closestPoint,t.position),this.distance.magnitude>t.radius?null:(m.unit(this.direction,this.distance),{direction:i?m.scale(new m,this.direction,-1):this.direction.clone(),displacementDirection:i?this.direction.clone():m.scale(new m,this.direction,-1),penetration:t.radius-this.distance.magnitude})},t}(),E=function(){function t(){this.distance=new m,this.direction=new m}return t.prototype.resolve=function(t,e){return m.subtract(this.distance,e.position,t.position),this.distance.magnitude>t.radius+e.radius?null:(m.unit(this.direction,this.distance),{direction:this.direction.clone(),displacementDirection:m.scale(new m,this.direction,-1),penetration:t.radius+e.radius-this.distance.magnitude})},t}(),T=function(t,e){return T=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},T(t,e)};function D(t,e,i){if(i||2===arguments.length)for(var n,r=0,o=e.length;r<o;r++)!n&&r in e||(n||(n=Array.prototype.slice.call(e,0,r)),n[r]=e[r]);return t.concat(n||Array.prototype.slice.call(e))}\"function\"==typeof SuppressedError&&SuppressedError;var F,B=function(){function t(){this.projA={min:0,max:0},this.projB={min:0,max:0},this.smallestAxis=new m,this.distance=new m(1/0,1/0),this.cache=new m}return t.prototype.resolve=function(t,e){var i=this;this.minOverlap=1/0,t.type===C.Circumference?this.setCircumferenceAxis(t,e):e.type===C.Circumference&&this.setCircumferenceAxis(e,t),this.axes=D([],t.projectionAxes,!0),e.projectionAxes.forEach((function(t){return i.axes.some((function(e){return e.equals(t)}))?null:i.axes.push(t)}));for(var n=0;n<this.axes.length;n++){if(t.type===C.Circumference?this.setCircumferenceVertices(t,this.axes[n]):e.type===C.Circumference&&this.setCircumferenceVertices(e,this.axes[n]),this.projectShapeOntoAxis(this.projA,t,this.axes[n]),this.projectShapeOntoAxis(this.projB,e,this.axes[n]),this.currentOverlap=Math.min(this.projA.max,this.projB.max)-Math.max(this.projA.min,this.projB.min),this.currentOverlap<0)return null;if(this.invertAxis=!0,this.projA.max>this.projB.max&&this.projA.min<this.projB.min||this.projA.max<this.projB.max&&this.projA.min>this.projB.min){var r=Math.abs(this.projA.min-this.projB.min),o=Math.abs(this.projA.max-this.projB.max);r<o?this.currentOverlap+=r:(this.currentOverlap+=o,m.scale(this.axes[n],this.axes[n],-1),this.invertAxis=!1)}this.currentOverlap<this.minOverlap&&(this.minOverlap=this.currentOverlap,this.smallestAxis.copy(this.axes[n]),this.invertAxis&&this.projA.max<this.projB.max&&m.scale(this.smallestAxis,this.axes[n],-1))}return{direction:m.scale(new m,this.smallestAxis,-1),displacementDirection:this.smallestAxis.clone(),penetration:this.minOverlap}},t.prototype.projectShapeOntoAxis=function(t,e,i){return t.min=1/0,t.max=-1/0,e.vertices.forEach((function(e){t.min=Math.min(m.dot(i,e),t.min),t.max=Math.max(m.dot(i,e),t.max)})),t},t.prototype.setCircumferenceAxis=function(t,e){var i=this;this.distance.set(1/0,1/0),e.vertices.forEach((function(e){m.subtract(i.cache,e,t.position),i.cache.magnitude<i.distance.magnitude&&i.distance.copy(i.cache)})),m.unit(t.projectionAxes[0],this.distance)},t.prototype.setCircumferenceVertices=function(t,e){m.add(t.vertices[0],t.position,m.scale(this.cache,m.unit(this.cache,e),-t.radius)),m.add(t.vertices[1],t.position,m.scale(this.cache,m.unit(this.cache,e),t.radius))},t}(),U=function(){function t(t,e,i,n){this.collisionManager=t,this.colliderFactory=e,this.rigidBodyManager=i,this.rigidBodyFactory=n}return t.prototype.addCollider=function(t){var e=this.colliderFactory.create(t);return this.collisionManager.addCollider(e),e},t.prototype.removeCollider=function(t){this.collisionManager.removeCollider(t)},t.prototype.getCollisionsForCollider=function(t){return this.collisionManager.getCollisionsForCollider(t)},t.prototype.getCollisionsForColliderAndLayer=function(t,e){return this.collisionManager.getCollisionsForColliderAndLayer(t,e)},t.prototype.addRigidBody=function(t){var e=this.rigidBodyFactory.create(t);return this.rigidBodyManager.addRigidBody(e),e},t.prototype.removeRigidBody=function(t){this.rigidBodyManager.removeRigidBody(t)},t.prototype.resolve=function(t){this.collisionManager.resolve(),this.rigidBodyManager.resolve(t)},t.prototype.clear=function(){this.collisionManager.clearColliders(),this.rigidBodyManager.clearRigidBodies()},t}(),I=function(){function t(){}return t.prototype.create=function(t){var e=t.colliderIds,i=t.type,n=t.gravity,r=t.position,o=t.velocity,s=t.onResolve;if(0===e.length)throw new Error(\"RigidBody needs at least one collider\");return{active:!0,colliderIds:e,type:i,gravity:null!=n?n:0,position:null!=r?r:new m,velocity:null!=o?o:new m,onResolve:s}},t}();!function(t){t[t.Static=0]=\"Static\",t[t.Dynamic=1]=\"Dynamic\",t[t.Kinematic=2]=\"Kinematic\"}(F||(F={}));var L=[\"x\",\"y\"],V=function(){function t(t){this.collisionManager=t,this.rigidBodies=[],this.activeRigidBodies=[],this.colliders=[],this.velocity=new m,this.displacement=new m,this.cacheDisplacement=0}return t.prototype.addRigidBody=function(t){this.rigidBodies.push(t)},t.prototype.removeRigidBody=function(t){var e=this.rigidBodies.indexOf(t);e>=0&&this.rigidBodies.splice(e,1)},t.prototype.clearRigidBodies=function(){this.rigidBodies=[]},t.prototype.resolve=function(t){var e=this;this.activeRigidBodies=this.rigidBodies.filter((function(t){return t.active})),this.colliders=this.activeRigidBodies.reduce((function(t,e){return D(D([],t,!0),e.colliderIds,!0)}),[]),this.activeRigidBodies.forEach((function(i){i.type===F.Dynamic?e.dynamicUpdate(i,t):i.type===F.Kinematic&&e.kinematicUpdate(i,t),i.onResolve&&i.onResolve(i)}))},t.prototype.dynamicUpdate=function(t,e){var i=this;this.applyGravity(t,e),L.forEach((function(n){i.applyVelocity(t,e,n),i.obtainDisplacement(t,n),i.applyReposition(t,n)}))},t.prototype.kinematicUpdate=function(t,e){var i=this;m.add(t.position,t.position,m.scale(this.velocity,t.velocity,e)),t.colliderIds.map((function(t){return i.collisionManager.getCollider(t)})).forEach((function(t){m.add(t.position,t.position,i.velocity),i.collisionManager.refreshCollisionsForCollider(t)}))},t.prototype.applyGravity=function(t,e){t.gravity>0&&(t.velocity.y-=t.gravity*e)},t.prototype.applyVelocity=function(t,e,i){var n=this;this.velocity[i]=t.velocity[i]*e,0!==this.velocity[i]&&(t.position[i]+=this.velocity[i],t.colliderIds.map((function(t){return n.collisionManager.getCollider(t)})).forEach((function(t){t.position[i]+=n.velocity[i],n.collisionManager.refreshCollisionsForCollider(t)})))},t.prototype.obtainDisplacement=function(t,e){var i=this;this.displacement[e]=0,this.getCollisions(t).forEach((function(t){i.cacheDisplacement=t.resolution.displacementDirection[e]*t.resolution.penetration,i.displacement[e]=Math.abs(i.displacement[e])>Math.abs(i.cacheDisplacement)?i.displacement[e]:i.cacheDisplacement}))},t.prototype.applyReposition=function(t,e){var i=this;0!==this.displacement[e]&&(t.position[e]+=this.displacement[e],t.colliderIds.map((function(t){return i.collisionManager.getCollider(t)})).forEach((function(t){t.position[e]+=i.displacement[e],i.collisionManager.refreshCollisionsForCollider(t)})),Math.sign(this.displacement[e])!==Math.sign(t.velocity[e])&&(t.velocity[e]=0))},t.prototype.getCollisions=function(t){var e=this;return t.colliderIds.map((function(t){return e.collisionManager.getCollider(t)})).filter((function(t){return t.active&&t.physics})).reduce((function(t,i){return t.push.apply(t,e.collisionManager.getCollisionsForCollider(i).filter((function(t){return t.remoteCollider.physics&&e.colliders.includes(t.remoteCollider.id)}))),t}),[])},t}(),G=function(){function t(t){this.radius=t,this.type=C.Circumference,this.boundingBox=new y(0,0,0,0),this.vertices=[new m,new m],this.projectionAxes=[new m],this._position=new m}return Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),t.prototype.update=function(){this.updateBoundingBox()},t.prototype.updateBoundingBox=function(){this.boundingBox.set(this.position.x-this.radius,this.position.y-this.radius,2*this.radius,2*this.radius)},t}(),k=function(){function t(t){this.vertexModel=t,this.type=C.Polygon,this.vertices=[new m,new m],this.projectionAxes=[new m],this.boundingBox=new y(0,0,0,0),this.rotation=0,this._position=new m}return t.prototype.update=function(){this.updateVertices(),this.updateBoundingBox(),this.updateProjectionAxes()},Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),t.prototype.updateVertices=function(){for(var t=0;t<this.vertexModel.length;t++)this.vertices[t].set(this.vertexModel[t].x*Math.cos(this.rotation)-this.vertexModel[t].y*Math.sin(this.rotation)+this._position.x,this.vertexModel[t].x*Math.sin(this.rotation)+this.vertexModel[t].y*Math.cos(this.rotation)+this._position.y)},t.prototype.updateBoundingBox=function(){this.boundingBox.x=Math.min(this.vertices[0].x,this.vertices[1].x),this.boundingBox.y=Math.min(this.vertices[0].y,this.vertices[1].y),this.boundingBox.width=Math.max(this.vertices[0].x,this.vertices[1].x)-this.boundingBox.x,this.boundingBox.height=Math.max(this.vertices[0].y,this.vertices[1].y)-this.boundingBox.y},t.prototype.updateProjectionAxes=function(){m.normal(this.projectionAxes[0],m.subtract(this.projectionAxes[0],this.vertices[1],this.vertices[0]))},t}(),W=function(){function t(t){this.vertexModel=t,this.type=C.Polygon,this.vertices=[],this.boundingBox=new y(0,0,0,0),this.rotation=0,this._projectionAxes=[],this._position=new m,this.boxMinX=Number.MAX_SAFE_INTEGER,this.boxMinY=Number.MAX_SAFE_INTEGER,this.boxMaxX=-Number.MAX_SAFE_INTEGER,this.boxMaxY=-Number.MAX_SAFE_INTEGER;for(var e=0;e<this.vertexModel.length;e++)this.vertices.push(new m),this._projectionAxes.push(new m)}return Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"projectionAxes\",{get:function(){return this._projectionAxes},enumerable:!1,configurable:!0}),t.prototype.update=function(){this.updateVertices(),this.updateBoundingBox(),this.updateProjectionAxes()},t.prototype.updateVertices=function(){for(var t=0;t<this.vertexModel.length;t++)this.vertices[t].set(this.vertexModel[t].x*Math.cos(this.rotation)-this.vertexModel[t].y*Math.sin(this.rotation)+this._position.x,this.vertexModel[t].x*Math.sin(this.rotation)+this.vertexModel[t].y*Math.cos(this.rotation)+this._position.y)},t.prototype.updateBoundingBox=function(){var t=this;this.boxMinX=this.vertices[0].x,this.boxMinY=this.vertices[0].y,this.boxMaxX=this.vertices[0].x,this.boxMaxY=this.vertices[0].y,this.vertices.forEach((function(e){t.boxMinX=Math.min(e.x,t.boxMinX),t.boxMinY=Math.min(e.y,t.boxMinY),t.boxMaxX=Math.max(e.x,t.boxMaxX),t.boxMaxY=Math.max(e.y,t.boxMaxY)})),this.boundingBox.set(this.boxMinX,this.boxMinY,this.boxMaxX-this.boxMinX,this.boxMaxY-this.boxMinY)},t.prototype.updateProjectionAxes=function(){for(var t,e=0;e<this.vertices.length;e++)m.normal(this._projectionAxes[e],m.subtract(this._projectionAxes[e],null!==(t=this.vertices[e+1])&&void 0!==t?t:this.vertices[0],this.vertices[e]))},t}(),H=function(t){function e(e,i){var n=t.call(this,[new m(-e/2,-i/2),new m(-e/2,i/2),new m(e/2,i/2),new m(e/2,-i/2)])||this;return n.width=e,n.height=i,n._projectionAxes=[new m,new m],n}return function(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Class extends value \"+String(e)+\" is not a constructor or null\");function i(){this.constructor=t}T(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}(e,t),e.prototype.updateSize=function(t,e){this.width=t,this.height=e,this.vertexModel[0].set(-t/2,-e/2),this.vertexModel[1].set(-t/2,e/2),this.vertexModel[2].set(t/2,e/2),this.vertexModel[3].set(t/2,-e/2)},e.prototype.updateProjectionAxes=function(){m.unit(this.projectionAxes[0],m.subtract(this.projectionAxes[0],this.vertices[1],this.vertices[0])),m.normal(this.projectionAxes[1],this.projectionAxes[0])},e}(W),z=function(t,e){return z=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},z(t,e)};function N(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Class extends value \"+String(e)+\" is not a constructor or null\");function i(){this.constructor=t}z(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}var Y,X=function(){return X=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t},X.apply(this,arguments)};function q(t,e,i){if(i||2===arguments.length)for(var n,r=0,o=e.length;r<o;r++)!n&&r in e||(n||(n=Array.prototype.slice.call(e,0,r)),n[r]=e[r]);return t.concat(n||Array.prototype.slice.call(e))}\"function\"==typeof SuppressedError&&SuppressedError,function(t){t[t.Init=0]=\"Init\",t[t.Start=1]=\"Start\",t[t.Update=2]=\"Update\",t[t.UpdateEngine=3]=\"UpdateEngine\",t[t.UpdateCollider=4]=\"UpdateCollider\",t[t.UpdatePhysics=5]=\"UpdatePhysics\",t[t.UpdateTransform=6]=\"UpdateTransform\",t[t.UpdatePreRender=7]=\"UpdatePreRender\",t[t.UpdateCamera=8]=\"UpdateCamera\",t[t.UpdateRender=9]=\"UpdateRender\",t[t.Destroy=10]=\"Destroy\",t[t.StopGame=11]=\"StopGame\"}(Y||(Y={}));var K,Q,$,J=function(){function t(t,e,i,n,r,o,s){this.timeManager=t,this.physicsManager=e,this.renderManager=i,this.inputManager=n,this.gameObjectManager=r,this.sceneManager=o,this.canvasColor=s,this.running=!1,this.gameLoopAccumulator=0,this.gameObjects=[],this.components=[],this.changingScene=!1,this.sceneEvents=[Y.Start,Y.Update,Y.StopGame],this.gameObjectEvents=[Y.Start,Y.Update]}return t.prototype.start=function(){this.startLoop(!0)},t.prototype.pause=function(){this.running=!1},t.prototype.resume=function(){this.startLoop(!1)},t.prototype.stop=function(){this.running=!1,this.dispatchFrameEvent(Y.StopGame),this.physicsManager.clear(),this.renderManager.clearScreen(this.canvasColor)},t.prototype.startLoop=function(t){this.running||(this.running=!0,t&&this.sceneManager.loadOpeningScene(),this.requestAnimationLoop(window.performance.now()),this.timeManager.gameFramerate!==this.timeManager.physicsFramerate&&this.asyncPhysicsLoop())},t.prototype.requestAnimationLoop=function(t){var e=this;this.running&&(this.timeManager.updateForBrowser(.001*t),this.sceneManager.pendingSceneToload()&&(this.sceneManager.loadPendingScene(),this.changingScene=!1),this.gameLoopAccumulator+=this.timeManager.browserDeltaTime,this.gameLoopAccumulator>=this.timeManager.minGameDeltatime&&(this.gameLogicIteration(.001*t),this.gameLoopAccumulator-=this.timeManager.minGameDeltatime),this.renderIteration(),this.sceneManager.pendingSceneToload()&&(this.changingScene=!0,this.sceneManager.unloadCurrentScene()),window.requestAnimationFrame((function(t){return e.requestAnimationLoop(t)})))},t.prototype.gameLogicIteration=function(t){this.timeManager.updateForGame(t),this.load(),this.dispatchFrameEvent(Y.Start),this.inputManager.update(),this.dispatchFrameEvent(Y.Update),this.dispatchFrameEvent(Y.UpdateEngine),this.dispatchFrameEvent(Y.UpdateTransform),this.timeManager.gameFramerate===this.timeManager.physicsFramerate&&(this.timeManager.updateForPhysics(t),this.physicsIteration()),this.dispatchFrameEvent(Y.UpdatePreRender)},t.prototype.renderIteration=function(){this.dispatchFrameEvent(Y.UpdatePreRender),this.dispatchFrameEvent(Y.UpdateCamera),this.dispatchFrameEvent(Y.UpdateRender),this.renderManager.clearScreen(this.canvasColor),this.renderManager.render(),this.renderManager.clearData()},t.prototype.physicsIteration=function(){this.timeManager.timeScale<=0||this.changingScene||(this.dispatchFrameEvent(Y.UpdatePhysics),this.dispatchFrameEvent(Y.UpdateCollider),this.dispatchFrameEvent(Y.UpdateTransform),this.physicsManager.resolve(this.timeManager.physicsDeltaTime))},t.prototype.asyncPhysicsLoop=function(){var t=this;this.physicsIntervalId=window.setInterval((function(){if(!t.running)return window.clearInterval(t.physicsIntervalId);t.timeManager.updateForPhysics(.001*window.performance.now()),document.hidden||t.physicsIteration()}),1e3/this.timeManager.physicsFramerate)},t.prototype.load=function(){var t=this;this.loadedScene=this.sceneManager.getLoadedScene(),this.gameObjects=this.gameObjectManager.findGameObjects().filter((function(t){return t.active})),this.components=[],this.gameObjects.forEach((function(e){return e.getComponents().filter((function(t){return t.active})).forEach((function(e){return t.components.push(e)}))}))},t.prototype.dispatchFrameEvent=function(t){this.sceneEvents.includes(t)&&this.loadedScene.dispatch(t),this.gameObjectEvents.includes(t)&&this.gameObjects.forEach((function(e){e.active&&e.dispatch(t)})),this.components.forEach((function(e){e.active&&e.dispatch(t)}))},t}(),Z=function(){function t(t){this.updateEvent=Y.Update,this.started=!1,this.container=t,this.gameConfig=this.container.getConstant(\"GameConfig\"),this.gameConfig.headless||(this.assetManager=this.container.getSingleton(\"AssetManager\"),this.domManager=this.container.getSingleton(\"DomManager\"),this.inputManager=this.container.getSingleton(\"InputManager\"),this.renderManager=this.container.getSingleton(\"RenderManager\")),this.gameObjectManager=this.container.getSingleton(\"GameObjectManager\"),this.physicsManager=this.container.getSingleton(\"PhysicsManager\"),this.sceneManager=this.container.getSingleton(\"SceneManager\"),this.timeManager=this.container.getSingleton(\"TimeManager\")}return t.prototype.dispatch=function(t,e){t===Y.Init&&this.init?this.init(e):t!==Y.Start||this.started?t===this.updateEvent&&this.started&&this.update?this.update():t===Y.Destroy?(this.onDestroy&&this.onDestroy(),this._destroy()):t===Y.StopGame&&(this.onDestroy&&this.onDestroy(),this._stopGame()):(this.start&&this.start(),this.started=!0)},t.prototype.addGameObject=function(t,e,i){return\"string\"==typeof e&&(i=e,e={}),this.gameObjectManager.addGameObject(t,e,void 0,i)},t.prototype.findGameObjects=function(t){return t?this.gameObjectManager.findGameObjects(t):this.gameObjectManager.findGameObjects()},t.prototype.findGameObject=function(t){return this.gameObjectManager.findGameObject(t)},t.prototype.findGameObjectsByTag=function(t){return this.gameObjectManager.findGameObjectsByTag(t)},t.prototype.destroyGameObject=function(t){this.gameObjectManager.destroyGameObject(t)},t}(),tt=function(t){function e(e,i,n){void 0===n&&(n=\"\");var r=t.call(this,e)||this;return r.allowMultiple=!0,r._active=!0,r.gameObject=i,r.name=n,r}return N(e,t),Object.defineProperty(e.prototype,\"active\",{get:function(){return this._active},set:function(t){this._active!==t&&(this._active=t,this.onActiveChange())},enumerable:!1,configurable:!0}),e.prototype.onActiveChange=function(){},e.prototype.getCurrentScene=function(){return this.sceneManager.getLoadedScene()},e.prototype.getGameObject=function(){return this.gameObject},e.prototype.getComponents=function(t){return t?this.gameObject.getComponents(t):this.gameObject.getComponents()},e.prototype.getComponent=function(t){return this.gameObject.getComponent(t)},e.prototype.hasComponent=function(t){return this.gameObject.hasComponent(t)},e.prototype.removeComponent=function(t){this.gameObject.removeComponent(t)},e.prototype._destroy=function(){var t=this;Object.keys(this).forEach((function(e){return delete t[e]}))},e.prototype._stopGame=function(){},e}(Z),et=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=Y.UpdateEngine,e}return N(e,t),e}(tt),it=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=Y.UpdateCollider,e}return N(e,t),e}(tt),nt=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=Y.UpdatePhysics,e}return N(e,t),e}(tt),rt=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=Y.UpdateTransform,e}return N(e,t),e}(tt),ot=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=Y.UpdatePreRender,e}return N(e,t),e}(tt),st=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=Y.UpdateCamera,e}return N(e,t),e}(tt),at=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.updateEvent=Y.UpdateRender,e}return N(e,t),e}(tt);!function(t){t[t.Polygon=0]=\"Polygon\",t[t.Circumference=1]=\"Circumference\",t[t.Line=2]=\"Line\"}(K||(K={})),function(t){t[t.WorldSpace=0]=\"WorldSpace\",t[t.ViewPort=1]=\"ViewPort\"}(Q||(Q={})),function(t){t[t.Sprite=0]=\"Sprite\",t[t.Text=1]=\"Text\",t[t.Tilemap=2]=\"Tilemap\",t[t.Mask=3]=\"Mask\",t[t.Geometric=4]=\"Geometric\",t[t.Video=5]=\"Video\"}($||($={}));var ht=function(){function t(t){this.gl=t,this.viewport={x:0,x1:0,y:0,y1:0},this.object={x:0,x1:0,y:0,y1:0}}return t.prototype.setViewport=function(t,e){var i=t.position,n=t.zoom;e===Q.WorldSpace?(this.viewport.x=i.x-this.gl.canvas.width/n/2,this.viewport.x1=i.x+this.gl.canvas.width/n/2,this.viewport.y=i.y-this.gl.canvas.height/n/2,this.viewport.y1=i.y+this.gl.canvas.height/n/2):(this.viewport.x=-this.gl.canvas.width/2,this.viewport.x1=this.gl.canvas.width/2,this.viewport.y=-this.gl.canvas.height/2,this.viewport.y1=this.gl.canvas.height/2)},t.prototype.setObjectForResizeable=function(t){var e=t.position,i=t.width,n=t.height,r=t.rotation,o=void 0===r?0:r,s=Math.abs(Math.sin(o)),a=Math.abs(Math.cos(o)),h=s*n+a*i,c=s*i+a*n;this.object.x=e.x-h/2,this.object.x1=e.x+h/2,this.object.y=e.y-c/2,this.object.y1=e.y+c/2},t.prototype.setObjectForText=function(t){var e=t.position,i=t.text,n=t.fontSize,r=t.lineSeparation,o=t.letterSpacing,s=t.rotation,a=i.split(\"\\n\").reduce((function(t,e){return Math.max(t,e.length)}),0)*(n+(null!=o?o:0))*2,h=i.split(\"\\n\").length*(n+(null!=r?r:0));this.setObjectForResizeable({position:e,width:a,height:h,rotation:s})},t.prototype.setObjectForGeometric=function(t){var e=this,i=t.position,n=t.vertexModel,r=t.shape,o=t.radius;r===K.Circumference?(this.object.x=i.x-o,this.object.y=i.y-o,this.object.x1=i.x+o,this.object.y1=i.y+o):(this.object.x=Number.MAX_SAFE_INTEGER,this.object.y=Number.MAX_SAFE_INTEGER,this.object.x1=Number.MIN_SAFE_INTEGER,this.object.y1=Number.MIN_SAFE_INTEGER,n.forEach((function(t){e.object.x=Math.min(t.x+i.x,e.object.x),e.object.y=Math.min(t.y+i.y,e.object.y),e.object.x1=Math.max(t.x+i.x,e.object.x1),e.object.y1=Math.max(t.y+i.y,e.object.y1)})))},t.prototype.setObjectForTilemap=function(t){t.tilemap.height=Math.ceil(t.tiles.length/t.tilemap.width),this.setObjectForResizeable({position:t.renderPosition,width:t.tilemap.width*t.tilemap.tileWidth,height:t.tilemap.height*t.tilemap.tileHeight,rotation:t.rotation})},t.prototype.applyCullingInTiles=function(t){var e=this,i=t.tiles,n=t.tilemap,r=n.width,o=n.tileWidth,s=n.tileHeight;t.culledTiles=i.map((function(t,i){return e.viewport.x1>=e.object.x+i%r*o&&e.viewport.x<=e.object.x+i%r*o+o&&e.viewport.y1>=e.object.y1-((i/r|0)*s+s)&&e.viewport.y<=e.object.y1-(i/r|0)*s?t:0}))},t.prototype.isInViewPort=function(t,e){switch(this.setViewport(e,t.location),t.type){case $.Video:case $.Mask:case $.Sprite:this.setObjectForResizeable(t);break;case $.Geometric:this.setObjectForGeometric(t);break;case $.Text:this.setObjectForText(t);break;case $.Tilemap:this.setObjectForTilemap(t)}return this.viewport.x1>=this.object.x&&this.viewport.x<=this.object.x1&&this.viewport.y1>=this.object.y&&this.viewport.y<=this.object.y1},t.prototype.applyCulling=function(t,e){var i=this;return e.filter((function(e){return!!i.isInViewPort(e,t)&&(e.type===$.Tilemap&&i.applyCullingInTiles(e),!0)}))},t}(),ct=function(){return ct=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t},ct.apply(this,arguments)};function lt(t,e,i){if(i||2===arguments.length)for(var n,r=0,o=e.length;r<o;r++)!n&&r in e||(n||(n=Array.prototype.slice.call(e,0,r)),n[r]=e[r]);return t.concat(n||Array.prototype.slice.call(e))}\"function\"==typeof SuppressedError&&SuppressedError;var ut,pt=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._x=t,this._y=e}return Object.defineProperty(t.prototype,\"x\",{get:function(){return this._x},set:function(t){this._x=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._y},set:function(t){this._y=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"magnitude\",{get:function(){return Math.sqrt(Math.pow(this._x,2)+Math.pow(this._y,2))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction||(this._direction=new t),t.unit(this._direction,this)},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e){this._x=t,this._y=e},t.prototype.copy=function(t){this.set(t.x,t.y)},t.prototype.equals=function(t){return this._x===t.x&&this._y===t.y},t.prototype.clone=function(){return new t(this._x,this._y)},t.prototype.distance=function(t){return Math.sqrt(Math.pow(this._x-t.x,2)+Math.pow(this._y-t.y,2))},t.add=function(t,e,i){return t.set(e.x+i.x,e.y+i.y),t},t.subtract=function(t,e,i){return t.set(e.x-i.x,e.y-i.y),t},t.unit=function(t,e){return 0===e.magnitude?t.set(0,0):t.set(e.x/e.magnitude,e.y/e.magnitude),t},t.normal=function(t,e){return t.set(-e.y,e.x),this.unit(t,t)},t.scale=function(t,e,i){return t.set(e.x*i,e.y*i),t},t.dot=function(t,e){return t.x*e.x+t.y*e.y},t.cross=function(t,e){return t.x*e.y-t.y*e.x},t.round=function(t,e){return t.set(Math.round(e.x),Math.round(e.y)),t},t}();!function(){function t(t,e,i,n){this._position=new pt,this._center=new pt,this._width=0,this._height=0,this.set(t,e,i,n)}Object.defineProperty(t.prototype,\"x\",{get:function(){return this._position.x},set:function(t){this._position.set(t,this._position.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y\",{get:function(){return this._position.y},set:function(t){this._position.set(this._position.x,t)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"x1\",{get:function(){return this._position.x+this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"y1\",{get:function(){return this._position.y+this._height},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.set(t.x,t.y)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},set:function(t){this._width=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},set:function(t){this._height=t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"center\",{get:function(){return this._center.set(this.x+this.width/2,this.y+this.height/2),this._center},enumerable:!1,configurable:!0}),t.prototype.set=function(t,e,i,n){this._position.set(t,e),this._width=i,this._height=n},t.prototype.equals=function(t){return this.position.equals(t.position)&&this.width===t.width&&this.height===t.height},t.prototype.copy=function(t){this.set(t.x,t.y,t.width,t.height)},t.prototype.overlaps=function(t){return this.x1>=t.x&&this.x<t.x1&&this.y1>=t.y&&this.y<t.y1},t.prototype.contains=function(e){return e instanceof t?e.x1<=this.x1&&e.x>=this.x&&e.y1<=this.y1&&e.y>=this.y:e instanceof pt&&!(e.x<this.x||e.y<this.y||e.x>=this.x1||e.y>=this.y1)}}(),function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this._degrees=0,this._radians=0,this._direction=new pt,t?this.radians=t:e&&(this.degrees=e)}Object.defineProperty(t.prototype,\"degrees\",{get:function(){return this._degrees},set:function(t){this._degrees=t,this._radians=t*Math.PI/180,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"radians\",{get:function(){return this._radians},set:function(t){this._radians=t,this._degrees=180*t/Math.PI,this.updateDirection()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"direction\",{get:function(){return this._direction},enumerable:!1,configurable:!0}),t.prototype.updateDirection=function(){this._direction.set(Math.cos(this._radians),Math.sin(this._radians))}}(),function(t){t[t.Center=0]=\"Center\",t[t.RightUp=1]=\"RightUp\",t[t.RightDown=2]=\"RightDown\",t[t.RightCenter=3]=\"RightCenter\"}(ut||(ut={}));var dt,ft=function(){function t(t,e){this.webglManager=t,this.cullingManager=e,this.renderData=[],this.cameraData=[]}return t.prototype.addRenderData=function(t){this.renderData.push(t)},t.prototype.addCameraData=function(t){this.cameraData.push(t)},t.prototype.render=function(){var t=this;this.cameraData.sort((function(t,e){return t.depth-e.depth})).forEach((function(e){return t.renderByCamera(e)}))},t.prototype.renderByCamera=function(t){var e=this;this.cullingManager.applyCulling(t,this.renderData.filter((function(e){return t.layers.includes(e.layer)})).sort((function(e,i){return t.layers.indexOf(e.layer)-t.layers.indexOf(i.layer)})).map((function(t){return t.type===$.Tilemap?function(t){var e=ct(ct({},t),{culledTiles:[],tilemap:ct(ct({},t.tilemap),{height:Math.ceil(t.tiles.length/t.tilemap.width),realWidth:t.tilemap.width*t.tilemap.tileWidth,realHeight:0}),renderPosition:new pt});return e.tilemap.realHeight=e.tilemap.height*e.tilemap.tileHeight,function(t){t.renderPosition.set(t.position.x+(t.orientation!==ut.Center?t.tilemap.realWidth/2:0),t.position.y+(t.orientation===ut.RightDown?-t.tilemap.realHeight/2:t.orientation===ut.RightUp?t.tilemap.realHeight/2:0))}(e),e}(t):t}))).forEach((function(i){return e.webglManager.render(i,t)}))},t.prototype.clearData=function(){this.renderData=[],this.cameraData=[]},t.prototype.clearScreen=function(t){this.webglManager.clearCanvas(t)},t.prototype.preloadTexture=function(t){this.webglManager.createTexture(t)},t}();!function(t){t.LegacyWebGL=\"webgl\",t.WebGL2=\"webgl2\"}(dt||(dt={}));var gt=function(){function t(t){if(this.canvas=t,this.contextVersion=this.getContextVersion(),!this.contextVersion)throw new Error(\"Your browser does not support WebGL.\");this.gl=this.canvas.getContext(this.contextVersion)}return t.prototype.getContextVersion=function(){return null!==this.canvas.getContext(dt.WebGL2)?dt.WebGL2:null!==this.canvas.getContext(dt.LegacyWebGL)?dt.LegacyWebGL:void 0},t}(),mt=function(){function t(){this.fontAtlas=new Map}return t.prototype.hasFontAtlas=function(t){return this.fontAtlas.has(this.symbol(t))},t.prototype.getFontAtlas=function(t){return this.fontAtlas.get(this.symbol(t))},t.prototype.getOrCreate=function(t,e,i){var n;return null!==(n=this.getFontAtlas(e))&&void 0!==n?n:this.create(t,e,i)},t.prototype.create=function(t,e,i){this.bitmapSize=i,this.chars=[];for(var n=0;n<t.length;n+=2)for(var r=t[n];r<=t[n+1];r++)this.chars.push(String.fromCharCode(r));var o=this.renderAtlas(e instanceof FontFace?e.family:e);return this.fontAtlas.set(this.symbol(e),o),o},t.prototype.symbol=function(t){return Symbol.for(t instanceof FontFace?t.family:t)},t.prototype.renderAtlas=function(t){var e=new yt(t,this.bitmapSize,Math.ceil(Math.sqrt(this.chars.length))),i=e.canvas.getContext(\"2d\");i.clearRect(0,0,e.canvas.width,e.canvas.height),i.textBaseline=\"top\",i.fillStyle=\"#000\",i.font=\"\".concat(this.bitmapSize,\"px \").concat(t);for(var n=0,r=0,o=0;o<this.chars.length;o++)i.fillText(this.chars[o],n,r),e.glyphs.set(this.chars[o],{id:o,width:i.measureText(this.chars[o]).width}),(n+=this.bitmapSize)>e.canvas.width-this.bitmapSize&&(n=0,r+=this.bitmapSize);return e},t}(),yt=function(t,e,i){this.fontFaceFamily=t,this.bitmapFontSize=e,this.gridSize=i,this.canvas=document.createElement(\"canvas\"),this.glyphs=new Map,this.canvas.width=this.gridSize*this.bitmapFontSize,this.canvas.height=this.canvas.width},vt=function(){function t(t,e){this.gl=t,this.shaderLoader=e}return t.prototype.create=function(t,e){var i=this.gl.createProgram(),n=this.shaderLoader.load(this.gl.VERTEX_SHADER,t),r=this.shaderLoader.load(this.gl.FRAGMENT_SHADER,e);this.gl.attachShader(i,n),this.gl.attachShader(i,r),this.gl.linkProgram(i);var o=this.gl.LINK_STATUS;if(!this.gl.getProgramParameter(i,o)){var s=this.gl.getProgramInfoLog(i);throw this.gl.deleteProgram(i),new Error(\"Unable to initialize the Program: \".concat(s))}return i},t}(),xt=function(){function t(t,e,i){this.gl=t,this.contextVersion=e,this.programFactory=i}return t.prototype.loadProgram=function(){this.program=this.contextVersion===dt.WebGL2?this.programFactory.create(\"#version 300 es\\n\\nin vec4 positionCoords;\\nin vec2 textureCoords;\\n\\nout vec2 texCoords;\\n\\nuniform mat4 projectionMatrix;\\nuniform mat4 modelMatrix;\\nuniform mat4 textureMatrix;\\n\\nvoid main()\\n{\\n gl_Position = projectionMatrix * modelMatrix * positionCoords;\\n texCoords = (textureMatrix * vec4(textureCoords, 0, 1)).xy;\\n}\",\"#version 300 es\\nprecision highp float;\\n\\nout vec4 fragColor;\\n\\nin vec2 texCoords;\\n\\nuniform int u_renderTexture;\\nuniform sampler2D u_texImage;\\nuniform vec4 u_solidColor;\\n\\nuniform int u_useTintColor;\\nuniform vec4 u_tintColor;\\n\\nuniform int u_useMaskColor;\\nuniform vec4 u_maskColor;\\nuniform float u_maskColorMix;\\n\\nuniform float u_alpha;\\n\\nvoid main()\\n{\\n if (u_renderTexture == 1) {\\n vec4 texColor = texture(u_texImage, texCoords);\\n\\n if (texColor.a < 0.0001) {\\n discard;\\n }\\n\\n if (u_useTintColor == 1) {\\n texColor = u_tintColor * texColor;\\n }\\n\\n if (u_useMaskColor == 1) {\\n texColor = mix(texColor, u_maskColor, clamp(u_maskColorMix, 0.0, 1.0));\\n }\\n\\n fragColor = vec4(texColor.rgb, u_alpha * texColor.a); \\n } else {\\n fragColor = vec4(u_solidColor.rgb, u_alpha);\\n }\\n}\"):this.programFactory.create(\"precision mediump float;\\n\\nattribute vec2 positionCoords;\\nattribute vec2 textureCoords;\\n\\nvarying vec2 texCoords;\\n\\nuniform mat4 projectionMatrix;\\nuniform mat4 modelMatrix;\\nuniform mat4 textureMatrix;\\n\\nvoid main()\\n{\\n gl_Position = projectionMatrix * modelMatrix * vec4(positionCoords, 0, 1);\\n texCoords = (textureMatrix * vec4(textureCoords, 0, 1)).xy;\\n}\",\"precision mediump float;\\n\\nvarying vec2 texCoords;\\n\\nuniform int u_renderTexture;\\nuniform sampler2D u_texImage;\\nuniform vec4 u_solidColor;\\n\\nuniform int u_useTintColor;\\nuniform vec4 u_tintColor;\\n\\nuniform int u_useMaskColor;\\nuniform vec4 u_maskColor;\\nuniform float u_maskColorMix;\\n\\nuniform float u_alpha;\\n\\nvoid main()\\n{\\n if (u_renderTexture == 1) {\\n vec4 texColor = texture2D(u_texImage, texCoords);\\n\\n if (texColor.a < 0.0001) {\\n discard;\\n }\\n\\n if (u_useTintColor == 1) {\\n texColor = u_tintColor * texColor;\\n }\\n\\n if (u_useMaskColor == 1) {\\n texColor = mix(texColor, u_maskColor, clamp(u_maskColorMix, 0.0, 1.0));\\n }\\n\\n gl_FragColor = vec4(texColor.rgb, u_alpha * texColor.a);\\n } else {\\n gl_FragColor = vec4(u_solidColor.rgb, u_alpha);\\n }\\n}\"),this.positionBuffer=this.gl.createBuffer(),this.textureBuffer=this.gl.createBuffer(),this.positionCoordsAttr=this.gl.getAttribLocation(this.program,\"positionCoords\"),this.texCoordsAttr=this.gl.getAttribLocation(this.program,\"textureCoords\"),this.modelMatrixUniform=this.gl.getUniformLocation(this.program,\"modelMatrix\"),this.projectionMatrixUniform=this.gl.getUniformLocation(this.program,\"projectionMatrix\"),this.textureMatrixUniform=this.gl.getUniformLocation(this.program,\"textureMatrix\"),this.renderTextureUniform=this.gl.getUniformLocation(this.program,\"u_renderTexture\"),this.textureUniform=this.gl.getUniformLocation(this.program,\"u_texImage\"),this.solidColorUniform=this.gl.getUniformLocation(this.program,\"u_solidColor\"),this.useTintColorUniform=this.gl.getUniformLocation(this.program,\"u_useTintColor\"),this.tintColorUniform=this.gl.getUniformLocation(this.program,\"u_tintColor\"),this.useMaskColorUniform=this.gl.getUniformLocation(this.program,\"u_useMaskColor\"),this.maskColorUniform=this.gl.getUniformLocation(this.program,\"u_maskColor\"),this.maskColorMixUniform=this.gl.getUniformLocation(this.program,\"u_maskColorMix\"),this.alphaUniform=this.gl.getUniformLocation(this.program,\"u_alpha\"),this.gl.useProgram(this.program),this.gl.blendFunc(this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA),this.gl.enableVertexAttribArray(this.positionCoordsAttr),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.positionBuffer),this.gl.vertexAttribPointer(this.positionCoordsAttr,2,this.gl.FLOAT,!1,0,0),this.gl.enableVertexAttribArray(this.texCoordsAttr),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.textureBuffer),this.gl.vertexAttribPointer(this.texCoordsAttr,2,this.gl.FLOAT,!1,0,0)},t}(),bt=function(){function t(t){this.gl=t}return t.prototype.load=function(t,e){var i=this.gl.createShader(t);this.gl.shaderSource(i,e),this.gl.compileShader(i);var n=this.gl.COMPILE_STATUS;if(!this.gl.getShaderParameter(i,n)){var r=this.gl.getShaderInfoLog(i);throw this.gl.deleteShader(i),new Error(\"Unable to initialize the shader program: \".concat(r))}return i},t}(),Mt=\"undefined\"!=typeof Float32Array?Float32Array:Array;function _t(){var t=new Mt(16);return Mt!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t}function wt(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function Ct(t,e,i){var n,r,o,s,a,h,c,l,u,p,d,f,g=i[0],m=i[1],y=i[2];return e===t?(t[12]=e[0]*g+e[4]*m+e[8]*y+e[12],t[13]=e[1]*g+e[5]*m+e[9]*y+e[13],t[14]=e[2]*g+e[6]*m+e[10]*y+e[14],t[15]=e[3]*g+e[7]*m+e[11]*y+e[15]):(n=e[0],r=e[1],o=e[2],s=e[3],a=e[4],h=e[5],c=e[6],l=e[7],u=e[8],p=e[9],d=e[10],f=e[11],t[0]=n,t[1]=r,t[2]=o,t[3]=s,t[4]=a,t[5]=h,t[6]=c,t[7]=l,t[8]=u,t[9]=p,t[10]=d,t[11]=f,t[12]=n*g+a*m+u*y+e[12],t[13]=r*g+h*m+p*y+e[13],t[14]=o*g+c*m+d*y+e[14],t[15]=s*g+l*m+f*y+e[15]),t}function jt(t,e,i){var n=i[0],r=i[1],o=i[2];return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*o,t[9]=e[9]*o,t[10]=e[10]*o,t[11]=e[11]*o,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function Ot(t,e,i){var n=Math.sin(i),r=Math.cos(i),o=e[0],s=e[1],a=e[2],h=e[3],c=e[4],l=e[5],u=e[6],p=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*r+c*n,t[1]=s*r+l*n,t[2]=a*r+u*n,t[3]=h*r+p*n,t[4]=c*r-o*n,t[5]=l*r-s*n,t[6]=u*r-a*n,t[7]=p*r-h*n,t}Math.hypot||(Math.hypot=function(){for(var t=0,e=arguments.length;e--;)t+=arguments[e]*arguments[e];return Math.sqrt(t)});var Pt,Rt=function(t){var e=/^#?([a-f\\d]{2})?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(t);return e?{r:parseInt(e[2],16)/256,g:parseInt(e[3],16)/256,b:parseInt(e[4],16)/256,a:void 0!==e[1]?parseInt(e[1],16)/256:1}:null},At=function(t,e,i,n){var r,o;(function(t,e,i,n,r,o,s){var a=1/(e-i),h=1/(n-r),c=1/(o-s);t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*h,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+i)*a,t[13]=(r+n)*h,t[14]=(s+o)*c,t[15]=1})(t=wt(t),-e.canvas.width/2,e.canvas.width/2,-e.canvas.height/2,e.canvas.height/2,-1,1),n===Q.WorldSpace&&(jt(t,t,[null!==(r=i.zoom)&&void 0!==r?r:1,null!==(o=i.zoom)&&void 0!==o?o:1,1]),Ct(t,t,[-i.position.x,-i.position.y,0]))},St=function(){function t(t,e){this.gl=t,this.programManager=e,this.vertices=new Map,this.lastVertices=null,this.projectionMatrix=_t(),this.modelMatrix=_t(),this.textureMatrix=_t();var i=2*Math.PI/60;this.circumferenceVertices=new Float32Array(function(t,e,i){void 0===i&&(i=1);for(var n=[],r=1;r<=60;r+=i)n.push(r);return n}(0,0,1).reduce((function(t,e){return lt(lt([],t,!0),[Math.cos(e*i),Math.sin(e*i)],!1)}),[]))}return t.prototype.render=function(t,e,i){switch(t.shape){case K.Polygon:this.renderLines(t,e,this.gl.LINE_LOOP,i);break;case K.Line:this.renderLines(t,e,this.gl.LINES,i);break;case K.Circumference:this.renderCircumference(t,e)}},t.prototype.renderLines=function(t,e,i,n){var r,o=this.generateVerticesKey(t.vertexModel);!1===this.vertices.has(o)&&this.vertices.set(o,new Float32Array(this.generatePolygonVertices(t.vertexModel)));var s=this.vertices.get(o);this.lastVertices===o&&n===$.Geometric||(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,s,this.gl.DYNAMIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,s,this.gl.DYNAMIC_DRAW)),this.lastVertices=o,this.modelMatrix=wt(this.modelMatrix),Ct(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),Ot(this.modelMatrix,this.modelMatrix,null!==(r=t.rotation)&&void 0!==r?r:0),At(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.uniform1i(this.programManager.renderTextureUniform,0);var a=Rt(t.color),h=a.r,c=a.g,l=a.b,u=a.a;this.gl.uniform4f(this.programManager.solidColorUniform,h,c,l,u),this.gl.uniform1f(this.programManager.alphaUniform,1),this.gl.drawArrays(i,0,s.length/2)},t.prototype.generateVerticesKey=function(t){return Symbol.for(t.reduce((function(t,e){return\"\".concat(t).concat(e.x).concat(e.y)}),t.length.toString()))},t.prototype.generatePolygonVertices=function(t){for(var e=[],i=0;i<t.length;i++)e.push(t[i].x,t[i].y);return e},t.prototype.renderCircumference=function(t,e){this.lastVertices=null,this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.circumferenceVertices,this.gl.DYNAMIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.circumferenceVertices,this.gl.DYNAMIC_DRAW),this.modelMatrix=wt(this.modelMatrix),Ct(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),jt(this.modelMatrix,this.modelMatrix,[t.radius,t.radius,1]),At(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.uniform1i(this.programManager.renderTextureUniform,0);var i=Rt(t.color),n=i.r,r=i.g,o=i.b,s=i.a;this.gl.uniform4f(this.programManager.solidColorUniform,n,r,o,s),this.gl.uniform1f(this.programManager.alphaUniform,1),this.gl.drawArrays(this.gl.LINE_LOOP,0,this.circumferenceVertices.length/2)},t}();!function(t){t[t.Rectangle=0]=\"Rectangle\",t[t.Circumference=1]=\"Circumference\"}(Pt||(Pt={}));var Et,Tt=function(){function t(t,e){this.gl=t,this.programManager=e,this.type=$.Mask,this.rectangleVertices=new Float32Array([-.5,-.5,-.5,.5,.5,-.5,.5,-.5,-.5,.5,.5,.5]),this.projectionMatrix=_t(),this.modelMatrix=_t(),this.textureMatrix=_t();for(var i=2*Math.PI/60,n=[0,0],r=0;r<=60;r++)n.push(Math.cos(r*i),Math.sin(r*i));this.circumferenceVertices=new Float32Array(n)}return t.prototype.render=function(t,e,i){var n,r;i===$.Mask&&this.lastShape===t.shape||(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,t.shape===Pt.Rectangle?this.rectangleVertices:this.circumferenceVertices,this.gl.STATIC_DRAW)),this.modelMatrix=wt(this.modelMatrix),Ct(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),Ot(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),jt(this.modelMatrix,this.modelMatrix,t.shape===Pt.Rectangle?[t.width,t.height,1]:[t.radius,t.radius,1]),At(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),t.alpha>=0&&t.alpha<1?this.gl.enable(this.gl.BLEND):this.gl.disable(this.gl.BLEND),this.gl.uniform1i(this.programManager.renderTextureUniform,0);var o=Rt(t.color),s=o.r,a=o.g,h=o.b,c=o.a;this.gl.uniform4f(this.programManager.solidColorUniform,s,a,h,c),this.gl.uniform1f(this.programManager.alphaUniform,null!==(r=t.alpha)&&void 0!==r?r:1),t.shape===Pt.Rectangle?this.gl.drawArrays(this.gl.TRIANGLES,0,6):this.gl.drawArrays(this.gl.TRIANGLE_FAN,0,this.circumferenceVertices.length/2),this.lastShape=t.shape},t}(),Dt=function(){function t(t,e,i){this.gl=t,this.programManager=e,this.textureManager=i,this.lastTexture=null,this.projectionMatrix=_t(),this.modelMatrix=_t(),this.textureMatrix=_t(),this.posVertices=new Float32Array([-.5,-.5,-.5,.5,.5,-.5,.5,-.5,-.5,.5,.5,.5]),this.texVertices=new Float32Array([0,1,0,0,1,1,1,1,0,0,1,0])}return t.prototype.render=function(t,e,i){var n,r,o,s;i!==t.type&&(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.posVertices,this.gl.STATIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.texVertices,this.gl.STATIC_DRAW)),this.modelMatrix=wt(this.modelMatrix),Ct(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),Ot(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),jt(this.modelMatrix,this.modelMatrix,[t.width*(t.flipHorizontal?-1:1),t.height*(t.flipVertical?-1:1),1]),this.textureMatrix=wt(this.textureMatrix),t.slice&&(Ct(this.textureMatrix,this.textureMatrix,[t.slice.x/t.image.naturalWidth,t.slice.y/t.image.naturalHeight,0]),jt(this.textureMatrix,this.textureMatrix,[t.slice.width/t.image.naturalWidth,t.slice.height/t.image.naturalHeight,1])),At(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.enable(this.gl.BLEND);var a=this.textureManager.getOrCreateTextureFromImage(t.image,t.smooth);if(this.lastTexture===a&&i===t.type||(this.gl.bindTexture(this.gl.TEXTURE_2D,a),this.gl.uniform1i(this.programManager.textureUniform,0),this.lastTexture=a),this.gl.uniform1i(this.programManager.renderTextureUniform,1),this.gl.uniform1f(this.programManager.alphaUniform,null!==(r=t.alpha)&&void 0!==r?r:1),this.gl.uniform1i(this.programManager.useTintColorUniform,t.tintColor?1:0),t.tintColor){var h=Rt(t.tintColor),c=h.r,l=h.g,u=h.b,p=h.a;this.gl.uniform4f(this.programManager.tintColorUniform,c,l,u,p)}if(this.gl.uniform1i(this.programManager.useMaskColorUniform,t.maskColor?1:0),t.maskColor){var d=Rt(t.maskColor);c=d.r,l=d.g,u=d.b,this.gl.uniform4f(this.programManager.maskColorUniform,c,l,u,null!==(o=t.alpha)&&void 0!==o?o:1),this.gl.uniform1f(this.programManager.maskColorMixUniform,null!==(s=t.maskColorMix)&&void 0!==s?s:1)}this.gl.drawArrays(this.gl.TRIANGLES,0,6)},t}();!function(t){t[t.Center=0]=\"Center\",t[t.RightUp=1]=\"RightUp\",t[t.RightDown=2]=\"RightDown\",t[t.RightCenter=3]=\"RightCenter\"}(Et||(Et={}));var Ft,Bt=new pt,Ut=new pt,It=[32,126,161,255],Lt=Et.Center,Vt=function(){function t(t,e,i,n){this.gl=t,this.programManager=e,this.textureManager=i,this.fontAtlasFactory=n,this.type=$.Text,this.posVertices=[],this.texVertices=[],this.lastTexture=null,this.textSize=new pt,this.modelPosition=new pt,this.projectionMatrix=_t(),this.modelMatrix=_t(),this.textureMatrix=_t()}return t.prototype.render=function(t,e,i){var n;if(!t.text)throw new Error(\"Nothing to render\");this.setDefaultValues(t);var r=this.fontAtlasFactory.getOrCreate(t.bitmap.charRanges,t.font,t.bitmap.fontSize);this.generateTextVertices(r,t),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,new Float32Array(this.posVertices),this.gl.DYNAMIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,new Float32Array(this.texVertices),this.gl.DYNAMIC_DRAW),this.modelMatrix=wt(this.modelMatrix),this.setPositionFromOrientation(t),Ct(this.modelMatrix,this.modelMatrix,[this.modelPosition.x,this.modelPosition.y,0]),Ot(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),jt(this.modelMatrix,this.modelMatrix,[t.fontSize,t.fontSize,1]),this.textureMatrix=wt(this.textureMatrix),At(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),t.alpha<1?this.gl.enable(this.gl.BLEND):this.gl.disable(this.gl.BLEND);var o=this.textureManager.getOrCreateTextureFromCanvas(\"FontFamily:\"+r.fontFaceFamily,r.canvas,t.smooth);this.lastTexture===o&&i===$.Text||(this.gl.bindTexture(this.gl.TEXTURE_2D,o),this.gl.uniform1i(this.programManager.textureUniform,0),this.lastTexture=o),this.gl.uniform1i(this.programManager.useTintColorUniform,0),this.gl.uniform1i(this.programManager.renderTextureUniform,1),this.gl.uniform1f(this.programManager.alphaUniform,t.alpha);var s=Rt(t.color),a=s.r,h=s.g,c=s.b,l=s.a;this.gl.uniform4f(this.programManager.maskColorUniform,a,h,c,l),this.gl.uniform1f(this.programManager.maskColorMixUniform,1),this.gl.uniform1i(this.programManager.useMaskColorUniform,1),this.gl.drawArrays(this.gl.TRIANGLES,0,this.posVertices.length/2)},t.prototype.setDefaultValues=function(t){var e,i,n,r,o,s,a,h,c,l;t.bitmap?(t.bitmap.margin=null!==(e=t.bitmap.margin)&&void 0!==e?e:Bt,t.bitmap.spacing=null!==(i=t.bitmap.spacing)&&void 0!==i?i:Ut,t.bitmap.fontSize=null!==(n=t.bitmap.fontSize)&&void 0!==n?n:64,t.bitmap.charRanges=null!==(r=t.bitmap.charRanges)&&void 0!==r?r:It):t.bitmap={margin:Bt,spacing:Ut,fontSize:64,charRanges:It},t.color=null!==(o=t.color)&&void 0!==o?o:\"#000000\",t.letterSpacing=null!==(s=t.letterSpacing)&&void 0!==s?s:0,t.lineSeparation=null!==(a=t.lineSeparation)&&void 0!==a?a:0,t.alpha=null!==(h=t.alpha)&&void 0!==h?h:1,t.orientation=null!==(c=t.orientation)&&void 0!==c?c:Lt,t.rotation=null!==(l=t.rotation)&&void 0!==l?l:0},t.prototype.generateTextVertices=function(t,e){var i=e.text,n=e.fontSize,r=e.bitmap,o=e.letterSpacing,s=e.lineSeparation;this.posVertices=[],this.texVertices=[];var a=0,h=0,c=0;o/=n,s/=n;for(var l=0;l<i.length;l++){var u=i[l];if(\"\\n\"!==u){var p=t.glyphs.get(u);if(p){var d=p.width/t.bitmapFontSize;this.posVertices.push(a,h-1,a+d,h-1,a,h,a,h,a+d,h-1,a+d,h);var f=p.id%t.gridSize*t.bitmapFontSize,g=(p.id/t.gridSize|0)*t.bitmapFontSize,m=(f+r.margin.x)/t.canvas.width,y=(g+r.margin.y)/t.canvas.width,v=(f+p.width+r.spacing.x)/t.canvas.width,x=(g+t.bitmapFontSize+r.spacing.y)/t.canvas.width;this.texVertices.push(m,x,v,x,m,y,m,y,v,x,v,y),a+=d+o}}else c=Math.max(c,a),a=0,h-=1+s}this.textSize.set(Math.max(c,a)*n,Math.abs(h-1)*n)},t.prototype.setPositionFromOrientation=function(t){this.modelPosition.set(t.position.x+(t.orientation===Et.Center?-this.textSize.x/2:0),t.position.y+(t.orientation===Et.Center||t.orientation===Et.RightCenter?this.textSize.y/2:t.orientation===Et.RightUp?this.textSize.y:0))},t}(),Gt=function(){function t(t,e,i){this.gl=t,this.programManager=e,this.textureManager=i,this.posVertices=[],this.texVertices=[],this.lastTexture=null,this.tileset={width:0,tileWidth:0,tileHeight:0,texMargin:new pt,texSpacing:new pt,texWidth:0,texHeight:0,texCorrection:new pt},this.projectionMatrix=_t(),this.modelMatrix=_t(),this.textureMatrix=_t()}return t.prototype.render=function(t,e,i){var n,r,o,s;if(0===t.culledTiles.reduce((function(t,e){return t+e}),0))throw new Error(\"Nothing to render\");if(this.processTileset(t),this.generateVertices(t),0===this.posVertices.length)throw new Error(\"Nothing to render\");this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,new Float32Array(this.posVertices),this.gl.DYNAMIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,new Float32Array(this.texVertices),this.gl.DYNAMIC_DRAW),this.modelMatrix=wt(this.modelMatrix),Ct(this.modelMatrix,this.modelMatrix,[t.renderPosition.x,t.renderPosition.y,0]),Ot(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),jt(this.modelMatrix,this.modelMatrix,[t.tilemap.tileWidth*(t.flipHorizontal?-1:1),t.tilemap.tileHeight*(t.flipVertical?-1:1),1]),this.textureMatrix=wt(this.textureMatrix),jt(this.textureMatrix,this.textureMatrix,[this.tileset.tileWidth/t.tileset.image.naturalWidth,this.tileset.tileHeight/t.tileset.image.naturalHeight,1]),At(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.enable(this.gl.BLEND);var a=this.textureManager.getOrCreateTextureFromImage(t.tileset.image,t.smooth);if(this.lastTexture===a&&i===$.Tilemap||(this.gl.bindTexture(this.gl.TEXTURE_2D,a),this.gl.uniform1i(this.programManager.textureUniform,0),this.lastTexture=a),this.gl.uniform1i(this.programManager.renderTextureUniform,1),this.gl.uniform1f(this.programManager.alphaUniform,null!==(r=t.alpha)&&void 0!==r?r:1),this.gl.uniform1i(this.programManager.useTintColorUniform,t.tintColor?1:0),t.tintColor){var h=Rt(t.tintColor),c=h.r,l=h.g,u=h.b,p=h.a;this.gl.uniform4f(this.programManager.tintColorUniform,c,l,u,p)}if(this.gl.uniform1i(this.programManager.useMaskColorUniform,t.maskColor?1:0),t.maskColor){var d=Rt(t.maskColor);c=d.r,l=d.g,u=d.b,this.gl.uniform4f(this.programManager.maskColorUniform,c,l,u,null!==(o=t.alpha)&&void 0!==o?o:1),this.gl.uniform1f(this.programManager.maskColorMixUniform,null!==(s=t.maskColorMix)&&void 0!==s?s:1)}this.gl.drawArrays(this.gl.TRIANGLES,0,this.posVertices.length/2)},t.prototype.processTileset=function(t){var e,i,n,r,o,s,a,h=t.tileset;h.margin=null!==(e=h.margin)&&void 0!==e?e:new pt,h.spacing=null!==(i=h.spacing)&&void 0!==i?i:new pt,h.correction=null!==(n=h.correction)&&void 0!==n?n:new pt,this.tileset.width=h.width,this.tileset.tileWidth=h.tileWidth+(null!==(r=h.margin.x)&&void 0!==r?r:0)+(null!==(o=h.spacing.x)&&void 0!==o?o:0),this.tileset.tileHeight=h.tileHeight+(null!==(s=h.margin.y)&&void 0!==s?s:0)+(null!==(a=h.spacing.y)&&void 0!==a?a:0),this.tileset.texMargin.set(h.margin.x/this.tileset.tileWidth,h.margin.y/this.tileset.tileHeight),this.tileset.texSpacing.set(h.spacing.x/this.tileset.tileWidth,h.spacing.y/this.tileset.tileHeight),this.tileset.texCorrection.set(h.correction.x/this.tileset.tileWidth,h.correction.y/this.tileset.tileHeight),this.tileset.texWidth=1-this.tileset.texMargin.x-this.tileset.texSpacing.x-2*this.tileset.texCorrection.x,this.tileset.texHeight=1-this.tileset.texMargin.y-this.tileset.texSpacing.y-2*this.tileset.texCorrection.y},t.prototype.generateVertices=function(t){var e=this,i=t.culledTiles,n=t.tilemap;this.posVertices=[],this.texVertices=[];var r=Math.floor(i.length/n.width);i.forEach((function(t,i){if(0!==t){var o=i%n.width-n.width/2,s=r/2-Math.floor(i/n.width);e.posVertices.push(o,s-1,o+1,s-1,o,s,o,s,o+1,s-1,o+1,s);var a=(t-1)%e.tileset.width+e.tileset.texMargin.x+e.tileset.texCorrection.x,h=Math.floor((t-1)/e.tileset.width)+e.tileset.texMargin.y+e.tileset.texCorrection.y;e.texVertices.push(a,h+e.tileset.texHeight,a+e.tileset.texWidth,h+e.tileset.texHeight,a,h,a,h,a+e.tileset.texWidth,h+e.tileset.texHeight,a+e.tileset.texWidth,h)}}))},t}(),kt=function(){function t(t,e,i){this.gl=t,this.programManager=e,this.textureManager=i,this.lastTexture=null,this.projectionMatrix=_t(),this.modelMatrix=_t(),this.textureMatrix=_t(),this.posVertices=new Float32Array([-.5,-.5,-.5,.5,.5,-.5,.5,-.5,-.5,.5,.5,.5]),this.texVertices=new Float32Array([0,1,0,0,1,1,1,1,0,0,1,0])}return t.prototype.render=function(t,e,i){var n,r,o,s;i!==t.type&&(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.positionBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.posVertices,this.gl.STATIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.programManager.textureBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.texVertices,this.gl.STATIC_DRAW)),this.modelMatrix=wt(this.modelMatrix),Ct(this.modelMatrix,this.modelMatrix,[t.position.x,t.position.y,0]),Ot(this.modelMatrix,this.modelMatrix,null!==(n=t.rotation)&&void 0!==n?n:0),jt(this.modelMatrix,this.modelMatrix,[t.width*(t.flipHorizontal?-1:1),t.height*(t.flipVertical?-1:1),1]),this.textureMatrix=wt(this.textureMatrix),t.slice&&(Ct(this.textureMatrix,this.textureMatrix,[t.slice.x/t.video.videoWidth,t.slice.y/t.video.videoHeight,0]),jt(this.textureMatrix,this.textureMatrix,[t.slice.width/t.video.videoWidth,t.slice.height/t.video.videoHeight,1])),At(this.projectionMatrix,this.gl,e,t.location),this.gl.uniformMatrix4fv(this.programManager.projectionMatrixUniform,!1,this.projectionMatrix),this.gl.uniformMatrix4fv(this.programManager.modelMatrixUniform,!1,this.modelMatrix),this.gl.uniformMatrix4fv(this.programManager.textureMatrixUniform,!1,this.textureMatrix),this.gl.enable(this.gl.BLEND);var a=this.textureManager.getOrCreateTextureFromVideo(t.video);if(this.lastTexture===a&&i===t.type||(this.gl.bindTexture(this.gl.TEXTURE_2D,a),this.gl.uniform1i(this.programManager.textureUniform,0),this.lastTexture=a),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,this.gl.RGBA,this.gl.UNSIGNED_BYTE,t.video),this.gl.uniform1i(this.programManager.renderTextureUniform,1),this.gl.uniform1f(this.programManager.alphaUniform,null!==(r=t.alpha)&&void 0!==r?r:1),this.gl.uniform1i(this.programManager.useTintColorUniform,t.tintColor?1:0),t.tintColor){var h=Rt(t.tintColor),c=h.r,l=h.g,u=h.b,p=h.a;this.gl.uniform4f(this.programManager.tintColorUniform,c,l,u,p)}if(this.gl.uniform1i(this.programManager.useMaskColorUniform,t.maskColor?1:0),t.maskColor){var d=Rt(t.maskColor);c=d.r,l=d.g,u=d.b,this.gl.uniform4f(this.programManager.maskColorUniform,c,l,u,null!==(o=t.alpha)&&void 0!==o?o:1),this.gl.uniform1f(this.programManager.maskColorMixUniform,null!==(s=t.maskColorMix)&&void 0!==s?s:1)}this.gl.drawArrays(this.gl.TRIANGLES,0,6)},t}(),Wt=function(){function t(t){this.gl=t}return t.prototype.createFromImage=function(t,e,i){var n=this;return void 0===e&&(e=!0),void 0===i&&(i=null),i=null!=i?i:this.gl.createTexture(),t.naturalWidth?this.createFromSource(t,i,e):t.addEventListener(\"load\",(function(){return n.createFromSource(t,i,e)})),i},t.prototype.createFromCanvas=function(t,e,i){return void 0===e&&(e=!0),void 0===i&&(i=null),i=null!=i?i:this.gl.createTexture(),this.createFromSource(t,i,e),i},t.prototype.createPixelTexture=function(){var t=this.gl.createTexture();return this.gl.bindTexture(this.gl.TEXTURE_2D,t),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,1,1,0,this.gl.RGBA,this.gl.UNSIGNED_BYTE,new Uint8Array([0,0,0,255])),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR),this.gl.bindTexture(this.gl.TEXTURE_2D,null),t},t.prototype.createFromSource=function(t,e,i){void 0===i&&(i=!0),this.gl.bindTexture(this.gl.TEXTURE_2D,e),this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGBA,this.gl.RGBA,this.gl.UNSIGNED_BYTE,t),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),!1===i?(this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.NEAREST),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.NEAREST)):(this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR)),this.gl.bindTexture(this.gl.TEXTURE_2D,null)},t}(),Ht=function(){function t(t){this.textureFactory=t,this.textures=new Map}return t.prototype.getOrCreateTextureFromImage=function(t,e){var i;return void 0===e&&(e=!0),null!==(i=this.textures.get(Symbol.for(t.src)))&&void 0!==i?i:this.createTextureFromImage(t,e)},t.prototype.createTextureFromImage=function(t,e){void 0===e&&(e=!0);var i=this.textureFactory.createFromImage(t,e);return this.textures.set(Symbol.for(t.src),i),i},t.prototype.getOrCreateTextureFromCanvas=function(t,e,i){var n;return void 0===i&&(i=!0),null!==(n=this.textures.get(Symbol.for(t)))&&void 0!==n?n:this.createTextureFromCanvas(t,e,i)},t.prototype.createTextureFromCanvas=function(t,e,i){void 0===i&&(i=!0);var n=this.textureFactory.createFromCanvas(e,i);return this.textures.set(Symbol.for(t),n),n},t.prototype.getOrCreateTextureFromVideo=function(t){var e;return null!==(e=this.textures.get(Symbol.for(t.src)))&&void 0!==e?e:this.createTextureFromVideo(t)},t.prototype.createTextureFromVideo=function(t){var e=this.textureFactory.createPixelTexture();return this.textures.set(Symbol.for(t.src),e),e},t}(),zt=function(){function t(t,e,i,n){this.gl=t,this.textureManager=i,this.renderers=n,e.loadProgram()}return t.prototype.render=function(t,e){try{this.renderers.get(t.type).render(t,e,this.lastRender),this.lastRender=t.type}catch(t){return}},t.prototype.clearCanvas=function(t){var e=Rt(t);this.gl.clearColor(e.r,e.g,e.b,e.a),this.gl.clear(this.gl.COLOR_BUFFER_BIT)},t.prototype.createTexture=function(t,e){void 0===e&&(e=!1),this.textureManager.createTextureFromImage(t,e)},t}();!function(t){t.Image=\"Image\",t.Audio=\"Audio\",t.Font=\"Font\",t.Video=\"Video\"}(Ft||(Ft={}));var Nt,Yt=function(){function t(t){this.renderManager=t,this.assets=[]}return t.prototype.getAssetsLoaded=function(){return this.assets.reduce((function(t,e){return t&&e.loaded}),!0)},t.prototype.loadImage=function(t,e){var i=this;void 0===e&&(e=!1);var n=new Image;n.crossOrigin=\"\",n.src=t;var r=this.createAsset(t,Ft.Image,n),o=function(){e&&i.renderManager.preloadTexture(n),r.loaded=!0};return n.naturalWidth?o():n.addEventListener(\"load\",o),n},t.prototype.loadAudio=function(t){var e=new Audio;e.src=t;var i=this.createAsset(t,Ft.Audio,e);return e.duration?i.loaded=!0:e.addEventListener(\"canplaythrough\",(function(){return i.loaded=!0})),e},t.prototype.loadFont=function(t,e){var i=new FontFace(t,\"url(\".concat(e,\")\")),n=this.createAsset(e,Ft.Font,i);return n.family=t,i.load().then((function(t){document.fonts.add(t),n.loaded=!0})),i},t.prototype.loadVideo=function(t){var e=document.createElement(\"video\");e.playsInline=!0,e.src=t;var i=this.createAsset(t,Ft.Video,e);return e.duration?i.loaded=!0:e.addEventListener(\"canplaythrough\",(function(){return i.loaded=!0})),e},t.prototype.getImage=function(t){var e;return null===(e=this.assets.find((function(e){return e.type===Ft.Image&&e.url===t})))||void 0===e?void 0:e.element},t.prototype.getAudio=function(t){var e;return null===(e=this.assets.find((function(e){return e.type===Ft.Audio&&e.url===t})))||void 0===e?void 0:e.element},t.prototype.getFont=function(t){var e;return null===(e=this.assets.find((function(e){return e.type===Ft.Font&&e.family===t})))||void 0===e?void 0:e.element},t.prototype.getVideo=function(t){var e;return null===(e=this.assets.find((function(e){return e.type===Ft.Video&&e.url===t})))||void 0===e?void 0:e.element},t.prototype.createAsset=function(t,e,i){var n={type:e,url:t,element:i,loaded:!1};return this.assets.push(n),n},t}(),Xt=function(t){function e(e){var i=t.call(this,e)||this;return i.name=\"AngryPixelException\",i}return N(e,t),e}(Error),qt=function(){function t(t,e,i){if(this._canvas=null,!t)throw new Xt(\"containerNode cannot be empty or null.\");this.containerNode=t,this.gameWidth=e,this.gameHeight=i,this.setupCanvas()}return Object.defineProperty(t.prototype,\"canvas\",{get:function(){return this._canvas},enumerable:!1,configurable:!0}),t.prototype.setupCanvas=function(){this._canvas=document.createElement(\"canvas\"),this._canvas.id=\"angryPixelGameCanvas\",this._canvas.width=Math.floor(this.gameWidth),this._canvas.height=Math.floor(this.gameHeight),this.canvas.tabIndex=0,this._canvas.addEventListener(\"contextmenu\",(function(t){return t.preventDefault()})),this.containerNode.appendChild(this._canvas),this.canvas.focus()},t}(),Kt=function(){function t(t){this.container=t,this.gameObjects=[],this.lastId=0}return t.prototype.addGameObject=function(t,e,i,n){var r=new t(this.container,++this.lastId,n,i);return this.gameObjects.push(r),r.dispatch(Y.Init,e),r},t.prototype.findGameObjects=function(t){return t?this.gameObjects.filter((function(e){return e instanceof t})):q([],this.gameObjects,!0)},t.prototype.findGameObjectById=function(t){return this.gameObjects.find((function(e){return e.id===t}))},t.prototype.findGameObject=function(t){return\"string\"==typeof t?this.gameObjects.find((function(e){return e.name===t})):this.gameObjects.find((function(e){return e instanceof t}))},t.prototype.findGameObjectsByParent=function(t){return this.gameObjects.filter((function(e){return e.parent===t}))},t.prototype.findGameObjectByParent=function(t,e){return\"string\"==typeof e?this.gameObjects.find((function(i){return i.name===e&&i.parent===t})):this.gameObjects.find((function(i){return i instanceof e&&i.parent===t}))},t.prototype.findGameObjectsByTag=function(t){return this.gameObjects.filter((function(e){return e.tag===t}))},t.prototype.destroyAllGameObjects=function(t){var e=this;void 0===t&&(t=!1),this.gameObjects.filter((function(e){return t||!e.keep})).forEach((function(t){return e.destroy(t,!1)}))},t.prototype.destroyGameObject=function(t){this.destroy(t,!0)},t.prototype.destroy=function(t,e){var i=this.gameObjects.indexOf(t);if(-1!==i){var n=this.gameObjects.splice(i,1)[0];e&&this.destroyChildren(n),n.dispatch(Y.Destroy)}},t.prototype.destroyChildren=function(t){var e=this;this.findGameObjectsByParent(t).forEach((function(t){return e.destroyGameObject(t)}))},t}(),Qt=function(){function t(t,e,i,n){this.timeManager=t,this.physicsManager=e,this.gameObjectManager=i,this.sceneManager=n,this.running=!1,this.gameObjects=[],this.components=[],this.changingScene=!1,this.sceneEvents=[Y.Start,Y.Update,Y.StopGame],this.gameObjectEvents=[Y.Start,Y.Update]}return t.prototype.start=function(){this.startLoop(!0)},t.prototype.pause=function(){this.running=!1},t.prototype.resume=function(){this.startLoop(!1)},t.prototype.stop=function(){this.running=!1,this.dispatchFrameEvent(Y.StopGame),this.physicsManager.clear()},t.prototype.startLoop=function(t){this.running||(this.running=!0,t&&this.sceneManager.loadOpeningScene(),this.asyncGameLoop(),this.timeManager.gameFramerate!==this.timeManager.physicsFramerate&&this.asyncPhysicsLoop())},t.prototype.gameLogicIteration=function(t){this.timeManager.updateForGame(t),this.sceneManager.pendingSceneToload()&&(this.sceneManager.loadPendingScene(),this.changingScene=!1),this.load(),this.dispatchFrameEvent(Y.Start),this.dispatchFrameEvent(Y.Update),this.dispatchFrameEvent(Y.UpdateEngine),this.dispatchFrameEvent(Y.UpdateTransform),this.timeManager.gameFramerate===this.timeManager.physicsFramerate&&(this.timeManager.updateForPhysics(t),this.physicsIteration()),this.sceneManager.pendingSceneToload()&&(this.changingScene=!0,this.sceneManager.unloadCurrentScene())},t.prototype.physicsIteration=function(){this.timeManager.timeScale<=0||this.changingScene||(this.dispatchFrameEvent(Y.UpdatePhysics),this.dispatchFrameEvent(Y.UpdateCollider),this.dispatchFrameEvent(Y.UpdateTransform),this.physicsManager.resolve(this.timeManager.physicsDeltaTime))},t.prototype.asyncGameLoop=function(){var t=this;this.gameInterval=setInterval((function(){if(!t.running)return clearInterval(t.gameInterval);t.gameLogicIteration(process.uptime())}),1e3/this.timeManager.gameFramerate)},t.prototype.asyncPhysicsLoop=function(){var t=this;this.physicsInterval=setInterval((function(){if(!t.running)return clearInterval(t.physicsInterval);t.timeManager.updateForPhysics(process.uptime()),t.physicsIteration()}),1e3/this.timeManager.physicsFramerate)},t.prototype.load=function(){var t=this;this.loadedScene=this.sceneManager.getLoadedScene(),this.gameObjects=this.gameObjectManager.findGameObjects().filter((function(t){return t.active})),this.components=[],this.gameObjects.forEach((function(e){return e.getComponents().filter((function(t){return t.active})).forEach((function(e){return t.components.push(e)}))}))},t.prototype.dispatchFrameEvent=function(t){this.sceneEvents.includes(t)&&this.loadedScene.dispatch(t),this.gameObjectEvents.includes(t)&&this.gameObjects.forEach((function(e){e.active&&e.dispatch(t)})),this.components.forEach((function(e){e.active&&e.dispatch(t)}))},t}(),$t=function(){function t(t,e){this.container=t,this.renderManager=e,this.scenes=new Map,this.sceneNamePendingToLoad=null}return t.prototype.addScene=function(t,e,i,n){var r=this;if(void 0===n&&(n=!1),this.scenes.has(e))throw new Xt(\"There is already a scene with the name '\".concat(e,\"'\"));this.scenes.set(e,(function(){var n=new t(r.container,e,r.container.getConstant(\"Game\"));return r.currentScene=n,n.dispatch(Y.Init,i),n})),!n&&this.openingSceneName||(this.openingSceneName=e)},t.prototype.loadScene=function(t){if(!1===this.scenes.has(t))throw new Xt(\"Scene with name \".concat(t,\" does not exists\"));this.sceneNamePendingToLoad=t},t.prototype.getLoadedScene=function(){return this.currentScene},t.prototype.loadOpeningScene=function(){if(null===this.openingSceneName)throw new Xt(\"There is no opening scene\");this.scenes.get(this.openingSceneName)()},t.prototype.pendingSceneToload=function(){return null!==this.sceneNamePendingToLoad},t.prototype.loadPendingScene=function(){this.sceneNamePendingToLoad&&(this.scenes.get(this.sceneNamePendingToLoad)(),this.sceneNamePendingToLoad=null)},t.prototype.unloadCurrentScene=function(){this.currentScene&&(this.currentScene.dispatch(Y.Destroy),this.currentScene=void 0)},t}(),Jt=[60,120,180,240],Zt=function(){function t(t){if(this.minGameDeltatime=0,this.minPhysicsDeltaTime=0,this.gameFramerate=60,this.physicsFramerate=180,this.timeScale=1,this.browserDeltaTime=0,this.unscaledDeltaTime=0,this.unscaledPhysicsDeltaTime=0,this.maxDeltaTime=1/30,this.thenForGame=0,this.thenForPhysics=0,this.thenForBrowser=0,!Jt.includes(t))throw new Xt(\"Invalid Physics frame rate. Allowed: [\".concat(Jt.join(\", \"),\"]\"));this.physicsFramerate=t,this.minGameDeltatime=parseFloat((1/this.gameFramerate).toFixed(6)),this.minPhysicsDeltaTime=parseFloat((1/this.physicsFramerate).toFixed(6))}return Object.defineProperty(t.prototype,\"deltaTime\",{get:function(){return this.unscaledDeltaTime*this.timeScale},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"physicsDeltaTime\",{get:function(){return this.unscaledPhysicsDeltaTime*this.timeScale},enumerable:!1,configurable:!0}),t.prototype.updateForGame=function(t){this.unscaledDeltaTime=Math.min(Math.max(this.minGameDeltatime,t-this.thenForGame),this.maxDeltaTime),this.thenForGame=t},t.prototype.updateForBrowser=function(t){this.browserDeltaTime=Math.min(Math.max(0,t-this.thenForBrowser),this.maxDeltaTime),this.thenForBrowser=t},t.prototype.updateForPhysics=function(t){this.unscaledPhysicsDeltaTime=Math.min(Math.max(0,t-this.thenForPhysics),this.maxDeltaTime),this.thenForPhysics=t},t}(),te=function(t,e){if(t.addConstant(\"GameConfig\",e),t.add(\"TimeManager\",(function(){return new Zt(e.physicsFramerate)})),t.add(\"GameObjectManager\",(function(){return new Kt(t)})),t.add(\"PhysicsManager\",(function(){return function(t){var e=void 0===t?{}:t,i=e.collisionArea,n=e.collisionMatrix,r=e.collisionMethod,o=e.collisionBroadPhaseMethod,s=new E,a=r===O.AABB?new P(new A,new S,s):new R(s,new B),h=new j(a,o,i,n),c=new b,l=new V(h),u=new I;return new U(h,c,l,u)}(e.collisions)})),e.headless)t.add(\"IterationManager\",(function(){return new Qt(t.getSingleton(\"TimeManager\"),t.getSingleton(\"PhysicsManager\"),t.getSingleton(\"GameObjectManager\"),t.getSingleton(\"SceneManager\"))}));else{t.add(\"DomManager\",(function(){return new qt(e.containerNode,e.gameWidth,e.gameHeight)}));var i=t.getSingleton(\"DomManager\").canvas;t.add(\"RenderManager\",(function(){return function(t){var e=new gt(t),i=e.gl,n=e.contextVersion,r=new xt(i,n,new vt(i,new bt(i))),o=new Ht(new Wt(i)),s=new zt(i,r,o,new Map([[$.Sprite,new Dt(i,r,o)],[$.Text,new Vt(i,r,o,new mt)],[$.Tilemap,new Gt(i,r,o)],[$.Geometric,new St(i,r)],[$.Mask,new Tt(i,r)],[$.Video,new kt(i,r,o)]]));return new ft(s,new ht(i))}(i)})),t.add(\"InputManager\",(function(){return function(t){return new p(new f(t),new d(t),new l,new g(t))}(i)})),t.add(\"AssetManager\",(function(){return new Yt(t.getSingleton(\"RenderManager\"))})),t.add(\"IterationManager\",(function(){return new J(t.getSingleton(\"TimeManager\"),t.getSingleton(\"PhysicsManager\"),t.getSingleton(\"RenderManager\"),t.getSingleton(\"InputManager\"),t.getSingleton(\"GameObjectManager\"),t.getSingleton(\"SceneManager\"),e.canvasColor)}))}t.add(\"SceneManager\",(function(){return new $t(t,e.headless?void 0:t.getSingleton(\"RenderManager\"))}))},ee=function(){function t(){this.instances=new Map,this.constructors=new Map,this.constants=new Map}return t.prototype.add=function(t,e){if(this.constructors.has(t))throw new Xt(\"There is already an object constructor with the name \".concat(t));this.constructors.set(t,e)},t.prototype.getSingleton=function(t){if(!1===this.constructors.has(t))throw new Xt(\"Invalid object constructor name: \".concat(t));return!1===this.instances.has(t)&&this.instances.set(t,this.constructors.get(t)()),this.instances.get(t)},t.prototype.getTranscient=function(t){if(!1===this.constructors.has(t))throw new Xt(\"Invalid object constructor name: \".concat(t));return this.constructors.get(t)()},t.prototype.addConstant=function(t,e){if(this.constants.has(t))throw new Xt(\"There is already a constant value with the name \".concat(t));this.constants.set(t,e)},t.prototype.getConstant=function(t){if(!1===this.constants.has(t))throw new Xt(\"Invalid constant name: \".concat(t));return this.constants.get(t)},t}(),ie={containerNode:void 0,gameWidth:320,gameHeight:180,debugEnabled:!1,canvasColor:\"#000000\",physicsFramerate:180,headless:!1,spriteDefaultScale:new t(1,1),collisions:{collisionMethod:O.SAT,collisionBroadPhaseMethod:x.SpartialGrid}},ne=function(){function t(t){this._config=X(X({},ie),t),this._config.collisions=X(X({},ie.collisions),t.collisions),this.container=new ee,this.container.addConstant(\"Game\",this),this.setupManagers()}return t.prototype.setupManagers=function(){te(this.container,this._config),this.sceneManager=this.container.getSingleton(\"SceneManager\"),this.iterationManager=this.container.getSingleton(\"IterationManager\")},Object.defineProperty(t.prototype,\"config\",{get:function(){return this._config},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"running\",{get:function(){return this.iterationManager.running},enumerable:!1,configurable:!0}),t.prototype.addScene=function(t,e,i,n){this.sceneManager.addScene(t,e,\"object\"==typeof i?i:void 0,\"boolean\"==typeof i?i:null!=n&&n)},t.prototype.run=function(){this.iterationManager.start()},t.prototype.stop=function(){this.iterationManager.stop()},t.prototype.pause=function(){this.iterationManager.pause()},t.prototype.resume=function(){this.iterationManager.resume()},t}(),re=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.allowMultiple=!1,i.parentScale=!0,i.parentRotation=!0,i._position=new t,i._scale=new t(1,1),i._rotation=new h,i._innerPosition=new t,i._parent=null,i.cache=new t,i.lastParentRadians=0,i.lastPosition=new t,i.scaledInnerPosition=new t,i}return N(i,e),Object.defineProperty(i.prototype,\"position\",{get:function(){return this._position},set:function(t){this._position.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"scale\",{get:function(){return this._scale},set:function(t){this._scale.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"rotation\",{get:function(){return this._rotation},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"direction\",{get:function(){return this._rotation.direction},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"innerPosition\",{get:function(){return this._innerPosition},set:function(t){this._innerPosition.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"parent\",{get:function(){return this._parent},set:function(e){this._parent=e,null!==this._parent&&t.subtract(this._innerPosition,this._position,this._parent.position)},enumerable:!1,configurable:!0}),i.prototype.update=function(){null!==this._parent&&this.setPositionFromParent(),this.lastPosition.copy(this._position)},i.prototype.setPositionFromParent=function(){this._innerPosition.magnitude>0?(0!==this._parent.rotation.radians&&this.lastParentRadians!==this._parent.rotation.radians&&(this.translateInnerPosition(),this.lastParentRadians=this._parent.rotation.radians),this.parentScale?(this.updateScaledInnerPosition(),t.add(this._position,this._parent.position,this.scaledInnerPosition)):t.add(this._position,this._parent.position,this._innerPosition)):this._position.copy(this._parent.position),this._rotation.radians=this.parentRotation?this._parent.rotation.radians+this._rotation.radians:this._rotation.radians,this.parentScale&&this._scale.copy(this.parent._scale)},i.prototype.translateInnerPosition=function(){var e=Math.atan2(this._innerPosition.y,this._innerPosition.x)+(this._parent.rotation.radians-this.lastParentRadians);this.cache.set(Math.cos(e),Math.sin(e)),t.scale(this._innerPosition,this.cache,this._innerPosition.magnitude)},i.prototype.updateScaledInnerPosition=function(){this.scaledInnerPosition.set(this._innerPosition.x*this._parent.scale.x,this._innerPosition.y*this._parent.scale.y)},i}(rt),oe=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.renderer=null,e.colliders=[],e.physics=!0,e.activateColliders=!1,e}return N(e,t),e.prototype.update=function(){this.activateColliders&&(this.colliders.forEach((function(t){return t.active=!0})),this.activateColliders=!1),this.updateRealSize(),this.updatePosition(),this.updateColliders()},e.prototype.collidesWithLayer=function(t){for(var e=0,i=this.colliders;e<i.length;e++){var n=i[e];if(this.physicsManager.getCollisionsForColliderAndLayer(n,t).length>0)return!0}return!1},e.prototype.collidesWithLayers=function(t,e){void 0===e&&(e=\"or\");for(var i=0,n=0,r=this.colliders;n<r.length;n++)for(var o=r[n],s=0,a=this.physicsManager.getCollisionsForCollider(o);s<a.length;s++){var h=a[s];if(t.includes(h.remoteCollider.layer)){if(\"or\"===e)return!0;i++}}return\"and\"===e&&i===t.length},e.prototype.getCollisionWithLayer=function(t){for(var e=0,i=this.colliders;e<i.length;e++){var n=i[e],r=this.physicsManager.getCollisionsForColliderAndLayer(n,t);if(r.length>0)return this.createCollisionData(r[0])}return null},e.prototype.getCollisionsWithLayer=function(t){for(var e=this,i=[],n=0,r=this.colliders;n<r.length;n++){var o=r[n];this.physicsManager.getCollisionsForColliderAndLayer(o,t).forEach((function(t){return i.push(e.createCollisionData(t))}))}return i},e.prototype.getCollisionsWithLayers=function(t){for(var e=[],i=0,n=this.colliders;i<n.length;i++)for(var r=n[i],o=0,s=this.physicsManager.getCollisionsForCollider(r);o<s.length;o++){var a=s[o];t.includes(a.remoteCollider.layer)&&e.push(this.createCollisionData(a))}return e},e.prototype.createCollisionData=function(t){return{gameObject:this.gameObjectManager.findGameObjectById(Number(t.remoteCollider.group)),collider:t.remoteCollider,resolution:t.resolution,getGameObject:function(){return this.gameObject},localCollider:t.localCollider}},e.prototype.onActiveChange=function(){var t=this;this.renderer&&(this.renderer.active=this.active),this.active?this.activateColliders=!0:this.colliders.forEach((function(e){return e.active=t.active}))},e.prototype.onDestroy=function(){var t=this;this.colliders.forEach((function(e){return t.physicsManager.removeCollider(e)}))},e}(it),se=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.allowMultiple=!1,t}return N(i,e),Object.defineProperty(i.prototype,\"velocity\",{get:function(){return this.rigidBody.velocity},set:function(t){this.rigidBody.velocity.copy(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"gravity\",{get:function(){return this.rigidBody.gravity},set:function(t){this.rigidBody.gravity=Math.abs(t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"rigidBodyType\",{get:function(){return this.rigidBody.type},enumerable:!1,configurable:!0}),i.prototype.init=function(e){var i,n=e.rigidBodyType,r=e.gravity;if(0===this.getColliderIds().length)throw new Xt(\"RigidBody needs at least one Collider with physics\");this.rigidBody=this.physicsManager.addRigidBody({type:n,colliderIds:this.getColliderIds(),gravity:null!==(i=Math.abs(r))&&void 0!==i?i:0,velocity:new t,position:new t})},i.prototype.update=function(){if(0===this.getColliderIds().length)throw new Xt(\"RigidBody needs at least one Collider with physics\");this.rigidBody.colliderIds=this.getColliderIds(),this.rigidBody.position=this.gameObject.transform.parent?this.gameObject.transform.innerPosition:this.gameObject.transform.position},i.prototype.getColliderIds=function(){return this.gameObject.getComponents().filter((function(t){return t instanceof oe&&t.physics})).reduce((function(t,e){return q(q([],t,!0),e.colliders.map((function(t){return t.id})),!0)}),[])},i.prototype.onActiveChange=function(){this.rigidBody.active=this.active},i.prototype.onDestroy=function(){this.physicsManager.removeRigidBody(this.rigidBody)},i}(et),ae=\"Default\",he=function(t){function e(e,i,n,r){void 0===n&&(n=\"\"),void 0===r&&(r=null);var o=t.call(this,e)||this;return o.layer=\"Default\",o.ui=!1,o.keep=!1,o._parent=null,o._active=!0,o.components=[],o.activeComponentsCache=[],o.activeChildrenCache=[],o.id=i,o.name=n,o.addComponent(re),r&&(o.transform.position=r.transform.position,o.parent=r),o}return N(e,t),Object.defineProperty(e.prototype,\"active\",{get:function(){return this._active},set:function(t){this._active!==t&&(this._active=t,this.updateComponentsActiveStatus(),this.updateChildrenActiveStatus(),this.onActiveChange())},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"parent\",{get:function(){return this._parent},set:function(t){this._parent=t,this.transform.parent=null!==t?t.transform:null},enumerable:!1,configurable:!0}),e.prototype.updateComponentsActiveStatus=function(){var t=this;!1===this.active&&(this.activeComponentsCache=this.components.filter((function(t){return t.active}))),this.activeComponentsCache.forEach((function(e){return e.active=t.active})),!0===this.active&&(this.activeComponentsCache=[])},e.prototype.updateChildrenActiveStatus=function(){var t=this;!1===this.active&&(this.activeChildrenCache=this.getChildren().filter((function(t){return t.active}))),this.activeChildrenCache.forEach((function(e){return e.active=t.active})),!0===this.active&&(this.activeChildrenCache=[])},Object.defineProperty(e.prototype,\"transform\",{get:function(){return this.getComponent(re)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rigidBody\",{get:function(){return this.getComponent(se)},enumerable:!1,configurable:!0}),e.prototype.onActiveChange=function(){},e.prototype.getCurrentScene=function(){return this.sceneManager.getLoadedScene()},e.prototype.addComponent=function(t,e,i){var n=\"string\"==typeof e?void 0:e,r=\"string\"==typeof e?e:i,o=new t(this.container,this,r);return this.checkMultipleComponent(o,t),this.components.push(o),o.dispatch(Y.Init,n),o},e.prototype.checkMultipleComponent=function(t,e){if(!1===t.allowMultiple&&this.hasComponent(e))throw new Xt(\"GameObject only allows one component of type \".concat(e.name))},e.prototype.getComponents=function(t){return t?this.components.filter((function(e){return e instanceof t})):this.components},e.prototype.getComponent=function(t){return\"string\"==typeof t?this.components.find((function(e){return e.name===t})):this.components.find((function(e){return e instanceof t}))},e.prototype.hasComponent=function(t){return\"string\"==typeof t?this.components.some((function(e){return e.name===t})):this.components.some((function(e){return e instanceof t}))},e.prototype.removeComponent=function(t){var e=this.components.indexOf(t);-1!==e&&this.components.splice(e,1)[0].dispatch(Y.Destroy)},e.prototype.addChild=function(t,e,i){var n=this.gameObjectManager.addGameObject(t,e,this,i);return n.transform.innerPosition.set(0,0),n.transform.position.copy(this.transform.position),n},e.prototype.getChildren=function(){return this.gameObjectManager.findGameObjectsByParent(this)},e.prototype.getChild=function(t){return this.gameObjectManager.findGameObjectByParent(this,t)},e.prototype.destroyChildren=function(){var t=this;this.gameObjectManager.findGameObjectsByParent(this).forEach((function(e){return t.gameObjectManager.destroyGameObject(e)}))},e.prototype._destroy=function(){var t=this;this.destroyComponents(),Object.keys(this).forEach((function(e){return delete t[e]}))},e.prototype.destroyComponents=function(){for(var t=0;t<this.components.length;t++)this.components[t].dispatch(Y.Destroy),delete this.components[t];this.components=[]},e.prototype._stopGame=function(){},e}(Z),ce=[\"Default\"],le=function(i){function n(){var t=null!==i&&i.apply(this,arguments)||this;return t.allowMultiple=!1,t.viewportRect=new e(0,0,0,0),t.worldSpaceRect=new e(0,0,0,0),t.depth=0,t.layers=ce,t._zoom=1,t}return N(n,i),Object.defineProperty(n.prototype,\"zoom\",{get:function(){return this._zoom},set:function(t){if(this.zoom<=0)throw new Xt(\"zoom must be greather than 0\");this._zoom=t},enumerable:!1,configurable:!0}),n.prototype.addLayer=function(t){this.layers.push(t)},n.prototype.init=function(){this.canvas=this.domManager.canvas,this.cameraData={position:new t,layers:[],depth:1}},n.prototype.update=function(){this.updateViewportRect(),this.updateWorldSpaceRect(),this.updateCameraData()},n.prototype.updateViewportRect=function(){this.viewportRect.x=-this.canvas.width/2,this.viewportRect.y=-this.canvas.height/2,this.viewportRect.width=this.canvas.width,this.viewportRect.height=this.canvas.height},n.prototype.updateWorldSpaceRect=function(){this.worldSpaceRect.x=(this.gameObject.transform.position.x-this.viewportRect.width/2)/this._zoom,this.worldSpaceRect.y=(this.gameObject.transform.position.y-this.viewportRect.height/2)/this._zoom,this.worldSpaceRect.width=this.viewportRect.width/this._zoom,this.worldSpaceRect.height=this.viewportRect.height/this._zoom},n.prototype.updateCameraData=function(){this.cameraData.position.copy(this.gameObject.transform.position),this.cameraData.depth=this.depth,this.cameraData.layers=this.layers,this.cameraData.zoom=this._zoom,this.renderManager.addCameraData(this.cameraData)},n}(st),ue=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return N(e,t),e.prototype.init=function(){this.transform.position.set(0,0),this.camera=this.addComponent(le)},Object.defineProperty(e.prototype,\"layers\",{get:function(){return this.camera.layers},set:function(t){this.camera.layers=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"depth\",{get:function(){return this.camera.depth},set:function(t){this.camera.depth=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"zoom\",{get:function(){return this.camera.zoom},set:function(t){this.camera.zoom=t},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"worldSpaceRect\",{get:function(){return this.camera.worldSpaceRect},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"viewportRect\",{get:function(){return this.camera.viewportRect},enumerable:!1,configurable:!0}),e.prototype.addLayer=function(t){this.camera.layers.push(t)},e}(he),pe=function(t){function e(e,i,n){var r=t.call(this,e)||this;return r.name=i,r.game=n,r.game.config.headless||r.addGameObject(ue),r}return N(e,t),Object.defineProperty(e.prototype,\"gameCamera\",{get:function(){return this.findGameObject(ue)},enumerable:!1,configurable:!0}),e.prototype._destroy=function(){var t=this;this.gameObjectManager.destroyAllGameObjects(!1),Object.keys(this).forEach((function(e){return delete t[e]}))},e.prototype._stopGame=function(){var t=this;this.gameObjectManager.destroyAllGameObjects(!0),Object.keys(this).forEach((function(e){return delete t[e]}))},e}(Z),de=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.debug=!1,i.offsetX=0,i.offsetY=0,i.scaledVertexModel=[],i.scaledOffset=new t,i.scaledPosition=new t,i.finalRotation=0,i.innerPosition=new t,i}return N(i,e),i.prototype.init=function(e){var i,n,r,o,s,a;if(this.gameConfig.collisions.collisionMethod!==O.SAT)throw new Xt(\"Polygon Colliders need SAT collision method.\");if(e.vertexModel.length<3)throw new Xt(\"Polygon Collider needs at least 3 vertices.\");this.debug=(null!==(i=e.debug)&&void 0!==i?i:this.debug)&&this.gameConfig.debugEnabled,this.vertexModel=e.vertexModel,this.offsetX=null!==(n=e.offsetX)&&void 0!==n?n:this.offsetX,this.offsetY=null!==(r=e.offsetY)&&void 0!==r?r:this.offsetY,this.physics=null!==(o=e.physics)&&void 0!==o?o:this.physics,this.rotation=null!==(s=e.rotation)&&void 0!==s?s:new h,this.layer=e.layer;for(var c=0;c<this.vertexModel.length;c++)this.scaledVertexModel.push(new t);this.colliders.push(this.physicsManager.addCollider({layer:null!==(a=this.layer)&&void 0!==a?a:this.gameObject.layer,position:this.gameObject.transform.position.clone(),rotation:this.rotation.radians,shape:new W(this.scaledVertexModel),updateCollisions:!0,physics:this.physics,group:this.gameObject.id.toString()})),this.debug&&(this.renderer=this.gameObject.addComponent(fe,{collider:this.colliders[0]}))},i.prototype.updateRealSize=function(){var t=this;this.vertexModel.forEach((function(e,i){return t.scaledVertexModel[i].set(e.x*t.gameObject.transform.scale.x,e.y*t.gameObject.transform.scale.y)})),this.scaledOffset.x=this.offsetX*this.gameObject.transform.scale.x,this.scaledOffset.y=this.offsetY*this.gameObject.transform.scale.y,this.finalRotation=this.gameObject.transform.rotation.radians+this.rotation.radians},i.prototype.updatePosition=function(){t.add(this.scaledPosition,this.gameObject.transform.position,this.scaledOffset),0!==this.gameObject.transform.rotation.radians&&this.translate()},i.prototype.translate=function(){t.subtract(this.innerPosition,this.scaledPosition,this.gameObject.transform.position);var e=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.scaledPosition.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(e),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(e))},i.prototype.updateColliders=function(){var t;this.colliders[0].layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.colliders[0].position.copy(this.scaledPosition),this.colliders[0].rotation=this.finalRotation,this.colliders[0].shape.vertexModel=this.scaledVertexModel},i}(oe),fe=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return N(i,e),i.prototype.init=function(e){var i=e.collider;this.renderData={type:$.Geometric,location:Q.WorldSpace,layer:this.gameObject.layer,position:new t,shape:K.Polygon,color:\"#00FF00\"},this.collider=i},i.prototype.update=function(){this.renderData.layer=this.gameObject.layer,this.renderData.position.copy(this.collider.position),this.renderData.rotation=this.collider.shape.rotation,this.renderData.vertexModel=this.collider.shape.vertexModel,this.renderManager.addRenderData(this.renderData)},i}(at),ge=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.debug=!1,i.offsetX=0,i.offsetY=0,i.realWidth=0,i.realHeight=0,i.realOffset=new t,i.realPosition=new t,i.realRotation=0,i.applyRotation=i.gameConfig.collisions.collisionMethod===O.SAT,i.innerPosition=new t,i}return N(i,e),i.prototype.init=function(t){var e,i,n,r,o,s;this.width=t.width,this.height=t.height,this.offsetX=null!==(e=t.offsetX)&&void 0!==e?e:this.offsetX,this.offsetY=null!==(i=t.offsetY)&&void 0!==i?i:this.offsetY,this.physics=null!==(n=t.physics)&&void 0!==n?n:this.physics,this.debug=(null!==(r=t.debug)&&void 0!==r?r:this.debug)&&this.gameConfig.debugEnabled,this.rotation=null!==(o=t.rotation)&&void 0!==o?o:new h,this.layer=t.layer,this.colliders.push(this.physicsManager.addCollider({layer:null!==(s=this.layer)&&void 0!==s?s:this.gameObject.layer,position:this.gameObject.transform.position.clone(),rotation:this.rotation.radians,shape:new H(this.realWidth,this.realHeight),updateCollisions:!0,physics:this.physics,group:this.gameObject.id.toString()})),this.debug&&(this.renderer=this.gameObject.addComponent(fe,{collider:this.colliders[0]}))},i.prototype.updateRealSize=function(){this.realWidth=this.width*Math.abs(this.gameObject.transform.scale.x),this.realHeight=this.height*Math.abs(this.gameObject.transform.scale.y),this.realOffset.x=this.offsetX*this.gameObject.transform.scale.x,this.realOffset.y=this.offsetY*this.gameObject.transform.scale.y,this.realRotation=this.applyRotation?this.gameObject.transform.rotation.radians+this.rotation.radians:0},i.prototype.updatePosition=function(){t.add(this.realPosition,this.gameObject.transform.position,this.realOffset),0!==this.gameObject.transform.rotation.radians&&this.translate()},i.prototype.translate=function(){t.subtract(this.innerPosition,this.realPosition,this.gameObject.transform.position);var e=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.realPosition.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(e),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(e))},i.prototype.updateColliders=function(){var t;this.colliders[0].layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.colliders[0].position.copy(this.realPosition),this.colliders[0].rotation=this.realRotation,this.colliders[0].shape.updateSize(this.realWidth,this.realHeight)},i}(oe),me=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.debug=!1,i.offsetX=0,i.offsetY=0,i.realRadius=0,i.realOffset=new t,i.realPosition=new t,i.innerPosition=new t,i}return N(i,e),i.prototype.init=function(t){var e,i,n,r,o;this.radius=t.radius,this.offsetX=null!==(e=t.offsetX)&&void 0!==e?e:this.offsetX,this.offsetY=null!==(i=t.offsetY)&&void 0!==i?i:this.offsetY,this.physics=null!==(n=t.physics)&&void 0!==n?n:this.physics,this.debug=(null!==(r=t.debug)&&void 0!==r?r:this.debug)&&this.gameConfig.debugEnabled,this.layer=t.layer,this.colliders.push(this.physicsManager.addCollider({layer:null!==(o=this.layer)&&void 0!==o?o:this.gameObject.layer,position:this.gameObject.transform.position.clone(),shape:new G(this.radius),updateCollisions:!0,physics:this.physics,group:this.gameObject.id.toString()})),this.debug&&(this.renderer=this.gameObject.addComponent(ye,{collider:this.colliders[0]}))},i.prototype.updateRealSize=function(){this.realRadius=this.radius*Math.max(Math.abs(this.gameObject.transform.scale.x),Math.abs(this.gameObject.transform.scale.y)),this.realOffset.x=this.offsetX*this.gameObject.transform.scale.x,this.realOffset.y=this.offsetY*this.gameObject.transform.scale.y},i.prototype.updatePosition=function(){t.add(this.realPosition,this.gameObject.transform.position,this.realOffset),0!==this.gameObject.transform.rotation.radians&&this.translate()},i.prototype.translate=function(){t.subtract(this.innerPosition,this.realPosition,this.gameObject.transform.position);var e=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.realPosition.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(e),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(e))},i.prototype.updateColliders=function(){var t;this.colliders[0].layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.colliders[0].position.copy(this.realPosition),this.colliders[0].shape.radius=this.realRadius},i}(oe),ye=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return N(i,e),i.prototype.init=function(e){var i=e.collider;this.renderData={type:$.Geometric,location:Q.WorldSpace,layer:this.gameObject.layer,position:new t,shape:K.Circumference,color:\"#00FF00\"},this.collider=i},i.prototype.update=function(){this.renderData.layer=this.gameObject.layer,this.renderData.position.copy(this.collider.position),this.renderData.radius=this.collider.shape.radius,this.renderManager.addRenderData(this.renderData)},i}(at),ve=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.debug=!1,i.position=new t,i}return N(i,e),i.prototype.init=function(t){var e,i;this.tilemapRenderer=t.tilemapRenderer,this.layer=t.layer,this.debug=(null!==(e=t.debug)&&void 0!==e?e:this.debug)&&this.gameConfig.debugEnabled,this.physics=!0,this.composite=null!==(i=t.composite)&&void 0!==i&&i,this.scaledTileWidth=this.tilemapRenderer.tileWidth*this.gameObject.transform.scale.x,this.scaledTileHeight=this.tilemapRenderer.tileHeight*this.gameObject.transform.scale.y,this.scaledWidth=this.tilemapRenderer.width*this.scaledTileWidth,this.scaledHeight=this.tilemapRenderer.height*this.scaledTileHeight,this.position.set(this.gameObject.transform.position.x-this.scaledWidth/2,this.gameObject.transform.position.y+this.scaledHeight/2),this.composite?this.useLineColliders():this.useBoxColliders(),this.debug&&(this.renderer=this.gameObject.addComponent(xe,{colliders:this.colliders}))},i.prototype.useBoxColliders=function(){var e=this;this.tilemapRenderer.tiles.forEach((function(i,n){var r;e.needsCollider(i,n)&&e.colliders.push(e.physicsManager.addCollider({layer:null!==(r=e.layer)&&void 0!==r?r:e.gameObject.layer,position:new t(e.position.x+(n%e.tilemapRenderer.width+.5)*e.scaledTileWidth,e.position.y-(Math.floor(n/e.tilemapRenderer.width)+.5)*e.scaledTileHeight),shape:new H(e.scaledTileWidth,e.scaledTileHeight),updateCollisions:!1,physics:e.physics,group:e.gameObject.id.toString()}))}))},i.prototype.needsCollider=function(t,e){var i=this;return 0!==t&&this.getNeighbors(e).some((function(t){return!t||!i.tilemapRenderer.tiles[t]||0===i.tilemapRenderer.tiles[t]}))},i.prototype.useLineColliders=function(){var e,i,n=this,r=[],o=[];this.tilemapRenderer.tiles.forEach((function(t,e){if(0!==t){var i=e%n.tilemapRenderer.width,s=Math.floor(e/n.tilemapRenderer.width);r[s]||(r[s]=[]),r[s+1]||(r[s+1]=[]),o[s]||(o[s]=[]),o[s+1]||(o[s+1]=[]);var a=n.getNeighbors(e);n.hasTile(a[0])||(r[s][i]=!0),n.hasTile(a[2])||(r[s+1][i]=!0),n.hasTile(a[1])||(o[s][i]=!0),n.hasTile(a[3])||(o[s][i+1]=!0)}}));for(var s=0;s<r.length;s++)if(r[s])for(var a=0;a<r[s].length;a++)!e||!i||s===i.y&&r[s][a]||(this.addLineCollider(e,i),e=void 0,i=void 0),r[s][a]&&(e||(e=new t(a,s)),i=new t(a+1,s));e&&i&&this.addLineCollider(e,i),e=void 0,i=void 0;for(a=0;a<=this.tilemapRenderer.width;a++)for(s=0;s<o.length;s++)o[s]&&(!e||!i||a===i.x&&o[s][a]||(this.addLineCollider(e,i),e=void 0,i=void 0),o[s][a]&&(e||(e=new t(a,s)),i=new t(a,s+1)));e&&i&&this.addLineCollider(e,i)},i.prototype.hasTile=function(t){return void 0!==t&&this.tilemapRenderer.tiles[t]&&this.tilemapRenderer.tiles[t]>0},i.prototype.addLineCollider=function(e,i){var n,r=this.physicsManager.addCollider({layer:null!==(n=this.layer)&&void 0!==n?n:this.gameObject.layer,position:this.position.clone(),shape:new k([new t(e.x*this.scaledTileWidth,e.y*-this.scaledTileHeight),new t(i.x*this.scaledTileWidth,i.y*-this.scaledTileHeight)]),updateCollisions:!1,physics:this.physics,group:this.gameObject.id.toString()});this.colliders.push(r)},i.prototype.getNeighbors=function(t){return[t-this.tilemapRenderer.width>=0?t-this.tilemapRenderer.width:void 0,t%this.tilemapRenderer.width>0?t-1:void 0,t+this.tilemapRenderer.width<=this.tilemapRenderer.width*this.tilemapRenderer.height?t+this.tilemapRenderer.width:void 0,t%this.tilemapRenderer.width<this.tilemapRenderer.width-1?t+1:void 0]},i.prototype.updateRealSize=function(){},i.prototype.updatePosition=function(){},i.prototype.updateColliders=function(){var t=this;this.colliders.forEach((function(e){var i;return e.layer=null!==(i=t.layer)&&void 0!==i?i:t.gameObject.layer}))},i}(oe),xe=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.renderData=[],t.colliders=[],t}return N(i,e),i.prototype.init=function(e){var i=this,n=e.colliders;this.colliders=n,this.colliders.forEach((function(e,n){i.renderData[n]={type:$.Geometric,layer:i.gameObject.layer,location:Q.WorldSpace,position:new t,shape:K.Polygon,color:\"#00FF00\"}}))},i.prototype.update=function(){var t=this;this.colliders.forEach((function(e,i){t.renderData[i].layer=t.gameObject.layer,t.renderData[i].position.copy(e.shape.position),t.renderData[i].rotation=e.rotation,t.renderData[i].vertexModel=e.shape.vertexModel,t.renderManager.addRenderData(t.renderData[i])}))},i}(at),be=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.debug=!1,i.offsetX=0,i.offsetY=0,i.scaledVertexModel=[],i.scaledOffset=new t,i.scaledPosition=new t,i.finalRotation=0,i.innerPosition=new t,i}return N(i,e),i.prototype.init=function(e){var i,n,r,o,s,a;if(this.gameConfig.collisions.collisionMethod!==O.SAT)throw new Xt(\"Edge Colliders need SAT collision method.\");if(e.vertexModel.length<2)throw new Xt(\"Edge Collider needs at least 2 vertices.\");this.debug=(null!==(i=e.debug)&&void 0!==i?i:this.debug)&&this.gameConfig.debugEnabled,this.vertexModel=e.vertexModel,this.offsetX=null!==(n=e.offsetX)&&void 0!==n?n:this.offsetX,this.offsetY=null!==(r=e.offsetY)&&void 0!==r?r:this.offsetY,this.physics=null!==(o=e.physics)&&void 0!==o?o:this.physics,this.rotation=null!==(s=e.rotation)&&void 0!==s?s:new h,this.layer=e.layer;for(var c=0;c<this.vertexModel.length;c++)this.scaledVertexModel.push(new t);for(c=0;c<this.scaledVertexModel.length-1;c++)this.colliders.push(this.physicsManager.addCollider({layer:null!==(a=this.layer)&&void 0!==a?a:this.gameObject.layer,position:this.gameObject.transform.position.clone(),rotation:this.rotation.radians,shape:new k([this.scaledVertexModel[c],this.scaledVertexModel[c+1]]),updateCollisions:!0,physics:this.physics,group:this.gameObject.id.toString()}));this.debug&&(this.renderer=this.gameObject.addComponent(Me,{colliders:this.colliders}))},i.prototype.updateRealSize=function(){var t=this;this.vertexModel.forEach((function(e,i){return t.scaledVertexModel[i].set(e.x*t.gameObject.transform.scale.x,e.y*t.gameObject.transform.scale.y)})),this.scaledOffset.x=this.offsetX*this.gameObject.transform.scale.x,this.scaledOffset.y=this.offsetY*this.gameObject.transform.scale.y,this.finalRotation=this.gameObject.transform.rotation.radians+this.rotation.radians},i.prototype.updatePosition=function(){t.add(this.scaledPosition,this.gameObject.transform.position,this.scaledOffset),0!==this.gameObject.transform.rotation.radians&&this.translate()},i.prototype.translate=function(){t.subtract(this.innerPosition,this.scaledPosition,this.gameObject.transform.position);var e=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.scaledPosition.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(e),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(e))},i.prototype.updateColliders=function(){for(var t,e=0;e<this.scaledVertexModel.length-1;e++)this.colliders[e].layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.colliders[e].position.copy(this.scaledPosition),this.colliders[e].rotation=this.finalRotation,this.colliders[e].shape.vertexModel=[this.scaledVertexModel[e],this.scaledVertexModel[e+1]]},i}(oe),Me=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.renderData=[],t.colliders=[],t}return N(i,e),i.prototype.init=function(e){var i=this,n=e.colliders;this.colliders=n,this.colliders.forEach((function(e,n){i.renderData[n]={type:$.Geometric,layer:i.gameObject.layer,location:Q.WorldSpace,position:new t,shape:K.Line,color:\"#00FF00\"}}))},i.prototype.update=function(){var t=this;this.colliders.forEach((function(e,i){t.renderData[i].layer=t.gameObject.layer,t.renderData[i].position=e.position,t.renderData[i].rotation=e.rotation,t.renderData[i].vertexModel=e.shape.vertexModel,t.renderManager.addRenderData(t.renderData[i])}))},i}(at),_e=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.renderData=[],i.innerPosition=new t,i.cachePosition=new t,i.cacheRenderPosition=new t,i.scaledOffset=new t,i.cacheScale=new t,i}return N(i,e),i.prototype.init=function(e){var i,n,r,o,s,a,c,l,u;void 0===e&&(e={}),this.sprite=e.sprite,this.offset=null!==(i=e.offset)&&void 0!==i?i:new t,this.rotation=null!==(n=e.rotation)&&void 0!==n?n:new h,this.flipHorizontal=null!==(r=e.flipHorizontal)&&void 0!==r&&r,this.flipVertical=null!==(o=e.flipVertical)&&void 0!==o&&o,this.opacity=null!==(s=e.opacity)&&void 0!==s?s:1,this._tiled=null!==(a=e.tiled)&&void 0!==a?a:new t(1,1),this.maskColor=e.maskColor,this.maskColorMix=null!==(c=e.maskColorMix)&&void 0!==c?c:0,this.tintColor=e.tintColor,this.layer=e.layer,this.scale=null!==(u=null!==(l=e.scale)&&void 0!==l?l:this.gameConfig.spriteDefaultScale.clone())&&void 0!==u?u:new t(1,1),this.width=e.width,this.height=e.height},Object.defineProperty(i.prototype,\"tiled\",{get:function(){return this._tiled},set:function(t){if(t.x%1!=0||t.y%1!=0)throw new Xt(\"SpriteRenderer.tiled: Vector2 components must be integers\");this._tiled.set(t.x,t.y)},enumerable:!1,configurable:!0}),i.prototype.update=function(){if(this.sprite&&!0===this.sprite.loaded){this.cacheScale.set(this.scale.x*this.gameObject.transform.scale.x,this.scale.y*this.gameObject.transform.scale.y),this.updateRenderDataArray();for(var t=0,e=0;e<this._tiled.x;e++)for(var i=0;i<this._tiled.y;i++)this.updateRenderData(t,e,i),t++}},i.prototype.updateRenderDataArray=function(){if(this.renderData.length!==this._tiled.x*this._tiled.y){this.renderData=[];for(var e=0;e<this._tiled.x*this._tiled.y;e++)this.renderData[e]={type:$.Sprite,location:Q.WorldSpace,layer:\"\",position:new t,image:this.sprite.image,width:0,height:0}}},i.prototype.updateRenderData=function(t,e,i){var n,r,o;this.renderData[t].location=this.gameObject.ui?Q.ViewPort:Q.WorldSpace,this.renderData[t].layer=null!==(n=this.layer)&&void 0!==n?n:this.gameObject.layer,this.renderData[t].image=this.sprite.image,this.renderData[t].width=(null!==(r=this.width)&&void 0!==r?r:this.sprite.width)*Math.abs(this.cacheScale.x),this.renderData[t].height=(null!==(o=this.height)&&void 0!==o?o:this.sprite.height)*Math.abs(this.cacheScale.y),this.renderData[t].slice=this.sprite.slice,this.renderData[t].flipHorizontal=this.flipHorizontal!==this.cacheScale.x<0,this.renderData[t].flipVertical=this.flipVertical!==this.cacheScale.y<0,this.renderData[t].rotation=this.gameObject.transform.rotation.radians+this.rotation.radians,this.renderData[t].smooth=this.sprite.smooth,this.renderData[t].alpha=this.opacity,this.renderData[t].maskColor=this.maskColor,this.renderData[t].maskColorMix=this.maskColorMix,this.renderData[t].tintColor=this.tintColor,this.calculateRenderPosition(t,e,i),this.renderManager.addRenderData(this.renderData[t])},i.prototype.calculateRenderPosition=function(e,i,n){this.scaledOffset.set(this.offset.x*this.gameObject.transform.scale.x,this.offset.y*this.gameObject.transform.scale.y),t.add(this.cachePosition,this.gameObject.transform.position,this.scaledOffset),this.cacheRenderPosition.set(this.renderData[e].width/2*(this._tiled.x-1),this.renderData[e].height/2*(this._tiled.y-1)),t.subtract(this.cachePosition,this.cachePosition,this.cacheRenderPosition),this.cacheRenderPosition.set(i*this.renderData[e].width,n*this.renderData[e].height),t.add(this.renderData[e].position,this.cachePosition,this.cacheRenderPosition),0!==this.gameObject.transform.rotation.radians&&this.translateRenderPosition(e)},i.prototype.translateRenderPosition=function(e){t.subtract(this.innerPosition,this.renderData[e].position,this.gameObject.transform.position);var i=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.renderData[e].position.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(i),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(i))},i}(at),we=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.lastFrameText=\"\",t}return N(i,e),i.prototype.init=function(e){var i,n,r,o,s,a,c,l,u,p,d,f,g;if(this.text=null!==(i=e.text)&&void 0!==i?i:\"\",this.font=null!==(n=e.font)&&void 0!==n?n:\"Sans\",this.fontSize=null!==(r=e.fontSize)&&void 0!==r?r:12,this.width=null!==(o=e.width)&&void 0!==o?o:100,this.height=null!==(s=e.height)&&void 0!==s?s:100,this.offset=null!==(a=e.offset)&&void 0!==a?a:new t,this.color=null!==(c=e.color)&&void 0!==c?c:\"#000000\",this.charRanges=null!==(l=e.charRanges)&&void 0!==l?l:[32,126,161,255],this.lineSeparation=null!==(u=e.lineSeparation)&&void 0!==u?u:0,this.letterSpacing=null!==(p=e.letterSpacing)&&void 0!==p?p:0,this.smooth=null!==(d=e.smooth)&&void 0!==d&&d,this.rotation=null!==(f=e.rotation)&&void 0!==f?f:new h,this.opacity=null!==(g=e.opacity)&&void 0!==g?g:1,this.orientation=e.orientation,this.bitmapMargin=e.bitmapMargin,this.bitmapSpacing=e.bitmapSpacing,this.charRanges.length%2!=0)throw new Xt(\"TextRenderer.charRanges must be a 2 column matrix\");if(this.lineSeparation%2!=0)throw new Xt(\"TextRenderer.lineSeparation must be multiple of 2\")},i.prototype.start=function(){this.renderData={type:$.Text,location:Q.WorldSpace,position:new t,layer:this.gameObject.layer,text:\"\",font:this.font,fontSize:this.fontSize,bitmap:{charRanges:this.charRanges,margin:this.bitmapMargin,spacing:this.bitmapSpacing},smooth:this.smooth}},i.prototype.update=function(){var e,i;this.text&&(this.renderData.layer=this.gameObject.layer,this.renderData.location=this.gameObject.ui?Q.ViewPort:Q.WorldSpace,this.renderData.text=this.text!==this.lastFrameText?this.crop():this.renderData.text,this.renderData.fontSize=this.fontSize,this.renderData.color=this.color,this.renderData.orientation=this.orientation,this.renderData.lineSeparation=this.lineSeparation,this.renderData.letterSpacing=this.letterSpacing,this.renderData.rotation=null!==(i=this.gameObject.transform.rotation.radians+(null===(e=this.rotation)||void 0===e?void 0:e.radians))&&void 0!==i?i:0,this.renderData.alpha=this.opacity,t.add(this.renderData.position,this.gameObject.transform.position,this.offset),this.renderManager.addRenderData(this.renderData),this.lastFrameText=this.text)},i.prototype.crop=function(){var t=this;if(this.fontSize>this.height)return\"\";for(var e=[],i=0,n=0,r=this.text.split(\"\\n\");n<r.length;n++)for(var o=r[n].split(\" \").reduce((function(e,i){var n=e[e.length-1]+(e[e.length-1].length>0?\" \":\"\")+i;return n.length*(t.fontSize+t.letterSpacing)>t.width?e.push(i):e[e.length-1]=n,e}),[\"\"]),s=0,a=o;s<a.length;s++){var h=a[s];if((i+=this.fontSize+this.lineSeparation)>this.height)return e.join(\"\\n\");e.push(h)}return e.join(\"\\n\")},i}(at),Ce=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.offset=new t,i.rotation=new h,i.opacity=1,i.innerPosition=new t,i.scaledOffset=new t,i}return N(i,e),i.prototype.init=function(e){var i,n,r,o,s,a,h;this.shape=e.shape,this.color=e.color,this.width=null!==(i=e.width)&&void 0!==i?i:0,this.height=null!==(n=e.height)&&void 0!==n?n:0,this.radius=null!==(r=e.radius)&&void 0!==r?r:0,this.offset=null!==(o=e.offset)&&void 0!==o?o:this.offset,this.rotation=null!==(s=e.rotation)&&void 0!==s?s:this.rotation,this.opacity=null!==(a=e.opacity)&&void 0!==a?a:this.opacity,this.layer=e.layer,this.renderData={type:$.Mask,layer:null!==(h=this.layer)&&void 0!==h?h:this.gameObject.layer,location:this.gameObject.ui?Q.ViewPort:Q.WorldSpace,position:new t,width:0,height:0,radius:0,color:\"\",shape:this.shape}},i.prototype.update=function(){var t;this.renderData.location=this.gameObject.ui?Q.ViewPort:Q.WorldSpace,this.renderData.layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.renderData.shape=this.shape,this.renderData.width=this.width*Math.abs(this.gameObject.transform.scale.x),this.renderData.height=this.height*Math.abs(this.gameObject.transform.scale.y),this.renderData.color=this.color,this.renderData.rotation=this.gameObject.transform.rotation.radians+this.rotation.radians,this.renderData.alpha=this.opacity,this.renderData.radius=this.radius*Math.abs(Math.max(this.gameObject.transform.scale.x,this.gameObject.transform.scale.y)),this.calculateRenderPosition(),this.renderManager.addRenderData(this.renderData)},i.prototype.calculateRenderPosition=function(){this.scaledOffset.set(this.offset.x*this.gameObject.transform.scale.x,this.offset.y*this.gameObject.transform.scale.y),t.add(this.renderData.position,this.gameObject.transform.position,this.scaledOffset),0!==this.gameObject.transform.rotation.radians&&this.translateRenderPosition()},i.prototype.translateRenderPosition=function(){t.subtract(this.innerPosition,this.renderData.position,this.gameObject.transform.position);var e=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.renderData.position.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(e),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(e))},i}(at),je=[\"click\",\"contextmenu\",\"auxclick\",\"dblclick\",\"mousedown\",\"mouseup\",\"pointerup\",\"touchend\",\"keydown\",\"keyup\"],Oe=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.innerPosition=new t,i.scaledOffset=new t,i._playing=!1,i._paused=!1,i.videoEventHandler=function(t){\"ended\"===t.type&&(i._playing=!1,i.video.removeEventListener(\"ended\",i.videoEventHandler))},i.userInputEventHandler=function(){je.forEach((function(t){window.removeEventListener(t,i.userInputEventHandler)})),i.video&&i._playing&&i.video.play()},i}return N(i,e),Object.defineProperty(i.prototype,\"volume\",{get:function(){return this._volume},set:function(t){this._volume=t,this.video&&(this.video.volume=t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"loop\",{get:function(){return this._loop},set:function(t){this._loop=t,this.video&&(this.video.loop=t)},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"playing\",{get:function(){return this._playing},enumerable:!1,configurable:!0}),Object.defineProperty(i.prototype,\"paused\",{get:function(){return this._paused},enumerable:!1,configurable:!0}),i.prototype.init=function(e){var i,n,r,o,s,a,c,l,u,p;this.video=e.video,this.width=null!==(i=e.width)&&void 0!==i?i:this.video.videoWidth,this.height=null!==(n=e.height)&&void 0!==n?n:this.video.videoHeight,this.offset=null!==(r=e.offset)&&void 0!==r?r:new t,this.rotation=null!==(o=e.rotation)&&void 0!==o?o:new h,this.flipHorizontal=null!==(s=e.flipHorizontal)&&void 0!==s&&s,this.flipVertical=null!==(a=e.flipVertical)&&void 0!==a&&a,this.opacity=null!==(c=e.opacity)&&void 0!==c?c:1,this.maskColor=e.maskColor,this.maskColorMix=null!==(l=e.maskColorMix)&&void 0!==l?l:0,this.tintColor=e.tintColor,this.layer=e.layer,this.slice=e.slice,this._volume=null!==(u=e.volume)&&void 0!==u?u:1,this._loop=null!==(p=e.loop)&&void 0!==p&&p,this.renderData={type:$.Video,location:Q.WorldSpace,layer:\"\",position:new t,video:this.video,width:this.width,height:this.height}},i.prototype.play=function(){var t=this;if((this.video||!this.video.duration)&&(!this._playing||!1!==this._paused)){if(this._paused)return this._paused=!1,void this.video.play();this.video.loop=this._loop,this.video.volume=this._volume,this.video.addEventListener(\"ended\",this.videoEventHandler),this._playing=!0;var e=this.video.play();void 0!==e&&e.catch((function(){je.forEach((function(e){return window.addEventListener(e,t.userInputEventHandler)}))}))}},i.prototype.stop=function(){this._playing&&(this.video.pause(),this.video.currentTime=0,this.video.removeEventListener(\"ended\",this.videoEventHandler),this._playing=!1,this._paused=!1)},i.prototype.pause=function(){this._playing&&!1===this._paused&&(this.video.pause(),this._paused=!0)},i.prototype.update=function(){var t;this.video&&this.video.duration&&(this.renderData.location=this.gameObject.ui?Q.ViewPort:Q.WorldSpace,this.renderData.layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.renderData.video=this.video,this.renderData.width=this.width*Math.abs(this.gameObject.transform.scale.x),this.renderData.height=this.height*Math.abs(this.gameObject.transform.scale.y),this.renderData.slice=this.slice,this.renderData.flipHorizontal=this.flipHorizontal!==this.gameObject.transform.scale.x<0,this.renderData.flipVertical=this.flipVertical!==this.gameObject.transform.scale.y<0,this.renderData.rotation=this.gameObject.transform.rotation.radians+this.rotation.radians,this.renderData.alpha=this.opacity,this.renderData.maskColor=this.maskColor,this.renderData.maskColorMix=this.maskColorMix,this.renderData.tintColor=this.tintColor,this.calculateRenderPosition(),this.renderManager.addRenderData(this.renderData))},i.prototype.calculateRenderPosition=function(){this.scaledOffset.set(this.offset.x*this.gameObject.transform.scale.x,this.offset.y*this.gameObject.transform.scale.y),t.add(this.renderData.position,this.gameObject.transform.position,this.scaledOffset),0!==this.gameObject.transform.rotation.radians&&this.translateRenderPosition()},i.prototype.translateRenderPosition=function(){t.subtract(this.innerPosition,this.renderData.position,this.gameObject.transform.position);var e=Math.atan2(this.innerPosition.y,this.innerPosition.x)+this.gameObject.transform.rotation.radians;this.renderData.position.set(this.gameObject.transform.position.x+this.innerPosition.magnitude*Math.cos(e),this.gameObject.transform.position.y+this.innerPosition.magnitude*Math.sin(e))},i.prototype.onActiveChange=function(){!1===this.active&&this.stop()},i.prototype.onDestroy=function(){this.stop()},i}(at),Pe=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.tiles=[],t.infinite=!1,t.tilesetTileIds=[],t.chunks=[],t.scaledTileWidth=0,t.scaledTileHeight=0,t.renderData=[],t}return N(i,e),i.prototype.init=function(t){var e=this,i=t.tiledData,n=t.tilemapLayer,r=t.tileset,o=t.tileWidth,s=t.tileHeight,a=t.layer,h=t.smooth;if(this.tiledData=i,this.tileset=r,this.tileWidth=null!=o?o:this.tileset.tileWidth*this.gameConfig.spriteDefaultScale.x,this.tileHeight=null!=s?s:this.tileset.tileHeight*this.gameConfig.spriteDefaultScale.y,this.layer=a,this.smooth=null!=h&&h,this.tiledLayer=this.tiledData.layers.find((function(t){return\"tilelayer\"===t.type&&t.name===n})),!this.tiledLayer)throw new Xt(\"Invalid tilemap layer\");this.width=0,this.height=0,this.tiledData.layers.forEach((function(t){\"tilelayer\"===t.type&&(e.width=Math.max(e.width,t.width),e.height=Math.max(e.height,t.height))})),this.processTilemap()},i.prototype.update=function(){var t=this;this.updateRenderData(),this.renderData.forEach((function(e){return t.renderManager.addRenderData(e)}))},i.prototype.processTilemap=function(){var t=this;!0===this.tiledLayer.visible&&(this.opacity=this.tiledLayer.opacity,this.tintColor=this.tiledLayer.tintcolor,this.tiledData.infinite?(this.infinite=!0,this.tiledLayer.chunks.sort((function(t,e){return t.x-e.x})).sort((function(t,e){return t.y-e.y})).forEach((function(e){return t.processChunk(e)}))):this.processFixedLayer()),this.updateRenderData(),this.tilesetTileIds=[]},i.prototype.processFixedLayer=function(){var e,i=this;this.tiles=this.tiledLayer.data.map((function(t){return i.getTilesetTileId(t)})),this.renderData.push({type:$.Tilemap,layer:null!==(e=this.layer)&&void 0!==e?e:this.gameObject.layer,location:this.gameObject.ui?Q.ViewPort:Q.WorldSpace,position:new t,tileset:this.tileset,tilemap:{width:this.width,tileWidth:this.tileWidth,tileHeight:this.tileHeight},tiles:this.tiles,orientation:ut.Center,smooth:this.smooth})},i.prototype.processChunk=function(e){var i,n=this,r={type:$.Tilemap,layer:null!==(i=this.layer)&&void 0!==i?i:this.gameObject.layer,location:this.gameObject.ui?Q.ViewPort:Q.WorldSpace,position:new t,tileset:this.tileset,tilemap:{width:e.width,tileWidth:this.tileWidth,tileHeight:this.tileHeight},tiles:e.data.map((function(t){return n.getTilesetTileId(t)})),orientation:ut.Center,smooth:this.smooth};r.tiles.forEach((function(t,i){n.tiles[n.width*(e.y+Math.floor(i/e.width))+e.x+i%e.width]=t})),this.renderData.push(r),this.chunks.push(e)},i.prototype.getTilesetTileId=function(t){return this.tilesetTileIds[t]||(this.tilesetTileIds[t]=this.tiledData.tilesets.reduce((function(e,i){return t>=i.firstgid?t-i.firstgid+1:e}),0)),this.tilesetTileIds[t]},i.prototype.updateRenderData=function(){var t=this;this.scaledTileWidth=this.tileWidth*this.gameObject.transform.scale.x,this.scaledTileHeight=this.tileHeight*this.gameObject.transform.scale.y,this.realWidth=this.width*this.scaledTileWidth,this.realHeight=this.height*this.scaledTileHeight,this.renderData.forEach((function(e,i){var n;if(e.layer=null!==(n=t.layer)&&void 0!==n?n:t.gameObject.layer,t.infinite){var r=t.chunks[i];e.position.set(t.gameObject.transform.position.x-t.realWidth/2+(r.x+r.width/2)*t.scaledTileWidth,t.gameObject.transform.position.y+t.realHeight/2-(r.y+r.height/2)*t.scaledTileHeight)}else e.position.copy(t.gameObject.transform.position);e.tilemap.tileWidth=t.scaledTileWidth,e.tilemap.tileHeight=t.scaledTileHeight,e.tintColor=t.tintColor,e.alpha=t.opacity}))},i}(at),Re=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.tiles=[],t.scaledTileWidth=0,t.scaledTileHeight=0,t}return N(i,e),i.prototype.init=function(e){var i,n=this,r=e.tiles,o=e.tileset,s=e.tileWidth,a=e.tileHeight,h=e.width,c=e.layer,l=e.opacity,u=e.tintColor,p=e.smooth;r.split(\"\\n\").forEach((function(t){t.split(\",\").forEach((function(t){return t.trim().length>0?n.tiles.push(Number(t)):null}))})),this.tileset=o,this.width=h,this.tileWidth=null!=s?s:this.tileset.tileWidth*this.gameConfig.spriteDefaultScale.x,this.tileHeight=null!=a?a:this.tileset.tileHeight*this.gameConfig.spriteDefaultScale.y,this.layer=c,this.height=Math.ceil(this.tiles.length/this.width),this.opacity=l,this.tintColor=u,this.renderData={type:$.Tilemap,layer:null!==(i=this.layer)&&void 0!==i?i:this.gameObject.layer,location:this.gameObject.ui?Q.ViewPort:Q.WorldSpace,position:new t,tileset:this.tileset,tilemap:{width:this.width,tileWidth:this.tileWidth,tileHeight:this.tileHeight},tiles:this.tiles,orientation:ut.Center,smooth:p},this.updateRenderData()},i.prototype.update=function(){this.updateRenderData(),this.renderManager.addRenderData(this.renderData)},i.prototype.updateRenderData=function(){var t;this.scaledTileWidth=this.tileWidth*this.gameObject.transform.scale.x,this.scaledTileHeight=this.tileHeight*this.gameObject.transform.scale.y,this.realWidth=this.width*this.scaledTileWidth,this.realHeight=this.height*this.scaledTileHeight,this.renderData.layer=null!==(t=this.layer)&&void 0!==t?t:this.gameObject.layer,this.renderData.position.copy(this.gameObject.transform.position),this.renderData.tintColor=this.tintColor,this.renderData.alpha=this.opacity,this.renderData.tilemap.tileWidth=this.scaledTileWidth,this.renderData.tilemap.tileHeight=this.scaledTileHeight},i}(at),Ae=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.spriteRenderer=null,e.animations=new Map,e.currentAnimation=null,e.paused=!1,e}return N(e,t),e.prototype.init=function(t){var e=t.spriteRenderer;this.spriteRenderer=e},e.prototype.update=function(){null===this.currentAnimation||this.paused||(this.currentAnimation.playFrame(this.timeManager.deltaTime),!0===this.currentAnimation.restarted&&!1===this.currentAnimation.loop?this.currentAnimation=null:this.spriteRenderer.sprite=this.currentAnimation.sprite)},e.prototype.addAnimation=function(t,e,i){return void 0===e&&(e=\"default\"),t.framerate=null!=i?i:t.framerate,this.animations.set(e,new Se(t)),this},e.prototype.playAnimation=function(t){if(void 0===t&&(t=\"default\"),!1!==this.active){if(!1===this.animations.has(t))throw new Xt(\"Animation with name \".concat(t,\" does not exist.\"));this.stopAnimation(),this.currentAnimation=this.animations.get(t)}},e.prototype.pause=function(){this.paused=!0},e.prototype.resume=function(){this.paused=!1},e.prototype.stopAnimation=function(){null!==this.currentAnimation&&(this.currentAnimation.reset(),this.currentAnimation=null,this.paused=!1)},e.prototype.isPlayingAnimation=function(t){return void 0===t&&(t=\"default\"),null!==this.currentAnimation&&this.animations.get(t)&&this.animations.get(t)===this.currentAnimation},e.prototype.isPaused=function(){return this.paused},e}(et),Se=function(){function t(t){this._sprite=null,this._restarted=!1,this.currentFrame=0,this.frameTime=0,this._animation=t}return Object.defineProperty(t.prototype,\"sprite\",{get:function(){return this._sprite},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"restarted\",{get:function(){return this._restarted},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"loop\",{get:function(){return this._animation.loop},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"animation\",{get:function(){return this._animation},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.currentFrame=0,this.frameTime=0,this._restarted=!0},t.prototype.playFrame=function(t){this._restarted=!1,this.frameTime>=1/this._animation.framerate&&(this.frameTime=0,this.currentFrame=this.currentFrame+1===this._animation.sprites.length?0:this.currentFrame+1,this._restarted=0===this.currentFrame),this._sprite=this._animation.sprites[this.currentFrame],this.frameTime+=t},t}(),Ee=[\"click\",\"contextmenu\",\"auxclick\",\"dblclick\",\"mousedown\",\"mouseup\",\"pointerup\",\"touchend\",\"keydown\",\"keyup\"],Te=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.allowMultiple=!1,e.tracks=[],e.audioSourceCache=new Map,e._playing=!1,e._paused=!1,e.audioEventHandler=function(t){\"ended\"===t.type&&(e._playing=!1,e._audioSource.removeEventListener(\"ended\",e.audioEventHandler))},e.userInputEventHandler=function(){Ee.forEach((function(t){window.removeEventListener(t,e.userInputEventHandler)})),e.audioContext.resume(),e._audioSource&&e._playing&&e._audioSource.play()},e}return N(e,t),Object.defineProperty(e.prototype,\"audioSource\",{get:function(){return this._audioSource},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"volume\",{get:function(){return this._volume},set:function(t){this._volume=t,this._audioSource&&(this._audioSource.volume=t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"loop\",{get:function(){return this._loop},set:function(t){this._loop=t,this._audioSource&&(this._audioSource.loop=t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"playing\",{get:function(){return this._playing},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"paused\",{get:function(){return this._paused},enumerable:!1,configurable:!0}),e.prototype.init=function(t){var e=this,i=void 0===t?{}:t,n=i.loop,r=i.volume;this.audioContext=new AudioContext,\"running\"!==this.audioContext.state&&Ee.forEach((function(t){return window.addEventListener(t,e.userInputEventHandler)})),this._volume=null!=r?r:1,this._loop=null!=n&&n},e.prototype.playClip=function(t,e){t.currentTime>0&&(t.currentTime=0),t.volume=null!=e?e:this._volume,t.play()},e.prototype.addAudioSource=function(t,e){void 0===e&&(e=\"default\");var i=t.cloneNode();this.audioSourceCache.set(e,i);var n=this.audioContext.createMediaElementSource(i);n.connect(this.audioContext.destination),this.tracks.push(n)},e.prototype.loadAudioSource=function(t,e,i){this.stop(),this._audioSource=this.audioSourceCache.get(t),this._loop=null!=e?e:this._loop,this._volume=null!=i?i:this._volume},e.prototype.play=function(){if(this._audioSource&&(!this._playing||!1!==this._paused)){if(this._paused)return this._paused=!1,void this._audioSource.play();this._audioSource.volume=this._volume,this._audioSource.loop=this._loop,this._audioSource.addEventListener(\"ended\",this.audioEventHandler),this._playing=!0,\"running\"===this.audioContext.state&&this._audioSource.play()}},e.prototype.stop=function(){this._playing&&(this._audioSource.pause(),this._audioSource.currentTime=0,this._audioSource.removeEventListener(\"ended\",this.audioEventHandler),this._playing=!1,this._paused=!1)},e.prototype.pause=function(){this._playing&&!1===this._paused&&(this._audioSource.pause(),this._paused=!0)},e.prototype.onActiveChange=function(){!1===this.active&&this.stop()},e.prototype.onDestroy=function(){this.stop(),this.audioContext.close()},e}(et),De=function(){function t(t){var e,i=this;this._width=null,this._height=null,this._loaded=!1,this.image=t.image,this.smooth=null!==(e=t.smooth)&&void 0!==e&&e,this.slice=t.slice,this.slice&&(this._width=this.slice.width,this._height=this.slice.height);var n=function(){var t,e;i._width=null!==(t=i._width)&&void 0!==t?t:i.image.naturalWidth,i._height=null!==(e=i._height)&&void 0!==e?e:i.image.naturalHeight,i._loaded=!0};this.image.naturalWidth?n():this.image.addEventListener(\"load\",(function(){return n()}))}return Object.defineProperty(t.prototype,\"width\",{get:function(){return this._width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"height\",{get:function(){return this._height},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"loaded\",{get:function(){return this._loaded},enumerable:!1,configurable:!0}),t}();!function(t){t[t.Rectangle=0]=\"Rectangle\",t[t.Circumference=1]=\"Circumference\"}(Nt||(Nt={}));var Fe=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.allowMultiple=!1,i.width=100,i.height=100,i.radius=50,i.touchEnabled=!0,i.offset=new t,i.pressed=!1,i.mouse=i.inputManager.mouse,i.touch=i.inputManager.touch,i.position=new t,i.distance=new t,i.pressedLastFrame=!1,i.scaled={width:0,height:0,radius:0,offset:new t},i}return N(i,e),i.prototype.init=function(t){var e=t.type,i=t.height,n=t.radius,r=t.touchEnabled,o=t.width,s=t.offset;this.type=e,this.width=null!=o?o:this.width,this.height=null!=i?i:this.height,this.radius=null!=n?n:this.radius,this.touchEnabled=null!=r?r:this.touchEnabled,this.offset=null!=s?s:this.offset},i.prototype.update=function(){this.scale(),t.add(this.position,this.gameObject.transform.position,this.scaled.offset),this.pressedLastFrame=this.pressed,this.pressed=!1,this.mouse.leftButtonPressed&&(this.resolveMouseAndRectangle(),this.resolveMouseAndCircumference()),this.touchEnabled&&this.touch.touching&&(this.resolveTouchAndRectangle(),this.resolveTouchAndCircumference()),this.onClick&&!this.pressedLastFrame&&this.pressed&&this.onClick(),this.onPressed&&this.pressed&&this.onPressed()},i.prototype.scale=function(){this.scaled.width=this.width*this.gameObject.transform.scale.x,this.scaled.height=this.width*this.gameObject.transform.scale.y,this.scaled.offset.x=this.offset.x*this.gameObject.transform.scale.x,this.scaled.offset.y=this.offset.y*this.gameObject.transform.scale.y,this.scaled.radius=this.radius*Math.max(Math.abs(this.gameObject.transform.scale.x),Math.abs(this.gameObject.transform.scale.y))},i.prototype.resolveMouseAndRectangle=function(){this.type===Nt.Rectangle&&(this.pressed=a(this.mouse.positionInViewport.x,this.position.x-this.scaled.width/2,this.position.x+this.scaled.width/2)&&a(this.mouse.positionInViewport.y,this.position.y-this.scaled.height/2,this.position.y+this.scaled.height/2))},i.prototype.resolveMouseAndCircumference=function(){this.type===Nt.Circumference&&(t.subtract(this.distance,this.position,this.mouse.positionInViewport),this.pressed=this.distance.magnitude<=this.scaled.radius)},i.prototype.resolveTouchAndRectangle=function(){if(this.type===Nt.Rectangle)for(var t=0,e=this.touch.interactions;t<e.length;t++){var i=e[t],n=i.positionInViewport,r=i.radius;if(this.pressed)return;this.pressed=this.position.x+this.scaled.width/2>=n.x-r.x&&this.position.x-this.scaled.width/2<=n.x+r.x&&this.position.y+this.scaled.height/2>=n.y-r.y&&this.position.y-this.scaled.height/2<=n.y+r.y}},i.prototype.resolveTouchAndCircumference=function(){if(this.type===Nt.Circumference)for(var e=0,i=this.touch.interactions;e<i.length;e++){var n=i[e],r=n.positionInViewport,o=n.radius;if(this.pressed)return;t.subtract(this.distance,this.position,r),this.pressed=this.distance.magnitude<=this.scaled.radius+Math.max(o.x,o.y)}},i}(et),Be=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.mousePressed=!1,i.position=new t,i}return N(i,e),i.prototype.start=function(){this.camera=this.getCurrentScene().gameCamera},i.prototype.update=function(){this.inputManager.mouse.leftButtonPressed&&!1===this.mousePressed&&(t.round(this.position,t.add(this.position,this.camera.transform.position,t.scale(this.position,this.inputManager.mouse.positionInViewport,1/this.camera.zoom))),console.log(\"Space position: {x: \".concat(this.position.x,\", y: \").concat(this.position.y,\"}\"))),this.mousePressed=this.inputManager.mouse.leftButtonPressed},i}(he);export{Ae as Animator,Te as AudioPlayer,me as BallCollider,ge as BoxCollider,x as BroadPhaseMethods,Fe as Button,Nt as ButtonType,le as Camera,O as CollisionMethods,tt as Component,be as EdgeCollider,ne as Game,ue as GameCamera,he as GameObject,l as GamepadController,u as GamepadData,d as KeyboardController,ae as LAYER_DEFAULT,Ce as MaskRenderer,Pt as MaskShape,f as MouseController,nt as PhysicsComponent,de as PolygonCollider,fe as PolygonColliderRenderer,ot as PreRenderComponent,e as Rectangle,se as RigidBody,F as RigidBodyType,h as Rotation,pe as Scene,Be as SpacePointer,De as Sprite,_e as SpriteRenderer,Et as TextOrientation,we as TextRenderer,Pe as TiledTilemapRenderer,ve as TilemapCollider,Re as TilemapRenderer,g as TouchController,re as Transform,t as Vector2,Oe as VideoRenderer,a as between,i as clamp,o as fixedRound,r as randomFloat,n as randomInt,s as range};\n//# sourceMappingURL=index.esm.js.map\n"],"names":["t","e","this","_x","_y","Object","defineProperty","prototype","get","set","enumerable","configurable","Math","sqrt","pow","_direction","unit","copy","x","y","equals","clone","distance","add","i","subtract","magnitude","normal","scale","dot","cross","round","n","r","_position","_center","_width","_height","width","height","position","overlaps","x1","y1","contains","min","max","random","o","s","push","a","h","_degrees","_radians","radians","degrees","PI","updateDirection","cos","sin","c","l","gamepads","Map","eventHandler","type","gamepadConnected","gamepad","gamepadDisconected","window","addEventListener","getGamepad","getGamepads","Array","from","values","index","u","updateFromGamepad","delete","update","getGamepadsFromBrowser","length","has","navigator","webkitGetGamepads","buttons","axes","_dpadAxes","_leftStickAxes","_rightStickAxes","_vibrating","_gamepad","forEach","pressed","id","connected","getButtonPressed","getAxis","dpadRight","dpadLeft","dpadUp","dpadDown","leftStickHorizontal","leftStickVertical","rightStickHorizontal","rightStickVertical","find","vibrate","vibrationActuator","playEffect","duration","weakMagnitude","strongMagnitude","startDelay","catch","finally","p","mouse","keyboard","touch","d","pressedKeys","keyMap","code","includes","indexOf","splice","isPressed","orPressed","reduce","andPressed","isPressedReturn","orPressedReturn","andPressedReturn","f","_leftButtonPressed","_scrollButtonPressed","_rightButtonPressed","_positionInViewport","_hasMoved","_wheelScroll","lastPositionInViewport","canvas","setup","wheelEvent","deltaX","deltaY","updatePosition","updateButtonDown","updateButtonUp","handleWheelEvent","focus","preventDefault","stopPropagation","button","offsetX","clientWidth","offsetY","clientHeight","g","_touching","_interactions","targetTouches","positionInViewport","clientX","offsetLeft","clientY","offsetTop","radius","radiusX","radiusY","m","v","b","create","shape","layer","updateCollisions","physics","rotation","group","onCollision","active","M","area","depth","items","children","resize","clear","insert","split","insertItemIntoChildren","map","getChildrenForArea","retrieve","apply","center","_","w","coordinates","x0","y0","_subdivisions","cellWidth","ceil","cellHeight","itemsInCells","updateCoordinates","QuadTree","SpartialGrid","C","j","collisions","lastCollidersAmount","minArea","maxArea","newArea","method","colliders","activeColliders","collisionMatrix","setupBroadPhaseResolver","collisionArea","fixedCollisionArea","broadPhaseResolver","addCollider","getCollider","removeCollider","clearColliders","getCollisionsForCollider","filter","localCollider","getCollisionsForColliderAndLayer","remoteCollider","refreshCollisionsForCollider","updateShape","narrowPhase","broadPhase","resolve","updateNewArea","checkForSpartialGridResize","boundingBox","subdivisions","some","isResolved","getCollisionResolution","resolution","direction","displacementDirection","penetration","Polygon","Circumference","Line","O","P","AABBResolver","circumferenceAABBResolver","circumferenceResolver","AABB","SAT","R","satResolver","A","overlapX","overlapY","checkOverlapForLines","sign","preventContainment","minOverlap","abs","S","closestPoint","E","T","setPrototypeOf","__proto__","hasOwnProperty","call","D","arguments","slice","concat","SuppressedError","F","B","projA","projB","smallestAxis","cache","setCircumferenceAxis","projectionAxes","setCircumferenceVertices","projectShapeOntoAxis","currentOverlap","invertAxis","vertices","U","collisionManager","colliderFactory","rigidBodyManager","rigidBodyFactory","addRigidBody","removeRigidBody","clearRigidBodies","I","colliderIds","gravity","velocity","onResolve","Error","Static","Dynamic","Kinematic","L","V","rigidBodies","activeRigidBodies","displacement","cacheDisplacement","dynamicUpdate","kinematicUpdate","applyGravity","applyVelocity","obtainDisplacement","applyReposition","getCollisions","G","updateBoundingBox","k","vertexModel","updateVertices","updateProjectionAxes","W","_projectionAxes","boxMinX","Number","MAX_SAFE_INTEGER","boxMinY","boxMaxX","boxMaxY","H","TypeError","String","constructor","updateSize","z","N","Y","X","assign","q","Init","Start","Update","UpdateEngine","UpdateCollider","UpdatePhysics","UpdateTransform","UpdatePreRender","UpdateCamera","UpdateRender","Destroy","StopGame","K","Q","$","J","timeManager","physicsManager","renderManager","inputManager","gameObjectManager","sceneManager","canvasColor","running","gameLoopAccumulator","gameObjects","components","changingScene","sceneEvents","gameObjectEvents","start","startLoop","pause","resume","stop","dispatchFrameEvent","clearScreen","loadOpeningScene","requestAnimationLoop","performance","now","gameFramerate","physicsFramerate","asyncPhysicsLoop","updateForBrowser","pendingSceneToload","loadPendingScene","browserDeltaTime","minGameDeltatime","gameLogicIteration","renderIteration","unloadCurrentScene","requestAnimationFrame","updateForGame","load","updateForPhysics","physicsIteration","render","clearData","timeScale","physicsDeltaTime","physicsIntervalId","setInterval","clearInterval","document","hidden","loadedScene","getLoadedScene","findGameObjects","getComponents","dispatch","Z","updateEvent","started","container","gameConfig","getConstant","headless","assetManager","getSingleton","domManager","init","onDestroy","_destroy","_stopGame","addGameObject","findGameObject","findGameObjectsByTag","destroyGameObject","tt","allowMultiple","_active","gameObject","name","onActiveChange","getCurrentScene","getGameObject","getComponent","hasComponent","removeComponent","keys","et","it","nt","rt","ot","st","at","WorldSpace","ViewPort","Sprite","Text","Tilemap","Mask","Geometric","Video","ht","gl","viewport","object","setViewport","zoom","setObjectForResizeable","setObjectForText","text","fontSize","lineSeparation","letterSpacing","setObjectForGeometric","MIN_SAFE_INTEGER","setObjectForTilemap","tilemap","tiles","renderPosition","tileWidth","tileHeight","applyCullingInTiles","culledTiles","isInViewPort","location","applyCulling","ct","lt","ut","pt","Center","RightUp","RightDown","RightCenter","dt","ft","webglManager","cullingManager","renderData","cameraData","addRenderData","addCameraData","sort","renderByCamera","layers","realWidth","realHeight","orientation","clearCanvas","preloadTexture","createTexture","LegacyWebGL","WebGL2","gt","contextVersion","getContextVersion","getContext","mt","fontAtlas","hasFontAtlas","symbol","getFontAtlas","getOrCreate","bitmapSize","chars","fromCharCode","renderAtlas","FontFace","family","Symbol","for","yt","clearRect","textBaseline","fillStyle","font","fillText","glyphs","measureText","fontFaceFamily","bitmapFontSize","gridSize","createElement","vt","shaderLoader","createProgram","VERTEX_SHADER","FRAGMENT_SHADER","attachShader","linkProgram","LINK_STATUS","getProgramParameter","getProgramInfoLog","deleteProgram","xt","programFactory","loadProgram","program","positionBuffer","createBuffer","textureBuffer","positionCoordsAttr","getAttribLocation","texCoordsAttr","modelMatrixUniform","getUniformLocation","projectionMatrixUniform","textureMatrixUniform","renderTextureUniform","textureUniform","solidColorUniform","useTintColorUniform","tintColorUniform","useMaskColorUniform","maskColorUniform","maskColorMixUniform","alphaUniform","useProgram","blendFunc","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","enableVertexAttribArray","bindBuffer","ARRAY_BUFFER","vertexAttribPointer","FLOAT","bt","createShader","shaderSource","compileShader","COMPILE_STATUS","getShaderParameter","getShaderInfoLog","deleteShader","Mt","Float32Array","_t","wt","Ct","jt","Ot","hypot","Pt","Rt","exec","parseInt","At","St","programManager","lastVertices","projectionMatrix","modelMatrix","textureMatrix","circumferenceVertices","renderLines","LINE_LOOP","LINES","renderCircumference","generateVerticesKey","generatePolygonVertices","bufferData","DYNAMIC_DRAW","uniformMatrix4fv","uniform1i","color","uniform4f","uniform1f","drawArrays","toString","Rectangle","Et","Tt","rectangleVertices","lastShape","STATIC_DRAW","alpha","enable","BLEND","disable","TRIANGLES","TRIANGLE_FAN","Dt","textureManager","lastTexture","posVertices","texVertices","flipHorizontal","flipVertical","image","naturalWidth","naturalHeight","getOrCreateTextureFromImage","smooth","bindTexture","TEXTURE_2D","tintColor","maskColor","maskColorMix","Ft","Bt","Ut","It","Lt","Vt","fontAtlasFactory","textSize","modelPosition","setDefaultValues","bitmap","charRanges","generateTextVertices","setPositionFromOrientation","getOrCreateTextureFromCanvas","margin","spacing","Gt","tileset","texMargin","texSpacing","texWidth","texHeight","texCorrection","processTileset","generateVertices","correction","floor","kt","video","videoWidth","videoHeight","getOrCreateTextureFromVideo","texImage2D","RGBA","UNSIGNED_BYTE","Wt","createFromImage","createFromSource","createFromCanvas","createPixelTexture","Uint8Array","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","TEXTURE_MIN_FILTER","LINEAR","TEXTURE_MAG_FILTER","NEAREST","Ht","textureFactory","textures","src","createTextureFromImage","createTextureFromCanvas","createTextureFromVideo","zt","renderers","lastRender","clearColor","COLOR_BUFFER_BIT","Image","Audio","Font","Nt","Yt","assets","getAssetsLoaded","loaded","loadImage","crossOrigin","createAsset","loadAudio","loadFont","then","fonts","loadVideo","playsInline","getImage","url","element","getAudio","getFont","getVideo","Xt","qt","_canvas","containerNode","gameWidth","gameHeight","setupCanvas","tabIndex","appendChild","Kt","lastId","findGameObjectById","findGameObjectsByParent","parent","findGameObjectByParent","tag","destroyAllGameObjects","keep","destroy","destroyChildren","Qt","asyncGameLoop","gameInterval","process","uptime","physicsInterval","$t","scenes","sceneNamePendingToLoad","addScene","currentScene","openingSceneName","loadScene","Jt","Zt","minPhysicsDeltaTime","unscaledDeltaTime","unscaledPhysicsDeltaTime","maxDeltaTime","thenForGame","thenForPhysics","thenForBrowser","join","parseFloat","toFixed","ee","instances","constructors","constants","getTranscient","addConstant","ie","debugEnabled","spriteDefaultScale","collisionMethod","collisionBroadPhaseMethod","ne","_config","setupManagers","te","iterationManager","run","re","parentScale","parentRotation","_scale","_rotation","_innerPosition","_parent","lastParentRadians","lastPosition","scaledInnerPosition","setPositionFromParent","translateInnerPosition","updateScaledInnerPosition","atan2","oe","renderer","activateColliders","updateRealSize","updateColliders","collidesWithLayer","collidesWithLayers","getCollisionWithLayer","createCollisionData","getCollisionsWithLayer","getCollisionsWithLayers","collider","se","rigidBody","rigidBodyType","getColliderIds","transform","innerPosition","ae","he","ui","activeComponentsCache","activeChildrenCache","addComponent","updateComponentsActiveStatus","updateChildrenActiveStatus","getChildren","checkMultipleComponent","addChild","getChild","destroyComponents","ce","le","viewportRect","worldSpaceRect","_zoom","addLayer","updateViewportRect","updateWorldSpaceRect","updateCameraData","ue","camera","pe","game","config","de","debug","scaledVertexModel","scaledOffset","scaledPosition","finalRotation","fe","translate","ge","realOffset","realPosition","realRotation","applyRotation","me","realRadius","ye","ve","tilemapRenderer","composite","scaledTileWidth","scaledTileHeight","scaledWidth","scaledHeight","useLineColliders","useBoxColliders","xe","needsCollider","getNeighbors","hasTile","addLineCollider","be","Me","_e","cachePosition","cacheRenderPosition","cacheScale","sprite","offset","opacity","_tiled","tiled","updateRenderDataArray","updateRenderData","calculateRenderPosition","translateRenderPosition","we","lastFrameText","bitmapMargin","bitmapSpacing","crop","Ce","je","Oe","_playing","_paused","videoEventHandler","removeEventListener","userInputEventHandler","play","_volume","volume","_loop","loop","currentTime","Pe","infinite","tilesetTileIds","chunks","tiledData","tilemapLayer","tiledLayer","processTilemap","visible","tintcolor","processChunk","processFixedLayer","data","getTilesetTileId","tilesets","firstgid","Re","trim","Ae","spriteRenderer","animations","currentAnimation","paused","playFrame","deltaTime","restarted","addAnimation","framerate","Se","playAnimation","stopAnimation","reset","isPlayingAnimation","isPaused","_sprite","_restarted","currentFrame","frameTime","_animation","sprites","Ee","Te","tracks","audioSourceCache","audioEventHandler","_audioSource","audioContext","AudioContext","state","playClip","addAudioSource","cloneNode","createMediaElementSource","connect","destination","loadAudioSource","close","De","_loaded","Fe","touchEnabled","pressedLastFrame","scaled","leftButtonPressed","resolveMouseAndRectangle","resolveMouseAndCircumference","touching","resolveTouchAndRectangle","resolveTouchAndCircumference","onClick","onPressed","interactions","Be","mousePressed","gameCamera","console","log"],"mappings":"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"}
|